diff --git a/requirements.txt b/requirements.txt index ab68ff2..87fb401 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,18 +4,18 @@ bcrypt==3.1.4 certifi==2018.4.16 cffi==1.11.5 chardet==3.0.4 -cryptography==2.3 +cryptography==2.5 idna==2.7 Jinja2==2.10 lxml==4.2.4 -MarkupSafe==1.0 +MarkupSafe~=1.0 ncclient==0.6.0 paramiko>=2.4.2 pyang==1.7.5 pyasn1==0.4.4 pycparser==2.18 PyNaCl==1.2.1 -pyyaml~>4.2b1 +pyyaml~=4.2b1 requests>=2.20.0 six==1.11.0 urllib3==1.23 diff --git a/yang/01-yang/Cisco-NX-OS-device.yang b/yang/01-yang/Cisco-NX-OS-device.yang index 48b5f8f..4a0679c 100644 --- a/yang/01-yang/Cisco-NX-OS-device.yang +++ b/yang/01-yang/Cisco-NX-OS-device.yang @@ -3,23 +3,28 @@ module Cisco-NX-OS-device { namespace "http://cisco.com/ns/yang/cisco-nx-os-device"; prefix top; 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: nxos-dev-yang@cisco.com"; + contact " Cisco Systems, Inc., Customer Service, Postal: 170 W Tasman Drive, San Jose, CA 95134, Tel: +1 800 553-NETS, e-mail: cs-yang@cisco.com"; description "NXOS Device YANG Model"; - reference "131c7b913903ac7eefe66ed6b1dfa9b00472f0fc"; - revision 2018-07-17 { + reference "75fc552868450e43f9172d14e2dc431870e81650"; + revision 2019-12-22 { description "Initial Revision - Generated by mtx 1.0.1 Built on Tue Jun 26 17:18:51 PDT 2018 by vnguyen"; + Generated by mtx 1.0.1 Built on Mon Dec 16 16:01:33 PST 2019 by mtxunix"; } typedef address_Ipv4 { type string { + pattern ".*(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(%[p\\{N\\}p\\{L\\}]+)?.*"; } + description "global address Ipv4 base type"; } typedef address_Ipv6 { 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])))(%[p\\{N\\}p\\{L\\}]+)?.*"; + pattern ".*(([^:]+:){6}(([^:]+:[^:]+).*|(.*\\..*).*)).*|.*((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)(%.+)?.*"; } + description "global address Ipv6 base type"; } typedef address_Ip { @@ -27,79 +32,110 @@ module Cisco-NX-OS-device { type address_Ipv4; type address_Ipv6; } + description "global address Ip base type"; } typedef address_Mac { type string { + pattern "([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}"; } + description "global address MAC base type"; } typedef mtx_array_ifindex { type string { + pattern "[-/\\w\\d]+(,[-:/\\w\\d]+)*"; } + description "global array base type"; } typedef mtx_array_uint8 { type string { + pattern "([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])+(,([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5]))*"; } + description "global array base type"; } typedef mtx_array_uint16 { type string { + pattern "(6553[0-5]|655[0-2][0-9]\\d|65[0-4]\\d{2}|6[0-4]\\d{3}|[0-5]\\d{4}|[0-9]\\d{0,3})+(,(6553[0-5]|655[0-2][0-9]\\d|65[0-4]\\d{2}|6[0-4]\\d{3}|[0-5]\\d{4}|[0-9]\\d{0,3}))*"; } + description "global array base type"; } typedef mtx_array_uint32 { type string { + pattern "(429496729[0-6]|42949672[0-8]\\d|4294967[01]\\d{2}|429496[0-6]\\d{3}|42949[0-5]\\d{4}|4294[0-8]\\d{5}|429[0-3]\\d{6}|42[0-8]\\d{7}|4[01]\\d{8}|[1-3]\\d{9}|[1-9]\\d{8}|[1-9]\\d{7}|[1-9]\\d{6}|[1-9]\\d{5}|[1-9]\\d{4}|[1-9]\\d{3}|[1-9]\\d{2}|[1-9]\\d|\\d)+(,(429496729[0-6]|42949672[0-8]\\d|4294967[01]\\d{2}|429496[0-6]\\d{3}|42949[0-5]\\d{4}|4294[0-8]\\d{5}|429[0-3]\\d{6}|42[0-8]\\d{7}|4[01]\\d{8}|[1-3]\\d{9}|[1-9]\\d{8}|[1-9]\\d{7}|[1-9]\\d{6}|[1-9]\\d{5}|[1-9]\\d{4}|[1-9]\\d{3}|[1-9]\\d{2}|[1-9]\\d|\\d))*"; } + description "global array base type"; } typedef mtx_array_uint64 { type string { + pattern "\\d{0,20}(,\\d{0,20})*"; } + description "global array base type"; } typedef mtx_array_bit { type string { + pattern "([0-9]+(-[0-9]+)?(,[0-9]+(-[0-9]+)?)*)*"; } + description "global array base type"; } typedef mtx_array_community { type string { + pattern "((unknown|regular|extended|route-target|rd):((unknown:.*:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as2-nn2:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as2-nn4:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))|(as4-nn2:(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as4-nn4:(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))|(ipv4-nn2:(((1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])\\.){3}(1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(ipv4-nn4:(((1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])\\.){3}(1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))))"; } + description "global array base type"; } typedef aaa_AccountStatus { type enumeration { - - // Active enum active { value 0; + description "Active"; } - - // Inactive enum inactive { value 1; + description "Inactive"; } } default "active"; } + typedef aaa_AuthMechanism { + type enumeration { + enum plain-text { + value 1; + description "Plain Text"; + } + enum gssapi-kerb5 { + value 2; + description "Gssapi Kerb5"; + } + enum gssapi-md5 { + value 3; + description "Gssapi Md5"; + } + } + default "plain-text"; + } + typedef aaa_BannerMsg { type string; } typedef aaa_Boolean { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "yes"; @@ -107,15 +143,13 @@ module Cisco-NX-OS-device { typedef aaa_Clear { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -123,15 +157,13 @@ module Cisco-NX-OS-device { typedef aaa_CmdType { type enumeration { - - // Config enum config { value 0; + description "Config"; } - - // Exec enum exec { value 1; + description "Exec"; } } default "config"; @@ -143,19 +175,17 @@ module Cisco-NX-OS-device { typedef aaa_Email { type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; } } typedef aaa_EncKey { type string { length "0..240"; + pattern ".*"; } } - typedef aaa_EncryptedArray { - type mtx_array_uint8; - } - typedef aaa_HistoryDepth { type uint8 { range "0..15"; @@ -171,20 +201,17 @@ module Cisco-NX-OS-device { typedef aaa_KeyEnc { type enumeration { - - // Clear Text enum 0 { value 0; + description "Clear Text"; } - - // Type-6 Encrypted enum 6 { value 6; + description "Type-6 Encrypted"; } - - // Encrypted enum 7 { value 7; + description "Encrypted"; } } default "0"; @@ -192,20 +219,17 @@ module Cisco-NX-OS-device { typedef aaa_KeyEncUserPass { type enumeration { - - // Unspecified enum unspecified { value 255; + description "Unspecified"; } - - // Clear Text enum clear { value 0; + description "Clear Text"; } - - // Encrypted enum Encrypt { value 5; + description "Encrypted"; } } } @@ -229,17 +253,68 @@ module Cisco-NX-OS-device { } } - typedef aaa_LdapSSLStrictnessLevel { + // Ldap Logging Level + typedef aaa_LdapLogLevel { 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 notification { + value 5; + description "Notification"; + } + enum informational { + value 6; + description "Informational"; + } + enum debug { + value 7; + description "Debug"; + } + } + default "critical"; + } - // Strict - enum strict { + typedef aaa_LdapPwdEnc { + type enumeration { + enum 0 { value 0; + description "Clear Text"; + } + enum 7 { + value 7; + description "Encrypted"; } + } + default "7"; + } - // Permissive + typedef aaa_LdapSSLStrictnessLevel { + type enumeration { + enum strict { + value 0; + description "Strict"; + } enum permissive { value 1; + description "Permissive"; } } default "strict"; @@ -247,87 +322,65 @@ module Cisco-NX-OS-device { typedef aaa_LoggingLevel { type enumeration { - - // Emergency enum Emergency { value 0; + description "Emergency"; } - - // Alert enum Alert { value 1; + description "Alert"; } - - // Critical enum Critical { value 2; + description "Critical"; } - - // Error enum Error { value 3; + description "Error"; } - - // Warning enum Warning { value 4; + description "Warning"; } - - // Notifications enum Notif { value 5; + description "Notifications"; } - - // Informational enum Inform { value 6; + description "Informational"; } - - // Debug enum Debug { value 7; + description "Debug"; } } default "Error"; } - typedef aaa_MonitorServerType { - type enumeration { - - // Disabled - enum disabled { - value 0; - } - - // Enabled - enum enabled { - value 1; - } - } - default "disabled"; - } - typedef aaa_MonitoringPasswordType { - type string; + type aaa_EncKey { + length "1..32"; + } + default "wawy"; } typedef aaa_MonitoringUserType { type string { + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-]{0,63}.*"; } default "test"; } typedef aaa_NoRolePolicy { type enumeration { - - // No Login enum no-login { value 0; + description "No Login"; } - - // Assign Default Role enum assign-default-role { value 1; + description "Assign Default Role"; } } } @@ -341,6 +394,7 @@ module Cisco-NX-OS-device { typedef aaa_Passwd { type string { length "1..127"; + pattern ".*"; } } @@ -354,6 +408,13 @@ module Cisco-NX-OS-device { } } + typedef aaa_PrivLvlType { + type uint32 { + range "1..15"; + } + default "15"; + } + typedef aaa_ProviderGroupDeadtime { type uint32 { range "0..1440"; @@ -370,20 +431,17 @@ module Cisco-NX-OS-device { typedef aaa_ProviderGroupProtocol { type enumeration { - - // TACACS enum tacacs { value 0; + description "TACACS"; } - - // RADIUS enum radius { value 1; + description "RADIUS"; } - - // LDAP enum ldap { value 2; + description "LDAP"; } } } @@ -398,20 +456,17 @@ module Cisco-NX-OS-device { typedef aaa_ProviderState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Operable enum operable { value 1; + description "Operable"; } - - // Inoperable enum inoperable { value 2; + description "Inoperable"; } } default "unknown"; @@ -439,10 +494,6 @@ module Cisco-NX-OS-device { type string; } - typedef aaa_PwdLen { - type uint32; - } - typedef aaa_PwdLifeTime { type uint16 { range "0..3650"; @@ -451,15 +502,13 @@ module Cisco-NX-OS-device { typedef aaa_PwdPolicy { type enumeration { - - // Enable enum enable { value 0; + description "Enable"; } - - // Disable enum disable { value 1; + description "Disable"; } } default "enable"; @@ -473,25 +522,21 @@ module Cisco-NX-OS-device { typedef aaa_RadSrvUseType { type enumeration { - - // Authentication enum Auth { value 0; + description "Authentication"; } - - // Authorization enum Author { value 1; + description "Authorization"; } - - // Accounting enum Acc { value 2; + description "Accounting"; } - - // All enum All { value 3; + description "All"; } } default "All"; @@ -499,25 +544,21 @@ module Cisco-NX-OS-device { typedef aaa_Realm { type enumeration { - - // Local enum local { value 0; + description "Local"; } - - // RADIUS enum radius { value 1; + description "RADIUS"; } - - // TACACS+ enum tacacs { value 2; + description "TACACS+"; } - - // LDAP enum ldap { value 3; + description "LDAP"; } } default "local"; @@ -532,25 +573,21 @@ module Cisco-NX-OS-device { typedef aaa_RuleAccessType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Read enum read { value 1; + description "Read"; } - - // Read Write enum read-write { value 2; + description "Read Write"; } - - // Command enum command { value 3; + description "Command"; } } } @@ -575,52 +612,98 @@ module Cisco-NX-OS-device { typedef aaa_RulePermissionType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Permit enum permit { value 1; + description "Permit"; } - - // Deny enum deny { value 2; + description "Deny"; } } } typedef aaa_RuleScopeType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Feature enum feature { value 2; + description "Feature"; } - - // Feature Group enum feature-group { value 3; + description "Feature Group"; } - - // OID enum oid { value 21; + description "OID"; } } } + typedef aaa_SearchMapEntryType { + type enumeration { + enum user-profile { + value 1; + description "User Profile"; + } + enum trusted-cert { + value 2; + description "Trusted Cert"; + } + enum crl-lookup { + value 3; + description "Crl Lookup"; + } + enum user-switch-bind { + value 4; + description "User Switch Bind"; + } + enum user-certdn-match { + value 5; + description "User Certdn Match"; + } + enum user-pubkey-match { + value 6; + description "User Pubkey Match"; + } + } + default "user-profile"; + } + + typedef aaa_SecretEncType { + type enumeration { + enum 0 { + value 0; + description "No Encryption"; + } + enum 5 { + value 5; + description "MD5 encrpytion"; + } + enum 8 { + value 8; + description "PBKDF2 encryption"; + } + enum 9 { + value 9; + description "SCRYPT encryption"; + } + } + default "0"; + } + typedef aaa_SshData { type string { length "0..16384"; + pattern ".*[a-zA-Z0-9=\\n\\r/\\+ _\\.@-]*.*"; } } @@ -650,20 +733,17 @@ module Cisco-NX-OS-device { typedef aaa_UserRolePrivType { type enumeration { - - // No Privilege enum noDataPriv { value 0; + description "No Privilege"; } - - // Read Privilege enum readPriv { value 1; + description "Read Privilege"; } - - // Write Privilege enum writePriv { value 2; + description "Write Privilege"; } } default "noDataPriv"; @@ -671,46 +751,53 @@ module Cisco-NX-OS-device { typedef aaa_authenticationProtocol { type enumeration { - - // PAP enum pap { value 0; + description "PAP"; } - - // CHAP enum chap { value 1; + description "CHAP"; } - - // MS-CHAP enum mschap { value 2; + description "MS-CHAP"; } - - // MS-CHAPv2 enum mschapv2 { value 3; + description "MS-CHAPv2"; } - - // ASCII enum ascii { value 4; + description "ASCII"; + } + } + } + + typedef aaa_loginShellType { + type enumeration { + enum shellvsh { + value 1; + description "vsh shell type"; + } + enum shellbash { + value 2; + description "bash shell type"; } } + default "shellvsh"; } // Bank type typedef ac_BankT { type enumeration { - - // Even enum even { value 1; + description "Even"; } - - // Odd enum Odd { value 2; + description "Odd"; } } default "even"; @@ -721,38 +808,27 @@ module Cisco-NX-OS-device { default "0"; } + // Ip port name + typedef acl_AclName { + type string { + length "0..64"; + } + } + // ACE action type typedef acl_ActionType { type enumeration { - - // Invalid enum invalid { value 0; + description "Invalid ace action type"; } - - // Permit enum permit { value 1; + description "Permit ace action type"; } - - // Deny enum deny { value 2; - } - - // Copy - enum copy { - value 3; - } - - // Divert - enum divert { - value 4; - } - - // Redirect - enum redirect { - value 5; + description "Deny ace action type"; } } default "invalid"; @@ -763,6 +839,7 @@ module Cisco-NX-OS-device { type uint16 { range "0..48"; } + default "0"; } // config State @@ -771,50 +848,76 @@ module Cisco-NX-OS-device { default "0"; } + // Direction type + typedef acl_Direction { + type enumeration { + enum in { + value 0; + description "Ingress Direction for packets"; + } + enum out { + value 1; + description "Egress Direction for packets"; + } + } + default "in"; + } + + // Fragment type + typedef acl_Fragments { + type enumeration { + enum disabled { + value 0; + description "Disable fragment handling"; + } + enum deny-all { + value 1; + description "Drop all the fragments"; + } + enum permit-all { + value 2; + description "Allow all the fragments"; + } + } + } + // http option (http-method) value enum typedef acl_HttpOptionType { type enumeration { - - // get enum get { value 1; + description "get http option type"; } - - // put enum put { value 2; + description "put http option type"; } - - // head enum head { value 3; + description "head http option type"; } - - // post enum post { value 4; + description "post http option type"; } - - // delete enum delete { value 5; + description "delete http option type"; } - - // trace enum trace { value 6; + description "trace http option type"; } - - // connect enum connect { value 7; + description "connect http option type"; } - - // invalid enum invalid { value 0; + description "invalid http option type"; } } + default "invalid"; } // Name of interface, e.g. "Eth1/2" @@ -822,10 +925,24 @@ module Cisco-NX-OS-device { type nw_IfId; } + // MPLS Label Mask Range + typedef acl_LabelMaskRange { + type uint32 { + range "0..1048575"; + } + default "1048575"; + } + + // MPLS Label Range + typedef acl_LabelRange { + type uint32 { + range "0..1048575"; + } + } + // MAC Protocol typedef acl_MACProtocol { - // MAX Converted to int from 0x10000 type uint32 { range "0..65536"; } @@ -841,8 +958,33 @@ module Cisco-NX-OS-device { // L4 port relationship operator typedef acl_Operator { - type uint8; - default "0"; + type enumeration { + enum none { + value 0; + description "none of the operator"; + } + enum lt { + value 4; + description "specifies less than operator"; + } + enum gt { + value 5; + description "specifies greater than operator"; + } + enum eq { + value 6; + description "specifies equal to operator"; + } + enum neq { + value 7; + description "specifies not equal to operator"; + } + enum range { + value 8; + description "specifies range operator"; + } + } + default "none"; } // Packet Length @@ -850,6 +992,7 @@ module Cisco-NX-OS-device { type uint16 { range "19..9210"; } + default "19"; } // L4 port number @@ -877,6 +1020,7 @@ module Cisco-NX-OS-device { type uint8 { range "0..64"; } + default "0"; } // TCP option length @@ -884,6 +1028,7 @@ module Cisco-NX-OS-device { type uint32 { range "0..41"; } + default "41"; } // time-range name @@ -917,25 +1062,21 @@ module Cisco-NX-OS-device { // VLAN Acl action type typedef acl_VAclActionType { type enumeration { - - // invalid enum invalid { value 0; + description "invalid vlan acl action type"; } - - // forward enum forward { value 1; + description "forward vlan acl action"; } - - // drop enum drop { value 2; + description "drop vlan acl action"; } - - // redirect enum redirect { value 3; + description "redirect vlan acl action"; } } default "invalid"; @@ -974,6 +1115,7 @@ module Cisco-NX-OS-device { type uint32 { range "0..16777216"; } + default "16777216"; } // cos type @@ -1006,82 +1148,43 @@ module Cisco-NX-OS-device { default "1"; } - typedef action_AdminSt { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Start - enum start { - value 1; - } - - // Stop - enum stop { - value 2; - } - - // Suspend - enum suspend { - value 3; - } - } - default "unknown"; - } - typedef action_Descr { type string; } - // Frequency of the task - typedef action_Freq { - type string; - } - typedef action_OperSt { type enumeration { - - // Scheduled enum scheduled { value 0; + description "Scheduled"; } - - // Processing enum processing { value 1; + description "Processing"; } - - // Completed enum completed { value 2; + description "Completed"; } - - // Cancelled enum cancelled { value 3; + description "Cancelled"; } - - // Failed enum failed { value 4; + description "Failed"; } - - // Indeterminate enum indeterminate { value 5; + description "Indeterminate"; } - - // Suspended enum suspended { value 6; + description "Suspended"; } - - // Crash-Suspect enum crashsuspect { value 7; + description "Crash-Suspect"; } } default "scheduled"; @@ -1104,117 +1207,61 @@ module Cisco-NX-OS-device { // Resuilt history retention time: how long records are // to be kept per rule typedef action_RetentionTime { - type string; + type union { + type string; + type uint64; + } } // Type of the task typedef action_Type { type enumeration { - - // Clear enum clear { value 1; + description "Clear"; } - - // Reset enum reset { value 2; + description "Reset"; } - - // Reload enum reload { value 3; + description "Reload"; } - - // Locate enum locate { value 4; + description "Locate"; } - - // Install enum install { value 5; + description "Install"; } - - // Test enum test { value 6; + description "Test"; } - - // Collect enum collect { value 7; + description "Collect"; } - - // Set Interface In-Service enum interface-in-service { value 8; + description "Set Interface In-Service"; } } default "clear"; } - // Global access controls - typedef actrl_AccControl { - - // bits- Using string - type string; - } - - // Action - typedef actrl_Action { - type vz_Action; - } - - // Rule direction - typedef actrl_Direction { - type enumeration { - - // Uni-directional - enum uni-dir { - value 1; - } - - // Bi-directional - enum bi-dir { - value 2; - } - } - default "uni-dir"; - } - - // Filter id - // @@@ Keep this in sync with vzFltId. - // @@@ Only way to moving FltId from 16 to 32 bits without dropping traffic - // @@@ during upgrade, was to introduce vzFiltId (16 bits) - typedef actrl_FltId { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; - } - } - - // Log clear interval - typedef actrl_LogClrIntvl { - type uint16 { - range "1000..2800"; - } - default "2800"; - } - // Operational state of Rule typedef actrl_OperSt { type enumeration { - - // enabled enum enabled { value 1; + description "enabled"; } - - // disabled enum disabled { value 2; + description "disabled"; } } default "disabled"; @@ -1225,75 +1272,9 @@ module Cisco-NX-OS-device { type vz_GPCTag; } - // Rule id - typedef actrl_RuleId { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; - } - } - - // Filter to Rule ID mapping array - typedef actrl_RuleIdArray { - type mtx_array_uint32; - } - - // Rule ID array index - typedef actrl_RuleIndex { - type uint16 { - range "1..1024"; - } - } - - // Rule priority, this is the priority for a set of rules - typedef actrl_RulePrio { - type uint8 { - range "1..11"; - } - } - - // Rule type - typedef actrl_RuleT { - type enumeration { - - // Tenant - enum tenant { - value 1; - } - - // Management - enum mgmt { - value 2; - } - - // SNMP - enum snmp { - value 3; - } - - // Flood - enum bd_flood { - value 4; - } - - // Vrf - enum vrf_default { - value 5; - } - - // Infra - enum infra { - value 6; - } - } - default "tenant"; - } - // Scope id (24-bit) typedef actrl_ScopeId { - // MAX Converted to int from 0xffffff type uint32 { range "1..16777215"; } @@ -1303,34 +1284,11 @@ module Cisco-NX-OS-device { // Security Label (12-bit) typedef actrl_SecLbl { - // MAX Converted to int from 0xfff type uint16 { range "1..4095"; } } - // Subject represents the entitiy to which the capability constraint gets applied - typedef actrlcap_Subj { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Actrl Rules - enum rule-namespace { - value 1; - } - - // Actrl Scopes - enum scope-namespace { - value 2; - } - } - default "unknown"; - } - typedef address_Email { type string; } @@ -1338,6 +1296,7 @@ module Cisco-NX-OS-device { typedef address_HostNameOrDottedQuad { type string { length "1..256"; + pattern ".*[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } } @@ -1345,30 +1304,31 @@ module Cisco-NX-OS-device { type string; } + // Socket Port Number + typedef address_PortNumber { + type uint16; + } + // Adjacency Flags typedef adjacency_AdjFlags { - // bits- Using string type string; } // Adjacency operational state typedef adjacency_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -1376,15 +1336,13 @@ module Cisco-NX-OS-device { // Database type typedef adjacency_DbT { type enumeration { - - // IP database enum ip { value 1; + description "IP database"; } - - // IPv6 database enum ipv6 { value 2; + description "IPv6 database"; } } default "ip"; @@ -1392,20 +1350,17 @@ module Cisco-NX-OS-device { typedef aggregate_AdminState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -1414,30 +1369,25 @@ module Cisco-NX-OS-device { // Address Family Type typedef aggregate_AfT { type enumeration { - - // Ipv4 unicast address family enum ipv4-ucast { value 0; + description "Ipv4 unicast address family"; } - - // Vpnv4 unicast address family enum vpnv4-ucast { value 1; + description "Vpnv4 unicast address family"; } - - // Ipv6 unicast address family enum ipv6-ucast { value 2; + description "Ipv6 unicast address family"; } - - // Vpnv6 unicast address family enum vpnv6-ucast { value 3; + description "Vpnv6 unicast address family"; } - - // L2-Evpn unicast address family enum l2-evpn { value 4; + description "L2-Evpn unicast address family"; } } default "l2-evpn"; @@ -1445,30 +1395,25 @@ module Cisco-NX-OS-device { typedef aggregate_BfdStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Admin Down enum admin_down { value 1; + description "Admin Down"; } - - // Oper Down enum down { value 2; + description "Oper Down"; } - - // Intialization enum init { value 3; + description "Intialization"; } - - // Up enum up { value 4; + description "Up"; } } default "admin_down"; @@ -1476,15 +1421,13 @@ module Cisco-NX-OS-device { typedef aggregate_BooleanFlag { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -1516,20 +1459,17 @@ module Cisco-NX-OS-device { typedef aggregate_ConfTmplStatus { type enumeration { - - // ConfigTmplInactive enum inactive { value 0; + description "ConfigTmplInactive"; } - - // ConfigTmplOperational enum active { value 1; + description "ConfigTmplOperational"; } - - // ConfigTmplFailed enum failed { value 2; + description "ConfigTmplFailed"; } } default "inactive"; @@ -1537,20 +1477,17 @@ module Cisco-NX-OS-device { typedef aggregate_ConfigSourceType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Cli enum cli { value 1; + description "Cli"; } - - // Controller enum controller { value 2; + description "Controller"; } } default "cli"; @@ -1558,25 +1495,21 @@ module Cisco-NX-OS-device { typedef aggregate_ConfigStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ConfigReady enum configReady { value 1; + description "ConfigReady"; } - - // ConfigNotReady enum configNotReady { value 2; + description "ConfigNotReady"; } - - // ConfigPurgeInProgress enum configPurgeInProgress { value 4; + description "ConfigPurgeInProgress"; } } default "configNotReady"; @@ -1599,29 +1532,24 @@ module Cisco-NX-OS-device { typedef aggregate_CtrlrType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // L2Vxlan enum l2-vxlan { value 1; + description "L2Vxlan"; } - - // Vxlan enum vxlan { value 2; + description "Vxlan"; } } default "l2-vxlan"; } - // Default Value computed from unicast typedef aggregate_EpType { - // bits- Using string type string; default "unicast"; } @@ -1632,25 +1560,21 @@ module Cisco-NX-OS-device { typedef aggregate_HostReachabilityMode { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // FloodAndLearn enum floodAndLearn { value 1; + description "FloodAndLearn"; } - - // Controller enum controller { value 2; + description "Controller"; } - - // Bgp enum bgp { value 3; + description "Bgp"; } } default "floodAndLearn"; @@ -1658,20 +1582,17 @@ module Cisco-NX-OS-device { typedef aggregate_IngressRepProtocolType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Static enum static { value 1; + description "Static"; } - - // Bgp enum bgp { value 2; + description "Bgp"; } } default "unknown"; @@ -1679,15 +1600,13 @@ module Cisco-NX-OS-device { typedef aggregate_IntfAssignMode { type enumeration { - - // Dedicated enum dedicated { value 0; + description "Dedicated"; } - - // Shared enum shared { value 1; + description "Shared"; } } } @@ -1699,35 +1618,29 @@ module Cisco-NX-OS-device { typedef aggregate_IntfType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Port enum port { value 1; + description "Port"; } - - // Port Channel enum port-channel { value 2; + description "Port Channel"; } - - // Tunnel enum tunnel { value 3; + description "Tunnel"; } - - // Loopback enum loopback { value 4; + description "Loopback"; } - - // SVI enum svi { value 5; + description "SVI"; } } } @@ -1742,20 +1655,17 @@ module Cisco-NX-OS-device { // Mac type typedef aggregate_MacType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Unicast enum unicast { value 1; + description "Unicast"; } - - // Multicast enum multicast { value 2; + description "Multicast"; } } default "unicast"; @@ -1783,20 +1693,17 @@ module Cisco-NX-OS-device { typedef aggregate_OperState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -1804,25 +1711,21 @@ module Cisco-NX-OS-device { typedef aggregate_ReplicationModeType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ReplicationServer enum replicationServer { value 1; + description "ReplicationServer"; } - - // IngressReplication enum ingressReplication { value 2; + description "IngressReplication"; } - - // IpMulticast enum ipMulticast { value 3; + description "IpMulticast"; } } default "unknown"; @@ -1830,60 +1733,49 @@ module Cisco-NX-OS-device { typedef aggregate_ResourceStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VlanCreated enum vlanCreated { value 1; + description "VlanCreated"; } - - // VlanFailed enum vlanFailed { value 2; + description "VlanFailed"; } - - // VnidCreated enum vnidCreated { value 3; + description "VnidCreated"; } - - // VnidFailed enum vnidFailed { value 4; + description "VnidFailed"; } - - // VlansCarved enum vlansCarved { value 5; + description "VlansCarved"; } - - // VlansNotCarved enum vlansNotCarved { value 6; + description "VlansNotCarved"; } - - // VnidCreationReceived enum vnidCreationReceived { value 7; + description "VnidCreationReceived"; } - - // MyTEPIPPublished enum myTEPIPPublished { value 101; + description "MyTEPIPPublished"; } - - // ControllerIntfNotCarved enum controllerIntfNotCarved { value 201; + description "ControllerIntfNotCarved"; } - - // ControllerIntfCarved enum controllerIntfCarved { value 202; + description "ControllerIntfCarved"; } } default "unknown"; @@ -1892,15 +1784,13 @@ module Cisco-NX-OS-device { // Route target policy type typedef aggregate_RttPType { type enumeration { - - // Import enum import { value 1; + description "Import"; } - - // Export enum export { value 2; + description "Export"; } } default "import"; @@ -1908,75 +1798,62 @@ module Cisco-NX-OS-device { typedef aggregate_TunnelType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VxLanOverIPV4 enum vxlanipv4 { value 1; + description "VxLanOverIPV4"; } - - // VxLanOverIPV6 enum vxlanipv6 { value 2; + description "VxLanOverIPV6"; } - - // NVGRE enum nvgre { value 3; + description "NVGRE"; } } } typedef aggregate_VpcKeepaliveStatus { type enumeration { - - // VpcOobUnknown enum VpcOobUnknown { value 0; + description "VpcOobUnknown"; } - - // VpcOobDisabled enum VpcOobDisabled { value 1; + description "VpcOobDisabled"; } - - // VpcOobPeerAlive enum VpcOobPeerAlive { value 2; + description "VpcOobPeerAlive"; } - - // VpcOobPeerNotAlive enum VpcOobPeerNotAlive { value 3; + description "VpcOobPeerNotAlive"; } - - // VpcOobPeerAliveDomainMismatch enum VpcOobPeerAliveDomainMismatch { value 4; + description "VpcOobPeerAliveDomainMismatch"; } - - // VpcOobSuspended enum VpcOobSuspended { value 5; + description "VpcOobSuspended"; } - - // VpcOobNotOperational enum VpcOobNotOperational { value 6; + description "VpcOobNotOperational"; } - - // VpcOobSuspendedVrf enum VpcOobSuspendedVrf { value 7; + description "VpcOobSuspendedVrf"; } - - // VpcOobMisconfig enum VpcOobMisconfig { value 8; + description "VpcOobMisconfig"; } } default "VpcOobUnknown"; @@ -1984,15 +1861,13 @@ module Cisco-NX-OS-device { typedef aggregate_VpcOperStatus { type enumeration { - - // down enum down { value 0; + description "down"; } - - // up enum up { value 1; + description "up"; } } default "down"; @@ -2000,25 +1875,21 @@ module Cisco-NX-OS-device { typedef aggregate_VpcPeerLinkStatus { type enumeration { - - // VpcPeerNolink enum VpcPeerNolink { value 0; + description "VpcPeerNolink"; } - - // VpcPeerLinkDown enum VpcPeerLinkDown { value 1; + description "VpcPeerLinkDown"; } - - // VpcPeerOk enum VpcPeerOk { value 2; + description "VpcPeerOk"; } - - // VpcPeerNotfound enum VpcPeerNotfound { value 3; + description "VpcPeerNotfound"; } } default "VpcPeerNolink"; @@ -2027,20 +1898,17 @@ module Cisco-NX-OS-device { // Fabric Forwarding Mode typedef aggregate_fabFwdMode { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Anycast Gateway enum anycastgw { value 1; + description "Anycast Gateway"; } - - // ProxyGw enum proxygw { value 2; + description "ProxyGw"; } } default "standard"; @@ -2057,15 +1925,13 @@ module Cisco-NX-OS-device { // Mode typedef analytics_CModeT { type enumeration { - - // ACI mode enum aci { value 0; + description "ACI mode"; } - - // Standalone mode enum standalone { value 1; + description "Standalone mode"; } } default "aci"; @@ -2089,30 +1955,25 @@ module Cisco-NX-OS-device { // Collector version typedef analytics_CollVersion { type enumeration { - - // Version 5 enum v5 { value 1; + description "Version 5"; } - - // Version 9 enum v9 { value 2; + description "Version 9"; } - - // Cisco proprietary version 1 enum cisco-v1 { value 3; + description "Cisco proprietary version 1"; } } default "cisco-v1"; } // Collect params - // Default Value computed from src-intf typedef analytics_CollectParams { - // bits- Using string type string; default "src-intf"; } @@ -2120,22 +1981,20 @@ module Cisco-NX-OS-device { // Collector identifier typedef analytics_CollectorId { type uint32 { - range "0..65535"; + range "0..4294967295"; } } // Default filtering policy type typedef analytics_DefPolicyT { type enumeration { - - // Permit enum permit { value 0; + description "Permit"; } - - // Deny enum deny { value 1; + description "Deny"; } } default "permit"; @@ -2144,20 +2003,17 @@ module Cisco-NX-OS-device { // Direction type typedef analytics_DirectionT { type enumeration { - - // Ingress enum in { value 1; + description "Ingress"; } - - // Egress enum out { value 2; + description "Egress"; } - - // Both enum both { value 3; + description "Both"; } } default "in"; @@ -2166,20 +2022,17 @@ module Cisco-NX-OS-device { // IP filter type typedef analytics_FltType { type enumeration { - - // Ipv4 type enum ipv4 { value 1; + description "Ipv4 type"; } - - // Ipv6 type enum ipv6 { value 2; + description "Ipv6 type"; } - - // CE type enum ce { value 3; + description "CE type"; } } default "ipv4"; @@ -2224,26 +2077,21 @@ module Cisco-NX-OS-device { } // Match params - // Default Value computed from src-ipv4 typedef analytics_MatchParams { - // bits- Using string type string; - default "src-ipv4"; } // Mode typedef analytics_ModeT { type enumeration { - - // Analytics mode enum analytics { value 0; + description "Analytics mode"; } - - // Netflow mode enum netflow { value 1; + description "Netflow mode"; } } default "netflow"; @@ -2257,21 +2105,12 @@ module Cisco-NX-OS-device { default "1500"; } - // Operational state of Rule - typedef analytics_OperSt { - type enumeration { - - // enabled - enum enabled { - value 1; - } - - // disabled - enum disabled { - value 2; - } + // Oclass ID + typedef analytics_OclassId { + type uint16 { + range "0..256"; } - default "disabled"; + default "0"; } // Payload length identifier @@ -2284,7 +2123,6 @@ module Cisco-NX-OS-device { // Payload length typedef analytics_PayloadLenT { - // MAX Converted to int from 0x3fff type uint32 { range "0..16383"; } @@ -2329,6 +2167,21 @@ module Cisco-NX-OS-device { default "0"; } + // Ability to configure latency resolution + typedef analytics_configLatencyResFactorT { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; + } + // Create Count typedef analytics_createCount { type uint32 { @@ -2369,30 +2222,41 @@ module Cisco-NX-OS-device { default "4"; } + // Ability to expose oport/oclass information + typedef analytics_oportSupportT { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; + } + // Adjacency Flags typedef arp_AdjFlags { - // bits- Using string type string; } // Adjacency operational state typedef arp_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -2423,29 +2287,25 @@ module Cisco-NX-OS-device { // Config Error typedef arp_ConfigErr { - // bits- Using string type string; } // Config Error Inst MO typedef arp_ConfigErrInst { - // bits- Using string type string; } // Database type typedef arp_DbT { type enumeration { - - // IP database enum ip { value 1; + description "IP database"; } - - // SupCache database enum supcache { value 2; + description "SupCache database"; } } default "ip"; @@ -2454,25 +2314,21 @@ module Cisco-NX-OS-device { // Event History Size typedef arp_EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -2481,145 +2337,117 @@ module Cisco-NX-OS-device { // Event Log Type typedef arp_EventType { type enumeration { - - // CLI Events enum cli { value 0; + description "CLI Events"; } - - // Client Events enum client-events { value 1; + description "Client Events"; } - - // Client Errors enum client-errors { value 2; + description "Client Errors"; } - - // Control Events enum control-events { value 3; + description "Control Events"; } - - // Internal Events enum internal-events { value 4; + description "Internal Events"; } - - // Internal Errors enum internal-errors { value 5; + description "Internal Errors"; } - - // High Availability Events enum high-availability { value 6; + description "High Availability Events"; } - - // IP Sync Events enum ip-sync { value 7; + description "IP Sync Events"; } - - // ARP Local Cache Events enum local-cache-events { value 8; + description "ARP Local Cache Events"; } - - // ARP Local Cache Errors enum local-cache-errors { value 9; + description "ARP Local Cache Errors"; } - - // Packet Messages Logs enum pkt-messages { value 10; + description "Packet Messages Logs"; } - - // SNMP Events enum snmp { value 11; + description "SNMP Events"; } - - // ARP Suppression Events enum suppress-events { value 12; + description "ARP Suppression Events"; } - - // ARP Suppression Errors enum suppress-errors { value 13; + description "ARP Suppression Errors"; } - - // Sync Event Logs enum sync { value 14; + description "Sync Event Logs"; } - - // Controller MAC-IP route error logs enum arp-controller-errors { value 15; + description "Controller MAC-IP route error logs"; } - - // DME debug event enum arp-dme-event { value 16; + description "DME debug event"; } - - // Adjacency Control Logs enum adjacency-control { value 101; + description "Adjacency Control Logs"; } - - // Adjacency Error Logs enum adjacency-errors { value 102; + description "Adjacency Error Logs"; } - - // Adjacency IPC Logs enum adjacency-ipc-events { value 103; + description "Adjacency IPC Logs"; } - - // Adjacency Stats Logs enum adjacency-stats { value 104; + description "Adjacency Stats Logs"; } - - // Adjacency High Availability Logs enum adjacency-high-availability { value 105; + description "Adjacency High Availability Logs"; } - - // Adjacency CLI Logs enum adjacency-cli { value 106; + description "Adjacency CLI Logs"; } - - // Adjacency SDB Logs enum adjacency-sdb { value 107; + description "Adjacency SDB Logs"; } - - // Adjacency SNMP Logs enum adjacency-snmp { value 108; + description "Adjacency SNMP Logs"; } - - // Adjacency Net Broker Logs enum adjacency-netbroker { value 109; + description "Adjacency Net Broker Logs"; } - - // Adjacency DME event debugs enum am-dme-event { value 110; + description "Adjacency DME event debugs"; } - - // Adjacency event debugs enum am-event { value 111; + description "Adjacency event debugs"; } } } @@ -2632,48 +2460,48 @@ module Cisco-NX-OS-device { default "600"; } + // COS for ARP packet + typedef arp_IpArpCos { + type uint32 { + range "0..7"; + } + default "6"; + } + // Logging Level typedef arp_LoggingLevel { type enumeration { - - // Emergency enum emergency { value 0; + description "Emergency"; } - - // Alert enum alert { value 1; + description "Alert"; } - - // Critical enum critical { value 2; + description "Critical"; } - - // Error enum error { value 3; + description "Error"; } - - // Warning enum warning { value 4; + description "Warning"; } - - // Notification enum notification { value 5; + description "Notification"; } - - // Informational enum informational { value 6; + description "Informational"; } - - // Debug enum debug { value 7; + description "Debug"; } } default "error"; @@ -2700,28 +2528,6 @@ module Cisco-NX-OS-device { default "180"; } - // Opcode - typedef arp_Opcode { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // ARP request - enum req { - value 1; - } - - // ARP reply - enum reply { - value 2; - } - } - default "unspecified"; - } - // RARP Fabric Forwarding Rate Limit typedef arp_RarpForwadingRate { type uint16 { @@ -2733,20 +2539,17 @@ module Cisco-NX-OS-device { // Static Adjacency operational state typedef arp_StAdjOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Incomplete enum up { value 1; + description "Incomplete"; } - - // Unspecified enum unspecified { value 10; + description "Unspecified"; } } default "unspecified"; @@ -2755,60 +2558,49 @@ module Cisco-NX-OS-device { // Static Adjacency operational state qualifier typedef arp_StAdjOperStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Subnet mismatch enum subnet-mismatch { value 1; + description "Subnet mismatch"; } - - // Invalid MAC enum invalid-mac { value 2; + description "Invalid MAC"; } - - // Invalid IP enum invalid-ip { value 3; + description "Invalid IP"; } - - // Invalid VRF enum invalid-vrf { value 4; + description "Invalid VRF"; } - - // Own MAC enum own-mac { value 5; + description "Own MAC"; } - - // Interface down enum if-down { value 6; + description "Interface down"; } - - // Up enum up { value 7; + description "Up"; } - - // Invalid Interface enum invalid-if { value 8; + description "Invalid Interface"; } - - // Invalid CLI Data enum invalid-clidata { value 9; + description "Invalid CLI Data"; } - - // No Memory enum no-memory { value 10; + description "No Memory"; } } default "unspecified"; @@ -2817,32 +2609,27 @@ module Cisco-NX-OS-device { // Suppression Cache flag typedef arp_SupCacheFlag { - // bits- Using string type string; } // Suppression ARP Mode typedef arp_SuppressArpMode { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // L2SuppressARP enum l2suppressarp { value 1; + description "L2SuppressARP"; } - - // L2L3SuppressARP enum l2l3suppressarp { value 2; + description "L2L3SuppressARP"; } - - // Invalid enum invalid { value 3; + description "Invalid"; } } } @@ -2879,6 +2666,12 @@ module Cisco-NX-OS-device { default "1500"; } + typedef bd_AclName { + type string { + length "0..64"; + } + } + // Default SVI autoState typedef bd_DefaultSVIAutoState { type enumeration { @@ -2892,18 +2685,58 @@ module Cisco-NX-OS-device { default "enable"; } + typedef bd_Description { + type string { + length "0..64"; + } + } + + typedef bd_MonitorName { + type string { + length "0..64"; + } + } + + typedef bd_QueueId { + type uint16 { + range "0..7"; + } + } + + // Actual Values are from 64 + // To be controlled in the BI logic + typedef bd_SamplingMbPackets { + type uint32 { + range "0..1024"; + } + } + + // Actual Range is from 122 to 100 + // To be controlled in the BI logic + typedef bd_SamplingMbRate { + type uint32 { + range "0..100000"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef bd_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + // Address family type typedef bfd_AfT { type enumeration { - - // IPv4 address family enum ipv4 { value 1; + description "IPv4 address family"; } - - // IPv6 address family enum ipv6 { value 2; + description "IPv6 address family"; } } default "ipv4"; @@ -2917,7 +2750,6 @@ module Cisco-NX-OS-device { // Application session flags typedef bfd_AppFlags { - // bits- Using string type string; } @@ -2938,6 +2770,21 @@ module Cisco-NX-OS-device { } } + // BFD AuthInterop Cfg + typedef bfd_AuthInterop { + type enumeration { + enum enable { + value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "disable"; + } + // Authentication key typedef bfd_AuthKey { type string { @@ -2960,20 +2807,17 @@ module Cisco-NX-OS-device { // Authentication type typedef bfd_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "No authentication"; } - - // Keyed SHA1 enum sha1 { value 4; + description "Keyed SHA1"; } - - // Met Keyed SHA1 enum met-sha1 { value 5; + description "Met Keyed SHA1"; } } default "none"; @@ -2990,50 +2834,41 @@ module Cisco-NX-OS-device { // Diag Code typedef bfd_DiagCode { type enumeration { - - // No Diagnostic enum none { value 0; + description "No Diagnostic"; } - - // Control Detection Time Expired enum detect-timeout { value 1; + description "Control Detection Time Expired"; } - - // Echo Function Failed enum echo-fail { value 2; + description "Echo Function Failed"; } - - // Neighbor Signaled Session Down enum nbr-signal-down { value 3; + description "Neighbor Signaled Session Down"; } - - // Forwarding Plane Reset enum fwd-plane-reset { value 4; + description "Forwarding Plane Reset"; } - - // Path Down enum path-down { value 5; + description "Path Down"; } - - // Concatenated Path Down enum concat-path-down { value 6; + description "Concatenated Path Down"; } - - // Administratively Down enum admin-down { value 7; + description "Administratively Down"; } - - // Reverse Concatenated Path Down enum rev-concat-path-down { value 8; + description "Reverse Concatenated Path Down"; } } } @@ -3053,7 +2888,6 @@ module Cisco-NX-OS-device { typedef bfd_IfControl { - // bits- Using string type string; } @@ -3081,6 +2915,22 @@ module Cisco-NX-OS-device { default "0"; } + // Multihop Minimum rx interval (in ms) + typedef bfd_MhMinRxIntvl { + type uint16 { + range "250..999"; + } + default "250"; + } + + // Multihop Minimum tx interval (in ms) + typedef bfd_MhMinTxIntvl { + type uint16 { + range "250..999"; + } + default "250"; + } + // Minimum rx interval (in ms) typedef bfd_MinRxIntvl { type uint16 { @@ -3100,25 +2950,21 @@ module Cisco-NX-OS-device { // Oper State typedef bfd_OperSt { type enumeration { - - // AdminDown enum admin-down { value 0; + description "AdminDown"; } - - // Down enum down { value 1; + description "Down"; } - - // Init enum init { value 2; + description "Init"; } - - // Up enum up { value 3; + description "Up"; } } } @@ -3126,7 +2972,6 @@ module Cisco-NX-OS-device { // Packet flags typedef bfd_PktFlags { - // bits- Using string type string; } @@ -3165,15 +3010,13 @@ module Cisco-NX-OS-device { // BFD Cfg State typedef bfd_TrkMbrLnk { type enumeration { - - // Enabled enum enable { value 1; + description "Enabled"; } - - // Disabled enum disable { value 0; + description "Disabled"; } } default "disable"; @@ -3182,22 +3025,19 @@ module Cisco-NX-OS-device { // Additional Paths capability in DomAf typedef bgp_AddlPathCapT { - // bits- Using string type string; } // Administrative state typedef bgp_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "disabled"; @@ -3213,15 +3053,13 @@ module Cisco-NX-OS-device { // Advertise l2vpn evpn typedef bgp_AdvertL2vpnEvpn { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -3229,20 +3067,17 @@ module Cisco-NX-OS-device { typedef bgp_AdvtMapCondition { type enumeration { - - // no options enum none { value 0; + description "no options"; } - - // Exist Route Map enum exist { value 1; + description "Exist Route Map"; } - - // Non-Exist Route Map enum non-exist { value 2; + description "Non-Exist Route Map"; } } default "none"; @@ -3251,80 +3086,65 @@ module Cisco-NX-OS-device { // Address family type typedef bgp_AfT { type enumeration { - - // IPv4 unicast address family enum ipv4-ucast { value 1; + description "IPv4 unicast address family"; } - - // IPv4 multicast address family enum ipv4-mcast { value 2; + description "IPv4 multicast address family"; } - - // Vpnv4 unicast address family enum vpnv4-ucast { value 3; + description "Vpnv4 unicast address family"; } - - // IPv6 unicast address family enum ipv6-ucast { value 5; + description "IPv6 unicast address family"; } - - // IPv6 multicast address family enum ipv6-mcast { value 6; + description "IPv6 multicast address family"; } - - // Vpnv6 unicast address family enum vpnv6-ucast { value 7; + description "Vpnv6 unicast address family"; } - - // L2Vpn EVpn address family enum l2vpn-evpn { value 9; + description "L2Vpn EVpn address family"; } - - // IPv4 labeled unicast address family enum ipv4-lucast { value 10; + description "IPv4 labeled unicast address family"; } - - // IPv6 labeled unicast address family enum ipv6-lucast { value 11; + description "IPv6 labeled unicast address family"; } - - // Link state address family enum lnkstate { value 12; + description "Link state address family"; } - - // IPv4 mvpn address family enum ipv4-mvpn { value 13; + description "IPv4 mvpn address family"; } - - // IPv6 mvpn address family enum ipv6-mvpn { value 14; + description "IPv6 mvpn address family"; } - - // L2Vpn vpls address family enum l2vpn-vpls { value 15; + description "L2Vpn vpls address family"; } - - // IPv4 mdt address family enum ipv4-mdt { value 16; + description "IPv4 mdt address family"; } - - // Vpnv6 multicast address family enum vpnv6-mcast { value 8; + description "Vpnv6 multicast address family"; } } default "ipv4-ucast"; @@ -3337,6 +3157,21 @@ module Cisco-NX-OS-device { } } + // BGP SRv6 SID Allocation mode + typedef bgp_AllocMod { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum per-vrf { + value 1; + description "Allocate SRv6 SID per VRF"; + } + } + default "none"; + } + // AS path database size typedef bgp_AsPathDbSz { type uint32; @@ -3345,15 +3180,13 @@ module Cisco-NX-OS-device { // AS segment type typedef bgp_AsSegT { type enumeration { - - // Sequence enum sequence { value 1; + description "Sequence"; } - - // Set enum set { value 2; + description "Set"; } } default "set"; @@ -3362,15 +3195,13 @@ module Cisco-NX-OS-device { // AS Set typedef bgp_AsSet { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -3384,30 +3215,60 @@ module Cisco-NX-OS-device { // Customizes AS_PATH attribute for routes received from eBGP neighbor typedef bgp_AsnPropagation { type enumeration { - - // no options enum none { value 0; + description "no options"; } - - // no-prepend enum no-prepend { value 1; + description "no-prepend"; } - - // no-prepend+replace-as enum replace-as { value 2; + description "no-prepend+replace-as"; } - - // noPrepend+replace-as+dual-as enum dual-as { value 3; + description "noPrepend+replace-as+dual-as"; } } default "none"; } + // Attribute Filtering control direction + typedef bgp_AttrFltrDir { + type enumeration { + enum in { + value 1; + description "Perform path-attribute filtering on inbound updates"; + } + enum out { + value 2; + description "Perform path-attribute filtering on outbound updates"; + } + } + default "in"; + } + + // BGP Path Attribute Filtering Action Type + typedef bgp_AttrFltrType { + type enumeration { + enum treataswithdraw { + value 0; + description "Treat the filtered BGP Update Message as withdrawn"; + } + enum discard { + value 1; + description "Discard the attribute in the filtered BGP Update Message"; + } + } + } + + // BGP Attribute Types. + typedef bgp_AttrTypes { + type uint16; + } + // Attribute database size typedef bgp_AttribDbSz { type uint32; @@ -3421,18 +3282,278 @@ module Cisco-NX-OS-device { default "300"; } + typedef bgp_BgpDscp { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 cs1 { + value 8; + description "CS1(precedence 1) dscp (001000)"; + } + enum 9 { + value 9; + description "9"; + } + enum af11 { + value 10; + description "AF11 dscp (001010)"; + } + enum 11 { + value 11; + description "11"; + } + enum af12 { + value 12; + description "AF12 dscp (001100)"; + } + enum 13 { + value 13; + description "13"; + } + enum af13 { + value 14; + description "AF13 dscp (001110)"; + } + enum 15 { + value 15; + description "15"; + } + enum cs2 { + value 16; + description "CS2(precedence 2) dscp (010000)"; + } + enum 17 { + value 17; + description "17"; + } + enum af21 { + value 18; + description "AF21 dscp (010010)"; + } + enum 19 { + value 19; + description "19"; + } + enum af22 { + value 20; + description "AF22 dscp (010100)"; + } + enum 21 { + value 21; + description "21"; + } + enum af23 { + value 22; + description "AF23 dscp (010110)"; + } + enum 23 { + value 23; + description "23"; + } + enum cs3 { + value 24; + description "CS3(precedence 3) dscp (011000)"; + } + enum 25 { + value 25; + description "25"; + } + enum af31 { + value 26; + description "AF31 dscp (011010)"; + } + enum 27 { + value 27; + description "27"; + } + enum af32 { + value 28; + description "AF32 dscp (011100)"; + } + enum 29 { + value 29; + description "29"; + } + enum af33 { + value 30; + description "AF33 dscp (011110)"; + } + enum 31 { + value 31; + description "31"; + } + enum cs4 { + value 32; + description "CS4(precedence 4) dscp (100000)"; + } + enum 33 { + value 33; + description "33"; + } + enum af41 { + value 34; + description "AF41 dscp (100010)"; + } + enum 35 { + value 35; + description "35"; + } + enum af42 { + value 36; + description "AF42 dscp (100100)"; + } + enum 37 { + value 37; + description "37"; + } + enum af43 { + value 38; + description "AF43 dscp (100110)"; + } + enum 39 { + value 39; + description "39"; + } + enum cs5 { + value 40; + description "CS5(precedence 5) dscp (101000)"; + } + enum 41 { + value 41; + description "41"; + } + enum 42 { + value 42; + description "42"; + } + enum 43 { + value 43; + description "43"; + } + enum 44 { + value 44; + description "44"; + } + enum 45 { + value 45; + description "45"; + } + enum ef { + value 46; + description "EF dscp (101110)"; + } + enum 47 { + value 47; + description "47"; + } + enum cs6 { + value 48; + description "CS6(precedence 6) dscp (110000)"; + } + enum 49 { + value 49; + description "49"; + } + enum 50 { + value 50; + description "50"; + } + enum 51 { + value 51; + description "51"; + } + enum 52 { + value 52; + description "52"; + } + enum 53 { + value 53; + description "53"; + } + enum 54 { + value 54; + description "54"; + } + enum 55 { + value 55; + description "55"; + } + enum cs7 { + value 56; + description "CS7(precedence 7) dscp (111000)"; + } + enum 57 { + value 57; + description "57"; + } + enum 58 { + value 58; + description "58"; + } + enum 59 { + value 59; + description "59"; + } + enum 60 { + value 60; + description "60"; + } + enum 61 { + value 61; + description "61"; + } + enum 62 { + value 62; + description "62"; + } + enum 63 { + value 63; + description "63"; + } + } + default "cs6"; + } + // BMP server state typedef bgp_BmpSt { type enumeration { - - // Enabled enum enabled { value 0; + description "Enabled"; } - - // Disabled enum disabled { value 1; + description "Disabled"; } } default "enabled"; @@ -3441,14 +3562,12 @@ module Cisco-NX-OS-device { // Additional Paths capability in Neighbor Af typedef bgp_CapAddlPathCapT { - // bits- Using string type string; } // Capability type typedef bgp_CapT { - // bits- Using string type string; } @@ -3466,10 +3585,17 @@ module Cisco-NX-OS-device { // Connection info typedef bgp_ConnMode { - // bits- Using string type string; } + // Discarded Attribute Length + typedef bgp_DiscardedAttrLen { + + type uint32 { + range "0..4294967295"; + } + } + // BGP Distance typedef bgp_Distance { type uint16 { @@ -3485,20 +3611,17 @@ module Cisco-NX-OS-device { // Domain operational state typedef bgp_DomOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "VRF Operationally up"; } - - // Down enum down { value 2; + description "VRF Operationally down"; } } default "unknown"; @@ -3507,20 +3630,17 @@ module Cisco-NX-OS-device { // Egress Peer Engineering EPE for neighbor status typedef bgp_EgressPeerEng { type enumeration { - - // Disabled enum none { value 0; + description "Disabled"; } - - // Egress Peer Engineering Enabled enum enabled { value 1; + description "Egress Peer Engineering Enabled"; } - - // Advertise Adjacency-SIDs for multi-hop neighbor paths enum enabled-adj-sid { value 2; + description "Advertise Adjacency-SIDs for multi-hop neighbor paths"; } } default "none"; @@ -3532,35 +3652,33 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // Cli buffer enum cli { value 1; + description "Cli buffer"; } - - // Events buffer enum events { value 2; + description "Events buffer"; } - - // Periodic buffer enum periodic { value 3; + description "Periodic buffer"; } - - // Detailed buffer enum detail { value 4; + description "Detailed buffer"; } - - // Errors buffer enum errors { value 5; + description "Errors buffer"; } - - // Objstore buffer enum objstore { value 6; + description "Objstore buffer"; + } + enum socket { + value 7; + description "Socket buffer"; } } default "none"; @@ -3569,45 +3687,43 @@ module Cisco-NX-OS-device { // EVPN route-type typedef bgp_EvpnRtType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Ethernet Auto-Discovery route enum a-d { value 1; + description "Ethernet Auto-Discovery route"; } - - // MAC/IP Advertisement route enum mac-ip { value 2; + description "MAC/IP Advertisement route"; } - - // Inclusive Multicast Ethernet Tag route enum imet { value 3; + description "Inclusive Multicast Ethernet Tag route"; } - - // Ethernet Segment route enum eth-seg { value 4; + description "Ethernet Segment route"; } - - // IP Prefix route enum ip-pfx { value 5; + description "IP Prefix route"; } } default "none"; } + // Filter State type for Path-Attribute Filtering + typedef bgp_FltrSt { + type nw_AdminSt; + default "enabled"; + } + // Graceful restart controls - // Default Value computed from complete typedef bgp_GrCtrl { - // bits- Using string type string; default "complete"; } @@ -3640,15 +3756,13 @@ module Cisco-NX-OS-device { // MOs PeerCont and SessionCont). typedef bgp_InheritContPeerCtrlType { - // bits- Using string type string; } - // Inherit template peer-policy control bits. (Please refer + // Inherit template peer-policy control gigabits. (Please refer // to MO PolicyCont). typedef bgp_InheritContPeerPolicyCtrlType { - // bits- Using string type string; } @@ -3677,10 +3791,8 @@ module Cisco-NX-OS-device { } // Link Attribute TLV flags for Link-state - // Default Value computed from none typedef bgp_LnkLsAttrFlags { - // bits- Using string type string; default "none"; } @@ -3688,20 +3800,17 @@ module Cisco-NX-OS-device { // Log Neighbor changes typedef bgp_LogNbrSt { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Enable enum enable { value 1; + description "Enable"; } - - // Disable enum disable { value 2; + description "Disable"; } } default "none"; @@ -3710,15 +3819,13 @@ module Cisco-NX-OS-device { // Link-State status typedef bgp_LsAdminSt { type enumeration { - - // Inactive enum inactive { value 0; + description "Inactive"; } - - // Active enum active { value 1; + description "Active"; } } default "inactive"; @@ -3727,25 +3834,21 @@ module Cisco-NX-OS-device { // Link-State attribute entry type typedef bgp_LsAttrEntryType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Peer Node Segment Identifier enum peer-node-sid { value 1101; + description "Peer Node Segment Identifier"; } - - // Peer Adjacency Segment Identifier enum peer-adj-sid { value 1102; + description "Peer Adjacency Segment Identifier"; } - - // Peer Set Segment Identifier enum peer-set-sid { value 1103; + description "Peer Set Segment Identifier"; } } default "none"; @@ -3754,30 +3857,25 @@ module Cisco-NX-OS-device { // Link-State NLRI Type typedef bgp_LsNlriType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Node NLRI enum node { value 1; + description "Node NLRI"; } - - // Link NLRI enum link { value 2; + description "Link NLRI"; } - - // IPv4 Topology Prefix NLRI enum ipv4-topo { value 3; + description "IPv4 Topology Prefix NLRI"; } - - // IPv6 Topology Prefix NLRI enum ipv6-topo { value 4; + description "IPv6 Topology Prefix NLRI"; } } default "none"; @@ -3786,45 +3884,37 @@ module Cisco-NX-OS-device { // Link-State Protocol Identifier typedef bgp_LsProtoId { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // IS-IS Level 1 enum isis-l1 { value 1; + description "IS-IS Level 1"; } - - // IS-IS Level 2 enum isis-l2 { value 2; + description "IS-IS Level 2"; } - - // OSPFv2 enum ospf-v2 { value 3; + description "OSPFv2"; } - - // Direct enum direct { value 4; + description "Direct"; } - - // Static configuration enum static { value 5; + description "Static configuration"; } - - // OSPFv3 enum ospf-v3 { value 6; + description "OSPFv3"; } - - // Egress Peer Engineering enum epe { value 7; + description "Egress Peer Engineering"; } } default "none"; @@ -3833,80 +3923,65 @@ module Cisco-NX-OS-device { // Major notify error typedef bgp_MajNotifErr { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Header Error enum hdr-err { value 1; + description "Header Error"; } - - // Open Message Error enum open-msg-err { value 2; + description "Open Message Error"; } - - // Update Message Error enum upd-msg-err { value 3; + description "Update Message Error"; } - - // Holdtimer Expired enum hold-timer-exp { value 4; + description "Holdtimer Expired"; } - - // FSM Error enum fsm-err { value 5; + description "FSM Error"; } - - // Cease Error enum cease-err { value 6; + description "Cease Error"; } - - // Capability Message Error enum cap-msg-err { value 7; + description "Capability Message Error"; } - - // Process Restart Error enum process-restart-err { value 101; + description "Process Restart Error"; } - - // FD Read Error enum fd-read-err { value 102; + description "FD Read Error"; } - - // FD Ioctl Error enum fd-ioctl-err { value 103; + description "FD Ioctl Error"; } - - // Peer Closed Session Error enum peer-close-sess-err { value 104; + description "Peer Closed Session Error"; } - - // Peer Received Notification Error enum rcvd-notif-err { value 105; + description "Peer Received Notification Error"; } - - // Received Duplicate Connection Request enum rcvd-dup-conn-req { value 106; + description "Received Duplicate Connection Request"; } - - // Dynamic Capability no Buffer enum dyn-cap-no-buf { value 107; + description "Dynamic Capability no Buffer"; } } } @@ -3941,20 +4016,17 @@ module Cisco-NX-OS-device { // Action when the prefixes crosses the maximum limit typedef bgp_MaxPfxAct { type enumeration { - - // Log enum log { value 1; + description "Log"; } - - // Shutdown enum shut { value 2; + description "Shutdown"; } - - // Restart enum restart { value 3; + description "Restart"; } } default "shut"; @@ -3964,7 +4036,6 @@ module Cisco-NX-OS-device { // prefix limit is reached typedef bgp_MaxPfxDuration { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -3998,290 +4069,233 @@ module Cisco-NX-OS-device { // Minor notify error typedef bgp_MinNotifErr { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Unspecified Msg Header Error enum unspecified-msg-hdr-err { value 1; + description "Unspecified Msg Header Error"; } - - // Connection not Synchronized enum conn-not-synced { value 2; + description "Connection not Synchronized"; } - - // Bad Message Length enum bad-msg-len { value 3; + description "Bad Message Length"; } - - // Bad Message Type enum bad-msg-type { value 4; + description "Bad Message Type"; } - - // Unknown Message Header Error enum unknown-msg-hdr-err { value 5; + description "Unknown Message Header Error"; } - - // Unspecified Open Error enum unspecified-open-err { value 6; + description "Unspecified Open Error"; } - - // Unsupported Version enum unsupp-version { value 7; + description "Unsupported Version"; } - - // Bad Peer AS enum bad-peer-as { value 8; + description "Bad Peer AS"; } - - // Bad Peer Router ID enum bad-peer-rtrid { value 9; + description "Bad Peer Router ID"; } - - // Unsupported Optional Parameter enum unsupp-opt-param { value 10; + description "Unsupported Optional Parameter"; } - - // Authentication Error enum auth-err { value 11; + description "Authentication Error"; } - - // Unacceptable Holdtime enum bad-holdtime { value 12; + description "Unacceptable Holdtime"; } - - // Unsupported Capability enum unsupp-cap { value 13; + description "Unsupported Capability"; } - - // Unknown Open Header Error enum unknown-open-hdr-err { value 14; + description "Unknown Open Header Error"; } - - // Unspecified Update Error enum unspecified-update-err { value 15; + description "Unspecified Update Error"; } - - // Malformed Attribute List enum malformed-attr-list { value 16; + description "Malformed Attribute List"; } - - // Unrecognized Wellknown Attr enum unrecognized-wellknown-attr { value 17; + description "Unrecognized Wellknown Attr"; } - - // Missing Well-known Attribute enum missing-wellknown-attr { value 18; + description "Missing Well-known Attribute"; } - - // Attribute Flags Error enum attr-flags-err { value 19; + description "Attribute Flags Error"; } - - // Attribute Length Error enum attr-len-err { value 20; + description "Attribute Length Error"; } - - // Invalid Origin Attribute enum invalid-origin-attr { value 21; + description "Invalid Origin Attribute"; } - - // Bgp AS Routing Loop Error enum as-loop-err { value 22; + description "Bgp AS Routing Loop Error"; } - - // Invalid Next-hop Attribute enum invalid-nh-attr { value 23; + description "Invalid Next-hop Attribute"; } - - // Optional Attribute Error enum opt-attr-err { value 24; + description "Optional Attribute Error"; } - - // Invalid Network Field enum invalid-nw-field { value 25; + description "Invalid Network Field"; } - - // Malformed AS Path enum bad-as-path { value 26; + description "Malformed AS Path"; } - - // Unknown Update Header Error enum unknown-update-hdr-err { value 27; + description "Unknown Update Header Error"; } - - // Unspecified Cease Error enum unspecified-cease-err { value 28; + description "Unspecified Cease Error"; } - - // Maximum Prefix Count enum max-pfx-count-err { value 29; + description "Maximum Prefix Count"; } - - // Administratively Shutdown enum admin-shut { value 30; + description "Administratively Shutdown"; } - - // Peer Deconfigured enum peer-decfg { value 31; + description "Peer Deconfigured"; } - - // Session Cleared enum session-cleared { value 32; + description "Session Cleared"; } - - // Connection Rejected enum conn-rej { value 33; + description "Connection Rejected"; } - - // Other Configuration Change Error enum other-cfg-chg { value 34; + description "Other Configuration Change Error"; } - - // Connection Collision Resolution enum conn-coll-resolution { value 35; + description "Connection Collision Resolution"; } - - // Out of Resource enum out-of-rsrc { value 36; + description "Out of Resource"; } - - // Dynamic Capability Configuration Change enum dyn-cap-cfg-chg { value 37; + description "Dynamic Capability Configuration Change"; } - - // TTL Configuration Change enum ttl-cfg-chg { value 38; + description "TTL Configuration Change"; } - - // TTL Security Configuration Change enum ttl-security-cfg-chg { value 39; + description "TTL Security Configuration Change"; } - - // Passive Neighbor Configuration Change enum passive-neighbor-cfg-chg { value 40; + description "Passive Neighbor Configuration Change"; } - - // Address-family Configuration Change enum af-cfg-chg { value 41; + description "Address-family Configuration Change"; } - - // Route-reflector Configuration Change enum rr-cfg-chg { value 42; + description "Route-reflector Configuration Change"; } - - // Router-id Configuration Change enum rtrid-cfg-chg { value 43; + description "Router-id Configuration Change"; } - - // Confederation Id Change enum confed-id-chg { value 44; + description "Confederation Id Change"; } - - // Confederation Membership Change enum confed-membership-change { value 45; + description "Confederation Membership Change"; } - - // Graceful-restart Configuration Change enum gr-cfg-chg { value 46; + description "Graceful-restart Configuration Change"; } - - // Soft-reconfiguration Change enum soft-recfg-chg { value 47; + description "Soft-reconfiguration Change"; } - - // Update-source Interface Change enum updatesrc-if-chg { value 48; + description "Update-source Interface Change"; } - - // Local-as Change enum localas-chg { value 49; + description "Local-as Change"; } - - // Unknown Cease Error enum unknown-cease-err { value 50; + description "Unknown Cease Error"; } - - // Unspecified Cappability Message Error enum unspecified-cap-msg-err { value 51; + description "Unspecified Cappability Message Error"; } - - // Unknown Sequence Number enum unknown-seq-num { value 52; + description "Unknown Sequence Number"; } - - // Invalid Capability Length enum invalid-cap-len { value 53; + description "Invalid Capability Length"; } - - // Malformed Capability Value enum bad-cap-val { value 54; + description "Malformed Capability Value"; } - - // Unsupported Capability Code enum unsupp-cap-code { value 55; + description "Unsupported Capability Code"; } - - // Unknown Capability Error enum unknown-cap-err { value 56; + description "Unknown Capability Error"; } } } @@ -4289,15 +4303,13 @@ module Cisco-NX-OS-device { // Mode typedef bgp_Mode { type enumeration { - - // Fabric enum fabric { value 1; + description "Fabric"; } - - // External enum external { value 2; + description "External"; } } default "fabric"; @@ -4306,45 +4318,37 @@ module Cisco-NX-OS-device { // MCAST-VPN NLRI route-type typedef bgp_MvpnRtType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Multicast Inter-AS PMSI Auto Discovery route enum interas-ipmsi-ad { value 1; + description "Multicast Inter-AS PMSI Auto Discovery route"; } - - // Multicast Intra-AS PMSI Auto Discovery route enum intraas-ipmsi-ad { value 2; + description "Multicast Intra-AS PMSI Auto Discovery route"; } - - // Multicast S-PMSI Auto Discovery route enum spmsi-ad { value 3; + description "Multicast S-PMSI Auto Discovery route"; } - - // Multicast Leaf Auto Discovery route enum leaf-ad { value 4; + description "Multicast Leaf Auto Discovery route"; } - - // Multicast Source-Active Auto Discovery route enum sa-ad { value 5; + description "Multicast Source-Active Auto Discovery route"; } - - // Shared C-Multicast route enum shared-c-mcast { value 6; + description "Shared C-Multicast route"; } - - // Source C-Multicast route enum source-c-mcast { value 7; + description "Source C-Multicast route"; } } default "none"; @@ -4368,20 +4372,17 @@ module Cisco-NX-OS-device { // Origin typedef bgp_Origin { type enumeration { - - // Learned Via IGP enum igp { value 1; + description "Learned Via IGP"; } - - // Learned Via EGP enum egp { value 2; + description "Learned Via EGP"; } - - // Learned by some other Means enum incomplete { value 3; + description "Learned by some other Means"; } } default "igp"; @@ -4390,10 +4391,9 @@ module Cisco-NX-OS-device { // Authentication status typedef bgp_PasswdSet { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } enum disabled { value 0; @@ -4405,7 +4405,6 @@ module Cisco-NX-OS-device { // Path flags typedef bgp_PathFlags { - // bits- Using string type string; } @@ -4417,40 +4416,33 @@ module Cisco-NX-OS-device { // Path status typedef bgp_PathSt { type enumeration { - - // Deleted enum deleted { value 0; + description "Deleted"; } - - // Staled enum staled { value 1; + description "Staled"; } - - // Valid enum valid { value 2; + description "Valid"; } - - // InValid enum invalid { value 3; + description "InValid"; } - - // history enum history { value 4; + description "history"; } - - // suppressed enum suppressed { value 5; + description "suppressed"; } - - // dampened enum dampened { value 6; + description "dampened"; } } } @@ -4458,40 +4450,33 @@ module Cisco-NX-OS-device { // Path type typedef bgp_PathT { type enumeration { - - // Internal enum internal { value 1; + description "Internal"; } - - // External enum external { value 2; + description "External"; } - - // Confederation enum confederation { value 3; + description "Confederation"; } - - // Local enum local { value 4; + description "Local"; } - - // Aggregate enum aggregate { value 5; + description "Aggregate"; } - - // Redistribute enum redistribute { value 6; + description "Redistribute"; } - - // Injected enum injected { value 7; + description "Injected"; } } default "internal"; @@ -4500,21 +4485,18 @@ module Cisco-NX-OS-device { // Peer Address Family Control typedef bgp_PeerAfControl { - // bits- Using string type string; } // Peer AF flags typedef bgp_PeerAfFlags { - // bits- Using string type string; } // Peer Control typedef bgp_PeerControl { - // bits- Using string type string; } @@ -4526,20 +4508,17 @@ module Cisco-NX-OS-device { // Peer Fabric Type typedef bgp_PeerFabType { type enumeration { - - // Fabric internal enum fabric-internal { value 0; + description "Fabric internal"; } - - // Fabric external enum fabric-external { value 1; + description "Fabric external"; } - - // Fabric Border Leaf enum fabric-border-leaf { value 2; + description "Fabric Border Leaf"; } } default "fabric-internal"; @@ -4548,27 +4527,30 @@ module Cisco-NX-OS-device { // Peer flags typedef bgp_PeerFlags { - // bits- Using string type string; } + // Graceful restart interval + typedef bgp_PeerGrIntvl { + type uint16 { + range "0..4095"; + } + } + // Peer graceful restart state typedef bgp_PeerGrSt { type enumeration { - - // Not applicable enum na { value 1; + description "Not applicable"; } - - // Reset enum reset { value 2; + description "Reset"; } - - // Up enum up { value 3; + description "Up"; } } default "na"; @@ -4582,65 +4564,53 @@ module Cisco-NX-OS-device { // Peer operational state typedef bgp_PeerOperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Illegal enum illegal { value 1; + description "Illegal"; } - - // Shut enum shut { value 2; + description "Shut"; } - - // Idle enum idle { value 3; + description "Idle"; } - - // Connect enum connect { value 4; + description "Connect"; } - - // Active enum active { value 5; + description "Active"; } - - // Open sent enum open-sent { value 6; + description "Open sent"; } - - // Open confirm enum open-confirm { value 7; + description "Open confirm"; } - - // Established enum established { value 8; + description "Established"; } - - // Closing enum closing { value 9; + description "Closing"; } - - // Error enum error { value 10; + description "Error"; } - - // Unknown enum unknown { value 11; + description "Unknown"; } } default "unspecified"; @@ -4649,15 +4619,13 @@ module Cisco-NX-OS-device { // Peer Type typedef bgp_PeerType { type enumeration { - - // ibgp enum ibgp { value 1; + description "ibgp"; } - - // ebgp enum ebgp { value 2; + description "ebgp"; } } default "ibgp"; @@ -4700,25 +4668,21 @@ module Cisco-NX-OS-device { // Prefix-Sid attribute entry type typedef bgp_PfxSidAttrEntryType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Label Index enum label-index { value 1; + description "Label Index"; } - - // IPv6-SID enum ipv6-sid { value 2; + description "IPv6-SID"; } - - // Originator SRGB enum origin-srgb { value 3; + description "Originator SRGB"; } } default "none"; @@ -4727,15 +4691,13 @@ module Cisco-NX-OS-device { // PMSI Tunnel Type typedef bgp_PmsiTunType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Ingress Replication enum ingress-repl { value 1; + description "Ingress Replication"; } } default "none"; @@ -4747,20 +4709,17 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // Remove private AS enum remove-exclusive { value 1; + description "Remove private AS"; } - - // Remove all private AS enum remove-all { value 2; + description "Remove all private AS"; } - - // Replace private AS with local AS enum replace-as { value 3; + description "Replace private AS with local AS"; } } default "none"; @@ -4769,25 +4728,21 @@ module Cisco-NX-OS-device { // Password Type typedef bgp_PwdType { type enumeration { - - // Specifies an UNENCRYPTED neighbor password enum 0 { value 0; + description "Specifies an UNENCRYPTED neighbor password"; } - - // Specifies an 3DES ENCRYPTED neighbor password enum 3 { value 3; + description "Specifies an 3DES ENCRYPTED neighbor password"; } - - // Specifies a Cisco type 7 ENCRYPTED neighbor password enum 7 { value 7; + description "Specifies a Cisco type 7 ENCRYPTED neighbor password"; } - - // UNENCRYPTED (cleartext) neighbor password convert to MD5 ENCRYPTED password enum LINE { value 5; + description "UNENCRYPTED (cleartext) neighbor password convert to MD5 ENCRYPTED password"; } } default "LINE"; @@ -4804,15 +4759,13 @@ module Cisco-NX-OS-device { // Route control direction typedef bgp_RtCtrlDir { type enumeration { - - // Incoming enum in { value 1; + description "Incoming"; } - - // Outgoing enum out { value 2; + description "Outgoing"; } } default "in"; @@ -4821,15 +4774,13 @@ module Cisco-NX-OS-device { // Route control operational state typedef bgp_RtCtrlOperSt { type enumeration { - - // Unresolved enum unresolved { value 1; + description "Unresolved"; } - - // Resolved enum resolved { value 2; + description "Resolved"; } } default "unresolved"; @@ -4838,14 +4789,12 @@ module Cisco-NX-OS-device { // Route flags typedef bgp_RtFlags { - // bits- Using string type string; } // Labeled address-family route flags typedef bgp_RtLblAfFlags { - // bits- Using string type string; } @@ -4862,38 +4811,47 @@ module Cisco-NX-OS-device { default "0"; } + // BGP SR option support in Segment-Routing + typedef bgp_SgmntRtg { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum srv6 { + value 1; + description "Support SRv6 option in Segment-Routing"; + } + } + default "none"; + } + // Peer shut state qualifier typedef bgp_ShutStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Administratively down enum admin { value 1; + description "Administratively down"; } - - // No memory enum no-mem { value 2; + description "No memory"; } - - // Exceeded prefix limit enum exceeded-pfxlimit { value 3; + description "Exceeded prefix limit"; } - - // Administratively up enum admin-up { value 4; + description "Administratively up"; } - - // No Affinity enum no-affinity { value 5; + description "No Affinity"; } } default "unspecified"; @@ -4917,16 +4875,15 @@ module Cisco-NX-OS-device { type enumeration { enum none { value 0; + description "No reason defined"; } - - // Inbound Only enum inbound { value 1; + description "Allow inbound soft reconfiguration"; } - - // Inbound Always enum inbound-always { value 2; + description "Always perform inbound soft reconfiguration"; } } } @@ -4944,10 +4901,9 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // NoMem enum no-mem { value 1; + description "NoMem"; } } default "none"; @@ -4956,15 +4912,13 @@ module Cisco-NX-OS-device { // Aggregate Address Summary-Only typedef bgp_SummaryOnly { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -4973,20 +4927,17 @@ module Cisco-NX-OS-device { // Table state typedef bgp_TblSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } } @@ -4996,6 +4947,25 @@ module Cisco-NX-OS-device { type uint32; } + // SNMP BGP trap type for All 3 state changes + typedef bgp_TrapType { + type enumeration { + enum none { + value 0; + description "Default none for snmp trap for all state changes"; + } + enum disabled { + value 1; + description "Disable snmp trap for all state changes"; + } + enum enabled { + value 2; + description "Enable snmp trap for all state changes"; + } + } + default "none"; + } + // eBGP Multihop TTL value typedef bgp_TtlVal { type uint16 { @@ -5006,7 +4976,6 @@ module Cisco-NX-OS-device { // Unknown Attribute Length typedef bgp_UnknownAttrLen { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -5015,7 +4984,6 @@ module Cisco-NX-OS-device { // VNID typedef bgp_Vnid { - // MAX Converted to int from 0xffffff type uint32 { range "0..16777215"; } @@ -5030,90 +4998,377 @@ module Cisco-NX-OS-device { default "600"; } - // Poap Cfg State - typedef boot_Poap { + typedef bl_AclName { + type string { + length "0..64"; + } + } + + typedef bl_Description { + type string { + length "0..64"; + } + } + + typedef bl_Name { + type string { + length "0..64"; + } + } + + typedef bl_QueueId { + type uint16 { + range "0..7"; + } + } + + // Actual Values are from 64 + // To be controlled in the BI logic + typedef bl_SamplingMbPackets { + type uint32 { + range "0..1024"; + } + } + + // Actual Range is from 122 to 100 + // To be controlled in the BI logic + typedef bl_SamplingMbRate { + type uint32 { + range "0..100000"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef bl_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + + // Actual Range is from 100 to 16000000 + // To be controlled in the BI logic + typedef bl_ThresholdValue { + type uint32 { + range "0..16777215"; + } + } + + // Autocopy State + typedef boot_AutoCopy { type enumeration { + enum enable { + value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "enable"; + } + + typedef boot_BootOrderReverse { + type enumeration { + enum yes { + value 1; + description "Yes"; + } + enum no { + value 0; + description "No"; + } + } + default "no"; + } + + // Docker Cluster Mode DHCP Option + typedef boot_Dhcp { + type uint32 { + range "0..2147483647"; + } + default "250"; + } - // Enabled + // ImageVerify Cfg State + typedef boot_ImageVerify { + type enumeration { enum enable { value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "enable"; + } + + // Boot Mode Types + typedef boot_Mode { + type enumeration { + enum none { + value 0; + description "Native Boot Mode"; + } + enum lxc { + value 1; + description "LXC Boot Mode"; + } + enum dockerCluster { + value 3; + description "Docker Cluster Boot Mode"; } + } + default "none"; + } - // Disabled + // Boot order Cfg State + typedef boot_Order { + type enumeration { + enum bootflash { + value 0; + description "bootflash"; + } + enum pxe { + value 1; + description "pxe"; + } + enum pxe2bootflash { + value 2; + description "pxe2bootflash"; + } + enum bootflash2pxe { + value 3; + description "bootflash2pxe"; + } + } + default "bootflash"; + } + + // Poap Cfg State + typedef boot_Poap { + type enumeration { + enum enable { + value 1; + description "Enabled"; + } enum disable { value 0; + description "Disabled"; } } default "disable"; } - typedef cap_Constraint { - type uint32; + typedef callhome_AlertGroupName { + type enumeration { + enum configuration { + value 0; + description "Events Related To Configuration"; + } + enum diagnostic { + value 1; + description "Events Related To Diagnostic"; + } + enum environmental { + value 2; + description "Power,Fan,Temperature Related Events"; + } + enum inventory { + value 3; + description "Inventory Status Events"; + } + enum license { + value 4; + description "Events Related To Licensing"; + } + enum linecard { + value 5; + description "Linecard Related Events"; + } + enum supervisor { + value 6; + description "Supervisor Related Events"; + } + enum syslogport { + value 7; + description "Events Related To Syslog Messages Filed By Port Manager"; + } + enum system { + value 8; + description "Software Related Events"; + } + enum test { + value 9; + description "User Generated Test Events"; + } + } } - typedef cap_Counter { - type uint32; + typedef callhome_Boolean { + type enumeration { + enum enabled { + value 1; + } + enum disabled { + value 0; + } + } } - typedef cap_Model { - type string; + typedef callhome_Email { + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } } - // Quantitative - typedef cap_Quant { + typedef callhome_Format { + type enumeration { + enum xml { + value 1; + description "XML message format"; + } + enum full-txt { + value 2; + description "Plain Text Message Format"; + } + enum short-txt { + value 3; + description "Short Text Message Format"; + } + } + default "xml"; + } - // MAX Converted to int from 0xFFFF - type uint16 { - range "0..65535"; + typedef callhome_PeriodicSystemInventoryIntervalDays { + type uint32 { + range "1..30"; + } + default "7"; + } + + typedef callhome_PeriodicSystemInventoryTimeOfDayHour { + type uint32 { + range "0..23"; } default "0"; } - typedef cap_RaiseFaultState { + typedef callhome_PeriodicSystemInventoryTimeOfDayMinute { + type uint32 { + range "0..59"; + } + default "0"; + } + + typedef callhome_Phone { + type address_Phone; + } + + typedef callhome_PredefProfileName { type enumeration { - enum nominal { + enum predef_tac_prof { value 0; + description "Configure Destination Profile For XML Message"; } - enum ruleHasLess { + enum full_txt { value 1; + description "Configure Destination Profile For Plain Txt Message"; } - enum ruleHasMore { + enum short_txt { value 2; + description "Configure Destination Profile For Short Txt Message"; } } - default "nominal"; } - typedef cap_RuleT { - type enumeration { - enum limit { - value 1; - } + typedef callhome_ServerType { + type string { + length "0..255"; + pattern ".*[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } - default "limit"; } - typedef cap_Scope { + typedef callhome_StringRange { + type string { + length "0..255"; + } + } + + typedef cap_Counter { + type uint32; + } + + // Logging level type + typedef cap_LoggingLevel { + type uint16 { + range "0..7"; + } + default "2"; + } + + // Logging Level + typedef cap_LoggingType { type enumeration { - enum node { + enum Emergencies { value 0; + description "Emergencies"; } - enum policy-domain { + enum Alerts { value 1; + description "Alerts"; } - enum fabric { + enum Critical { value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "node"; + default "Critical"; } - typedef cap_StorageHint { - type uint8; + // Quantitative + typedef cap_Quant { + + type uint16 { + range "0..65535"; + } + default "0"; } - typedef cap_Vendor { - type string; + typedef cap_RuleT { + type enumeration { + enum limit { + value 1; + } + } + default "limit"; + } + + typedef cap_StorageHint { + type uint8; } typedef cap_Version { @@ -5123,7 +5378,6 @@ module Cisco-NX-OS-device { // Capability type typedef cdp_CapT { - // bits- Using string type string; } @@ -5135,25 +5389,21 @@ module Cisco-NX-OS-device { // Device identifier type typedef cdp_DevIdT { type enumeration { - - // Not configured enum none { value 0; + description "Not configured"; } - - // MAC address enum mac { value 1; + description "MAC address"; } - - // Serial number enum serialNum { value 2; + description "Serial number"; } - - // System name enum sysName { value 3; + description "System name"; } } default "none"; @@ -5167,20 +5417,17 @@ module Cisco-NX-OS-device { // Duplex typedef cdp_Duplex { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Half duplex enum half { value 1; + description "Half duplex"; } - - // Full duplex enum full { value 2; + description "Full duplex"; } } } @@ -5206,15 +5453,13 @@ module Cisco-NX-OS-device { // Operational state typedef cdp_OperSt { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -5223,25 +5468,21 @@ module Cisco-NX-OS-device { // Operational state qualifier typedef cdp_OperStQual { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Administratively down enum admin-down { value 2; + description "Administratively down"; } - - // Interface down enum if-down { value 3; + description "Interface down"; } - - // Unsupported enum unsupported { value 4; + description "Unsupported"; } } default "unsupported"; @@ -5278,15 +5519,13 @@ module Cisco-NX-OS-device { // Version typedef cdp_Ver { type enumeration { - - // Version 1 enum v1 { value 1; + description "Version 1"; } - - // Version 2 enum v2 { value 2; + description "Version 2"; } } default "v2"; @@ -5298,9 +5537,105 @@ module Cisco-NX-OS-device { default "0"; } + // Administrative state + typedef cfs_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "enabled"; + } + + // Region ID + typedef cfs_RegId { + type uint32 { + range "1..200"; + } + } + + typedef comm_AdminState { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "enabled"; + } + typedef comm_Port { type uint32 { - range "1024..65000"; + range "1..65535"; + } + } + + typedef comm_Protocol { + type enumeration { + enum none { + value 0; + description "None"; + } + enum tcp { + value 1; + description "tcp"; + } + enum udp { + value 2; + description "udp"; + } + enum all { + value 3; + description "All"; + } + } + default "none"; + } + + typedef comm_RekeyDataType { + type string { + length "0..7"; + pattern ".*[a-zA-Z0-9].*"; + } + } + + typedef comm_SshKeyType { + type enumeration { + enum rsa { + value 1; + description "rsa"; + } + enum dsa { + value 2; + description "dsa"; + } + enum ecdsa { + value 3; + description "ecdsa"; + } + } + default "rsa"; + } + + typedef comm_SshPortfaultBitmapT { + type enumeration { + enum noerror { + value 0; + description "Unknown"; + } + enum SshPortUnavailable { + value 1; + description "Failed to configure ssh port."; + } } } @@ -5310,50 +5645,41 @@ module Cisco-NX-OS-device { typedef comp_HostState { type enumeration { - - // Maintenance Mode enum maintenance { value 0; + description "Maintenance Mode"; } - - // Connected enum connected { value 1; + description "Connected"; } - - // Not Responding enum noresponse { value 2; + description "Not Responding"; } - - // Disconnected enum disconnected { value 3; + description "Disconnected"; } - - // Powered On enum poweredOn { value 4; + description "Powered On"; } - - // Powered Off enum poweredOff { value 5; + description "Powered Off"; } - - // StandBy enum standBy { value 6; + description "StandBy"; } - - // Suspended enum suspended { value 7; + description "Suspended"; } - - // Unknown enum unknown { value 8; + description "Unknown"; } } default "disconnected"; @@ -5361,25 +5687,21 @@ module Cisco-NX-OS-device { typedef comp_InstType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Baremetal Host enum phys { value 1; + description "Baremetal Host"; } - - // Virtual Machine enum virt { value 2; + description "Virtual Machine"; } - - // Hypervisor Host enum hv { value 3; + description "Hypervisor Host"; } } default "unknown"; @@ -5391,15 +5713,13 @@ module Cisco-NX-OS-device { typedef comp_NicState { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } } default "down"; @@ -5408,15 +5728,13 @@ module Cisco-NX-OS-device { // Operation type typedef conftmpl_OperationType { type enumeration { - - // Create enum create { value 1; + description "Create"; } - - // Delete enum delete { value 2; + description "Delete"; } } default "create"; @@ -5425,25 +5743,21 @@ module Cisco-NX-OS-device { // Template type typedef conftmpl_TemplateType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Vrf enum vrf { value 1; + description "Vrf"; } - - // Vlan enum vlan { value 2; + description "Vlan"; } - - // Intf enum intf { value 3; + description "Intf"; } } default "unknown"; @@ -5452,20 +5766,17 @@ module Cisco-NX-OS-device { // Affix type typedef copp_Affix { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Prefix enum prefix { value 1; + description "Prefix"; } - - // Suffix enum suffix { value 2; + description "Suffix"; } } default "unknown"; @@ -5474,40 +5785,33 @@ module Cisco-NX-OS-device { // Burst unit typedef copp_BurstUnit { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Bytes enum bytes { value 1; + description "Bytes"; } - - // KiloBytes enum kbytes { value 2; + description "KiloBytes"; } - - // MegaBytes enum mbytes { value 3; + description "MegaBytes"; } - - // Packets enum packets { value 4; + description "Packets"; } - - // Micro sec enum us { value 5; + description "Micro sec"; } - - // Milli sec enum ms { value 6; + description "Milli sec"; } } default "Unknown"; @@ -5521,20 +5825,17 @@ module Cisco-NX-OS-device { // Confrom Action typedef copp_ConformAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5556,20 +5857,17 @@ module Cisco-NX-OS-device { // Exceed action typedef copp_ExceedAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5578,35 +5876,33 @@ module Cisco-NX-OS-device { // Exception options typedef copp_Excep { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Glean enum glean { value 1; + description "Glean"; } - - // Mtu-failure enum mtu-failure { value 2; + description "Mtu-failure"; } - - // TTL-failure enum ttl-failure { value 3; + description "TTL-failure"; } - - // Nat-flow enum nat-flow { value 4; + description "Nat-flow"; } - - // Sflow enum sflow { value 5; + description "Sflow"; + } + enum mvpn { + value 6; + description "MVPN"; } } default "Undefined"; @@ -5626,20 +5922,17 @@ module Cisco-NX-OS-device { // Icmp options typedef copp_Icmp { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // icmp redirect enum redirect { value 1; + description "icmp redirect"; } - - // icmp unreachable enum unreachable { value 2; + description "icmp unreachable"; } } default "Undefined"; @@ -5648,35 +5941,29 @@ module Cisco-NX-OS-device { // Information Rate unit typedef copp_IrUnit { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Bits/sec enum bps { value 1; + description "Bits/sec"; } - - // Packets/sec enum pps { value 2; + description "Packets/sec"; } - - // Kilo Bits/sec enum kbps { value 3; + description "Kilo Bits/sec"; } - - // Mega Bits/sec enum mbps { value 4; + description "Mega Bits/sec"; } - - // Giga Bits/sec enum gbps { value 5; + description "Giga Bits/sec"; } } default "Unknown"; @@ -5698,20 +5985,17 @@ module Cisco-NX-OS-device { // Match Option typedef copp_MatchOption { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Match Any enum MatchAny { value 1; + description "Match Any"; } - - // Match All enum MatchAll { value 2; + description "Match All"; } } default "Unknown"; @@ -5720,30 +6004,25 @@ module Cisco-NX-OS-device { // Match criteria typedef copp_MatchT { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // match access-group enum access-group { value 1; + description "match access-group"; } - - // match redirect enum redirect { value 2; + description "match redirect"; } - - // match exception enum exception { value 3; + description "match exception"; } - - // match protocol enum protocol { value 4; + description "match protocol"; } } default "Undefined"; @@ -5752,40 +6031,33 @@ module Cisco-NX-OS-device { // Multicast options typedef copp_Mcast { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // multicast dest-miss enum dest-miss { value 1; + description "multicast dest-miss"; } - - // multicast rpf-failure enum rpf-failure { value 2; + description "multicast rpf-failure"; } - - // multicast sg-rpf-failure enum sg-rpf-failure { value 3; + description "multicast sg-rpf-failure"; } - - // multicast ipv6-dest-miss enum ipv6-dest-miss { value 4; + description "multicast ipv6-dest-miss"; } - - // multicast ipv6-rpf-failure enum ipv6-rpf-failure { value 5; + description "multicast ipv6-rpf-failure"; } - - // multicast ipv6-sg-rpf-failure enum ipv6-sg-rpf-failure { value 6; + description "multicast ipv6-sg-rpf-failure"; } } default "Undefined"; @@ -5794,30 +6066,25 @@ module Cisco-NX-OS-device { // CoPP Profile Type typedef copp_ProfT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Strict enum strict { value 1; + description "Strict"; } - - // Moderate enum moderate { value 2; + description "Moderate"; } - - // Dense enum dense { value 4; + description "Dense"; } - - // Lenient enum lenient { value 3; + description "Lenient"; } } default "unknown"; @@ -5826,7 +6093,6 @@ module Cisco-NX-OS-device { // Protocol typedef copp_Proto { - // bits- Using string type string; } @@ -5837,20 +6103,17 @@ module Cisco-NX-OS-device { // Redirect options typedef copp_Rdrct { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // redirect arp-inspect enum arp-inspect { value 1; + description "redirect arp-inspect"; } - - // rediret dhcp-snoop enum dhcp-snoop { value 2; + description "rediret dhcp-snoop"; } } default "Undefined"; @@ -5859,20 +6122,17 @@ module Cisco-NX-OS-device { // Violate action typedef copp_ViolateAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5892,7 +6152,6 @@ module Cisco-NX-OS-device { typedef datetime_AuthKeyId { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -5901,15 +6160,13 @@ module Cisco-NX-OS-device { typedef datetime_ClockFormat { type enumeration { - - // 24 Hours enum 24hours { value 0; + description "24 Hours"; } - - // 12 Hours enum 12hours { value 1; + description "12 Hours"; } } default "24hours"; @@ -5917,25 +6174,21 @@ module Cisco-NX-OS-device { typedef datetime_ClockProtocol { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Ptp enum ptp { value 1; + description "Ptp"; } - - // Ntp enum ntp { value 2; + description "Ntp"; } - - // None enum none { value 3; + description "None"; } } default "ntp"; @@ -5970,45 +6223,37 @@ module Cisco-NX-OS-device { // Logging Level typedef datetime_LoggingLevel { type enumeration { - - // Emergency enum emergency { value 0; + description "Emergency"; } - - // Alert enum alert { value 1; + description "Alert"; } - - // Critical enum critical { value 2; + description "Critical"; } - - // Error enum error { value 3; + description "Error"; } - - // Warning enum warning { value 4; + description "Warning"; } - - // Notifications enum notif { value 5; + description "Notifications"; } - - // Informational enum inform { value 6; + description "Informational"; } - - // Debug enum debug { value 7; + description "Debug"; } } default "critical"; @@ -6028,65 +6273,53 @@ module Cisco-NX-OS-device { typedef datetime_Month { type enumeration { - - // January enum january { value 0; + description "January"; } - - // February enum february { value 1; + description "February"; } - - // March enum march { value 2; + description "March"; } - - // April enum april { value 3; + description "April"; } - - // May enum may { value 4; + description "May"; } - - // June enum june { value 5; + description "June"; } - - // July enum july { value 6; + description "July"; } - - // August enum august { value 7; + description "August"; } - - // September enum september { value 8; + description "September"; } - - // October enum october { value 9; + description "October"; } - - // November enum november { value 10; + description "November"; } - - // December enum december { value 11; + description "December"; } } } @@ -6104,45 +6337,37 @@ module Cisco-NX-OS-device { // NTP Peer Mode typedef datetime_NTPPeerMode { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Symmetric Active enum symmetricActive { value 1; + description "Symmetric Active"; } - - // Symmetric Passive enum symmetricPassive { value 2; + description "Symmetric Passive"; } - - // Client enum client { value 3; + description "Client"; } - - // Server enum server { value 4; + description "Server"; } - - // Broadcast enum broadcast { value 5; + description "Broadcast"; } - - // Reserved Control enum reservedControl { value 6; + description "Reserved Control"; } - - // Reserved Private enum reservedPrivate { value 7; + description "Reserved Private"; } } } @@ -6172,35 +6397,29 @@ module Cisco-NX-OS-device { // NTP Server Status typedef datetime_NtpSrvStatus { type enumeration { - - // Unknown enum unknown { value 1; + description "Unknown"; } - - // Not Running enum not_running { value 2; + description "Not Running"; } - - // Not Synchronized enum not_synchronized { value 3; + description "Not Synchronized"; } - - // Synced to Local Clock enum synced_local_clock { value 4; + description "Synced to Local Clock"; } - - // Synced to Local RefClock enum synced_local_hw_refclk { value 5; + description "Synced to Local RefClock"; } - - // Synced to Remote NTP Server enum synced_remote_server { value 6; + description "Synced to Remote NTP Server"; } } default "unknown"; @@ -6209,7 +6428,6 @@ module Cisco-NX-OS-device { // NTP Peer Status flags typedef datetime_PeerStatusFlags { - // bits- Using string type string; } @@ -6221,20 +6439,17 @@ module Cisco-NX-OS-device { typedef datetime_ProvT { type enumeration { - - // NTP peer enum peer { value 0; + description "NTP peer"; } - - // NTP server enum server { value 1; + description "NTP server"; } - - // invalid enum invalid { value 2; + description "invalid"; } } default "invalid"; @@ -6250,7 +6465,6 @@ module Cisco-NX-OS-device { // System Status flags typedef datetime_SysStatusFlags { - // bits- Using string type string; } @@ -6273,48 +6487,47 @@ module Cisco-NX-OS-device { } } + typedef datetime_allowCtrlRateLimit { + type uint32 { + range "1..65535"; + } + default "3"; + } + // Client interface operational state typedef dhcp_ClIfOperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Initializing enum init { value 1; + description "Initializing"; } - - // Discover enum discover { value 2; + description "Discover"; } - - // Requesting enum requesting { value 3; + description "Requesting"; } - - // Address received enum addr-rcvd { value 4; + description "Address received"; } - - // Failed enum failed { value 5; + description "Failed"; } - - // Request timedout enum request-timedout { value 6; + description "Request timedout"; } - - // Operationally down enum down { value 7; + description "Operationally down"; } } } @@ -6322,25 +6535,21 @@ module Cisco-NX-OS-device { // DAI Logging options typedef dhcp_DAILogType { type enumeration { - - // Logging for denied DHCP bindings enum deny { value 1; + description "Logging for denied DHCP bindings"; } - - // Log for Permitted DHCP Bindings enum permit { value 2; + description "Log for Permitted DHCP Bindings"; } - - // Log for All DHCP bindings enum all { value 3; + description "Log for All DHCP bindings"; } - - // No Logging for any DHCP bindings enum inone { value 5; + description "No Logging for any DHCP bindings"; } } default "deny"; @@ -6358,21 +6567,180 @@ module Cisco-NX-OS-device { } // DHCP options - // Default Value computed from none typedef dhcp_Options { - // bits- Using string type string; default "none"; } + // DHCP commands with string:Basic as type + typedef dhcp_StringBasicDhcp { + type string { + pattern ".*[a-zA-Z0-9-~!@#\\*\\)\\($%_:&\\^]{0,64}.*"; + } + } + + // Dot1x Host Mode + typedef dot1x_HostMode { + type enumeration { + enum single-host { + value 1; + description "Dot1x single host mode"; + } + enum multi-host { + value 2; + description "Dot1x multi host mode"; + } + enum multi-auth { + value 3; + description "Dot1x multi auth mode"; + } + } + default "single-host"; + } + + // Dot1x Inactivity Period + typedef dot1x_InactivityPeriod { + type uint32 { + range "0..2147483"; + } + default "0"; + } + + // Dot1x Mac Auth Bypass + typedef dot1x_MacAuthBypass { + type enumeration { + enum none { + value 0; + description "Dot1x mac auth bypass disabled"; + } + enum eap { + value 1; + description "Dot1x mac auth bypass with EAP"; + } + enum bypass { + value 2; + description "Dot1x mac auth bypass"; + } + } + default "none"; + } + + // Dot1x Mac Move + typedef dot1x_MacMove { + type enumeration { + enum deny { + value 0; + description "Dot1x mac move disable"; + } + enum permit { + value 1; + description "Dot1x mac move enable"; + } + } + default "permit"; + } + + // Dot1x Max Reauth Request + typedef dot1x_MaxReauthReq { + type uint8 { + range "1..10"; + } + default "2"; + } + + // Dot1x Max Auth Request + typedef dot1x_MaxReq { + type uint8 { + range "1..10"; + } + default "2"; + } + + // Dot1x Pae Type + typedef dot1x_PaeType { + type enumeration { + enum authenticator { + value 1; + description "Dot1x authenticator role"; + } + } + default "authenticator"; + } + + // Dot1x Port Control + typedef dot1x_PortCtrl { + type enumeration { + enum force-unauthorized { + value 1; + description "Dot1x force unauthorized mode"; + } + enum auto { + value 2; + description "Dot1x port control auto mode"; + } + enum force-authorized { + value 3; + description "Dot1x force authorized mode"; + } + } + default "force-authorized"; + } + + // Dot1x Quiet Period + typedef dot1x_QuietPeriod { + type uint16 { + range "1..65535"; + } + default "60"; + } + + // Dot1x Rate Limit Period + typedef dot1x_RateLimitPeriod { + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Dot1x Re-auth Period + typedef dot1x_ReAuthPeriod { + type uint32 { + range "1..2147483"; + } + default "3600"; + } + + // Dot1x Server Timeout + typedef dot1x_ServerTimeout { + type uint16 { + range "1..65535"; + } + default "30"; + } + + // Dot1x Supp Timeout + typedef dot1x_SuppTimeout { + type uint16 { + range "1..65535"; + } + default "30"; + } + + // Dot1x Tx Period + typedef dot1x_TxPeriod { + type uint16 { + range "1..65535"; + } + default "30"; + } + // Database type typedef epm_DbT { type enumeration { - - // Endpoint database enum ep { value 1; + description "Endpoint database"; } } default "ep"; @@ -6381,22 +6749,19 @@ module Cisco-NX-OS-device { // Ep flags typedef epm_EpFlags { - // bits- Using string type string; } // Ep operational state typedef epm_EpOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } } } @@ -6404,15 +6769,13 @@ module Cisco-NX-OS-device { // Memory access typedef eqpt_Acc { type enumeration { - - // Read only enum read-only { value 0; + description "Read only"; } - - // Write only enum read-write { value 1; + description "Write only"; } } } @@ -6420,20 +6783,17 @@ module Cisco-NX-OS-device { // Administrative state of equipment related mo typedef eqpt_AdSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -6442,36 +6802,51 @@ module Cisco-NX-OS-device { // air flow direction typedef eqpt_AirDir { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // front2back enum front2back { value 1; + description "front2back"; } - - // back2front enum back2front { value 2; + description "back2front"; } } default "unknown"; } + // air filter + typedef eqpt_AirFilter { + type enumeration { + enum absent { + value 0; + description "absent"; + } + enum present { + value 1; + description "front2back"; + } + enum notsupported { + value 2; + description "notsupported"; + } + } + default "notsupported"; + } + // Amps typedef eqpt_Amps { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } // Capability type typedef eqpt_AsicCapability { - // bits- Using string type string; } @@ -6485,82 +6860,82 @@ module Cisco-NX-OS-device { // Type of the asic typedef eqpt_AsicT { type enumeration { - - // Northstar enum northstar { value 1; + description "Northstar"; } - - // Alpine enum alpine { value 2; + description "Alpine"; } - - // Broadcom enum bcm { value 3; + description "Broadcom"; } - - // Davos enum davos { value 4; + description "Davos"; } - - // Sugarbowl enum sugarbowl { value 5; + description "Sugarbowl"; } - - // Homewood enum homewood { value 6; + description "Homewood"; } } default "northstar"; } + typedef eqpt_AutoShutdown { + type enumeration { + enum disabled { + value 0; + description "Disable"; + } + enum enabled { + value 1; + description "Enable"; + } + } + default "enabled"; + } + // baud rate type typedef eqpt_BaudRate { type enumeration { - - // 300 Baud Rate enum 300 { value 1; + description "300 Baud Rate"; } - - // 1200 Baud Rate enum 1200 { value 2; + description "1200 Baud Rate"; } - - // 2400 Baud Rate enum 2400 { value 3; + description "2400 Baud Rate"; } - - // 4800 Baud Rate enum 4800 { value 4; + description "4800 Baud Rate"; } - - // 9600 Baud Rate enum 9600 { value 5; + description "9600 Baud Rate"; } - - // 38400 Baud Rate enum 38400 { value 6; + description "38400 Baud Rate"; } - - // 57600 Baud Rate enum 57600 { value 7; + description "57600 Baud Rate"; } - - // 115200 Baud Rate enum 115200 { value 8; + description "115200 Baud Rate"; } } default "115200"; @@ -6569,100 +6944,81 @@ module Cisco-NX-OS-device { // Operational status of the card typedef eqpt_COpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Inserted enum inserted { value 1; + description "Inserted"; } - - // Absent enum absent { value 2; + description "Absent"; } - - // Mismatch enum mismatch { value 3; + description "Mismatch"; } - - // Failed enum fail { value 4; + description "Failed"; } - - // Present enum present { value 5; + description "Present"; } - - // Removed enum removed { value 6; + description "Removed"; } - - // Online enum online { value 7; + description "Online"; } - - // Offline enum offline { value 8; + description "Offline"; } - - // Powered up enum pwr-up { value 9; + description "Powered up"; } - - // Powered down enum pwr-down { value 10; + description "Powered down"; } - - // Errored powered down enum err-pwr-down { value 11; + description "Errored powered down"; } - - // Testing enum testing { value 12; + description "Testing"; } - - // Initializing enum init { value 13; + description "Initializing"; } - - // Registration failed enum reg-failure { value 14; + description "Registration failed"; } - - // Downloading enum dnld { value 15; + description "Downloading"; } - - // Upgrading enum upg { value 16; + description "Upgrading"; } - - // SRG failed enum srg-fail { value 17; + description "SRG failed"; } - - // HA Sequence number failed enum ha-seq-fail { value 18; + description "HA Sequence number failed"; } } default "unknown"; @@ -6688,45 +7044,41 @@ module Cisco-NX-OS-device { // Type of the card typedef eqpt_CardT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Supervisor enum supervisor { value 1; + description "Supervisor"; } - - // Line card enum linecard { value 2; + description "Line card"; } - - // Fabric card enum fabriccard { value 3; + description "Fabric card"; } - - // System control card enum sysctrlcard { value 4; + description "System control card"; } - - // Extension chassis card enum extchcard { value 5; + description "Extension chassis card"; } - - // fan tray enum fan-tray { value 6; + description "fan tray"; } - - // power supply enum power-supply { value 7; + description "power supply"; + } + enum lemcard { + value 8; + description "LEM card"; } } default "unknown"; @@ -6735,20 +7087,17 @@ module Cisco-NX-OS-device { // Chassis operational state typedef eqpt_ChOperSt { type enumeration { - - // Not Operational enum not-operational { value 0; + description "Not Operational"; } - - // Failed enum failed { value 1; + description "Failed"; } - - // Online enum online { value 2; + description "Online"; } } default "not-operational"; @@ -6757,35 +7106,29 @@ module Cisco-NX-OS-device { // Led color typedef eqpt_Color { type enumeration { - - // No color enum no-color { value 0; + description "No color"; } - - // Green enum green { value 1; + description "Green"; } - - // Yellow enum yellow { value 2; + description "Yellow"; } - - // Amber enum amber { value 3; + description "Amber"; } - - // Red enum red { value 4; + description "Red"; } - - // Blue enum blue { value 5; + description "Blue"; } } default "no-color"; @@ -6806,15 +7149,13 @@ module Cisco-NX-OS-device { // Ejector status for the card typedef eqpt_EjSt { type enumeration { - - // Open enum open { value 0; + description "Open"; } - - // Closed enum closed { value 1; + description "Closed"; } } default "closed"; @@ -6844,140 +7185,113 @@ module Cisco-NX-OS-device { // Extended chassis (fex) state typedef eqpt_ExtChSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Discovered enum discovered { value 2; + description "Discovered"; } - - // Connected enum connected { value 3; + description "Connected"; } - - // Registering enum reg { value 4; + description "Registering"; } - - // Registered enum regDone { value 5; + description "Registered"; } - - // Ready enum ready { value 6; + description "Ready"; } - - // Online sequence enum onlSeq { value 7; + description "Online sequence"; } - - // Online enum online { value 8; + description "Online"; } - - // Offline Request enum offReq { value 9; + description "Offline Request"; } - - // Offline Sequence enum offSeq { value 10; + description "Offline Sequence"; } - - // Offline enum offline { value 11; + description "Offline"; } - - // Image download enum imgDld { value 12; + description "Image download"; } - - // Failed enum failed { value 13; + description "Failed"; } - - // Removed enum removed { value 14; + description "Removed"; } - - // Hitless upgrade sequence enum hlUpgSeq { value 15; + description "Hitless upgrade sequence"; } - - // Check upgrade sequence enum chkUpgSeq { value 16; + description "Check upgrade sequence"; } - - // Save states enum svStates { value 17; + description "Save states"; } - - // Hitless upgrade idle enum hlUpgIdle { value 18; + description "Hitless upgrade idle"; } - - // Check insert sequence enum chkInsSeq { value 19; + description "Check insert sequence"; } - - // Hitless upgrade failed enum hlUpgFail { value 20; + description "Hitless upgrade failed"; } - - // Active active upgrade ready enum aaUpgRdy { value 21; + description "Active active upgrade ready"; } - - // Active active upgrade idle enum aaUpgIdle { value 22; + description "Active active upgrade idle"; } - - // Active active upgrade done enum aaUpgOver { value 23; + description "Active active upgrade done"; } - - // Active active upgrade fail enum aaUpgFail { value 24; + description "Active active upgrade fail"; } - - // Active active version mismatch enum aaVersMismatch { value 25; + description "Active active version mismatch"; } - - // Extended chassis type mismatch enum ExtChTypeMismatch { value 26; + description "Extended chassis type mismatch"; } } default "unknown"; @@ -6998,101 +7312,32 @@ module Cisco-NX-OS-device { // Led operational state typedef eqpt_LedOpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Off enum off { value 1; + description "Off"; } - - // On enum on { value 2; + description "On"; } - - // Blinking enum blinking { value 3; + description "Blinking"; } - - // Fail enum fail { value 4; + description "Fail"; } } default "unknown"; } - // indicator led type, should match snmp led types - typedef eqpt_LedType { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // status - enum status { - value 1; - } - - // system - enum system { - value 2; - } - - // active - enum active { - value 3; - } - - // power - enum power { - value 4; - } - - // battery - enum battery { - value 5; - } - - // LC status - enum lc-status { - value 6; - } - - // SUP status - enum sup-status { - value 7; - } - - // Fabric status - enum fc-status { - value 8; - } - - // Fan status - enum fan-status { - value 9; - } - - // power status - enum pwr-status { - value 10; - } - } - default "unknown"; - } - - // Default Value computed from unk typedef eqpt_LogType { - // bits- Using string type string; default "unk"; } @@ -7104,25 +7349,21 @@ module Cisco-NX-OS-device { // Memory type typedef eqpt_MemT { type enumeration { - - // Unknown enum unk { value 0; + description "Unknown"; } - - // Dimm enum dimm { value 1; + description "Dimm"; } - - // Flash enum flash { value 2; + description "Flash"; } - - // sprom enum sprom { value 3; + description "sprom"; } } } @@ -7140,35 +7381,29 @@ module Cisco-NX-OS-device { // Operational state of equipment related mo typedef eqpt_OpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // OK enum ok { value 1; + description "OK"; } - - // Fail enum fail { value 2; + description "Fail"; } - - // Absent enum absent { value 3; + description "Absent"; } - - // Shut enum shut { value 4; + description "Shut"; } - - // mismatch enum mismatch { value 5; + description "mismatch"; } } default "unknown"; @@ -7182,20 +7417,17 @@ module Cisco-NX-OS-device { // parity type typedef eqpt_Parity { type enumeration { - - // No parity enum none { value 0; + description "No parity"; } - - // Even parity enum even { value 1; + description "Even parity"; } - - // Odd parity enum odd { value 2; + description "Odd parity"; } } default "none"; @@ -7208,40 +7440,33 @@ module Cisco-NX-OS-device { // Type of the port typedef eqpt_PortT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // EOBC enum eobc { value 1; + description "EOBC"; } - - // Management Port enum mgmt { value 2; + description "Management Port"; } - - // Fabric Port enum fab { value 3; + description "Fabric Port"; } - - // Access Port enum leaf { value 4; + description "Access Port"; } - - // Extended Chassis Host Port enum extchhp { value 5; + description "Extended Chassis Host Port"; } - - // Extended Chassis Fabric Port enum extchfp { value 6; + description "Extended Chassis Fabric Port"; } } default "unknown"; @@ -7250,15 +7475,13 @@ module Cisco-NX-OS-device { // Status of the poweroff of the slot typedef eqpt_PoweroffSt { type enumeration { - - // No Power Off enum no { value 0; + description "No Power Off"; } - - // Power Off enum yes { value 1; + description "Power Off"; } } default "no"; @@ -7267,82 +7490,87 @@ module Cisco-NX-OS-device { // Power supply redundancy mode typedef eqpt_PsRdnM { type enumeration { - - // unknown enum unknown { value 0; + description "unknown"; } - - // Not supported enum not-supp { value 1; + description "Not supported"; } - - // Redundant enum rdn { value 2; + description "Redundant"; } - - // Combined enum comb { value 3; + description "Combined"; } - - // Non redundant enum n-rdn { value 4; + description "Non redundant"; } - - // Power output redundancy enum ps-rdn { value 5; + description "Power output redundancy"; } - - // Input source redundancy enum insrc-rdn { value 6; + description "Input source redundancy"; } - - // Single input redundancy enum sinin-rdn { value 7; + description "Single input redundancy"; } - - // Combined Force enum comb-force { value 8; + description "Combined Force"; } } default "ps-rdn"; } + // PSU fan direction + typedef eqpt_PsuFanDir { + type enumeration { + enum front2back { + value 0; + description "front2back"; + } + enum back2front { + value 1; + description "back2front"; + } + enum notused { + value 2; + description "notused"; + } + } + default "notused"; + } + // power state of a card typedef eqpt_PwrState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Off enum off { value 1; + description "Off"; } - - // On enum on { value 2; + description "On"; } - - // Deny enum deny { value 3; + description "Deny"; } - - // Multiple boot failure enum multi-boot-fail { value 4; + description "Multiple boot failure"; } } default "unknown"; @@ -7351,20 +7579,17 @@ module Cisco-NX-OS-device { // Redundancy state typedef eqpt_RdSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Active enum active { value 1; + description "Active"; } - - // Standby enum standby { value 2; + description "Standby"; } } default "unknown"; @@ -7379,35 +7604,29 @@ module Cisco-NX-OS-device { // Operational state of sensor mo typedef eqpt_SensorOpSt { type enumeration { - - // Fail enum fail { value 0; + description "Fail"; } - - // Normal enum normal { value 1; + description "Normal"; } - - // Minor Alarm enum minor { value 2; + description "Minor Alarm"; } - - // Major Alarm enum major { value 3; + description "Major Alarm"; } - - // Absent enum absent { value 4; + description "Absent"; } - - // Bad Asic enum bad-asic { value 5; + description "Bad Asic"; } } default "absent"; @@ -7416,80 +7635,65 @@ module Cisco-NX-OS-device { // Sensor type typedef eqpt_SensorT { type enumeration { - - // CPU sensor enum cpu { value 1; + description "CPU sensor"; } - - // Inlet sensor enum inlet { value 2; + description "Inlet sensor"; } - - // Outlet sensor enum outlet { value 3; + description "Outlet sensor"; } - - // Hotswap sensor enum hotswap { value 4; + description "Hotswap sensor"; } - - // Dimm sensor enum dimm { value 5; + description "Dimm sensor"; } - - // Phy sensor enum phy { value 6; + description "Phy sensor"; } - - // SFP sensor enum sfp { value 7; + description "SFP sensor"; } - - // QSFP sensor enum qsfp { value 8; + description "QSFP sensor"; } - - // Asic sensor enum asic { value 9; + description "Asic sensor"; } - - // PCH enum pch { value 10; + description "PCH"; } - - // cpu VRM enum cpu-crm { value 11; + description "cpu VRM"; } - - // Asic VRM enum asic-vrm { value 12; + description "Asic VRM"; } - - // x86 cpu enum x86 { value 18; + description "x86 cpu"; } - - // arm cpu enum arm { value 19; + description "arm cpu"; } - - // Die sensor enum die { value 20; + description "Die sensor"; } } default "asic"; @@ -7503,27 +7707,23 @@ module Cisco-NX-OS-device { // Slot controls typedef eqpt_SlotControl { - // bits- Using string type string; } // Location of the slot typedef eqpt_SlotLoc { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Front enum front { value 1; + description "Front"; } - - // Rear enum rear { value 2; + description "Rear"; } } default "unknown"; @@ -7532,15 +7732,13 @@ module Cisco-NX-OS-device { // Status of the slot typedef eqpt_SlotOpSt { type enumeration { - - // empty enum empty { value 0; + description "empty"; } - - // Inserted enum inserted { value 1; + description "Inserted"; } } default "empty"; @@ -7549,55 +7747,45 @@ module Cisco-NX-OS-device { // Type of the slot typedef eqpt_SlotT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Supervisor slot enum supslot { value 1; + description "Supervisor slot"; } - - // Line card slot enum lcslot { value 2; + description "Line card slot"; } - - // Fabric card slot enum fcslot { value 3; + description "Fabric card slot"; } - - // System control card slot enum scslot { value 4; + description "System control card slot"; } - - // Extension chassis slot enum extchslot { value 5; + description "Extension chassis slot"; } - - // Power supply slot enum psuslot { value 6; + description "Power supply slot"; } - - // Fan tray enum fantray { value 7; + description "Fan tray"; } - - // Board Slot enum bslot { value 8; + description "Board Slot"; } - - // Nic Slot enum nslot { value 9; + description "Nic Slot"; } } default "unknown"; @@ -7606,10 +7794,9 @@ module Cisco-NX-OS-device { // Socket typedef eqpt_Sock { type enumeration { - - // socket enum unspecified { value 0; + description "socket"; } } } @@ -7617,7 +7804,7 @@ module Cisco-NX-OS-device { // Speed typedef eqpt_Speed { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } @@ -7642,20 +7829,17 @@ module Cisco-NX-OS-device { // Voltage source typedef eqpt_VSrc { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // 110v enum 110v { value 1; + description "110v"; } - - // 220v enum 220v { value 2; + description "220v"; } } default "unknown"; @@ -7669,7 +7853,7 @@ module Cisco-NX-OS-device { // Volts typedef eqpt_Volts { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } @@ -7678,271 +7862,46 @@ module Cisco-NX-OS-device { type uint32; } - // FCOT DOM LANE type - typedef eqpt_fcotDomLane { - type enumeration { - enum basic { - value 0; - } - enum extGlobal { - value 1; - } - enum extOptical { - value 2; - } - } - } - - // Connector type - typedef eqptcap_ConnT { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // SC - enum sc { - value 1; - } - - // FC1-COPPER - enum fc1-copper { - value 2; - } - - // FC2-COPPER - enum fc2-copper { - value 3; - } - - // BNC-TNC - enum bnc-tnc { - value 4; - } - - // FC-COAX - enum fc-coax { - value 5; - } - - // FIBER-JACK - enum fiber-jack { - value 6; - } - - // LC - enum lc { - value 7; - } - - // MT-RJ - enum mt-rj { - value 8; - } - - // MU - enum mu { - value 9; - } - - // SG - enum sg { - value 10; - } - - // OPTICAL-PIGTAIL - enum optical-pigtail { - value 11; - } - - // MPO - enum mpo { - value 12; - } - - // HSSDC-2 - enum hssdc-2 { - value 32; - } - - // COPPER-PIGTAIL - enum copper-pigtail { - value 33; - } - - // RJ45 - enum rj45 { - value 34; - } - } - default "unspecified"; - } - - // Internal vendor ID - typedef eqptcap_IntVendorId { - type uint8 { - range "0..64"; - } - default "64"; - } - - // Sfp Vendor Magic Key - typedef eqptcap_SfpVendorMagicKey { - type mtx_array_uint8; - } - - typedef eqptcap_Size { - type decimal64 { - fraction-digits 2; - } - default "0.0"; - } - - // Weight units (pounds). - typedef eqptcap_Weight { - type decimal64 { - fraction-digits 2; - } - default "0.0"; - } - - // Xcvr type - typedef eqptcap_XcvrT { + // FCOT DOM sensor alerts + typedef eqpt_fcotDomAlert { type enumeration { - - // Unspecified - enum unspecified { + enum none { value 0; + description "No alert"; } - - // GBIC - enum gbic { + enum high-alarm { value 1; + description "High alarm"; } - - // SOLDER - enum solder { + enum high-warning { value 2; + description "High warning"; } - - // SFP - enum sfp { + enum low-alarm { value 3; + description "Low alarm"; } - - // XBI - enum xbi { + enum low-warning { value 4; - } - - // XENPAK - enum xenpak { - value 5; - } - - // XFP - enum xfp { - value 6; - } - - // XFF - enum xff { - value 7; - } - - // XFP-E - enum xfp-e { - value 8; - } - - // XPAK - enum xpak { - value 9; - } - - // X2 - enum x2 { - value 10; - } - - // DWDM-SFP - enum dwdm-sfp { - value 11; - } - - // QSFP - enum qsfp { - value 12; + description "Low warning"; } } - default "unspecified"; + default "none"; } - // All Diag Test Groups - typedef eqptdiag_AllGrpsT { + // FCOT DOM LANE type + typedef eqpt_fcotDomLane { type enumeration { - - // None - enum none { + enum basic { value 0; } - - // System Memory - enum sys-mem { + enum extGlobal { value 1; } - - // CPU - enum cpu { + enum extOptical { value 2; } - - // Peripherals - enum peripherals { - value 3; - } - - // Internal Connectivity - enum internal-conn { - value 4; - } - - // ASIC - enum asic { - value 5; - } - - // Port - enum port { - value 6; - } } - default "none"; - } - - // Type of all the test rules - typedef eqptdiag_Type { - type uint16; - default "0"; - } - - // Bitmap Type of All the test rules - // Default Value computed from unspecified - typedef eqptdiag_TypeBm { - - // bits- Using string - type string; - default "unspecified"; - } - - // Access pacer credits - typedef ethpm_AccessCredits { - type uint32 { - range "1..16"; - } - default "1"; } // Active PC Members Size based off of PCM_MAX_PORTS_PER_CHANNEL @@ -7958,30 +7917,25 @@ module Cisco-NX-OS-device { // Error disable event type typedef ethpm_ErrDisEvent { type enumeration { - - // Link State Flapping enum event-link-flap { value 0; + description "Link State Flapping"; } - - // UDLD enum event-udld { value 1; + description "UDLD"; } - - // BPDU Guard enum event-bpduguard { value 2; + description "BPDU Guard"; } - - // Loopback detected by UDLD enum event-loopback { value 3; + description "Loopback detected by UDLD"; } - - // Storm Control enum event-storm-ctrl { value 4; + description "Storm Control"; } enum event-dhcp-rate-lim { value 5; @@ -7989,25 +7943,21 @@ module Cisco-NX-OS-device { enum event-arp-inspection { value 6; } - - // 802.1x Violation enum event-sec-violation { value 7; + description "802.1x Violation"; } - - // Psecure Violation enum event-psec-violation { value 8; + description "Psecure Violation"; } - - // STP Inconsistent VPC Peer-link state enum event-stp-inconsist-vpc-peerlink { value 9; + description "STP Inconsistent VPC Peer-link state"; } - - // STP set port state failure enum event-set-port-state-failed { value 10; + description "STP set port state failure"; } enum event-debug-1 { value 11; @@ -8042,20 +7992,17 @@ module Cisco-NX-OS-device { enum unknown { value 21; } - - // Loop indication by MCP enum event-mcp-loop { value 22; + description "Loop indication by MCP"; } - - // Frequent EP move enum event-ep-move { value 23; + description "Frequent EP move"; } - - // DCBX no ack enum event-dcbx-no-ack { value 24; + description "DCBX no ack"; } } } @@ -8067,14 +8014,6 @@ module Cisco-NX-OS-device { default "300"; } - // Fabric port pacer credits - typedef ethpm_FabricPortCredits { - type uint32 { - range "0..48"; - } - default "0"; - } - // Fcot flags typedef ethpm_FcotFlags { type enumeration { @@ -8149,7 +8088,11 @@ module Cisco-NX-OS-device { default "unknown"; } - // Fcot type + // Fcot type Always add new values at bottom, plus update + // the enum in platform/infra/port_client/lib/export/isan/lc_port_fcot.h + // Also add an entry in the conversion table in ethpm_objstore_utils.c + // The enum values in lc_port_fcot.h should be mapped with these FcotType values + // using the conversion table. typedef ethpm_FcotType { type enumeration { enum unknown { @@ -8182,6 +8125,18 @@ module Cisco-NX-OS-device { enum qsfp28 { value 9; } + enum qsfpdd { + value 10; + } + enum cpak { + value 11; + } + enum qsfp56 { + value 12; + } + enum cxp { + value 13; + } } default "unknown"; } @@ -8206,38 +8161,6 @@ module Cisco-NX-OS-device { type mtx_array_uint8; } - // Not connected timer - typedef ethpm_NotConnectedTimer { - type uint32 { - range "1000..60000"; - } - default "30000"; - } - - // Not up timer - typedef ethpm_NotUpTimer { - type uint32 { - range "3000..60000"; - } - default "60000"; - } - - // Per sub-interface pacer credits - typedef ethpm_PerSiCredits { - type uint32 { - range "0..8"; - } - default "0"; - } - - // Per vlan pacer credits - typedef ethpm_PerVlanCredits { - type uint32 { - range "0..8"; - } - default "0"; - } - // Port Bitmap typedef ethpm_PortBitmap { type mtx_array_bit; @@ -8253,14 +8176,6 @@ module Cisco-NX-OS-device { type mtx_array_bit; } - // Routed port pacer credits - typedef ethpm_RouetdPortCredits { - type uint32 { - range "1..16"; - } - default "2"; - } - // Sfp Extended Option Size based off of SFP_MSA_SID_OPT_SZ typedef ethpm_SfpExtendedOptionBytes { type mtx_array_uint8; @@ -8320,20 +8235,20 @@ module Cisco-NX-OS-device { default "5"; } - // Total pacer credits - typedef ethpm_TotalCredits { - type uint32 { - range "1..256"; - } - default "32"; - } - - // Trunk pacer credits - typedef ethpm_TrunkCredits { - type uint32 { - range "1..16"; + // System Interface Shutdown + typedef ethpm_SystemIfAdminState { + type enumeration { + enum up { + value 1; + } + enum down { + value 2; + } + enum down-exclude-fabric { + value 4; + } } - default "4"; + default "up"; } // Trunking status @@ -8427,14 +8342,12 @@ module Cisco-NX-OS-device { // Port duplex capabilities typedef ethpm_capDuplex { - // bits- Using string type string; } // Port speed capabilities typedef ethpm_capSpeed { - // bits- Using string type string; } @@ -8445,180 +8358,562 @@ module Cisco-NX-OS-device { } } - // Loose Node Id Type - // @@@ This could be String form MgmtIP or ChassisID - // @@@ reported in LLDP - typedef fabric_LooseNodeId { - type string; + // Action's label type + typedef evms_ActionLabelType { + type string { + pattern ".*[0-9][0-9]*(\\.[0-9]+)?.*"; + } } - typedef fabric_NodeId { - type uint16 { - range "1..16000"; + typedef evms_AdminSt { + type enumeration { + enum enabled { + value 0; + description "Enabled"; + } + enum disabled { + value 1; + description "Disabled"; + } } - default "1"; + default "disabled"; } - // Primary Key Type - typedef fabric_PrimKey { - type string; + // System policy to override + typedef evms_AppletOverrideType { + type string { + length "0..29"; + } } - typedef fabric_TickCount { - type uint32; + typedef evms_CacheEntryOp { + type enumeration { + enum all { + value 1; + } + enum add { + value 2; + } + enum update { + value 3; + } + enum delete { + value 4; + } + } + default "all"; + } + + // Config Error + typedef evms_ConfigErr { + type enumeration { + enum noerror { + value 0; + description "Unknown"; + } + enum limitexceed { + value 1; + description "Actions config limit exceeded"; + } + enum validationtimeout { + value 2; + description "Event config timeout"; + } + } + } + + // Correlation operators + typedef evms_CorrelateTagType { + type enumeration { + enum and { + value 1; + } + enum andnot { + value 2; + } + enum or { + value 3; + } + enum none { + value 0; + } + } + default "none"; + } + + // Syslog priority type + typedef evms_CounterEntryExitOpType { + type enumeration { + enum gt { + value 5; + } + enum ge { + value 6; + } + enum eq { + value 7; + } + enum ne { + value 8; + } + enum lt { + value 9; + } + enum le { + value 10; + } + } + } + + typedef evms_CounterOpType { + type enumeration { + enum nop { + value 1; + } + enum set { + value 2; + } + enum inc { + value 3; + } + enum dec { + value 4; + } + } + } + + typedef evms_DeviceNumber { + type uint16 { + range "0..32"; + } default "0"; } - // Interface administrative state - typedef fc_AdminSt { + typedef evms_DeviceType { type enumeration { - enum down { + enum fan { value 1; } - enum up { + enum module { value 2; } + enum powersupply { + value 3; + } } - default "down"; + default "module"; } - typedef fc_CreateState { + typedef evms_EntryExitOpType { type enumeration { - enum created { + enum none { value 0; } - enum removed { + enum gt { value 1; } + enum ge { + value 2; + } + enum eq { + value 3; + } + enum ne { + value 4; + } + enum lt { + value 5; + } + enum le { + value 6; + } } - default "created"; + default "none"; } - // FC id - typedef fc_FcId { - type uint32; - default "4294967295"; + typedef evms_ErrorType { + type enumeration { + enum registration-timeout { + value 23; + } + enum registration-failure { + value 22; + } + enum runtime-diag-failure { + value 25; + } + enum runtime-diag-timeout { + value 26; + } + enum image-download-failed { + value 276; + } + enum lc-ready-timeout { + value 30; + } + enum insertion-seq-failure { + value 400; + } + enum unexpected-registration { + value 21; + } + enum lc-failed { + value 38; + } + enum lc-not-responding { + value 69; + } + enum lc-sw-failure { + value 91; + } + enum upgrade-srg-not-compatible { + value 238; + } + enum sequence-timeout { + value 212; + } + enum image-upgrade-failed { + value 119; + } + enum hitless-upgrade-seq-timeout { + value 231; + } + enum srg-info-resp-timeout { + value 258; + } + enum addon-sequence-failure { + value 406; + } + enum hitless-upgrade-reg-failure { + value 226; + } + enum hitless-upgrade-diag-failure { + value 227; + } + enum hitless-upgrade-procmgr-notif { + value 228; + } + enum hitless-upgrade-failure { + value 239; + } + enum any { + value 65535; + } + } + default "any"; } - // Port state - // Default Value computed from down - typedef fc_FcIfOperSt { + typedef evms_EventFibType { + type enumeration { + enum undefined { + value 0; + description "Event fib disabled"; + } + enum inconsistent { + value 1; + description "Event fib route inconsistent"; + } + enum missing { + value 2; + description "Event fib route missing"; + } + enum extra { + value 3; + description "Event fib route extra"; + } + enum adjacency { + value 4; + description "Event fib adjacency extra"; + } + enum tcam-resource { + value 5; + description "Event fib resource tcam usage"; + } + } + } - // bits- Using string - type string; - default "down"; + // Event's tag data type + typedef evms_EventTagType { + type string { + length "0..29"; + } } - // FCOE Mac address Prefix - typedef fc_FcMap { - type uint32 { - range "982016..982271"; + typedef evms_ExitCombType { + type enumeration { + enum none { + value 0; + } + enum or { + value 1; + } + enum and { + value 2; + } } - default "982016"; + default "none"; } - // Fibre Channel Forwarder(FCF) Priority - typedef fc_FcfPrio { - type uint32 { - range "0..255"; + typedef evms_ExpLogComValStr { + type string { + length "1..30"; } - default "128"; } - // Port Mode - // Default Value computed from f - typedef fc_Mode { + typedef evms_FanInterval { + type uint16 { + range "10..64000"; + } + default "10"; + } - // bits- Using string - type string; - default "f"; + typedef evms_GetTypeType { + type enumeration { + enum none { + value 0; + } + enum exact { + value 1; + } + enum next { + value 2; + } + } + default "none"; } - // numVsans - typedef fc_NumVsans { - type uint32 { - range "0..4096"; + typedef evms_HardError { + type enumeration { + enum soft_error { + value 0; + } + enum hard_error { + value 1; + } + enum soft_error_resettable { + value 2; + } + enum soft_error_reset_replay_all_cfg { + value 3; + } + enum soft_error_diag_failure { + value 4; + } } + default "hard_error"; } - // timeoutVal_1_4 - typedef fc_TimeoutVal_1_4 { - type uint32 { - range "1000..4000"; + typedef evms_IntegerRange { + type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*).*|.*(all)"; } + default "all"; } - // timeoutVal_5_10 - typedef fc_TimeoutVal_5_10 { - type uint32 { - range "5000..10000"; + typedef evms_LinkFlapTime { + type int32 { + range "-1..10000000"; } + default "-1"; } - typedef fc_TrunkVsansBitmap { - type fc_VsanBitmap; - default "1-4094"; + typedef evms_MemoryType { + type enumeration { + enum minor { + value 1; + } + enum severe { + value 3; + } + enum critical { + value 5; + } + } + default "minor"; } - // Vsan Id Bitmap - typedef fc_VsanBitmap { - type mtx_array_bit; + typedef evms_ModuleNumber { + type string { + pattern "(all)|([1-9]|[12]\\d|3[0-2])"; + } + default "all"; } - // Vsan Id - typedef fc_VsanId { - type uint32 { - range "1..4094"; + typedef evms_ModuleStatus { + type enumeration { + enum online { + value 5; + } + enum offline { + value 6; + } + enum any { + value 7; + } } + default "any"; } - // Fibre Channle World Wide Name - typedef fc_Wwn { - type string; + typedef evms_OirType { + type enumeration { + enum insert { + value 5; + } + enum remove { + value 6; + } + enum anyoir { + value 8; + } + } + default "anyoir"; } - // Administrative state - typedef fcoe_AdminSt { + // Syslog priority type + typedef evms_PriorityType { type enumeration { + enum 1 { + value 1; + } + enum 2 { + value 2; + } + enum 3 { + value 3; + } + enum 4 { + value 4; + } + enum 5 { + value 5; + } + enum 6 { + value 6; + } + enum 7 { + value 7; + } + enum 0 { + value 0; + } + enum alerts { + value 8; + } + enum critical { + value 9; + } + enum debugging { + value 10; + } + enum emergencies { + value 11; + } + enum errors { + value 12; + } + enum informational { + value 13; + } + enum notifications { + value 14; + } + enum warnings { + value 15; + } + enum none { + value 16; + } + } + } - // Enabled - enum enabled { + // Diag Failure level + typedef evms_SeverityLevel { + type enumeration { + enum minor { + value 0; + description "Minor"; + } + enum moderate { value 1; + description "Moderate"; + } + enum major { + value 2; + description "Major"; } + } + default "minor"; + } - // Disabled - enum disabled { + // Diag Testing Type + typedef evms_TestType { + type enumeration { + enum scheduled { + value 0; + description "Scheduled"; + } + enum monitoring { + value 1; + description "Monitoring"; + } + } + default "monitoring"; + } + + typedef evms_ThresholdLevels { + type enumeration { + enum major { + value 16; + } + enum minor { + value 17; + } + enum any { + value 18; + } + } + default "any"; + } + + typedef evms_TrackStateOp { + type enumeration { + enum down { + value 0; + } + enum up { + value 1; + } + enum any { value 2; } } - default "disabled"; + default "any"; } - // FIP KeepAlive Interval Type - typedef fcoe_FipKaIntvl { - type uint32 { - range "4..60"; + typedef evms_timeInterval { + type int32 { + range "-1..10000000"; } - default "8"; + default "-1"; } - // Firmware name - typedef firmware_Name { - type reference_URI; + typedef fabric_NodeId { + type uint16 { + range "1..16000"; + } + default "1"; } // Firmware running mode typedef firmware_RunningMode { type enumeration { - - // Normal enum normal { value 0; + description "Normal"; } - - // Reovery enum recovery { value 1; + description "Reovery"; } } default "normal"; @@ -8627,15 +8922,13 @@ module Cisco-NX-OS-device { // Running operational state typedef firmware_RunningOperSt { type enumeration { - - // Version Match enum ok { value 0; + description "Version Match"; } - - // Version Mismatch enum ver-mismatch { value 1; + description "Version Mismatch"; } } } @@ -8643,52 +8936,69 @@ module Cisco-NX-OS-device { // Firmware type typedef firmware_Type { type enumeration { - - // Controller enum controller { value 0; + description "Controller"; } - - // Switch enum switch { value 1; + description "Switch"; } - - // Catalog enum catalog { value 2; + description "Catalog"; } } default "switch"; } + typedef flexlink_Delay { + type uint32 { + range "1..300"; + } + default "35"; + } + + typedef flexlink_Mode { + type enumeration { + enum off { + value 0; + description "no preemption"; + } + enum forced { + value 1; + description "active interface preempts the backup"; + } + enum bandwidth { + value 2; + description "higher bandwidth interface acts as active"; + } + } + default "off"; + } + typedef flow_CollectParams { - // bits- Using string type string; } typedef flow_Direction { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Input enum in { value 1; + description "Input"; } - - // Output enum out { value 2; + description "Output"; } - - // Both enum both { value 3; + description "Both"; } } default "in"; @@ -8696,25 +9006,21 @@ module Cisco-NX-OS-device { typedef flow_ExportVersion { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Version 5 enum v5 { value 1; + description "Version 5"; } - - // Version 9 enum v9 { value 2; + description "Version 9"; } - - // Cisco proprietary version 1 enum cisco1 { value 3; + description "Cisco proprietary version 1"; } } default "cisco1"; @@ -8728,7 +9034,6 @@ module Cisco-NX-OS-device { typedef flow_MatchParams { - // bits- Using string type string; } @@ -8741,7 +9046,6 @@ module Cisco-NX-OS-device { typedef flow_PayloadLen { - // MAX Converted to int from 0x3fff type uint32 { range "0..16383"; } @@ -8755,20 +9059,17 @@ module Cisco-NX-OS-device { typedef flow_SamplerMode { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // M out of N flows enum flow { value 1; + description "M out of N flows"; } - - // M out of N pkts enum pkts { value 2; + description "M out of N pkts"; } } default "flow"; @@ -8783,15 +9084,13 @@ module Cisco-NX-OS-device { // Admin status of feature typedef fm_AdminState { type enumeration { - - // Feature enabled enum enabled { value 1; + description "Feature enabled"; } - - // Feature disabled enum disabled { value 2; + description "Feature disabled"; } } default "disabled"; @@ -8800,20 +9099,17 @@ module Cisco-NX-OS-device { // Operational status of instance typedef fm_InstOperState { type enumeration { - - // Feature enabled for instance enum enabled { value 1; + description "Feature enabled for instance"; } - - // Feature disabled for instance enum disabled { value 2; + description "Feature disabled for instance"; } - - // Feature enabled and not running for the instance enum enabled-not-running { value 3; + description "Feature enabled and not running for the instance"; } } default "disabled"; @@ -8828,40 +9124,36 @@ module Cisco-NX-OS-device { // Operational status of feature typedef fm_OperState { type enumeration { - - // Feature enabled enum enabled { value 1; + description "Feature enabled"; } - - // Feature disabled enum disabled { value 2; + description "Feature disabled"; } } default "disabled"; } // Id - // Default Value "0" Removed - out of range 1..12 typedef fmcast_Id { type uint8 { - range "1..12"; + range "0..12"; } + default "0"; } // Operational state typedef fmcast_OperSt { type enumeration { - - // Active enum active { value 1; + description "Active"; } - - // Inactive enum inactive { value 2; + description "Inactive"; } } default "inactive"; @@ -8870,30 +9162,25 @@ module Cisco-NX-OS-device { // Admin status of feature typedef fset_AdminState { type enumeration { - - // featureSet none enum none { value 0; + description "featureSet none"; } - - // featureSet enabled enum enabled { value 1; + description "featureSet enabled"; } - - // featureSet disabled enum disabled { value 2; + description "featureSet disabled"; } - - // featureSet installed enum installed { value 3; + description "featureSet installed"; } - - // featureSet uninstalled enum uninstalled { value 4; + description "featureSet uninstalled"; } } default "none"; @@ -8902,55 +9189,98 @@ module Cisco-NX-OS-device { // Operational status of feature typedef fset_OperState { type enumeration { - - // featureSet none enum none { value 0; + description "featureSet none"; } - - // featureSet enabled enum enabled { value 1; + description "featureSet enabled"; } - - // featureSet disabled enum disabled { value 2; + description "featureSet disabled"; } - - // featureSet installed enum installed { value 3; + description "featureSet installed"; } - - // featureSet uninstalled enum uninstalled { value 4; + description "featureSet uninstalled"; } } default "none"; } - typedef fv_EpCount { - type uint32; - default "0"; + // Event Export Max + typedef fte_EventExportMax { + type uint32 { + range "0..32000"; + } + default "3"; } - // Represents the deployment immediacy preference of the EpG - typedef fv_Immediacy { - type enumeration { + // flow count value + typedef fte_FlowCountValue { + type uint32 { + range "1..32767"; + } + default "500"; + } - // Immediate - enum immediate { + // Latency Unit + typedef fte_LatencyUnit { + type enumeration { + enum micro-sec { + value 0; + description "Micro Second"; + } + enum milli-sec { value 1; + description "Milli Second"; } + } + default "micro-sec"; + } - // On Demand - enum lazy { - value 2; - } + // Latency Value + typedef fte_LatencyValue { + type uint32 { + range "0..65535"; } - default "lazy"; + } + + // Mode + typedef fte_ModeT { + type enumeration { + enum flow-events { + value 1; + description "FTE mode"; + } + } + default "flow-events"; + } + + // Exporter Vrf + typedef fte_VrfName { + type l3_VrfName; + default "default"; + } + + // Represents the deployment immediacy preference of the EpG + typedef fv_Immediacy { + type enumeration { + enum immediate { + value 1; + description "Immediate"; + } + enum lazy { + value 2; + description "On Demand"; + } + } + default "lazy"; } // Instrumentation Immediacy Specification for when policies are instrumented in HW @@ -8964,15 +9294,13 @@ module Cisco-NX-OS-device { // Policy Control Enforcement Preference typedef fv_PcEnfPref { type enumeration { - - // Enforced enum enforced { value 1; + description "Enforced"; } - - // Unenforced enum unenforced { value 2; + description "Unenforced"; } } default "enforced"; @@ -8993,6 +9321,25 @@ module Cisco-NX-OS-device { type address_Mac; } + // Administrative state + typedef gold_AdminSt { + type enumeration { + enum default { + value 0; + description "Default"; + } + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "default"; + } + // Test identifier typedef gold_Id { type uint32; @@ -9012,50 +9359,41 @@ module Cisco-NX-OS-device { // Test result typedef gold_Result { type enumeration { - - // Untested enum untested { value 1; + description "Untested"; } - - // Failure enum failure { value 2; + description "Failure"; } - - // Incomplete enum not-complete { value 3; + description "Incomplete"; } - - // Aborted enum aborted { value 4; + description "Aborted"; } - - // Success enum success { value 5; + description "Success"; } - - // Error Disabled enum error-disabled { value 6; + description "Error Disabled"; } - - // Error Ignore enum error-ignore { value 7; + description "Error Ignore"; } - - // Error Disabled W enum error-disabled-w-no { value 8; + description "Error Disabled W"; } - - // Unavailable enum unavailable { value 9; + description "Unavailable"; } } default "untested"; @@ -9076,15 +9414,17 @@ module Cisco-NX-OS-device { // Bootup Level typedef gold_bootLevel { type enumeration { - - // Bypass enum bypass { value 0; + description "Bypass"; } - - // Complete enum complete { value 1; + description "Complete"; + } + enum minimal { + value 2; + description "Minimal"; } } default "complete"; @@ -9093,36 +9433,140 @@ module Cisco-NX-OS-device { // Diag Status typedef gold_moduleDiagStatus { type enumeration { - - // Fail enum fail { value 0; + description "Fail"; } - - // Pass enum pass { value 1; + description "Pass"; } - - // Untested enum untested { value 2; + description "Untested"; } } default "untested"; } - typedef hmm_Boolean { + // Bootflash resource value + typedef guestshell_BootflashResource { + type uint32; + } + + // CPU resource value + typedef guestshell_CpuResource { + type uint32; + } + + // Operational state of the Guest Shell + typedef guestshell_GuestShellOperState { + type enumeration { + enum unknown { + value 0; + description "No state"; + } + enum initializing { + value 1; + description "Initializing; intermediate state"; + } + enum provisioned { + value 2; + description "Provisioned"; + } + enum configured { + value 3; + description "Configured"; + } + enum installing { + value 4; + description "Installing; intermediate state"; + } + enum installed { + value 5; + description "Installed"; + } + enum install-failed { + value 6; + description "Installation failed"; + } + enum install-verify-failed { + value 7; + description "Verification failed"; + } + enum activating { + value 8; + description "Activating; intermediate state"; + } + enum activated { + value 9; + description "Activated; normal running state"; + } + enum activate-failed { + value 10; + description "Activation failed"; + } + enum deactivated { + value 11; + description "Deactivated; normal disabled state"; + } + enum deactivating { + value 12; + description "Deactivating; intermediate state"; + } + enum restarting { + value 13; + description "Restarting; intermediate state"; + } + enum not-installed { + value 14; + description "Not installed"; + } + enum error { + value 15; + description "Place holder"; + } + } + default "unknown"; + } + + // Memory resource value + typedef guestshell_MemoryResource { + type uint32; + } + + // Type of key used for signing + typedef guestshell_SigningKeyType { type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum development { + value 1; + description "Development Key"; + } + enum release { + value 2; + description "Release Key"; + } + enum unsigned { + value 3; + description "Unsigned"; + } + } + default "unknown"; + } - // No + typedef hmm_Boolean { + type enumeration { enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -9131,20 +9575,17 @@ module Cisco-NX-OS-device { // Fabric Forwarding mode typedef hmm_FwdMode { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Anycast Gateway mode enum anycastGW { value 1; + description "Anycast Gateway mode"; } - - // Proxy Gateway mode enum proxyGW { value 2; + description "Proxy Gateway mode"; } } default "standard"; @@ -9159,15 +9600,13 @@ module Cisco-NX-OS-device { // Group authentication type typedef hsrp_AuthT { type enumeration { - - // plain text enum simple { value 1; + description "plain text"; } - - // MD5 authentication enum md5 { value 2; + description "MD5 authentication"; } } default "simple"; @@ -9176,15 +9615,13 @@ module Cisco-NX-OS-device { // Use-Bia Scope typedef hsrp_BiaScopeType { type enumeration { - - // scope is interface and its sub-interfaces enum global { value 1; + description "scope is interface and its sub-interfaces"; } - - // scope is interface enum local { value 2; + description "scope is interface"; } } default "global"; @@ -9193,15 +9630,13 @@ module Cisco-NX-OS-device { // Address family type typedef hsrp_GroupAf { type enumeration { - - // IPv4 address family enum ipv4 { value 1; + description "IPv4 address family"; } - - // IPv6 address family enum ipv6 { value 2; + description "IPv6 address family"; } } default "ipv4"; @@ -9218,27 +9653,23 @@ module Cisco-NX-OS-device { // Control bits of HSRP Group typedef hsrp_GrpControl { - // bits- Using string type string; } // IP obtain mode typedef hsrp_GrpIpObtainMode { type enumeration { - - // Address is configured enum admin { value 0; + description "Address is configured"; } - - // Auto configure ipv6 address enum auto { value 1; + description "Auto configure ipv6 address"; } - - // learn IP from HSRP peer enum learn { value 2; + description "learn IP from HSRP peer"; } } default "admin"; @@ -9278,15 +9709,13 @@ module Cisco-NX-OS-device { // Hsrp Version typedef hsrp_HsrpVersion { type enumeration { - - // Hsrp version 1 enum v1 { value 1; + description "Hsrp version 1"; } - - // Hsrp version 2 enum v2 { value 2; + description "Hsrp version 2"; } } default "v1"; @@ -9295,7 +9724,6 @@ module Cisco-NX-OS-device { // Control bits at the Interface typedef hsrp_IfControl { - // bits- Using string type string; } @@ -9307,20 +9735,61 @@ module Cisco-NX-OS-device { default "0"; } + typedef icam_Entclass { + type enumeration { + enum noent { + value 0; + description "No Entries class"; + } + enum entacl { + value 1; + description "ACL Entries"; + } + } + default "noent"; + } + typedef icam_Index { type uint32; } - // Type - typedef icmpv4_Type { - type uint8; - default "255"; + typedef icam_Interval { + type uint16 { + range "1..24"; + } + default "2"; + } + + typedef icam_NumInterval { + type uint16 { + range "168..1344"; + } + default "168"; + } + + // iCAM class Type + typedef icam_Resclass { + type enumeration { + enum nores { + value 0; + description "No Resources class"; + } + enum resacl { + value 1; + description "ACL Resources"; + } + enum resfib { + value 2; + description "FIB Resources"; + } + } + default "nores"; } // Adjacency Stale Timer typedef icmpv6_AdjStaleTimer { type uint16 { - range "300..65535"; + range "30..65535"; } default "1380"; } @@ -9328,25 +9797,21 @@ module Cisco-NX-OS-device { // Event History Size typedef icmpv6_EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -9355,150 +9820,81 @@ module Cisco-NX-OS-device { // Event Log Type typedef icmpv6_EventType { type enumeration { - - // ICMPV6 CLI related event enum cli { value 0; + description "ICMPV6 CLI related event"; } - - // Error log ICMPv6 enum errors { value 1; + description "Error log ICMPv6"; } - - // ICMPv6 related High Availability event enum highAvailability { value 2; + description "ICMPv6 related High Availability event"; } - - // Internal debug events of ICMPV6 enum icmpv6-internal { value 3; + description "Internal debug events of ICMPV6"; } - - // ICMPV6 debugs for CFS and MCECM related events for l3 enum ipv6SyncEvent { value 4; + description "ICMPV6 debugs for CFS and MCECM related events for l3"; } - - // ICMPV6 MLD debug messages enum mldDebug { value 5; + description "ICMPV6 MLD debug messages"; } - - // ICMPV6 MLD non-periodic events enum mldEvent { value 6; + description "ICMPV6 MLD non-periodic events"; } - - // ICMPV6 ND debug enum nd { value 7; + description "ICMPV6 ND debug"; } - - // ICMPV6 debugs for CFS and MCECM related events enum sync-event { value 8; + description "ICMPV6 debugs for CFS and MCECM related events"; } - - // ICMPV6 VRF related events enum vrf { value 9; + description "ICMPV6 VRF related events"; } } } // Interface controls - // Default Value computed from redirect typedef icmpv6_IfControl { - // bits- Using string type string; default "redirect"; } - // Logging Level - typedef icmpv6_LoggingLevel { - type enumeration { - - // Emergencies - enum Emergency { - value 0; - } - - // Alert - enum Alert { - value 1; - } - - // Critical - enum Critical { - value 2; - } - - // Error - enum Error { - value 3; - } - - // Warning - enum Warning { - value 4; - } - - // Notice - enum Notice { - value 5; - } - - // Informational - enum Informational { - value 6; - } - - // Debug - enum Debug { - value 7; - } - } - default "Error"; - } - // Operational state typedef icmpv6_OperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } - - // Failed enum failed { value 2; + description "Failed"; } } default "up"; } - // Type - typedef icmpv6_Type { - type uint8; - default "0"; - } - // Database type typedef igmp_DbT { type enumeration { - - // IGMP route database enum route { value 1; + description "IGMP route database"; } } default "route"; @@ -9507,65 +9903,53 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef igmp_EhType { type enumeration { - - // Internal events for IGMP enum igmpInternal { value 0; + description "Internal events for IGMP"; } - - // CLI events for IGMP enum cli { value 1; + description "CLI events for IGMP"; } - - // Group-debugs event for IGMP enum groupDebugs { value 2; + description "Group-debugs event for IGMP"; } - - // Group-events event for IGMP enum groupEvents { value 3; + description "Group-events event for IGMP"; } - - // HA events for IGMP enum ha { value 4; + description "HA events for IGMP"; } - - // Interface-debugs event for IGMP enum intfDebugs { value 5; + description "Interface-debugs event for IGMP"; } - - // Interface-events event for IGMP enum intfEvents { value 6; + description "Interface-events event for IGMP"; } - - // Mtrace events for IGMP enum mtrace { value 7; + description "Mtrace events for IGMP"; } - - // Mvr events for IGMP enum mvr { value 8; + description "Mvr events for IGMP"; } - - // Policy events for IGMP enum policy { value 9; + description "Policy events for IGMP"; } - - // VRF events for IGMP enum vrf { value 10; + description "VRF events for IGMP"; } - - // NBM events for IGMP enum nbm { value 11; + description "NBM events for IGMP"; } } } @@ -9573,25 +9957,43 @@ module Cisco-NX-OS-device { // State limit status typedef igmp_LimitSt { type enumeration { - - // Below threshold of 80% enum below-thresh { value 0; + description "Below threshold of 80%"; } - - // Above 80% threshold enum above-thresh { value 1; + description "Above 80% threshold"; } - - // No entries available enum exhausted { value 2; + description "No entries available"; } } default "below-thresh"; } + typedef igmp_LogType { + type enumeration { + enum log { + value 1; + description "Configure for logging level igmp"; + } + enum logip { + value 2; + description "Configure for logging level ip igmp"; + } + } + default "log"; + } + + typedef igmp_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + // Event History Buffer size in Text typedef igmp_Size { type uint32 { @@ -9600,43 +10002,42 @@ module Cisco-NX-OS-device { default "3"; } + typedef igmp_VlanIdT { + type uint16 { + range "0..4094"; + } + } + // Event History Buffer Type typedef igmpsnoop_EhType { type enumeration { - - // Represents Internal Events For IGMP-Snooping enum igmp-snoop-internal { value 0; + description "Represents Internal Events For IGMP-Snooping"; } - - // MFDM Events for IGMP-Snooping enum mfdm { value 1; + description "MFDM Events for IGMP-Snooping"; } - - // MFDM-SUM Events for IGMP-Snooping enum mfdm-sum { value 2; + description "MFDM-SUM Events for IGMP-Snooping"; } - - // RIB Events for IGMP-Snooping enum rib { value 3; + description "RIB Events for IGMP-Snooping"; } - - // VLAN/BD Events for IGMP-Snooping enum vlan { value 4; + description "VLAN/BD Events for IGMP-Snooping"; } - - // VLAN/BD events for IGMP-Snooping enum vlan-events { value 5; + description "VLAN/BD events for IGMP-Snooping"; } - - // VPC Events for IGMP-Snooping enum vpc { value 6; + description "VPC Events for IGMP-Snooping"; } } } @@ -9651,37 +10052,56 @@ module Cisco-NX-OS-device { // Event History Buffer size in Text typedef igmpsnoop_Size { type uint32 { - range "0..4 | 5..4294967295"; + range "0..4 | 5..119999999"; } default "3"; } typedef im_BreakoutMapT { type enumeration { - - // none enum no-breakout { value 0; + description "none"; } - - // 10g-4x enum 10g-4x { value 5; + description "10g-4x"; } - - // 10g-2x enum 10g-2x { value 9; + description "10g-2x"; } - - // 25g-4x enum 25g-4x { value 8; + description "25g-4x"; } - - // 50g-2x enum 50g-2x { value 7; + description "50g-2x"; + } + enum 50g-4x { + value 12; + description "50g-4x"; + } + enum 100g-4x { + value 10; + description "100g-4x"; + } + enum 100g-2x { + value 14; + description "100g-2x"; + } + enum 200g-1x { + value 13; + description "200g-1x"; + } + enum 200g-2x { + value 15; + description "200g-2x"; + } + enum 40g-1x { + value 16; + description "40g-1x"; } } default "no-breakout"; @@ -9736,31 +10156,51 @@ module Cisco-NX-OS-device { } // Collect params Set 0 - // Default Value computed from switch-id typedef inbandTelemetry_CollectParams0 { - // bits- Using string type string; default "switch-id"; } + typedef inbandTelemetry_DstIp { + type address_Ip; + default "127.0.0.1"; + } + + // flow age value + typedef inbandTelemetry_FlowAge { + type uint16; + default "30"; + } + + // flow dscp value + typedef inbandTelemetry_FlowDscp { + type uint16; + default "1"; + } + + // flow latency quantization value + typedef inbandTelemetry_FlowLatencyQuant { + type uint16 { + range "0..31"; + } + default "11"; + } + // IP filter type typedef inbandTelemetry_FltType { type enumeration { - - // Ipv4 type enum ipv4 { value 1; + description "Ipv4 type"; } - - // Ipv6 type enum ipv6 { value 2; + description "Ipv6 type"; } - - // CE type enum ce { value 3; + description "CE type"; } } default "ipv4"; @@ -9776,27 +10216,77 @@ module Cisco-NX-OS-device { // Mode typedef inbandTelemetry_ModeT { type enumeration { - - // INT mode enum inbandtelemetry { value 0; + description "INT mode"; + } + enum postcard { + value 1; + description "Postcard mode"; } } default "inbandtelemetry"; } + typedef inbandTelemetry_Port { + type uint16; + default "31337"; + } + + // Switch Profile + typedef inbandTelemetry_Profile { + type enumeration { + enum endpoint { + value 0; + description "Endpoint profile mode"; + } + enum transit { + value 1; + description "Transit profile mode"; + } + } + default "endpoint"; + } + + // queue breach quota + typedef inbandTelemetry_QueueBreachQuota { + type uint16; + default "200"; + } + + // queue depth + typedef inbandTelemetry_QueueDepth { + type uint32; + default "300"; + } + + // queue latency + typedef inbandTelemetry_QueueLatency { + type uint32; + default "2048"; + } + + // queue tail drop + typedef inbandTelemetry_QueueTailDrop { + type boolean; + default "true"; + } + + typedef inbandTelemetry_VrfName { + type l3_VrfName; + default "default"; + } + // Stage typedef installer_InstEnum { type enumeration { - - // install property yes enum yes { value 0; + description "install property yes"; } - - // install property no enum no { value 1; + description "install property no"; } } default "no"; @@ -9804,25 +10294,21 @@ module Cisco-NX-OS-device { typedef installer_InstErr { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Pre-upgrade errors for supervisor enum preupg-err1 { value 1; + description "Pre-upgrade errors for supervisor"; } - - // Pre-upgrade errors for lc enum preupg-err2 { value 2; + description "Pre-upgrade errors for lc"; } - - // user-abort enum user-abort { value 3; + description "user-abort"; } } default "none"; @@ -9831,229 +10317,147 @@ module Cisco-NX-OS-device { // Stage typedef installer_InstModType { type enumeration { - - // for NXOS Supervisor type enum nxos-supervisor { value 0; + description "for NXOS Supervisor type "; } - - // for Linecard type enum lc { value 1; + description "for Linecard type "; } - - // for FEX card type enum fex { value 2; + description "for FEX card type "; } - - // for BIOS type enum bios { value 3; + description "for BIOS type "; } - - // for Fabric Module and System Controller type enum lcn9k { value 4; + description "for Fabric Module and System Controller type "; } - - // for Unknown mod type enum unknown { value -1; + description "for Unknown mod type "; } } } - // Stage - typedef installer_InstOper { - type enumeration { - - // No oper - enum none { - value 0; - } - - // For install all nxos - enum install { - value 1; - } - - // For show install all impact - enum impact { - value 2; - } - - // Abort installation - enum abort { - value 3; - } - } - default "none"; - } - - typedef installer_InstType { - type enumeration { - - // none - enum none { - value -1; - } - - // Disruptive install - enum disruptive { - value 0; - } - - // Non disruptive install - enum non-disruptive { - value 1; - } - } - default "none"; - } - // Stage typedef installer_Stage { type enumeration { - - // Copying images enum preupg-copy-image { value 0; + description "Copying images"; } - - // Initializing enum preupg-initializing { value 1; + description "Initializing"; } - - // Verification of images enum preupg-verifying_images { value 3; + description "Verification of images"; } - - // Performing runtime checks enum preupg-runtime-check { value 6; + description "Performing runtime checks"; } - - // Syncing images enum preupg-sync-image { value 7; + description "Syncing images"; } - - // Upgrading fex enum upgrade-upg-fex { value 9; + description "Upgrading fex"; } - - // Upgrading linecard enum upgrade-upg-lc { value 10; + description "Upgrading linecard"; } - - // Syncing config enum preupg-conf-sync { value 11; + description "Syncing config "; } - - // Setting Bootvar enum preupg-set-boot { value 12; + description "Setting Bootvar"; } - - // Bringing up Standby Container. enum preupg-force-dnld { value 13; + description "Bringing up Standby Container."; } - - // Waiting for module online. enum preupg-wait-mod { value 14; + description "Waiting for module online."; } - - // Converting startup config. enum preupg-convert-startup { value 15; + description "Converting startup config."; } - - // Saving supervisor runtime state. enum preupg-save-sup-state { value 16; + description "Saving supervisor runtime state."; } - - // Loading images into memory enum upgrade-kexec { value 17; + description "Loading images into memory"; } - - // Notifying services about system upgrade. enum preupg-pre-upg-notif { value 19; + description "Notifying services about system upgrade."; } - - // Module Support Check. enum preupg-mod-support-check { value 20; + description "Module Support Check."; } - - // Pre Upgrade Checks. enum preupg-Checks { value 21; + description "Pre Upgrade Checks."; } - - // Upgrading BIOS enum upgrade-upg-bios { value 22; + description "Upgrading BIOS"; } - - // Upgrading CMP enum upgrade-upg-cmp { value 23; + description "Upgrading CMP"; } - - // Notifying services about installation enum upgrade-notification { value 24; + description "Notifying services about installation"; } - - // Saving mts state. enum preupg-save-mts-state { value 25; + description "Saving mts state."; } - - // SUCCESS enum success { value 26; + description "SUCCESS"; } - - // Failed enum failed { value 27; + description "Failed"; } - - // Not Started enum not-started { value 28; + description "Not Started"; } - - // Performing supervisor state verification. enum upgrade-sup-state-verification { value 29; + description "Performing supervisor state verification."; } - - // Notifying services about the switchover. enum upgrade-switchover-notif { value 30; + description "Notifying services about the switchover."; } - - // Starting Standby Container. enum upgrade-standby-container-start { value 31; + description "Starting Standby Container."; } - - // Aborted by user. enum user-abort { value 32; + description "Aborted by user."; } } default "not-started"; @@ -10061,35 +10465,29 @@ module Cisco-NX-OS-device { typedef installer_UpgStatusType { type enumeration { - - // pre-upgrade enum pre-upgrade { value 0; + description "pre-upgrade"; } - - // In Progress enum in-progress { value 1; + description "In Progress"; } - - // Upgrade Success enum success { value 2; + description "Upgrade Success"; } - - // Upgrade Failed enum failed { value 3; + description "Upgrade Failed"; } - - // Not Compatible enum not-compatible { value 4; + description "Not Compatible"; } - - // None enum none { value 5; + description "None"; } } default "none"; @@ -10098,167 +10496,139 @@ module Cisco-NX-OS-device { // Address controls typedef ip_AddrControl { - // bits- Using string type string; } // Address Operational state qualifier typedef ip_AddrOperStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Up enum up { value 1; + description "Up"; } - - // Subnet overlap enum subnet-overlap { value 2; + description "Subnet overlap"; } - - // No primary address enum no-primary { value 3; + description "No primary address"; } - - // Interface down enum if-down { value 4; + description "Interface down"; } - - // Address already exists enum addr-exists { value 5; + description "Address already exists"; } - - // Context invalid enum invalid-vrf { value 6; + description "Context invalid"; } - - // Configured as static-rt nh enum static-rt-nh { value 7; + description "Configured as static-rt nh"; } - - // Loopback address enum lb-addr { value 8; + description "Loopback address"; } - - // Invalid use of link local enum invalid-ll-use { value 9; + description "Invalid use of link local"; } - - // No global address enum no-glbl-addr { value 10; + description "No global address"; } - - // No link local address enum no-ll-addr { value 11; + description "No link local address"; } - - // DAD in progress enum dad-in-progress { value 12; + description "DAD in progress"; } - - // DAD failed enum dad-failed { value 13; + description "DAD failed"; } - - // Invalid maks length enum invalid-mask-len { value 14; + description "Invalid maks length"; } - - // IP cfg not allowed on L2 intf enum l2-intf-err { value 15; + description "IP cfg not allowed on L2 intf"; } - - // IP cfg not allowed on superintf enum super-intf-err { value 16; + description "IP cfg not allowed on superintf"; } - - // Invalid link local address enum invalid-ll { value 17; + description "Invalid link local address"; } - - // IF init error enum if-init-err { value 18; + description "IF init error"; } - - // Failed to get ifindex enum ifindex-err { value 19; + description "Failed to get ifindex"; } - - // Invalid EUI64 format enum invalid-eui64 { value 20; + description "Invalid EUI64 format"; } - - // Failed to create Link Local Addr. enum lladdr-create-fail { value 21; + description "Failed to create Link Local Addr."; } - - // DAD failed, state=tentative. enum DAD-tentative { value 22; + description "DAD failed, state=tentative."; } - - // DAD failed, state=local duplicate. enum DAD-lcl-duplicate { value 23; + description "DAD failed, state=local duplicate."; } - - // DAD failed, state=duplicate. enum DAD-duplicate { value 24; + description "DAD failed, state=duplicate."; } - - // DAD failed, state=preferred. enum DAD-preferred { value 25; + description "DAD failed, state=preferred."; } - - // DAD failed, state=deprecated. enum DAD-deprecated { value 26; + description "DAD failed, state=deprecated."; } - - // DAD failed, state=invalid. enum DAD-invalid { value 27; + description "DAD failed, state=invalid."; } - - // multiple lladdr cfg not allowed. enum multiple-lladdr { value 28; + description "multiple lladdr cfg not allowed."; } - - // IPv6 Address Enablement is not supported on this tunnel type enum invalid-tunnel { value 29; + description "IPv6 Address Enablement is not supported on this tunnel type"; } - - // IPv6 Link Local Address Enablement is not supported on this tunnel type enum lladdr-invalid-tunnel { value 30; + description "IPv6 Link Local Address Enablement is not supported on this tunnel type"; + } + enum aggr-mapped-subnet-inconsistent { + value 31; + description "IPv6 aggregate-prefix-length mapped address is inconsistent to existing address in same subnet"; } } default "unspecified"; @@ -10267,34 +10637,35 @@ module Cisco-NX-OS-device { // Address type typedef ip_AddrT { type enumeration { - - // Primary enum primary { value 1; + description "Primary"; } - - // Secondary enum secondary { value 2; + description "Secondary"; } } default "primary"; } - // If controls - // Default Value computed from unspecified - typedef ip_IfControl { - - // bits- Using string - type string; - default "unspecified"; + typedef ip_HardwareEcmpHashPolynomialT { + type enumeration { + enum CRC16 { + value 0; + description "CRC16"; + } + enum CRC32HI { + value 1; + description "CRC32HI"; + } + } + default "CRC16"; } // If mode - // Default Value computed from unspecified typedef ip_IfMode { - // bits- Using string type string; default "unspecified"; } @@ -10317,50 +10688,69 @@ module Cisco-NX-OS-device { // concatenation rotate 1 universal-id 2 typedef ip_LoadShareFormat { type enumeration { - - // Disabled enum disabled { value 1; + description "Disabled"; } - - // Destnation Port enum destPort { value 2; + description "Destnation Port"; } - - // Source-Destination enum srcDest { value 3; + description "Source-Destination"; } - - // Source-Destination GRE enum srcDestGre { value 4; + description "Source-Destination GRE"; } - - // Source-Destination Port enum srcDestPort { value 5; + description "Source-Destination Port"; } - - // Source enum source { value 6; + description "Source"; } - - // Source-Destination GTPU-TEID for GPRS enum srcDestGTPU { value 7; + description "Source-Destination GTPU-TEID for GPRS"; + } + enum srcDestSymmetric { + value 8; + description "Source-Destination Symmetric"; + } + enum srcDestInnerAll { + value 9; + description "Source-Destination Inner All"; + } + enum srcDestInnerGre { + value 10; + description "Source-Destination Inner GRE"; + } + enum srcDestInnerGreSymmetric { + value 11; + description "Source-Destination Inner GRE Symmetric"; + } + enum srcDestIPv6FlowLabel { + value 12; + description "Source-Destination IPv6 Flow Label"; + } + enum srcDestTTL { + value 13; + description "Source-Destination TTL"; + } + enum srcDestUDF { + value 14; + description "Source-Destination UDF"; } } default "disabled"; } // Nexthop Flags - // Default Value computed from unspecified typedef ip_NhFlags { - // bits- Using string type string; default "unspecified"; } @@ -10368,34 +10758,37 @@ module Cisco-NX-OS-device { // Operational state typedef ip_OperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Down enum down { value 1; + description "Down"; } - - // Up enum up { value 2; + description "Up"; } - - // Failed enum failed { value 3; + description "Failed"; } } default "up"; } + // Preference + typedef ip_Preference { + type uint8 { + range "0..255"; + } + default "0"; + } + // Rt control typedef ip_RtControl { - // bits- Using string type string; } @@ -10411,20 +10804,17 @@ module Cisco-NX-OS-device { // cli: ipv6 switch-packets lla typedef ip_SwitchPktTarget { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // Switch Packets all enum all { value 1; + description "Switch Packets all"; } - - // Switch Packets with lla enum lla { value 2; + description "Switch Packets with lla"; } } default "disabled"; @@ -10433,35 +10823,29 @@ module Cisco-NX-OS-device { // Unnumbered Operational state qualifier typedef ip_UnnumberedOperStQual { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // Parent is unnumbered enum parent-unnumbered { value 1; + description "Parent is unnumbered"; } - - // child is a numbered interface enum child-numbered { value 2; + description "child is a numbered interface"; } - - // Invalid interface as source enum invalid-source { value 3; + description "Invalid interface as source"; } - - // Unnumbered not allowed on this interface enum invalid-interface { value 4; + description "Unnumbered not allowed on this interface"; } - - // Unnumbered interface must not be self referantial enum intf-self-referential { value 5; + description "Unnumbered interface must not be self referantial"; } } default "unspecified"; @@ -10475,30 +10859,146 @@ module Cisco-NX-OS-device { // 3 -> loose-allow-default URPF (any form with allow-default) typedef ip_UrpfT { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // URPF strict (rx) enum strict { value 1; + description "URPF strict (rx)"; } - - // URPF loose (any) enum loose { value 2; + description "URPF loose (any)"; } - - // URPF loose allow default (any allow-default) enum loose-allow-default { value 3; + description "URPF loose allow default (any allow-default)"; } } default "disabled"; } + typedef ipfib_AddressType { + type enumeration { + enum IPV4 { + value 0; + description "IPv4 address"; + } + enum IPV6 { + value 1; + description "IPv6 address"; + } + enum LABEL { + value 2; + description "MPLS Label"; + } + } + default "IPV4"; + } + + typedef ipfib_FecType { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum IPV4 { + value 1; + description "IPv4 FEC Type"; + } + enum IPV6 { + value 2; + description "IPv6 FEC Type"; + } + enum IPV4_TE_LSP { + value 3; + description "IPv4 TE LSP FEC Type"; + } + enum IPV6_TE_LSP { + value 4; + description "IPv6 TE LSP FEC Type"; + } + enum TE_IF { + value 5; + description "TE_IF FEC Type"; + } + enum DEAGG { + value 6; + description "Deagregation Label FEC Type"; + } + enum PER_CE { + value 7; + description "PER CE FEC Type"; + } + enum FEC_NONE { + value 8; + description "Nil FEC Type"; + } + enum POLICY_V4_PFX { + value 9; + description "Policy V4 FEC Type"; + } + enum POLICY_V6_PFX { + value 10; + description "Policy v6 FEC Type"; + } + enum ADJ_SID { + value 11; + description "Adjacency SID FEC Type"; + } + enum SRTE { + value 12; + description "SRTE FEC Type"; + } + } + default "DEFAULT"; + } + + typedef ipfib_OutOperEnum { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum PUSH { + value 1; + description "Push Operation with the given stack of labels"; + } + enum SWAP { + value 2; + description "SWAP Operation with the given stack of labels"; + } + enum POP { + value 3; + description "Pop Labels and do regular forwarding"; + } + } + default "DEFAULT"; + } + + typedef ipfib_SpecialAdj { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum ATTACHED { + value 1; + description "Direct Route"; + } + enum RECEIVE { + value 2; + description "Local Route"; + } + enum DROP { + value 3; + description "Drop Route"; + } + } + default "DEFAULT"; + } + typedef ipmc_Allowv3AsmType { type boolean; default "true"; @@ -10523,63 +11023,62 @@ module Cisco-NX-OS-device { // Interface level Controls typedef ipmc_IfCtrl { - // bits- Using string type string; } // If flags typedef ipmc_IfFlags { - // bits- Using string type string; } // Inst level Controls typedef ipmc_InstCtrl { - // bits- Using string type string; } // Join Type typedef ipmc_JoinType { type enumeration { - - // Static Group enum 0 { value 0; + description "Static Group"; } - - // Join Group enum 1 { value 1; + description "Join Group"; } } } typedef ipmc_RouteFlags { - // bits- Using string type string; } + // Syslog Threshold + typedef ipmc_SyslogThresT { + type uint16 { + range "1..100"; + } + default "90"; + } + // Version typedef ipmc_Ver { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // IGMP v2 enum 2 { value 2; + description "IGMP v2"; } - - // IGMP v3 enum 3 { value 3; + description "IGMP v3"; } } } @@ -10592,60 +11091,49 @@ module Cisco-NX-OS-device { // Database type typedef ipmcsnoop_DbT { type enumeration { - - // Multicast Local Group Database enum group { value 1; + description "Multicast Local Group Database"; } - - // Multicast Fabric Group Database enum fabric-mcgrp { value 2; + description "Multicast Fabric Group Database"; } - - // Querier database enum querier { value 3; + description "Querier database"; } - - // Mrouter database enum mrouter { value 4; + description "Mrouter database"; } - - // Igmp snooping statistics database enum snoopstats { value 5; + description "Igmp snooping statistics database"; } - - // report policy stats database enum policy { value 6; + description "report policy stats database"; } - - // Igmp snooping params enum snoop { value 7; + description "Igmp snooping params"; } - - // explicit tracking enum exptrack { value 8; + description "explicit tracking"; } - - // snoop statistics enum stats { value 9; + description "snoop statistics"; } - - // MAC address table enum mac { value 10; + description "MAC address table"; } - - // MAC OIF enum macoif { value 11; + description "MAC OIF "; } } default "group"; @@ -10658,10 +11146,8 @@ module Cisco-NX-OS-device { } // Domain level controls - // Default Value computed from opt-flood typedef ipmcsnoop_DomControl { - // bits- Using string type string; default "opt-flood"; } @@ -10669,7 +11155,6 @@ module Cisco-NX-OS-device { // Domain flags typedef ipmcsnoop_DomFlags { - // bits- Using string type string; } @@ -10687,15 +11172,13 @@ module Cisco-NX-OS-device { // IPMC snooping forwarding mode typedef ipmcsnoop_FwdMode { type enumeration { - - // IP based forwarding enum ip { value 1; + description "IP based forwarding"; } - - // Mac based forwarding enum mac { value 2; + description "Mac based forwarding"; } } default "ip"; @@ -10710,7 +11193,6 @@ module Cisco-NX-OS-device { // Number of multicast groups typedef ipmcsnoop_InstFlags { - // bits- Using string type string; } @@ -10718,10 +11200,15 @@ module Cisco-NX-OS-device { // is controlled typedef ipmcsnoop_LcC { - // bits- Using string type string; } + typedef ipmcsnoop_LkpModeT { + type string { + length "0..50"; + } + } + typedef ipmcsnoop_LlGrpSuppr { type boolean; default "true"; @@ -10730,30 +11217,25 @@ module Cisco-NX-OS-device { // MAC type typedef ipmcsnoop_MacType { type enumeration { - - // Primary Entry enum * { value 0; + description "Primary Entry"; } - - // Gateway MAC enum G { value 1; + description "Gateway MAC"; } - - // Routed MAC enum R { value 2; + description "Routed MAC"; } - - // Overlay MAC enum O { value 3; + description "Overlay MAC"; } - - // IGMP MAC enum IGMP { value 4; + description "IGMP MAC"; } } } @@ -10776,58 +11258,50 @@ module Cisco-NX-OS-device { // Multicast traffic source address typedef ipmcsnoop_McastSrc { type address_Ip; - default "0"; } - // minimum version + // minimum version Valid range is 2-3, adding 0 for negation typedef ipmcsnoop_MinVer { type uint16 { - range "2..3"; + range "0..3"; } + description "Minimum-version with valid range of 0,2-3"; } // NEW IGMPSNOOP types typedef ipmcsnoop_MrouteType { type enumeration { - - // Statically Configured enum static { value 0; + description "Statically Configured"; } - - // Dynamically Learned enum dynamic { value 1; + description "Dynamically Learned"; } - - // Internally Configured enum internal { value 2; + description "Internally Configured"; } - - // Fabricpath Core enum fabpath { value 3; + description "Fabricpath Core "; } - - // Vpc Peer link enum vpc { value 4; + description "Vpc Peer link "; } - - // Co-Learned enum coLearned { value 5; + description "Co-Learned "; } - - // Peer-Learned enum peerLearned { value 6; + description "Peer-Learned "; } - - // User-Configured enum userConf { value 7; + description "User-Configured "; } } } @@ -10839,17 +11313,22 @@ module Cisco-NX-OS-device { default "5"; } + // Policy name + typedef ipmcsnoop_PolicyNameT { + type string { + length "0..255"; + } + } + // Querier flags typedef ipmcsnoop_QuerierFlags { - // bits- Using string type string; } // Report flags typedef ipmcsnoop_RepFlags { - // bits- Using string type string; } @@ -10864,6 +11343,14 @@ module Cisco-NX-OS-device { type address_Ip; } + // Router Guard vlan interface type + typedef ipmcsnoop_RtrGrdVlanIdT { + type uint32 { + range "1..4095"; + } + default "4095"; + } + // Self mac check loopback typedef ipmcsnoop_SelfMacCheck { type boolean; @@ -10878,17 +11365,18 @@ module Cisco-NX-OS-device { default "90"; } - // Uptime and expiry time - typedef ipmcsnoop_Timer { - type string; - } - // v3 report suppression typedef ipmcsnoop_V3ReportSuppr { type boolean; default "false"; } + typedef ipmcsnoop_VersionT { + type string { + length "0..51"; + } + } + // Vlan id type typedef ipmcsnoop_Vlanid { type uint32 { @@ -10914,6 +11402,13 @@ module Cisco-NX-OS-device { default "false"; } + // vxlan-umc vlan valid range - 1-3967, + // 1-4094 if drop on all Vlans 0 - disable + typedef ipmcsnoop_VxlanVlanRange { + type l2_VlanBitmap; + default "0"; + } + typedef ipqos_BuffSize { type uint64 { range "5000..12582913"; @@ -10929,45 +11424,52 @@ module Cisco-NX-OS-device { typedef ipqos_BurstRateUnit { type enumeration { - - // invalid enum unspecified { value 0; + description "invalid"; } - - // bytes enum bytes { value 1; + description "bytes"; } - - // kilobytes enum kbytes { value 2; + description "kilobytes"; } - - // megabytes enum mbytes { value 3; + description "megabytes"; } - - // milli-seconds enum ms { value 4; + description "milli-seconds"; } - - // micro-seconds enum us { value 5; + description "micro-seconds"; } - - // packets enum packets { value 6; + description "packets"; } } default "unspecified"; } + typedef ipqos_BurstState { + type enumeration { + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 0; + description "disabled"; + } + } + default "disabled"; + } + typedef ipqos_CMapName { type string { length "1..40"; @@ -10981,6 +11483,48 @@ module Cisco-NX-OS-device { } } + typedef ipqos_CosNewNone { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 None { + value 8; + description "None"; + } + } + default "None"; + } + typedef ipqos_DescStr { type string { length "0..200"; @@ -11000,8 +11544,42 @@ module Cisco-NX-OS-device { default "0"; } - typedef ipqos_IfName { - type nw_IfId; + typedef ipqos_LoggingLevel { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; + } + } + default "Warnings"; } typedef ipqos_MPLSExperimental { @@ -11023,6 +11601,18 @@ module Cisco-NX-OS-device { } } + typedef ipqos_OverrideIntfMode { + type enumeration { + enum disabled { + value 0; + } + enum off { + value 1; + } + } + default "disabled"; + } + typedef ipqos_PMapName { type string { length "1..40"; @@ -11037,40 +11627,33 @@ module Cisco-NX-OS-device { typedef ipqos_PoliceAction { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // transmit enum transmit { value 1; + description "transmit"; } - - // drop enum drop { value 2; + description "drop"; } - - // set-cos-transmit enum set-cos-transmit { value 3; + description "set-cos-transmit"; } - - // set-dscp-transmit enum set-dscp-transmit { value 4; + description "set-dscp-transmit"; } - - // set-prec-transmit enum set-prec-transmit { value 5; + description "set-prec-transmit"; } - - // set-qos-transmit enum set-qos-transmit { value 6; + description "set-qos-transmit"; } } } @@ -11081,47 +11664,45 @@ module Cisco-NX-OS-device { } } + typedef ipqos_PolicerName { + type string { + length "0..40"; + } + } + typedef ipqos_Prec { type enumeration { - - // routine enum routine { value 0; + description "routine"; } - - // priority enum priority { value 1; + description "priority"; } - - // immediate enum immediate { value 2; + description "immediate"; } - - // flash enum flash { value 3; + description "flash"; } - - // flash-override enum flash-override { value 4; + description "flash-override"; } - - // critical enum critical { value 5; + description "critical"; } - - // internet enum internet { value 6; + description "internet"; } - - // network enum network { value 7; + description "network"; } } } @@ -11142,49 +11723,76 @@ module Cisco-NX-OS-device { type uint8; } + // Priority Group value + typedef ipqos_PriorityGrpVal { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 None { + value 8; + description "None"; + } + } + default "None"; + } + typedef ipqos_PriorityLevel { type uint8 { range "1..8"; } - default "1"; } typedef ipqos_Protocol { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // IP ARP enum arp { value 1; + description "IP ARP"; } - - // Bridging enum bridging { value 2; + description "Bridging"; } - - // Cisco Discovery Protocol enum cdp { value 3; + description "Cisco Discovery Protocol"; } - - // Dynamic Host Configuration enum dhcp { value 7; + description "Dynamic Host Configuration"; } - - // Intermediate System Intermediate System Protocol enum isis { value 8; + description "Intermediate System Intermediate System Protocol"; } - - // Fcoe enum fcoe { value 14; + description "Fcoe"; } } } @@ -11211,14 +11819,44 @@ module Cisco-NX-OS-device { default "match-all"; } + // afd queue-desired + typedef ipqos_QueueDesired { + type uint64 { + range "1..52428800"; + } + } + + typedef ipqos_QueueDesiredUnit { + type enumeration { + enum none { + value 0; + description "none"; + } + enum bytes { + value 1; + description "bytes"; + } + enum kbytes { + value 2; + description "kbytes"; + } + enum mbytes { + value 3; + description "mbytes"; + } + } + default "none"; + } + // queue-limit + // Default Value "12582913" Removed - out of range 0..12582912 typedef ipqos_QueueLimit { type uint64 { range "0..12582912"; } - default "0"; } + // Default Value "255" Removed - out of range 0..10 typedef ipqos_QueueLimitDynamic { type uint8 { range "0..10"; @@ -11227,50 +11865,41 @@ module Cisco-NX-OS-device { typedef ipqos_QueueLimitUnit { type enumeration { - - // none enum none { value 0; + description "none"; } - - // packets enum packets { value 1; + description "packets"; } - - // bytes enum bytes { value 2; + description "bytes"; } - - // kbytes enum kbytes { value 3; + description "kbytes"; } - - // mbytes enum mbytes { value 4; + description "mbytes"; } - - // gbytes enum gbytes { value 5; + description "gbytes"; } - - // ms enum ms { value 6; + description "ms"; } - - // us enum us { value 7; + description "us"; } - - // perc enum perc { value 8; + description "perc"; } } default "none"; @@ -11283,40 +11912,33 @@ module Cisco-NX-OS-device { typedef ipqos_RateUnit { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // bps enum bps { value 1; + description "bps"; } - - // kbps enum kbps { value 2; + description "kbps"; } - - // mbps enum mbps { value 3; + description "mbps"; } - - // gbps enum gbps { value 4; + description "gbps"; } - - // pps enum pps { value 5; + description "pps"; } - - // percentage enum pct { value 6; + description "percentage"; } } default "unspecified"; @@ -11324,111 +11946,106 @@ module Cisco-NX-OS-device { typedef ipqos_ShapeRate { type uint64 { - range "0..100000000000"; + range "0..400000000000"; } } typedef ipqos_StatsType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Match under the class-map enum matchCMap { value 1; + description "Match under the class-map"; } - - // MTU enum MTU { value 2; + description "MTU"; } - - // Set Action enum setAction { value 3; + description "Set Action"; } - - // Pause enum pause { value 4; + description "Pause"; } - - // Bandwidth enum bw { value 5; + description "Bandwidth"; } - - // Bandwith remaining enum bwRem { value 6; + description "Bandwith remaining"; } - - // Shape enum shape { value 7; + description "Shape"; } - - // Priority enum prio { value 8; + description "Priority"; } - - // Random Detect enum randomDetect { value 9; + description "Random Detect"; } - - // Queuing enum queuing { value 10; + description "Queuing"; } - - // Policing enum police { value 11; + description "Policing"; } - - // Queue Limit enum qlimit { value 12; + description "Queue Limit"; } - - // Microburst enum microburst { value 13; + description "Microburst"; } } } - typedef ipqos_ThreshUnit { + typedef ipqos_ThresUnit { type enumeration { - - // none enum none { value 0; + description "none"; } + enum bytes { + value 1; + description "bytes"; + } + } + default "none"; + } - // packets + typedef ipqos_ThreshUnit { + type enumeration { + enum none { + value 0; + description "none"; + } enum packets { value 1; + description "packets"; } - - // bytes enum bytes { value 2; + description "bytes"; } - - // kbytes enum kbytes { value 3; + description "kbytes"; } - - // mbytes enum mbytes { value 4; + description "mbytes"; } } default "none"; @@ -11441,6 +12058,13 @@ module Cisco-NX-OS-device { default "0"; } + typedef ipqos_Threshold { + type uint32 { + range "0..13319072"; + } + default "0"; + } + typedef ipqos_Weight { type uint8 { range "0..15"; @@ -11459,54 +12083,54 @@ module Cisco-NX-OS-device { } } + typedef ipqos_ecnThresh { + type uint32 { + range "1..500000"; + } + } + // 253/512/64 typedef ipqos_ethernetList { type string { + pattern ".*((,)?(((2[0-5][0-3])|(1[0-9]{2})|([1-9][0-9])|[1-9])/((5[0-1][0-2])|([1-4][0-9]{2})|([1-9][0-9]?))(/((6[0-4])|[6-9]|([1-5][0-9]?)))?)(-((5[0-1][0-2])|([1-4][0-9]{2})|([1-9][0-9]?)))?)+.*|.*0.*"; } default "0"; } typedef ipqos_policyDirection { type enumeration { - - // none enum none { value 0; + description "none"; } - - // ingress enum ingress { value 1; + description "ingress"; } - - // egress enum egress { value 2; + description "egress"; } - - // both enum both { value 3; + description "both"; } } } typedef ipqos_policyType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // qos enum qos { value 1; + description "qos"; } - - // queuing enum queuing { value 2; + description "queuing"; } } } @@ -11514,21 +12138,20 @@ module Cisco-NX-OS-device { // <1-4096> List of port-channle ids typedef ipqos_portChanList { type string { + pattern ".*((,)?((409[0-6])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([0-9][0-9]{0,2}))(-(409[0-6])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))?)+.*|0"; } default "0"; } typedef ipqos_statsState { type enumeration { - - // enabled enum enabled { value 0; + description "enabled"; } - - // disabled enum disabled { value 1; + description "disabled"; } } default "enabled"; @@ -11537,10 +12160,45 @@ module Cisco-NX-OS-device { // <1-4094> List of vlan ids typedef ipqos_vlanList { type string { + pattern ".*(,?((409[0-4])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))(-(409[0-4])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))?)+.*|0"; } default "0"; } + typedef ipt_AclName { + type string { + length "0..64"; + } + } + + // DSCP + typedef ipt_Dscp { + type uint8 { + range "0..63"; + } + } + + typedef ipt_Name { + type string { + length "0..32"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef ipt_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + + // TTL + typedef ipt_Ttl { + type uint8 { + range "0..255"; + } + } + typedef ipv4_ClientFlagType { type uint8; } @@ -11614,25 +12272,21 @@ module Cisco-NX-OS-device { // Config Error typedef ipv6_ConfigErr { type enumeration { - - // Unknown enum noerror { value 0; + description "Unknown"; } - - // Config failed for IPv6 neighbor address enum nghbrAddress { value 1; + description "Config failed for IPv6 neighbor address"; } - - // Config failed for IPv6 use link local only enum useLinkLocalOnly { value 2; + description "Config failed for IPv6 use link local only"; } - - // Config failed for IPv6 forward enum forward { value 3; + description "Config failed for IPv6 forward"; } } } @@ -11640,25 +12294,21 @@ module Cisco-NX-OS-device { // Event History Size typedef ipv6_IPv6EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -11667,40 +12317,33 @@ module Cisco-NX-OS-device { // Event Log Type typedef ipv6_IPv6EventType { type enumeration { - - // IPv6 Error Log enum ipv6Event { value 0; + description "IPv6 Error Log"; } - - // Bfd Debug Message for IPv6 enum bfdEvent { value 1; + description "Bfd Debug Message for IPv6"; } - - // Syslog Message for IPv6 enum syslog { value 2; + description "Syslog Message for IPv6"; } - - // Ipc Debug Message enum ipc { value 3; + description "Ipc Debug Message"; } - - // SNMP Events enum snmp { value 4; + description "SNMP Events"; } - - // High Availability Event enum highAvailability { value 5; + description "High Availability Event"; } - - // Sdb Message of IPv6 enum sdb { value 6; + description "Sdb Message of IPv6"; } } } @@ -11761,30 +12404,75 @@ module Cisco-NX-OS-device { // Adj operational state typedef isis_AdjOperSt { type enumeration { - - // Initializing enum init { value 1; + description "Initializing"; } - - // Up enum up { value 2; + description "Up"; } - - // Down enum down { value 3; + description "Down"; } - - // Graceful restart initializing enum gr-init { value 4; + description "Graceful restart initializing"; } } default "init"; } + // Administrative state + typedef isis_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabling table map for Selective route"; + } + enum disabled { + value 2; + description "Disabling table map for Selective route"; + } + } + default "disabled"; + } + + // Advertise interface Level type + typedef isis_AdvtLvl { + type enumeration { + enum l0 { + value 0; + description "Level-0"; + } + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + } + default "l0"; + } + + // Address family type + typedef isis_AfT { + type enumeration { + enum v4 { + value 1; + description "IPv4 address family"; + } + enum v6 { + value 2; + description "IPv6 address family"; + } + } + default "v4"; + } + // Authentication key-chain name typedef isis_AuthKeyN { type string; @@ -11793,18 +12481,39 @@ module Cisco-NX-OS-device { // Authentication type typedef isis_AuthT { type enumeration { - - // Clear enum clear { value 1; + description "Clear"; } - - // MD5 enum md5 { value 2; + description "MD5"; + } + enum unknown { + value 3; + description "Unknown"; + } + } + default "unknown"; + } + + // BFD type + typedef isis_BfdT { + type enumeration { + enum inheritVrf { + value 1; + description "Inherit BFD from VRF"; + } + enum enabled { + value 2; + description "Enable BFD"; + } + enum disabled { + value 3; + description "Disable BFD"; } } - default "md5"; + default "inheritVrf"; } // Bandwidth reference @@ -11816,15 +12525,13 @@ module Cisco-NX-OS-device { // Bandwidth reference unit typedef isis_BwRefUnit { type enumeration { - - // Mbps enum mbps { value 0; + description "Mbps"; } - - // Gbps enum gbps { value 1; + description "Gbps"; } } default "mbps"; @@ -11843,51 +12550,84 @@ module Cisco-NX-OS-device { type uint16 { range "1..65535"; } - default "90"; + default "10"; } // Database type typedef isis_DbT { type enumeration { - - // Link State Dtabase enum ls { value 1; + description "Link State Dtabase"; } - - // Route Database enum rt { value 2; + description "Route Database"; } - - // Nexthop Database enum nh { value 3; + description "Nexthop Database"; } - - // Multicast Group Database enum mcgrp { value 4; + description "Multicast Group Database"; } - - // Fabric Node Database enum fn { value 5; + description "Fabric Node Database"; } - - // Dynamic Tunnel Endpoint Database enum dtep { value 6; + description "Dynamic Tunnel Endpoint Database"; } } default "ls"; } + // Default Information Originate state + typedef isis_DefInfOrigSt { + + type string; + default "off"; + } + + // Distance + typedef isis_Dist { + type uint8 { + range "1..255"; + } + default "115"; + } + + // Distribute link-state Level type + typedef isis_DistrLvl { + type enumeration { + enum l0 { + value 0; + description "Level-0"; + } + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + } + default "l0"; + } + + // Per address family controls + typedef isis_DomAfControl { + + type string; + default "adj-check,set-attached-bit"; + } + // Dom controls - // Default Value computed from unspecified typedef isis_DomControl { - // bits- Using string type string; default "unspecified"; } @@ -11895,13 +12635,117 @@ module Cisco-NX-OS-device { // Per level controls typedef isis_DomLvlControl { - // bits- Using string type string; } // Dom name typedef isis_DomName { - type string; + type l3_VrfName; + } + + // ECMP max paths + typedef isis_Ecmp { + type uint8 { + range "1..64"; + } + default "8"; + } + + // Event History Buffer size in Text/kb + typedef isis_EhSize { + type uint32 { + range "0..4294967295"; + } + } + + // Event History Buffer Type + typedef isis_EhType { + type enumeration { + enum spfLeaf { + value 0; + description "spf-leaf events for ISIS"; + } + enum spfTree { + value 1; + description "spf-tree events for ISIS"; + } + enum psnp { + value 2; + description "PSNP events for ISIS"; + } + enum csnp { + value 3; + description "CSNP events for ISIS"; + } + enum lspGen { + value 4; + description "lsp-gen events for ISIS"; + } + enum lspFlood { + value 5; + description "lsp-flood events for ISIS"; + } + enum iih { + value 6; + description "IIH events for ISIS"; + } + enum adj { + value 7; + description "Adjacency events for ISIS"; + } + enum dis { + value 8; + description "DIS events for ISIS"; + } + enum events { + value 9; + description "Events events for ISIS"; + } + enum cli { + value 10; + description "CLI events for ISIS"; + } + enum ha { + value 11; + description "HA events for ISIS"; + } + enum gr { + value 12; + description "Graceful Restart events for ISIS"; + } + enum urib { + value 13; + description "URIB events for ISIS"; + } + enum redist { + value 14; + description "Redist events for ISIS"; + } + enum tlv { + value 15; + description "TLV events for ISIS"; + } + enum mtr { + value 16; + description "MTR events for ISIS"; + } + enum perf { + value 17; + description "Performance events for ISIS"; + } + enum df { + value 18; + description "Dynamic Flooding events for ISIS"; + } + enum sr { + value 19; + description "Segment-routing events for ISIS"; + } + enum ulib { + value 20; + description "ULIB events for ISIS"; + } + } } // Fragment number @@ -11936,20 +12780,17 @@ module Cisco-NX-OS-device { // Interface Hello-Padding type typedef isis_HelloPadT { type enumeration { - - // Enabling Hello-Padding always on interface enum always { value 1; + description "Enabling Hello-Padding always on interface"; } - - // Disabling Hello-Padding to Transient mode on Interface enum transient { value 2; + description "Disabling Hello-Padding to Transient mode on Interface"; } - - // Disabling Hello-Padding on Interface enum never { value 3; + description "Disabling Hello-Padding on Interface"; } } default "always"; @@ -11958,10 +12799,17 @@ module Cisco-NX-OS-device { // Interface controls typedef isis_IfControl { - // bits- Using string type string; } + // Distribute Link-state Instance-id + typedef isis_InstId { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + // Instance name typedef isis_InstanceName { type string; @@ -11970,20 +12818,17 @@ module Cisco-NX-OS-device { // IS type typedef isis_IsT { type enumeration { - - // L1 IS type enum l1 { value 1; + description "L1 IS type"; } - - // L2 IS type enum l2 { value 2; + description "L2 IS type"; } - - // L1-2 IS type enum l12 { value 3; + description "L1-2 IS type"; } } default "l12"; @@ -11994,6 +12839,13 @@ module Cisco-NX-OS-device { type uint8; } + // Logging Level + typedef isis_LogL { + type uint32 { + range "0..7"; + } + } + // Lsp generation initial wait interval typedef isis_LspGenInitIntvl { type uint32 { @@ -12029,20 +12881,17 @@ module Cisco-NX-OS-device { // Level type typedef isis_LvlT { type enumeration { - - // P2P enum p2p { value 0; + description "P2P"; } - - // Level1 enum l1 { value 1; + description "Level1"; } - - // Level2 enum l2 { value 2; + description "Level2"; } } default "l1"; @@ -12059,14 +12908,12 @@ module Cisco-NX-OS-device { // Mesh group controls typedef isis_MeshGrpControl { - // bits- Using string type string; } // Mesh group id typedef isis_MeshGrpId { - // MAX Converted to int from 0xffffffff type uint32 { range "1..4294967295"; } @@ -12075,28 +12922,25 @@ module Cisco-NX-OS-device { // Metric typedef isis_Metric { type uint32 { - range "1..63"; + range "0..16777216"; } - default "1"; + default "16777216"; } // Metric style typedef isis_MetricStyle { type enumeration { - - // Narrow enum narrow { value 1; + description "Narrow"; } - - // Wide enum wide { value 2; + description "Wide"; } - - // Transition enum transition { value 3; + description "Transition"; } } default "wide"; @@ -12115,28 +12959,43 @@ module Cisco-NX-OS-device { type string; } + // Network Type point-to-point state + typedef isis_NetworkTypeP2PSt { + type enumeration { + enum off { + value 0; + description "Off"; + } + enum on { + value 1; + description "On"; + } + enum useAllISMac { + value 2; + description "Use allISs MAC"; + } + } + default "off"; + } + // Operational state typedef isis_OperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Running smoothly enum ok { value 2; + description "Running smoothly"; } - - // Failed enum failed { value 3; + description "Failed"; } } } @@ -12144,30 +13003,25 @@ module Cisco-NX-OS-device { // Overload administrative state typedef isis_OverloadAdminSt { type enumeration { - - // Off enum off { value 0; + description "Off"; } - - // Always on enum always-on { value 1; + description "Always on"; } - - // On at bootup enum bootup { value 2; + description "On at bootup"; } - - // Set till bgp convergence enum bgp-converge { value 3; + description "Set till bgp convergence"; } - - // Set till bgp convergence with max wait enum bgp-converge-max-wait { value 4; + description "Set till bgp convergence with max wait"; } } default "bootup"; @@ -12176,28 +13030,59 @@ module Cisco-NX-OS-device { // Passive Interface Level type typedef isis_PassiveIntfT { type enumeration { - - // Passive Interface type Level-1 enum l1 { value 1; + description "Passive Interface type Level-1"; } - - // Passive Interface type Level-2 enum l2 { value 2; + description "Passive Interface type Level-2"; } - - // Passive Interface type Level-1-2 enum l12 { value 3; + description "Passive Interface type Level-1-2"; } - - // Passive Interface default type - enum inherit { + enum noL1 { value 4; + description "No Passive Interface type Level-1"; + } + enum noL2 { + value 5; + description "No Passive Interface type Level-2"; + } + enum noL12 { + value 6; + description "No Passive Interface type Level-1-2"; + } + enum inheritDef { + value 7; + description "Passive Interface default type"; + } + } + default "inheritDef"; + } + + // Pasive default type + typedef isis_PassiveT { + type enumeration { + enum l1 { + value 0; + description "L1 Passive type"; + } + enum l2 { + value 1; + description "L2 Passive type"; + } + enum l12 { + value 2; + description "L1-2 Passive type"; + } + enum unknown { + value 3; + description "Unknown Passive type"; } } - default "inherit"; + default "unknown"; } // LSP retransmit Interval @@ -12216,6 +13101,21 @@ module Cisco-NX-OS-device { default "66"; } + // ISIS SR option support in Segment-Routing + typedef isis_SgmntRtg { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum srv6 { + value 1; + description "Support SRv6 option in Segment-Routing"; + } + } + default "none"; + } + // Spf computation initial wait interval typedef isis_SpfCompInitIntvl { type uint32 { @@ -12247,13 +13147,39 @@ module Cisco-NX-OS-device { default "600"; } + // Summary Address Level type + typedef isis_SumLvl { + type enumeration { + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + enum l12 { + value 3; + description "Level-1-2"; + } + } + default "l12"; + } + // Overload Suppress controls typedef isis_SuppressControl { - // bits- Using string type string; } + // Distribute Link-state throttle interval + typedef isis_Throttle { + type uint16 { + range "0..50"; + } + default "0"; + } + // TLV type typedef isis_TlvType { type uint8; @@ -12264,12 +13190,312 @@ module Cisco-NX-OS-device { type string; } + // Multi-topology type + typedef isis_TopoT { + type enumeration { + enum st { + value 1; + description "Single Topology"; + } + enum mt { + value 2; + description "Multi-topology"; + } + enum mtt { + value 3; + description "Multi-topology transition"; + } + } + default "st"; + } + // Wide Metric typedef isis_WideMetric { type uint32 { - range "1..16777215"; + range "0..16777216"; } - default "40"; + default "16777216"; + } + + typedef itd_AclNameType { + type string { + length "0..50"; + } + } + + // Administrative state + typedef itd_AdminSt { + type enumeration { + enum no_shut { + value 1; + description "Enabled"; + } + enum shut { + value 0; + description "Disabled"; + } + } + default "shut"; + } + + typedef itd_BucketNumType { + type uint32 { + range "0..256"; + } + default "0"; + } + + typedef itd_DevGrpNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_DnsHostType { + type string { + length "0..99"; + } + } + + typedef itd_HttpStringType { + type string { + length "0..99"; + } + } + + typedef itd_LBMethod { + type enumeration { + enum noLBMethod { + value 0; + description "no load-balancing"; + } + enum src { + value 1; + description "src based load-balancing"; + } + enum dst { + value 2; + description "dst based load-balancing"; + } + } + default "noLBMethod"; + } + + typedef itd_MaskPosType { + type uint32 { + range "0..127"; + } + default "0"; + } + + typedef itd_PortGrpNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_Prefix { + type uint32 { + range "0..128"; + } + default "0"; + } + + typedef itd_SvcNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_ctrlType { + type enumeration { + enum disable { + value 0; + description "disable control status"; + } + enum enable { + value 1; + description "enable control status"; + } + } + default "disable"; + } + + typedef itd_dgFaultBitmapT { + + type string; + } + + typedef itd_failactionType { + type enumeration { + enum nofailaction { + value 0; + description "no failaction"; + } + enum nodeReassign { + value 1; + description "failaction node reassign"; + } + enum nodeLeastBucket { + value 2; + description "failaction node least bucket"; + } + enum nodePerBucket { + value 3; + description "failaction node per bucket"; + } + enum bucketDistribute { + value 4; + description "failaction bucket distribute"; + } + } + default "nofailaction"; + } + + typedef itd_ingressIfFaultBitmapT { + + type string; + } + + typedef itd_nodeFaultBitmapT { + + type string; + } + + typedef itd_nodeModeType { + type enumeration { + enum primary { + value 0; + description "ITD primary node"; + } + enum hot-standby { + value 1; + description "ITD hot-standby node"; + } + } + default "primary"; + } + + typedef itd_probeFaultBitmapT { + + type string; + } + + typedef itd_protocolType { + type enumeration { + enum noProtocol { + value 0; + description "no protocol"; + } + enum DNS { + value 1; + description "ITD protocol type DNS"; + } + enum HTTP { + value 2; + description "ITD protocol type HTTP"; + } + enum ICMP { + value 3; + description "ITD protocol type ICMP"; + } + enum TCP { + value 4; + description "ITD protocol type TCP"; + } + enum UDP { + value 5; + description "ITD protocol type UDP"; + } + enum IP { + value 6; + description "ITD protocol type IP"; + } + } + default "noProtocol"; + } + + typedef itd_serviceFaultBitmapT { + + type string; + } + + typedef itd_sessActionType { + type enumeration { + enum noAction { + value 0; + description "noAction"; + } + enum commit { + value 1; + description "commit session"; + } + enum abort { + value 2; + description "abort session"; + } + } + default "noAction"; + } + + typedef itd_sessNodeActionType { + type enumeration { + enum add { + value 0; + description "add node to device group"; + } + enum delete { + value 1; + description "delete node from device group"; + } + } + } + + typedef itd_standbyNodeFaultBitmapT { + + type string; + } + + typedef itd_statsActionType { + type enumeration { + enum noAction { + value 0; + description "no action for statistics"; + } + enum on { + value 1; + description "start collecting statistics"; + } + enum off { + value 2; + description "stop collecting statistics"; + } + } + default "noAction"; + } + + typedef itd_vrfName { + type string { + length "1..32"; + } + default "default"; + } + + typedef kbs_adminStType { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; } // Interface administrative state @@ -12298,6 +13524,10 @@ module Cisco-NX-OS-device { default "disable"; } + typedef l1_AutoExcludeVlans { + type l2_VlanBitmap; + } + // Auto negotiate typedef l1_AutoNeg { type enumeration { @@ -12347,6 +13577,14 @@ module Cisco-NX-OS-device { default "0"; } + // Dot 1Q Ethertype + typedef l1_DDot1qEtherType { + type uint32 { + range "1536..65535"; + } + default "33024"; + } + // Dce mode typedef l1_DceMode { type enumeration { @@ -12374,6 +13612,26 @@ module Cisco-NX-OS-device { default "1"; } + // DFE Adaptive Tuning whether enabled or disabled + typedef l1_DfeAdaptiveTuning { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + } + + typedef l1_DfeTuningDelay { + type uint16 { + range "100..10000"; + } + default "100"; + } + // diags type typedef l1_DiagsT { type enumeration { @@ -12390,25 +13648,6 @@ module Cisco-NX-OS-device { default "none"; } - // Dot 1Q Ethertype - typedef l1_Dot1qEtherType { - type enumeration { - enum 0x8100 { - value 1; - } - enum 0x88A8 { - value 2; - } - enum 0x9100 { - value 3; - } - enum any { - value 4; - } - } - default "0x8100"; - } - // Duplex typedef l1_Duplex { type enumeration { @@ -12473,35 +13712,33 @@ module Cisco-NX-OS-device { // FEC Knob typedef l1_FECMode { type enumeration { - - // auto enum auto { value 4; + description "auto"; } - - // RS-Fec enum rs-fec { value 2; + description "RS-Fec"; } - - // FC-Fec enum fc-fec { value 1; + description "FC-Fec"; } - - // Fec-off enum fec-off { value 3; + description "Fec-off"; } - - // RS-IEEE enum rs-ieee { value 5; + description "RS-IEEE"; } - - // RS-CONS16 enum rs-cons16 { value 6; + description "RS-CONS16"; + } + enum kp-fec { + value 7; + description "FECMode: KP-Fec CL119"; } } default "auto"; @@ -12509,7 +13746,6 @@ module Cisco-NX-OS-device { typedef l1_FlowControl { - // bits- Using string type string; } @@ -12537,15 +13773,13 @@ module Cisco-NX-OS-device { // Port Layer typedef l1_Layer { type enumeration { - - // switched enum Layer2 { value 1; + description "switched"; } - - // routed enum Layer3 { value 2; + description "routed"; } } default "Layer2"; @@ -12554,7 +13788,7 @@ module Cisco-NX-OS-device { // Link debounce interval typedef l1_LinkDebounce { type uint16 { - range "0..10000"; + range "0..20000"; } default "100"; } @@ -12583,18 +13817,24 @@ module Cisco-NX-OS-device { default "default"; } + // Link Mac Up Timer + typedef l1_LinkMacUpTimer { + type uint16 { + range "0..120"; + } + default "0"; + } + // Link Transmit Reset whether enabled or disabled typedef l1_LinkTransmitReset { type enumeration { - - // no-skip enum enable { value 1; + description "no-skip"; } - - // skip enum disable { value 0; + description "skip"; } } default "enable"; @@ -12618,7 +13858,6 @@ module Cisco-NX-OS-device { typedef l1_LogEventBitmap { - // bits- Using string type string; } @@ -12711,25 +13950,21 @@ module Cisco-NX-OS-device { // Oper Status typedef l1_OperSt { type enumeration { - - // unknown enum unknown { value 0; + description "unknown"; } - - // down enum down { value 1; + description "down"; } - - // up enum up { value 2; + description "up"; } - - // link-up enum link-up { value 3; + description "link-up"; } } default "down"; @@ -12739,1281 +13974,1027 @@ module Cisco-NX-OS-device { // uniqueness between labels typedef l1_OperStQual { type enumeration { - - // down enum unknown { value 0; + description "down"; } enum up { value 1; } - - // disabled enum admin-down { value 2; + description "disabled"; } - - // parentEthDown enum link-down { value 3; + description "parentEthDown"; } enum fail { value 4; } - - // portLicNtAvl enum no-license { value 5; + description "portLicNtAvl"; } - - // link-up-connected enum link-up { value 6; + description "link-up-connected"; } - - // faulty enum hw-fail { value 7; + description "faulty"; } - - // faulty enum sw-fail { value 8; + description "faulty "; } - - // err-disabled enum err-disabled { value 9; + description "err-disabled"; } - - // sfpAbsent enum sfp-missing { value 10; + description "sfpAbsent"; } - - // faulty enum loopback-diag-failure { value 11; + description "faulty"; } - - // udldUnidir enum udld-unidir-detected { value 12; + description "udldUnidir"; } - - // udldLoop enum udld-tx-rx-loop { value 13; + description "udldLoop"; } - - // udldMismatch enum udld-neighbor-mismatch { value 14; + description "udldMismatch"; } - - // udldEmpEcho enum udld-empty-echo { value 15; + description "udldEmpEcho"; } - - // udldAggr enum udld-aggressive-mode-link-failed { value 16; + description "udldAggr"; } - - // linkFlapErr enum link-flap-err { value 17; + description "linkFlapErr"; } - - // conflctErrDis enum err-disabled-ip-conflict { value 18; + description "conflctErrDis"; } - - // ipQosDcbxpCompatFailure enum ipqos-dcbxp-compat-failure { value 19; + description "ipQosDcbxpCompatFailure"; } - - // notconnect enum link-failure { value 20; + description "notconnect"; } - - // offline enum offline { value 21; + description "offline"; } - - // init enum initializing { value 22; + description "init"; } - - // inactive enum inactive { value 23; + description "inactive"; } - - // channelDown enum channel-admin-down { value 24; + description "channelDown"; } - - // Channel error-disabled-err-disabled enum channel-err-disabled { value 25; + description "Channel error-disabled-err-disabled"; } - - // suspnd enum suspended { value 26; + description "suspnd"; } - - // portSuspnd enum proto-port-suspend { value 27; + description "portSuspnd"; } - - // channelUpdate enum channel-membership-update-in-progress { value 28; + description "channelUpdate"; } - - // parentDown enum parent-down { value 29; + description "parentDown"; } - - // adminDown-parentDown enum parent-admin-down { value 30; + description "adminDown-parentDown"; } - - // ifRemoved enum interface-removed { value 31; + description "ifRemoved"; } - - // fcotAbsent enum fcot-no-present { value 32; + description "fcotAbsent"; } - - // SFP vendor not supported-err-disabled enum fcot-vendor-not-supported { value 33; + description "SFP vendor not supported-err-disabled"; } - - // errDisabledIncompatPortMode-err-disabled enum incompatible-admin-mode { value 34; + description "errDisabledIncompatPortMode-err-disabled"; } - - // errDisabledIncompatPortSpeed-err-disabled enum incompatible-admin-speed { value 35; + description "errDisabledIncompatPortSpeed-err-disabled"; } - - // suspended enum suspended-by-mode { value 36; + description "suspended"; } - - // suspended enum suspended-by-speed { value 37; + description "suspended"; } - - // isolated enum domain-max-retransmission-failure { value 38; + description "isolated"; } - - // isolated enum loopback-isolation { value 39; + description "isolated"; } - - // modUpgrade enum upgrade-in-progress { value 40; + description "modUpgrade"; } - - // noOperMembers enum port-channel-members-down { value 41; + description "noOperMembers"; } - - // parentEthDown enum ethernet-link-down { value 42; + description "parentEthDown"; } - - // interface-parentEthDown enum ethernet-interface-down { value 43; + description "interface-parentEthDown"; } - - // adminCfgChng enum admin-config-change { value 44; + description "adminCfgChng"; } - - // modRemoved enum module-removed { value 45; + description "modRemoved"; } - - // vrfUnusable enum vrf-unusable { value 46; + description "vrfUnusable"; } - - // connected enum none { value 47; + description "connected"; } - - // sfpInit enum xcvr-initializing { value 48; + description "sfpInit"; } - - // capAbsent enum cap-absent { value 49; + description "capAbsent"; } - - // xcvrEthComplianceErr enum sfp-eth-compliant-err { value 50; + description "xcvrEthComplianceErr"; } - - // SDP timeout/SFP Mismatch enum sdp-timeout { value 51; + description "SDP timeout/SFP Mismatch"; } - - // FEX identity mismatch enum sat-incompat-topo { value 52; + description "FEX identity mismatch"; } - - // FEX not configured enum sat-not-configured { value 53; + description "FEX not configured"; } - - // xcvrAuthFailed enum auth-fail { value 54; + description "xcvrAuthFailed"; } - - // authPending enum auth-pending { value 55; + description "authPending"; } - - // suspendedMinLinks enum suspended-due-to-minlinks { value 56; + description "suspendedMinLinks"; } - - // suspended(no LACP PDUs) enum suspended-due-to-no-lacp-pdus { value 57; + description "suspended(no LACP PDUs)"; } - - // fabrcIfDown enum sat-fabric-if-down { value 58; + description "fabrcIfDown"; } - - // invalidFbIf enum invalid-sat-fabric-if { value 59; + description "invalidFbIf"; } - - // FEX-fabric sfp invalid enum fex-sfp-invalid { value 60; + description "FEX-fabric sfp invalid"; } - - // mtuFailure enum suspend-by-mtu { value 61; + description "mtuFailure"; } - - // suspndByVpc enum suspend-by-vpc { value 62; + description "suspndByVpc"; } - - // routrmacFail enum router-mac-failure { value 63; + description "routrmacFail"; } - - // xcvrAuthFailed enum xcvr-auth-failed { value 64; + description "xcvrAuthFailed"; } - - // ServDisab enum non-sticky-externally-disabled { value 65; + description "ServDisab"; } - - // xcvrSpeedMismatch enum sfp-speed-mismatch { value 66; + description "xcvrSpeedMismatch"; } - - // SFP checksum error enum fcot-chksum-err { value 67; + description "SFP checksum error"; } - - // Transceiver validation failed enum xcvr-invalid { value 68; + description "Transceiver validation failed"; } - - // vpcPeerLinkDown enum vpc-peer-link-down { value 69; + description "vpcPeerLinkDown"; } - - // vpcConfigInProgress enum vpc-cfg-in-progress { value 70; + description "vpcConfigInProgress"; } - - // noRespFrmVpc enum vpc-no-response-from-peer { value 71; + description "noRespFrmVpc"; } - - // BPDUGuard errDisable enum bpdu-guard-err-disable { value 72; + description "BPDUGuard errDisable"; } - - // htStdbyInBndl enum hot-standby-in-bundle { value 73; + description "htStdbyInBndl"; } - - // intFailErrDis enum handshake-fail-errdisable { value 74; + description "intFailErrDis"; } - - // nonParticipating enum non-participating { value 75; + description "nonParticipating"; } - - // rcfInProgress enum rcf-in-progress { value 76; + description "rcfInProgress"; } - - // elpFailureIsolation enum elp-failure-isolation { value 77; + description "elpFailureIsolation"; } - - // escFailureIsolation enum esc-failure-isolation { value 78; + description "escFailureIsolation"; } - - // domainOverlapIsolation enum domain-overlap-isolation { value 79; + description "domainOverlapIsolation"; } - - // domainAddrAssignFailureIsolation enum domain-addr-assign-failure-isolation { value 80; + description "domainAddrAssignFailureIsolation"; } - - // domainOtherSideEportIsolated enum domain-other-side-eport-isolated { value 81; + description "domainOtherSideEportIsolated"; } - - // domainInvalidRcfReceived enum domain-invalid-rcf-received { value 82; + description "domainInvalidRcfReceived"; } - - // domainManagerDisabled enum domain-manager-disabled { value 83; + description "domainManagerDisabled"; } - - // zoneMergeFailureIsolation enum zone-merge-failure-isolation { value 84; + description "zoneMergeFailureIsolation"; } - - // vsanMismatchIsolation enum vsan-mismatch-isolation { value 85; + description "vsanMismatchIsolation"; } - - // srcPortNotBound enum src-port-not-bound { value 86; + description "srcPortNotBound"; } - - // suspendedByWwn enum suspended-by-wwn { value 87; + description "suspendedByWwn"; } - - // eppFailure enum epp-failure { value 88; + description "eppFailure"; } - - // portVsanMismatchIsolation enum port-vsan-mismatch-isolation { value 89; + description "portVsanMismatchIsolation"; } - - // incompatibleAdminRxbbcredit enum incompatible-admin-rxbbcredit { value 90; + description "incompatibleAdminRxbbcredit"; } - - // incompatibleAdminRxbufsize enum incompatible-admin-rxbufsize { value 91; + description "incompatibleAdminRxbufsize"; } - - // zoneRemoteNoRespIsolation enum zone-remote-no-resp-isolation { value 92; + description "zoneRemoteNoRespIsolation"; } - - // osmEPortUp enum osm-e-port-up { value 93; + description "osmEPortUp"; } - - // osmNonEPortUp enum osm-non-e-port-up { value 94; + description "osmNonEPortUp"; } - - // peerFcipClosedTcpConnection enum peer-fcip-closed-tcp-connection { value 95; + description "peerFcipClosedTcpConnection"; } - - // peerFcipResetTcpConnection enum peer-fcip-reset-tcp-connection { value 96; + description "peerFcipResetTcpConnection"; } - - // tcpMaxRetransmissions enum tcp-max-retransmissions { value 97; + description "tcpMaxRetransmissions"; } - - // tcpKeepAliveTimerExpired enum tcp-keep-alive-timer-expired { value 98; + description "tcpKeepAliveTimerExpired"; } - - // tcpPersistTimerExpired enum tcp-persist-timer-expired { value 99; + description "tcpPersistTimerExpired"; } - - // tunnelSrcPortRemoved enum tunnel-src-port-removed { value 100; + description "tunnelSrcPortRemoved"; } - - // tunnelSrcModuleNotOnline enum tunnel-src-module-not-online { value 101; + description "tunnelSrcModuleNotOnline"; } - - // invalidConfig enum invalid-config { value 102; + description "invalidConfig"; } - - // portBindFailure enum port-bind-failure { value 103; + description "portBindFailure"; } - - // fabricBindFailure enum fabric-bind-failure { value 104; + description "fabricBindFailure"; } - - // noTrunkOperVsansIsolation enum no-trunk-oper-vsans-isolation { value 105; + description "noTrunkOperVsansIsolation"; } - - // ficonVsanDown enum ficon-vsan-down { value 106; + description "ficonVsanDown"; } - - // invalidAttachment enum invalid-attachment { value 107; + description "invalidAttachment"; } - - // portBlocked enum port-blocked { value 108; + description "portBlocked"; } - - // incompatibleAdminRxbbcreditPerformanceBuf enum incompatible-admin-rxbbcredit-performance-buf { value 109; + description "incompatibleAdminRxbbcreditPerformanceBuf"; } - - // tooManyInvalidFlogis enum too-many-invalid-flogis { value 110; + description "tooManyInvalidFlogis"; } - - // deniedDueToPortBinding enum denied-due-to-port-binding { value 111; + description "deniedDueToPortBinding"; } - - // elpFailureRevisionMismatch enum elp-failure-revision-mismatch { value 112; + description "elpFailureRevisionMismatch"; } - - // elpFailureClassfParamErr enum elp-failure-classf-param-err { value 113; + description "elpFailureClassfParamErr"; } - - // elpFailureClassnParamErr enum elp-failure-classn-param-err { value 114; + description "elpFailureClassnParamErr"; } - - // elpFailureUnknownFlowCtlCode enum elp-failure-unknown-flow-ctl-code { value 115; + description "elpFailureUnknownFlowCtlCode"; } - - // elpFailureInvalidFlowCtlParam enum elp-failure-invalid-flow-ctl-param { value 116; + description "elpFailureInvalidFlowCtlParam"; } - - // elpFailureInvalidPortName enum elp-failure-invalid-port-name { value 117; + description "elpFailureInvalidPortName"; } - - // elpFailureInvalidSwitchName enum elp-failure-invalid-switch-name { value 118; + description "elpFailureInvalidSwitchName"; } - - // elpFailureRatovEdtovMismatch enum elp-failure-ratov-edtov-mismatch { value 119; + description "elpFailureRatovEdtovMismatch"; } - - // elpFailureLoopbackDetected enum elp-failure-loopback-detected { value 120; + description "elpFailureLoopbackDetected"; } - - // elpFailureInvalidTxBbcredit enum elp-failure-invalid-tx-bbcredit { value 121; + description "elpFailureInvalidTxBbcredit"; } - - // elpFailureInvalidPayloadSize enum elp-failure-invalid-payload-size { value 122; + description "elpFailureInvalidPayloadSize"; } - - // bundleMiscfg enum bundle-miscfg { value 123; + description "bundleMiscfg"; } - - // bitErrRtThresExceeded enum bit-err-rt-thres-exceeded { value 124; + description "bitErrRtThresExceeded"; } - - // linkFailLinkReset enum link-fail-link-reset { value 125; + description "linkFailLinkReset"; } - - // linkFailPortInitFailed enum link-fail-port-init-failed { value 126; + description "linkFailPortInitFailed"; } - - // linkFailPortUnusable enum link-fail-port-unusable { value 127; + description "linkFailPortUnusable"; } - - // linkFailLossOfSignal enum link-fail-loss-of-signal { value 128; + description "linkFailLossOfSignal"; } - - // linkFailLossOfSync enum link-fail-loss-of-sync { value 129; + description "linkFailLossOfSync"; } - - // linkFailNosRcvd enum link-fail-nos-rcvd { value 130; + description "linkFailNosRcvd"; } - - // linkFailOlsRcvd enum link-fail-ols-rcvd { value 131; + description "linkFailOlsRcvd"; } - - // linkFailDebounceTimeout enum link-fail-debounce-timeout { value 132; + description "linkFailDebounceTimeout"; } - - // linkFailLrRcvdB2b enum link-fail-lr-rcvd-b2b { value 133; + description "linkFailLrRcvdB2b"; } - - // linkFailCreditLoss enum link-fail-credit-loss { value 134; + description "linkFailCreditLoss"; } - - // linkFailRxQueOverflow enum link-fail-rx-que-overflow { value 135; + description "linkFailRxQueOverflow"; } - - // linkFailTooManyIntr enum link-fail-too-many-intr { value 136; + description "linkFailTooManyIntr"; } - - // linkFailLipRcvdB2b enum link-fail-lip-rcvd-b2b { value 137; + description "linkFailLipRcvdB2b"; } - - // linkFailCreditLossB2b enum link-fail-credit-loss-b2b { value 138; + description "linkFailCreditLossB2b"; } - - // linkFailOpnyTmoB2b enum link-fail-opny-tmo-b2b { value 139; + description "linkFailOpnyTmoB2b"; } - - // linkFailOpnyRetB2b enum link-fail-opny-ret-b2b { value 140; + description "linkFailOpnyRetB2b"; } - - // linkFailLipF8Rcvd enum link-fail-lip-f8-rcvd { value 141; + description "linkFailLipF8Rcvd"; } - - // linkFailLineCardPortShutdown enum link-fail-line-card-port-shutdown { value 142; + description "linkFailLineCardPortShutdown"; } - - // fcspAuthentFailure enum fcsp-authent-failure { value 143; + description "fcspAuthentFailure"; } - - // ohmsExternalLbTest enum ohms-external-lb-test { value 144; + description "ohmsExternalLbTest"; } - - // invalidFabricBindingExchange enum invalid-fabric-binding-exchange { value 145; + description "invalidFabricBindingExchange"; } - - // tovMismatch enum tov-mismatch { value 146; + description "tovMismatch"; } - - // ficonNotEnabled enum ficon-not-enabled { value 147; + description "ficonNotEnabled"; } - - // ficonNoPortnumber enum ficon-no-portnumber { value 148; + description "ficonNoPortnumber"; } - - // ficonBeingEnabled enum ficon-being-enabled { value 149; + description "ficonBeingEnabled"; } - - // eportProhibited enum eport-prohibited { value 150; + description "eportProhibited"; } - - // trunkNotFullyActive enum trunk-not-fully-active { value 151; + description "trunkNotFullyActive"; } - - // fabricBindingSwwnNotFound enum fabric-binding-swwn-not-found { value 152; + description "fabricBindingSwwnNotFound"; } - - // fabricBindingDomainInvalid enum fabric-binding-domain-invalid { value 153; + description "fabricBindingDomainInvalid"; } - - // fabricBindingDatabaseMismatch enum fabric-binding-database-mismatch { value 154; + description "fabricBindingDatabaseMismatch"; } - - // fabricBindingPeerNotResponding enum fabric-binding-peer-not-responding { value 155; + description "fabricBindingPeerNotResponding"; } - - // trackedPortDown enum tracked-port-down { value 156; + description "trackedPortDown"; } - - // ecSuspendedForLoop enum ec-suspended-for-loop { value 157; + description "ecSuspendedForLoop"; } - - // isolateBundleMiscfg enum isolate-bundle-miscfg { value 158; + description "isolateBundleMiscfg"; } - - // peerNotSupportBundles enum peer-not-support-bundles { value 159; + description "peerNotSupportBundles"; } - - // portBringupIsolation enum port-bringup-isolation { value 160; + description "portBringupIsolation"; } - - // domainNotAllowedIsolation enum domain-not-allowed-isolation { value 161; + description "domainNotAllowedIsolation"; } - - // virtualIvrDomainOverlapIsolation enum virtual-ivr-domain-overlap-isolation { value 162; + description "virtualIvrDomainOverlapIsolation"; } - - // outOfService enum out-of-service { value 163; + description "outOfService"; } - - // bundleStdby enum bundle-stdby { value 164; + description "bundleStdby"; } - - // portCapFcPortConnectorTypeErr enum port-cap-fc-port-connector-type-err { value 165; + description "portCapFcPortConnectorTypeErr"; } - - // errorDisabledReinitLimitReached enum error-disabled-reinit-limit-reached { value 166; + description "errorDisabledReinitLimitReached"; } - - // ficonVsanDuplicatePortnum enum ficon-vsan-duplicate-portnum { value 167; + description "ficonVsanDuplicatePortnum"; } - - // internalRcfInProgress enum internal-rcf-in-progress { value 168; + description "internalRcfInProgress"; } - - // twoSwitchesWithSameWwn enum two-switches-with-same-wwn { value 169; + description "twoSwitchesWithSameWwn"; } - - // invalidOtherPrincEfpReqRecd enum invalid-other-princ-efp-req-recd { value 170; + description "invalidOtherPrincEfpReqRecd"; } - - // domainIsolationUnknownReason enum domain-isolation-unknown-reason { value 171; + description "domainIsolationUnknownReason"; } - - // elpFailureAllZeroPeerWwnRcvd enum elp-failure-all-zero-peer-wwn-rcvd { value 172; + description "elpFailureAllZeroPeerWwnRcvd"; } - - // preferedPathIsolation enum prefered-path-isolation { value 173; + description "preferedPathIsolation"; } - - // fcRedirectIsolation enum fc-redirect-isolation { value 174; + description "fcRedirectIsolation"; } - - // portActLicenseNotAvailable enum port-act-license-not-available { value 175; + description "portActLicenseNotAvailable"; } - - // sdmIsolation enum sdm-isolation { value 176; + description "sdmIsolation"; } - - // fcidAllocationFailed enum fcid-allocation-failed { value 177; + description "fcidAllocationFailed"; } - - // externallyDisabled enum externally-disabled { value 178; + description "externallyDisabled"; } - - // fcotReadError enum fcot-read-error { value 179; + description "fcotReadError"; } - - // portGuardDownOnLinkFailure enum port-guard-down-on-link-failure { value 180; + description "portGuardDownOnLinkFailure"; } - - // incompleteConfig enum incomplete-config { value 181; + description "incompleteConfig"; } - - // incompleteTunnelConfig enum incomplete-tunnel-config { value 182; + description "incompleteTunnelConfig"; } - - // hwProgrammingFailed enum hw-programming-failed { value 183; + description "hwProgrammingFailed"; } - - // tunnelDestNotReachable enum tunnel-dest-not-reachable { value 184; + description "tunnelDestNotReachable"; } - - // sfpInvalid enum sfp-invalid { value 185; + description "sfpInvalid"; } - - // tunnelVrfMismatch enum tunnel-vrf-mismatch { value 186; + description "tunnelVrfMismatch"; } - - // tunnelVrfFwRef enum tunnel-vrf-fw-ref { value 187; + description "tunnelVrfFwRef"; } - - // duplicateTunnelCfg enum duplicate-tunnel-cfg { value 188; + description "duplicateTunnelCfg"; } - - // primaryVlanDown enum primary-vlan-down { value 189; + description "primaryVlanDown"; } - - // dot1xSecurityErrdisable enum dot1x-security-errdisable { value 190; + description "dot1xSecurityErrdisable"; } - - // vfTaggingCapabilityErr enum vf-tagging-capability-err { value 191; + description "vfTaggingCapabilityErr"; } - - // portDisabled enum port-disabled { value 192; + description "portDisabled"; } - - // tunnelModeNotConfigured enum tunnel-mode-not-configured { value 193; + description "tunnelModeNotConfigured"; } - - // tunnelSourceNotConfigured enum tunnel-source-not-configured { value 194; + description "tunnelSourceNotConfigured"; } - - // tunnelDestinationNotConfigured enum tunnel-destination-not-configured { value 195; + description "tunnelDestinationNotConfigured"; } - - // tunnelUnable2resolveSourceIpaddress enum tunnel-unable2resolve-source-ipaddress { value 196; + description "tunnelUnable2resolveSourceIpaddress"; } - - // tunnelUnable2resolveDestinationIpaddress enum tunnel-unable2resolve-destination-ipaddress { value 197; + description "tunnelUnable2resolveDestinationIpaddress"; } - - // tunnelVrfIsDown enum tunnel-vrf-is-down { value 198; + description "tunnelVrfIsDown"; } - - // sifAdminDown enum sif-admin-down { value 199; + description "sifAdminDown"; } - - // phyIntfDown enum phy-intf-down { value 200; + description "phyIntfDown"; } - - // intfSifLimitExceeded enum intf-sif-limit-exceeded { value 201; + description "intfSifLimitExceeded"; } - - // insufficientPower enum insufficient-power { value 202; + description "insufficientPower"; } - - // noFcoe enum no-fcoe { value 203; + description "noFcoe"; } - - // dcxCompatMismatch enum dcx-compat-mismatch { value 204; + description "dcxCompatMismatch"; } - - // isolateBundleLimitExceeded enum isolate-bundle-limit-exceeded { value 205; + description "isolateBundleLimitExceeded"; } - - // sifNotBound enum sif-not-bound { value 206; + description "sifNotBound"; } - - // errDisableLacpMiscfg enum err-disable-lacp-miscfg { value 207; + description "errDisableLacpMiscfg"; } - - // errdisabledPktErr enum errdisabled-pkt-err { value 208; + description "errdisabledPktErr"; } - - // vlanVsanMappingNotEnabled enum vlan-vsan-mapping-not-enabled { value 209; + description "vlanVsanMappingNotEnabled"; } - - // stpNotForwardingInFcoeMappedVlan enum stp-not-forwarding-in-fcoe-mapped-vlan { value 210; + description "stpNotForwardingInFcoeMappedVlan"; } - - // moduleOffline enum module-offline { value 211; + description "moduleOffline"; } - - // stpInconsistVpcPeerlinkErrdisable enum stp-inconsist-vpc-peerlink-errdisable { value 212; + description "stpInconsistVpcPeerlinkErrdisable"; } - - // setPortStateFailedErrdisable enum set-port-state-failed-errdisable { value 213; + description "setPortStateFailedErrdisable"; } - - // tunnelSourceDown enum tunnel-source-down { value 214; + description "tunnelSourceDown"; } - - // cdpInfoNotAvail enum cdp-info-not-avail { value 215; + description "cdpInfoNotAvail"; } - - // fcotClkRateMismatch enum fcot-clk-rate-mismatch { value 216; + description "fcotClkRateMismatch"; } - - // portGuardDownOnTrustsecViolation enum port-guard-down-on-trustsec-violation { value 217; + description "portGuardDownOnTrustsecViolation"; } - - // waitForFlogi enum wait-for-flogi { value 218; + description "waitForFlogi"; } - - // npivNotEnabledInUpstream enum npiv-not-enabled-in-upstream { value 219; + description "npivNotEnabledInUpstream"; } - - // vsanMismatchWithUpstreamSwitchPort enum vsan-mismatch-with-upstream-switch-port { value 220; + description "vsanMismatchWithUpstreamSwitchPort"; } - - // portGuardBitErrorRate enum port-guard-bit-error-rate { value 221; + description "portGuardBitErrorRate"; } - - // portGuardSignalLoss enum port-guard-signal-loss { value 222; + description "portGuardSignalLoss"; } - - // portGuardSyncLoss enum port-guard-sync-loss { value 223; + description "portGuardSyncLoss"; } - - // portGuardLinkReset enum port-guard-link-reset { value 224; + description "portGuardLinkReset"; } - - // portGuardCreditLoss enum port-guard-credit-loss { value 225; + description "portGuardCreditLoss"; } - - // ipqosMgrPolicyAppFailed enum ipqos-mgr-policy-app-failed { value 226; + description "ipqosMgrPolicyAppFailed"; } - - // pauseRateLimitErrdisable enum pause-rate-limit-errdisable { value 227; + description "pauseRateLimitErrdisable"; } - - // lstgrpUplinkDown enum lstgrp-uplink-down { value 228; + description "lstgrpUplinkDown"; } - - // stickyDownOnLinkFailure enum sticky-down-on-link-failure { value 229; + description "stickyDownOnLinkFailure"; } - - // dcxMultipleMsapIdsErrdisable enum dcx-multiple-msap-ids-errdisable { value 230; + description "dcxMultipleMsapIdsErrdisable"; } - - // dcx100PdusRcvdNoackErrdisable enum dcx-100-pdus-rcvd-noack-errdisable { value 231; + description "dcx100PdusRcvdNoackErrdisable"; } - - // enmSatIncompatUplink enum enm-sat-incompat-uplink { value 232; + description "enmSatIncompatUplink"; } - - // enmLoopDetected enum enm-loop-detected { value 233; + description "enmLoopDetected"; } - - // subGroupIdNotAssigned enum sub-group-id-not-assigned { value 234; + description "subGroupIdNotAssigned"; } - - // vemUnlicensed enum vem-unlicensed { value 235; + description "vemUnlicensed"; } - - // profileNotFound enum profile-not-found { value 236; + description "profileNotFound"; } - - // vlanDoesNotExist enum vlan-does-not-exist { value 237; + description "vlanDoesNotExist"; } - - // vlanType enum vlan-type { value 238; + description "vlanType"; } - - // vlanDown enum vlan-down { value 239; + description "vlanDown"; } - - // vpcPeerUpgrade enum vpc-peer-upgrade { value 240; + description "vpcPeerUpgrade"; } - - // nonCiscoHbaVftag enum non-cisco-hba-vftag { value 241; + description "nonCiscoHbaVftag"; } - - // domainIdConfigMismatch enum domain-id-config-mismatch { value 242; + description "domainIdConfigMismatch"; } - - // xcvrAbsent enum xcvr-absent { value 243; + description "xcvrAbsent"; } - - // vfcBindingInvalid enum vfc-binding-invalid { value 244; + description "vfcBindingInvalid"; } - - // vlanNotFcoeEnabled enum vlan-not-fcoe-enabled { value 245; + description "vlanNotFcoeEnabled"; } - - // pvlanNativeVlanErr enum pvlan-native-vlan-err { value 246; + description "pvlanNativeVlanErr"; } - - // ethL2VlanDown enum eth-l2-vlan-down { value 247; + description "ethL2VlanDown"; } - - // ethIntfInvalidBinding enum eth-intf-invalid-binding { value 248; + description "ethIntfInvalidBinding"; } - - // pmonFailure enum pmon-failure { value 249; + description "pmonFailure"; } - - // l3NotReady enum l3-not-ready { value 250; + description "l3NotReady"; } - - // speedMismatch enum speed-mismatch { value 251; + description "speedMismatch"; } - - // flowcontrolMismatch enum flowcontrol-mismatch { value 252; + description "flowcontrolMismatch"; } - - // vdcMode enum vdc-mode { value 253; + description "vdcMode"; } - - // enmPinFailLinkDown enum enm-pin-fail-link-down { value 254; + description "enmPinFailLinkDown"; } - - // inactiveM1PortFpathAccessVlan enum inactive-m1-port-fpath-access-vlan { value 255; + description "inactiveM1PortFpathAccessVlan"; } } default "admin-down"; @@ -14024,6 +15005,37 @@ module Cisco-NX-OS-device { type uint32; } + // Packet timestamp Source id + typedef l1_PacketTimestampSourceId { + type uint32 { + range "0..8388606"; + } + default "0"; + } + + // Packet timestamping state whether enabled or disabled + typedef l1_PacketTimestampState { + type enumeration { + enum disable { + value 0; + description "Timestamp disabled"; + } + enum enable-ingress { + value 1; + description "Timestamp enabled in ingress"; + } + enum enable-egress { + value 2; + description "Timestamp enabled in egress"; + } + enum enable-both { + value 3; + description "Timestamp enable both in ingress and egress"; + } + } + default "disable"; + } + // Phy layer/Port type typedef l1_PhyLayer { type enumeration { @@ -14068,25 +15080,21 @@ module Cisco-NX-OS-device { // Port type Fabric : Type of port that the interface is facing typedef l1_PortTypeFabric { type enumeration { - - // no enum no { value 0; + description "no"; } - - // yes enum yes { value 1; + description "yes"; } } default "no"; } // Port usage - // Default Value computed from discovery typedef l1_PortUsage { - // bits- Using string type string; default "discovery"; } @@ -14138,65 +15146,61 @@ module Cisco-NX-OS-device { // Speed typedef l1_Speed { type enumeration { - - // Unspecified enum unknown { value 0; + description "Unspecified"; } - - // 100 Mbps enum 100M { value 2; + description "100 Mbps"; } - - // 1 Gbps enum 1G { value 3; + description "1 Gbps"; } - - // 10 Gbps enum 10G { value 4; + description "10 Gbps"; } - - // 40 Gbps enum 40G { value 5; + description "40 Gbps"; } - - // auto enum auto { value 6; + description "auto"; } - - // auto 100 Mbps enum auto_100M { value 7; + description "auto 100 Mbps"; } - - // auto 100 Mbps/1Gbps enum auto_100M_1G { value 8; + description "auto 100 Mbps/1Gbps"; } - - // 100 Gbps enum 100G { value 9; + description "100 Gbps"; } - - // 25G Gbps enum 25G { value 10; + description "25G Gbps"; } - - // 10 Mbps enum 10M { value 11; + description "10 Mbps"; } - - // 50 Gbps enum 50G { value 12; + description "50 Gbps"; + } + enum 200G { + value 13; + description "200 Gbps"; + } + enum 400G { + value 14; + description "400 Gbps"; } } default "auto"; @@ -14205,51 +15209,42 @@ module Cisco-NX-OS-device { // Speed Group typedef l1_SpeedGroup { type enumeration { - - // Unspecified enum unknown { value 0; + description "Unspecified"; } - - // 1 Gbps enum 1000 { value 3; + description "1 Gbps"; } - - // 25 Gbps enum 25000 { value 10; + description "25 Gbps"; } - - // 10 Gbps enum 10000 { value 4; + description "10 Gbps"; } - - // 40 Gbps enum 40000 { value 5; + description "40 Gbps"; } - - // auto enum auto { value 6; + description "auto"; } } default "auto"; } - // Default Value computed from none typedef l1_StormCtrlAct { - // bits- Using string type string; default "none"; } typedef l1_StormCtrlPPS { - // MAX Converted to int from 0xFFFFFFFF type uint32 { range "0..4294967295"; } @@ -14271,7 +15266,7 @@ module Cisco-NX-OS-device { // Storm Control Policer Packet Rate typedef l1_StormCtrlRate { type decimal64 { - fraction-digits 2; + fraction-digits 6; range "0..100"; } default "100"; @@ -14292,10 +15287,21 @@ module Cisco-NX-OS-device { typedef l1_SwitchportBlock { - // bits- Using string type string; } + typedef l1_SwitchportIsolated { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + typedef l1_SwitchportVirtualEthernetBridge { type enumeration { enum disable { @@ -14367,6 +15373,21 @@ module Cisco-NX-OS-device { default "unknown"; } + // Uni-Directional Ethernet whether enabled or disabled + typedef l1_UniDirectionalEthernet { + type enumeration { + enum disable { + value 0; + description "Disable UDE"; + } + enum send-only { + value 1; + description "UDE TX only"; + } + } + default "disable"; + } + // VDC state typedef l1_VdcSt { type enumeration { @@ -14384,11 +15405,11 @@ module Cisco-NX-OS-device { } // Voice VLAN COS - // Default Value "-1" Removed - out of range -1..7 typedef l1_VoicePortCos { type int8 { range "-1..7"; } + default "-1"; } // Voice VLAN Trust @@ -14408,25 +15429,21 @@ module Cisco-NX-OS-device { // Voice VLAN Type options typedef l1_VoiceVlanType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // tagged enum tagged { value 1; + description "tagged"; } - - // dot1p enum dot1p { value 2; + description "dot1p"; } - - // untagged enum untagged { value 3; + description "untagged"; } } default "none"; @@ -14450,15 +15467,13 @@ module Cisco-NX-OS-device { // mac-learn Cfg State typedef l1_switchportMacLearn { type enumeration { - - // Disabled enum disable { value 0; + description "Disabled"; } - - // Enabled enum enable { value 1; + description "Enabled"; } } default "enable"; @@ -14470,36 +15485,12 @@ module Cisco-NX-OS-device { } // User Configured Flags - // Default Value computed from none typedef l1_userCfgdFlags { - // bits- Using string type string; default "none"; } - // Subject represents the entitiy to which the capability constraint gets applied - typedef l1cap_Subj { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Port Channel - enum pc-namespace { - value 1; - } - - // Physical Ethernet Ports - enum ethport { - value 2; - } - } - default "unknown"; - } - // Vsan assoc state typedef l2_AssocOperSt { type enumeration { @@ -14516,15 +15507,13 @@ module Cisco-NX-OS-device { // BD bridging mode typedef l2_BridgeMode { type enumeration { - - // Bridge with IP enum ip { value 1; + description "Bridge with IP"; } - - // Bridge with MAC enum mac { value 2; + description "Bridge with MAC"; } } default "mac"; @@ -14560,10 +15549,8 @@ module Cisco-NX-OS-device { } // Domain controls - // Default Value computed from none typedef l2_DomCtrl { - // bits- Using string type string; default "none"; } @@ -14590,7 +15577,7 @@ module Cisco-NX-OS-device { typedef l2_DomOperId { type uint32 { - range "0..4096"; + range "0..16384"; } } @@ -14613,35 +15600,29 @@ module Cisco-NX-OS-device { // domain type typedef l2_DomType { type enumeration { - - // BD regular enum bd-regular { value 1; + description "BD regular"; } - - // BD reserved enum bd-reserved { value 2; + description "BD reserved"; } - - // BD control enum bd-control { value 3; + description "BD control"; } - - // BD external enum bd-external { value 4; + description "BD external"; } - - // Vlan circuit enum ckt-vlan { value 5; + description "Vlan circuit"; } - - // Vxlan circuit enum ckt-vxlan { value 6; + description "Vxlan circuit"; } } default "bd-regular"; @@ -14650,82 +15631,36 @@ module Cisco-NX-OS-device { // Enforcement preference typedef l2_EnfPref { type enumeration { - - // Software enum sw { value 1; + description "Software"; } - - // Hardware enum hw { value 2; + description "Hardware"; } } default "hw"; } - typedef l2_EtherType { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // ARP - enum arp { - value 2054; - } - - // Trill - enum trill { - value 8947; - } - - // MPLS Unicast - enum mpls_ucast { - value 34887; - } - - // MAC Security - enum mac_security { - value 35045; - } - - // FCOE - enum fcoe { - value 35078; - } - - // IP - enum ip { - value 43981; - } - } - default "unspecified"; - } - // Fex chassis Id typedef l2_ExtChasId { type uint16 { - range "100..200"; + range "0..199"; } + default "0"; } // BD forwarding controls - // Default Value computed from mdst-flood typedef l2_FwdCtrl { - // bits- Using string type string; default "mdst-flood"; } // BD forwarding mode - // Default Value computed from route,bridge typedef l2_FwdMode { - // bits- Using string type string; default "route,bridge"; } @@ -14733,40 +15668,33 @@ module Cisco-NX-OS-device { // Port type typedef l2_MacInfo { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Drop enum drop { value 1; + description "Drop"; } - - // SVI DOWN FLOOD enum svi-down-flood { value 2; + description "SVI DOWN FLOOD"; } - - // SUP INBAND CFSOE enum sup-inband-cfsoe { value 3; + description "SUP INBAND CFSOE"; } - - // VPC peer-link enum vpc-peer-link { value 4; + description "VPC peer-link"; } - - // NVE enum nve { value 5; + description "NVE"; } - - // SUP-ETH enum sup-eth { value 6; + description "SUP-ETH"; } } default "standard"; @@ -14775,238 +15703,313 @@ module Cisco-NX-OS-device { // Mac type typedef l2_MacType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Primary enum primary { value 1; + description "Primary"; } - - // Gateway enum gateway { value 2; + description "Gateway"; } - - // Overlay enum overlay { value 4; + description "Overlay"; } - - // Primary MAC using VPC peer-link enum primary-vpc-peer { value 5; + description "Primary MAC using VPC peer-link"; } - - // Control Plane enum control-plane { value 6; + description "Control Plane"; } - - // VSAN enum vsan { value 7; + description "VSAN"; } } default "primary"; } - typedef l2_Mode { + // Mac Packet Classify + typedef l2_PktClassify { type enumeration { - - // F - enum F { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } + } + default "disable"; + } - // NP - enum NP { + // Private-vlan types + typedef l2_PvlanTypes { + type enumeration { + enum isolated { value 1; + description "isolated"; } - - // E - enum E { + enum community { value 2; + description "community"; } - - // TF - enum TF { + enum primary { value 3; + description "primary"; } - - // TNP - enum TNP { + enum nonOperational { value 4; + description "non operational"; } } - default "F"; + default "nonOperational"; } - // Native type - typedef l2_NativeT { + typedef l2_UserDefinedLimit { + type uint32 { + range "16..256"; + } + default "16"; + } + + // vdc id + typedef l2_VdcId { + type uint16 { + range "1..4096"; + } + } + + typedef l2_VlanBitmap { + type mtx_array_bit; + } + + // xconnect state + typedef l2_XConnect { type enumeration { - enum regular { - value 0; - } - enum native { + enum enable { value 1; } - enum untagged { - value 2; + enum disable { + value 0; } } - default "regular"; + default "disable"; } - // Private-vlan types - typedef l2_PvlanTypes { + // Subject represents the entitiy to which the capability constraint gets applied + typedef l2cap_Subj { type enumeration { - - // default - enum default { + enum unknown { value 0; + description "Unknown"; } - - // primary - enum primary { + enum vxlan-namespace { value 1; + description "VXLAN"; } - - // community - enum community { + enum nvgre-namespace { value 2; + description "NVGRE"; } - - // isolated - enum isolated { + enum domain-namespace { value 3; + description "L2 Domain (Bridge Domain, Circuit, VLAN)"; + } + enum tunnel-namespace { + value 4; + description "Tunnel Interface"; } } - default "default"; + default "unknown"; } - typedef l2_TrafficMapCfgSt { + typedef l2fm_GuardVpcPeergwMac { type enumeration { - - // Traffic Map Configuration Success - enum config-success { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } + } + default "disable"; + } - // Traffic Map Configuration Failed - enum config-failure { + // mac-learn Cfg State + typedef l2fm_Learning { + type enumeration { + enum enable { value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; } } - default "config-success"; + default "enable"; } - // Admin Trunking mode - typedef l2_TrunkMode { + typedef l2fm_LoopDetect { type enumeration { - enum off { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } - enum on { + } + default "disable"; + } + + typedef l2fm_MacMoveNotification { + type enumeration { + enum enable { value 1; + description "Enabled"; } - enum auto { - value 2; + enum disable { + value 0; + description "Disabled"; } } - default "on"; + default "enable"; } - // vdc id - typedef l2_VdcId { + typedef l2pt_Cos { type uint16 { - range "1..4096"; + range "0..7"; } + default "5"; } - typedef l2_VlanBitmap { - type mtx_array_bit; + typedef l2pt_Threshold { + type uint32 { + range "0..4096"; + } + default "0"; } - // xconnect state - typedef l2_XConnect { + typedef l2rib_EncapTypeT { type enumeration { - enum enable { + enum none { + value 0; + } + enum vxlan { value 1; } - enum disable { - value 0; + enum segment-routing { + value 2; } } - default "disable"; } - typedef l2_disablefka { - type enumeration { + typedef l2rib_GenericFlagsT { + + type string; + } - // disable FKA Not Set - enum not_set { + typedef l2rib_MacIpRtFlagsT { + + type string; + } + + typedef l2rib_MacRtFlagsT { + + type string; + } + + typedef l2rib_MacRtResolutionT { + type enumeration { + enum mac-res-unknown { value 0; + description + "MAC resolution unknown; do not use paths + from MAC route"; } - - // disable FKA set - enum set { + enum mac-res-regular { value 1; + description "Do not resolve; use paths from MAC route"; + } + enum mac-res-esi { + value 2; + description "ESI resolution via EAD routes for EVPN"; + } + enum mac-res-bmac { + value 3; + description "Populate path-lists indexed by BMAC address."; + } + enum mac-res-peer-sync { + value 4; + description + "Routes from the ESI-peer. + No need for Peerid/ESI resolution"; } } - default "set"; } - // Subject represents the entitiy to which the capability constraint gets applied - typedef l2cap_Subj { + typedef l2rib_ProducerStT { type enumeration { - - // Unknown - enum unknown { + enum initial { value 0; + description "Producer was created on BIND event"; } - - // VXLAN - enum vxlan-namespace { + enum staled { value 1; + description "Producer is disconnected"; } - - // NVGRE - enum nvgre-namespace { + enum reconnected { value 2; + description + "Producer reconnected before expiration of + purge timer"; } - - // L2 Domain (Bridge Domain, Circuit, VLAN) - enum domain-namespace { + enum converged { value 3; + description "Producer got EOC"; } - - // Tunnel Interface - enum tunnel-namespace { + enum delete-pending { value 4; + description "Producer waiting for deletion"; } } - default "unknown"; } - // mac-learn Cfg State - typedef l2fm_Learning { - type enumeration { + typedef l2rib_TopoFlagsT { - // Enabled - enum enable { - value 1; - } + type string; + } - // Disabled - enum disable { + typedef l2rib_TopoSubFlagsT { + + type string; + } + + // Topology + typedef l2rib_TopoTypeT { + type enumeration { + enum none { value 0; } + enum vni { + value 1; + } + enum evi { + value 2; + } } - default "enable"; } // BGP RD Size based off of BGP_RD_LEN @@ -15017,20 +16020,17 @@ module Cisco-NX-OS-device { // Context type typedef l3_CtxT { type enumeration { - - // Out of band management enum oob-mgmt { value 1; + description "Out of band management"; } - - // Inband management enum inb-mgmt { value 2; + description "Inband management"; } - - // Tenant enum tenant { value 3; + description "Tenant"; } } default "tenant"; @@ -15044,6 +16044,39 @@ module Cisco-NX-OS-device { default "0"; } + // Maximum Prefix + typedef l3_MaxLmt { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + typedef l3_MaxRtAct { + type enumeration { + enum log { + value 1; + description "Log"; + } + enum shut { + value 2; + description "Shutdown"; + } + enum reinstall { + value 3; + description "Reinstall"; + } + } + default "shut"; + } + + typedef l3_MaxRtThresh { + type uint8 { + range "1..100"; + } + default "100"; + } + // ttl typedef l3_Ttl { type uint8 { @@ -15102,13 +16135,15 @@ module Cisco-NX-OS-device { // VRF id typedef l3_VrfId { type uint16 { - range "1..65535"; + range "0..65535"; } + default "0"; } // VRF name typedef l3_VrfName { type string { + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } } @@ -15153,34 +16188,42 @@ module Cisco-NX-OS-device { // Subject represents the entitiy to which the capability constraint gets applied typedef l3cap_Subj { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VRF enum vrf-namespace { value 1; + description "VRF"; } - - // LOOPBACK enum lb-namespace { value 2; + description "LOOPBACK"; } - - // NN enum rdnn-namespace { value 3; + description "NN"; } } default "unknown"; } + // l3vm sdb as-format + typedef l3vm_AsFormatType { + type enumeration { + enum asplain { + value 0; + } + enum asdot { + value 1; + } + } + default "asplain"; + } + // Port typedef l4_Port { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -15190,20 +16233,18 @@ module Cisco-NX-OS-device { // Activity flags typedef lacp_ActivityFlags { - // bits- Using string type string; } // Operational key typedef lacp_Key { type uint16 { - range "1..65535"; + range "0..65535"; } } typedef lacp_LACPInstCtrl { - // bits- Using string type string; } @@ -15238,15 +16279,13 @@ module Cisco-NX-OS-device { // Pseudo VPC role typedef lacp_SysRole { type enumeration { - - // Primary enum primary { value 1; + description "Primary"; } - - // Secondary enum secondary { value 2; + description "Secondary"; } } default "primary"; @@ -15255,20 +16294,217 @@ module Cisco-NX-OS-device { // Transmit rate typedef lacp_TxRate { type enumeration { - - // Normal enum normal { value 1; + description "Normal"; } - - // Fast enum fast { value 2; + description "Fast"; } } default "normal"; } + typedef lcm_EcmpTemplateL3vpn { + type enumeration { + enum no { + value 0; + description "Ecmp template l3vpn - no"; + } + enum yes { + value 1; + description "Ecmp template l3vnp - yes"; + } + } + default "no"; + } + + // Logging level type + typedef lcm_LoggingLevel { + type uint16 { + range "0..7"; + } + default "5"; + } + + // Logging Level + typedef lcm_LoggingType { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; + } + } + default "Notification"; + } + + typedef lcm_ModuleEmonEnhanced { + type enumeration { + enum disable { + value 0; + description "disable emon enhanced mode"; + } + enum enable { + value 1; + description "enable emon enhanced mode"; + } + } + default "enable"; + } + + typedef lcm_ModuleEmonEnhancedSlowTimeout { + type enumeration { + enum disable { + value 0; + description "disable emon enhanced slow timeout mode"; + } + enum enable { + value 1; + description "enable emon enhanced slow timeout mode"; + } + } + default "enable"; + } + + typedef lcm_ModuleFailureAction { + type enumeration { + enum no { + value 0; + description "action on failure - no"; + } + enum shutdown { + value 1; + description "action on failure - shutdown"; + } + } + default "no"; + } + + typedef lcm_MulticastOptimization { + type enumeration { + enum enable { + value 0; + description "enable multicast optimization"; + } + enum disable { + value 1; + description "disable multicast optimization"; + } + } + default "enable"; + } + + // port range + typedef lcm_PortRange { + type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*)"; + } + default "1-54"; + } + + typedef lcm_PortType { + type enumeration { + enum fc { + value 1; + description "Port type FC"; + } + enum ethernet { + value 2; + description "Port type Ethernet"; + } + } + default "ethernet"; + } + + typedef lcm_ProfAclEgExt { + type enumeration { + enum no { + value 0; + description "hardware profile acl-eg-ext - no"; + } + enum yes { + value 1; + description "hardware profile acl-eg-ext - yes"; + } + } + default "no"; + } + + typedef lcm_ProfAclStats { + type enumeration { + enum no { + value 0; + description "hardware profile acl-stats - no"; + } + enum yes { + value 1; + description "hardware profile acl-stats - yes"; + } + } + default "no"; + } + + typedef lcm_ProfModAllId { + type uint16 { + range "0..32"; + } + default "0"; + } + + typedef lcm_ProfVxlanMpls { + type enumeration { + enum no { + value 0; + description "hardware profile vxlan/mpls - no"; + } + enum vxlan { + value 1; + description "hardware profile vxlan/mpls - vxlan"; + } + enum mpls { + value 2; + description "hardware profile vxlan/mpls - mpls"; + } + } + default "no"; + } + + typedef lcm_moduleNumber { + type uint16 { + range "1..32"; + } + default "1"; + } + // Adjacency Id typedef lldp_AdjId { type uint16 { @@ -15279,15 +16515,13 @@ module Cisco-NX-OS-device { // Administrative state typedef lldp_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -15296,7 +16530,6 @@ module Cisco-NX-OS-device { // Capability typedef lldp_Capability { - // bits- Using string type string; } @@ -15310,6 +16543,24 @@ module Cisco-NX-OS-device { type string; } + typedef lldp_DCBXPVerType { + type enumeration { + enum auto { + value 0; + description "Auto-Detect"; + } + enum CEE { + value 2; + description "CEE"; + } + enum IEEE { + value 3; + description "IEEE 802.1"; + } + } + default "auto"; + } + // Hold time typedef lldp_HoldTime { type uint16 { @@ -15329,7 +16580,7 @@ module Cisco-NX-OS-device { // Management ip typedef lldp_MgmtIp { type address_Ip; - default "0"; + default "0.0.0.0"; } typedef lldp_MgmtVlanId { @@ -15345,25 +16596,21 @@ module Cisco-NX-OS-device { } // Optional TLV Selectors - // Default Value computed from port-desc,sys-name,sys-desc,sys-cap,mgmt-addr-v4,mgmt-addr-v6,port-vlan,dcbxp,power-mgmt typedef lldp_OptTlvSel { - // bits- Using string type string; default "port-desc,sys-name,sys-desc,sys-cap,mgmt-addr-v4,mgmt-addr-v6,port-vlan,dcbxp,power-mgmt"; } typedef lldp_PortIdSubType { type enumeration { - - // Long interface name enum long { value 0; + description "Long interface name"; } - - // Short interface name enum short { value 1; + description "Short interface name"; } } default "long"; @@ -15398,6 +16645,23 @@ module Cisco-NX-OS-device { default "30"; } + typedef logging_LoggingEnableAll { + type enumeration { + enum unspecified { + value 0; + description "Unspecified logging level"; + } + enum enableall { + value 1; + description "Logging enable for all"; + } + enum disableall { + value 2; + description "No logging enable for all"; + } + } + } + // meter config burst size typedef m6rib_BurstSize { type uint32; @@ -15407,20 +16671,17 @@ module Cisco-NX-OS-device { // Database type typedef m6rib_DbT { type enumeration { - - // Client database enum client { value 0; + description "Client database"; } - - // Memory Estimate database enum memest { value 1; + description "Memory Estimate database"; } - - // Vrf details enum vrf { value 2; + description "Vrf details"; } } } @@ -15428,55 +16689,45 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef m6rib_EhType { type enumeration { - - // cli events for m6rib enum cli { value 0; + description "cli events for m6rib"; } - - // MDT events for m6rib enum mdt { value 1; + description "MDT events for m6rib"; } - - // MFDM debugs events for m6rib enum mfdmDebugs { value 2; + description "MFDM debugs events for m6rib"; } - - // MFDM-events events for m6rib enum mfdmEvents { value 3; + description "MFDM-events events for m6rib"; } - - // MFDM stats events for m6rib enum mfdmStats { value 4; + description "MFDM stats events for m6rib"; } - - // notify-clients events for m6rib enum notyClients { value 5; + description "notify-clients events for m6rib"; } - - // RIB events for m6rib enum rib { value 6; + description "RIB events for m6rib"; } - - // rib-summary events for m6rib enum ribSum { value 7; + description "rib-summary events for m6rib"; } - - // urib-debugs events for m6rib enum urib { value 8; + description "urib-debugs events for m6rib"; } - - // VRF events for m6rib enum vrf { value 9; + description "VRF events for m6rib"; } } } @@ -15484,15 +16735,13 @@ module Cisco-NX-OS-device { // Administrative state typedef m6rib_HoldAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -15501,9 +16750,9 @@ module Cisco-NX-OS-device { // Multicast Holddown type typedef m6rib_HoldDownType { type uint16 { - range "90..210"; + range "0..270"; } - default "210"; + default "270"; } // Notify Interval type @@ -15527,26 +16776,172 @@ module Cisco-NX-OS-device { } } + typedef m6rib_MfdmSize { + type uint32 { + range "50..500"; + } + default "50"; + } + + // Multipath Mode + typedef m6rib_MultipathMode { + type enumeration { + enum none { + value 1; + description "multiple path none"; + } + enum s-g-hash { + value 2; + description "Hash based on Source and Group address"; + } + } + default "s-g-hash"; + } + + // Multicast Resilient type + typedef m6rib_ResilientType { + type boolean; + default "false"; + } + // Event History Buffer size in Text/kb typedef m6rib_Size { type uint32 { - range "0..4 | 2097152..10485760"; + range "0..4 | 5..4294967295"; } default "5242880"; } + typedef m6rib_TraceCountType { + type uint32 { + range "0..4294967295"; + } + } + + // Cipher Suite + typedef macsec_CipherSuite { + type enumeration { + enum GCM-AES-128 { + value 1; + description "128 bit GCM-AES Suite"; + } + enum GCM-AES-256 { + value 2; + description "256 bit GCM-AES Suite"; + } + enum GCM-AES-XPN-128 { + value 3; + description "128 bit GCM-AES Suite with Extended Packet Numbering"; + } + enum GCM-AES-XPN-256 { + value 4; + description "256 bit GCM-AES Suite with Extended Packet Numbering"; + } + } + default "GCM-AES-XPN-256"; + } + + // Confidentiality Offset + typedef macsec_ConfOffset { + type enumeration { + enum CONF-OFFSET-0 { + value 1; + description "Skip 0 bytes"; + } + enum CONF-OFFSET-30 { + value 2; + description "Skip 30 bytes"; + } + enum CONF-OFFSET-50 { + value 3; + description "Skip 50 bytes"; + } + } + default "CONF-OFFSET-0"; + } + + // Ether Type + typedef macsec_EtherType { + type uint32; + default "34958"; + } + + // Include icv indicator + typedef macsec_IncludeIcvParam { + type boolean; + default "false"; + } + + // KeyChain Name + typedef macsec_KeyChainName { + type string { + pattern ".*[!-~]{0,63}.*"; + } + } + + // Key Server Priority + typedef macsec_KeySvrPrio { + type uint8 { + range "0..255"; + } + default "16"; + } + + // Macsec Shutdown + typedef macsec_MacsecShutdown { + type boolean; + default "true"; + } + + // Policy Name + typedef macsec_PolicyName { + type string { + pattern ".*[a-zA-Z0-9-$_]{1,32}.*"; + } + default "system-default-macsec-policy"; + } + + // Replay Protection Window Size + typedef macsec_ReplayWindow { + type uint32 { + range "0..596000000"; + } + default "148809600"; + } + + // SAK Rekey Frequency in seconds + typedef macsec_SakExpiryTime { + type uint32 { + range "0..2592000"; + } + default "0"; + } + + // Security Policy + typedef macsec_SecPolicy { + type enumeration { + enum must-secure { + value 0; + description "Must secure mode"; + } + enum should-secure { + value 1; + description "Should secure mode"; + } + } + default "should-secure"; + } + // Filter mode, valid only with v3 typedef mcast_FiltMode { type enumeration { - - // Include enum include { value 1; + description "Include"; } - - // Exclude enum exclude { value 2; + description "Exclude"; } } default "include"; @@ -15557,14 +16952,6 @@ module Cisco-NX-OS-device { type address_Ip; } - // Group timeout - typedef mcast_GrpTimeout { - type uint16 { - range "0 | 1..10080"; - } - default "10080"; - } - // Holddown-timer typedef mcast_HolddownTimer { type uint16 { @@ -15621,7 +17008,6 @@ module Cisco-NX-OS-device { // Querier timeout typedef mcast_QuerierTimeout { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -15631,9 +17017,8 @@ module Cisco-NX-OS-device { // Query count typedef mcast_QueryCnt { type uint8 { - range "1..10"; + range "0..10"; } - default "2"; } // Query interval @@ -15647,7 +17032,7 @@ module Cisco-NX-OS-device { // Query response interval typedef mcast_QueryRspIntvl { type uint16 { - range "1..25"; + range "1..8387"; } default "10"; } @@ -15668,18 +17053,16 @@ module Cisco-NX-OS-device { // Startup Query interval typedef mcast_StartQueryIntvl { type uint16 { - range "1..18000"; + range "0..18000"; } - default "31"; } // Version typedef mcast_Ver { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } } } @@ -15687,32 +17070,55 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef mcastfwd_EhType { type enumeration { - - // Represents Internal Events For Mcast Forwarding enum internal { value 0; + description "Represents Internal Events For Mcast Forwarding"; } - - // CLI Events for Mcast forwarding enum cli { value 1; + description "CLI Events for Mcast forwarding"; } - - // Packet Events for Mcast forwarding enum packet { value 2; + description "Packet Events for Mcast forwarding"; } - - // VRF Events for Mcast forwarding enum vrf { value 3; + description "VRF Events for Mcast forwarding"; } - - // L2 Events for Mcast Forwarding enum l2 { value 4; + description "L2 Events for Mcast Forwarding"; + } + enum nbm { + value 5; + description "NBM Events for Mcast Forwarding"; + } + } + } + + typedef mcastfwd_Level { + type uint32 { + range "0..7"; + } + } + + typedef mcastfwd_LvlType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum mfwd { + value 1; + description "Log level for multi forwarding"; + } + enum mcastfwd { + value 2; + description "Log level for multicast forwarding"; } } + default "none"; } // Event History Buffer size in Text @@ -15723,147 +17129,267 @@ module Cisco-NX-OS-device { default "3"; } - // Loop detection multiplier - typedef mcp_LoopDetectMult { - type uint8 { - range "1..32"; + typedef mcastfwd_SwRep { + type enumeration { + enum none { + value 0; + description "None"; + } + enum swasm { + value 1; + description "Software replication of PIM ASM leak packets"; + } + enum swiif { + value 2; + description "Software replication on incoming interface"; + } } - default "3"; + default "none"; } - // Operational state - typedef mcp_OperSt { + // Event History Buffer Type + typedef mld_EhType { type enumeration { - - // Initializing - enum init { + enum cli { value 0; + description "CLI events for MLD"; } - - // Forwarding - enum up { + enum debugs { value 1; + description "Debugs event for MLD"; } - - // Down - enum down { + enum ha { + value 2; + description "HA events for MLD"; + } + enum events { value 3; + description "Events for MLD"; + } + enum vrf { + value 4; + description "VRF events for MLD"; } } - default "init"; } - // Transmission frequency - typedef mcp_TxFreq { - type uint16 { - range "2..300"; + // Event History Buffer size in Text + typedef mld_Size { + type uint32 { + range "0..4 | 5..4294967295"; } - default "2"; + default "3"; } - typedef mit_LockStatus { + // Version + typedef mld_Ver { type enumeration { + enum v1 { + value 1; + description "Version 1"; + } + enum v2 { + value 2; + description "Version 2"; + } + } + default "v2"; + } - // MIT_UNLOCKED - enum mit_unlocked { + // Event History Buffer Type + typedef mldsnoop_EhType { + type enumeration { + enum mld-snoop-internal { value 0; + description "Represents Internal Events For MLD-Snooping"; } - - // MIT_LOCKED - enum mit_locked { + enum mfdm { value 1; + description "MFDM Events for MLD-Snooping"; + } + enum mfdm-sum { + value 2; + description "MFDM-SUM Events for MLD-Snooping"; + } + enum rib { + value 3; + description "RIB Events for MLD-Snooping"; + } + enum vlan { + value 4; + description "VLAN/BD Events for MLD-Snooping"; + } + enum vlan-events { + value 5; + description "VLAN/BD events for MLD-Snooping"; } + enum vpc { + value 6; + description "VPC Events for MLD-Snooping"; + } + } + } + + // Mld snooping global config enable/disable + typedef mldsnoop_MldSnoopGl { + type boolean; + default "false"; + } + + // Mld snooping per vlan enable/disable + typedef mldsnoop_MldSnoopVlan { + type boolean; + default "true"; + } + + // Route Map Name + typedef mldsnoop_RtMapType { + type string { + length "0..63"; + } + } + + // Event History Buffer size in Text + typedef mldsnoop_Size { + type uint32 { + range "0..4 | 5..119999999"; } + default "0"; + } + + // v2 report suppression + typedef mldsnoop_V2ReportSuppr { + type boolean; + default "false"; } - typedef mit_OperType { + // Version + typedef mldsnoop_Ver { type enumeration { + enum v1 { + value 1; + description "Version 1"; + } + enum v2 { + value 2; + description "Version 2"; + } + } + default "v2"; + } - // COMMIT_VERIFY - enum commit_verify { + // Maintenance Mode Action Status Type + typedef mmode_MaintModeActionStatusType { + type enumeration { + enum unknown { value 0; + description "Unknown"; } - - // COMMIT_NORMAL - enum commit_normal { + enum success { value 1; + description "SUCCESS"; } - - // COMMIT_CONFIRM_START - enum commit_confirm_start { + enum failed { value 2; + description "Failed"; } - - // COMMIT_CONFRIM_END - enum commit_confirm_end { + enum gen-profile { + value 3; + description "Generate Profile"; + } + enum confirm-profile { value 4; + description "Confirm Profile"; } - - // COMMIT_RESET_TIMEOUT - enum commit_reset_timeout { - value 8; + enum taking-snapshot { + value 5; + description "Taking Snapshot"; } - - // COMMIT_CONFRIM_CANCEL - enum commit_confirm_cancel { - value 16; + enum applying-config { + value 6; + description "Applying Profile Config"; + } + enum waiting-delay { + value 7; + description "Waiting Delay"; } } - default "commit_normal"; + default "unknown"; } - // Enum type - typedef mit_TreeType { + // Maintenance Mode Action Type + typedef mmode_MaintModeActionType { type enumeration { - - // MIT_RUNNING - enum mit_running { + enum normal { value 0; + description "Nonmal"; } - - // MIT_CANDIDATE - enum mit_candidate { + enum maintenance { value 1; + description "Maintenance"; + } + enum maintenance-shutdown { + value 2; + description "Maintenance Shutdown"; + } + enum maintenance-dont-generate-profile { + value 3; + description "Maintenance Dont generate profile"; + } + enum normal-dont-generate-profile { + value 4; + description "Normal Dont generate profile"; } } + default "normal"; } - typedef mo_TStamp { - type string; - default "0"; - } - - // Duration in units of moc timer tick - typedef mock_Duration { - - // MAX Converted to int from 0xFFFFFFFF - type uint32 { - range "1..4294967295"; + // Maintenance Mode Type + typedef mmode_MaintModeType { + type enumeration { + enum normal { + value 0; + description "Normal"; + } + enum maintenance { + value 1; + description "Maintenance"; + } + enum unplanned-maintenance { + value 2; + description "Unplanned Maintenance"; + } } - default "1"; + default "normal"; } - // Represents the mode a Mock session - typedef mock_Mode { + // Maintenance Profile Type + typedef mmode_MaintProfileType { type enumeration { - enum Repeated { + enum normal-mode { value 0; + description "Normal-mode"; } - enum Once { + enum maintenance-mode { value 1; + description "Maintenance-mode"; } } - default "Repeated"; + default "normal-mode"; } - // Observable - typedef mock_Observable { - type string; + // Timeout Interval + typedef mmode_TimeoutInterval { + type uint16 { + range "5..65535"; + } } - // Counter Value - typedef mock_Value { - type uint64; + typedef mo_TStamp { + type union { + type string; + type uint64; + } default "0"; } @@ -15903,10 +17429,9 @@ module Cisco-NX-OS-device { // Database type typedef monitor_DbT { type enumeration { - - // IP endpoint resolution database enum ipep-resolve { value 1; + description "IP endpoint resolution database"; } } default "ipep-resolve"; @@ -15915,10 +17440,9 @@ module Cisco-NX-OS-device { // Destination encapsulation typedef monitor_DestEncapT { type enumeration { - - // Gre encapsulated enum gre { value 1; + description "Gre encapsulated"; } } default "gre"; @@ -15928,25 +17452,21 @@ module Cisco-NX-OS-device { // is monitored on the span source typedef monitor_Direction { type enumeration { - - // Incoming enum in { value 1; + description "Incoming"; } - - // Outgoing enum out { value 2; + description "Outgoing"; } - - // Both enum both { value 3; + description "Both"; } - - // None enum none { value 4; + description "None"; } } default "none"; @@ -15955,15 +17475,13 @@ module Cisco-NX-OS-device { // ErSpan Version typedef monitor_ErSpanVer { type enumeration { - - // Version 2 enum ver2 { value 2; + description "Version 2"; } - - // Version 3 enum ver3 { value 3; + description "Version 3"; } } default "ver3"; @@ -15980,15 +17498,13 @@ module Cisco-NX-OS-device { // Mode typedef monitor_Mode { type enumeration { - - // Access enum access { value 1; + description "Access"; } - - // Fabric enum fabric { value 2; + description "Fabric"; } } default "access"; @@ -16005,20 +17521,17 @@ module Cisco-NX-OS-device { // Operational state typedef monitor_OperSt { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } - - // Failed enum failed { value 3; + description "Failed"; } } default "down"; @@ -16034,7 +17547,6 @@ module Cisco-NX-OS-device { // Source id typedef monitor_SrcId { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -16043,20 +17555,17 @@ module Cisco-NX-OS-device { // Source type typedef monitor_SrcT { type enumeration { - - // Port enum port { value 1; + description "Port"; } - - // Encap enum encap { value 2; + description "Encap"; } - - // Port and encap enum port-encap { value 3; + description "Port and encap"; } } default "port"; @@ -16064,32 +17573,617 @@ module Cisco-NX-OS-device { typedef mpls_OperSt { type enumeration { - - // Down enum down { value 0; + description "Down - Administrative State of Interface"; } - - // Up enum up { value 1; + description "Up - Administrative State of Interface"; } } default "up"; } + // LDP advertisement prefix/peer ACL type + typedef mplsldp_AclType { + type string { + length "1..128"; + } + description "Prefix list to be used"; + } + + // Remote binding label + typedef mplsldp_BindingSummaryPeerType { + type string; + default "all"; + description "Binding summary peer value"; + } + + // Capability description + typedef mplsldp_CapabilityDescription { + type string { + length "4..40"; + } + description "LDP Capabilities Description"; + } + + // LDP to IGP sync delay time + typedef mplsldp_DelayTime { + type uint16 { + range "0..60"; + } + default "0"; + description "LDP to IGP sync achieved notification delay time"; + } + + // down neighbor status + typedef mplsldp_DownNeighborStatus { + type enumeration { + enum deletion_pending { + value 0; + description "Down Neighbor Status - Deletion Pending"; + } + enum waiting_for_reconnection { + value 1; + description "Down Neighbor Status - Waiting for Reconnection"; + } + enum recovering { + value 2; + description "Down Neighbor Status - Recovering"; + } + } + default "deletion_pending"; + description "LDP Down Neighbor Status"; + } + + // configuration parameters feature type + typedef mplsldp_FeatureType { + type string { + length "0..128"; + } + description "Supported feature types"; + } + + // configuration parameters feature set manager state type + typedef mplsldp_FeaturesetManagerStateType { + type string { + length "0..128"; + } + description "Feature set manager state"; + } + + // graceful restart forwarding hold time + typedef mplsldp_FwdHoldTime { + type uint16 { + range "30..600"; + } + default "120"; + description "LDP forwarding state holding time. Specifies the amount of time the MPLS forwarding state should be preserved after the control plane restarts."; + } + + // graceful restart state type + typedef mplsldp_GrStateType { + type enumeration { + enum enabled { + value 1; + description "Graceful restart is enabled"; + } + enum disabled { + value 2; + description "Graceful restart is disabled"; + } + } + default "disabled"; + description "Graceful Restart State"; + } + + // hello holdtime + typedef mplsldp_HelloHoldTime { + type uint16 { + range "1..65535"; + } + default "15"; + description "LDP discovery Hello holdtime"; + } + + // LDP IGP sync igp enable type + typedef mplsldp_IgpEnabledType { + type string { + length "0..255"; + } + description "IGP that Enabled Sync"; + } + + // initial backoff time + typedef mplsldp_InitBackoff { + type uint32 { + range "5..2147483"; + } + default "15"; + description "Initial session backoff time (seconds)"; + } + + // discovery interface enable status + typedef mplsldp_InterfaceEnableStatus { + type enumeration { + enum unknown { + value 0; + description "Interface Enable Status is unknown"; + } + enum Interface_Config { + value 1; + description "Interface Enable Status is Interface Config"; + } + enum IGP_Config { + value 2; + description "Interface Enable Status is IGP Config"; + } + enum Interface,_IGP_Config { + value 3; + description "Interface Enable Status is Interface, IGP Config"; + } + } + default "unknown"; + description "Discovery Interface Enable Status"; + } + + // discovery interface status + typedef mplsldp_InterfaceStatus { + type enumeration { + enum xmit/recv { + value 1; + description "Interface Status is xmit/recv"; + } + enum xmit { + value 2; + description "Interface Status is xmit"; + } + } + default "xmit"; + description "Discovery/Targeted Interface Status"; + } + + // discovery detail interface string type + typedef mplsldp_InterfaceString { + type string { + length "1..40"; + } + description "LDP basic discovery interface name"; + } + + // discovery detail source interface clients type + typedef mplsldp_IntfClients { + type enumeration { + enum Unknown { + value 0; + description "Discovery Interface Clients - Unknown"; + } + enum IPv4,_mLDP { + value 1; + description "Discovery Interface Clients - IPv4, mLDP"; + } + enum IPv4 { + value 2; + description "Discovery Interface Clients - IPv4"; + } + enum mLDP { + value 3; + description "Discovery Interface Clients - mLDP"; + } + } + default "Unknown"; + description "Discovery Interface Clients"; + } + + // hello interval time + typedef mplsldp_IntvlTime { + type uint16 { + range "1..65535"; + } + default "5"; + description "LDP discovery Hello interval"; + } + + typedef mplsldp_LabelAdvertisementModeType { + type string { + length "1..32"; + } + description "Label advertisement mode"; + } + + // Label allocate type + typedef mplsldp_LblAllocT { + type enumeration { + enum all-routes { + value 1; + description "Allocate local labels for all routes"; + } + enum host-routes { + value 2; + description "Allocate local labels for host routes only (default)"; + } + enum prefix-list { + value 3; + description "Specify a prefix-list for local label filtering"; + } + } + default "host-routes"; + } + + // LDP IGP sync peer reachable type + typedef mplsldp_LdpIgpPeerStatusType { + type enumeration { + enum peer_reachable { + value 1; + description "LDP IGP Synchronization Peer Reachable Status - Peer reachable"; + } + enum peer_not_reachable { + value 2; + description "LDP IGP Synchronization Peer Reachable Status - Peer not reachable"; + } + } + default "peer_not_reachable"; + description "LDP IGP Synchronization Peer Reachable Status"; + } + + // LDP IGP sync LDP status type + typedef mplsldp_LdpIgpStatusType { + type enumeration { + enum LDP_configured { + value 1; + description "LDP is configured"; + } + enum LDP_not_configured { + value 2; + description "LDP is not configured"; + } + } + default "LDP_not_configured"; + description "LDP IGP Synchronization Status"; + } + + // LDP IGP sync enable status type + typedef mplsldp_LdpIgpSyncEnableType { + type enumeration { + enum LDP_IGP_Synchronization_enabled { + value 1; + description "LDP-IGP Synchronization enabled"; + } + enum LDP_IGP_Synchronization_not_enabled { + value 2; + description "LDP-IGP Synchronization not enabled"; + } + } + default "LDP_IGP_Synchronization_not_enabled"; + description "LDP IGP Synchronization Enable Status"; + } + + // LDP IGP sync status type + typedef mplsldp_LdpIgpSyncStatusType { + type enumeration { + enum sync_achieved { + value 1; + description "LDP IGP Synchronization Sync Status - Sync achieved"; + } + enum sync_not_achieved { + value 2; + description "LDP IGP Synchronization Sync Status - Sync not achieved"; + } + } + default "sync_not_achieved"; + description "LDP IGP Synchronization Sync Status"; + } + + // discovery detail source interface LDP password status + typedef mplsldp_LdpPasswordStatus { + type string { + length "5..255"; + } + description "LDP password status information"; + } + + // LDP prefix list type + typedef mplsldp_LdpPrefixListName { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "LDP prefix list information"; + } + + // Local binding tag + typedef mplsldp_LocalBindingTag { + type string { + length "0..128"; + } + description "Local binding tag value"; + } + + // LDP local label filtering specifications type + typedef mplsldp_LocalLabelFilteringSpecifications { + type string { + length "5..32"; + } + description "LDP Local Label Filtering Specifications"; + } + + // configuration parameters loop detection type + typedef mplsldp_LoopDetectionType { + type enumeration { + enum Off { + value 1; + description "LDP Loop Detection is Off"; + } + enum On { + value 2; + description "LDP Loop Detection is On"; + } + } + default "Off"; + description "LDP Loop Detection Enabled Status"; + } + + // maximum backoff time + typedef mplsldp_MaxBackoff { + type uint32 { + range "5..2147483"; + } + default "120"; + description "Maximum session backoff time (seconds)"; + } + + // graceful restart neighbor liveness time + typedef mplsldp_NbrLiveTime { + type uint16 { + range "5..300"; + } + default "120"; + description "LDP Neighbor-Liveness time. Specifies the amount of time a router should wait for an LDP session to be reestablished."; + } + + // neighbor clients type + typedef mplsldp_NeighborPeerClientType { + type string { + length "5..255"; + } + description "LDP Neighbor Clients"; + } + + // neighbor peer protection state + typedef mplsldp_NeighborPeerProtectionState { + type enumeration { + enum None { + value 0; + description "Peer Protection State - None"; + } + enum Incomplete { + value 1; + description "Peer Protection State - Incomplete"; + } + enum Ready { + value 2; + description "Peer Protection State - Ready"; + } + enum Protecting { + value 3; + description "Peer Protection State - Protecting"; + } + } + default "None"; + description "LDP Neighbor Peer Protection State"; + } + + // configuration parameters protocol type + typedef mplsldp_ParametersProtocolType { + type enumeration { + enum LDP_for_targeted_sessions { + value 1; + description "LDP for targeted sessions"; + } + enum TDP_for_directed_sessions { + value 2; + description "TDP for directed sessions"; + } + } + default "LDP_for_targeted_sessions"; + description "LDP Configuration Parameters - Protocol Type"; + } + + // neighbor peer state type + typedef mplsldp_PeerStateType { + type enumeration { + enum non-ex { + value 0; + description "Property Type - non-ex"; + } + enum unsol_op_pdg { + value 1; + description "Property Type - unsol op pdg"; + } + enum deferred { + value 2; + description "Property Type - deferred"; + } + enum estab { + value 3; + description "Property Type - estab"; + } + enum lib_exp_wait { + value 4; + description "Property Type - lib exp wait"; + } + enum destroyed { + value 5; + description "Property Type - destroyed"; + } + } + default "non-ex"; + description "LDP Neighbor Peer State"; + } + + // Session protection duration + typedef mplsldp_ProtectDuration { + type uint32 { + range "0..2147483"; + } + description "LDP session protection holdup time in seconds"; + } + + // neighbor protocol state type + typedef mplsldp_ProtocolStateType { + type enumeration { + enum Non-existent { + value 0; + description "Property Type - Non-existent"; + } + enum Opening_Xport { + value 1; + description "Property Type - Opening Xport"; + } + enum Init_sent { + value 2; + description "Property Type - Init sent"; + } + enum Init_rcvd_actv { + value 3; + description "Property Type - Init rcvd actv"; + } + enum Role_pasv { + value 4; + description "Property Type - Role pasv"; + } + enum Init_rcvd_pasv { + value 5; + description "Property Type - Init rcvd pasv"; + } + enum Oper { + value 6; + description "Property Type - Oper"; + } + enum Final_xmitwait { + value 7; + description "Property Type - Final xmitwait"; + } + } + default "Non-existent"; + description "LDP Protocol State Type"; + } + + // LDP logging rate limit + typedef mplsldp_RateLimit { + type uint16 { + range "0..60"; + } + default "0"; + description "LDP logging rate limit"; + } + + // graceful restart recovery time + typedef mplsldp_RecoveryTime { + type uint16 { + range "15..600"; + } + default "120"; + description "LDP maximum recovery time. Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished."; + } + + // Remote binding tag + typedef mplsldp_RemoteBindingTag { + type string { + length "0..128"; + } + description "Remote binding tag value"; + } + + // LDP password option sequence number + typedef mplsldp_SeqNum { + type uint16 { + range "1..32767"; + } + description "Sequence number of the LDP password option"; + } + + // LDP session hold time + typedef mplsldp_SessionHoldTime { + type uint16 { + range "15..65535"; + } + default "180"; + description "LDP session holdtime"; + } + + // discovery detail targeted hello identifier + typedef mplsldp_TargetedHelloIdentifier { + type string { + length "5..128"; + } + description "Targeted hello identifier name"; + } + + // discovery targeted interface state + typedef mplsldp_TargetedInterfaceState { + type enumeration { + enum active { + value 1; + description "Targeted Hello State - active"; + } + enum passive { + value 2; + description "Targeted Hello State - passive"; + } + enum active/passive { + value 3; + description "Targeted Hello State - active/passive"; + } + } + default "active"; + description "Targeted Hello Interface State"; + } + + // targeted hello holdtime + typedef mplsldp_TgtHoldTime { + type uint16 { + range "1..65535"; + } + default "90"; + description "LDP discovery Targeted Hello holdtime"; + } + + // targeted hello interval time + typedef mplsldp_TgtIntvlTime { + type uint16 { + range "1..65535"; + } + default "10"; + description "LDP discovery Targeted Hello interval"; + } + + // configuration parameters - boolean type + typedef mplsldp_enableDisableFlagType { + type enumeration { + enum enabled { + value 1; + description "Property Type - enabled"; + } + enum disabled { + value 2; + description "Property Type - disabled"; + } + } + default "disabled"; + description "Enable/Disable Flag Type"; + } + // Address family type typedef mplsstatic_AfT { type enumeration { - - // IPv4 unicast address family enum ipv4-ucast { value 1; + description "IPv4 Unicast Address Family"; } - - // IPv6 unicast address family enum ipv6-ucast { value 2; + description "IPv6 Unicast Address Family"; } } default "ipv4-ucast"; @@ -16102,69 +18196,66 @@ module Cisco-NX-OS-device { default "16"; } + typedef mplsstatic_LspName { + type string; + } + typedef mplsstatic_OutLabelVal { type uint32 { range "0..1048575"; } } + typedef mplsstatic_OutLblStack { + type string; + } + // Event History Buffer Type typedef mrib_EhType { type enumeration { - - // cli events for mrib enum cli { value 0; + description "cli events for mrib"; } - - // MDT events for mrib enum mdt { value 1; + description "MDT events for mrib"; } - - // MFDM debugs events for mrib enum mfdmDebugs { value 2; + description "MFDM debugs events for mrib"; } - - // MFDM-events events for mrib enum mfdmEvents { value 3; + description "MFDM-events events for mrib"; } - - // MFDM stats events for mrib enum mfdmStats { value 4; + description "MFDM stats events for mrib"; } - - // notify-clients events for mrib enum notyClients { value 5; + description "notify-clients events for mrib"; } - - // RIB events for mrib enum rib { value 6; + description "RIB events for mrib"; } - - // rib-summary events for mrib enum ribSum { value 7; + description "rib-summary events for mrib"; } - - // urib-debugs events for mrib enum urib { value 8; + description "urib-debugs events for mrib"; } - - // VRF events for mrib enum vrf { value 9; + description "VRF events for mrib"; } - - // NBM events for mrib enum nbm { value 10; + description "NBM events for mrib"; } } } @@ -16172,15 +18263,13 @@ module Cisco-NX-OS-device { // Administrative state typedef mrib_HoldAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -16189,23 +18278,79 @@ module Cisco-NX-OS-device { // Multicast Holddown type typedef mrib_HoldDownType { type uint16 { - range "90..210"; + range "0..3600"; } - default "210"; + default "270"; + } + + typedef mrib_LogType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum rout { + value 1; + description "Configure for logging level routing"; + } + enum routip { + value 2; + description "Configure for logging level routing ip"; + } + enum routipv4 { + value 3; + description "Configure for logging level routing ipv4"; + } + enum mrib { + value 4; + description "Configure for logging level mrib"; + } + } + default "none"; + } + + typedef mrib_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + + typedef mrib_MfdmSize { + type uint32 { + range "50..500"; + } + default "50"; + } + + typedef mrib_MfdmType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum mfdmip { + value 1; + description "Configure for mfdm-buffer-route ip"; + } + enum mfdmipv4 { + value 2; + description "Configure for mfdm-buffer-route ipv4"; + } + } + default "none"; } // Administrative state typedef mrib_ModeAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "disabled"; @@ -16214,40 +18359,33 @@ module Cisco-NX-OS-device { // Multipath Mode typedef mrib_MultipathMode { type enumeration { - - // multiple path none enum none { value 1; + description "multiple path none"; } - - // multiple path nbm enum nbm { value 2; + description "multiple path nbm"; } - - // multiple path resilient enum null { value 3; + description "multiple path resilient"; } - - // SG hash enum s-g-hash { value 4; + description "SG hash"; } - - // legacy mode enum legacy { value 5; + description "legacy mode"; } - - // resilient based enum resilient { value 6; + description "resilient based"; } - - // SG hash next-hop based enum s-g-hash-next-hop { value 7; + description "SG hash next-hop based"; } } default "null"; @@ -16256,7 +18394,7 @@ module Cisco-NX-OS-device { // Multicast Resilient type typedef mrib_ResilientType { type boolean; - default "true"; + default "false"; } // Event History Buffer size in Text/kb @@ -16267,6 +18405,20 @@ module Cisco-NX-OS-device { default "3"; } + typedef mrib_TraceCountType { + type uint32 { + range "0..4294967295"; + } + } + + // Asn number + typedef msdp_Asn { + type string { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; + } + default "none"; + } + // Authentication key typedef msdp_AuthKey { type string; @@ -16275,15 +18427,13 @@ module Cisco-NX-OS-device { // Authentication type typedef msdp_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "No authentication"; } - - // MD5 authentication enum md5 { value 1; + description "MD5 authentication"; } } default "none"; @@ -16292,15 +18442,13 @@ module Cisco-NX-OS-device { // Database type typedef msdp_DbT { type enumeration { - - // Route database enum route { value 0; + description "Route database"; } - - // Source database enum source { value 1; + description "Source database"; } } } @@ -16308,41 +18456,42 @@ module Cisco-NX-OS-device { // Domain Control typedef msdp_DomCtrl { - // bits- Using string type string; } // Event History Buffer Type typedef msdp_EhType { type enumeration { - - // cli events for msdp enum cli { value 0; + description "cli events for msdp"; } - - // Events events for msdp enum events { value 1; + description "Events events for msdp"; } - - // MSDP internal events for msdp enum msdpInternal { value 2; + description "MSDP internal events for msdp"; } - - // Routes events for msdp enum routes { value 3; + description "Routes events for msdp"; } - - // TCP events for msdp enum tcp { value 4; + description "TCP events for msdp"; } } } + // Mesh Group Name + typedef msdp_GrpNameT { + type string { + length "1..255"; + } + } + // Keepalive Interval typedef msdp_KaIntvl { type uint16 { @@ -16359,6 +18508,34 @@ module Cisco-NX-OS-device { default "90"; } + // Reason for last reset + typedef msdp_LastResetT { + type string { + length "0..255"; + } + } + + typedef msdp_LogType { + type enumeration { + enum log { + value 1; + description "Configure for logging level msdp"; + } + enum logip { + value 2; + description "Configure for logging level ip msdp"; + } + } + default "log"; + } + + typedef msdp_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + // Max Group Limit typedef msdp_MaxGrpLimit { type uint32 { @@ -16370,40 +18547,40 @@ module Cisco-NX-OS-device { // Operational state typedef msdp_OperSt { type enumeration { - - // Inactive enum inactive { value 0; + description "Inactive"; } - - // Down enum down { value 1; + description "Down"; } - - // Admin-Down enum admin-down { value 2; + description "Admin-Down"; } - - // Connecting enum connecting { value 3; + description "Connecting"; } - - // Listening enum listening { value 4; + description "Listening"; } - - // Established enum established { value 5; + description "Established"; } } default "inactive"; } + typedef msdp_PrefixT { + type string { + pattern ".*[!-~]{0,63}.*"; + } + } + // Reconnect Interval typedef msdp_ReConnIntvl { type uint16 { @@ -16420,6 +18597,24 @@ module Cisco-NX-OS-device { default "3"; } + typedef msdp_Source { + type enumeration { + enum none { + value 0; + description "Default redistribution"; + } + enum pflist { + value 1; + description "Prefix-list based redistribution"; + } + enum rtmap { + value 2; + description "Route-Map based redistribution"; + } + } + default "none"; + } + // Source Announcement interval typedef msdp_SrcActiveMsgIntvl { type uint16 { @@ -16436,15 +18631,40 @@ module Cisco-NX-OS-device { default "4294967295"; } + // Hello Interval in msecs + typedef mvpn_PimHelloIntvl { + type uint32 { + range "1..18724286"; + } + default "30000"; + } + + // Join Prune Interval in secs + typedef mvpn_PimJPIntvl { + type uint32 { + range "60..65520"; + } + default "60"; + } + + // Route Map Name + typedef mvpn_RtMapType { + type string { + length "0..63"; + } + } + typedef naming_Descr { type string { length "0..128"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } typedef naming_Descr1024 { type string { length "0..1024"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } @@ -16455,40 +18675,111 @@ module Cisco-NX-OS-device { typedef naming_Name { type string { length "0..16"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } } typedef naming_Name256 { type string { length "0..256"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } } - typedef naming_PrimKey { - type string; - } - typedef naming_Regex { type string { length "0..256"; + pattern ".*[a-zA-Z0-9!#$%\\(\\)\\*,-.\\?/:;@ _\\{\\|\\}~\\+]*.*"; } } - // Config Error Inst MO - typedef nat_ConfigErrNat { - - // bits- Using string - type string; - } - - // Default Value "60" Removed - out of range -1..172800 - typedef nat_FinSynTimeout { - type int32 { - range "-1..172800"; + // CREATION DELAY BATCHOUT + typedef nat_BatchTimeout { + type enumeration { + enum 0 { + value 0; + description "0 milliseconds delay"; + } + enum 250 { + value 250; + description "250 milliseconds delay"; + } + enum 500 { + value 500; + description "500 milliseconds delay"; + } + enum 750 { + value 750; + description "750 milliseconds delay"; + } + enum 1000 { + value 1000; + description "1000 milliseconds delay"; + } } + default "1000"; } - typedef nat_NatMaxTranslation { + // Config Error Inst MO + typedef nat_ConfigErrNat { + type enumeration { + enum noerror { + value 0; + description "No Erron Seen In Configuration"; + } + enum PoolInUse { + value 1; + description "Pool In Use Delete Failed"; + } + enum TcpTcamNotCarved { + value 2; + description "Tcp Tcam Not Carved Config Failed"; + } + enum ConfigConflict { + value 3; + description "Conflicting with existing config"; + } + enum IfConfigError { + value 4; + description "Nat interface config error"; + } + enum HwProgFailureError { + value 5; + description "Hardware programming failed for nat config"; + } + } + } + + typedef nat_FinSynTimeout { + type int32 { + range "-1..172800"; + } + default "60"; + } + + // IP NAT MO INSIDE/OUTSIDE + typedef nat_InterfaceType { + type enumeration { + enum inside-source-static { + value 0; + description "inside source static"; + } + enum outside-source-static { + value 1; + description "outside source static"; + } + enum inside-source-dynamic { + value 2; + description "inside source dynamic"; + } + enum outside-source-dynamic { + value 3; + description "outside source dynamic"; + } + } + } + + typedef nat_NatMaxTranslation { type uint32 { range "1..1023"; } @@ -16515,6 +18806,13 @@ module Cisco-NX-OS-device { default "0"; } + typedef nat_NatTimeLeft { + type uint32 { + range "0..172800"; + } + default "0"; + } + typedef nat_NatTimeout { type uint32 { range "60..172800"; @@ -16522,32 +18820,102 @@ module Cisco-NX-OS-device { default "3600"; } + typedef nat_NatTrafficDir { + type enumeration { + enum ip-nat-invalid { + value 0; + description "ip nat invalid interface"; + } + enum ip-nat-inside { + value 1; + description "ip nat inside interface"; + } + enum ip-nat-outside { + value 2; + description "ip nat outside interface"; + } + } + } + + // protcol type + typedef nat_ProtocolType { + type enumeration { + enum any { + value 0; + description "none"; + } + enum tcp { + value 1; + description "tcp"; + } + enum udp { + value 2; + description "udp"; + } + } + } + + typedef nat_SamplingTimeout { + type uint32 { + range "120..172800"; + } + default "43200"; + } + typedef nat_booltype { type boolean; default "false"; } - typedef nbm_nbmBwUnitEn { + // port + typedef nat_port { + type uint32 { + range "0..65535"; + } + } + + typedef nat_stringtype { + type string; + } + + typedef nat_twicenatgroup { + type uint32 { + range "0..1024"; + } + default "0"; + } + + typedef nbm_nbmBwRecoveryEn { type enumeration { + enum DISABLED { + value 0; + description "Disabled"; + } + enum ENABLED { + value 1; + description "Enabled"; + } + } + default "ENABLED"; + } - // Invalid Value + typedef nbm_nbmBwUnitEn { + type enumeration { enum UNSPECIFIED { value 0; + description "Invalid Value"; } - - // KiloBits Per Second enum KBPS { value 1; + description "KiloBits Per Second"; } - - // MegaBits Per Second enum MBPS { value 2; + description "MegaBits Per Second"; } - - // GigaBits Per Second enum GBPS { value 3; + description "GigaBits Per Second"; } } default "GBPS"; @@ -16555,45 +18923,37 @@ module Cisco-NX-OS-device { typedef nbm_nbmEndpointRole { type enumeration { - - // Unspecified Role enum UNKNOWN { value 0; + description "Unspecified Role"; } - - // Learned via ARP enum ARP { value 1; + description "Learned via ARP"; } - - // Learned as a Receiver enum RECEIVER { value 2; + description "Learned as a Receiver"; } - - // Learned as a Receiver, as well as from ARP enum RECEIVER_ARP { value 3; + description "Learned as a Receiver, as well as from ARP"; } - - // Learned as a Sender enum SENDER { value 4; + description "Learned as a Sender"; } - - // Learned as a Sender, as well as from ARP enum SENDER_ARP { value 5; + description "Learned as a Sender, as well as from ARP"; } - - // Learned as a Sender, as well as a RECEIVER enum SENDER_RECEIVER { value 6; + description "Learned as a Sender, as well as a RECEIVER"; } - - // Learned as a Sender, as well as a RECEIVER, and also from ARP enum SENDER_RECEIVER_ARP { value 7; + description "Learned as a Sender, as well as a RECEIVER, and also from ARP"; } } default "UNKNOWN"; @@ -16601,75 +18961,77 @@ module Cisco-NX-OS-device { typedef nbm_nbmFaultType { type enumeration { - - // No fault enum NONE { value 0; + description "No fault"; } - - // Denied because of policy enum POLICYDENIED { value 1; + description "Denied because of policy"; } - - // Denied because of Sender policy enum POLICYDENIEDSENDER { value 2; + description "Denied because of Sender policy"; } - - // Denied because of Receiver policy enum POLICYDENIEDRECEIVER { value 3; + description "Denied because of Receiver policy"; } - - // Resource unavailable enum RESOURCEUNAVAIL { value 4; + description "Resource unavailable"; } - - // Policer unavailable` enum POLICERUNAVAIL { value 5; + description "Policer unavailable`"; } - - // Bandwidth unavailable enum BWUNAVAIL { value 6; + description "Bandwidth unavailable"; } - - // Ext Bandwidth unavailable enum EXTBWUNAVAIL { value 7; + description "Ext Bandwidth unavailable"; } - - // Flow policy unavailable enum FLOWPOLUNAVAIL { value 8; + description "Flow policy unavailable"; } - - // No Unicast route enum NOUCASTROUTE { value 9; + description "No Unicast route"; } - - // Flow limit reached enum FLOWLIMITREACHED { value 10; + description "Flow limit reached"; } - - // Flow limit reached for external link enum EXTFLOWLIMITREACHED { value 11; + description "Flow limit reached for external link"; } - - // Denied because of policy for external link enum EXTPOLICYDENIED { value 12; + description "Denied because of policy for external link"; } - - // Policer unavailable for external link enum EXTPOLICERUNAVAIL { value 13; + description "Policer unavailable for external link"; + } + enum BADIFSTATE { + value 14; + description "Interface is Down or in wrong VRF"; + } + enum FLOWPENDINGDEL { + value 15; + description "Flow is pending to delete"; + } + enum EXTTCAMNOTCARVED { + value 16; + description "Ext Tcam not carved"; + } + enum TCAMNOTCARVED { + value 17; + description "Tcam not carved"; } } default "NONE"; @@ -16677,126 +19039,118 @@ module Cisco-NX-OS-device { typedef nbm_nbmFlowOperEn { type enumeration { - - // No Operation enum NOOP { value 0; + description "No Operation"; } - - // Add a new Route enum ROUTE_ADD { value 1; + description "Add a new Route"; } - - // Delete Existing Route enum ROUTE_DEL { value 2; + description "Delete Existing Route"; } - - // Add a new OIF to existing Route enum UPD_ADD_OIF { value 3; + description "Add a new OIF to existing Route"; } - - // Remove an OIF from an existing Route enum UPD_DEL_OIF { value 4; + description "Remove an OIF from an existing Route"; } - - // Update Local OIF ADD enum LOC_ADD_OIF { value 5; + description "Update Local OIF ADD"; } - - // Update Local OIF DEL enum LOC_DEL_OIF { value 6; + description "Update Local OIF DEL"; } - - // Update IIF enum UPD_IIF { value 7; + description "Update IIF"; } - - // Applied Sender Deny Policy enum DENY_POLICY_SRC { value 8; + description "Applied Sender Deny Policy"; } - - // External Src Discovery enum SRC_DISCOVERY { value 9; + description "External Src Discovery"; } - - // Stop Ext Src Discovery enum SRC_DISC_STOP { value 10; + description "Stop Ext Src Discovery"; } - - // Reserved for Future enum 11 { value 11; + description "Reserved for Future"; } - - // Reserved for Future enum 12 { value 12; + description "Reserved for Future"; } - - // FRIDAY!!! enum 13-UNUSED { value 13; + description "FRIDAY!!!"; } - - // Reserved for Future enum 14 { value 14; + description "Reserved for Future"; } - - // Applied Sender Allow Policy enum ALLOW_POLICY_SRC { value 15; + description "Applied Sender Allow Policy"; } - - // Applied Rcv Deny Policy enum DENY_POLICY_RCV { value 16; + description "Applied Rcv Deny Policy"; } - - // Applied Rcv Allow Policy enum ALLOW_POLICY_RCV { value 17; + description "Applied Rcv Allow Policy"; } - - // Reserved for Future enum 18 { value 18; + description "Reserved for Future"; } - - // Reserved for Future enum 19 { value 19; + description "Reserved for Future"; } - - // Reserved for Future enum 20 { value 20; + description "Reserved for Future"; } } default "NOOP"; } - typedef nbm_nbmGroupRangeType { + // Flow Policer Enable / Disable + typedef nbm_nbmFlowPolicerEn { type enumeration { + enum DISABLED { + value 0; + description "Disabled"; + } + enum ENABLED { + value 1; + description "Enabled"; + } + } + default "ENABLED"; + } - // ASM Range + typedef nbm_nbmGroupRangeType { + type enumeration { enum ASM { value 0; + description "ASM Range"; } - - // SSM Range enum SSM { value 1; + description "SSM Range"; } } default "ASM"; @@ -16824,18 +19178,20 @@ module Cisco-NX-OS-device { typedef nbm_nbmLinkRole { type enumeration { - - // WAN Link + enum NONE { + value 255; + description "No link configuration"; + } enum EXTERNAL_LINK { value 0; + description "WAN Link"; } - - // Fabric Facing Link enum FABRIC_LINK { value 1; + description "Fabric Facing Link"; } } - default "EXTERNAL_LINK"; + default "NONE"; } typedef nbm_nbmMacAddr { @@ -16848,51 +19204,74 @@ module Cisco-NX-OS-device { typedef nbm_nbmNoYes { type enumeration { - - // Not FHR enum NO { value 0; + description "Not TRUE"; } - - // This is where the Source host is attached enum YES { value 1; + description "This said condition is TRUE"; + } + enum NA { + value 2; + description "The field is not applicable"; } } default "NO"; } - typedef nbm_nbmOperationalMode { + typedef nbm_nbmOifOrigin { type enumeration { - - // Pim Active Mode enum UNDEFINED { value 0; + description "Undefined"; + } + enum PROTOCOL { + value 1; + description "Dynamic"; } + enum API { + value 2; + description "Static"; + } + enum API_PROTOCOL { + value 3; + description "Both API and PROTOCOL"; + } + } + } - // Pim Active Mode + typedef nbm_nbmOperationalMode { + type enumeration { + enum UNDEFINED { + value 0; + description "Pim Active Mode"; + } enum PIM_ACTIVE { value 1; + description "Pim Active Mode"; + } + enum PIM_PASSIVE { + value 2; + description "Pim Passive Mode"; } } + default "PIM_ACTIVE"; } typedef nbm_nbmPermit { type enumeration { - - // Undefined enum UNDEFINED { value 0; + description "Undefined"; } - - // Denied enum DENIED { value 1; + description "Denied"; } - - // Allowed enum ALLOWED { value 2; + description "Allowed"; } } default "DENIED"; @@ -16900,20 +19279,17 @@ module Cisco-NX-OS-device { typedef nbm_nbmPolicyType { type enumeration { - - // Sender Policy enum SENDER { value 0; + description "Sender Policy"; } - - // Receiver Policy enum RECEIVER { value 1; + description "Receiver Policy"; } - - // Pim Policy enum PIM { value 2; + description "Pim Policy"; } } default "SENDER"; @@ -16921,29 +19297,28 @@ module Cisco-NX-OS-device { typedef nbm_nbmRcvOwner { type enumeration { - - // Known via IGMP Join enum IGMP { value 0; + description "Known via IGMP Join"; } - - // Known via static config enum STATIC { value 1; + description "Known via static config"; } - - // Known via PIM Join enum PIM { value 2; + description "Known via PIM Join"; + } + enum NBM-STATIC { + value 4; + description "Known via NBM Static API"; } } } // Address Type - // Default Value computed from none typedef nd_AddrType { - // bits- Using string type string; default "none"; } @@ -16951,26 +19326,23 @@ module Cisco-NX-OS-device { // Adjacency MAC typedef nd_AdjMac { type address_Mac; - default "0"; + default "00:00:00:00:00:00"; } // Adjacency operational state typedef nd_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -16986,40 +19358,33 @@ module Cisco-NX-OS-device { // Config Error typedef nd_ConfigErr { type enumeration { - - // Unknown enum noerror { value 0; + description "Unknown"; } - - // Config of ipv6 nd managed-config-flag failed enum managedConfigFlag { value 1; + description "Config of ipv6 nd managed-config-flag failed"; } - - // Config of ipv6 nd other-config-flag failed enum otherConfigFlag { value 2; + description "Config of ipv6 nd other-config-flag failed"; } - - // Config of ipv6 nd ra-interval failed enum raIntvl { value 3; + description "Config of ipv6 nd ra-interval failed"; } - - // Config of ipv6 nd ra-lifetime failed enum raLifetime { value 4; + description "Config of ipv6 nd ra-lifetime failed"; } - - // Config of ipv6 nd suppress-ra failed enum suppressRa { value 5; + description "Config of ipv6 nd suppress-ra failed"; } - - // Config of ipv6 nd mac-extract failed enum macExtract { value 6; + description "Config of ipv6 nd mac-extract failed"; } } } @@ -17027,14 +19392,12 @@ module Cisco-NX-OS-device { // Config Error Inst MO typedef nd_ConfigErrInst { - // bits- Using string type string; } // DNSSeqNum typedef nd_DNSSeqNum { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17059,10 +19422,9 @@ module Cisco-NX-OS-device { // Database type typedef nd_DbT { type enumeration { - - // Adjacency Database enum adj { value 1; + description "Adjacency Database"; } } default "adj"; @@ -17077,10 +19439,8 @@ module Cisco-NX-OS-device { } // Interface Controls - // Default Value computed from redirects typedef nd_IfControl { - // bits- Using string type string; default "redirects"; } @@ -17088,7 +19448,6 @@ module Cisco-NX-OS-device { // Lifetime @@@ 0xffffffff == infinite typedef nd_Lifetime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17098,20 +19457,17 @@ module Cisco-NX-OS-device { // Solicit Accept Value typedef nd_MacExtract { type enumeration { - - // Default enum none { value 0; + description "Default"; } - - // Nud-phase enum nud-phase { value 1; + description "Nud-phase"; } - - // Exclude-nud-phase enum exclude-nud-phase { value 2; + description "Exclude-nud-phase"; } } default "none"; @@ -17159,7 +19515,6 @@ module Cisco-NX-OS-device { // NDRouteLifeTime @@@ 0xffffffff == infinite typedef nd_NdRtLifeTime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17184,17 +19539,14 @@ module Cisco-NX-OS-device { // OperNDRouteLifeTime @@@ 0xffffffff == infinite typedef nd_OperNdRtLifeTime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } } // Prefix Controls - // Default Value computed from auto-cfg,on-link,advertise,router-address typedef nd_PfxControl { - // bits- Using string type string; default "auto-cfg,on-link,advertise,router-address"; } @@ -17202,7 +19554,6 @@ module Cisco-NX-OS-device { // Lifetime @@@ 0xffffffff == infinite typedef nd_PrefLifetime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17211,7 +19562,7 @@ module Cisco-NX-OS-device { // Interval between RA transmissions typedef nd_RaIntvl { - type uint16 { + type uint32 { range "4..1800"; } default "600"; @@ -17227,7 +19578,7 @@ module Cisco-NX-OS-device { // RA lifetime typedef nd_RaLifetime { - type uint16 { + type uint32 { range "0..9000"; } default "1800"; @@ -17244,7 +19595,6 @@ module Cisco-NX-OS-device { // Retransmit timer typedef nd_RetransTimer { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17254,25 +19604,21 @@ module Cisco-NX-OS-device { // Router Preference typedef nd_RouterPreference { type enumeration { - - // ICMPv6 nd router preference medium enum Medium { value 0; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum High { value 1; + description "ICMPv6 nd router preference high"; } - - // ICMPv6 nd router preference reserved enum Reserved { value 2; + description "ICMPv6 nd router preference reserved"; } - - // ICMPv6 nd router preference low enum Low { value 3; + description "ICMPv6 nd router preference low"; } } } @@ -17280,25 +19626,21 @@ module Cisco-NX-OS-device { // Router Preference for command typedef nd_RtPrefForCmd { type enumeration { - - // ICMPv6 nd router preference (if not specified) enum unspecified { value 0; + description "ICMPv6 nd router preference (if not specified)"; } - - // ICMPv6 nd router preference low enum low { value 1; + description "ICMPv6 nd router preference low"; } - - // ICMPv6 nd router preference medium enum medium { value 2; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum high { value 3; + description "ICMPv6 nd router preference high"; } } } @@ -17306,41 +19648,40 @@ module Cisco-NX-OS-device { // Route Preference for ND Route specific typedef nd_RtPrefForNdRt { type enumeration { - - // ICMPv6 nd router preference low enum low { value 0; + description "ICMPv6 nd router preference low"; } - - // ICMPv6 nd router preference medium enum medium { value 1; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum high { value 2; + description "ICMPv6 nd router preference high"; + } + enum unspecified { + value 3; + description "ICMPv6 nd router preference unspecified"; } } + default "unspecified"; } // Solicit Accept Value typedef nd_SolicitAcceptValue { type enumeration { - - // Default enum none { value 0; + description "Default"; } - - // Accept enum accept { value 1; + description "Accept"; } - - // No-accept enum no-accept { value 2; + description "No-accept"; } } default "none"; @@ -17358,15 +19699,13 @@ module Cisco-NX-OS-device { // Static Adjacency operational state typedef nd_StAdjOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Incomplete enum up { value 1; + description "Incomplete"; } } default "down"; @@ -17375,40 +19714,33 @@ module Cisco-NX-OS-device { // Static Adjacency operational state qualifier typedef nd_StAdjOperStQual { type enumeration { - - // Subnet mismatch enum subnet-mismatch { value 1; + description "Subnet mismatch"; } - - // Invalid MAC enum invalid-mac { value 2; + description "Invalid MAC"; } - - // Invalid IP enum invalid-ip { value 3; + description "Invalid IP"; } - - // Invalid VRF enum invalid-vrf { value 4; + description "Invalid VRF"; } - - // Own MAC enum own-mac { value 5; + description "Own MAC"; } - - // Interface down enum if-down { value 6; + description "Interface down"; } - - // Up enum up { value 7; + description "Up"; } } default "up"; @@ -17433,20 +19765,17 @@ module Cisco-NX-OS-device { // VADDR Client state typedef nd_VaddrClientState { type enumeration { - - // ICMPv6 client state inactive enum ICMPV6_CLIENT_STATE_INACTIVE { value 0; + description "ICMPv6 client state inactive"; } - - // ICMPv6 client state active enum ICMPV6_CLIENT_STATE_ACTIVE { value 1; + description "ICMPv6 client state active"; } - - // ICMPv6 client state anycast inactive enum ICMPV6_CLIENT_STATE_ANYCAST_INACTIVE { value 2; + description "ICMPv6 client state anycast inactive"; } } } @@ -17458,18 +19787,281 @@ module Cisco-NX-OS-device { default "250"; } - // Address family type - typedef ngmvpn_AfT { + // RTP ACL + typedef netflow_ACLName { + type string { + length "0..64"; + } + } + + // Burst interval shift + typedef netflow_BurstIntvlShift { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Collector buket identifier + typedef netflow_CollBucketId { + type uint8 { + range "0..255"; + } + } + + // Collect Interval + typedef netflow_CollIntvl { + type uint32 { + range "100..64000"; + } + default "100"; + } + + typedef netflow_CollTemplateTimeout { + type uint32 { + range "1..86400"; + } + default "15"; + } + + // Collector timeout + typedef netflow_CollTimeout { + type uint32 { + range "0..86400"; + } + default "0"; + } + + // Collector version + typedef netflow_CollVersion { type enumeration { + enum v5 { + value 1; + description "Version 5"; + } + enum v9 { + value 2; + description "Version 9"; + } + enum cisco-v1 { + value 3; + description "Cisco proprietary version 1"; + } + } + default "v9"; + } + + // Collect params + typedef netflow_CollectParams { - // IPv4 Routes + type string; + } + + // Collector identifier + typedef netflow_CollectorId { + type uint32 { + range "0..65535"; + } + } + + // Direction type + typedef netflow_DirectionT { + type enumeration { + enum in { + value 1; + description "Ingress"; + } + enum out { + value 2; + description "Egress"; + } + enum both { + value 3; + description "Both"; + } + } + default "in"; + } + + // Flow timeout + typedef netflow_FlowTimeout { + type uint32 { + range "5..60"; + } + default "10"; + } + + // IP filter type + typedef netflow_FltType { + type enumeration { enum ipv4 { + value 1; + description "Ipv4 type"; + } + enum ipv6 { + value 2; + description "Ipv6 type"; + } + enum ce { + value 3; + description "CE type"; + } + } + default "ipv4"; + } + + // Forwarding instance target identifier + typedef netflow_FwdInstTargetId { + type uint32 { + range "0..4294967295"; + } + } + + // Hash value + typedef netflow_HashT { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + // IP packet identifier shift + typedef netflow_IpPktIdShift { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Layer4 port + typedef netflow_L4Port { + type uint32 { + range "1..65535"; + } + } + + // Match params + typedef netflow_MatchParams { + + type string; + } + + // Mode + typedef netflow_ModeT { + type enumeration { + enum netflow { value 0; + description "Netflow mode"; } + } + default "netflow"; + } + + // MTU + typedef netflow_Mtu { + type uint16 { + range "576..9216"; + } + default "1500"; + } + + // Payload length identifier + typedef netflow_PayloadLenIdT { + type uint8 { + range "0..10"; + } + } + + // Payload length + typedef netflow_PayloadLenT { + + type uint32 { + range "0..16383"; + } + default "0"; + } + + // Receive window size identifier + typedef netflow_RcvWindowSzIdT { + type uint8 { + range "0..4"; + } + } + + // Receive window size + typedef netflow_RcvWindowSzT { + type uint32 { + range "0..65535"; + } + default "0"; + } + + // RTP Timeout + typedef netflow_RtpTimeout { + type uint32 { + range "0..1440"; + } + default "1"; + } + + // TCP options header length identifier + typedef netflow_TCPOptHdrLenIdT { + type uint8 { + range "0..6"; + } + } + + // TCP options header length + typedef netflow_TCPOptHdrLenT { + type uint32 { + range "0..15"; + } + default "0"; + } - // IPv6 Routes + // Sequence number guess threshold + typedef netflow_ThresholdT { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + typedef netflow_VrfName { + type l3_VrfName; + default "default"; + } + + // Address Ip + typedef netflow_addressIp { + type address_Ip; + } + + // Dscp code point values + typedef netflow_flowDscp { + type uint8; + default "0"; + } + + // Port + typedef netflow_flowPort { + + type uint16 { + range "0..65535"; + } + default "9995"; + } + + // Address family type + typedef ngmvpn_AfT { + type enumeration { + enum ipv4 { + value 0; + description "IPv4 Routes"; + } enum ipv6 { value 1; + description "IPv6 Routes"; } } } @@ -17477,20 +20069,17 @@ module Cisco-NX-OS-device { // Database type typedef ngmvpn_DbT { type enumeration { - - // NGMVPN mroute database enum mroute { value 0; + description "NGMVPN mroute database"; } - - // NGMVPN SA route database enum saroute { value 1; + description "NGMVPN SA route database"; } - - // NGMVPN L2 route database enum l2route { value 2; + description "NGMVPN L2 route database"; } } } @@ -17498,50 +20087,41 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef ngmvpn_EhType { type enumeration { - - // BGP events for fabric multicast enum bgp { value 0; + description "BGP events for fabric multicast"; } - - // MRIB events for fabric multicast enum mrib { value 1; + description "MRIB events for fabric multicast"; } - - // M2RIB events for fabric multicast enum m2rib { value 2; + description "M2RIB events for fabric multicast"; } - - // M6RIB events for fabric multicast enum m6rib { value 3; + description "M6RIB events for fabric multicast"; } - - // PIM events for fabric multicast enum pim { value 4; + description "PIM events for fabric multicast"; } - - // PIM6 events for fabric multicast enum pim6 { value 5; + description "PIM6 events for fabric multicast"; } - - // HMM events for fabric multicast enum hmm { value 6; + description "HMM events for fabric multicast"; } - - // ISIS events for fabric multicast enum isis { value 7; + description "ISIS events for fabric multicast"; } - - // HA events for fabric multicast enum ha { value 8; + description "HA events for fabric multicast"; } } } @@ -17576,7 +20156,6 @@ module Cisco-NX-OS-device { // Num packets to send for a given ping task typedef ngoam_DestPort { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17609,7 +20188,7 @@ module Cisco-NX-OS-device { type uint8 { range "1..255"; } - default "100"; + default "5"; } // Hop count @@ -17620,17 +20199,9 @@ module Cisco-NX-OS-device { default "32"; } - // Interface range - typedef ngoam_Interface { - type string { - } - default "unspecified"; - } - // Num packets to send for a given ping task typedef ngoam_NumPkt { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -17640,15 +20211,13 @@ module Cisco-NX-OS-device { // Type of the path typedef ngoam_OamChannel { type enumeration { - - // INVALID enum invalid { value 0; + description "INVALID"; } - - // TISSA enum tissa { value 2; + description "TISSA"; } } default "invalid"; @@ -17667,7 +20236,6 @@ module Cisco-NX-OS-device { // Payload pad value typedef ngoam_PayloadPad { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17677,7 +20245,7 @@ module Cisco-NX-OS-device { // The packet size to be used for sending the ping packet typedef ngoam_PktSz { type uint16 { - range "1..65486"; + range "1..9500"; } default "56"; } @@ -17708,14 +20276,6 @@ module Cisco-NX-OS-device { type uint32; } - // The interval between every ping packet that is sent out - typedef ngoam_SendIntvl { - type uint8 { - range "0..60"; - } - default "0"; - } - // The interval between every ping packet that is sent out typedef ngoam_SendIntvlCC { type uint8 { @@ -17727,7 +20287,6 @@ module Cisco-NX-OS-device { // SessionId typedef ngoam_SessionId { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17736,6 +20295,7 @@ module Cisco-NX-OS-device { // Source port range typedef ngoam_Sport { type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*)"; } default "0"; } @@ -17743,44 +20303,20 @@ module Cisco-NX-OS-device { // Source port to be used in the packet typedef ngoam_SrcPort { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } default "0"; } - // The interval between every ping packet that is sent out - typedef ngoam_SweepSz { - type uint16 { - range "90..9600"; - } - default "90"; - } - - // Hop count - typedef ngoam_TTL { - type uint8 { - range "1..255"; - } - default "5"; - } - // The timeout before the ping task gives up with the reply typedef ngoam_Timeout { type uint8 { - range "0..60"; + range "0..25"; } default "2"; } - // Vni id - typedef ngoam_Vnid { - type uint32 { - range "1..16777215"; - } - } - // Vni id typedef ngoam_VnidCC { type uint32 { @@ -17796,20 +20332,17 @@ module Cisco-NX-OS-device { // Xconnec port state typedef ngoam_xcPortState { type enumeration { - - // down enum down { value 0; + description "down"; } - - // Up enum up { value 1; + description "Up"; } - - // Err enum errDisabled { value 2; + description "Err"; } } default "down"; @@ -17818,320 +20351,133 @@ module Cisco-NX-OS-device { // Xconnec state typedef ngoam_xcState { type enumeration { - - // Active enum Active { value 0; + description "Active"; } - - // Database down enum DB { value 1; + description "Database down"; } - - // HB failure enum HB { value 2; + description "HB failure"; } - - // Remote down enum RD { value 4; + description "Remote down"; } - - // Local Intf down enum LD { value 8; + description "Local Intf down"; } - - // DB down, HB Loss enum DB/HB { value 3; + description "DB down, HB Loss"; } - - // Remote down, HB Loss enum RD/HB { value 6; + description "Remote down, HB Loss"; } - - // DB down, HB loss, Remote down enum DB/HB/RD { value 7; + description "DB down, HB loss, Remote down"; } - - // DB down, Local down enum DB/LD { value 9; + description "DB down, Local down"; } - - // HB down, Local down enum HB/LD { value 10; + description "HB down, Local down"; } - - // DB down, HB loss, Local down enum DB/HB/LD { value 11; + description "DB down, HB loss, Local down"; } - - // Remote down, Local down enum RD/LD { value 12; + description "Remote down, Local down"; } - - // DB down, Remote down, Local down enum DB/RD/LD { value 13; + description "DB down, Remote down, Local down"; } - - // HB Loss, Remote down, Local down enum HB/RD/LD { value 14; + description "HB Loss, Remote down, Local down"; } - - // DB Loss, HB down, Remote down, Local down enum DB/HB/RD/LD { value 15; + description "DB Loss, HB down, Remote down, Local down"; } } default "DB"; } - // enable/disable controls used in extIf properties - typedef npv_ExtIfFlags { - - // bits- Using string - type string; - } - - // Ext If Fsm type - typedef npv_ExtIfFsmSt { - type enumeration { - - // FSM_ST_NO_TRANSITION - enum no-transition { - value 0; - } - - // FSM_ST_NO_CHANGE - enum no-change { - value 1; - } - - // FSM_ST_ANY - enum any { - value 2; - } - - // NPIVP_EXT_IF_ST_DOWN - enum down { - value 3; - } - - // NPIVP_EXT_IF_ST_PREINIT_DONE - enum preinit-done { - value 4; - } - - // NPIVP_EXT_IF_ST_WAITING_FLOGI_RESPONSE - enum wait-flogi-response { - value 5; - } - - // NPIVP_EXT_IF_ST_UP - enum up { - value 6; - } - - // NPIVP_EXT_IF_ST_FLOGI_FAILED - enum flogi-failed { - value 7; - } - - // NPIVP_EXT_IF_ST_WAITING_FCID_ADDITION - enum wait-fcid-add { - value 8; - } - - // NPIVP_EXT_IF_ST_WAITING_FCID_DELETION - enum wait-fcid-del { - value 9; - } - - // NPIVP_EXT_IF_ST_WAITING_NS_REGISTRATION - enum wait-ns-registration { - value 10; - } - - // NPIVP_EXT_IF_ST_FLOGI_FAIL_RETRY - enum flogi-fail-retry { - value 11; - } - - // NPIVP_EXT_IF_ST_WAITING_FOR_VSAN_UP - enum wait-for-vsan-up { - value 12; - } - - // NPIVP_EXT_IF_ST_WAITING_LC_PORT_CONFIG - enum wait-lc-port-config { - value 13; - } - - // NPIVP_EXT_IF_ST_PC_MEMBER_ADD - enum pc-member-add { - value 14; - } - - // NPIVP_EXT_IF_ST_PC_MEMBER_DEL - enum pc-member-del { - value 15; - } - } - default "no-transition"; - } - - // enable/disable controls used in srvIf properties - typedef npv_SrvIfFlags { - - // bits- Using string - type string; - } - - // Server If Fsm type - typedef npv_SrvIfFsmSt { - type enumeration { - - // FSM_ST_NO_TRANSITION - enum no-transition { - value 0; - } - - // FSM_ST_NO_CHANGE - enum no-change { - value 1; - } - - // FSM_ST_ANY - enum any { - value 2; - } - - // NPIVP_SVR_IF_ST_INTERFACE_DOWN - enum if-down { - value 3; - } - - // NPIVP_SVR_IF_ST_WAITING_EXTERNAL_INTERFACE - enum wait-ext-if { - value 4; - } - - // NPIVP_SVR_IF_ST_WAITING_FOR_FLOGI - enum wait-flogi { - value 5; - } - - // NPIVP_SVR_IF_ST_INTERFACE_UP - enum if-up { - value 6; - } - - // NPIVP_SVR_IF_ST_FLOGI_CLEANUP - enum flogi-cleanup { - value 7; - } - - // NPIVP_SVR_IF_ST_WAITING_FC_ADD - enum wait-fc-add { - value 8; - } - - // NPIVP_SVR_IF_ST_WAITING_FC_DEL - enum wait-fc-del { - value 9; - } - - // NPIVP_SVR_IF_ST_WAITING_FOR_EXT_IF_STABLE - enum wait-ext-if-stable { - value 10; - } - } - default "no-transition"; - } - typedef nvo_CfgSrcT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Config source is CLI enum cli { value 1; + description "Config source is CLI"; } - - // Config source is controller enum controller { value 2; + description "Config source is controller"; } } default "unknown"; } typedef nvo_ETimeStamp { - type string; + type union { + type string; + type uint64; + } default "0"; } typedef nvo_EncapT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Overlay encap vxlan enum vxlan { value 1; + description "Overlay encap vxlan"; } - - // Overlay encap vxlan tunnel control frames enum vxlan-tun-ctrl-frame { value 2; + description "Overlay encap vxlan tunnel control frames"; } - - // Overlay encap vxlan tunnel control frames lacp enum vxlan-tun-ctrl-frame-lacp { value 3; + description "Overlay encap vxlan tunnel control frames lacp"; } - - // Overlay encap vxlan tunnel control frames stp enum vxlan-tun-ctrl-frame-stp { value 4; + description "Overlay encap vxlan tunnel control frames stp"; } - - // Overlay encap vxlan-with-tags enum dot1q { value 5; + description "Overlay encap vxlan-with-tags"; } - - // Overlay encap vxlan-with-tags tunnel control frames enum dot1q-tun-ctrl-frame { value 6; + description "Overlay encap vxlan-with-tags tunnel control frames"; } - - // Overlay encap vxlan-with-tags tunnel control frames lacp enum dot1q-tun-ctrl-frame-lacp { value 7; + description "Overlay encap vxlan-with-tags tunnel control frames lacp"; } - - // Overlay encap vxlan-with-tags tunnel control frames stp enum dot1q-tun-ctrl-frame-stp { value 8; + description "Overlay encap vxlan-with-tags tunnel control frames stp"; } } default "unknown"; @@ -18143,31 +20489,49 @@ module Cisco-NX-OS-device { typedef nvo_EvpnMcastStT { type enumeration { - - // Enable 'advertise evpn multicast' enum enabled { value 1; + description "Enable 'advertise evpn multicast'"; } } default "enabled"; } - typedef nvo_HostLearnModeT { + typedef nvo_EvpnSiteName { type enumeration { + enum unknown { + value 0; + description "Evpn sitename 'Unknown'"; + } + enum ucast { + value 1; + description "Evpn sitename 'Unicast'"; + } + enum bcast { + value 2; + description "Evpn sitename 'Broadcast'"; + } + enum mcast { + value 3; + description "Evpn sitename 'Multicast'"; + } + } + default "unknown"; + } - // Data Plane + typedef nvo_HostLearnModeT { + type enumeration { enum DP { value 1; + description "Data Plane"; } - - // Control Plane enum CP { value 2; + description "Control Plane"; } - - // Controller enum Ctrlr { value 3; + description "Controller"; } } default "DP"; @@ -18175,30 +20539,25 @@ module Cisco-NX-OS-device { typedef nvo_HostReachT { type enumeration { - - // Flood-and-learn VxLAN enum Flood-and-learn { value 0; + description "Flood-and-learn VxLAN"; } - - // Host Reachability is learnt through BGP-EVPN enum bgp { value 1; + description "Host Reachability is learnt through BGP-EVPN"; } - - // Host Reachability is provided by controller enum controller { value 2; + description "Host Reachability is provided by controller"; } - - // Host Reachability is provided by openflow enum openflow { value 3; + description "Host Reachability is provided by openflow"; } - - // Host Reachability is provided by openflow-ir enum openflowIR { value 4; + description "Host Reachability is provided by openflow-ir"; } } default "Flood-and-learn"; @@ -18206,36 +20565,52 @@ module Cisco-NX-OS-device { typedef nvo_IngReplProtoT { type enumeration { - - // Unknown mode for peers enum unknown { value 0; + description "Unknown mode for peers"; } - - // Ingress Replication peers are learnt via BGP-EVPN enum bgp { value 1; + description "Ingress Replication peers are learnt via BGP-EVPN"; } - - // Ingress Replication peers are configured statically enum static { value 2; + description "Ingress Replication peers are configured statically"; } } default "unknown"; } - typedef nvo_MultisiteIngReplStateT { + typedef nvo_MplsEncapT { type enumeration { + enum unknown { + value 0; + description "Unknown type of encapsulation operation"; + } + enum mpls { + value 1; + description "MPLS segment-routing based encapsulation"; + } + enum none { + value 2; + description "No encapsulation"; + } + } + } - // Disable 'multisite ingress-replication' + typedef nvo_MultisiteIngReplStateT { + type enumeration { enum disable { value 1; + description "Disable 'multisite ingress-replication'"; } - - // Enable 'multisite ingress-replication' enum enable { value 2; + description "Enable 'multisite ingress-replication'"; + } + enum enableOptimized { + value 3; + description "Enable 'Optimized multisite ingress-replication'"; } } default "disable"; @@ -18243,10 +20618,9 @@ module Cisco-NX-OS-device { typedef nvo_MultisiteStateT { type enumeration { - - // Enable 'evpn multisite border-gateway' enum enabled { value 1; + description "Enable 'evpn multisite border-gateway'"; } } default "enabled"; @@ -18254,36 +20628,36 @@ module Cisco-NX-OS-device { typedef nvo_MultisiteTrackingT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Enable 'evpn multisite dci-tracking' enum dci { value 1; + description "Enable 'evpn multisite dci-tracking'"; } - - // Enable 'evpn multisite fabric-tracking' enum fabric { value 2; + description "Enable 'evpn multisite fabric-tracking'"; } } default "unknown"; } + typedef nvo_OwnershipT { + + type string; + } + typedef nvo_PeerStateT { type enumeration { - - // Peer State UP enum Up { value 1; + description "Peer State UP"; } - - // Peer State DOWN enum Down { value 2; + description "Peer State DOWN"; } } default "Down"; @@ -18296,41 +20670,61 @@ module Cisco-NX-OS-device { // values in the aggregate model enum typedef nvo_ReplModeT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ReplicationServer enum replicationServer { value 1; + description "ReplicationServer"; } - - // IngressReplication enum ingressReplication { value 2; + description "IngressReplication"; } } default "ingressReplication"; } - typedef nvo_SuppressARPT { + typedef nvo_SrStateT { type enumeration { + enum unknown { + value 4; + description "Unknown State"; + } + enum init { + value 0; + description "Entity is in initial state"; + } + enum add_complete { + value 1; + description "Entity is in functional state"; + } + enum EviDelPending { + value 2; + description "Cleanup is pending after deletion of an evi node"; + } + enum PeerDelPending { + value 3; + description "Cleanup is pending after deletion of a peer node"; + } + } + default "unknown"; + } - // Arp suppression not configured + typedef nvo_SuppressARPT { + type enumeration { enum off { value 0; + description "Arp suppression not configured"; } - - // Arp suppression enabled enum enabled { value 1; + description "Arp suppression enabled"; } - - // Arp suppression disabled enum disabled { value 2; + description "Arp suppression disabled"; } } default "off"; @@ -18338,15 +20732,13 @@ module Cisco-NX-OS-device { typedef nvo_VniStateT { type enumeration { - - // VNI State UP enum Up { value 1; + description "VNI State UP"; } - - // VNI State DOWN enum Down { value 2; + description "VNI State DOWN"; } } default "Down"; @@ -18360,15 +20752,13 @@ module Cisco-NX-OS-device { typedef nvo_VniTypeT { type enumeration { - - // Not vrf associated enum L2 { value 1; + description "Not vrf associated"; } - - // Vrf associated enum L3 { value 2; + description "Vrf associated"; } } default "L2"; @@ -18377,20 +20767,17 @@ module Cisco-NX-OS-device { // Address family typedef nw_AddrF { type enumeration { - - // IPv4 enum ipv4 { value 1; + description "IPv4"; } - - // IPv6 enum ipv6 { value 2; + description "IPv6"; } - - // Mac enum mac { value 3; + description "Mac"; } } default "ipv4"; @@ -18399,15 +20786,13 @@ module Cisco-NX-OS-device { // Administrative state typedef nw_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -18458,14 +20843,12 @@ module Cisco-NX-OS-device { // Instance controls typedef nw_InstCtrl { - // bits- Using string type string; } // Interface ordinal typedef nw_Iod { - // MAX Converted to int from 0xffffffff type uint32 { range "1..4294967295"; } @@ -18475,25 +20858,21 @@ module Cisco-NX-OS-device { // Memory alert level typedef nw_MemAlertLevel { type enumeration { - - // Normal enum normal { value 0; + description "Normal"; } - - // Minor enum minor { value 1; + description "Minor"; } - - // Major enum major { value 2; + description "Major"; } - - // Critical enum critical { value 3; + description "Critical"; } } default "normal"; @@ -18502,30 +20881,25 @@ module Cisco-NX-OS-device { // Operational state summary typedef nw_OSSum { type enumeration { - - // Failed enum failed { value 0; + description "Failed"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Resetting enum resetting { value 2; + description "Resetting"; } - - // Degraded enum degraded { value 3; + description "Degraded"; } - - // Ok enum ok { value 4; + description "Ok"; } } default "ok"; @@ -18539,36 +20913,76 @@ module Cisco-NX-OS-device { // Operational error qualifier typedef nw_OperErrQual { - // bits- Using string type string; } - typedef nxapi_port { + typedef nxapi_ClientCertAuthType { + type enumeration { + enum off { + value 0; + description "Basic Authentication ONLY"; + } + enum optional { + value 1; + description "Mutual certificate authentication between client and server, OR Basic Authentication"; + } + enum strict { + value 2; + description "Mutual certificate authentication between client and server ONLY"; + } + enum two-step { + value 3; + description "Mutual certificate authentication between client and server, AND Basic Authentication (two-step verification)"; + } + } + default "off"; + } + + typedef nxapi_HttpPort { type int32 { range "-1..65535"; } + default "-1"; } - // Endpoint type - typedef oam_EpT { - type enumeration { + typedef nxapi_HttpsPort { + type int32 { + range "-1..65535"; + } + default "443"; + } - // EP - enum ep { - value 1; - } + typedef nxapi_SslProtocols { + type string; + default "TLSv1.2"; + } + + typedef nxapi_keyPassphrase { + type string { + length "4..1024"; + } + } - // EP behind a vtep - enum vtep-ep { + // security level + typedef nxsdk_SecLevel { + type enumeration { + enum deny { + value 0; + } + enum permit { value 2; } - - // Node - enum node { + enum throttle { value 3; } } - default "node"; + default "deny"; + } + + typedef nxsdk_ServiceSt { + type string { + length "0..20"; + } } // Ip identifier @@ -18576,11 +20990,6 @@ module Cisco-NX-OS-device { type address_Ip; } - // MAC identifier - typedef oam_MacId { - type address_Mac; - } - // Payload size typedef oam_PayloadSz { type uint16 { @@ -18604,37 +21013,52 @@ module Cisco-NX-OS-device { type l3_VrfName; } - typedef opflex_DevOperState { + typedef ofm_encapType { type enumeration { + enum none { + value 0; + description "none"; + } + enum vxlan { + value 1; + description "Vxlan encap"; + } + } + default "none"; + } - // Unknown + // Tunnel mode types + typedef ofm_profileName { + type string { + length "0..50"; + } + } + + typedef opflex_DevOperState { + type enumeration { enum unknown { value 0; + description "Unknown"; } - - // Online enum online { value 1; + description "Online"; } - - // Offline enum offline { value 2; + description "Offline"; } - - // Identified enum identified { value 3; + description "Identified"; } - - // Compatible enum compatible { value 4; + description "Compatible"; } - - // Incompatible enum incompatible { value 5; + description "Incompatible"; } } default "identified"; @@ -18722,6 +21146,7 @@ module Cisco-NX-OS-device { typedef os_OsString { type string { length "0..256"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } @@ -18733,33 +21158,43 @@ module Cisco-NX-OS-device { default "0"; } + // Explicit-NULL type- Active + typedef ospf_Active { + type enumeration { + enum no { + value 0; + description "Explicit-NULL state is not active"; + } + enum yes { + value 1; + description "Explicit-NULL state is active"; + } + } + default "no"; + } + // Adjacency change logging levels typedef ospf_AdjChangeLogLevel { type enumeration { - - // No logging enum none { value 0; + description "Adjacency change logging levels - None"; } - - // Brief logging enum brief { value 1; + description "Adjacency change logging levels - Brief logging"; } - - // Detailed logging enum detail { value 2; + description "Adjacency change logging levels - Detailed logging"; } } default "none"; } // Adjacency flags - // Default Value computed from unspecified typedef ospf_AdjFlags { - // bits- Using string type string; default "unspecified"; } @@ -18777,72 +21212,91 @@ module Cisco-NX-OS-device { // Adjancency operational state typedef ospf_AdjOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Adjancency operational state - Unknown"; } - - // Down enum down { value 1; + description "Adjancency operational state is Down"; } - - // Attempt enum attempt { value 2; + description "Adjancency operational state - Attempt"; } - - // Initializing enum initializing { value 3; + description "Adjancency operational state is Initializing"; } - - // Two-way enum two-way { value 4; + description "Adjancency operational state is Two-way"; } - - // Exstart enum exstart { value 5; + description "Adjancency operational state - Exstart"; } - - // Exchange enum exchange { value 6; + description "Adjancency operational state - Exchange"; } - - // Loading enum loading { value 7; + description "Adjancency operational state - Loading"; } - - // Full enum full { value 8; + description "Adjancency operational state is Full"; } - - // Self enum self { value 9; + description "Adjancency operational state is Self"; } } default "down"; } + // SR Adjacency SID flags + typedef ospf_AdjSidFlags { + + type string; + default "unspecified"; + } + + // SR Adjacency SID Label + typedef ospf_AdjSidLabel { + type uint32; + default "4294967295"; + } + + // Extended Prefix Flags + typedef ospf_AdjSidTlvType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; + } + enum Adj-SID_Sub-TLV { + value 2; + description "Adj-SID Sub-TLV"; + } + enum LAN_Adj-SID_Sub-TLV { + value 3; + description "LAN Adj-SID Sub-TLV"; + } + } + } + // Always option for DefLeak typedef ospf_Always { type enumeration { - - // No enum no { value 0; + description "Default-leak state is not always"; } - - // Yes enum yes { value 1; + description "Default-leak state is always"; } } default "no"; @@ -18857,10 +21311,8 @@ module Cisco-NX-OS-device { } // Area controls - // Default Value computed from unspecified typedef ospf_AreaControl { - // bits- Using string type string; default "unspecified"; } @@ -18881,20 +21333,17 @@ module Cisco-NX-OS-device { // Area type typedef ospf_AreaT { type enumeration { - - // Regular area enum regular { value 1; + description "Area type is regular area"; } - - // Stub area enum stub { value 2; + description "Area type is Stub area"; } - - // NSSA area enum nssa { value 3; + description "Area type is NSSA area"; } } default "regular"; @@ -18921,25 +21370,21 @@ module Cisco-NX-OS-device { // Authentication type typedef ospf_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "Authentication type is none "; } - - // Simple authentication enum simple { value 1; + description "Simple authentication type"; } - - // MD5 authentication enum md5 { value 2; + description "MD5 authentication type"; } - - // Unspecified enum unspecified { value 3; + description "Authentication type is unspecified but valid"; } } default "unspecified"; @@ -18948,20 +21393,17 @@ module Cisco-NX-OS-device { // Bidirectional Forwarding Detection Control typedef ospf_BfdControl { type enumeration { - - // Unconfigure interface BFD configuration enum unspecified { value 0; + description "Unconfigure interface BFD configuration"; } - - // Configure interface to use BFD enum enabled { value 1; + description "Configure interface to use BFD"; } - - // Configure interface not to use BFD enum disabled { value 2; + description "Configure interface not to use BFD"; } } default "unspecified"; @@ -18970,15 +21412,13 @@ module Cisco-NX-OS-device { // BFD state typedef ospf_BfdOperSt { type enumeration { - - // Down enum down { value 0; + description "Bi-directional Forwarding Detection (BFD) is Down"; } - - // Up enum up { value 1; + description "Bi-directional Forwarding Detection (BFD) is Up"; } } } @@ -18997,20 +21437,32 @@ module Cisco-NX-OS-device { // Bandwidth reference unit typedef ospf_BwRefUnit { type enumeration { - - // Mbps enum mbps { value 0; + description "Bandwidth reference unit is Mbps"; } - - // Gbps enum gbps { value 1; + description "Bandwidth reference unit is Gbps"; } } default "mbps"; } + // OSPFv2 Capability Flag + typedef ospf_CapFlag { + type enumeration { + enum no { + value 0; + description "Capability not supported"; + } + enum yes { + value 1; + description "Capability supported"; + } + } + } + // Counter typedef ospf_Counter32 { type uint32; @@ -19026,20 +21478,17 @@ module Cisco-NX-OS-device { // Database type typedef ospf_DbT { type enumeration { - - // Link state database enum ls { value 1; + description "Link state database type with value 1"; } - - // Route database enum rt { value 2; + description "Route database type with value 2"; } - - // Nexthop database enum nh { value 3; + description "Nexthop database type with value 3"; } } default "ls"; @@ -19067,10 +21516,8 @@ module Cisco-NX-OS-device { } // Discard Route - // Default Value computed from int,ext typedef ospf_DiscardRoute { - // bits- Using string type string; default "int,ext"; } @@ -19084,10 +21531,8 @@ module Cisco-NX-OS-device { } // Dom controls - // Default Value computed from unspecified typedef ospf_DomControl { - // bits- Using string type string; default "unspecified"; } @@ -19103,25 +21548,21 @@ module Cisco-NX-OS-device { // Event history Buffer size typedef ospf_EventLogSize { type enumeration { - - // Event history logging disabled enum disabled { value 0; + description "Event history logging disabled"; } - - // Small enum small { value 1; + description "Event history Buffer size is Small"; } - - // Medium enum medium { value 2; + description "Event history Buffer size is Medium"; } - - // Large enum large { value 3; + description "Event history Buffer size is Large"; } } default "small"; @@ -19137,100 +21578,101 @@ module Cisco-NX-OS-device { // Event Log Type typedef ospf_EventType { type enumeration { - - // Adjacency Events enum adj { value 0; + description "Event Log Type - Adjacency Events"; } - - // Internal Events enum internal { value 1; + description "Event Log Type - Internal Events"; } - - // Events enum ha { value 2; + description "Event Log Type - HA Events"; } - - // LSA flooding Events enum lsa-flood { value 3; + description "Event Log Type - LSA flooding Events"; } - - // LSA Events enum lsa { value 4; + description "Event Log Type - LSA Events"; } - - // SPF Events enum spf { value 5; + description "Event Log Type - SPF Events"; } - - // Redistribution Events enum redist { value 6; + description "Event Log Type - Redistribution Events"; } - - // LDP Events enum ldp { value 7; + description "Event Log Type - LDP Events"; } - - // MPLS TE Events enum mpls-te { value 8; + description "Event Log Type - MPLS TE Events"; } - - // Hellog logs enum hello { value 9; + description "Event Log Type - Hellog packet logs"; } - - // RIB Events enum rib { value 10; + description "Event Log Type - RIB Events"; } - - // SPF Trigger Events enum spf-trigger { value 11; + description "SPF Trigger Events logs"; } - - // CLI Events enum cli { value 12; + description "Event Log Type - CLI Events"; + } + enum segrt { + value 13; + description "Segment Routing Events"; } } } // Failed state qualifier - // Default Value computed from unspecified typedef ospf_FailStQual { - // bits- Using string type string; default "unspecified"; } + // prefix attribute flag status + typedef ospf_FlagStatus { + type enumeration { + enum unspecified { + value 0; + description "Segment routing n-flag is Unspecified"; + } + enum clear { + value 1; + description "Prefix attribute flag status is Clear"; + } + } + default "unspecified"; + } + // Graceful restart controls typedef ospf_GrCtrl { type enumeration { - - // Planned graceful restarts only enum planned-only { value 1; + description "Planned graceful restarts only"; } - - // Complete graceful restart enabled enum complete { value 2; + description "Complete graceful restart enabled"; } - - // Graceful restart disabled enum disabled { value 3; + description "Do not participate in graceful restart procedures"; } } default "complete"; @@ -19260,30 +21702,25 @@ module Cisco-NX-OS-device { // Neighbor restart helper reason typedef ospf_HelperExitQual { type enumeration { - - // Not Attempted enum none { value 1; + description "Neighbor restart helper reason -Not Attempted"; } - - // Restart In Progress enum in-progress { value 2; + description "Neighbor restart helper reason - Restart In Progress"; } - - // Successfully Completed enum completed { value 3; + description "Neighbor restart helper reason - Successfully Completed"; } - - // Timed Out enum timed-out { value 4; + description "Neighbor restart helper reason - Timed Out"; } - - // Topology Changed enum topology-changed { value 5; + description "Neighbor restart helper reason - Topology Changed"; } } default "none"; @@ -19292,25 +21729,21 @@ module Cisco-NX-OS-device { // Neighbor restart helper status typedef ospf_HelperSt { type enumeration { - - // Not Helping enum not-helping { value 1; + description "Neighbor restart helper status - not-helping"; } - - // Helping enum helping { value 2; + description "Neighbor restart helper status - Helping"; } } default "not-helping"; } // Interface controls - // Default Value computed from unspecified typedef ospf_IfControl { - // bits- Using string type string; default "unspecified"; } @@ -19324,10 +21757,8 @@ module Cisco-NX-OS-device { } // Interface flags - // Default Value computed from unspecified typedef ospf_IfFlags { - // bits- Using string type string; default "unspecified"; } @@ -19335,45 +21766,37 @@ module Cisco-NX-OS-device { // Interface operational state typedef ospf_IfOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Interface operational state is unknown"; } - - // Down enum down { value 1; + description "Interface operational state is down"; } - - // Loopback enum loopback { value 2; + description "Interface operational state is Loopback"; } - - // Waiting enum waiting { value 3; + description "Interface operational state is Waiting"; } - - // p2p enum p2p { value 4; + description "Interface operational state is p2p"; } - - // DR enum dr { value 5; + description "Interface operational state is DR"; } - - // BDR enum bdr { value 6; + description "Interface operational state is BDR"; } - - // DR-other enum dr-other { value 7; + description "Interface operational state is DR-other"; } } default "down"; @@ -19382,35 +21805,29 @@ module Cisco-NX-OS-device { // Interface type typedef ospf_IfType { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Interface type is unspecified"; } - - // Loopback enum loopback { value 1; + description "Interface type is Loopback"; } - - // P2P enum p2p { value 2; + description "Interface type is P2P"; } - - // P2MP enum p2mp { value 3; + description "Interface type is P2MP"; } - - // NBMA enum nbma { value 4; + description "Interface type is NBMA"; } - - // Broadcast enum bcast { value 5; + description "Interface type is Broadcast"; } } default "unspecified"; @@ -19464,15 +21881,13 @@ module Cisco-NX-OS-device { typedef ospf_LsaLeakOperSt { type enumeration { - - // InActive enum Inactive { value 0; + description "LSA leak operational state is InActive"; } - - // Active enum active { value 1; + description "LSA leak operational state is Active"; } } default "Inactive"; @@ -19486,50 +21901,41 @@ module Cisco-NX-OS-device { // Lsa type typedef ospf_LsaT { type enumeration { - - // Router LSA enum router { value 1; + description "Router Link-State Advertisements(LSA)"; } - - // Network LSA enum nw { value 2; + description "Network Link-State Advertisements(LSA)"; } - - // Summary LSA enum summary { value 3; + description "Summary Link-State Advertisements(LSA)"; } - - // ASBR LSA enum asbr { value 4; + description "ASBR Link-State Advertisements(LSA)"; } - - // External LSA enum ext { value 5; + description "External Link-State Advertisements(LSA)"; } - - // NSSA LSA enum nssa { value 7; + description "NSSA Link-State Advertisements(LSA)"; } - - // Link opaque LSA enum link-opq { value 9; + description "Link opaque Link-State Advertisements(LSA)"; } - - // Area opaque LSA enum area-opq { value 10; + description "Area opaque Link-State Advertisements(LSA)"; } - - // AS opaque LSA enum as-opq { value 11; + description "AS opaque Link-State Advertisements(LSA)"; } } default "router"; @@ -19568,20 +21974,17 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaAct { type enumeration { - - // Reject enum reject { value 0; + description "Reject LSAs beyond the limit"; } - - // Restart enum restart { value 1; + description "Restart the max-lsa neighbor"; } - - // Log enum log { value 2; + description "Max-LSA action - log a warning"; } } default "reject"; @@ -19589,15 +21992,13 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaOperSt { type enumeration { - - // ok enum ok { value 0; + description "Max LSA operational state is OK"; } - - // Threshold Exceeded enum threshold-exceeded { value 1; + description "Max LSA operational state - Threshold Exceeded"; } } default "ok"; @@ -19605,35 +22006,29 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaOperStQual { type enumeration { - - // ok enum ok { value 0; + description "Max LSA operational state qualifier is ok"; } - - // warning enum warning { value 1; + description "Max LSA operational state qualifier - warning"; } - - // Overload enum overload { value 2; + description "Max LSA operational state qualifier - Overload"; } - - // Sleep enum sleep { value 3; + description "Max LSA operational state qualifier - Sleep state"; } - - // Reset enum reset { value 4; + description "Max LSA operational state qualifier - Reset state"; } - - // Perm-Sleep enum perm-sleep { value 5; + description "Max LSA operational state qualifier - Permanent Sleep"; } } default "ok"; @@ -19649,7 +22044,7 @@ module Cisco-NX-OS-device { // Max metric value to be used for advertising LSAs typedef ospf_MaxMetric { type uint32 { - range "1..16777215"; + range "0..16777215"; } } @@ -19657,7 +22052,6 @@ module Cisco-NX-OS-device { // metric LSAs and for which LSAs/links typedef ospf_MaxMetricControl { - // bits- Using string type string; } @@ -19670,10 +22064,8 @@ module Cisco-NX-OS-device { } // Nexthop flags - // Default Value computed from unspecified typedef ospf_NhFlags { - // bits- Using string type string; default "unspecified"; } @@ -19688,20 +22080,17 @@ module Cisco-NX-OS-device { // NSSA translator role typedef ospf_NssaTransRole { type enumeration { - - // Always enum always { value 1; + description "NSSA translator role is Always"; } - - // Candidate enum candidate { value 2; + description "NSSA translator role is Candidate"; } - - // Never enum never { value 3; + description "NSSA translator role is Never"; } } default "candidate"; @@ -19710,20 +22099,17 @@ module Cisco-NX-OS-device { // NSSA translator state typedef ospf_NssaTransSt { type enumeration { - - // Enabled enum enabled { value 1; + description "NSSA translator state is Enabled"; } - - // Elected enum elected { value 2; + description "NSSA translator state is Elected"; } - - // Disabled enum disabled { value 3; + description "NSSA translator state is Disabled"; } } default "elected"; @@ -19740,20 +22126,17 @@ module Cisco-NX-OS-device { // Network type typedef ospf_NwT { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Network type is Unspecified"; } - - // Point-to-point enum p2p { value 1; + description "Network type is set to Point-to-point"; } - - // Broadcast enum bcast { value 2; + description "Network type is set to Broadcast"; } } default "unspecified"; @@ -19762,20 +22145,17 @@ module Cisco-NX-OS-device { // L3vm Operational state typedef ospf_OperSt { type enumeration { - - // Invalid enum invalid { value 0; + description "L3vm Operational state is invalid"; } - - // Down enum down { value 1; + description "L3vm Operational state is down"; } - - // Up enum up { value 2; + description "L3vm Operational state is up"; } } default "down"; @@ -19789,20 +22169,17 @@ module Cisco-NX-OS-device { // Passive Control typedef ospf_PassiveControl { type enumeration { - - // Unconfigure interface passive configuration enum unspecified { value 0; + description "Unconfigure interface passive configuration"; } - - // Configure interface as passive enum enabled { value 1; + description "Configure interface as passive"; } - - // Configure interface as non-passive enum disabled { value 2; + description "Configure interface as non-passive"; } } default "unspecified"; @@ -19811,50 +22188,54 @@ module Cisco-NX-OS-device { // Path type typedef ospf_PathT { type enumeration { - - // Intra enum intra { value 1; + description "Path type is Intra route path"; } - - // Discard internal enum discard-int { value 2; + description "Path type - Discard internal route"; } - - // Inter enum inter { value 3; + description "OSPF route path type - Inter"; } - - // Discard external enum discard-ext { value 4; + description "OSPF route path type - Discard external"; } - - // External1 enum ext1 { value 5; + description "OSPF route path type - External1"; } - - // NSSA1 enum nssa1 { value 6; + description "OSPF route path type - NSSA1"; } - - // External2 enum ext2 { value 7; + description "OSPF route path type - External2"; } - - // NSSA2 enum nssa2 { value 8; + description "OSPF route path type - NSSA2"; } } default "intra"; } + // Extended Prefix Flags + typedef ospf_PfxFlags { + + type string; + } + + // SR Prefix SID flags + typedef ospf_PfxSidFlags { + + type string; + } + typedef ospf_ResetIntvl { type uint32 { range "1..1440"; @@ -19879,10 +22260,8 @@ module Cisco-NX-OS-device { } // Route flags - // Default Value computed from unspecified typedef ospf_RtFlags { - // bits- Using string type string; default "unspecified"; } @@ -19895,37 +22274,38 @@ module Cisco-NX-OS-device { // Segment Routing Enable/Disable Control typedef ospf_SegRtControl { type enumeration { - - // Unconfigure area Segment Routing configuration enum unspecified { value 0; + description "Unconfigure area Segment Routing configuration"; } - - // Configure area to enable Segment Routing MPLS enum mpls { value 1; + description "Configure area to enable Segment Routing MPLS"; } - - // Configure area to disable Segment Routing MPLS/IPv6 enum disable { value 2; + description "Configure area to disable Segment Routing MPLS/IPv6"; } } default "unspecified"; } + // Segment routing mpls label + typedef ospf_SgmntRtgMplsLabel { + type uint32; + default "4294967295"; + } + // Segment Routing MPLS Operational State (Enable/Disable) typedef ospf_SgmntRtgMplsOperSt { type enumeration { - - // Segment Routing MPLS is Disabled at this level enum Disabled { value 0; + description "Segment Routing MPLS is Disabled at this level"; } - - // Segment Routing MPLS is Enabled at this level enum Enabled { value 1; + description "Segment Routing MPLS is Enabled at this level"; } } default "Disabled"; @@ -19983,10 +22363,8 @@ module Cisco-NX-OS-device { } // Summary Control - // Default Value computed from unspecified typedef ospf_SumControl { - // bits- Using string type string; default "unspecified"; } @@ -19994,27 +22372,25 @@ module Cisco-NX-OS-device { // Area range cost typedef ospf_SumCost { type uint32 { - range "0..16777215"; + range "0..16777216"; } + default "16777216"; } // Vrf-Lite Control typedef ospf_VrfLiteControl { type enumeration { - - // Unconfigure Vrf-Lite configuration enum unspecified { value 0; + description "Unconfigure Vrf-Lite configuration"; } - - // Configure Vrf-Lite for L3VPN enum l3vpn { value 1; + description "Configure Vrf-Lite for L3VPN"; } - - // Configure Vrf-Lite for Ethernet VPN enum evpn { value 2; + description "Configure Vrf-Lite for Ethernet VPN"; } } default "unspecified"; @@ -20028,6 +22404,210 @@ module Cisco-NX-OS-device { default "1"; } + // Administrative Distance + typedef ospfv3_AdminDist { + type uint8 { + range "1..255"; + } + default "110"; + } + + // Address family type + typedef ospfv3_AfT { + type enumeration { + enum ipv6-ucast { + value 1; + description "IPv6 unicast address family"; + } + } + default "ipv6-ucast"; + } + + // Area id + typedef ospfv3_AreaId { + type string; + } + + // Area type + typedef ospfv3_AreaT { + type enumeration { + enum regular { + value 1; + description "Area type is Regular area"; + } + enum stub { + value 2; + description "Area type is Stub area"; + } + enum nssa { + value 3; + description "Area type is NSSA area"; + } + } + default "regular"; + } + + // Dead interval + typedef ospfv3_DeadIntvl { + type uint32 { + range "0..65535"; + } + default "0"; + } + + // default Metric + typedef ospfv3_DefMetric { + type uint32 { + range "0..16777214"; + } + default "0"; + } + + // Designated priority + typedef ospfv3_DesigPrio { + type uint8 { + range "0..255"; + } + default "1"; + } + + // Dom name + typedef ospfv3_DomName { + type l3_VrfName; + } + + // Graceful restart controls + typedef ospfv3_GrCtrl { + type enumeration { + enum planned-only { + value 1; + description "Planned graceful restarts only"; + } + enum complete { + value 2; + description "Complete graceful restart enabled"; + } + enum disabled { + value 3; + description "Graceful restart disabled"; + } + } + default "complete"; + } + + // Graceful restart time period in seconds + typedef ospfv3_GrPeriod { + type uint32 { + range "5..1800"; + } + default "60"; + } + + // Hello interval + typedef ospfv3_HelloIntvl { + type uint16 { + range "1..65535"; + } + default "10"; + } + + // Interface cost + typedef ospfv3_IfCost { + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Instance id + typedef ospfv3_InstanceID { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Instance name + typedef ospfv3_InstanceName { + type string { + length "0..20"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + } + + // Network type + typedef ospfv3_NwT { + type enumeration { + enum none { + value 0; + description "Network type is not configured"; + } + enum p2p { + value 1; + description "OSPF point-to-point network"; + } + enum bcast { + value 2; + description "OSPF broadcast multi-access network"; + } + } + default "none"; + } + + // VRF Operational state + typedef ospfv3_OperSt { + type enumeration { + enum invalid { + value 0; + description "VRF Operational state is invalid"; + } + enum down { + value 1; + description "VRF Operational state is down"; + } + enum up { + value 2; + description "VRF Operational state is up"; + } + } + default "down"; + } + + // Passive Control + typedef ospfv3_PassiveControl { + type enumeration { + enum none { + value 0; + description "Unconfigure interface passive configuration"; + } + enum enabled { + value 1; + description "Configure interface as passive"; + } + enum disabled { + value 2; + description "Configure interface as non-passive"; + } + } + default "none"; + } + + // Retransmit interval + typedef ospfv3_ReTxIntvl { + type uint16 { + range "1..65535"; + } + default "5"; + } + + // Tramist delay + typedef ospfv3_TxDelay { + type uint16 { + range "1..450"; + } + default "1"; + } + // Bundle port number typedef pc_BdlPortNum { type uint32; @@ -20065,40 +22645,28 @@ module Cisco-NX-OS-device { // Member port flags typedef pc_Flags { - // bits- Using string type string; } // Hash distribution type typedef pc_HashDist { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Adaptive enum adaptive { value 1; + description "Adaptive"; } - - // Fixed enum fixed { value 2; + description "Fixed"; } } default "none"; } - // Default Value computed from susp-individual,graceful-conv - typedef pc_IfControl { - - // bits- Using string - type string; - default "susp-individual,graceful-conv"; - } - // Interface ordinal typedef pc_Iod { type uint32; @@ -20163,30 +22731,25 @@ module Cisco-NX-OS-device { // Port channel mode typedef pc_Mode { type enumeration { - - // on enum on { value 0; + description "on"; } - - // Static enum static { value 1; + description "Static"; } - - // lacp-active enum active { value 2; + description "lacp-active"; } - - // lacp-passive enum passive { value 3; + description "lacp-passive"; } - - // Mac Pinning enum mac-pin { value 4; + description "Mac Pinning"; } } default "on"; @@ -20200,25 +22763,21 @@ module Cisco-NX-OS-device { // Operational State typedef pc_OperSt { type enumeration { - - // Up enum up { value 0; + description "Up"; } - - // Down enum down { value 1; + description "Down"; } - - // Bringup in Progress enum bringup-in-progress { value 2; + description "Bringup in Progress"; } - - // Module Removed enum module-removed { value 3; + description "Module Removed"; } } } @@ -20226,20 +22785,13 @@ module Cisco-NX-OS-device { // Hash distribution type typedef pc_PCHashDist { type enumeration { - - // None - enum none { - value 0; - } - - // Adaptive enum adaptive { value 1; + description "Adaptive"; } - - // Fixed enum fixed { value 2; + description "Fixed"; } } default "adaptive"; @@ -20248,7 +22800,7 @@ module Cisco-NX-OS-device { // Port channel id typedef pc_PcId { type uint16 { - range "1..65535"; + range "0..65535"; } } @@ -20262,20 +22814,17 @@ module Cisco-NX-OS-device { // Port-channel type typedef pc_PoType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // hif-pc enum hif-pc { value 1; + description "hif-pc"; } - - // non-hif-pc enum non-hif-pc { value 2; + description "non-hif-pc"; } } default "none"; @@ -20309,35 +22858,29 @@ module Cisco-NX-OS-device { // Summarized Operational State typedef pc_SummOperSt { type enumeration { - - // Up enum up { value 0; + description "Up"; } - - // Down enum down { value 1; + description "Down"; } - - // Module-removed enum module-removed { value 2; + description "Module-removed"; } - - // Individual enum individual { value 3; + description "Individual"; } - - // Suspended enum suspended { value 4; + description "Suspended"; } - - // Hot-standby enum hot-standby { value 5; + description "Hot-standby"; } } default "down"; @@ -20350,61 +22893,86 @@ module Cisco-NX-OS-device { // Time typedef pc_Time { - type string; + type union { + type string; + type uint64; + } } // Event History Buffer Type typedef pim6_EhType { type enumeration { - - // Assert-receive events for pim6 enum assertRcv { value 0; + description "Assert-receive events for pim6"; } - - // Bidir events for pim6 enum bidir { value 1; + description "Bidir events for pim6"; } - - // Hello events for pim6 enum hello { value 2; + description "Hello events for pim6"; } - - // Join-prune events for pim6 enum joinPrune { value 3; + description "Join-prune events for pim6"; } - - // null-register events for pim6 enum nullReg { value 4; + description "null-register events for pim6"; } - - // Packet events for pim6 enum packet { value 5; + description "Packet events for pim6"; } - - // pim6-internal events for pim6 - enum pim6Internal { + enum pimInternal { value 6; + description "pim-internal events for pim6"; } - - // RP events for pim6 enum rp { value 7; + description "RP events for pim6"; } - - // vrf events for pim6 enum vrf { value 8; + description "vrf events for pim6"; } - - // join-prune-summary events for pim6 enum jpSum { value 9; + description "join-prune-summary events for pim6"; + } + enum jpTw { + value 10; + description "join-prune-tw events for pim6"; + } + enum cli { + value 11; + description "cli events for pim6"; + } + enum vpc { + value 12; + description "vpc events for pim6"; + } + enum pimLib { + value 13; + description "pim-library events for pim6"; + } + enum nbm { + value 14; + description "nbm events for pim6"; + } + enum mrib { + value 15; + description "mrib events for pim6"; + } + enum dataRegRecv { + value 16; + description "data-register-receive events for pim6"; + } + enum txlist { + value 17; + description "txlist events for pim6"; } } } @@ -20412,28 +22980,25 @@ module Cisco-NX-OS-device { // Event History Buffer size in Text/kb typedef pim6_Size { type uint32 { - range "0..9 | 2097152..10485760"; + range "0..4 | 5..119999999"; } - default "5242880"; + default "0"; } // BFD state typedef pim_BfdInstSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } - - // None enum none { value 0; + description "None"; } } default "none"; @@ -20459,95 +23024,77 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef pim_EhType { type enumeration { - - // Assert events for pim enum assert { value 0; + description "Assert events for pim"; } - - // Bidir events for pim enum bidir { value 1; + description "Bidir events for pim"; } - - // Cli events for pim enum cli { value 2; + description "Cli events for pim"; } - - // Data-register-receive events for pim enum dataRegRecv { value 3; + description "Data-register-receive events for pim"; } - - // Hello events for pim enum hello { value 4; + description "Hello events for pim"; } - - // Join-prune events for pim enum joinPrune { value 5; + description "Join-prune events for pim"; } - - // Mrib events for pim enum mrib { value 6; + description "Mrib events for pim"; } - - // null-register events for pim enum nullReg { value 7; + description "null-register events for pim"; } - - // Packet events for pim enum packet { value 8; + description "Packet events for pim"; } - - // NBM events for pim enum nbm { value 9; + description "NBM events for pim"; } - - // pim-internal events for pim enum pimInternal { value 10; + description "pim-internal events for pim"; } - - // pim-library events for pim enum pimLib { value 11; + description "pim-library events for pim"; } - - // RP events for pim enum rp { value 12; + description "RP events for pim"; } - - // txlist events for pim enum txlist { value 13; + description "txlist events for pim"; } - - // vpc events for pim enum vpc { value 14; + description "vpc events for pim"; } - - // vrf events for pim enum vrf { value 15; + description "vrf events for pim"; } - - // join-prune-summary events for pim enum jpSum { value 16; + description "join-prune-summary events for pim"; } - - // join-prune-tw events for pim enum jpTw { value 17; + description "join-prune-tw events for pim"; } } } @@ -20555,26 +23102,34 @@ module Cisco-NX-OS-device { // Interface Ctrl typedef pim_IfCtrl { - // bits- Using string type string; + default "1"; + } + + typedef pim_LoggingLvl { + type uint16 { + range "0..7"; + } + default "5"; } // route oif list types typedef pim_OifFlagsNew { - // bits- Using string type string; } // Generation Id typedef pim_PropGenId { - type uint32; + type uint32 { + range "0..4294967295"; + } } // Event History Buffer size in Text/kb typedef pim_Size { type uint32 { - range "0..4 | 5..4294967295"; + range "0..4 | 5..119999999"; } default "3"; } @@ -20582,20 +23137,17 @@ module Cisco-NX-OS-device { // Database type typedef pim_ifdbT { type enumeration { - - // PIM Stats database enum stats { value 0; + description "PIM Stats database"; } - - // PIM Adj database enum adj { value 1; + description "PIM Adj database"; } - - // PIM Property database enum prop { value 2; + description "PIM Property database"; } } } @@ -20612,25 +23164,79 @@ module Cisco-NX-OS-device { type string; } + typedef pki_CertEnrollType { + type enumeration { + enum none { + value 0; + description "Trustpoint Enrollment None"; + } + enum terminal { + value 1; + description "Configure Trustpoint Enrollment via Console"; + } + } + default "none"; + } + + typedef pki_CertLookupType { + type enumeration { + enum remote { + value 2; + description "Use Remote Certstore for Lookup"; + } + enum local { + value 3; + description "Use Local Certstore for Lookup"; + } + enum both { + value 4; + description "Use Both Local and Remote Certstore for Lookup"; + } + } + default "local"; + } + + typedef pki_CertRevokeCheck { + type enumeration { + enum crl { + value 0; + description "Configure Revocation Check Using Crl"; + } + enum none { + value 1; + description "Configure Revocation Check Using None"; + } + enum crl_none { + value 2; + description "Configure both Revocation Check Methods"; + } + } + default "crl"; + } + typedef pki_CertValidity { type string; } + typedef pki_CrlRefreshTime { + type uint16 { + range "0..744"; + } + } + typedef pki_Csync2KeyType { type string; } typedef pki_CsyncActivationStateType { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // Enabled enum enabled { value 1; + description "Enabled"; } } default "enabled"; @@ -20638,15 +23244,13 @@ module Cisco-NX-OS-device { typedef pki_CsyncElementType { type enumeration { - - // exclude enum exclude { value 0; + description "exclude"; } - - // include enum include { value 1; + description "include"; } } default "include"; @@ -20663,6 +23267,12 @@ module Cisco-NX-OS-device { type string; } + typedef pki_FilterName { + type string { + length "0..64"; + } + } + typedef pki_GuiIdleTimeoutType { type uint16 { range "60..65525"; @@ -20670,32 +23280,33 @@ module Cisco-NX-OS-device { default "1200"; } + typedef pki_KeyLabel { + type string { + length "0..64"; + } + } + typedef pki_KeyringState { type enumeration { - - // Started enum started { value 1; + description "Started"; } - - // Created enum created { value 2; + description "Created"; } - - // Request Created enum reqCreated { value 3; + description "Request Created"; } - - // Trust Provider Set enum tpSet { value 4; + description "Trust Provider Set"; } - - // Completed enum completed { value 5; + description "Completed"; } } default "started"; @@ -20703,28 +23314,30 @@ module Cisco-NX-OS-device { typedef pki_Modulus { type enumeration { - - // MOD 512 enum mod512 { value 512; + description "MOD 512"; } - - // MOD 1024 enum mod1024 { value 1024; + description "MOD 1024"; } - - // MOD 1536 enum mod1536 { value 1536; + description "MOD 1536"; } - - // MOD 2048 enum mod2048 { value 2048; + description "MOD 2048"; } } - default "mod2048"; + default "mod512"; + } + + typedef pki_Port { + type uint32 { + range "0..65535"; + } } typedef pki_PrivateKey { @@ -20733,14 +23346,18 @@ module Cisco-NX-OS-device { } } + typedef pki_ProviderGroupName { + type string { + length "0..127"; + } + } + typedef pki_SHA256_SharedSecret16 { type string; } - // Default Value computed from 7 typedef pki_SessionRecordFlags { - // bits- Using string type string; default "7"; } @@ -20760,16 +23377,187 @@ module Cisco-NX-OS-device { default "24"; } + // Pktmgr Rate-limit Direction + typedef pktmgr_RateLimitDirection { + type enumeration { + enum input { + value 1; + description "Set Max Input Packet Rate"; + } + enum output { + value 2; + description "Set Max Output Packet Rate"; + } + enum both { + value 3; + description "Set Max Input and Output Packet Rate"; + } + enum unspecified { + value 4; + description "Unspecified Direction"; + } + } + default "unspecified"; + } + + // acl tap-aggregation + typedef platform_AclTapAggregation { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + + typedef platform_AdminState { + type nw_AdminSt; + default "disabled"; + } + + typedef platform_BufferProfileOptions { + type enumeration { + enum mesh { + value 0; + description "Mesh optimized"; + } + enum burst { + value 1; + description "Burst optimized"; + } + enum ultra-burst { + value 2; + description "Ultra burst optimized"; + } + } + default "burst"; + } + + typedef platform_Concatenation { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + enum rotateEnable { + value 2; + } + } + default "disable"; + } + + // PFC WD Types + typedef platform_ConfigOnOff { + type enumeration { + enum off { + value 0; + } + enum on { + value 1; + } + } + default "off"; + } + + typedef platform_ConfigState { + type enumeration { + enum Disabled { + value 0; + } + enum Enabled { + value 1; + } + } + default "Disabled"; + } + + typedef platform_ConfigureSt { + type enumeration { + enum unconfigure { + value 0; + } + enum configure { + value 1; + } + } + default "configure"; + } + + typedef platform_DisParseErr { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + + typedef platform_Encapsulation { + type enumeration { + enum gre { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + } + + typedef platform_FabricMode { + type enumeration { + enum default { + value 2; + } + enum full-rate { + value 1; + } + } + default "default"; + } + typedef platform_FabricSpeed { type enumeration { - enum DEFAULT { + enum default { value 0; } - enum FABRIC_SPEED_40G { + enum fabric-speed-40g { value 1; } } - default "DEFAULT"; + default "default"; + } + + typedef platform_FrontPortmode { + type enumeration { + enum sfp-plus { + value 0; + } + enum qsfp { + value 1; + } + } + default "qsfp"; + } + + typedef platform_GlobalTxSpan { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; } typedef platform_HwProfile { @@ -20858,6 +23646,12 @@ module Cisco-NX-OS-device { enum TET_PORT_MODE_128X25G { value 31; } + enum CMR_PORT_MODE_128X100G_32X400G { + value 32; + } + enum CMR_PORT_MODE_160X25G_8X100G { + value 33; + } } default "Default"; } @@ -20869,9370 +23663,10800 @@ module Cisco-NX-OS-device { default "0"; } - typedef platform_LpmMaxLimits { - type uint16 { - range "0..4096"; + typedef platform_IPv6LpmRange { + type uint32 { + range "0..6144"; } } - typedef platform_MulticastMaxLimit { - type uint16 { - range "0..8000"; + typedef platform_Interval { + type uint32 { + range "500..60000"; } - default "4096"; } - typedef platform_PcLbAlgo { + typedef platform_LoadBalanceAlgo { type enumeration { - enum PC_LB_ALGO_DLB { + enum dstMac { value 1; } - enum PC_LB_ALGO_RTAG7 { + enum srcMac { value 2; } - enum PC_LB_ALGO_RTAG7_MURMUR { + enum srcDstMac { value 3; } - enum PC_LB_ALGO_RTAG7_LOCAL_CRC { + enum dstIpVlan { value 4; } - enum PC_LB_ALGO_DYNAMIC_PIN { + enum srcIpVlan { value 5; } - } - default "PC_LB_ALGO_DLB"; - } - - typedef platform_Percentage { - type uint16 { - range "1..100"; - } - } - - typedef platform_QosMinBuffer { - type enumeration { - enum all { - value 0; + enum srcDstIpVlan { + value 6; } - enum none { - value 1; + enum dstL4Port { + value 7; } - enum default { - value 2; + enum srcL4Port { + value 8; } - } - default "all"; - } - - typedef platform_RoutingMode { - type enumeration { - enum DEFAULT { - value 0; + enum srcDstL4Port { + value 9; } - enum NON_HIER_DEFAULT { - value 1; + enum dstIpL4Port { + value 10; } - enum NON_HIER_MAX_L3 { - value 2; + enum srcIpL4Port { + value 11; } - enum MAX_HOST { - value 3; + enum srcDstIpL4Port { + value 12; } - enum TOR_MAX_L3 { - value 4; + enum dstIpL4PortVlan { + value 13; } - enum DEFAULT_64B { - value 5; + enum srcIpL4PortVlan { + value 14; } - enum NON_HIER_MAX_L3_64B { - value 6; + enum srcDstIpL4PortVlan { + value 15; } - enum TOR_MAX_L3_64B { - value 7; + enum dstIp { + value 16; } - enum TOR_MAX_L2 { - value 8; + enum srcIp { + value 17; } - enum TOR_MAX_L2L3 { - value 9; + enum srcDstIp { + value 18; } - enum TOR_TEMPLATE_OVL_HOST_SCALE { + enum srcIpGre { value 21; } - enum TEMPLATE_LPM_HEAVY { + enum dstIpGre { value 22; } - enum TOR_TEMPLATE_LPM_SCALE_V6_64 { + enum srcDstIpGre { value 23; } - enum TOR_TEMPLATE_DUAL_STACK_HOST_SCALE { - value 24; + enum srcInnerheader { + value 30; } - enum TEMPLATE_DYNAMIC_TRIE_SCALE { - value 25; + enum dstInnerheader { + value 31; } - enum TEMPLATE_MULTICAST_HEAVY { - value 26; + enum srcDstInnerheader { + value 32; } - enum TEMPLATE_VXLAN_SCALE { - value 27; + enum srcGtpu { + value 33; } - enum TEMPLATE_MPLS_SCALE { - value 28; + enum dstGtpu { + value 34; } - enum TEMPLATE_IPV6_LPM_HEAVY { - value 29; + enum srcDstGtpu { + value 35; } } - default "DEFAULT"; + default "srcDstIpL4Port"; } - typedef platform_SwitchingMode { - type enumeration { - enum DEFAULT { - value 0; - } - enum STORE_FORWARD { - value 1; - } + // Log level type + typedef platform_LoggingLevel { + type uint16 { + range "0..7"; } - default "DEFAULT"; + default "5"; } - typedef platform_Tuple { + // Logging Level + typedef platform_LoggingType { type enumeration { - enum Disable { + enum Emergencies { value 0; + description "Emergencies"; } - enum Enable { + enum Alerts { value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "Disable"; + default "Notification"; } - typedef platform_UnicastMaxLimit { + typedef platform_LpmMaxLimits { type uint16 { - range "0..8000"; + range "0..4096"; } } - typedef platform_bufferMonitorMd { + typedef platform_McastFlexStats { type enumeration { - enum None { + enum disable { value 0; } - enum Unicast { - value 2; - } - enum Multicast { - value 3; + enum enable { + value 1; } } - default "None"; + default "disable"; } - typedef platform_bufferMonitorSampling { - - // MAX Converted to int from 0xFFFFFFFF + typedef platform_McastLpmMaxEntriesType { type uint32 { - range "10..4294967295"; + range "0..4096"; } - default "4294967295"; + default "2048"; } - typedef platform_bufferMonitorSt { + typedef platform_McastNlb { type enumeration { - enum Enable { - value 1; - } - enum Disable { + enum disable { value 0; } + enum enable { + value 1; + } } - default "Disable"; - } - - typedef platform_bufferMonitorThreshhold { - type uint32 { - range "0..6144"; - } - default "0"; - } - - typedef platform_flowTcamRegionSize { - type uint32 { - range "0..2147483647"; - } - default "512"; + default "disable"; } - typedef platform_infraVlanForce { + typedef platform_MldSnooping { type enumeration { - enum Disable { + enum disable { value 0; } - enum Enable { + enum enable { value 1; } } - default "Disable"; - } - - typedef platform_infraVlanId { - type uint16 { - range "0..4096"; - } - } - - typedef platform_latencyMonitorSampling { - type uint32 { - range "1..30"; - } - default "3"; + default "disable"; } - typedef platform_latencyMonitorSt { + typedef platform_MplsEcmpMode { type enumeration { - enum Enable { + enum disable { value 1; + description "Extended-ECMP off"; } - enum Disable { + enum enable { value 0; + description "Extended-ECMP on"; } } - default "Disable"; - } - - typedef platform_latencyMonitorThreshholdAv { - type uint32 { - range "300..20000000"; - } - default "1000000"; + default "enable"; } - typedef platform_latencyMonitorThreshholdMx { - type uint32 { - range "300..20000000"; + typedef platform_MplsStatsType { + type enumeration { + enum PACKETS { + value 0; + description "Packets only mode"; + } + enum BYTES { + value 1; + description "Bytes only mode"; + } } - default "2000000"; + default "PACKETS"; } - typedef platform_moduleNumberSt { - type uint16 { - range "1..32"; + typedef platform_MroutingDisableL2Upd { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } + default "disable"; } - typedef platform_multicastServiceReflectPort { - type uint32 { - range "0..48"; + typedef platform_MroutingDisableSecRouteUpd { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } - default "0"; + default "disable"; } - typedef platform_poweroffSt { + // mrouting + typedef platform_MroutingPerfMode { type enumeration { - - // No Power Off - enum no { + enum disable { value 0; } - - // Power Off - enum yes { + enum enable { value 1; } } + default "disable"; } - typedef platform_tcamRegionSize { - type uint32 { - range "0..2147483647"; + typedef platform_MulticastMaxLimit { + type uint16 { + range "0..8000"; } + default "4096"; } - typedef poe_poePolice { + typedef platform_OqDropsType { type enumeration { - enum Default { - value 0; - } - enum errdisable { + enum occupancy { value 1; + description "Occupancy drops"; } - enum log { + enum aqm { value 2; + description "WRED or AFD drops"; + } + enum both { + value 3; + description "Both aqm and occupancy"; } } + default "both"; } - typedef poe_poePortmode { + typedef platform_OqStatsType { type enumeration { - enum Default { - value 0; - } - enum never { + enum occupancy { value 1; + description "Occupancy drops"; } - enum auto { + enum aqm { value 2; + description "WRED or AFD drops"; } - enum static { + enum both { value 3; + description "Both aqm and occupancy"; + } + enum ecn-stats { + value 4; + description "ECN marking statistics"; + } + enum ecn_and_aqm { + value 5; + description "Both ecn and aqm"; + } + enum ecn_and_occupancy { + value 6; + description "Both ecn and occupancy"; + } + enum all { + value 7; + description "Aggregated OCC-drops, WRED-drops, ECN-stats"; } } - default "Default"; + default "both"; } - typedef poe_poePriority { + typedef platform_PcFastConv { type enumeration { - enum low { - value 0; - } - enum high { + enum enable { value 1; + description "port-channel fast convergence"; + } + enum disable { + value 2; + description "no port-channel fast convergence"; } } + default "disable"; } - // Burst size - typedef policer_Burst { - type uint32; + typedef platform_PcLbAlgo { + type enumeration { + enum PC_LB_ALGO_DLB { + value 1; + } + enum PC_LB_ALGO_RTAG7 { + value 2; + } + enum PC_LB_ALGO_RTAG7_MURMUR { + value 3; + } + enum PC_LB_ALGO_RTAG7_LOCAL_CRC { + value 4; + } + enum PC_LB_ALGO_DYNAMIC_PIN { + value 5; + } + } + default "PC_LB_ALGO_DLB"; } - // Committed rate - typedef policer_Rate { - type uint32; + typedef platform_PcLbRes { + type enumeration { + enum yes { + value 1; + description "port-channel load-balance resilient"; + } + enum no { + value 2; + description "no port-channel load-balance resilient"; + } + } + default "no"; } - // Cpu History duration name - typedef proc_CpuHistoryDurationName { + typedef platform_PcMplsLbLabelIp { type enumeration { - - // last60seconds - enum last60seconds { + enum DEFAULT { + value 0; + } + enum LABEL_IP { value 1; } } - default "last60seconds"; + default "DEFAULT"; } - // Cpu History type - typedef proc_CpuHistoryList { - type mtx_array_uint32; + typedef platform_PcMplsLbLabelOnly { + type enumeration { + enum DEFAULT { + value 0; + } + enum LABEL_ONLY { + value 1; + } + } + default "DEFAULT"; } - // CPU Usage - typedef proc_CpuUsage { - type uint32 { - range "0..100"; + typedef platform_PcScaleFanout { + type enumeration { + enum enable { + value 1; + description "port-channel scale fanout"; + } + enum disable { + value 2; + description "no port-channel scale fanout"; + } } - default "0"; + default "disable"; } - // Operational Status - typedef proc_OperSt { + // Input Buffer Peak Type + typedef platform_PeakCountType { type enumeration { - - // Interruptible sleep - enum intr-sleep { + enum port { value 0; + description "Buffer input peak type port"; } - - // Stopped - enum stopped { + enum class1 { value 1; + description "Buffer input peak type class1"; } - - // Uninterruptible sleep - enum unintr-sleep { + enum class2 { value 2; + description "Buffer input peak type class2"; } - - // Running - enum running { + enum class3 { value 3; + description "Buffer input peak type class3"; } - - // Dead - enum dead { + enum class4 { value 4; + description "Buffer input peak type class4"; } - - // Defunct - enum defunct { + enum class5 { value 5; + description "Buffer input peak type class5"; + } + enum class6 { + value 6; + description "Buffer input peak type class6"; + } + enum class7 { + value 7; + description "Buffer input peak type class7"; } } - default "intr-sleep"; + default "port"; } - // Process operational state - typedef proc_OperState { - type enumeration { + typedef platform_Percent { + type uint16 { + range "0..100"; + } + default "0"; + } - // Up - enum up { + typedef platform_Percentage { + type uint16 { + range "1..100"; + } + default "90"; + } + + typedef platform_PstatCfg { + type enumeration { + enum PSTAT_DISABLE { value 0; } - - // down - enum down { + enum PSTAT_ENABLE { value 1; } + enum PSTAT_ENABLE_PEAK { + value 2; + } } - default "up"; - } - - // Process id - typedef proc_ProcId { - type uint32; - } - - // Process memory units - typedef proc_ProcMem { - type uint64; + default "PSTAT_DISABLE"; } - // Process name - typedef proc_ProcessName { - type string; + typedef platform_QosAfdBufferProfileOptions { + type enumeration { + enum mesh { + value 0; + description "Mesh optimized"; + } + enum burst { + value 1; + description "Burst optimized"; + } + enum ultra-burst { + value 2; + description "Ultra burst optimized"; + } + } } - // Process Type - typedef proc_ProcessType { + typedef platform_QosGroup { type enumeration { - - // Unknown Type - enum unknown { + enum 0 { value 0; + description "Qos Group 0"; } - - // Non Sysmgr - enum non-sysmgr { + enum 1 { value 1; + description "Qos Group 1"; } - - // Vdc Local - enum vdc-local { + enum 2 { value 2; + description "Qos Group 2"; } - - // Vdc Global - enum vdc-global { + enum 3 { value 3; + description "Qos Group 3"; } - - // Vdc unaware - enum vdc-unaware { + enum all { value 4; - } - - // Not Running - enum not-running { - value 5; - } - - // Terminated Etc - enum terminated-etc { - value 6; + description "Qos Group all"; } } - default "unknown"; - } - - // Program counter - typedef proc_ProgCntr { - type uint64; - } - - // Stack - typedef proc_Stack { - type uint64; - } - - // Process start count - typedef proc_StartCnt { - type uint32; + default "0"; } - typedef qos_Prio { + typedef platform_QosGroupForQueuingStatistics { type enumeration { - - // Unspecified - enum unspecified { + enum q0 { value 0; + description "QOS_GROUP_0"; } - - // Level3 - enum level3 { + enum q1 { value 1; + description "QOS_GROUP_1"; } - - // Level2 - enum level2 { + enum q2 { value 2; + description "QOS_GROUP_2"; } - - // Level1 - enum level1 { + enum q3 { value 3; + description "QOS_GROUP_3"; } - enum policy-plane { + enum q4 { value 4; + description "QOS_GROUP_4"; } - enum control-plane { + enum q5 { value 5; + description "QOS_GROUP_5"; } - enum span { + enum q6 { value 6; + description "QOS_GROUP_6"; + } + enum q7 { + value 7; + description "QOS_GROUP_7"; + } + enum q8 { + value 8; + description "QOS_GROUP_8"; + } + enum q9 { + value 9; + description "QOS_GROUP_9"; } } } - // User configurable classes - typedef qos_TenantPrio { + typedef platform_QosGroupVal { type enumeration { - - // Unspecified - enum unspecified { + enum 0 { value 0; + description "Qos Group 0"; } - - // Level3 - enum level3 { + enum 1 { value 1; + description "Qos Group 1"; } - - // Level2 - enum level2 { + enum 2 { value 2; + description "Qos Group 2"; } - - // Level1 - enum level1 { + enum 3 { value 3; + description "Qos Group 3"; } } - default "unspecified"; - } - - // Bandwidth percentage - typedef qosp_BwPercent { - type uint8 { - range "0..100"; - } - default "20"; + default "3"; } - // Congestion algorithm - typedef qosp_CongAlgo { + typedef platform_QosLabelOpt { type enumeration { - - // Weighted random early detection - enum wred { + enum disable { value 0; } - - // Tail drop - enum tail-drop { + enum enable { value 1; } } - default "tail-drop"; + default "disable"; } - // Control method - typedef qosp_CtrlMeth { + typedef platform_QosMinBuffer { type enumeration { - - // Static - enum static { + enum all { value 0; } - - // Dynamic - enum dynamic { + enum none { value 1; } + enum default { + value 2; + } } - default "dynamic"; - } - - // Dot1p - typedef qosp_Dot1P { - type uint8 { - range "0..7"; - } - default "7"; - } - - // Dscp code point values - typedef qosp_Dscp { - type qosp_DscpCP { - range "0..63"; - } - default "63"; - } - - // DSCP - typedef qosp_DscpCP { - type uint8 { - range "0..63"; - } + default "all"; } - // ECN - typedef qosp_ECN { + typedef platform_RefTemplate { type enumeration { - - // Disabled - enum disabled { + enum unspecified { value 0; + description "unspecified"; } - - // Enabled - enum enabled { - value 1; - } - } - default "disabled"; - } - - // MTU - typedef qosp_MTU { - type uint16 { - range "1500..9216"; - } - default "9216"; - } - - // Min buffers - typedef qosp_MinBuf { - type uint8 { - range "0..3"; - } - default "0"; - } - - // Operational state of Qos Class - typedef qosp_OperSt { - type enumeration { - - // enabled - enum enabled { + enum l3 { value 1; + description "l3"; } - - // disabled - enum disabled { + enum l2-l3 { value 2; + description "l2-l3"; } - } - default "disabled"; - } - - // Queue limit - typedef qosp_QueueLimit { - type uint16 { - range "1500..9216"; - } - default "1522"; - } - - // Scheduling Algorithm - typedef qosp_SchedAlgo { - type enumeration { - - // Weighted round robin - enum wrr { - value 0; + enum nfe { + value 3; + description "nfe"; } - - // Strict priority - enum sp { - value 1; + enum nfe2 { + value 4; + description "nfe2"; } } - default "wrr"; - } - - typedef reference_URI { - type string; } - // Enum types - typedef regress_EnumT { - type enumeration { - - // val1 - enum val1 { - value 1; - } - - // val2 - enum val2 { - value 2; - } - - // val3 - enum val3 { - value 3; - } + typedef platform_Rotate { + type uint16 { + range "0..63"; } - default "val2"; + default "0"; } - typedef reln_ClassId { + typedef platform_RoutingMode { type enumeration { - enum unspecified { + enum DEFAULT { value 0; } - enum cdpIf { + enum NON_HIER_DEFAULT { value 1; } - enum cnwAggrIf { + enum NON_HIER_MAX_L3 { value 2; } - enum cnwPhysIf { + enum MAX_HOST { value 3; } - enum connIf { + enum TOR_MAX_L3 { value 4; } - enum datetimeNtpSrcIf { + enum DEFAULT_64B { value 5; } - enum dhcpClientIf { + enum NON_HIER_MAX_L3_64B { value 6; } - enum dhcpDAIIf { + enum TOR_MAX_L3_64B { value 7; } - enum dhcpIpsgIf { + enum TOR_MAX_L2 { value 8; } - enum dhcpPseudoIf { + enum TOR_MAX_L2L3 { value 9; } - enum dhcpRelayIf { - value 10; - } - enum dhcpServerIf { - value 11; - } - enum dhcpSnoopIf { - value 12; - } - enum dhcpSourceIf { - value 13; - } - enum dhcpSrcIf { - value 14; - } - enum dhcpV6SourceIf { - value 15; - } - enum dhcpV6SrcIf { - value 16; - } - enum egressIf { - value 17; - } - enum ingressIf { - value 18; - } - enum ipSrcIf { - value 19; - } - enum l1EthIf { - value 20; - } - enum l1PhysIf { + enum TOR_TEMPLATE_OVL_HOST_SCALE { value 21; } - enum l2BrIf { + enum TEMPLATE_LPM_HEAVY { value 22; } - enum l2ExtIf { + enum TOR_TEMPLATE_LPM_SCALE_V6_64 { value 23; } - enum l2InbandIf { + enum TOR_TEMPLATE_DUAL_STACK_HOST_SCALE { value 24; } - enum l2VfcIf { + enum TEMPLATE_SERVICE_PROVIDER { value 25; } - enum l3If { + enum TEMPLATE_MULTICAST_HEAVY { value 26; } - enum l3LbRtdIf { + enum TEMPLATE_VXLAN_SCALE { value 27; } - enum lldpIf { + enum TEMPLATE_MPLS_SCALE { value 28; } - enum mcpIf { + enum TEMPLATE_INTERNET_PEERING { value 29; } - enum mgmtMgmtIf { - value 30; - } - enum mgmtRtdMgmtIf { + enum TEMPLATE_MULTICAST_EXT_HEAVY { value 31; } - enum nwIf { - value 32; - } - enum ospfIf { - value 33; - } - enum ospfv3If { - value 34; - } - enum pcAggrIf { + enum TEMPLATE_MULTICAST_DUAL_STACK { value 35; } - enum pktOnPassiveIf { - value 36; - } - enum regressIf { - value 37; - } - enum rsactiveIf { - value 38; - } - enum rtactiveIf { - value 39; - } - enum rtlsNodeToIf { - value 40; - } - enum srcIf { - value 41; - } - enum tunnelIf { - value 42; - } - enum vpcIf { - value 43; - } - enum l3Inst { - value 44; - } - enum l3EncRtdIf { - value 45; - } - enum rtregcomRule { - value 46; - } - enum rtpfxRule { - value 47; - } - enum rtmapMatchRtDst { - value 48; + enum TEMPLATE_L3_HEAVY { + value 32; } } - default "unspecified"; - } - - typedef reln_Dn { - type string; + default "DEFAULT"; } - typedef reln_ResolverType { + typedef platform_SourceScope { type enumeration { - enum mo { + enum unicast-queue { + value 0; + } + enum ingress-port { value 1; } - enum service { + enum egress-port { value 2; } - enum local { - value 3; - } } - default "mo"; + default "unicast-queue"; } - typedef reln_State { + typedef platform_SviAndSiFlexStats { type enumeration { - enum unformed { + enum disable { value 0; } - enum formed { + enum enable { value 1; } - enum missing-target { - value 2; - } - enum invalid-target { - value 4; - } } - default "unformed"; + default "disable"; } - typedef reln_StateQual { + typedef platform_SviFlexStats { type enumeration { - enum none { + enum disable { value 0; } - enum mismatch-target { + enum enable { value 1; } - enum default-target { - value 2; - } } - default "none"; + default "disable"; } - typedef reln_TargetType { + typedef platform_SwitchMode { type enumeration { - enum name { + enum default { value 0; } - enum mo { + enum n3k { value 1; } - enum all { + enum n9k { value 2; } } - default "mo"; + default "default"; } - // Database type - typedef rib_DbT { + typedef platform_SwitchingMode { type enumeration { - - // Route Database - enum rt { - value 1; - } - - // Nexthop Database - enum nh { - value 2; + enum DEFAULT { + value 0; } - - // Adjacency Database - enum adj { - value 3; + enum STORE_FORWARD { + value 1; } } - default "rt"; + default "DEFAULT"; } - // Domain operational state - typedef rib_DomOperSt { + typedef platform_Symmetry { type enumeration { - - // Up - enum up { + enum enable { value 1; } - - // Down pending - enum down-pending { - value 2; - } - - // Purging - enum purged { - value 3; + enum disable { + value 0; } + } + default "disable"; + } - // Down - enum down { - value 4; - } + // System Memory Threshold + typedef platform_SysMemThVal { + type uint32 { + range "50..100"; + } + default "50"; + } - // Down pending - enum del-pending { - value 5; + typedef platform_TcamRegionCfgFault { + type enumeration { + enum none { + value 0; } - - // Deleted - enum deleted { - value 6; + enum TCAM_template_validation { + value 1; } } - default "down"; + default "none"; } - // Next-hop type - // Default Value computed from attached - typedef rib_NhT { - - // bits- Using string - type string; - default "attached"; - } + typedef platform_TcamRegionCfgFaultBmp { - // Owner type - typedef rib_OwnerT { type string; + default "0x0"; } - // Preference - typedef rt_Preference { - type uint8 { - range "1..255"; + typedef platform_TcamTemplateName { + type string { + length "0..40"; } - default "1"; } - // Tag - typedef rt_Tag { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef platform_TcpNatTcamRegionSize { + type uint16 { + range "0..100"; } default "0"; } - // Autonomous system - typedef rtcom_AS { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; + typedef platform_ThresPercentage { + type uint8 { + range "0..100"; } } - // Community type - typedef rtcom_ComT { + typedef platform_ThresUnit { type enumeration { - - // Regular community - enum regular { + enum packets { value 1; + description "Packets"; } - - // Extended community - enum extended { + enum bytes { value 2; + description "Bytes"; + } + enum kbytes { + value 3; + description "kBytes"; + } + enum mbytes { + value 4; + description "mBytes"; } } - default "regular"; + default "bytes"; } - // Mode - typedef rtcom_Mode { + typedef platform_ThreshUnit { type enumeration { - - // Standard - enum standard { + enum bytes { value 1; + description "bytes"; } + } + default "bytes"; + } - // Regular expression - enum regex { - value 2; - } + typedef platform_Threshold { + type uint32 { + range "0..13319072"; } - default "standard"; + default "0"; } - // Route control direction - typedef rtctrl_RtCtrlDir { + // PacketDrop Types + typedef platform_TriggerType { type enumeration { - - // Incoming - enum in { + enum wred { + value 0; + } + enum ingress-admission { value 1; } - - // Outgoing - enum out { + enum egress-admission { value 2; } } - default "in"; + default "wred"; } - // Route target policy type - typedef rtctrl_RttPType { + typedef platform_Tuple { type enumeration { - - // Import - enum import { - value 1; + enum Disable { + value 0; } - - // Export - enum export { - value 2; + enum Enable { + value 1; } } - default "import"; - } - - // ASM Control - typedef rtdmc_ASMCtrl { - - // bits- Using string - type string; - } - - // Adjacency flags - typedef rtdmc_AdjFlags { - - // bits- Using string - type string; + default "Disable"; } - // Adjancency operational state - typedef rtdmc_AdjOperSt { + typedef platform_UdfCfgFault { type enumeration { - - // Up - enum up { + enum none { value 0; } - - // Inactive - enum inactive { + enum definition { value 1; } + enum qualifySpan { + value 2; + } + enum qualifySpanV6 { + value 3; + } + enum qualifySpanV6L2 { + value 4; + } + enum qualifyRacl { + value 5; + } + enum qualifyVacl { + value 6; + } + enum qualifyIfacl { + value 7; + } } + default "none"; } - // Authentication key - typedef rtdmc_AuthKey { - type string; - } - - // Authentication type - typedef rtdmc_AuthT { + // UDF Types + typedef platform_UdfOffsetBase { type enumeration { - - // No authentication - enum none { + enum packet-start { value 0; } - - // MD5 HMAC authentication - enum ah-md5 { + enum outer-header-l3 { value 1; } + enum outer-header-l4 { + value 2; + } + enum inner-header-l3 { + value 3; + } + enum inner-header-l4 { + value 4; + } } - default "none"; - } - - typedef rtdmc_AutoEnable { - type boolean; - default "true"; + default "packet-start"; } - // Auto-RP Control - typedef rtdmc_AutoRPCtrl { - - // bits- Using string - type string; - } - - // Auto-RP Scope - typedef rtdmc_AutoRPScope { + typedef platform_UnicastMaxLimit { type uint16 { - range "1..255"; + range "0..8000"; } - default "32"; - } - - // Bootstrap Router (BSR) Control - typedef rtdmc_BSRCtrl { - - // bits- Using string - type string; } - // BSR Hash Mask Len - typedef rtdmc_BSRHashLen { - type uint16; + typedef platform_UnicastTrace { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; } - // Max Rate TODO: Is there a default? - typedef rtdmc_BSRInterval { - type uint16 { - range "1..65535"; + typedef platform_bufferMonitorMd { + type enumeration { + enum None { + value 0; + } + enum Unicast { + value 2; + } + enum Multicast { + value 3; + } } - default "60"; + default "None"; } - // BSR Priority - typedef rtdmc_BSRPrio { - type uint16 { - range "1..255"; + typedef platform_bufferMonitorSampling { + type uint32 { + range "0..20000000"; } - default "64"; + default "4000000"; } - // BFD state - typedef rtdmc_BfdInstSt { + typedef platform_bufferMonitorSt { type enumeration { - - // Enabled - enum enabled { + enum Enable { value 1; } - - // Disabled - enum disabled { - value 2; - } - - // None - enum none { + enum Disable { value 0; } } - default "none"; + default "Enable"; } - // BFD state - typedef rtdmc_BfdOperSt { - type enumeration { - - // Down - enum down { - value 0; - } - - // Remove Pending - enum rem-pend { - value 1; - } + typedef platform_bufferMonitorThreshhold { + type uint32 { + range "0..6144"; + } + default "0"; + } - // Up - enum up { - value 2; - } + typedef platform_flowTcamRegionSize { + type uint32 { + range "0..2147483647"; } + default "512"; } - // BiDir RP Limit - typedef rtdmc_BidirRPLimit { - type uint16 { - range "1..8"; + typedef platform_forwardingModeConfigFailed { + type uint32 { + range "0..1"; } - default "6"; + default "0"; } - // Byte Count type - typedef rtdmc_ByteCntType { + typedef platform_forwardingModeHostEntryWarp { + type uint32 { + range "0..16384"; + } + default "0"; + } - // MAX Converted to int from 0xffffffff + typedef platform_forwardingModeL2EntryWarp { type uint32 { - range "0..4294967295"; + range "0..16384"; } + default "0"; } - // Counter - typedef rtdmc_Counter32 { - type uint32; + typedef platform_forwardingModeLpmEntryNormal { + type uint32 { + range "0..28672"; + } + default "0"; } - // Designated Forwarder Offer Burst Interval - typedef rtdmc_DFOBItvl { - type uint16 { - range "1..10000"; + typedef platform_forwardingModeLpmEntryWarp { + type uint32 { + range "0..8192"; } - default "20"; + default "0"; } - // Designated Router Delay TODO: Not present on N3548 or N9K - // verify naming based on purpose, range and default - typedef rtdmc_DRDelay { - type uint16 { - range "1..65535"; + typedef platform_forwardingModeMcstEntryNormal { + type uint32 { + range "0..28672"; } - default "3"; + default "0"; } - // Designated Router Priority - typedef rtdmc_DRPrio { + typedef platform_forwardingModeMcstEntryWarp { type uint32 { - range "1..4294967295"; + range "0..16384"; } - default "1"; + default "0"; } - // Database type - typedef rtdmc_DbT { + typedef platform_forwardingModeSelector { type enumeration { - - // RP database - enum rp { - value 0; - } - - // Grange database - enum grange { + enum normal { value 1; } - - // Route database - enum route { + enum warp { value 2; } - - // Dynamic RP Srouce database - enum dynrpsrc { + enum openflow-hybrid { value 3; } - - // Global Statistics - enum gstats { + enum openflow-only { value 4; } + } + default "normal"; + } - // VRF database - enum vrf { - value 5; - } - - // Interface database - enum ifrec { - value 6; - } - - // Group Oif list - enum grpoif { - value 7; - } - - // Group database - enum group { - value 8; - } - - // Interface statistics - enum ifstats { - value 9; + typedef platform_infraVlanForce { + type enumeration { + enum Disable { + value 0; } - - // Peer statistics - enum peer { - value 10; + enum Enable { + value 1; } } + default "Disable"; } - // Domain Control - typedef rtdmc_DomCtrl { - - // bits- Using string - type string; - } - - // PIM Route types - typedef rtdmc_GRangeFlags { - - // bits- Using string - type string; - } - - // Generation Id - typedef rtdmc_GenId { - type uint32; + typedef platform_infraVlanId { + type uint16 { + range "0..4096"; + } } - // Hello Message Interval - typedef rtdmc_HelloItvl { + typedef platform_latencyMonitorSampling { type uint32 { - range "1..18724286"; + range "1..30"; } - default "30000"; - } - - // Hold Time - typedef rtdmc_HoldTime { - type uint16; + default "3"; } - // Interface Ctrl - typedef rtdmc_IfCtrl { - - // bits- Using string - type string; + typedef platform_latencyMonitorSt { + type enumeration { + enum Enable { + value 1; + } + enum Disable { + value 0; + } + } + default "Disable"; } - // Join Prune Inter packet delay TODO: Get the max delay - typedef rtdmc_JPDelay { + typedef platform_latencyMonitorThreshholdAv { type uint32 { - range "1..1000"; + range "300..20000000"; } - default "100"; + default "1000000"; } - // Join Prune Interval Used between Peers TODO: Validate this is correct - typedef rtdmc_JPItvl { - type uint16 { - range "1..65520"; + typedef platform_latencyMonitorThreshholdMx { + type uint32 { + range "300..20000000"; } - default "60"; + default "2000000"; } - // Protocol Packet MTU - typedef rtdmc_Mtu { - type uint32 { - range "1500..65536"; - } - default "1500"; + typedef platform_mcastSlowRcvState { + type nw_AdminSt; + default "disabled"; } - // Null Register Inter batch delay TODO: Is there a default? - typedef rtdmc_NRDelay { + typedef platform_moduleNumberSt { type uint16 { - range "1..50000"; + range "1..32"; } } - // Number of Routes in a Null Register TODO: Is there a default? - typedef rtdmc_NRNumRt { - type uint16 { - range "1..32000"; + typedef platform_multicastServiceReflectPort { + type uint32 { + range "0..48"; } + default "0"; } - // route oif list types - typedef rtdmc_OifFlags { - - // bits- Using string - type string; + typedef platform_pfcMmuBufferRes { + type uint16 { + range "0..100"; + } } - // Pkt Count type - typedef rtdmc_PktCntType { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef platform_pfcMmuBufferSt { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } + default "enable"; } - typedef rtdmc_PolicyDirType { + typedef platform_pfcMmuCfgFault { type enumeration { - - // none enum none { value 0; } - - // in - enum in { + enum Pfc_Buffer_Resource_Limitation { value 1; } - - // out - enum out { - value 2; - } } default "none"; } - // PIM RP types - typedef rtdmc_RPSourceType { + typedef platform_portThresPercentage { + type uint8 { + range "1..95"; + } + } - // bits- Using string - type string; + typedef platform_poweroffSt { + type enumeration { + enum no { + value 0; + description "No Power Off"; + } + enum yes { + value 1; + description "Power Off"; + } + } } - // Max Rate TODO: Is there a default? - typedef rtdmc_RegRate { + typedef platform_slotNumber { type uint16 { - range "0..65535"; + range "0..32"; } - default "0"; } - // PIM Route types PIM Route types - typedef rtdmc_RouteBits { - - // bits- Using string - type string; + typedef platform_tcamLabelSize { + type enumeration { + enum disable { + value 6; + } + enum enable { + value 9; + } + } + default "disable"; } - // PIM Route types - typedef rtdmc_RtFlags { - - // bits- Using string - type string; + typedef platform_tcamRegionSize { + type uint32 { + range "0..2147483647"; + } + default "0"; } - // (S,G) Entry Inactivity Expiry Timer - typedef rtdmc_SGExpItvl { - type uint32 { - range "180..604801"; + // Logging level type + typedef poe_LoggingLevel { + type uint16 { + range "0..7"; } - default "180"; + default "5"; } - // Scope of the community - typedef rtextcom_Scope { + // Logging Level + typedef poe_LoggingType { type enumeration { - - // Transitive - enum transitive { + enum Emergencies { value 0; + description "Emergencies"; } - - // Non Transitive - enum non-transitive { + enum Alerts { value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "transitive"; + default "Notification"; } - typedef rtextcom_Type { + typedef poe_poePolice { type enumeration { - - // Route target community type - enum rttarget { + enum Default { + value 0; + } + enum errdisable { value 1; } - - // Generic extended community type - enum generic { + enum log { value 2; } } - default "generic"; } - // Action - typedef rtflt_Action { + typedef poe_poePortmode { type enumeration { - - // Deny - enum deny { + enum Default { value 0; } - - // Permit - enum permit { + enum never { value 1; } + enum auto { + value 2; + } + enum static { + value 3; + } } - default "permit"; + default "Default"; } - // Order - typedef rtflt_Order { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef poe_poePriority { + type enumeration { + enum low { + value 0; + } + enum high { + value 1; + } } } - // filter option for RibLeak - typedef rtleak_Always { - type boolean; - default "true"; + typedef pol_ObjName { + type string; } - // Asn number - typedef rtleak_Asn { - type string { - } - default "none"; + // Burst size + typedef policer_Burst { + type uint32; } - // Controls on what to do when the number of routes cross - // the maximum prefix limit - typedef rtleak_Ctrl { - type enumeration { + // Committed rate + typedef policer_Rate { + type uint32; + } - // Unspecified - enum unspecified { - value 0; + // Aging types for port security + typedef portsecurity_AgingType { + type enumeration { + enum absolute { + value 1; + description "Absolute"; } + enum inactivity { + value 2; + description "Inactivity"; + } + } + default "absolute"; + } - // Warning - enum warning { + // Violation Action types for port security + typedef portsecurity_ViolationMode { + type enumeration { + enum protect { value 1; + description "Security violation protect mode"; } - - // Withdraw - enum withdraw { + enum restrict { value 2; + description "Security violation restrict mode"; + } + enum shutdown { + value 3; + description "Security violation shutdown mode"; } } - default "unspecified"; + default "shutdown"; } - // Duration between the retries - typedef rtleak_Duration { - type uint16 { - range "60..600"; + // Cpu History duration name + typedef proc_CpuHistoryDurationName { + type enumeration { + enum last60seconds { + value 1; + description "last60seconds"; + } } - default "300"; + default "last60seconds"; } - // Routing protocol instance - typedef rtleak_Inst { - type string { - length "1..20"; - } - } - - // Maximum prefix leaked - typedef rtleak_MaxPfx { - - // MAX Converted to int from 0xffff - type uint16 { - range "1..65535"; - } + // Cpu History type + typedef proc_CpuHistoryList { + type mtx_array_uint32; } - // Source protocol type of the leak policy - typedef rtleak_Proto { + // Operational Status + typedef proc_OperSt { type enumeration { - - // Unspecified - enum unspecified { + enum intr-sleep { value 0; + description "Interruptible sleep"; } - - // Static - enum static { + enum stopped { value 1; + description "Stopped"; } - - // Direct - enum direct { + enum unintr-sleep { value 2; + description "Uninterruptible sleep"; } - - // BGP - enum bgp { + enum running { value 3; + description "Running"; } - - // ISIS - enum isis { + enum dead { value 4; + description "Dead"; } - - // OSPF - enum ospf { + enum defunct { value 5; + description "Defunct"; } + } + default "intr-sleep"; + } - // OSPFv3 - enum ospfv3 { - value 6; + // Process operational state + typedef proc_OperState { + type enumeration { + enum up { + value 0; + description "Up"; } - - // EIGRP - enum eigrp { - value 7; + enum down { + value 1; + description "down"; } + } + default "up"; + } - // HOST - enum host { - value 8; - } + // Percentage Usage + typedef proc_PerUsage { + type uint32 { + range "0..100"; + } + default "0"; + } - // RIP - enum rip { - value 9; - } + // Process id + typedef proc_ProcId { + type uint32; + } - // AMT - enum amt { - value 10; - } + // Process memory units + typedef proc_ProcMem { + type uint64; + } - // LISP - enum lisp { - value 11; - } + // Type for process priority + // range 0-20 + typedef proc_ProcPriority { + type uint32 { + range "0..20"; + } + } - // HMM - enum hmm { - value 12; - } + // Process name + typedef proc_ProcessName { + type string; + } - // AM - enum am { - value 13; + // Process Type + typedef proc_ProcessType { + type enumeration { + enum unknown { + value 0; + description "Unknown Type"; + } + enum non-sysmgr { + value 1; + description "Non Sysmgr"; + } + enum vdc-local { + value 2; + description " Vdc Local"; + } + enum vdc-global { + value 3; + description "Vdc Global"; + } + enum vdc-unaware { + value 4; + description "Vdc unaware"; + } + enum not-running { + value 5; + description "Not Running"; + } + enum terminated-etc { + value 6; + description "Terminated Etc"; } } - default "unspecified"; + default "unknown"; } - // Maximum number of retries to retrieve the leaked routes - typedef rtleak_Retries { - type uint16 { - range "1..12"; - } - default "1"; + // Program counter + typedef proc_ProgCntr { + type uint64; } - // Policy Direction - typedef rtleak_RtCtrlDir { - type enumeration { + // Stack + typedef proc_Stack { + type uint64; + } - // in - enum in { + // Process start count + typedef proc_StartCnt { + type uint32; + } + + typedef qos_Prio { + type enumeration { + enum unspecified { value 0; + description "Unspecified"; } - - // out - enum out { + enum level3 { value 1; + description "Level3"; + } + enum level2 { + value 2; + description "Level2"; + } + enum level1 { + value 3; + description "Level1"; + } + enum policy-plane { + value 4; + } + enum control-plane { + value 5; + } + enum span { + value 6; } } - default "in"; } - // Scope of the leak policy - typedef rtleak_Scope { + // User configurable classes + typedef qos_TenantPrio { type enumeration { - - // Intra protocol leak - enum intra { + enum unspecified { + value 0; + description "Unspecified"; + } + enum level3 { value 1; + description "Level3"; } - - // Inter protocol leak - enum inter { + enum level2 { value 2; + description "Level2"; } - - // Default route leak - enum defrt { + enum level1 { value 3; + description "Level1"; } } - default "intra"; + default "unspecified"; } - // Threshold at which warning is issued when number of prefixes - // crosses the threshold, units in percentage - typedef rtleak_Thresh { + // Bandwidth percentage + typedef qosp_BwPercent { type uint8 { - range "1..100"; + range "0..100"; } - default "75"; + default "20"; } - // Action - typedef rtmap_Action { + // Congestion algorithm + typedef qosp_CongAlgo { type enumeration { - - // Deny - enum deny { + enum wred { value 0; + description "Weighted random early detection"; } - - // Permit - enum permit { + enum tail-drop { value 1; + description "Tail drop"; } } - default "permit"; + default "tail-drop"; } - // Administrative state - typedef rtmap_AdminSt { + // Control method + typedef qosp_CtrlMeth { type enumeration { - - // Enabled - enum enabled { - value 1; + enum static { + value 0; + description "Static"; } - - // Disabled - enum disabled { - value 2; + enum dynamic { + value 1; + description "Dynamic"; } } - default "disabled"; + default "dynamic"; } - // Community Id - typedef rtmap_CommunityId { + // Dot1p + typedef qosp_Dot1P { type uint8 { - range "0..255"; - } - } - - // Community Value - typedef rtmap_CommunityVal { - type uint32 { - range "0..4294967295"; + range "0..7"; } + default "7"; } - // Criteria - typedef rtmap_Criteria { - type enumeration { - - // Exact - enum exact { - value 1; - } - - // Sub group - enum sub-group { - value 2; - } + // Dscp code point values + typedef qosp_Dscp { + type qosp_DscpCP { + range "0..63"; } - default "sub-group"; + default "63"; } - // Dampening Half-life - // Time in minutes. Once the route has been assigned a penalty, - // the penalty is decreased by half after half life period - typedef rtmap_DampHalfLife { + // DSCP + typedef qosp_DscpCP { type uint8 { - range "0..45"; + range "0..63"; } default "0"; } - // Dampening Max Suppress Time - // Time in minutes. Maximum time that a route can be suppressed. - typedef rtmap_DampMaxSuppressTime { - type uint8 { - range "0..255"; + // ECN + typedef qosp_ECN { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } } - default "0"; + default "disabled"; } - // Dampening Reuse Limit - // Route that is unsuppressed if the penalty for a flapping route - // decreases enough to fall below this value. - typedef rtmap_DampReuse { + // MTU + typedef qosp_MTU { type uint16 { - range "0..20000"; + range "1500..9216"; } - default "0"; + default "9216"; } - // Dampening Suppress Limit - // Route that is suppressed when its penalty exceeds this limit. - typedef rtmap_DampSuppress { - type uint16 { - range "0..20000"; + // Min buffers + typedef qosp_MinBuf { + type uint8 { + range "0..3"; } default "0"; } - // Duration - typedef rtmap_Duration { - type uint8 { - range "1..255"; + // Operational state of Qos Class + typedef qosp_OperSt { + type enumeration { + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 2; + description "disabled"; + } } + default "disabled"; } - // HalfLife - typedef rtmap_HalfLife { - type uint8 { - range "1..45"; + // Queue limit + typedef qosp_QueueLimit { + type uint16 { + range "1500..9216"; } + default "1522"; } - // Label Index - typedef rtmap_Index { - type uint32 { - range "0..471788"; + // Scheduling Algorithm + typedef qosp_SchedAlgo { + type enumeration { + enum wrr { + value 0; + description "Weighted round robin"; + } + enum sp { + value 1; + description "Strict priority"; + } } + default "wrr"; } - // Local preference - typedef rtmap_LocalPref { - type uint32; + typedef reln_Dn { + type string; } - // Match type - typedef rtmap_MatchT { + typedef reln_ResolverType { type enumeration { - - // Regular community - enum reg-community { + enum mo { value 1; } - - // Extended community - enum ext-community { + enum service { value 2; } - - // Route destinations - enum rt-dst { + enum local { value 3; } + } + default "mo"; + } - // Route nexthops - enum rt-nh { + typedef reln_State { + type enumeration { + enum unformed { + value 0; + } + enum formed { + value 1; + } + enum missing-target { + value 2; + } + enum invalid-target { value 4; } + } + default "unformed"; + } - // Route sources - enum rt-src { - value 5; + typedef reln_StateQual { + type enumeration { + enum none { + value 0; } - - // Route type - enum rt-type { - value 6; + enum mismatch-target { + value 1; } - - // Route tag - enum rt-tag { - value 7; + enum default-target { + value 2; } + } + default "none"; + } - // Route pervasive - enum rt-pervasive { - value 8; + typedef reln_TargetType { + type enumeration { + enum name { + value 0; } - - // AS Path Access List - enum as-path { - value 9; + enum mo { + value 1; } - - // V6 Route destinations - enum rt-dst-v6 { - value 10; + enum all { + value 2; } + } + default "mo"; + } - // Route ASN - enum rt-asn { - value 11; + // Database type + typedef rib_DbT { + type enumeration { + enum rt { + value 1; + description "Route Database"; } - - // Route IF - enum rt-if { - value 12; + enum nh { + value 2; + description "Nexthop Database"; } - - // Route Metric - enum rt-metric { - value 13; + enum adj { + value 3; + description "Adjacency Database"; } + } + default "rt"; + } - // Source Protocol - enum src-proto { - value 14; + // Domain operational state + typedef rib_DomOperSt { + type enumeration { + enum up { + value 1; + description "Up"; } - - // OSPFArea - enum rt-ospf { - value 15; + enum down-pending { + value 2; + description "Down pending"; } - - // Route nexthops ipv6 - enum rt-nh-v6 { - value 16; + enum purged { + value 3; + description "Purging"; } - - // Route route source ipv6 - enum rt-src-v6 { - value 17; + enum down { + value 4; + description "Down"; } - - // Match IPv4 multicast - enum rt-ipv4-mcast { - value 18; + enum del-pending { + value 5; + description "Down pending"; } - - // Match IPv6 multicast - enum rt-ipv6-mcast { - value 19; + enum deleted { + value 6; + description "Deleted"; } } - default "reg-community"; + default "down"; } - // Metric - typedef rtmap_Metric { - type uint32; + // Next-hop type + typedef rib_NhT { + + type string; + default "attached"; } - // Metric Delay - typedef rtmap_MetricD { - type uint32 { - range "0..4294967295"; - } - default "0"; + // Owner type + typedef rib_OwnerT { + type string; } - // Metric Load - typedef rtmap_MetricL { + // Config Error + typedef rpm_ConfigErr { + type string; + } + + // Preference + typedef rt_Preference { type uint8 { - range "0..255"; + range "1..255"; } - default "0"; + default "1"; } - // Metric MTU - typedef rtmap_MetricM { + // Tag + typedef rt_Tag { + type uint32 { - range "0..16777215"; + range "0..4294967295"; } default "0"; } - // Metric Reliability - typedef rtmap_MetricR { - type uint8 { - range "0..255"; - } - default "0"; - } + // Autonomous system + typedef rtcom_AS { - // MetricS - typedef rtmap_MetricS { - type string { + type uint32 { + range "1..4294967295"; } } - // Metric type - typedef rtmap_MetricT { + // Community type + typedef rtcom_ComT { type enumeration { - - // OSPF type1 metric - enum type-1 { + enum regular { value 1; + description "Regular community"; } - - // OSPF type2 metric - enum type-2 { + enum extended { value 2; - } - - // BGP internal metric - enum internal { - value 3; - } - - // ISIS external metric - enum external { - value 4; + description "Extended community"; } } - default "type-1"; + default "regular"; } - // OSPFArea - typedef rtmap_OSPFArea { - type uint32 { - range "0..4294967295"; + // Mode + typedef rtcom_Mode { + type enumeration { + enum standard { + value 1; + description "Standard"; + } + enum regex { + value 2; + description "Regular expression"; + } } + default "standard"; } - // Route-map Continue - typedef rtmap_Order { - type uint16 { - range "0..65535"; + // Route control direction + typedef rtctrl_RtCtrlDir { + type enumeration { + enum in { + value 1; + description "Incoming"; + } + enum out { + value 2; + description "Outgoing"; + } } + default "in"; } - // Origin type - typedef rtmap_OriginT { + // Route target policy type + typedef rtctrl_RttPType { type enumeration { - - // Remote EGP Origin - enum egp { + enum import { value 1; + description "Import"; } - - // Local IGP Origin - enum igp { + enum export { value 2; - } - - // Unknown Heritage - enum incomplete { - value 3; + description "Export"; } } - default "egp"; + default "import"; } - // Precedence Properties - typedef rtmap_PrecName { - type enumeration { + // ASM Control + typedef rtdmc_ASMCtrl { - // Routine - enum routine { - value 0; - } + type string; + } - // Priority - enum priority { - value 1; - } + // Adjacency flags + typedef rtdmc_AdjFlags { - // Immediate - enum immediate { - value 2; - } + type string; + } - // Flash - enum flash { - value 3; + // Adjancency operational state + typedef rtdmc_AdjOperSt { + type enumeration { + enum up { + value 0; + description "Up"; } - - // Flash-Override - enum flash-override { - value 4; + enum inactive { + value 1; + description "Inactive"; } + } + } - // Critical - enum critical { - value 5; - } + typedef rtdmc_AssertRateLmt { + type uint32 { + range "0..65535"; + } + } - // Internet - enum internet { - value 6; - } + // Authentication key + typedef rtdmc_AuthKey { + type string; + } - // Network - enum network { - value 7; + // Authentication type + typedef rtdmc_AuthT { + type enumeration { + enum none { + value 0; + description "No authentication"; + } + enum ah-md5 { + value 1; + description "MD5 HMAC authentication"; } } + default "none"; } - // is BGP config - typedef rtmap_Proto { + typedef rtdmc_AutoEnable { type boolean; + default "true"; } - // Reuse - typedef rtmap_Reuse { + // Auto-RP Control + typedef rtdmc_AutoRPCtrl { + + type string; + } + + // Auto-RP Scope + typedef rtdmc_AutoRPScope { type uint16 { - range "1..20000"; + range "1..255"; } + default "32"; } - // Route Distance - typedef rtmap_RouteDist { - type uint8 { - range "0..255"; + // Bootstrap Router (BSR) Control + typedef rtdmc_BSRCtrl { + + type string; + } + + // BSR Hash Mask Len + typedef rtdmc_BSRHashLen { + type uint16; + } + + // Max Rate TODO: Is there a default? + typedef rtdmc_BSRInterval { + type uint16 { + range "1..65535"; } + default "60"; } - // Route Last As - typedef rtmap_RouteLastAs { + // BSR Priority + typedef rtdmc_BSRPrio { type uint16 { - range "1..10"; + range "1..255"; } + default "64"; } - // Pervasive route - typedef rtmap_RoutePervasive { + // BFD state + typedef rtdmc_BfdInstSt { type enumeration { - - // Match all non-pervasive routes - enum non-pervasive { - value 0; - } - - // Match all pervasive routes - enum pervasive { + enum enabled { value 1; + description "Enabled"; } - - // Match all pervasive except external BD routes - enum pervasive-non-ext-bd { + enum disabled { value 2; + description "Disabled"; + } + enum none { + value 0; + description "None"; } } - default "pervasive-non-ext-bd"; + default "none"; } - // Route type - typedef rtmap_RouteT { + // BFD state + typedef rtdmc_BfdOperSt { type enumeration { - - // External - enum external { + enum down { + value 0; + description "Down"; + } + enum rem-pend { value 1; + description "Remove Pending"; } - - // Internal - enum internal { + enum up { value 2; + description "Up"; } + } + } - // OSPF inter area - enum ospf-inter-area { - value 3; - } - - // OSPF intra area - enum ospf-intra-area { - value 4; - } - - // ISIS level 1 - enum isis-l1 { - value 5; - } - - // ISIS level 2 - enum isis-l2 { - value 6; - } - - // Local - enum local { - value 7; - } - - // OSPF nssa external - enum ospf-nssa-external { - value 8; - } + // BiDir RP Limit + typedef rtdmc_BidirRPLimit { + type uint16 { + range "1..8"; + } + default "6"; + } - // OSPF type1 external - enum ospf-type1 { - value 9; - } + // Byte Count type + typedef rtdmc_ByteCntType { - // OSPF type2 external - enum ospf-type2 { - value 10; - } + type uint32 { + range "0..4294967295"; } - default "external"; } - // Route tag - typedef rtmap_RouteTag { + // Counter + typedef rtdmc_Counter32 { type uint32; } - // Set criteria - typedef rtmap_SetCriteria { - type enumeration { - - // No community - enum none { - value 1; - } - - // Append community - enum append { - value 2; - } - - // Replace community - enum replace { - value 3; - } - - // IGP Cost - enum igp { - value 4; - } + // Designated Forwarder Offer Burst Interval + typedef rtdmc_DFOBItvl { + type uint16 { + range "1..10000"; + } + default "20"; + } - // Pre-bestpath Cost - enum pre-bestpath { - value 5; - } + // Designated Router Priority + typedef rtdmc_DRPrio { + type uint32 { + range "1..4294967295"; } - default "none"; + default "1"; } - // Set type - typedef rtmap_SetT { + // Database type + typedef rtdmc_DbT { type enumeration { - - // Regular community - enum reg-community { + enum rp { + value 0; + description "RP database"; + } + enum grange { value 1; + description "Grange database"; } - - // Extended generic community - enum ext-gen-community { + enum route { value 2; + description "Route database"; } - - // Route target community - enum rtt-community { + enum dynrpsrc { value 3; + description "Dynamic RP Source database"; } - - // Route tag - enum rt-tag { + enum gstats { value 4; + description "Global Statistics"; } - - // Route weight - enum rt-weight { + enum vrf { value 5; + description "VRF database"; } - - // Local preference - enum local-pref { + enum ifrec { value 6; + description "Interface database"; } - - // Metric - enum metric { + enum grpoif { value 7; + description "Group Oif list"; } - - // OSPF NSSA area - enum ospf-nssa { + enum group { value 8; + description "Group database"; } - - // OSPF fowarding address - enum ospf-fwd-addr { + enum ifstats { value 9; + description "Interface statistics"; } - - // IP nexthop - enum ip-nh { + enum peer { value 10; + description "Peer statistics"; } - - // Metric Type - enum metric-type { + enum rphash { value 11; + description "RP-Hash for a group"; } - - // Route distance - enum rt-dist { + enum df { value 12; + description "Designated forwarder for RP"; } - - // Next Hop Peer Address - enum nh-pa { + enum bf { value 13; + description "Bitfield database"; } - - // Origin - enum origin { + enum embedrp { value 14; + description "Embed-RP database"; } - - // Community List (for deletion) - enum list-community { + enum syslog { value 15; + description "Syslog database"; } - - // Dampening value - enum dampening { + enum vrfdetail { value 16; + description "Vrf details"; } + } + } - // Extcommunity Cost - enum extcommunity-cost { - value 17; + // DF state + typedef rtdmc_DfStates { + type enumeration { + enum unknown { + value 0; + description "DF Unknown State"; } - - // IP Precedence value - enum ip-prec { - value 18; + enum offer { + value 1; + description "DF Offer State"; } - - // Continue Value - enum continue { - value 19; + enum lose { + value 2; + description "DF Lose State"; } - - // Label Index - enum rt-index { - value 20; + enum winner { + value 3; + description "DF Winner State"; } - - // Extended Community List (for deletion) - enum list-extcommunity { - value 21; + enum backoff { + value 4; + description "DF Backoff State"; } + } + default "unknown"; + } - // IPv6 Precedence value - enum ipv6-prec { - value 22; - } + // Domain Control + typedef rtdmc_DomCtrl { - // Prepend Value - enum prepend { - value 23; - } + type string; + } - // Prepend Last-as Value - enum lastas { - value 24; - } + // PIM Route types + typedef rtdmc_GRangeFlags { - // As-Path tag Value - enum as-pathtag { - value 25; - } - } - default "reg-community"; + type string; } - // Supress - typedef rtmap_Supress { - type uint16 { - range "1..20000"; + // Generation Id + typedef rtdmc_GenId { + type uint32; + } + + // Hello Message Interval + typedef rtdmc_HelloItvl { + type uint32 { + range "1..18724286"; } + default "30000"; } - // Weight - typedef rtmap_Weight { + // Hold Time + typedef rtdmc_HoldTime { type uint16; } - // rp-type - typedef rtmap_rpTypeT { - type enumeration { + // Interface Ctrl + typedef rtdmc_IfCtrl { - // unspecified - enum unspecified { - value 0; - } + type string; + } - // ASM - enum ASM { - value 1; - } + // Join Prune Inter packet delay TODO: Get the max delay + typedef rtdmc_JPDelay { + type uint32 { + range "1..1000"; + } + default "100"; + } - // Bidir - enum Bidir { - value 2; - } + // Join Prune Interval Used between Peers TODO: Validate this is correct + typedef rtdmc_JPItvl { + type uint16 { + range "1..65520"; } - default "unspecified"; + default "60"; } - // Criteria - typedef rtpfx_Criteria { - type enumeration { + // Jp-delay in microseconds + typedef rtdmc_JpDelayRange { + type uint32 { + range "1..4294967295"; + } + default "100"; + } - // Exact match - enum exact { - value 0; - } + // Protocol Packet MTU + typedef rtdmc_Mtu { + type uint32 { + range "1500..65536"; + } + default "1500"; + } - // Inexact match - enum inexact { - value 1; - } + // Null Register Inter batch delay TODO: Is there a default? + typedef rtdmc_NRDelay { + type uint16 { + range "1..50000"; } - default "exact"; } - // Extended chassis state - typedef satm_ExtChOperSt { - type enumeration { + // Number of Routes in a Null Register TODO: Is there a default? + typedef rtdmc_NRNumRt { + type uint16 { + range "1..32000"; + } + } - // Unknown - enum unknown { + // route oif list types + typedef rtdmc_OifFlags { + + type string; + } + + // Pkt Count type + typedef rtdmc_PktCntType { + + type uint32 { + range "0..4294967295"; + } + } + + typedef rtdmc_PolicyDirType { + type enumeration { + enum none { value 0; + description "none"; } - - // Initializing - enum initializing { + enum in { value 1; + description "in"; } - - // Discovered - enum discovered { + enum out { value 2; + description "out"; } + } + default "none"; + } - // Connected - enum connected { - value 3; - } + // PIM RP types + typedef rtdmc_RPSourceType { - // Registering - enum registering { - value 4; - } + type string; + } - // Registered - enum registered { - value 5; - } + // Max Rate TODO: Is there a default? + typedef rtdmc_RegRate { + type uint16 { + range "0..65535"; + } + default "0"; + } - // Ready - enum ready { - value 6; - } + // Register-rate limit + typedef rtdmc_RegRateRange { + type uint32 { + range "0..65535"; + } + default "0"; + } - // Online Sequence - enum online-seq { - value 7; - } + // PIM Route types PIM Route types + typedef rtdmc_RouteBits { - // Online - enum online { - value 8; - } - - // Offline Request - enum offline-req { - value 9; - } - - // Offline Sequence - enum offline-seq { - value 10; - } - - // Offline - enum offline { - value 11; - } - - // Image Download - enum img-download { - value 12; - } - - // Failed - enum failed { - value 13; - } - - // Removed - enum removed { - value 14; - } - - // Hitless Upgrade Sequence - enum hl-upg-seq { - value 15; - } - - // Check Upgrade Sequence - enum chk-upg-seq { - value 16; - } - - // Ready for Upgrade - enum upg-start { - value 17; - } - - // Hitless Upgrade Idle - enum hl-upg-idle { - value 18; - } - - // Check Insert Sequence - enum chk-ins-seq { - value 19; - } - - // Hitless Upgrade Failed - enum hl-upg-fail { - value 20; - } - - // Active Active Upgrade Ready - enum aa-upg-rdy { - value 21; - } - - // Active Active Upgrade Idle - enum aa-upg-idle { - value 22; - } - - // Active Active Upgrade Done - enum aa-upg-done { - value 23; - } + type string; + } - // Active Active Upgrade Fail - enum aa-upg-fail { - value 24; - } + // PIM Route types + typedef rtdmc_RtFlags { - // Active Active Version Mismatch - enum aa-ver-mismatch { - value 25; - } + type string; + } - // Extended Chassis Type Mismatch - enum ch-type-mismatch { - value 26; - } + // (S,G) Entry Inactivity Expiry Timer + typedef rtdmc_SGExpItvl { + type uint32 { + range "180..604801"; } - default "unknown"; + default "180"; } - // Fabric port FSM status - typedef satm_FpFsmSt { + // Scope of the community + typedef rtextcom_Scope { type enumeration { - - // Unknown - enum unknown { + enum transitive { value 0; + description "Transitive"; } - - // Created - enum created { + enum non-transitive { value 1; - } - - // Discovered - enum discovered { - value 2; - } - - // Configured - enum configured { - value 3; - } - - // Up - enum up { - value 4; - } - - // Connecting - enum connecting { - value 5; - } - - // Active - enum active { - value 6; - } - - // Incompatible topology - enum incompatible { - value 7; - } - - // Disconnected - enum disconnected { - value 8; - } - - // Identity mismatch - enum id-mismatch { - value 9; + description "Non Transitive"; } } - default "unknown"; - } - - // Fabri port flags - typedef satm_FportFlags { - - // bits- Using string - type string; + default "transitive"; } - // Host Port operational status - typedef satm_HpOperSt { + typedef rtextcom_Type { type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Up - enum up { + enum rttarget { value 1; + description "Route target community type"; } - - // Down - enum down { + enum generic { value 2; + description "Generic extended community type"; } - - // Failed - enum fail { + enum soo { value 3; + description "Site of origin extended community type"; + } + enum rmac { + value 4; + description "Router mac extended community type"; } } - default "unknown"; + default "generic"; } - // Port operational status - typedef satm_OperSt { + // Action + typedef rtflt_Action { type enumeration { - - // Unknown - enum unknown { + enum deny { value 0; + description "Deny"; } - - // Up - enum up { + enum permit { value 1; + description "Permit"; } + } + default "permit"; + } - // Down - enum down { - value 2; - } + // Order + typedef rtflt_Order { - // Failed - enum failed { - value 3; - } + type uint32 { + range "0..4294967295"; } - default "unknown"; } - typedef satm_SwGen { - type uint16; + // filter option for RibLeak + typedef rtleak_Always { + type boolean; + default "true"; } - // Action - typedef scrtchpd_Action { - type enumeration { - - // Create - enum create { - value 1; - } - - // Delete - enum delete { - value 2; - } + // Asn number + typedef rtleak_Asn { + type string { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } - default "create"; + default "none"; } - // Address family type - typedef segrt_AfType { + // Controls on what to do when the number of routes cross + // the maximum prefix limit + typedef rtleak_Ctrl { type enumeration { - - // IPv4 address family - enum ipv4 { + enum unspecified { + value 0; + description "Unspecified"; + } + enum warning { value 1; + description "Warning"; } - - // IPv6 address family - enum ipv6 { + enum withdraw { value 2; + description "Withdraw"; } } - default "ipv4"; + default "unspecified"; } - // Segment Routing Operational state - typedef segrt_OperSt { - type enumeration { + // Duration between the retries + typedef rtleak_Duration { + type uint16 { + range "60..600"; + } + default "300"; + } - // Disabled - enum disabled { - value 0; - } + // Routing protocol instance + typedef rtleak_Inst { + type string { + length "1..20"; + } + } - // Enabled - enum enabled { - value 1; - } + // Maximum prefix leaked + typedef rtleak_MaxPfx { - // HA in progress - enum ha-in-progress { - value 2; - } + type uint16 { + range "1..65535"; } - default "disabled"; } - // Operational State Qualifier - typedef segrt_OperStQual { + // Source protocol type of the leak policy + typedef rtleak_Proto { type enumeration { - - // None - enum none { + enum unspecified { value 0; + description "Unspecified"; } - - // Segment Routing is shut - enum shut { + enum static { value 1; + description "Static"; } - - // Old SRGB cleanup in progress - enum srgb-cleanup-in-progress { + enum direct { value 2; + description "Direct"; } - - // Old SRGB cleanup failed - enum srgb-cleanup-failed { + enum bgp { value 3; + description "BGP"; } - - // SRGB allocation in progress - enum srgb-alloc-in-progress { + enum isis { value 4; + description "ISIS"; } - - // SRGB allocation failed - enum srgb-alloc-failed { + enum ospf { value 5; + description "OSPF"; } - } - default "none"; - } - - // SRGB Operational state - typedef segrt_SRGBOperSt { - type enumeration { - - // None - enum none { - value 0; + enum ospfv3 { + value 6; + description "OSPFv3"; } - - // In-use - enum in-use { - value 1; + enum eigrp { + value 7; + description "EIGRP"; } - - // SRGB allocation in progress - enum alloc-in-progress { - value 2; + enum host { + value 8; + description "HOST"; } - - // SRGB allocation failed - enum alloc-failed { - value 3; + enum rip { + value 9; + description "RIP"; } - - // Old SRGB cleanup in progress - enum cleanup-in-progress { - value 4; + enum amt { + value 10; + description "AMT"; } - - // Old SRGB cleanup failed - enum cleanup-failed { - value 5; + enum lisp { + value 11; + description "LISP"; + } + enum hmm { + value 12; + description "HMM"; + } + enum am { + value 13; + description "AM"; + } + enum srv6 { + value 14; + description "SRV6"; } } - default "none"; + default "unspecified"; } - // SID Value type - typedef segrt_SidValueType { - type enumeration { + // Maximum number of retries to retrieve the leaked routes + typedef rtleak_Retries { + type uint16 { + range "1..12"; + } + default "1"; + } - // SID Index value - enum index { - value 1; + // Policy Direction + typedef rtleak_RtCtrlDir { + type enumeration { + enum in { + value 0; + description "in"; } - - // SID Absolute value - enum absolute { - value 2; + enum out { + value 1; + description "out"; } } - default "index"; + default "in"; } - // Segment-routing data plane type - typedef segrt_SrDpType { + // Scope of the leak policy + typedef rtleak_Scope { type enumeration { - - // MPLS - enum mpls { + enum intra { value 1; + description "Intra protocol leak"; } - - // IPv6 - enum ipv6 { + enum inter { value 2; + description "Inter protocol leak"; + } + enum defrt { + value 3; + description "Default route leak"; } } - default "mpls"; + default "intra"; } - // SRGB allocation retry interval - typedef segrt_SrgbAllocRetryIntvl { - type uint16 { - range "1..65535"; + // SRv6 Prefix Type + typedef rtleak_Srv6PrefixType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; + } + enum locator { + value 1; + description "SRv6 Locator"; + } } - default "180"; + default "unspecified"; } - // SRGB cleanup interval - typedef segrt_SrgbCleanupIntvl { - type uint16 { - range "1..65535"; + // Threshold at which warning is issued when number of prefixes + // crosses the threshold, units in percentage + typedef rtleak_Thresh { + type uint8 { + range "1..100"; } - default "60"; + default "75"; } - typedef sisf_NonGlobalTracking { + // Action + typedef rtmap_Action { type enumeration { - - // Default - enum default { + enum deny { value 0; + description "Deny"; } - - // Disable - enum disable { + enum permit { value 1; - } - - // Enable - enum enable { - value 2; + description "Permit"; } } - default "default"; + default "permit"; } - // Maximum time in REACHABLE with no activity - // Default Value "0" Removed - out of range -1..86400 - typedef sisf_ReachableLifetimerBinding { - type int32 { - range "-1..86400"; + // Administrative state + typedef rtmap_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + default "disabled"; } - typedef sisf_RetryIntervalBinding { - type int16 { - range "0..3600"; + // Community Id + typedef rtmap_CommunityId { + type uint8 { + range "0..255"; } - default "0"; } - typedef sisf_VlanID { - type uint16 { - range "1..4096"; + // Community Value + typedef rtmap_CommunityVal { + type uint32 { + range "0..4294967295"; } } - typedef sisf_deviceRole { - type enumeration { - - // Node - enum node { - value 0; - } - - // Switch - enum switch { - value 3; - } - } - default "node"; + // Config Error + typedef rtmap_ConfigErr { + type string; } - typedef sisf_dhcpGuardDeviceRole { + // Criteria + typedef rtmap_Criteria { type enumeration { - - // Client - enum client { - value 0; - } - - // Server - enum server { + enum exact { value 1; + description "Exact"; } - - // Monitor - enum monitor { + enum sub-group { value 2; + description "Sub group"; } } - default "client"; + default "sub-group"; } - typedef sisf_dhcpflag { - type enumeration { - - // enable - enum on { - value 0; - } - - // disable - enum off { - value 1; - } + // Dampening Half-life + // Time in minutes. Once the route has been assigned a penalty, + // the penalty is decreased by half after half life period + typedef rtmap_DampHalfLife { + type uint8 { + range "0..45"; } + default "0"; } - // Define Down Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_downLifetimer { - type uint64 { - range "0..86400"; + // Dampening Max Suppress Time + // Time in minutes. Maximum time that a route can be suppressed. + typedef rtmap_DampMaxSuppressTime { + type uint8 { + range "0..255"; } - default "86400"; + default "0"; } - // Verify that the RA Guard advertised limit is lower than the limit value - // Default Value "0" Removed - out of range 1..255 - typedef sisf_hopLimitMax { + // Dampening Reuse Limit + // Route that is unsuppressed if the penalty for a flapping route + // decreases enough to fall below this value. + typedef rtmap_DampReuse { type uint16 { - range "1..255"; + range "0..20000"; } + default "0"; } - // Verify that the RA Guard advertised limit is greater than the limit value - // Default Value "0" Removed - out of range 1..255 - typedef sisf_hopLimitMin { + // Dampening Suppress Limit + // Route that is suppressed when its penalty exceeds this limit. + typedef rtmap_DampSuppress { type uint16 { + range "0..20000"; + } + default "0"; + } + + // Duration + typedef rtmap_Duration { + type uint8 { range "1..255"; } } - // Specifies a limit - typedef sisf_limitAddressCount { - type uint16 { - range "0..32000"; + // HalfLife + typedef rtmap_HalfLife { + type uint8 { + range "1..45"; } } - // Default Value "0" Removed - out of range 1..100000 - typedef sisf_macLimit { + // Label Index + typedef rtmap_Index { type uint32 { - range "1..100000"; + range "0..471788"; } } - // Define maximum number of entries in the Binding table - // Default Value "0" Removed - out of range 1..1000000 - typedef sisf_maxEntries { - type uint32 { - range "1..1000000"; - } - } - - typedef sisf_ndpflag { - type enumeration { - - // enable - enum on { - value 0; - } - - // disable - enum off { - value 1; - } - } - } - - // Default Value "0" Removed - out of range 1..100000 - typedef sisf_portLimit { - type uint32 { - range "1..100000"; - } - } - - // Define Maximum allowed advertised server preference - typedef sisf_preferenceMax { - type uint16 { - range "0..255"; - } - default "255"; - } - - // Define Minimum allowed advertised server preference - typedef sisf_preferenceMin { - type uint16 { - range "0..255"; - } - default "0"; + // Local preference + typedef rtmap_LocalPref { + type uint32; } - typedef sisf_raGuardDeviceRole { + // Match type + typedef rtmap_MatchT { type enumeration { - - // Host - enum host { + enum reg-community { value 1; + description "Regular community"; } - - // Router - enum router { + enum ext-community { value 2; + description "Extended community"; } - - // Switch - enum switch { + enum rt-dst { value 3; + description "Route destinations"; } - - // Monitor - enum monitor { + enum rt-nh { value 4; + description "Route nexthops"; } - } - default "host"; - } - - // Enable verification of the advertised M flag - typedef sisf_raGuardManagedConfig { - type enumeration { - - // disable - enum off { - value 0; + enum rt-src { + value 5; + description "Route sources"; } - - // enable - enum on { - value 1; + enum rt-type { + value 6; + description "Route type"; } - - // check - enum nocheck { - value 2; + enum rt-tag { + value 7; + description "Route tag"; } - } - default "nocheck"; - } - - // Enable verification of the advertised O flag - typedef sisf_raGuardOtherConfig { - type enumeration { - - // disable - enum off { - value 0; + enum rt-pervasive { + value 8; + description "Route pervasive"; } - - // able - enum on { - value 1; + enum as-path { + value 9; + description "AS Path Access List"; } - - // check - enum nocheck { - value 2; + enum rt-dst-v6 { + value 10; + description "V6 Route destinations"; } - } - default "nocheck"; - } - - typedef sisf_raGuardRouterPreferenceMaximum { - type enumeration { - - // low - enum low { - value 1; + enum rt-asn { + value 11; + description "Route ASN"; } - - // medium - enum medium { - value 2; + enum rt-if { + value 12; + description "Route IF"; } - - // high - enum high { - value 3; + enum rt-metric { + value 13; + description "Route Metric"; } - - // check - enum nocheck { - value 4; + enum src-proto { + value 14; + description "Source Protocol"; } - } - default "nocheck"; - } - - // Define Reachable Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_reachableLifetimer { - type uint64 { - range "0..86400"; - } - default "300"; - } - - // Define Reachable Lifetimer for snooping policy - // Special value zero (0) indicates infinite. - typedef sisf_reachableLifetimerSnoopingPolicy { - type uint64 { - range "0..86400"; - } - default "300"; - } - - typedef sisf_retryInterval { - type uint16 { - range "1..3600"; - } - default "1"; - } - - typedef sisf_securityLevel { - type enumeration { - - // Glean - enum glean { - value 0; + enum rt-ospf { + value 15; + description "OSPFArea"; } - - // Guard - enum inspect { - value 1; + enum rt-nh-v6 { + value 16; + description "Route nexthops ipv6"; } - - // Inspect - enum guard { - value 2; + enum rt-src-v6 { + value 17; + description "Route route source ipv6"; + } + enum rt-ipv4-mcast { + value 18; + description "Match IPv4 multicast"; + } + enum rt-ipv6-mcast { + value 19; + description "Match IPv6 multicast"; + } + enum rt-mac-list { + value 20; + description "Match mac list"; } } - default "guard"; + default "reg-community"; } - // Define Stale Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_staleLifetimer { - type uint64 { - range "0..86400"; - } - default "86400"; + // Metric + typedef rtmap_Metric { + type uint32; } - // Define Reachable Lifetimer for snooping policy - // Special value zero (0) indicates infinite. - typedef sisf_staleLifetimerSnoopingPolicy { - type uint64 { - range "0..86400"; + // Metric Delay + typedef rtmap_MetricD { + type uint32 { + range "0..4294967295"; } - default "86400"; + default "0"; } - // Default Value "0" Removed - out of range 1..200000 - typedef sisf_vlanLimit { - type uint32 { - range "1..200000"; + // Metric Load + typedef rtmap_MetricL { + type uint8 { + range "0..255"; } + default "0"; } - // AAA Cache User Timeout - typedef snmp_AaaUserCacheTimeout { + // Metric MTU + typedef rtmap_MetricM { type uint32 { - range "1..86400"; + range "0..16777215"; } - default "3600"; + default "0"; } - // ACL Name - typedef snmp_AclNameT { - type string { + // Metric Reliability + typedef rtmap_MetricR { + type uint8 { + range "0..255"; } + default "0"; } - // Authentication key - typedef snmp_AuthKey { - type string; - } - - typedef snmp_AuthPasswd { + // MetricS + typedef rtmap_MetricS { type string { - length "0..130"; + pattern "[0-9\\+-][0-9]*"; } } - // Authentication Type - typedef snmp_AuthType { + // Metric type + typedef rtmap_MetricT { type enumeration { - - // HMAC-MD5-96 - enum hmac-md5-96 { + enum type-1 { value 1; + description "OSPF type1 metric"; } - - // HMAC-SHA1-96 - enum hmac-sha1-96 { + enum type-2 { value 2; + description "OSPF type2 metric"; + } + enum internal { + value 3; + description "BGP internal metric"; + } + enum external { + value 4; + description "ISIS external metric"; } } - default "hmac-md5-96"; + default "type-1"; } - // Auth Type - typedef snmp_AuthTypeT { - type enumeration { + // OSPFArea + typedef rtmap_OSPFArea { + type uint32 { + range "0..4294967295"; + } + } - // No auth - enum no { - value 0; - } + // Route-map Continue + typedef rtmap_Order { + type uint16 { + range "0..65535"; + } + } - // MD5 algorithm - enum md5 { + // Origin type + typedef rtmap_OriginT { + type enumeration { + enum egp { value 1; + description "Remote EGP Origin"; } - - // SHA algorithm - enum sha { + enum igp { value 2; + description "Local IGP Origin"; + } + enum incomplete { + value 3; + description "Unknown Heritage"; } } - default "no"; + default "egp"; } - typedef snmp_Boolean { + // Precedence Properties + typedef rtmap_PrecName { type enumeration { - - // No - enum no { + enum routine { value 0; + description "Routine"; } - - // Yes - enum yes { + enum priority { value 1; + description "Priority"; + } + enum immediate { + value 2; + description "Immediate"; + } + enum flash { + value 3; + description "Flash"; + } + enum flash-override { + value 4; + description "Flash-Override"; + } + enum critical { + value 5; + description "Critical"; + } + enum internet { + value 6; + description "Internet"; + } + enum network { + value 7; + description "Network"; } } - default "yes"; } - // Type of access to the type of community - typedef snmp_CommAcessT { - type enumeration { + // is BGP config + typedef rtmap_Proto { + type boolean; + } - // Read-only Access - enum ro { + // Set path selection type + typedef rtmap_PsType { + type enumeration { + enum unspecified { value 0; + description "unspecified"; } - - // Read-Write Access - enum rw { + enum ps-all { value 1; + description "Specifies all BGP paths"; } - - // Unspecified value - enum unspecified { + enum ps-bestplus { value 2; + description "Specifies best + backup BGP paths"; + } + enum ps-best2 { + value 3; + description "Specifies best 2 BGP paths"; + } + enum ps-mpath { + value 4; + description "Specifies multipaths BGP paths"; } } default "unspecified"; } - // Port Counter Cache Timeout - typedef snmp_CounterCacheTimeout { + // Reuse + typedef rtmap_Reuse { type uint16 { - range "1..3600"; + range "1..20000"; } - default "50"; - } - - // RMON EVENT Description - typedef snmp_DescType { - type string; - } - - typedef snmp_EncryptedAuthArray { - type mtx_array_uint8; - } - - typedef snmp_EncryptedPrivArray { - type mtx_array_uint8; - } - - // Engine ID - typedef snmp_EngId { - type string; } - // Engine ID Length - typedef snmp_EngIdLen { + // Route Distance + typedef rtmap_RouteDist { type uint8 { - range "0..162"; - } - default "0"; - } - - // Event Number - typedef snmp_EventIndx { - type uint16 { - range "1..65535"; + range "0..255"; } - default "1"; } - // Event Number - typedef snmp_EventNum { + // Route Last As + typedef rtmap_RouteLastAs { type uint16 { - range "1..65535"; + range "1..10"; } } - // Group Name to which community belongs - typedef snmp_GrpNameT { - type string; - } - - // Logging enable - typedef snmp_LogEnableType { + // Pervasive route + typedef rtmap_RoutePervasive { type enumeration { - - // Generate RMON log when the event fires - enum no { + enum non-pervasive { value 0; + description "Match all non-pervasive routes"; } - - // Do not Generate RMON log when the event fires - enum yes { + enum pervasive { value 1; + description "Match all pervasive routes"; + } + enum pervasive-non-ext-bd { + value 2; + description "Match all pervasive except external BD routes"; } } - default "no"; + default "pervasive-non-ext-bd"; } - // Notification type - typedef snmp_NotificationType { + // Route type + typedef rtmap_RouteT { type enumeration { - enum traps { + enum external { value 1; + description "External"; } - enum informs { + enum internal { value 2; + description "Internal"; + } + enum ospf-inter-area { + value 3; + description "OSPF inter area"; + } + enum ospf-intra-area { + value 4; + description "OSPF intra area"; + } + enum isis-l1 { + value 5; + description "ISIS level 1"; + } + enum isis-l2 { + value 6; + description "ISIS level 2"; + } + enum local { + value 7; + description "Local"; + } + enum ospf-nssa-external { + value 8; + description "OSPF nssa external"; + } + enum ospf-type1 { + value 9; + description "OSPF type1 external"; + } + enum ospf-type2 { + value 10; + description "OSPF type2 external"; + } + enum R1 { + value 11; + description "BGP EVPN route (type 1)"; + } + enum mac-only { + value 12; + description "BGP EVPN route(type 2 mac-only)"; + } + enum mac-ip { + value 13; + description "BGP EVPN route(type 2 mac-ip)"; + } + enum R2_ALL { + value 14; + description "BGP EVPN route(type 2 all)"; + } + enum R3 { + value 15; + description "BGP EVPN route (type 3)"; + } + enum R4 { + value 16; + description "BGP EVPN route (type 4)"; + } + enum R5 { + value 17; + description "BGP EVPN route (type 5)"; + } + enum R6 { + value 18; + description "BGP EVPN route (type 6)"; } } - default "traps"; - } - - // RMON EVENT OWNER - typedef snmp_OwnerType { - type string; - } - - // SNMP Packet Size - typedef snmp_PktSizeT { - type uint16 { - range "484..17382"; - } - default "1500"; - } - - // UDP PORT - typedef snmp_PortIdT { - type uint32 { - range "0..65535"; - } - default "162"; - } - - // Privacy (encryption) key - typedef snmp_PrivKey { - type string; + default "external"; } - typedef snmp_PrivPasswd { - type string { - length "0..130"; - } + // Route tag + typedef rtmap_RouteTag { + type uint32; } - // Privacy (encryption) Type - typedef snmp_PrivType { + // Set criteria + typedef rtmap_SetCriteria { type enumeration { - - // None enum none { - value 0; - } - - // DES - enum des { value 1; + description "No community"; } - - // AES-128 - enum aes-128 { + enum append { value 2; + description "Append community"; + } + enum replace { + value 3; + description "Replace community"; + } + enum igp { + value 4; + description "IGP Cost"; + } + enum pre-bestpath { + value 5; + description "Pre-bestpath Cost"; } } default "none"; } - // Priv Type - typedef snmp_PrivTypeT { + // Set type + typedef rtmap_SetT { type enumeration { - - // No auth - enum no { - value 0; - } - - // DES algorithm - enum des { + enum reg-community { value 1; + description "Regular community"; } - - // AES-128 algorithm - enum aes128 { + enum ext-gen-community { value 2; + description "Extended generic community"; + } + enum rtt-community { + value 3; + description "Route target community"; + } + enum rt-tag { + value 4; + description "Route tag"; + } + enum rt-weight { + value 5; + description "Route weight"; + } + enum local-pref { + value 6; + description "Local preference"; + } + enum metric { + value 7; + description "Metric"; + } + enum ospf-nssa { + value 8; + description "OSPF NSSA area"; + } + enum ospf-fwd-addr { + value 9; + description "OSPF fowarding address"; + } + enum ip-nh { + value 10; + description "IP nexthop"; + } + enum metric-type { + value 11; + description "Metric Type"; + } + enum rt-dist { + value 12; + description "Route distance"; + } + enum nh-pa { + value 13; + description "Next Hop Peer Address"; + } + enum origin { + value 14; + description "Origin"; + } + enum list-community { + value 15; + description "Community List (for deletion)"; + } + enum dampening { + value 16; + description "Dampening value"; + } + enum extcommunity-cost { + value 17; + description "Extcommunity Cost"; + } + enum ip-prec { + value 18; + description "IP Precedence value"; + } + enum continue { + value 19; + description "Continue Value"; + } + enum rt-index { + value 20; + description "Label Index"; + } + enum list-extcommunity { + value 21; + description "Extended Community List (for deletion)"; + } + enum ipv6-prec { + value 22; + description "IPv6 Precedence value"; + } + enum prepend { + value 23; + description "Prepend Value"; + } + enum lastas { + value 24; + description "Prepend Last-as Value"; + } + enum as-pathtag { + value 25; + description "As-Path tag Value"; + } + enum ps-adv { + value 26; + description "PS Advertise Value"; } } - default "no"; - } - - // System Contact - typedef snmp_SnmpSysContact { - type string; + default "reg-community"; } - // System Description - typedef snmp_SnmpSysDescr { - type string; + // Supress + typedef rtmap_Supress { + type uint16 { + range "1..20000"; + } } - // System Location - typedef snmp_SnmpSysLoc { - type string; + // Weight + typedef rtmap_Weight { + type uint16; } - // Snmp trap administrative state - typedef snmp_SnmpTrapSt { + // rp-type + typedef rtmap_rpTypeT { type enumeration { - - // Enable - enum enable { + enum unspecified { + value 0; + description "unspecified"; + } + enum ASM { value 1; + description "ASM"; } - - // Disable - enum disable { + enum Bidir { value 2; + description "Bidir"; } } - default "disable"; - } - - // Trap Community type - typedef snmp_TrapCommType { - type string; + default "unspecified"; } - // SNMP Trap Rate - typedef snmp_TrapRateT { - type uint16 { - range "0..1000"; + // Criteria + typedef rtpfx_Criteria { + type enumeration { + enum exact { + value 0; + description "Exact match"; + } + enum inexact { + value 1; + description "Inexact match"; + } } - default "0"; + default "exact"; } - // SNMPv3 security level - typedef snmp_V3SecLvl { + // Extended chassis state + typedef satm_ExtChOperSt { type enumeration { - enum unspecified { + enum unknown { value 0; + description "Unknown"; } - enum noauth { + enum initializing { value 1; + description "Initializing"; } - enum auth { + enum discovered { value 2; + description "Discovered"; } - enum priv { + enum connected { value 3; + description "Connected"; + } + enum registering { + value 4; + description "Registering"; + } + enum registered { + value 5; + description "Registered"; + } + enum ready { + value 6; + description "Ready"; + } + enum online-seq { + value 7; + description "Online Sequence"; + } + enum online { + value 8; + description "Online"; + } + enum offline-req { + value 9; + description "Offline Request"; + } + enum offline-seq { + value 10; + description "Offline Sequence"; + } + enum offline { + value 11; + description "Offline"; + } + enum img-download { + value 12; + description "Image Download"; + } + enum failed { + value 13; + description "Failed"; + } + enum removed { + value 14; + description "Removed"; + } + enum hl-upg-seq { + value 15; + description "Hitless Upgrade Sequence"; + } + enum chk-upg-seq { + value 16; + description "Check Upgrade Sequence"; + } + enum upg-start { + value 17; + description "Ready for Upgrade"; + } + enum hl-upg-idle { + value 18; + description "Hitless Upgrade Idle"; + } + enum chk-ins-seq { + value 19; + description "Check Insert Sequence"; + } + enum hl-upg-fail { + value 20; + description "Hitless Upgrade Failed"; + } + enum aa-upg-rdy { + value 21; + description "Active Active Upgrade Ready"; + } + enum aa-upg-idle { + value 22; + description "Active Active Upgrade Idle"; + } + enum aa-upg-done { + value 23; + description "Active Active Upgrade Done"; + } + enum aa-upg-fail { + value 24; + description "Active Active Upgrade Fail"; + } + enum aa-ver-mismatch { + value 25; + description "Active Active Version Mismatch"; + } + enum ch-type-mismatch { + value 26; + description "Extended Chassis Type Mismatch"; } } - default "unspecified"; + default "unknown"; } - // SNMP version - typedef snmp_Version { + // Fabric port FSM status + typedef satm_FpFsmSt { type enumeration { - enum v1 { + enum unknown { + value 0; + description "Unknown"; + } + enum created { value 1; + description "Created"; } - enum v2c { + enum discovered { value 2; + description "Discovered"; } - enum v3 { + enum configured { value 3; + description "Configured"; + } + enum up { + value 4; + description "Up"; + } + enum connecting { + value 5; + description "Connecting"; + } + enum active { + value 6; + description "Active"; + } + enum incompatible { + value 7; + description "Incompatible topology"; + } + enum disconnected { + value 8; + description "Disconnected"; + } + enum id-mismatch { + value 9; + description "Identity mismatch"; } } - default "v1"; + default "unknown"; } - // Community name - typedef snmp_commNameT { - type string; - } + // Fabri port flags + typedef satm_FportFlags { - // host name - typedef snmp_hostNameT { type string; } - // RMON ALARM Sample interval - typedef snmp_smplIntvl { - type uint32 { - range "1..700000"; - } - default "1"; - } - - // Rmon alarm sample type - typedef snmp_smplType { + // Host Port operational status + typedef satm_HpOperSt { type enumeration { - - // Unspecified - enum unspecified { + enum unknown { value 0; + description "Unknown"; } - - // Test each sample directly - enum absolute { + enum up { value 1; + description "Up"; } - - // Test delta between samples - enum delta { + enum down { value 2; + description "Down"; + } + enum fail { + value 3; + description "Failed"; } } - default "unspecified"; + default "unknown"; } - // Type for snmp-server tcp-session auth config - typedef snmp_tcpSessionAuthT { + // Port operational status + typedef satm_OperSt { type enumeration { - - // Unspecified - enum no { + enum unknown { value 0; + description "Unknown"; } - - // tcp-session config - enum tcpSess { + enum up { value 1; + description "Up"; } - - // tcp-session auth config - enum tcpSessAuth { + enum down { value 2; + description "Down"; } - } - default "tcpSessAuth"; - } - - // RMON ALARM Threshold Type - // Default Value "0" Removed - out of range -2147483648..2147483647 - typedef snmp_thrshld { - type int32 { - range "-2147483648..2147483647"; - } - } - - // Database type - typedef span_DbT { - type enumeration { - - // IP endpoint resolution database - enum ipep-resolve { - value 1; + enum failed { + value 3; + description "Failed"; } } - default "ipep-resolve"; + default "unknown"; } - // Destination encapsulation - typedef span_DestEncapT { - type enumeration { - - // Gre encapsulated - enum gre { - value 1; - } - } - default "gre"; + typedef satm_SwGen { + type uint16; } - // Direction, to figure out the direction in which the traffic - // is monitored on the span source - typedef span_Direction { + // Action + typedef scrtchpd_Action { type enumeration { - - // Incoming - enum in { + enum create { value 1; + description "Create"; } - - // Outgoing - enum out { + enum delete { value 2; - } - - // Both - enum both { - value 3; + description "Delete"; } } - default "both"; + default "create"; } - // ErSpan Version - typedef span_ErSpanVer { + // Address family type + typedef segrt_AfType { type enumeration { - - // Version 1 - enum ver1 { + enum ipv4 { value 1; + description "IPv4 address family"; } - - // Version 2 - enum ver2 { + enum ipv6 { value 2; + description "IPv6 address family"; } } - default "ver2"; - } - - // Flow id - typedef span_FlowId { - type uint16 { - range "1..1023"; - } - default "1"; + default "ipv4"; } - // Mode - typedef span_Mode { + // Segment Routing Operational state + typedef segrt_OperSt { type enumeration { - - // Access - enum access { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { value 1; + description "Enabled"; } - - // Fabric - enum fabric { + enum ha-in-progress { value 2; + description "HA in progress"; } } - default "access"; - } - - // Mtu - typedef span_Mtu { - type uint16 { - range "64..9216"; - } - default "1518"; + default "disabled"; } - // Operational state - typedef span_OperSt { + // Operational State Qualifier + typedef segrt_OperStQual { type enumeration { - - // Unspecified - enum unspecified { + enum none { value 0; + description "None"; } - - // Up - enum up { + enum shut { value 1; + description "Segment Routing is shut"; } - - // Down - enum down { + enum srgb-cleanup-in-progress { value 2; + description "Old SRGB cleanup in progress"; } - - // Failed - enum failed { + enum srgb-cleanup-failed { value 3; + description "Old SRGB cleanup failed"; } - - // Partial - enum partial { + enum srgb-alloc-in-progress { value 4; + description "SRGB allocation in progress"; + } + enum srgb-alloc-failed { + value 5; + description "SRGB allocation failed"; } } - default "down"; + default "none"; } - // Operational state qualifier - typedef span_OperStQual { + // SRGB Operational state + typedef segrt_SRGBOperSt { type enumeration { - - // The session is up - enum active { + enum none { + value 0; + description "None"; + } + enum in-use { value 1; + description "In-use"; } - - // No hardware resource - enum no-hw-res { + enum alloc-in-progress { value 2; + description "SRGB allocation in progress"; } - - // No operational src/dst - enum no-oper-src-dst { + enum alloc-failed { value 3; + description "SRGB allocation failed"; } - - // Generic error - enum error { + enum cleanup-in-progress { value 4; + description "Old SRGB cleanup in progress"; } - - // No sources configured - enum no-src { + enum cleanup-failed { value 5; + description "Old SRGB cleanup failed"; } + } + default "none"; + } - // No dest configured - enum no-dst { - value 6; - } - - // No src/dst configured - enum no-src-dst { - value 7; - } - - // Session admin shut - enum shut { - value 8; - } - - // Dst in wrong mode - enum invalid-dst-mode { - value 9; - } - - // Src in wrong mode - enum invalid-src-mode { - value 10; - } - - // No valid VRF - enum invalid-vrf { - value 11; - } - - // No valid IP address - enum invalid-ip { - value 12; + // SID Value type + typedef segrt_SidValueType { + type enumeration { + enum index { + value 1; + description "SID Index value"; } - - // No route to destination IP address - enum no-route { - value 13; + enum absolute { + value 2; + description "SID Absolute value"; } + } + default "index"; + } - // Egress interface not resolved - enum no-eg-intf { - value 14; + // Segment-routing data plane type + typedef segrt_SrDpType { + type enumeration { + enum mpls { + value 1; + description "MPLS"; } - - // Hardware error - enum hw-err { - value 15; + enum ipv6 { + value 2; + description "IPv6"; } } - default "no-oper-src-dst"; + default "mpls"; } - // Session id - typedef span_SessionId { - type uint8 { - range "1..48"; + // SRGB allocation retry interval + typedef segrt_SrgbAllocRetryIntvl { + type uint16 { + range "1..65535"; } + default "180"; } - // Source id - typedef span_SrcId { - - // MAX Converted to int from 0xffff + // SRGB cleanup interval + typedef segrt_SrgbCleanupIntvl { type uint16 { range "1..65535"; } + default "60"; } - // Source type - typedef span_SrcT { - type enumeration { + // Layer4 port + typedef sflow_L4Port { + type uint32 { + range "1..65535"; + } + default "6343"; + } - // Port - enum port { - value 1; - } + typedef sflow_VrfName { + type l3_VrfName; + default "default"; + } - // Encap - enum encap { - value 2; - } + // Address Ip + typedef sflow_addressIp { + type address_Ip; + } - // Port and encap - enum port-encap { - value 3; - } + // counter-poll-interval + typedef sflow_counterPollInterval { + type uint32 { + range "0..2147483647"; } - default "port"; + default "20"; } - // Encapsulation type - typedef srte_EncapsulationType { - type enumeration { - - // MPLS Encapsulation - enum mpls { - value 0; - } + // Datagram size + typedef sflow_maxDatagramSize { + type uint32 { + range "200..9000"; } - default "mpls"; + default "1400"; } - typedef srte_LabelVal { + // Max sampling size + typedef sflow_maxSampledSize { type uint32 { - range "16..471804"; + range "64..256"; } - default "16"; + default "128"; } - // Metric type - typedef srte_Metric { - type enumeration { + // Sampling rate + typedef sflow_samplingRate { + type uint32; + } - // none metric - enum none { + typedef sisf_NonGlobalTracking { + type enumeration { + enum default { value 0; + description "Default"; } - - // te Metric - enum te { + enum disable { value 1; + description "Disable"; } - - // igp Metric - enum igp { + enum enable { value 2; + description "Enable"; } } - default "none"; + default "default"; } - // Name - typedef srte_Name { - type string; + // Maximum time in REACHABLE with no activity + typedef sisf_ReachableLifetimerBinding { + type int32 { + range "-1..86400"; + } + default "0"; } - // - option number for index and preferences - typedef srte_OptNum { - type uint32 { - range "1..65535"; + typedef sisf_RetryIntervalBinding { + type int16 { + range "0..3600"; } + default "0"; } - typedef srte_PcePrecedence { - type uint32 { - range "0..255"; + typedef sisf_VlanID { + type uint16 { + range "1..4096"; } - default "255"; } - // Administrative state - typedef stp_AdminSt { + typedef sisf_deviceRole { type enumeration { - - // Enabled - enum enabled { - value 1; + enum node { + value 0; + description "Node"; } - - // Disabled - enum disabled { - value 2; + enum switch { + value 3; + description "Switch"; } } - default "enabled"; + default "node"; } - // BPDUGuard - typedef stp_BPDUGuard { + typedef sisf_dhcpGuardDeviceRole { type enumeration { - - // Default - enum default { + enum client { value 0; + description "Client"; } - - // Enable - enum enable { + enum server { value 1; + description "Server"; } - - // Disable - enum disable { + enum monitor { value 2; + description "Monitor"; } } - default "default"; + default "client"; } - // bpdufilter type - typedef stp_Bpdufilter { + typedef sisf_dhcpflag { type enumeration { - - // Default - enum default { + enum on { value 0; + description "enable"; } - - // Enable - enum enable { + enum off { value 1; + description "disable"; } + } + } - // Disable - enum disable { - value 2; - } + // Define Down Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_downLifetimer { + type uint64 { + range "0..86400"; } - default "default"; + default "86400"; } - // bridge priority, incremental of 4096 - typedef stp_BridgePriority { + // Verify that the RA Guard advertised limit is lower than the limit value + typedef sisf_hopLimitMax { type uint16 { - range "0..61440"; + range "0..255"; } - default "32768"; + default "0"; } - // Path Cost 0 means auto - typedef stp_Cost { - type uint32 { - range "0..200000000"; + // Verify that the RA Guard advertised limit is greater than the limit value + typedef sisf_hopLimitMin { + type uint16 { + range "0..255"; } default "0"; } - typedef stp_Diameter { - type uint8 { - range "2..7"; + // Specifies a limit + typedef sisf_limitAddressCount { + type uint16 { + range "0..32000"; } - default "2"; } - // Forward Delay Time in Second - typedef stp_FwdTime { - type uint8 { - range "4..30"; + typedef sisf_macLimit { + type uint32 { + range "0..100000"; } - default "15"; + default "0"; } - // port guard - typedef stp_Guard { - type enumeration { + // Define maximum number of entries in the Binding table + typedef sisf_maxEntries { + type uint32 { + range "0..1000000"; + } + default "0"; + } - // Default - enum default { + typedef sisf_ndpflag { + type enumeration { + enum on { value 0; + description "enable"; } - - // Root - enum root { + enum off { value 1; - } - - // Loop - enum loop { - value 2; - } - - // None - enum none { - value 3; + description "disable"; } } - default "default"; } - // Hello Interval in Second - typedef stp_HelloTime { - type uint8 { - range "1..10"; + typedef sisf_portLimit { + type uint32 { + range "0..100000"; } - default "2"; + default "0"; } - // Interface controls - // Default Value computed from unspecified - typedef stp_IfControl { + // Define Maximum allowed advertised server preference + typedef sisf_preferenceMax { + type uint16 { + range "0..255"; + } + default "255"; + } - // bits- Using string - type string; - default "unspecified"; + // Define Minimum allowed advertised server preference + typedef sisf_preferenceMin { + type uint16 { + range "0..255"; + } + default "0"; } - // Mode - typedef stp_IfMode { + typedef sisf_raGuardDeviceRole { type enumeration { - - // Default - enum default { - value 0; - } - - // Edge (host) port - enum edge { + enum host { value 1; + description "Host"; } - - // Network port - enum network { + enum router { value 2; + description "Router"; } - - // Normal port - enum normal { + enum switch { value 3; + description "Switch"; } - - // Edge port in trunk mode - enum trunk { + enum monitor { value 4; + description "Monitor"; } } - default "default"; + default "host"; } - typedef stp_L2GStpDomId { - type uint32 { - range "0..200000000"; + // Enable verification of the advertised M flag + typedef sisf_raGuardManagedConfig { + type enumeration { + enum off { + value 0; + description "disable"; + } + enum on { + value 1; + description "enable"; + } + enum nocheck { + value 2; + description "check"; + } } - default "1024"; + default "nocheck"; } - // Link Type - typedef stp_LinkType { + // Enable verification of the advertised O flag + typedef sisf_raGuardOtherConfig { type enumeration { - - // Auto - enum auto { + enum off { + value 0; + description "disable"; + } + enum on { value 1; + description "able"; } - - // point-to-point - enum p2p { + enum nocheck { value 2; + description "check"; } + } + default "nocheck"; + } - // Shared - enum shared { + typedef sisf_raGuardRouterPreferenceMaximum { + type enumeration { + enum low { + value 1; + description "low"; + } + enum medium { + value 2; + description "medium"; + } + enum high { value 3; + description "high"; + } + enum nocheck { + value 4; + description "check"; } } - default "auto"; + default "nocheck"; } - // Hello Interval in Second - typedef stp_MaxAge { - type uint8 { - range "6..40"; + // Define Reachable Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_reachableLifetimer { + type uint64 { + range "0..86400"; } - default "20"; + default "300"; } - // Max Hops - typedef stp_MaxHops { - type uint8 { - range "1..255"; + // Define Reachable Lifetimer for snooping policy + // Special value zero (0) indicates infinite. + typedef sisf_reachableLifetimerSnoopingPolicy { + type uint64 { + range "0..86400"; } - default "20"; + default "300"; } - typedef stp_Mode { - type enumeration { + typedef sisf_retryInterval { + type uint16 { + range "1..3600"; + } + default "1"; + } - // MST - enum mst { + typedef sisf_securityLevel { + type enumeration { + enum glean { + value 0; + description "Glean"; + } + enum inspect { value 1; + description "Guard"; } - - // PVRST - enum pvrst { + enum guard { value 2; + description "Inspect"; } } - default "pvrst"; + default "guard"; } - // Mode - typedef stp_ModeType { - type enumeration { + // Define Stale Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_staleLifetimer { + type uint64 { + range "0..86400"; + } + default "86400"; + } - // Edge (host) port - enum edge { + // Define Reachable Lifetimer for snooping policy + // Special value zero (0) indicates infinite. + typedef sisf_staleLifetimerSnoopingPolicy { + type uint64 { + range "0..86400"; + } + default "86400"; + } + + typedef sisf_vlanLimit { + type uint32 { + range "0..200000"; + } + default "0"; + } + + // ReactionVariable: + typedef sla_ActionType { + type enumeration { + enum none { value 1; + description "NONE"; } - - // Network port - enum network { + enum trapOnly { value 2; + description "TRAPONLY"; } - - // Normal port - enum normal { + enum triggerOnly { value 3; + description "TRIGGERONLY"; + } + enum trapAndTrigger { + value 4; + description "TRAPANDTRIGGER"; } } - default "normal"; + default "none"; } - // Mst Id - typedef stp_MstId { - type uint16 { - range "0..4094"; + // AdvFactor + typedef sla_AdvFactor { + type uint8 { + range "0..20"; } default "0"; } - // Path cost option - typedef stp_PathcostOp { - type enumeration { + // ClockTolerance Absolute number + typedef sla_ClockToleranceAbsolute { + type uint32 { + range "0..100000"; + } + default "0"; + } - // Auto - enum auto { - value 0; - } + // ClockTolerance Percentile value + typedef sla_ClockTolerancePercent { + type uint32 { + range "0..100"; + } + default "0"; + } - // Short - enum short { - value 1; - } + // CodecNumPkts + typedef sla_CodecNumPkts { + type uint32 { + range "1..60000"; + } + default "1000"; + } - // Long - enum long { - value 2; - } + // CodecSize + typedef sla_CodecSize { + type uint32 { + range "16..16384"; } - default "short"; + default "32"; } - // port fast - typedef stp_PortFast { + // CodecType + typedef sla_CodecType { type enumeration { - - // Default - enum default { + enum none { value 0; + description "No codec configured"; } - - // Trunk - enum trunk { + enum g711alaw { + value 2; + description "G711aLAW"; + } + enum g711ulaw { value 1; + description "G711uLAW"; } - - // Disable - enum disable { - value 2; + enum g729a { + value 3; + description "G729A"; } } - default "default"; + default "none"; } - // port priority, incremental of 32 - typedef stp_PortPriority { - type uint8 { - range "0..224"; + // Operation frequency + typedef sla_Frequency { + type uint32 { + range "0..604800"; } - default "128"; + default "60"; } - // STP port roles. - typedef stp_PortRole { + // HttpMethodVal : Http methods : get or raw + typedef sla_HttpMethodVal { type enumeration { - - // Unknown role - enum unknown { - value 0; - } - - // Root port - enum root { + enum get { value 1; + description "GET"; } + } + default "get"; + } - // Alternate port - enum alternate { - value 2; - } - - // Designated port - enum designated { - value 3; - } - - // Backup port - enum backup { - value 4; - } + // CodecInterval + typedef sla_Interval { + type uint32 { + range "4..60000"; + } + default "20"; + } - // Master port - enum master { - value 5; - } + // NumPkts + typedef sla_NumPkts { + type uint32 { + range "1..60000"; } + default "10"; } - // STP port states. - typedef stp_PortState { + // OpPktPriority + typedef sla_OpPktPriority { type enumeration { - - // Unknown state - enum unknown { + enum none { value 0; + description "no priority"; } - - // Discarding state - enum discarding { + enum high { + value 2; + description "HIGH"; + } + enum normal { value 1; + description "NORMAL"; } + } + default "normal"; + } - // Learning state - enum learning { - value 2; - } + // Port num + typedef sla_PortNum { + type uint16 { + range "1..65535"; + } + } - // Forwarding state - enum forwarding { - value 3; + // Precision + typedef sla_Precision { + type enumeration { + enum microseconds { + value 1; + description "MICROSECONDS"; } - - // Disabled state - enum disabled { - value 4; + enum milliseconds { + value 2; + description "MILLISECONDS"; } } + default "milliseconds"; } - // bridge priority, incremental of 4096 - typedef stp_Priority { + // ReactionVariable: + typedef sla_ReactionVariable { type enumeration { - - // Priority_0 - enum 0 { + enum none { value 0; + description "NONE"; } - - // Priority_4096 - enum 4096 { + enum rtt { value 1; + description "RTT"; } - - // Priority_8192 - enum 8192 { + enum jitterSDAvg { value 2; + description "JITTERSDAVG"; } - - // Priority_12288 - enum 12288 { + enum jitterDSAvg { value 3; + description "JITTERDSAVG"; } - - // Priority_16384 - enum 16384 { + enum packetLossSD { value 4; + description "PACKETLOSSSD"; } - - // Priority_20480 - enum 20480 { + enum packetLossDS { value 5; + description "PACKETLOSSDS"; } - - // Priority_24576 - enum 24576 { + enum mos { value 6; + description "MOS"; } - - // Priority_28672 - enum 28672 { + enum timeout { value 7; + description "TIMEOUT"; } - - // Priority_32768 - enum 32768 { + enum connectionLoss { value 8; + description "CONNECTION LOSS"; } - - // Priority_36864 - enum 36864 { + enum verifyError { value 9; + description "VERIFY ERROR"; } - - // Priority_40960 - enum 40960 { + enum jitterAvg { value 10; + description "JITTERAVG"; } - - // Priority_45056 - enum 45056 { + enum icpif { value 11; + description "ICPIF"; } - - // Priority_49152 - enum 49152 { - value 12; - } - - // Priority_53248 - enum 53248 { + enum packetLateArrival { value 13; + description "PACKETLATEARRIVAL"; } - - // Priority_57344 - enum 57344 { + enum packetOutOfSequence { value 14; + description "PACKETOUTOFSEQUENCE"; } - - // Priority_61440 - enum 61440 { + enum maxOfPositiveSD { value 15; + description "MAXOFPOSITIVESD"; + } + enum maxOfNegativeSD { + value 16; + description "MAXOFNEGATIVESD"; + } + enum maxOfPositiveDS { + value 17; + description "MAXOFPOSITIVEDS"; + } + enum maxOfNegativeDS { + value 18; + description "MAXOFNEGATIVEDS"; } } - default "32768"; + default "none"; } - // Spanning tree protocols. - typedef stp_Protocol { - type enumeration { - - // Unknown protocol - enum unknown { - value 0; - } + // Request Data Size + typedef sla_ReqDataSize { + type uint32 { + range "16..17512"; + } + default "16"; + } - // MSTP - enum mstp { + typedef sla_RespProto { + type enumeration { + enum udp { value 1; + description "UDP"; } - - // RSTP - enum rstp { + enum tcp { value 2; + description "TCP"; } } + default "tcp"; } - // MST region name - typedef stp_RegName { - type string { - length "0..32"; - } - } - - // MST region revision number - typedef stp_RegRev { - - // MAX Converted to int from 0xffff - type uint16 { - range "0..65535"; + // Operation threshold + typedef sla_Threshold { + type uint32 { + range "1..60000"; } - default "0"; + default "5000"; } - // Root Options - typedef stp_Root { + // ReactionVariable: + typedef sla_ThresholdType { type enumeration { - - // Primary - enum primary { + enum never { value 1; + description "NEVER"; } - - // Secondary - enum secondary { + enum immediate { value 2; + description "IMMEDIATE"; + } + enum consecutive { + value 3; + description "CONSECUTIVE"; + } + enum xOfy { + value 4; + description "xOfy"; + } + enum average { + value 5; + description "AVERAGE"; } } - default "primary"; + default "never"; } - // Mst simulate pvst - typedef stp_Simulate { - type enumeration { + // Operation timeout + typedef sla_Timeout { + type uint32 { + range "0..604800000"; + } + default "5000"; + } - // Enabled + typedef smartcard_AdminState { + type enumeration { enum enabled { value 1; } - - // Disabled enum disabled { value 2; } } - default "enabled"; - } - - typedef stp_VlanBitmap { - type l2_VlanBitmap; - default "1-4094"; - } - - // vlan id - typedef stp_VlanId { - type uint16 { - range "1..4096"; - } - default "1"; + default "disabled"; } - // vpc state per port - typedef stp_VpcState { + typedef smartcard_SksdmasterkeyfaultBitmapT { type enumeration { - - // None - enum none { + enum noerror { value 0; + description "Unknown"; } - - // VPCPeerLink - enum vPCPeerlink { + enum MasterkeyUnavail { value 1; - } - - // VPC - enum vPC { - value 2; + description "Master-key is not configured."; } } - default "none"; - } - - // Bandwidth metric of the SVI in kilobits per second. - typedef svi_Bw { - type uint32 { - range "1..400000000"; - } - default "1000000"; - } - - // Carrier Transition Delay (like L2 interface going down in - // milliseconds - typedef svi_CarrDelay { - type uint32 { - range "0..60000"; - } - default "100"; } - // Delay metric of the SVI in tens of microseconds - typedef svi_Delay { + // AAA Cache User Timeout + typedef snmp_AaaUserCacheTimeout { type uint32 { - range "1..16777215"; + range "1..86400"; } - default "1"; + default "3600"; } - // Load averaging delay interval 1 in seconds - typedef svi_LoadIntvl1 { - type uint32 { - range "60..600"; + // ACL Name + typedef snmp_AclNameT { + type string { + pattern "[^\\s]{0,32}"; } - default "60"; } - // Load averaging delay interval 2 in seconds - typedef svi_LoadIntvl2 { - type uint32 { - range "60..600"; - } - default "300"; + // Authentication key + typedef snmp_AuthKey { + type string; } - // Load averaging delay interval 3 in seconds - typedef svi_LoadIntvl3 { - type uint32 { - range "60..600"; + typedef snmp_AuthPasswd { + type string { + length "0..130"; + pattern ".*"; } - default "60"; } - // Medium mode of the SVI - typedef svi_Medium { + // Authentication Type + typedef snmp_AuthType { type enumeration { - - // broadcast - enum bcast { - value 0; - } - - // p2p - enum p2p { + enum hmac-md5-96 { value 1; + description "HMAC-MD5-96"; + } + enum hmac-sha1-96 { + value 2; + description "HMAC-SHA1-96"; } } - default "bcast"; - } - - // MTU of the SVI - typedef svi_Mtu { - type uint32 { - range "64..9216"; - } - default "1500"; + default "hmac-md5-96"; } - // Line operational state - typedef svi_OperSt { + // Auth Type + typedef snmp_AuthTypeT { type enumeration { - - // unknown - enum unknown { + enum no { value 0; + description "No auth"; } - - // up - enum up { + enum md5 { value 1; + description "MD5 algorithm"; } - - // down - enum down { + enum sha { value 2; + description "SHA algorithm"; } + } + default "no"; + } - // shutdown - enum shutdown { - value 3; + typedef snmp_Boolean { + type enumeration { + enum no { + value 0; + description "No"; } - - // out of service - enum out-of-srvc { - value 4; + enum yes { + value 1; + description "Yes"; } } - default "down"; + default "yes"; } - // Reason for operational state being down - typedef svi_OperStQual { + // Type of access to the type of community + typedef snmp_CommAcessT { type enumeration { - - // None - enum unknown { + enum ro { value 0; + description "Read-only Access"; } - - // administratively shut down - enum admin-shut { + enum rw { value 1; + description "Read-Write Access"; } - - // vlan does not exist. - enum no-vlan { + enum unspecified { value 2; + description "Unspecified value"; } + } + default "unspecified"; + } - // invalid vlan type - enum bad-vlan_t { - value 3; - } - - // vlan is down - enum vlan-down { - value 4; - } - - // hardware programming failed (l2fm) - enum hwprog-flfm { - value 5; - } - - // hardware programming failed (event Sequence) - enum hwprog-fles { - value 6; - } - - // out of service - enum oos { - value 7; - } - - // service is down or being brought down - enum reinit { - value 8; - } - - // mtu programming failed - enum mtuprog-fail { - value 9; - } - - // VRF not usable - enum vrf-unusable { - value 10; - } - - // underlying l2 interface state us down - enum l2st-change { - value 11; - } - - // Operationally shut down - enum suspended { - value 12; - } + // Port Counter Cache Timeout + typedef snmp_CounterCacheTimeout { + type uint16 { + range "1..3600"; + } + default "50"; + } - // mac address allocation failed - enum macalloc-fail { - value 13; - } + // RMON EVENT Description + typedef snmp_DescType { + type string; + } - // non-routable VDC mode - enum nonrouted-vdc { - value 14; - } + // Engine ID + typedef snmp_EngId { + type string; + } - // interface vlan-create process failed - enum int-vlan-create-fail { - value 15; - } + // Engine ID Length + typedef snmp_EngIdLen { + type uint8 { + range "0..162"; + } + default "0"; + } - // inbMgmt Config failed - enum inbMgmt-cfg-fail { - value 16; - } + // Event Number + typedef snmp_EventIndx { + type uint16 { + range "1..65535"; } - default "unknown"; + default "1"; } - typedef svi_VlanId { + // Event Number + typedef snmp_EventNum { type uint16 { - range "0..4095"; + range "1..65535"; } - default "0"; } - // Operational state of the package - typedef swpkgs_OperState { - type enumeration { + // Group Name to which community belongs + typedef snmp_GrpNameT { + type string; + } - // No RPM packages - enum none { + // RMON HCALARM Threshold Type + typedef snmp_HcThrshld { + type uint64; + } + + // Logging enable + typedef snmp_LogEnableType { + type enumeration { + enum no { value 0; + description "Generate RMON log when the event fires"; } - - // inactive RPM package - enum inactive { + enum yes { value 1; - } - - // activated RPM package - enum activated { - value 2; - } - - // This is Inactive commit pending package.Commit on this package needs to be done to make it permanently inactive. - enum deactivated { - value 3; - } - - // Committed RPM package - enum committed { - value 4; + description "Do not Generate RMON log when the event fires"; } } - default "none"; + default "no"; } - // Package action to be selected by the user - typedef swpkgs_PackageAction { + // Notification type + typedef snmp_NotificationType { type enumeration { - - // This state is the initial state of the package.When the system boots up it will have this state. - enum init { - value 0; - } - - // Add a RPM package to the repo - enum add { + enum traps { value 1; } - - // Activate the RPM package - enum activate { + enum informs { value 2; } + } + default "traps"; + } - // Add and Activate the RPM package - enum add-activate { - value 3; - } - - // Deactivate the RPM package - enum deactivate { - value 4; - } - - // Commit the RPM package - enum commit { - value 5; - } + // RMON EVENT OWNER + typedef snmp_OwnerType { + type string; + } - // Remove the RPM package - enum remove { - value 6; - } + // SNMP Packet Size + typedef snmp_PktSizeT { + type uint16 { + range "484..17382"; } - default "init"; + default "1500"; } - // Package action result - typedef swpkgs_PackageActionResult { - type enumeration { - - // Patch action the package was succesfull. - enum success { - value 0; - } + // UDP PORT + typedef snmp_PortIdT { + type uint32 { + range "0..65535"; + } + default "162"; + } - // Patch action the package failed. - enum failed { - value 1; - } + // Privacy (encryption) key + typedef snmp_PrivKey { + type string; + } - // Not Available - enum not-available { - value 2; - } + typedef snmp_PrivPasswd { + type string { + length "0..130"; + pattern ".*"; } - default "not-available"; } - typedef syslog_Facility { + // Privacy (encryption) Type + typedef snmp_PrivType { type enumeration { - enum kern { + enum none { value 0; + description "None"; } - enum user { + enum des { value 1; + description "DES"; } - enum mail { + enum aes-128 { value 2; + description "AES-128"; } - enum daemon { - value 3; - } - enum auth { - value 4; - } - enum syslog { - value 5; - } - enum lpr { - value 6; - } - enum news { - value 7; - } - enum uucp { - value 8; - } - enum cron { - value 9; - } - enum authpriv { - value 10; - } - enum ftp { - value 11; - } - enum local0 { - value 16; - } - enum local1 { - value 17; - } - enum local2 { - value 18; - } - enum local3 { - value 19; - } - enum local4 { - value 20; - } - enum local5 { - value 21; - } - enum local6 { - value 22; - } - enum local7 { - value 23; - } - } - default "local7"; - } - - typedef syslog_FileSize { - type uint32 { - range "4096..4194304"; } - default "4194304"; + default "none"; } - typedef syslog_OperState { + // Priv Type + typedef snmp_PrivTypeT { type enumeration { - enum unknown { + enum no { value 0; + description "No auth"; } - enum available { + enum des { value 1; + description "DES algorithm"; } - enum errored { + enum aes128 { value 2; + description "AES-128 algorithm"; } } - default "unknown"; + default "no"; } - typedef syslog_Severity { + typedef snmp_SnmpLogLevel { type enumeration { - - // emergencies enum emergencies { value 0; + description "emergencies"; } - - // alerts enum alerts { value 1; + description "alerts"; } - - // critical enum critical { value 2; + description "critical"; } - - // errors enum errors { value 3; + description "errors"; } - - // warnings enum warnings { value 4; + description "warnings"; } - - // notifications enum notifications { value 5; + description "notifications"; } - - // information enum information { value 6; + description "information"; } - - // debugging enum debugging { value 7; + description "debugging"; } } - default "notifications"; + default "critical"; } - // SyslogPort - typedef syslog_SyslogPort { - type uint32 { - range "1..65535"; - } - default "514"; + // System Contact + typedef snmp_SnmpSysContact { + type string; } - typedef syslog_TimeStampFormat { - type enumeration { - enum microseconds { - value 0; - } - enum milliseconds { - value 1; - } - enum seconds { - value 2; - } - } - default "seconds"; + // System Description + typedef snmp_SnmpSysDescr { + type string; } - // Config mode - typedef sysmgr_CfgMode { - type enumeration { + // System Location + typedef snmp_SnmpSysLoc { + type string; + } - // Init - enum init { + // Snmp trap administrative state + typedef snmp_SnmpTrapSt { + type enumeration { + enum enable { value 1; + description "Enable"; } - - // Replay - enum replay { + enum disable { value 2; - } - - // Done - enum done { - value 4; + description "Disable"; } } - default "init"; + default "disable"; } - // Firmware mode - typedef sysmgr_FwMode { - type enumeration { - - // Recovery mode - enum recovery { - value 1; - } + // Trap Community type + typedef snmp_TrapCommType { + type string; + } - // Regular - enum regular { - value 2; - } + // SNMP Trap Rate + typedef snmp_TrapRateT { + type uint16 { + range "0..1000"; } - default "regular"; + default "0"; } - // Firmware type - typedef sysmgr_FwT { + // SNMPv3 security level + typedef snmp_V3SecLvl { type enumeration { - - // BIOS - enum bios { + enum unspecified { + value 0; + } + enum noauth { value 1; } - - // Kickstart - enum kickstart { + enum auth { value 2; } - - // System - enum system { + enum priv { value 3; } } - default "system"; + default "noauth"; } - // Operational data publish mode - typedef sysmgr_OperDataMode { + // SNMP version + typedef snmp_Version { type enumeration { - - // Init - enum init { + enum v1 { value 1; } - - // Publish - enum publish { + enum v2c { value 2; } - - // Done - enum done { - value 4; + enum v3 { + value 3; } } - default "init"; + default "v1"; } - // Supervisor state - typedef sysmgr_SupSt { - type enumeration { + // Community name + typedef snmp_commNameT { + type string; + } - // Unknown - enum unknown { + // host name + typedef snmp_hostNameT { + type string { + length "1..255"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + } + + // RMON ALARM Sample interval + typedef snmp_smplIntvl { + type uint32 { + range "1..700000"; + } + default "1"; + } + + // Rmon alarm sample type + typedef snmp_smplType { + type enumeration { + enum unspecified { value 0; + description "Unspecified"; } - - // Local - enum active { + enum absolute { value 1; + description "Test each sample directly"; } - - // Hot standby - enum hot-stdby { + enum delta { value 2; + description "Test delta between samples"; } + } + default "unspecified"; + } - // Cold standby - enum cold-stdby { - value 3; + // RMON HCALARM startupalarm + typedef snmp_startupAlarmType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; } - - // Offline - enum offline { - value 4; + enum rising { + value 1; + description "rising"; } - - // Normal - enum normal { - value 5; + enum falling { + value 2; + description "falling"; } - - // Non disruptive upgrade - enum non-dis-upg { - value 6; + enum risingorfalling { + value 3; + description "rising or falling"; } } - default "unknown"; + default "unspecified"; } - // Supervisor type - typedef sysmgr_SupT { + // Type for snmp-server tcp-session auth config + typedef snmp_tcpSessionAuthT { type enumeration { - - // Local - enum local { + enum no { value 0; + description "Unspecified"; } - - // Remote - enum remote { + enum tcpSess { value 1; + description "tcp-session config"; + } + enum tcpSessAuth { + value 2; + description "tcp-session auth config"; } } - default "local"; + default "tcpSessAuth"; } - // TCPUDP Synwait Time - typedef tcpudp_SynwaitTime { - type uint16 { - range "5..300"; + // RMON ALARM Threshold Type + typedef snmp_thrshld { + type int32 { + range "-2147483648..2147483647"; } - default "30"; + default "0"; } - // Admin State - typedef telemetry_AdminState { - type enumeration { + // User name + typedef snmp_userNameT { + type string; + } - // enabled - enum enabled { - value 1; - } + typedef span_AclName { + type string { + length "0..64"; } - default "enabled"; } - // transport compression types - typedef telemetry_Compression { - type enumeration { + typedef span_Description { + type string { + length "0..32"; + } + } - // compression disabled - enum disabled { + // Monitor Description Type + // Used to set the default string to Empty and length + // to 32 characters + typedef span_ErrorInt { + type uint16 { + range "0..32"; + } + default "0"; + } + + // erspan-id + typedef span_ErspanId { + type uint16 { + range "0..1023"; + } + default "0"; + } + + // HeaderType + typedef span_HeaderVer { + type enumeration { + enum v2 { value 0; + description "Type 2"; } - - // gzip compression enabled - enum gzip { + enum v3 { value 1; + description "Type 3"; + } + enum v3-rfc-compliant { + value 2; + description "Type3 rfc-compliant"; } } - default "disabled"; } - // Data Source Type - typedef telemetry_DataSource { - type enumeration { + // ip dscp + typedef span_IpDscp { + type uint16 { + range "0..63"; + } + default "0"; + } - // DME - enum DME { + // ip ttl + typedef span_IpTtl { + type uint16 { + range "1..255"; + } + default "255"; + } + + // marker packet interval + typedef span_MarkerPktInt { + type uint16 { + range "100..1000"; + } + default "100"; + } + + // MtuValue + typedef span_MtuValue { + type uint16 { + range "64..10240"; + } + default "10240"; + } + + // Operational state qualifier + typedef span_OperStQual { + type enumeration { + enum active { value 1; + description "The session is up"; } - - // NX-API - enum NX-API { + enum no-hw-res { + value 2; + description "No hardware resource"; + } + enum no-oper-src-dst { value 3; + description "No operational src/dst"; } - - // YANG - enum YANG { + enum error { value 4; + description "Generic error"; } - - // DEFAULT - enum DEFAULT { + enum no-src { + value 5; + description "No sources configured"; + } + enum no-dst { + value 6; + description "No dest configured"; + } + enum no-src-dst { + value 7; + description "No src/dst configured"; + } + enum shut { + value 8; + description "Session admin shut"; + } + enum invalid-dst-mode { + value 9; + description "Dst in wrong mode"; + } + enum invalid-src-mode { + value 10; + description "Src in wrong mode"; + } + enum no-flow-id { + value 11; + description "No erspan-id specified"; + } + enum multi-dest-not_allowed { + value 12; + description "Multi-dst not allowed"; + } + enum invalid-vrf { + value 13; + description "No valid VRF"; + } + enum invalid-ip { + value 14; + description "No valid IP address"; + } + enum acl-disabled { value 16; + description "ACL capture feature disabled"; + } + enum acl-no-res-string { + value 17; + description "No ACL capture resourc"; + } + enum acl-vdc-mismatch { + value 18; + description "ACL capture VDC mismatched"; + } + enum no-ssn-f1-f2 { + value 19; + description "SPAN session not supported in F1/F2 only VDC"; + } + enum no-erspan-switch-id { + value 20; + description "No erspan-switch-id specified"; + } + enum no-route { + value 21; + description "No route to destination IP address"; + } + enum arp-not-resolved { + value 22; + description "ARP not resolved"; + } + enum no-eg-intf { + value 23; + description "Egress interface not resolved"; + } + enum no-svi-member { + value 24; + description "SVI member not retrieved"; + } + enum no-dce-route { + value 25; + description "FP route not found"; + } + enum no-src-mac { + value 26; + description "Source MAC not retrieved"; + } + enum no-dce-switch-id { + value 27; + description "Source switch-id not retrieved"; + } + enum no-dce-src-lid { + value 28; + description "Source LID not retrieved"; + } + enum no-dce-egress-intf { + value 29; + description "FP egress interface not retrieved"; + } + enum no-si-1qtag { + value 30; + description "Failed to retrieve .1q tag for egress SI"; + } + enum no-fpc { + value 31; + description "Failed to retrieve FPC for egress fex intf"; + } + enum unsupported-route { + value 32; + description "Unsupported route (e.g. tunnel, lo, ranger)"; + } + enum erspan-dest-failed { + value 33; + description "SPAN destination resource allocation failure"; + } + enum erspan-action-not-supported { + value 34; + description "ERSPAN specific ACE actions not supported"; + } + enum udf-not-present { + value 35; + description "UDF not qualified for TCAM region"; + } + enum pfc-ns-port { + value 36; + description "Pfc Span on NS Port"; + } + enum udf-unsupported-on-vlan { + value 37; + description "UDF based ACL filter not supported on VLAN"; + } + enum hw-err { + value 38; + description "Hardware error"; } } - default "DEFAULT"; + default "shut"; } - // No equivalent type in YANG - typedef telemetry_Encoding { + typedef span_SrcDirection { type enumeration { - - // GPB - enum GPB { + enum rx { value 1; + description "Rx Direction - Ingress"; } - - // JSON - enum JSON { + enum tx { value 2; + description "Tx Direction - Egress"; } - - // XML - enum XML { + enum both { value 3; + description "Both Tx(Egress) AND Rx(Ingress) Direction"; } } - default "GPB"; + default "both"; } - // telemetry-stream-protocol - typedef telemetry_Protocol { - type enumeration { + // Monitor Session id + typedef span_SsnId { + type uint16 { + range "1..32"; + } + } - // UDP - enum UDP { + // Monitor State Enum + typedef span_State { + type enumeration { + enum up { value 1; + description "Up"; } - - // TCP - enum TCP { + enum down { value 2; + description "Down"; } + } + default "down"; + } - // gRPC - enum gRPC { - value 3; + // Monitor Type Enum + typedef span_Type { + type enumeration { + enum local { + value 0; + description "Local"; } - - // HTTP - enum HTTP { - value 4; + enum erspan-source { + value 1; + description "ERSPAN Source"; + } + enum erspanDst { + value 2; + description "ERSPAN Destination"; } } - default "gRPC"; + default "local"; } - // Retrieve Depth - typedef telemetry_RetrieveDepth { - - // MAX Converted to int from 0xffffffff + // - Affinity bit position + typedef srte_BitPos { type uint32 { - range "0..4294967295"; + range "0..31"; } - default "0"; } - typedef telemetry_VrfName { - type string { - length "1..32"; + typedef srte_ColorVal { + type uint64 { + range "0..4294967295"; } + default "0"; } - typedef terminal_Limit { - type uint32; + // DataPlane type + typedef srte_DataPlane { + type enumeration { + enum mpls { + value 0; + description "SRTE Dataplane Type - mpls"; + } + } + default "mpls"; } - typedef terminal_TermParity { + // Disjoint type + typedef srte_DisjointType { type enumeration { - - // No parity enum none { value 0; + description "SRTE Disjoint Type - none"; } - - // Odd parity - enum odd { + enum node { value 1; + description "SRTE Disjoint Type - node"; } - - // Even parity - enum even { + enum link { value 2; + description "SRTE Disjoint Type - link"; } } default "none"; } - typedef terminal_TermSize { - type uint32; + // Encapsulation type + typedef srte_EncapsulationType { + type enumeration { + enum mpls { + value 0; + description "SRTE Encapsulation Type - mpls"; + } + } + default "mpls"; } - typedef terminal_TimeoutT { - type uint32 { - range "0..525600"; + // Oper State for Interface + typedef srte_IfOperSt { + type enumeration { + enum down { + value 0; + description "Interface Oper State - down"; + } + enum up { + value 1; + description "Interface Oper State - up"; + } } - default "30"; } - // Frequency of the test in milliseconds - typedef test_Freq { - type string; - default "0"; + typedef srte_LabelVal { + type uint32 { + range "16..471804"; + } + default "16"; } - // Status of the test - typedef test_OperSt { + // Metric type + typedef srte_Metric { type enumeration { - - // Fail - enum fail { + enum none { value 0; + description "SRTE Metric Type - none"; } - - // Indeterminate - enum indeterminate { + enum te { value 1; + description "SRTE Metric Type - te"; } - - // Interrupted - enum interrupted { + enum igp { value 2; - } - - // Pending - enum pending { - value 3; - } - - // Not supported - enum not-supp { - value 4; - } - - // Not accessible - enum not-acc { - value 5; - } - - // Pass - enum pass { - value 6; - } - - // Not tested - enum not-tested { - value 7; + description "SRTE Metric Type - igp"; } } - default "pending"; + default "none"; + } + + // Metric Value + typedef srte_MetricVal { + type uint32; } - // Qualifier - typedef test_OperStQual { + // Name + typedef srte_Name { type string; } - // IFC team needs to provide generic instance id type - typedef test_PInstId { - type naming_PrimKey; + // - option number for index and preferences + typedef srte_OptNum { + type uint32 { + range "1..65535"; + } + } + + typedef srte_PcePrecedence { + type uint32 { + range "0..255"; + } + default "255"; } - // Test trigger - typedef test_Trig { + // Protection type + typedef srte_ProtectionType { type enumeration { - - // Unspecified - enum unspecified { + enum protected { value 0; + description "SRTE Protection Type - protected"; } - - // On demand - enum on-demand { + enum unprotected { value 1; - } - - // Bootup - enum boot { - value 2; - } - - // Ongoing - enum forever { - value 4; + description "SRTE Protection Type - unprotected"; } } - default "unspecified"; + default "protected"; } - // Represents a TLV Code - // The code comes from the application & hence no validation is performed on it - typedef tlv_Code { - type uint16; + typedef srv6_LocName { + type string; } - // Specifies the Role of this system - typedef top_NodeRole { + typedef srv6_LocState { type enumeration { - enum unsupported { + enum down { value 0; + description "Lacator is down"; } - enum controller { + enum downPending { value 1; + description "Locator is down pending"; } - enum leaf { + enum up { value 2; - } - enum spine { - value 3; - } - enum vleaf { - value 4; - } - enum vip { - value 5; - } - enum protection-chain { - value 6; + description "Locator is up"; } } - default "unsupported"; } - // Remote Network Identifier - typedef top_RemoteNetworkId { - type uint32; - default "0"; + // Forwarding instance target identifier + typedef ssx_FwdInstTargetId { + type uint32 { + range "0..16777215"; + } } - // Shard redudancy node - typedef topoctrl_ShardChNode { - type address_Ip; + // Interval + typedef ssx_Interval { + type uint32 { + range "100..1000"; + } + default "1000"; } - // Hop count - typedef traceroute_Hops { - type uint8 { - range "1..255"; + // MTU + typedef ssx_Mtu { + type uint16 { + range "1500..9000"; } - default "32"; + default "1500"; } - // Order - typedef traceroute_Order { - type uint8; + // SsxMonitorName + typedef ssx_SsxMonitorName { + type string { + length "0..128"; + } } - // Path flags - typedef traceroute_PathFlags { + // SsxPort + typedef ssx_SsxPort { + type uint16; + default "49153"; + } - // bits- Using string - type string; + // SsxRecordName + typedef ssx_SsxRecordName { + type string { + length "0..128"; + } } - // Path Group id - typedef traceroute_PathGrpId { - type uint8; + // SsxRemoteNodeName + typedef ssx_SsxRemoteNodeName { + type string { + length "0..128"; + } } - // Path id - typedef traceroute_PathId { - type uint8; + // Global System id + typedef ssx_SystemId { + type uint32 { + range "0..65535"; + } + default "0"; } - // Type of the path - typedef traceroute_PathT { - type enumeration { + // Vrfname + typedef ssx_VrfName { + type l3_VrfName; + default "default"; + } - // External - enum external { + // Administrative state + typedef stp_AdminSt { + type enumeration { + enum enabled { value 1; + description "Enabled"; } - - // Internal - enum internal { + enum disabled { value 2; + description "Disabled"; } } - default "internal"; - } - - // Path count - typedef traceroute_Paths { - type uint16 { - range "1..512"; - } - default "50"; + default "enabled"; } - // Address family type - typedef track_Af { + // BPDUGuard + typedef stp_BPDUGuard { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - - // IPv4 address family - enum ipv4 { + enum enable { value 1; + description "Enable"; } - - // IPv6 address family - enum ipv6 { + enum disable { value 2; + description "Disable"; } } - default "none"; + default "default"; } - // Interface object protocol state - typedef track_IntfProtocolType { + // bpdufilter type + typedef stp_Bpdufilter { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - enum ipv4-routing { + enum enable { value 1; + description "Enable"; } - enum ipv6-routing { + enum disable { value 2; - } - enum line-protocol { - value 3; + description "Disable"; } } - default "none"; + default "default"; } - // Type of List objects threshold/boolean - typedef track_ListObj { - type enumeration { - enum none { - value 0; - } - - // Boolean 'and' function - enum and { - value 1; - } - - // Boolean 'or' function - enum or { - value 2; - } - - // Threshold percentage - enum percentage { - value 3; - } - - // Threshold weight - enum weight { - value 4; - } + // bridge priority, incremental of 4096 + typedef stp_BridgePriority { + type uint16 { + range "0..61440"; } - default "none"; + default "32768"; } - // Probe type for Sla - typedef track_ProbeState { - type enumeration { + // Path Cost 0 means auto + typedef stp_Cost { + type uint32 { + range "0..200000000"; + } + default "0"; + } - // probe state is reachable or over threshold - enum reachability { - value 0; - } + typedef stp_Diameter { + type uint8 { + range "2..7"; + } + default "2"; + } - // probe state is reachable and within threshold - enum state { - value 1; - } + // Forward Delay Time in Second + typedef stp_FwdTime { + type uint8 { + range "4..30"; } - default "state"; + default "15"; } - // Route Owner type - // Process owning the route - typedef track_RouteOwner { + // port guard + typedef stp_Guard { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - - // Host Mobility Manager - enum hmm { + enum root { value 1; + description "Root"; + } + enum loop { + value 2; + description "Loop"; + } + enum none { + value 3; + description "None"; } } - default "none"; + default "default"; } - typedef track_RouteState { - type enumeration { - enum reachability { - value 0; - } + // Hello Interval in Second + typedef stp_HelloTime { + type uint8 { + range "1..10"; } - default "reachability"; + default "2"; } - // This type represents track Object ID. - typedef track_TrackId { - type uint16 { - range "1..512"; - } + // Interface controls + typedef stp_IfControl { + + type string; + default "unspecified"; } - // Administrative state of tunnel - typedef tunnel_AdminSt { + // Mode + typedef stp_IfMode { type enumeration { - - // up - enum up { + enum default { + value 0; + description "Default"; + } + enum edge { value 1; + description "Edge (host) port"; } - - // down - enum down { + enum network { value 2; + description "Network port"; + } + enum normal { + value 3; + description "Normal port"; + } + enum trunk { + value 4; + description "Edge port in trunk mode"; } } - default "up"; + default "default"; } - // Configured MTU - typedef tunnel_ConfMtu { + typedef stp_L2GStpDomId { type uint32 { - range "1..9000"; + range "0..200000000"; } - default "9000"; + default "1024"; } - // Tunnel encapsulation type - typedef tunnel_EncapT { + // LC Issu Option + typedef stp_LcIssu { type enumeration { - - // unknown - enum unknown { + enum default { value 0; + description "Default"; } - - // VXLAN encap - enum vxlan { + enum disruptive { value 1; + description "Disruptive"; } - - // iVXLAN encap - enum ivxlan { + enum non-disruptive { value 2; + description "Non-disruptive"; } - - // NV-GRE encap - enum nvgre { + enum auto { value 3; + description "Auto"; } } - default "ivxlan"; - } - - // Tunnel endpoint identifier - typedef tunnel_EpId { - type address_Ip; + default "default"; } - // Tunnel endpoint type - // Default Value computed from physical - typedef tunnel_EpT { - - // bits- Using string - type string; - default "physical"; + // Link Type + typedef stp_LinkType { + type enumeration { + enum auto { + value 1; + description "Auto"; + } + enum p2p { + value 2; + description "point-to-point"; + } + enum shared { + value 3; + description "Shared"; + } + } + default "auto"; } - // Keep alive period - typedef tunnel_KeepAlvIntvl { - type uint32 { - range "0..32767"; + // Hello Interval in Second + typedef stp_MaxAge { + type uint8 { + range "6..40"; } - default "10"; + default "20"; } - // Keep alive retry count - typedef tunnel_KeepAlvRetries { - type uint32 { + // Max Hops + typedef stp_MaxHops { + type uint8 { range "1..255"; } - default "3"; + default "20"; } - // Tunnel layer type (L2 or L3) - typedef tunnel_LayerT { + typedef stp_Mode { type enumeration { - - // l2 tunnel - enum l2 { + enum mst { value 1; + description "MST"; } - - // l3 tunnel - enum l3 { + enum pvrst { value 2; + description "PVRST"; } } - default "l2"; + default "pvrst"; } - // Operational state of tunnel - typedef tunnel_OperSt { + // Mode + typedef stp_ModeType { type enumeration { - - // up - enum up { + enum edge { value 1; + description "Edge (host) port"; } - - // down - enum down { + enum network { value 2; + description "Network port"; + } + enum normal { + value 3; + description "Normal port"; } } - default "down"; + default "normal"; } - // Tunnel types - typedef tunnel_TunnelQual { - type enumeration { - - // unknown - enum unknown { - value 0; - } - - // ivxlan - enum ivxlan { - value 1; - } - - // vxlan - enum vxlan { - value 2; - } + // Mst Id + typedef stp_MstId { + type uint16 { + range "0..4094"; } - default "ivxlan"; + default "0"; } - // Snmp trap state - typedef tunnelif_SnmpTrapSt { + // Path cost option + typedef stp_PathcostOp { type enumeration { - enum enabled { + enum auto { + value 0; + description "Auto"; + } + enum short { value 1; + description "Short"; } - enum disabled { + enum long { value 2; + description "Long"; } } - default "enabled"; + default "short"; } - // Tunnel Bandwidth in kilobits per second. - typedef tunnelif_TunnelBW { - type uint32 { - range "1..10000000"; + // port priority, incremental of 32 + typedef stp_PortPriority { + type uint8 { + range "0..224"; } - default "9"; + default "128"; } - // Tunnel mode types - typedef tunnelif_TunnelMode { + // STP port roles. + typedef stp_PortRole { type enumeration { - - // GRE/IP - enum gre/ip { - value 1; - } - - // GRE/IPV6 - enum gre/ipv6 { - value 6; - } - - // IPIP/IP - enum ipip/ip { - value 7; - } - - // IPIP/IPV6 - enum ipip/ipv6 { - value 8; - } - - // IPIP/Decapsulate Any/IP - enum ipip/dcapany/ip { - value 9; + enum unknown { + value 0; + description "Unknown role"; } - - // IPIP/Decapsulate Any/IPV6 - enum ipip/dcapany/ipv6 { - value 10; + enum root { + value 1; + description "Root port"; } - - // IPV6IP - enum ipv6ip { - value 11; + enum alternate { + value 2; + description "Alternate port"; } - - // IPV6IP/Decapsulate Any - enum ipv6ip/dcapany { - value 12; + enum designated { + value 3; + description "Designated port"; } - - // IPV6/IPV6 - enum ipv6ipv6 { - value 13; + enum backup { + value 4; + description "Backup port"; } - - // IPV6IPV6/Decapsulate Any - enum ipv6ipv6/dcapany { - value 14; + enum master { + value 5; + description "Master port"; } } - default "gre/ip"; - } - - // Configured MTU - typedef tunnelif_TunnelMtu { - type uint32 { - range "64..9196"; - } - default "1476"; } - // Operational state of tunnel - typedef tunnelif_TunnelOperSt { + // STP port states. + typedef stp_PortState { type enumeration { - - // up - enum up { + enum unknown { + value 0; + description "Unknown state"; + } + enum discarding { value 1; + description "Discarding state"; } - - // down - enum down { + enum learning { value 2; + description "Learning state"; + } + enum forwarding { + value 3; + description "Forwarding state"; + } + enum disabled { + value 4; + description "Disabled state"; } } - default "down"; } - // Reasons for line protcol state being down. - typedef tunnelif_TunnelOperStQual { + // bridge priority, incremental of 4096 + typedef stp_Priority { type enumeration { - - // unknown - enum unknown { + enum 0 { value 0; + description "Priority_0"; } - - // No reason - enum none { + enum 4096 { value 1; + description "Priority_4096"; } - - // Initializing hardware - enum initing { + enum 8192 { value 2; + description "Priority_8192"; } - - // Tunnel configuration is incomplete - enum incomp-conf { + enum 12288 { value 3; + description "Priority_12288"; } - - // Duplicate tunnel config - enum dup-conf { + enum 16384 { value 4; + description "Priority_16384"; } - - // tunnel mode is not configured - enum no-mode { + enum 20480 { value 5; + description "Priority_20480"; } - - // Admin state is down - enum admin-down; - - // Tunnel source down - enum src-down { + enum 24576 { + value 6; + description "Priority_24576"; + } + enum 28672 { value 7; + description "Priority_28672"; } - - // Source IP could not be resolved - enum src-unres { + enum 32768 { value 8; + description "Priority_32768"; } - - // Destination is not configured - enum no-dest { + enum 36864 { value 9; + description "Priority_36864"; } - - // Destination IP address unresolvable - enum desip-unres { + enum 40960 { value 10; + description "Priority_40960"; } - - // Destination unreachable - enum dest-unreach; - - // Source interface and tunnel VRF mismatch - enum vrf-mismatch { + enum 45056 { + value 11; + description "Priority_45056"; + } + enum 49152 { value 12; + description "Priority_49152"; } - - // Tunnel transport VRF is forward referencing - enum vrf-fwdref { + enum 53248 { value 13; + description "Priority_53248"; } - - // VRF is down - enum vrf-down { + enum 57344 { value 14; + description "Priority_57344"; } - - // MTU programming failed - enum mtu-error { + enum 61440 { value 15; - } - - // Hardware programming failed - enum hwprog-fail; - - // Source is not configured - enum no-src { - value 17; + description "Priority_61440"; } } - default "unknown"; + default "32768"; } - // Tunnel Interface Options - typedef tunnelif_TunnelOption { + // Spanning tree protocols. + typedef stp_Protocol { type enumeration { - - // unknown enum unknown { value 0; + description "Unknown protocol"; } - - // delete on failure - enum del_on_fail { + enum mstp { value 1; + description "MSTP"; } - - // user configured mtu - enum usr_cfg_mtu { + enum rstp { value 2; + description "RSTP"; } } - default "unknown"; } - // Configured age timer for Tunnel PMTU - typedef tunnelif_TunnelPMTUAge { - type uint32 { - range "0..30"; + // MST region name + typedef stp_RegName { + type string { + length "0..32"; } - default "10"; } - // Tunnel Path MTU Discovery - typedef tunnelif_TunnelPMTUD { + // MST region revision number + typedef stp_RegRev { + + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Root Options + typedef stp_Root { type enumeration { + enum primary { + value 1; + description "Primary"; + } + enum secondary { + value 2; + description "Secondary"; + } + } + default "primary"; + } - // enabled + // Root Mode config + typedef stp_RootMode { + type enumeration { enum enabled { value 1; + description "Configs will be updated in root mode"; } - - // disabled enum disabled { - value 2; + value 0; + description "Configs in normal mode and not root"; } } default "disabled"; } - // Tunnel Source Direct - typedef tunnelif_TunnelSrcDirect { + // Root Type for Bridge + typedef stp_RootType { type enumeration { - - // enabled - enum enabled { + enum none { + value 0; + description "STP normal root"; + } + enum primary { value 1; + description "STP primary root"; } - - // disabled - enum disabled { + enum secondary { value 2; + description "STP secondary root"; } } - default "disabled"; + default "none"; } - // Tunnel TTL (from 0 to 255) - typedef tunnelif_TunnelTTL { - type uint32 { - range "0..255"; + // Mst simulate pvst + typedef stp_Simulate { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - default "0"; + default "enabled"; } - // Configured Tunnel transport VRF - typedef tunnelif_TunnelTransVRF { - type l3_VrfName; - default "default"; - } - - // Configured min-MTU for Tunnel PMTU - typedef tunnelif_TunnelminPMTU { - type uint32 { - range "64..9196"; - } - default "64"; - } - - // Administrative state - typedef udld_AdminSt { + typedef stp_SimulateIf { type enumeration { - - // Enabled - enum enabled { - value 1; - } - - // Disabled - enum disabled { - value 2; + enum default { + value 0; + description "Default"; } - } - default "disabled"; - } - - // Msg Interval - typedef udld_MsgIntvl { - type uint8 { - range "7..90"; - } - default "15"; - } - - // Operational state - typedef udld_OperSt { - type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } - default "disabled"; + default "default"; } - typedef udld_PktDirection { - type enumeration { - - // send - enum send { - value 0; - } + typedef stp_VlanBitmap { + type l2_VlanBitmap; + } - // recv - enum recv { - value 1; - } + // vlan id + typedef stp_VlanId { + type uint16 { + range "1..4096"; } - default "send"; + default "1"; } - typedef udld_PortEnable { + // vpc state per port + typedef stp_VpcState { type enumeration { - - // Port Enabled - enum port-enabled { + enum none { value 0; + description "None"; } - - // Port Fiber Disabled - enum port-fiber-disabled { + enum vPCPeerlink { value 1; + description "VPCPeerLink"; } - - // Port Default - enum port-default { + enum vPC { value 2; + description "VPC"; } } - default "port-default"; - } - - // Label Table Client Flags - typedef ulib_ClientFlag { - - // bits- Using string - type string; + default "none"; } - // Max Dynamic label - typedef ulib_DynLblMax { + // Bandwidth metric of the SVI in kilobits per second. + typedef svi_Bw { type uint32 { - range "16..471804"; + range "1..400000000"; } - default "471804"; + default "1000000"; } - // Min Dynamic label - typedef ulib_DynLblMin { + // Carrier Transition Delay (like L2 interface going down in + // milliseconds + typedef svi_CarrDelay { type uint32 { - range "16..471804"; + range "0..60000"; } - default "16"; + default "100"; } - // Label Count Value - typedef ulib_LabelCnt { + // Delay metric of the SVI in tens of microseconds + typedef svi_Delay { type uint32 { - range "0..471804"; + range "1..16777215"; } - default "0"; + default "1"; } - // Label Range Value - typedef ulib_LabelVal { + // Load averaging delay interval 1 in seconds + typedef svi_LoadIntvl1 { type uint32 { - range "0..471804"; + range "60..600"; } + default "60"; } - // 32 bit Counter - typedef urib_Counter32 { - type uint32; - } - - typedef urib_NhFlags4 { - - // bits- Using string - type string; - } - - typedef urib_NhFlags6 { - - // bits- Using string - type string; - } - - typedef urib_RouteFlags4 { - - // bits- Using string - type string; - } - - typedef urib_RouteFlags6 { - - // bits- Using string - type string; - } - - // Application Sap Id - typedef vpc_AppId { - type uint32; - } - - // Track Object - typedef vpc_AutoRecoveryIntvl { + // Load averaging delay interval 2 in seconds + typedef svi_LoadIntvl2 { type uint32 { - range "60..86400"; - } - default "240"; - } - - // Batched vpc inventory - typedef vpc_BatchedVpcInv { - - // bits- Using string - type string; - } - - // vPC Compatibility Reason Code - typedef vpc_CompatQual { - type uint32; - } - - // vPC Compatability Status - typedef vpc_CompatSt { - type enumeration { - - // success - enum pass { - value 0; - } - - // failed - enum fail { - value 1; - } - - // Not Applicable - enum notDone { - value 2; - } + range "60..600"; } - default "notDone"; + default "300"; } - // Peer dead interval in seconds - typedef vpc_DeadIntvl { + // Load averaging delay interval 3 in seconds + typedef svi_LoadIntvl3 { type uint32 { - range "5..600"; - } - default "200"; - } - - // Delay Peer Link Bringup - typedef vpc_DelayPeerLinkBringup { - type uint16 { - range "0..7200"; - } - default "0"; - } - - // Delay Restore SVI - typedef vpc_DelayRestoreSVI { - type uint16 { - range "1..3600"; - } - default "10"; - } - - // Delay Restore vPC - typedef vpc_DelayRestoreVPC { - type uint16 { - range "1..3600"; - } - default "30"; - } - - // VPC domain ID - typedef vpc_DomId { - type uint16 { - range "1..1000"; + range "60..600"; } + default "60"; } - // Domain operational state - // Default Value computed from not-applicable - typedef vpc_DomOperSt { - - // bits- Using string - type string; - default "not-applicable"; - } - - // Dual Active Status - typedef vpc_DualActiveSt { + // Medium mode of the SVI + typedef svi_Medium { type enumeration { - - // 0 - enum false { + enum bcast { value 0; + description "broadcast"; } - - // 1 - enum true { + enum p2p { value 1; + description "p2p"; } } + default "bcast"; } - typedef vpc_ExcludeSVI { - type l2_VlanBitmap; - default "0"; - } - - typedef vpc_ExcludeVLAN { - type l2_VlanBitmap; - default "0"; - } - - // Flush Timeout in seconds - typedef vpc_FlushTout { - type uint32 { - range "3..10"; - } - default "3"; - } - - // vPC number - typedef vpc_Id { - type uint16 { - range "1..16384"; - } - } - - // Keepalive Interval in milli-seconds - typedef vpc_KeepaliveInterval { - type uint32 { - range "400..10000"; - } - default "1000"; - } - - // Keepalive operational state - // Default Value computed from 0 - typedef vpc_KeepaliveOperSt { - - // bits- Using string - type string; - default "0"; - } - - // Keepalive Timeout in seconds - typedef vpc_KeepaliveTout { + // MTU of the SVI + typedef svi_Mtu { type uint32 { - range "3..20"; - } - default "5"; - } - - // L3 peer-router syslog interval - typedef vpc_L3PeerRouterSyslogInterval { - type uint16 { - range "1..3600"; + range "64..9216"; } - default "3600"; + default "1500"; } - // vPC operational Status - typedef vpc_OperSt { + // Line operational state + typedef svi_OperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "unknown"; } - - // Down - enum down { + enum up { value 1; + description "up"; } - - // Up - enum up { + enum down { value 2; + description "down"; } - - // Not configured - enum noCfg { + enum shutdown { value 3; + description "shutdown"; + } + enum out-of-srvc { + value 4; + description "out of service"; } } - default "unknown"; - } - - // Orphan port list TODO: change this to be an array of uint32 once we have the - // required datatype defined by Shrey. - typedef vpc_OrphanPortList { - type uint32; - } - - // Param Length - typedef vpc_ParamLen { - type uint32; + default "down"; } - // Param Type - typedef vpc_ParamType { + // Reason for operational state being down + typedef svi_OperStQual { type enumeration { - - // Unknown enum unknown { value 0; + description "None"; } - - // Type 1 - enum type-1 { + enum admin-shut { value 1; + description "administratively shut down"; } - - // Type 2 - enum type-2 { + enum no-vlan { value 2; + description "vlan does not exist."; + } + enum bad-vlan_t { + value 3; + description "invalid vlan type"; + } + enum vlan-down { + value 4; + description "vlan is down"; + } + enum hwprog-flfm { + value 5; + description "hardware programming failed (l2fm)"; + } + enum hwprog-fles { + value 6; + description "hardware programming failed (event Sequence)"; + } + enum oos { + value 7; + description "out of service"; + } + enum reinit { + value 8; + description "service is down or being brought down"; + } + enum mtuprog-fail { + value 9; + description "mtu programming failed"; + } + enum vrf-unusable { + value 10; + description "VRF not usable"; + } + enum l2st-change { + value 11; + description "underlying l2 interface state us down"; + } + enum suspended { + value 12; + description "Operationally shut down"; + } + enum macalloc-fail { + value 13; + description "mac address allocation failed"; + } + enum nonrouted-vdc { + value 14; + description "non-routable VDC mode"; + } + enum int-vlan-create-fail { + value 15; + description "interface vlan-create process failed"; + } + enum inbMgmt-cfg-fail { + value 16; + description "inbMgmt Config failed"; } } default "unknown"; } - // Param Value - typedef vpc_ParamVal { - type mtx_array_uint8; - } - - // vPC peer Status - typedef vpc_PeerSt { - type enumeration { - - // Not configured - enum noCfg { - value 0; - } - - // Down - enum down { - value 1; - } - - // Up - enum up { - value 2; - } + typedef svi_VlanId { + type uint16 { + range "0..4095"; } + default "0"; } - // vPC peer status reason code - typedef vpc_PeerStQual { + // Operational state of the package + typedef swpkgs_OperState { type enumeration { - - // Success - enum success { + enum none { value 0; + description "No RPM packages"; } - - // Uplinks down - enum uplinks-down { + enum inactive { value 1; + description "inactive RPM package"; } - - // Route down - enum route-down { + enum activated { value 2; + description "activated RPM package"; } - - // Peer unreachable - enum peer-unrch { + enum deactivated { value 3; + description "This is Inactive commit pending package.Commit on this package needs to be done to make it permanently inactive."; } - - // Compatibility Failed - enum compat-fail { + enum committed { value 4; + description "Committed RPM package"; } - - // Election error - enum election-err { + enum inactive_base { value 5; + description "inactive base RPM package"; } - - // Keepalive not Operational - enum oob-not-up { + enum activated_base { value 6; + description "activated base RPM package"; + } + enum activated_thirdparty { + value 7; + description "activated thirdparty rootfs package"; } } + default "none"; } - // Peer version - typedef vpc_PeerVersion { - type uint32; - } - - // Precedence type - typedef vpc_PrecType { + // Package action to be selected by the user + typedef swpkgs_PackageAction { type enumeration { - - // Network - enum network { + enum init { value 0; + description "This state is the initial state of the package.When the system boots up it will have this state."; } - - // Internet - enum internet { + enum add { value 1; + description "Add a RPM package to the repo"; } - - // Critical - enum critical { + enum activate { value 2; + description "Activate the RPM package"; } - - // Flash override - enum flash-override { + enum add-activate { value 3; + description "Add and Activate the RPM package"; } - - // Flash - enum flash { + enum deactivate { value 4; + description "Deactivate the RPM package"; } - - // Immediate - enum immediate { + enum commit { value 5; + description "Commit the RPM package"; } - - // Priority - enum priority { + enum remove { value 6; + description "Remove the RPM package"; } - - // Routine - enum routine { + enum add-gpg { value 7; + description "Add the gpg-key"; + } + enum verify-package { + value 8; + description "Verify active/inactive package for signature"; + } + enum verify-rpm { + value 9; + description "Verify RPM for signature"; } } - default "routine"; - } - - // Precedence value - typedef vpc_PrecValue { - type uint8 { - range "0..7"; - } - default "6"; + default "init"; } - // Role - typedef vpc_Role { + // Package action result + typedef swpkgs_PackageActionResult { type enumeration { - - // Election-not-done - enum election-not-done { + enum success { value 0; + description "Patch action the package was succesfull."; } - - // Master - enum master { + enum failed { value 1; + description "Patch action the package failed."; } - - // Slave - enum slave { + enum not-available { value 2; + description "Not Available"; } } - default "election-not-done"; - } - - // Role Priority - typedef vpc_RolePrio { - type uint16 { - range "1..65535"; - } - default "32667"; + default "not-available"; } - // Summarized Role - typedef vpc_SummRole { + // Reset reason + typedef syshist_RstRsn { type enumeration { - - // None Established - enum election-not-done { + enum unknown { value 0; + description "Unknown"; } - - // Primary - enum cfg-master-oper-master { + enum reboot { value 1; + description "Kernel Reboot"; } - - // Primary, Operational Secondary - enum cfg-master-oper-slave { + enum watchdog { value 2; + description "Watchdog Timeout"; } - - // Secondary, Operational Primary - enum cfg-slave-oper-master { + enum sysmgr { value 3; + description "Reset Requested due to Fatal System Error"; } - - // Secondary - enum cfg-slave-oper-slave { + enum mod-err { value 4; + description "Reset Requested due to Fatal Module Error"; + } + enum pwr-cfg { + value 5; + description "Configured Power down"; + } + enum temp-alaram { + value 6; + description "Power down due to temperature sensor policy trigger"; + } + enum user-switchover { + value 7; + description "Reset triggered due to Switchover Request by User"; + } + enum upg-err { + value 8; + description "Reset Requested due to Fatal Upgrade Error"; + } + enum reload { + value 9; + description "Reset Requested by CLI command reload"; + } + enum sprom-upd { + value 10; + description "Reset Requested due to SPROM update"; + } + enum sys-cfg-dwn { + value 11; + description "System Reset due to Element Manager"; + } + enum clock { + value 12; + description "System Reset due to Clock failure"; + } + enum halt { + value 13; + description "Kernel Halt"; + } + enum redundancy { + value 14; + description "Reset Requested by Redundancy"; + } + enum ha-switchover { + value 15; + description "Reset triggered due to HA policy of Switchover"; + } + enum ha-reset { + value 16; + description "Reset triggered due to HA policy of Reset"; + } + enum pfm-rtime { + value 17; + description "Power down triggered due to Platform manager runtime error"; + } + enum pfm-power-dwn { + value 18; + description "Power down triggered due to Platform manager event"; + } + enum panic { + value 19; + description "Kernel Panic"; + } + enum mgmt-app { + value 20; + description "Reset Requested by management application"; + } + enum hw { + value 21; + description "Reset triggered due to Hardware Error"; + } + enum asic { + value 22; + description "Reset performed due to component Error"; + } + enum redun-channel { + value 23; + description "Reset triggered due to bad redundancy channel"; + } + enum sys-health { + value 24; + description "Reset due to bad HW detected by System Health"; + } + enum eobc { + value 25; + description "Reset triggered due to bad backplane communication channel"; + } + enum boot-err { + value 27; + description "Reset (powered-down) because module does not boot"; + } + enum no-bootflash { + value 28; + description "Reset (powered-down) because there is no bootflash"; + } + enum netboot-err { + value 29; + description "Reset (powered-down) because netboot failed"; + } + enum bootflash-corrupt { + value 30; + description "Reset (powered-down) because bootflash access failed"; + } + enum installer { + value 31; + description "Reset by installer"; + } + enum epld { + value 33; + description "Power Down/UP epld upgrade process"; + } + enum sigkill-fail { + value 34; + description "Reset triggered due to failure to respond to SIGKILL"; + } + enum sys-gen-fail { + value 35; + description "Reset triggered by System Manager for generic failure"; + } + enum clock-switchover { + value 37; + description "VegasLC Reset due to Clock SwitchOver"; + } + enum insufficient-resource { + value 38; + description "Reset (powered-down) because of insufficient resources (DI)"; + } + enum incompat-config { + value 43; + description "Reset (powered-down) because of incompatible configuration"; + } + enum lcm-unknown { + value 44; + description "Unknown reason"; + } + enum lcm-ha-restart { + value 45; + description "HA System restart"; + } + enum lcm-haswitchover-done { + value 46; + description "HA-Switchover done"; + } + enum lcm-boot-srg-timeout { + value 47; + description "SRG info response timeout"; + } + enum lcm-coredump { + value 48; + description "Core dump initiation"; + } + enum lcm-disruptive-upg { + value 49; + description "Disruptive upgrade"; + } + enum lcm-lc-fail { + value 50; + description "Line card failure"; + } + enum lcm-hitless-mod-rem { + value 51; + description "Hitless module removal"; + } + enum lcm-hitless-pwr-dwn { + value 52; + description "Hitless power down"; + } + enum lcm-hitless-proc-notice { + value 53; + description "Catastrophic error from LC"; + } + enum lcm-hitless-reg-fail { + value 54; + description "Hitless registration failed"; + } + enum lcm-hitless-timeout { + value 55; + description "Hitless upgrade timeout"; + } + enum lcm-img-upg-timeout { + value 56; + description "Line card image upgrade (failure)"; + } + enum lcm-img-upgsuccess { + value 57; + description "Line card image upgrade (success)"; + } + enum lcm-lc-ins-seq-fail { + value 58; + description "LC insertion sequence failure"; + } + enum lcm-hitless-upg-fail { + value 59; + description "Hitless upgrade failed"; + } + enum lcm-lc-no-resp { + value 60; + description "Line card not responding"; + } + enum lcm-lc-reg-more3 { + value 61; + description "Line card 3+ registration"; + } + enum lcm-lc-reg-timeout { + value 62; + description "Line card registration timeout"; + } + enum lcm-runtime-diag-fail { + value 63; + description "Runtime diagnostic failure"; + } + enum lcm-runtime-diag-timeout { + value 64; + description "Runtime diagnostic timeout"; + } + enum lcm-seeprom-timeout { + value 65; + description "Line card SEEPROM contents response timeout"; + } + enum lcm-proc-notice { + value 66; + description "Line card catastrophic error"; + } + enum lcm-save-state-fail { + value 67; + description "Save state response (failure)"; + } + enum lcm-hitfull-img-check { + value 68; + description "Hitful image compatibility check"; + } + enum lcm-img-check-pwr-cycle { + value 69; + description "Image compatibility check (action:powercycle)"; + } + enum lcm-img-check-pwr-dwn { + value 70; + description "Image compatibility check (action:powerdown)"; + } + enum lcm-img-check-switch-over { + value 71; + description "Switchover : Image compatibility check"; + } + enum lcm-power-down { + value 72; + description "Module is powered down or power cycled"; + } + enum lcm-sup-rem { + value 73; + description "Supervisor card is removed or power cycled"; + } + enum lcm-lc-rem { + value 74; + description "Module is removed"; + } + enum lcm-unknown-mod { + value 75; + description "Unknown line card insertion"; + } + enum lcm-srg-timeout { + value 76; + description "SRG infor response timeout"; + } + enum lcm-async-notice-fail { + value 77; + description "Stop async notice failed"; + } + enum lcm-switchover-fail { + value 78; + description "Switchover failed"; + } + enum lcm-timeout { + value 79; + description "Addon image response timeout"; + } + enum lcm-srg-incompat { + value 80; + description "Upgraded SRG incompatible"; + } + enum outofservice { + value 86; + description "Out of service"; + } + enum sup-dev-err { + value 87; + description "Supervisor Device Error"; + } + enum issu-restart { + value 88; + description "Reset due to upgrade"; + } + enum ins-seq-fail-pwr-dwn { + value 89; + description "Reset (powered-down) due to insertion sequence failed"; + } + enum no-sup { + value 92; + description "Reset due to no sup"; + } + enum bad-volt { + value 93; + description "Reset due to Bad Voltage"; + } + enum bad-bus-volt { + value 94; + description "Reset due to bad system bus voltage"; + } + enum bad-intermediate-bus-volt { + value 95; + description "Reset due to bad intermediate bus voltage"; + } + enum psp { + value 96; + description "Reset due to CMP"; + } + enum eem-pwr-dwn { + value 97; + description "Powered-down due to EEM event policy trigger"; + } + enum usd-fail { + value 98; + description "Reset due to USD Failure"; + } + enum ejector { + value 99; + description "All the ejectors are OPEN"; + } + enum sys-rst { + value 100; + description "System reset by active sup (by writing to PMFPGA regs)"; + } + enum push-button { + value 101; + description "linecard reset by push button"; + } + enum policy-reset { + value 103; + description "Policy trigger initiated reset: "; + } + enum policy-fan { + value 104; + description "Powered-down due to fan policy trigger"; + } + enum chassis-rst { + value 105; + description "Chassis reset by Sup"; + } + enum max-switchover { + value 107; + description "Reset (powered-down) since maximum number of swovers were exceeded"; + } + enum switchover-timeout { + value 108; + description "Reset since switchover timeout"; + } + enum sysmgr-timeout { + value 109; + description "Reset of standby by active sup due to sysmgr timeout"; + } + enum unknown-mod { + value 110; + description "Unsupported/Unknown Module"; + } + enum mod-fail { + value 111; + description "Module Failed"; + } + enum mod-pwr-cycle { + value 112; + description "Module PowerCycled"; + } + enum card-incompat { + value 113; + description "Module not supported in this chassis"; + } + enum idprom-err { + value 114; + description "Bootup error accessing module IDPROM"; + } + enum unspecified { + value 115; + description "Non-specific deadend error, check platform int error"; + } + enum no-plugin { + value 117; + description "plugin absent/ not loaded"; + } + enum sw-card-id-unknown { + value 118; + description "Unknown card (Could not get software-card-id)"; + } + enum mod-fail-pwr-up { + value 119; + description "Unable to power up card (Power-OK not set)"; + } + enum max-bring-up-exceed { + value 120; + description "failure(powered-down) since maximum number of bringups were exceeded"; + } + enum enm-enabled { + value 121; + description "Ethernet end-host mode enabled"; + } + enum enm-disabled { + value 122; + description "Ethernet end-host mode disabled"; + } + enum vpd-read-failure { + value 123; + description "IBM VPD read Failed"; + } + enum inc-cos-mod { + value 124; + description "powered-down since linecard does not support the cos mode"; + } + enum epld-upg-nw-crd-mode { + value 125; + description "Power Down/UP epld upgrade process"; + } + enum deep-sleep { + value 126; + description "Preparing to enter deep sleep mode"; + } + enum fcoe-featureset-absent { + value 127; + description "(powered-down) FCOE feature-set absent(disabled or uninstalled)"; + } + enum power-cycle-button { + value 128; + description "Power cycle button pressed"; + } + enum config-reset-button { + value 129; + description "Configuration reset button pressed"; + } + enum agni-app-init-reload { + value 130; + description "Reload Initiated by application"; + } + enum cpu-caterr-signal { + value 131; + description "CPU CATERR Signal Asserted"; + } + enum patch-install { + value 132; + description "Reset due to patch install"; + } + enum fastboot { + value 133; + description "Reset due to fast-reload"; + } + enum no-sc { + value 134; + description "Powered down due to absence of system-controller module"; + } + enum no-fm { + value 135; + description "Powered down due to absence of fabric module"; + } + enum lc-breakout { + value 136; + description "Reloaded since breakout was configured/deconfigured on the LC"; + } + enum hg-link-down { + value 137; + description "Reloaded since a HG link went down on this LC"; + } + enum slot-id-parity-err { + value 138; + description "Reset due to FPGA Slot ID parity error"; + } + enum power-error { + value 139; + description "Reset due to Power error"; + } + enum firmware-upgrade { + value 140; + description "Reload due to Firmware upgrade"; + } + enum unsipp-dist-arbit-mode { + value 141; + description "Powered-down since linecard/spine/supervisor doesn't support distributed arbitration mode"; + } + enum enhanced-virtualization-enabled { + value 142; + description "switch mode enhanced-virtualization enabled"; + } + enum enhanced-virtualization-disabled { + value 143; + description "switch mode enhanced-virtualization disabled"; + } + enum no-fm-connectivity { + value 144; + description "Powered down due to no connectivity to fabric mode"; + } + enum fabric-mode { + value 145; + description "Powered down due to fabric configured in FRM mode"; + } + enum epc-failure { + value 146; + description "Reset triggered due to bad (EPC) packet communication channel"; + } + enum all-vdcs-not-online { + value 147; + description "Reset (powered-down) because all VDCs for module need to be online"; + } + enum pfm-auth-fail { + value 148; + description "Reset (powered down) due to module authentication failure"; + } + enum pfm-startauth-fail { + value 149; + description "Reset (powered down) due to module authentication start failure"; + } + enum sys-dme-clean-config-reset { + value 150; + description "Dme clean config reset"; + } + enum pf-eem-policy-trigger-fan-air-flow { + value 151; + description "Powered-down due to fan air flow policy trigger"; + } + enum standby-reload-symc-failure { + value 152; + description "standby reset due to failure on large MOs sync"; + } + enum issu-non-disruptive-restart { + value 153; + description "Reset due to non-disruptive upgrade"; + } + enum afm-tcam-remplate-apply { + value 154; + description "Reload due to change in TCAM service-template"; + } + enum interop-change-request { + value 155; + description "Reload due to interop-mode change"; + } + enum soft-reload-via-crash { + value 156; + description "Reset due to soft reload via Crash"; + } + enum soft-reload-via-cli { + value 157; + description "Reset due to soft reload via CLI"; + } + enum soft-reload-fail-reload { + value 158; + description "Reset due to soft reload attempt failure"; + } + enum act2-auth-failure { + value 159; + description "Reset due to ACT2 authentication failure"; + } + enum un-asic-mem-error { + value 160; + description "Multiple uncorrectable ASIC memory errors detected"; + } + enum not-defined { + value 161; + description "Not defined"; } } - default "election-not-done"; - } - - // System Priority - typedef vpc_SysPrio { - type uint16 { - range "1..65535"; - } - default "32667"; - } - - // Time - typedef vpc_Time { - type string; - } - - // ToS byte - typedef vpc_TosByte { - type uint8 { - range "0..255"; - } - default "0"; } - // ToS config type - typedef vpc_TosCfgType { - type enumeration { + // Reset reason qualifier + typedef syshist_RstRsnQual { + type string; + } - // No configuration - enum noCfg { + typedef syshist_RstService { + type string; + } + + typedef syslog_Facility { + type enumeration { + enum kern { value 0; } - - // ToS byte - enum tos-byte { + enum user { value 1; } - - // ToS value - enum tos-value { + enum mail { value 2; } - - // ToS type - enum tos-type { + enum daemon { value 3; } - - // Precedence Type - enum precedence-type { + enum auth { value 4; } - - // Precedence Value - enum precedence-value { + enum syslog { value 5; } - } - default "noCfg"; - } - - // ToS type - typedef vpc_TosType { - type enumeration { - - // Min delay - enum min-delay { - value 0; + enum lpr { + value 6; } - - // Max throughput - enum max-throughput { - value 1; + enum news { + value 7; } - - // Max Reliability - enum max-reliability { - value 2; + enum uucp { + value 8; } - - // Min Monetary Cost - enum min-monetary-cost { - value 3; + enum cron { + value 9; } - - // Normal - enum normal { - value 4; + enum authpriv { + value 10; + } + enum ftp { + value 11; + } + enum local0 { + value 16; + } + enum local1 { + value 17; + } + enum local2 { + value 18; + } + enum local3 { + value 19; + } + enum local4 { + value 20; + } + enum local5 { + value 21; + } + enum local6 { + value 22; + } + enum local7 { + value 23; } } - default "normal"; - } - - // ToS value - typedef vpc_TosValue { - type uint8 { - range "0..15"; - } - default "0"; + default "local7"; } - // Track Object - typedef vpc_Track { - type uint16 { - range "0..500"; + typedef syslog_FileSize { + type uint32 { + range "4096..4194304"; } - default "0"; + default "4194304"; } - // Virtual IP Announcement Delay - typedef vpc_VIpAnnounceDelay { - type uint16 { - range "30..600"; + typedef syslog_OperState { + type enumeration { + enum unknown { + value 0; + } + enum available { + value 1; + } + enum errored { + value 2; + } } - default "45"; + default "unknown"; } - // admin state - typedef vrrp_AdminSt { + typedef syslog_OriginIdType { type enumeration { - - // Vrrp id shut - enum disabled { + enum unknown { + value 0; + } + enum hostname { value 1; } - - // Vrrp id no shut - enum enabled { + enum ip { value 2; } + enum string { + value 3; + } } - default "disabled"; + default "unknown"; } - // advertise interval - typedef vrrp_AdvIntvl { - type uint8 { - range "1..255"; + typedef syslog_OriginIdValue { + type string { + length "0..199"; + pattern ".*(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } - default "1"; } - // authentication text type - typedef vrrp_AuthTextType { - type string { - length "0..8"; + // Type definition for RfcStrcic + typedef syslog_RfcStrictFormat { + type enumeration { + enum legacy { + value 0; + } + enum 5424 { + value 1; + } } + default "legacy"; } - // authentication type - typedef vrrp_AuthType { + typedef syslog_Severity { type enumeration { - - // no authentication - enum none { + enum emergencies { + value 0; + description "emergencies"; + } + enum alerts { value 1; + description "alerts"; } - - // plain text - enum simple { + enum critical { value 2; + description "critical"; + } + enum errors { + value 3; + description "errors"; + } + enum warnings { + value 4; + description "warnings"; + } + enum notifications { + value 5; + description "notifications"; + } + enum information { + value 6; + description "information"; + } + enum debugging { + value 7; + description "debugging"; } } - default "none"; + default "notifications"; } - // group state - typedef vrrp_GroupSt { - type enumeration { + // SyslogPort + typedef syslog_SyslogPort { + type uint32 { + range "1..65535"; + } + default "514"; + } - // Vrrp Group state Init - enum init { + typedef syslog_TimeStampFormat { + type enumeration { + enum microseconds { value 0; } - - // vrrp group state backup - enum backup { + enum milliseconds { value 1; } - - // vrrp group state master - enum master { + enum seconds { value 2; } } + default "seconds"; } - // group state qualifier - typedef vrrp_GroupStQual { + // Admin status of sysmgr config properties + typedef sysmgr_CfgAdminSt { type enumeration { - - // Vrrp group state up - enum up { + enum unknown { value 0; + description "unknown"; } - - // Vrrp group state down - enum down { + enum enable { value 1; + description "enable"; } - - // vrrp group state down no ip primary vip - enum no-primary-vip { + enum disable-all { value 2; + description "disable-all"; } - - // vrrp group state down admin down - enum admin-down { + enum disable-trc-mask { value 3; + description "disable-trc-mask"; } - - // vrrp group state down inteface down - enum interface-down { + enum disable-fast-timer { value 4; + description "disable-fast-timer"; } + } + default "unknown"; + } - // vrrp group state down no intf ip cfgd - enum no-intf-ip-cfgd { - value 5; + // Config mode + typedef sysmgr_CfgMode { + type enumeration { + enum init { + value 1; + description "Init"; } - - // vrrp group down no vrf info for intf - enum no-vrf-info-for-intf { - value 6; + enum replay { + value 2; + description "Replay"; + } + enum done { + value 4; + description "Done"; } + } + default "init"; + } - // vrrp group down BD not allocated - enum bd-not-allocated { - value 7; + // Admin status of system core properties + typedef sysmgr_CoreAdminSt { + type enumeration { + enum enable { + value 0; + description "enable"; } + enum disable { + value 1; + description "disable"; + } + } + default "disable"; + } - // vrrp group down vmac not added - enum vmac-not-added { + // Admin status of system core properties + typedef sysmgr_CoreUriType { + type enumeration { + enum tftp { + value 2; + description "tftp"; + } + enum bootflash { value 8; + description "bootflash"; } - - // vrrp group down invalid vip - enum invalid-vip { - value 9; + enum usb1 { + value 32768; + description "usb1"; } + } + default "bootflash"; + } - // vrrp group down IfId vIp subnet mismatch - enum IfIp-vip-subnet-mismatch { - value 10; + // Firmware mode + typedef sysmgr_FwMode { + type enumeration { + enum recovery { + value 1; + description "Recovery mode"; } - - // vrrp group down internal error - enum internal_error { - value 11; + enum regular { + value 2; + description "Regular"; } } + default "regular"; } - // Configuration state vrrp id - typedef vrrp_Id { - type uint8 { - range "1..255"; + // Firmware type + typedef sysmgr_FwT { + type enumeration { + enum bios { + value 1; + description "BIOS"; + } + enum kickstart { + value 2; + description "Kickstart"; + } + enum system { + value 3; + description "System"; + } } + default "system"; } - // Preempt - typedef vrrp_Preempt { + // Operational data publish mode + typedef sysmgr_OperDataMode { type enumeration { - - // preempt enabled - enum enabled { + enum init { value 1; + description "Init"; } - - // preempt disabled - enum disabled { + enum publish { value 2; + description "Publish"; + } + enum done { + value 4; + description "Done"; } } - default "enabled"; + default "init"; } - // priority values - typedef vrrp_PriVal { - type uint8 { - range "1..254"; + // Operational status of sysmgr config properties + typedef sysmgr_OperState { + type enumeration { + enum unknown { + value 0; + description "unknown"; + } + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 2; + description "disabled"; + } } + default "unknown"; } - // upper threshold - typedef vrrp_UprThrshld { - type uint8 { - range "0..254"; + // Type for fast-relaod stablization timer + // range 10-10000 (in secs) + typedef sysmgr_ReloadTimer { + type uint32 { + range "10..10000"; } - default "0"; } - // bfd session status - typedef vrrp_bfdSessionSt { + // Supervisor state + typedef sysmgr_SupSt { type enumeration { - - // vrrp bfd session is disabled - enum disabled { + enum unknown { value 0; + description "Unknown"; } - - // vrrp bfd session status inactive - enum inactive { + enum active { value 1; + description "Local"; } - - // vrrp bfd session status deleted - enum deleted { + enum hot-stdby { value 2; + description "Hot standby"; } - - // vrrp bfd session status unknown state - enum unknown { + enum cold-stdby { value 3; + description "Cold standby"; } - - // vrrp bfd session status active - enum active { + enum offline { value 4; + description "Offline"; + } + enum normal { + value 5; + description "Normal"; + } + enum non-dis-upg { + value 6; + description "Non disruptive upgrade"; } } - default "disabled"; + default "unknown"; } - // Admin State - typedef vrrpv3_AdminSt { - type boolean; + // Supervisor type + typedef sysmgr_SupT { + type enumeration { + enum local { + value 0; + description "Local"; + } + enum remote { + value 1; + description "Remote"; + } + } + default "local"; } - // Advertisement Interval - typedef vrrpv3_AdvIntvl { + // Trace Mask + typedef sysmgr_TraceMask { + type uint32 { - range "100..40950"; + range "0..4294967295"; } - default "1000"; } - // Virtual Router Name - typedef vrrpv3_Desc { - type string { - length "0..80"; + // DSCP LOP + typedef tcpudp_DscpLop { + type uint16 { + range "0..85"; } + default "85"; } - // Configuration state vrrpv3 id - typedef vrrpv3_Id { - type uint32 { - range "1..255"; + // TCPUDP Synwait Time + typedef tcpudp_SynwaitTime { + type uint16 { + range "5..300"; } + default "30"; } - // Preempt - typedef vrrpv3_Preempt { - type boolean; - default "true"; + // TCPUDP tcp mss + typedef tcpudp_TCPMss { + type uint16 { + range "88..10000"; + } + default "536"; } - // Delay before preempting a lower priority Master - typedef vrrpv3_PreemptDelay { - type uint32 { - range "0..3600"; + // TCPUDP end port + typedef tcpudp_TcpEndPort { + type uint16 { + range "22001..65535"; } - default "0"; + default "58000"; } - // Priority Value - typedef vrrpv3_PriVal { - type uint32 { - range "1..254"; + // TCPUDP start port + typedef tcpudp_TcpStartPort { + type uint16 { + range "15001..58000"; } + default "15001"; } - // Virtual Router Address family type - typedef vrrpv3_VrAf { + // Admin State + typedef telemetry_AdminState { type enumeration { - - // IPv4 address family - enum ipv4 { + enum enabled { value 1; - } - - // IPv6 address family - enum ipv6 { - value 2; + description "enabled"; } } - default "ipv4"; + default "enabled"; } - // amdin state of vsan - typedef vsan_AdminSt { + // transport compression types + typedef telemetry_Compression { type enumeration { - enum active { - value 1; + enum disabled { + value 0; + description "compression disabled"; } - enum suspended { - value 2; + enum gzip { + value 1; + description "gzip compression enabled"; } } - default "active"; + default "disabled"; } - typedef vsan_InteropMode { - type uint16 { - range "1..4"; + // Data Source Type + typedef telemetry_DataSource { + type enumeration { + enum DME { + value 1; + description "DME"; + } + enum NX-API { + value 3; + description "NX-API"; + } + enum YANG { + value 4; + description "YANG"; + } + enum NATIVE { + value 5; + description "NATIVE"; + } + enum DEFAULT { + value 16; + description "DEFAULT"; + } } - default "3"; + default "DEFAULT"; } - // vsan loadbalancing type - typedef vsan_LbType { + // No equivalent type in YANG + typedef telemetry_Encoding { type enumeration { - - // src-dst-id - enum src-dst-id { + enum GPB { value 1; + description "GPB"; } - - // src-dst-ox-id - enum src-dst-ox-id { + enum JSON { value 2; + description "JSON"; + } + enum XML { + value 3; + description "XML"; + } + enum GPB-compact { + value 4; + description "Compact GPB"; + } + enum Form-data { + value 5; + description "Form Data"; } } - default "src-dst-ox-id"; + default "GPB"; + } + + typedef telemetry_IDType { + type string { + length "1..512"; + } } - // oper state of vsan - typedef vsan_OperSt { + // telemetry-stream-protocol + typedef telemetry_Protocol { type enumeration { - enum up { + enum UDP { value 1; + description "UDP"; } - enum down { + enum TCP { value 2; + description "TCP"; + } + enum gRPC { + value 3; + description "gRPC"; + } + enum HTTP { + value 4; + description "HTTP"; } } - default "down"; + default "gRPC"; } - // TODO Pirabhu - Remove Permit and redir directives from the logical model type - // once sanity is fixed. These can be derived implicitly - // Default Value computed from permit - typedef vz_Action { + // Retrieve Depth + typedef telemetry_RetrieveDepth { - // bits- Using string - type string; - default "permit"; + type uint32 { + range "0..4294967295"; + } + default "0"; } - // A shorthand for GroupPolicyClassTag: - // A tag that is used to identify and classify - // a particular group of resources/end-points - // for policy enforcement purposes - typedef vz_GPCTag { - type vz_GroupPolicyClassTag; + typedef telemetry_SnsrPathType { + type string { + length "1..512"; + } } - // A tag that is used to identify and classify - // a particular group of resources/end-points - // for policy enforcement purposes - typedef vz_GroupPolicyClassTag { - type uint32; + typedef telemetry_SubIDType { + type uint64 { + range "1..4095"; + } } - // Type is a Local-MO-Defined-Type - // Default Value computed from fastExtFallover - typedef nw_InstCtrl_Inst_ctrl { + typedef telemetry_VrfName { + type string { + length "1..32"; + } + } - // bits- Using string - type string; - default "fastExtFallover"; + typedef telemetry_filterCondType { + type string { + length "0..512"; + } } - // Type is a Local-MO-Defined-Type - typedef bgp_NhTimeout_DomAf_critNhTimeout { - type uint32; - default "3000"; + typedef telemetry_queryCondType { + type string { + length "0..256"; + } } - // Type is a Local-MO-Defined-Type - typedef bgp_NhTimeout_DomAf_nonCritNhTimeout { + typedef telemetry_sampleIntvlType { + type uint64 { + range "0..604800000"; + } + default "0"; + } + + typedef terminal_Limit { type uint32; - default "10000"; } - // Type is a Local-MO-Defined-Type - typedef syslog_Severity_Level_severity { + typedef terminal_TermParity { type enumeration { - - // emergencies - enum emergencies { + enum none { value 0; + description "No parity"; } - - // alerts - enum alerts { + enum odd { value 1; + description "Odd parity"; } - - // critical - enum critical { + enum even { value 2; + description "Even parity"; } + } + default "none"; + } - // errors - enum errors { - value 3; - } - - // warnings - enum warnings { - value 4; - } - - // notifications - enum notifications { - value 5; - } + typedef terminal_TermSize { + type uint32; + } - // information - enum information { - value 6; - } + typedef terminal_TimeoutT { + type uint32 { + range "0..525600"; + } + } - // debugging - enum debugging { - value 7; - } + // TRE day + typedef timerange_Day { + type uint32 { + range "1..31"; + } + } - // unspecified - enum unspecified { - value 8; - } + // TRE time Format: [00~24]:[00~59]:[00~59] + typedef timerange_HourMinSec { + type string { + pattern "((([01]?\\d|2[0-3]):)?([0-5]?\\d):)?([0-5]?\\d)"; } - default "unspecified"; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_RadiusProvider_keyEnc { - type enumeration { + // TRE month + typedef timerange_Month { + type uint8 { + range "1..12"; + } + } - // Clear Text - enum 0 { - value 0; - } + // Time Range name + typedef timerange_Name { + type string { + length "1..64"; + } + } - // Type-6 Encrypted - enum 6 { - value 6; - } + // TRE sequence number + typedef timerange_SequenceNumber { + type int64 { + range "-1..4294967295"; + } + } - // Encrypted - enum 7 { - value 7; - } - enum inherit-from-global { - value 255; - } + // TRE year + typedef timerange_Year { + type uint32 { + range "2000..2037"; } - default "inherit-from-global"; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_RadiusProvider_timeout { - type uint32; - default "4294967295"; + // TRE period + typedef timerange_period { + type string { + pattern "(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|weekdays|weekend|daily|)(\\s(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|weekdays|weekend|daily|))*"; + } } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_RadiusProvider_retries { - type uint32; - default "4294967295"; + // Represents a TLV Code + // The code comes from the application & hence no validation is performed on it + typedef tlv_Code { + type uint16; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_LdapProvider_keyEnc { + // Specifies the Role of this system + typedef top_NodeRole { type enumeration { - - // Clear Text - enum 0 { + enum unsupported { value 0; } - - // Type-6 Encrypted - enum 6 { - value 6; + enum controller { + value 1; } - - // Encrypted - enum 7 { - value 7; + enum leaf { + value 2; } - enum inherit-from-global { - value 255; + enum spine { + value 3; + } + enum vleaf { + value 4; + } + enum vip { + value 5; + } + enum protection-chain { + value 6; } } - default "inherit-from-global"; + default "unsupported"; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_LdapProvider_timeout { + // Remote Network Identifier + typedef top_RemoteNetworkId { type uint32; - default "30"; + default "0"; } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_LdapProvider_retries { - type uint32; - default "4294967295"; + // Shard redudancy node + typedef topoctrl_ShardChNode { + type address_Ip; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_TacacsPlusProvider_keyEnc { - type enumeration { - - // Clear Text - enum 0 { - value 0; - } + // Order + typedef traceroute_Order { + type uint8; + } - // Type-6 Encrypted - enum 6 { - value 6; - } + // Path flags + typedef traceroute_PathFlags { - // Encrypted - enum 7 { - value 7; - } - enum inherit-from-global { - value 255; - } - } - default "inherit-from-global"; + type string; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_TacacsPlusProvider_timeout { - type uint32; - default "0"; + // Path Group id + typedef traceroute_PathGrpId { + type uint8; } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_TacacsPlusProvider_retries { - type uint32; - default "4294967295"; + // Path id + typedef traceroute_PathId { + type uint8; } - // Type is a Local-MO-Defined-Type - typedef aaa_Realm_DomainAuth_realm { + // Type of the path + typedef traceroute_PathT { type enumeration { - - // Local - enum local { - value 0; - } - - // RADIUS - enum radius { + enum external { value 1; + description "External"; } - - // TACACS+ - enum tacacs { + enum internal { value 2; + description "Internal"; } + } + default "internal"; + } - // LDAP - enum ldap { - value 3; - } + // Address family type + typedef track_Af { + type enumeration { enum none { - value 4; + value 0; + } + enum ipv4 { + value 1; + description "IPv4 address family"; + } + enum ipv6 { + value 2; + description "IPv6 address family"; } } + default "none"; } - // Type is a Local-MO-Defined-Type - typedef aaa_Date_User_expiration { - type string; - default "0"; - } - - // Type is a Local-MO-Defined-Type - typedef l1_FECMode_PhysIf_operFECMode { + // Interface object protocol state + typedef track_IntfProtocolType { type enumeration { - - // auto - enum auto { - value 4; + enum none { + value 0; } - - // RS-Fec - enum rs-fec { + enum ipv4-routing { + value 1; + } + enum ipv6-routing { value 2; } + enum line-protocol { + value 3; + } + } + default "none"; + } - // FC-Fec - enum fc-fec { + // Type of List objects threshold/boolean + typedef track_ListObj { + type enumeration { + enum none { + value 0; + } + enum and { value 1; + description "Boolean 'and' function"; } - - // Fec-off - enum fec-off { + enum or { + value 2; + description "Boolean 'or' function"; + } + enum percentage { value 3; + description "Threshold percentage"; } - - // RS-IEEE - enum rs-ieee { - value 5; + enum weight { + value 4; + description "Threshold weight"; } + } + default "none"; + } - // RS-CONS16 - enum rs-cons16 { - value 6; + // Probe type for Sla + typedef track_ProbeState { + type enumeration { + enum reachability { + value 0; + description "probe state is reachable or over threshold"; + } + enum state { + value 1; + description "probe state is reachable and within threshold"; } + } + default "state"; + } - // N/A - enum not-available { - value 20; + // Route Owner type + // Process owning the route + typedef track_RouteOwner { + type enumeration { + enum none { + value 0; + } + enum hmm { + value 1; + description "Host Mobility Manager"; } } + default "none"; } - // Type is a Local-MO-Defined-Type - typedef l1_Layer_AggrIf_layer { + typedef track_RouteState { type enumeration { + enum reachability { + value 0; + } + } + default "reachability"; + } - // switched - enum Layer2 { + // This type represents track Object ID. + typedef track_TrackId { + type uint16 { + range "1..512"; + } + } + + // Administrative state of tunnel + typedef tunnel_AdminSt { + type enumeration { + enum up { value 1; + description "up"; + } + enum down { + value 2; + description "down"; } + } + default "up"; + } - // routed - enum Layer3 { + // Configured MTU + typedef tunnel_ConfMtu { + type uint32 { + range "1..9000"; + } + default "9000"; + } + + // Tunnel encapsulation type + typedef tunnel_EncapT { + type enumeration { + enum unknown { + value 0; + description "unknown"; + } + enum vxlan { + value 1; + description "VXLAN encap"; + } + enum ivxlan { value 2; + description "iVXLAN encap"; } - enum pltfmDfltLayer { + enum nvgre { value 3; + description "NV-GRE encap"; } } - default "pltfmDfltLayer"; + default "ivxlan"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_proxyArp { - type enumeration { + // Tunnel endpoint identifier + typedef tunnel_EpId { + type address_Ip; + } - // Enabled - enum enabled { + // Tunnel endpoint type + typedef tunnel_EpT { + + type string; + default "physical"; + } + + // Keep alive period + typedef tunnel_KeepAlvIntvl { + type uint32 { + range "0..32767"; + } + default "10"; + } + + // Keep alive retry count + typedef tunnel_KeepAlvRetries { + type uint32 { + range "1..255"; + } + default "3"; + } + + // Tunnel layer type (L2 or L3) + typedef tunnel_LayerT { + type enumeration { + enum l2 { value 1; + description "l2 tunnel"; } - - // Disabled - enum disabled { + enum l3 { value 2; + description "l3 tunnel"; } } + default "l2"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_localProxyArp { + // Operational state of tunnel + typedef tunnel_OperSt { type enumeration { - - // Enabled - enum enabled { + enum up { value 1; + description "up"; } - - // Disabled - enum disabled { + enum down { value 2; + description "down"; } } + default "down"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_mRouting { + // Tunnel types + typedef tunnel_TunnelQual { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum ivxlan { value 1; + description "ivxlan"; } - - // Disabled - enum disabled { + enum vxlan { value 2; + description "vxlan"; } } + default "ivxlan"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_icmpRedirect { + // Snmp trap state + typedef tunnelif_SnmpTrapSt { type enumeration { - - // Enabled enum enabled { value 1; } - - // Disabled enum disabled { value 2; } } + default "enabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_directBcast { - type enumeration { + // Tunnel Bandwidth in kilobits per second. + typedef tunnelif_TunnelBW { + type uint32 { + range "1..10000000"; + } + default "9"; + } - // Enabled - enum enabled { + // Tunnel mode types + typedef tunnelif_TunnelMode { + type enumeration { + enum gre/ip { value 1; + description "GRE/IP"; } - - // Disabled - enum disabled { - value 2; + enum gre/ipv6 { + value 6; + description "GRE/IPV6"; + } + enum ipip/ip { + value 7; + description "IPIP/IP"; + } + enum ipip/ipv6 { + value 8; + description "IPIP/IPV6"; + } + enum ipip/dcapany/ip { + value 9; + description "IPIP/Decapsulate Any/IP"; + } + enum ipip/dcapany/ipv6 { + value 10; + description "IPIP/Decapsulate Any/IPV6"; + } + enum ipv6ip { + value 11; + description "IPV6IP"; + } + enum ipv6ip/dcapany { + value 12; + description "IPV6IP/Decapsulate Any"; + } + enum ipv6ipv6 { + value 13; + description "IPV6/IPV6"; + } + enum ipv6ipv6/dcapany { + value 14; + description "IPV6IPV6/Decapsulate Any"; } } + default "gre/ip"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_ipUnreach { - type enumeration { + // Configured MTU + typedef tunnelif_TunnelMtu { + type uint32 { + range "64..9196"; + } + default "1476"; + } - // Enabled - enum enabled { + // Operational state of tunnel + typedef tunnelif_TunnelOperSt { + type enumeration { + enum up { value 1; + description "up"; } - - // Disabled - enum disabled { + enum down { value 2; + description "down"; } } + default "down"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_portUnreach { + // Reasons for line protcol state being down. + typedef tunnelif_TunnelOperStQual { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum none { value 1; + description "No reason"; } - - // Disabled - enum disabled { + enum initing { value 2; + description "Initializing hardware"; + } + enum incomp-conf { + value 3; + description "Tunnel configuration is incomplete"; + } + enum dup-conf { + value 4; + description "Duplicate tunnel config"; + } + enum no-mode { + value 5; + description "tunnel mode is not configured"; + } + enum admin-down { + description "Admin state is down"; + } + enum src-down { + value 7; + description "Tunnel source down"; + } + enum src-unres { + value 8; + description "Source IP could not be resolved"; + } + enum no-dest { + value 9; + description "Destination is not configured"; + } + enum desip-unres { + value 10; + description "Destination IP address unresolvable"; + } + enum dest-unreach { + description "Destination unreachable"; + } + enum vrf-mismatch { + value 12; + description "Source interface and tunnel VRF mismatch"; + } + enum vrf-fwdref { + value 13; + description "Tunnel transport VRF is forward referencing"; + } + enum vrf-down { + value 14; + description "VRF is down"; + } + enum mtu-error { + value 15; + description "MTU programming failed"; + } + enum hwprog-fail { + description "Hardware programming failed"; + } + enum no-src { + value 17; + description "Source is not configured"; } } + default "unknown"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoDisc { + // Tunnel Interface Options + typedef tunnelif_TunnelOption { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum del_on_fail { value 1; + description "delete on failure"; } - - // Disabled - enum disabled { + enum usr_cfg_mtu { value 2; + description "user configured mtu"; } } + default "unknown"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoDiscAdd { - type enumeration { + // Configured age timer for Tunnel PMTU + typedef tunnelif_TunnelPMTUAge { + type uint32 { + range "0..30"; + } + default "10"; + } - // Enabled + // Tunnel Path MTU Discovery + typedef tunnelif_TunnelPMTUD { + type enumeration { enum enabled { value 1; + description "enabled"; } - - // Disabled enum disabled { value 2; + description "disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_nullBcast { + // Tunnel Source Direct + typedef tunnelif_TunnelSrcDirect { type enumeration { - - // Enabled enum enabled { value 1; + description "enabled"; } - - // Disabled enum disabled { value 2; + description "disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoPuntBcast { - type enumeration { + // Tunnel TTL (from 0 to 255) + typedef tunnelif_TunnelTTL { + type uint32 { + range "0..255"; + } + default "0"; + } + + // Configured Tunnel transport VRF + typedef tunnelif_TunnelTransVRF { + type l3_VrfName; + default "default"; + } + + // Configured min-MTU for Tunnel PMTU + typedef tunnelif_TunnelminPMTU { + type uint32 { + range "64..9196"; + } + default "64"; + } - // Enabled + // Administrative state + typedef udld_AdminSt { + type enumeration { enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_staticDisc { - type enumeration { + // Msg Interval + typedef udld_MsgIntvl { + type uint8 { + range "7..90"; + } + default "15"; + } - // Enabled + // Operational state + typedef udld_OperSt { + type enumeration { enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef eqpt_Arch_CPU_arch { + typedef udld_PortEnable { type enumeration { - - // x86_32 - enum x86_32 { + enum port-enabled { + value 0; + description "Port Enabled"; + } + enum port-fiber-disabled { value 1; + description "Port Fiber Disabled"; } - - // x86_64 - enum x86_64 { + enum port-default { value 2; + description "Port Default"; } - - // any - enum any { - value 0; + enum port-default-disable { + value 3; + description "Port Default Disable"; } } + default "port-default"; } - // Type is a Local-MO-Defined-Type - // Default Value computed from redirect,port-unreachable - typedef icmp_IfControl_If_ctrl { + // Label Table Client Flags + typedef ulib_ClientFlag { - // bits- Using string type string; - default "redirect,port-unreachable"; } - // Type is a Local-MO-Defined-Type - typedef nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime { - type uint32; - default "0"; + typedef ulib_ClientName { + type string; } - // Type is a Local-MO-Defined-Type - typedef nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime { - type uint32; - default "0"; + // Max Dynamic label + typedef ulib_DynLblMax { + type uint32 { + range "16..471804"; + } + default "471804"; } - grouping aaa_IDomainRef-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Min Dynamic label + typedef ulib_DynLblMin { + type uint32 { + range "16..471804"; } + default "16"; + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + typedef ulib_EphemeralAddressFamily { + type string; + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + typedef ulib_FecState { + type string; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } - } + typedef ulib_FecType { + type string; + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + typedef ulib_InterfaceStr { + type string; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Label Count Value + typedef ulib_LabelCnt { + type uint32 { + range "0..471804"; } + default "0"; } - grouping l2cap_Prov-group { - - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l2cap_Subj; + // Label Range Value + typedef ulib_LabelVal { + type uint32 { + range "0..471804"; } + } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Counter; - } + typedef ulib_OutLblStack { + type string; + } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { - config "false"; - description "TBD"; + typedef ulib_TableId { + type uint32; + } - // Type is an MO-Defined-Type - type cap_Counter; - } + // 32 bit Counter + typedef urib_Counter32 { + type uint32; + } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_StorageHint; - } - - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + typedef urib_NextHopEncapType { + type enumeration { + enum none { + value 0; + description "Not set"; + } + enum vxlan { + value 1; + description "Vxlan encapsulation"; + } + enum invalid { + value 2; + description "Invalid"; + } } } - grouping actrlcap_Rule-group { - - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // The format of this string depends on the time left. + // If time left is: + // - Less than 1 sec: format is 0.UUUUUU + // - >= 1 sec and < 24 hrs: HH:MM:SS + // - >= 24hrs and < 1 week: DD'd'HH'h' e.g.: 12d03h + // - >= 1 week and < 1 year: WW'w'DD'd' + // - >= 1 year: YY'y'WW'w' + typedef urib_TimeStr { + type string; + } - // Type is an MO-Defined-Type - type actrlcap_Subj; + typedef urib_YesNo { + type enumeration { + enum No { + value 0; + description "No"; + } + enum Yes { + value 1; + description "Yes"; + } } + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; + // Signing level allowed on the system + typedef virtualService_SigningLevel { + type enumeration { + enum none { + value 1; + description "Most restrictive, don't allow package installation"; + } + enum cisco { + value 2; + description "Allow only Cisco signed packages"; + } + enum unsigned { + value 3; + description "Least restrictive, allow unsigned and all signing methods"; + } } + default "cisco"; + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // User Password Type + typedef vmtracker_PasswordType { + type enumeration { + enum 0 { + value 0; + description "UNENCRYPTED password"; + } + enum 5 { + value 5; + description "ENCRYPTED password"; + } } + default "0"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Application Sap Id + typedef vpc_AppId { + type uint32; + } - // Type is an MO-Defined-Type - type cap_RuleT; + // Track Object + typedef vpc_AutoRecoveryIntvl { + type uint32 { + range "60..3600"; } + default "240"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Batched vpc inventory + typedef vpc_BatchedVpcInv { - // Type is an MO-Defined-Type - type naming_Descr; - } + type string; } - grouping l1cap_Rule-group { - - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // vPC Compatibility Reason Code + typedef vpc_CompatQual { + type uint32; + } - // Type is an MO-Defined-Type - type l1cap_Subj; + // vPC Compatability Status + typedef vpc_CompatSt { + type enumeration { + enum pass { + value 0; + description "success"; + } + enum fail { + value 1; + description "failed"; + } + enum notDone { + value 2; + description "Not Applicable"; + } } + default "notDone"; + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; + // Delay Peer Link Bringup + typedef vpc_DelayPeerLinkBringup { + type uint16 { + range "0..7200"; } + default "0"; + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // Delay Restore: Orphan Port + typedef vpc_DelayRestoreOrphanPort { + type uint16 { + range "0..300"; } + default "0"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + // Delay Restore SVI + typedef vpc_DelayRestoreSVI { + type uint16 { + range "1..3600"; } + default "10"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Delay Restore vPC + typedef vpc_DelayRestoreVPC { + type uint16 { + range "1..3600"; } + default "30"; } - grouping l2cap_Rule-group { - - // Type is an MO-Defined-Type - leaf faultState { - config "false"; - description "Fault State"; - - // Type is an MO-Defined-Type - type cap_RaiseFaultState; + // VPC domain ID + typedef vpc_DomId { + type uint16 { + range "1..1000"; } + } - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l2cap_Subj; - } + // Domain operational state + typedef vpc_DomOperSt { - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; + type string; + default "not-applicable"; + } - // Type is an MO-Defined-Type - type cap_Constraint; + // DSCP value + typedef vpc_Dscp { + type uint16 { + range "0..63"; } + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // Dual Active Status + typedef vpc_DualActiveSt { + type enumeration { + enum false { + value 0; + description "0"; + } + enum true { + value 1; + description "1"; + } } + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; - } + typedef vpc_ExcludeSVI { + type l2_VlanBitmap; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + typedef vpc_ExcludeVLAN { + type l2_VlanBitmap; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Flush Timeout in seconds + typedef vpc_FlushTout { + type uint32 { + range "3..10"; } + default "3"; } - grouping l3cap_Rule-group { - - // Type is an MO-Defined-Type - leaf faultState { - config "false"; - description "Fault State"; - - // Type is an MO-Defined-Type - type cap_RaiseFaultState; + // vPC number + typedef vpc_Id { + type uint16 { + range "1..16384"; } + } - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l3cap_Subj; + // Keepalive Interval in milli-seconds + typedef vpc_KeepaliveInterval { + type uint32 { + range "400..10000"; } + default "1000"; + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; - } + // Keepalive operational state + typedef vpc_KeepaliveOperSt { - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; + type string; + default "0"; + } - // Type is an MO-Defined-Type - type cap_Scope; + // Keepalive Timeout in seconds + typedef vpc_KeepaliveTout { + type uint32 { + range "3..20"; } + default "5"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + // L3 peer-router syslog interval + typedef vpc_L3PeerRouterSyslogInterval { + type uint16 { + range "1..3600"; } + default "3600"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // vPC operational Status + typedef vpc_OperSt { + type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum down { + value 1; + description "Down"; + } + enum up { + value 2; + description "Up"; + } + enum noCfg { + value 3; + description "Not configured"; + } } + default "unknown"; } - grouping syslog_RemoteDest-group { - - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; + // Param Length + typedef vpc_ParamLen { + type uint32; + } - // Type is an MO-Defined-Type - type syslog_Severity; + // Param Type + typedef vpc_ParamType { + type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum type-1 { + value 1; + description "Type 1"; + } + enum type-2 { + value 2; + description "Type 2"; + } } + default "unknown"; + } - // Type is an MO-Defined-Type - leaf port { - description "Port"; + // Param Value + typedef vpc_ParamVal { + type mtx_array_uint8; + } - // Type is an MO-Defined-Type - type syslog_SyslogPort; + // vPC peer Status + typedef vpc_PeerSt { + type enumeration { + enum noCfg { + value 0; + description "Not configured"; + } + enum down { + value 1; + description "Down"; + } + enum up { + value 2; + description "Up"; + } } + } - // Type is an MO-Defined-Type - leaf transport { - description "Transport"; - - // Type is an MO-Defined-Type - type mon_Transport; - } - leaf trustpointClientIdentity { - type string { - length "0..64"; + // vPC peer status reason code + typedef vpc_PeerStQual { + type enumeration { + enum success { + value 0; + description "Success"; + } + enum uplinks-down { + value 1; + description "Uplinks down"; + } + enum route-down { + value 2; + description "Route down"; + } + enum peer-unrch { + value 3; + description "Peer unreachable"; + } + enum compat-fail { + value 4; + description "Compatibility Failed"; + } + enum election-err { + value 5; + description "Election error"; + } + enum oob-not-up { + value 6; + description "Keepalive not Operational"; } } + } - // Type is an MO-Defined-Type - leaf forwardingFacility { - description "Forward Facility"; + // Peer version + typedef vpc_PeerVersion { + type uint32; + } - // Type is an MO-Defined-Type - type syslog_Facility; + // Precedence type + typedef vpc_PrecType { + type enumeration { + enum network { + value 0; + description "Network"; + } + enum internet { + value 1; + description "Internet"; + } + enum critical { + value 2; + description "Critical"; + } + enum flash-override { + value 3; + description "Flash override"; + } + enum flash { + value 4; + description "Flash"; + } + enum immediate { + value 5; + description "Immediate"; + } + enum priority { + value 6; + description "Priority"; + } + enum routine { + value 7; + description "Routine"; + } } + default "routine"; + } - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; - } - leaf vrfId { - type uint32; + // Precedence value + typedef vpc_PrecValue { + type uint8 { + range "0..7"; } + default "6"; + } - // Type is an MO-Defined-Type - leaf ip { - description "ip address"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad; + // Role + typedef vpc_Role { + type enumeration { + enum election-not-done { + value 0; + description "Election-not-done"; + } + enum master { + value 1; + description "Master"; + } + enum slave { + value 2; + description "Slave"; + } } + default "election-not-done"; + } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type syslog_OperState; + // Role Priority + typedef vpc_RolePrio { + type uint16 { + range "1..65535"; } + default "32667"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Summarized Role + typedef vpc_SummRole { + type enumeration { + enum election-not-done { + value 0; + description "None Established"; + } + enum cfg-master-oper-master { + value 1; + description "Primary"; + } + enum cfg-master-oper-slave { + value 2; + description "Primary, Operational Secondary"; + } + enum cfg-slave-oper-master { + value 3; + description "Secondary, Operational Primary"; + } + enum cfg-slave-oper-slave { + value 4; + description "Secondary"; } } + default "election-not-done"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // System Priority + typedef vpc_SysPrio { + type uint16 { + range "1..65535"; } + default "32667"; + } - // Hostname or IP for export destination - // Inherited From file:ARemoteHost - // Type is an MO-Defined-Type - leaf host { - description "Host"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad { - length "1..255"; - } - } - leaf epgDn { - config "false"; + // Time + typedef vpc_Time { + type union { type string; + type uint64; } + } - // The vrf that remote host belongs to - // Inherited From file:ARemoteHost - // Type is an MO-Defined-Type - leaf vrfName { - description "Vrf Name"; - - // Type is an MO-Defined-Type - type l3_VrfName; - } - - // Syslog Dest state - container destst-items { - list DestState-list { - config "false"; - key "name"; - - // Added containment: Prefix=destst - // Acquired From Package syslog - uses syslog_DestState-group; - } + // ToS byte + typedef vpc_TosByte { + type uint8 { + range "0..255"; } + default "0"; } - grouping syslog_DestState-group { - - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type syslog_OperState; - } - leaf vrfId { - config "false"; - type uint32; + // ToS config type + typedef vpc_TosCfgType { + type enumeration { + enum noCfg { + value 0; + description "No configuration"; + } + enum tos-byte { + value 1; + description "ToS byte"; + } + enum tos-value { + value 2; + description "ToS value"; + } + enum tos-type { + value 3; + description "ToS type"; + } + enum precedence-type { + value 4; + description "Precedence Type"; + } + enum precedence-value { + value 5; + description "Precedence Value"; + } } + default "noCfg"; + } - // Type is an MO-Defined-Type - leaf ip { - config "false"; - description "ip address"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad; - } - leaf totalBufferedMsgs { - config "false"; - type uint32; + // ToS type + typedef vpc_TosType { + type enumeration { + enum min-delay { + value 0; + description "Min delay"; + } + enum max-throughput { + value 1; + description "Max throughput"; + } + enum max-reliability { + value 2; + description "Max Reliability"; + } + enum min-monetary-cost { + value 3; + description "Min Monetary Cost"; + } + enum normal { + value 4; + description "Normal"; + } } - leaf totalDroppedMsgs { - config "false"; - type uint32; + default "normal"; + } + + // ToS value + typedef vpc_TosValue { + type uint8 { + range "0..15"; } + default "0"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Track Object + typedef vpc_Track { + type uint16 { + range "0..500"; + } + default "0"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // admin state + typedef vrrp_AdminSt { + type enumeration { + enum disabled { + value 1; + description "Vrrp id shut"; + } + enum enabled { + value 2; + description "Vrrp id no shut"; } } + default "disabled"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // advertise interval + typedef vrrp_AdvIntvl { + type uint8 { + range "1..255"; } + default "1"; + } - // Syslog Log Message - container msg-items { - list LogMsg-list { - config "false"; - key "index"; + // authentication text type + typedef vrrp_AuthTextType { + type string { + length "0..8"; + } + } - // Added containment: Prefix=msg - // Acquired From Package syslog - uses syslog_LogMsg-group; + // authentication type + typedef vrrp_AuthType { + type enumeration { + enum none { + value 1; + description "no authentication"; + } + enum simple { + value 2; + description "plain text"; } } + default "none"; } - grouping syslog_LogMsg-group { - leaf index { - config "false"; - type uint32; - } - leaf message { - config "false"; - type string; - } - leaf facility { - config "false"; - type string; - } - leaf severity { - config "false"; - type uint16; + // group state + typedef vrrp_GroupSt { + type enumeration { + enum init { + value 0; + description "Vrrp Group state Init"; + } + enum backup { + value 1; + description "vrrp group state backup"; + } + enum master { + value 2; + description "vrrp group state master"; + } } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // group state qualifier + typedef vrrp_GroupStQual { + type enumeration { + enum up { + value 0; + description "Vrrp group state up"; + } + enum down { + value 1; + description "Vrrp group state down"; + } + enum no-primary-vip { + value 2; + description "vrrp group state down no ip primary vip"; + } + enum admin-down { + value 3; + description "vrrp group state down admin down"; + } + enum interface-down { + value 4; + description "vrrp group state down inteface down"; + } + enum no-intf-ip-cfgd { + value 5; + description "vrrp group state down no intf ip cfgd"; + } + enum no-vrf-info-for-intf { + value 6; + description "vrrp group down no vrf info for intf"; + } + enum bd-not-allocated { + value 7; + description "vrrp group down BD not allocated"; + } + enum vmac-not-added { + value 8; + description "vrrp group down vmac not added"; + } + enum invalid-vip { + value 9; + description "vrrp group down invalid vip"; + } + enum IfIp-vip-subnet-mismatch { + value 10; + description "vrrp group down IfId vIp subnet mismatch"; + } + enum internal_error { + value 11; + description "vrrp group down internal error"; } } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Configuration state vrrp id + typedef vrrp_Id { + type uint8 { + range "1..255"; } } - grouping syslog_File-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; + // Preempt + typedef vrrp_Preempt { + type enumeration { + enum enabled { + value 1; + description "preempt enabled"; + } + enum disabled { + value 2; + description "preempt disabled"; + } } + default "enabled"; + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; - - // Type is an MO-Defined-Type - type syslog_Severity; + // priority values + typedef vrrp_PriVal { + type uint8 { + range "1..254"; } + } - // Type is an MO-Defined-Type - leaf size { - description "Size"; - - // Type is an MO-Defined-Type - type syslog_FileSize; + // upper threshold + typedef vrrp_UprThrshld { + type uint8 { + range "0..254"; } + default "0"; + } - // Inherited From pol:Obj - // Modified by Override: syslog:File->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // bfd session status + typedef vrrp_bfdSessionSt { + type enumeration { + enum disabled { + value 0; + description "vrrp bfd session is disabled"; + } + enum inactive { + value 1; + description "vrrp bfd session status inactive"; + } + enum deleted { + value 2; + description "vrrp bfd session status deleted"; + } + enum unknown { + value 3; + description "vrrp bfd session status unknown state"; + } + enum active { + value 4; + description "vrrp bfd session status active"; } } + default "disabled"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Admin State + typedef vrrpv3_AdminSt { + type enumeration { + enum disabled { + value 1; + description "Virtual Router Administratively Disabled"; + } + enum enabled { + value 0; + description "Virtual Router Administratively Enabled"; + } } + default "enabled"; } - grouping syslog_Console-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; + // Advertisement Interval + typedef vrrpv3_AdvIntvl { + type uint32 { + range "100..40950"; } + default "1000"; + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; - - // Type is an MO-Defined-Type - type syslog_Severity; + // Virtual Router Name + typedef vrrpv3_Desc { + type string { + length "0..80"; } } - grouping dhcp_OptionDef-group { - - // Inherited From pol:Obj - // Modified by Override: dhcp:AOption->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Configuration state vrrpv3 id + typedef vrrpv3_Id { + type uint32 { + range "1..255"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Preempt + typedef vrrpv3_Preempt { + type enumeration { + enum enabled { + value 1; + description "Preempt Enabled"; + } + enum disabled { + value 0; + description "Preempt Disabled"; } } + default "enabled"; + } - // DHCP OPTION ID - // Inherited From dhcp:AOption - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type dhcp_OptionId; + // Delay before preempting a lower priority Master + typedef vrrpv3_PreemptDelay { + type uint32 { + range "0..3600"; } + default "0"; + } - // DHCP OPTION ID - // Inherited From dhcp:AOption - // Type is an MO-Defined-Type - leaf data { - config "false"; - description "Model Regex"; - - // Type is an MO-Defined-Type - type naming_Regex; + // Priority Value + typedef vrrpv3_PriVal { + type uint32 { + range "1..254"; } + } - // Discovered DHCP client node - container bd-items { - list DiscNode-list { - config "false"; - key "encap mac ciAddr"; - - // Added containment: Prefix=bd - // Acquired From Package dhcp - uses dhcp_DiscNode-group; + // Generic state type enabled/disabled + typedef vrrpv3_State { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 0; + description "Disabled"; } } } - grouping dhcp_DiscNode-group { - leaf mac { - config "false"; - type address_Mac; - } - leaf ciAddr { - config "false"; - type address_Ip; - } - leaf ctxEncap { - config "false"; - type string; - } - leaf fabEncap { - config "false"; - type string; - } - leaf encap { - config "false"; - type string; + // Virtual Router Address family type + typedef vrrpv3_VrAf { + type enumeration { + enum ipv4 { + value 1; + description "IPv4 address family"; + } + enum ipv6 { + value 2; + description "IPv6 address family"; + } } + default "ipv4"; } - grouping fv_DomDef-group { - - // Type is an MO-Defined-Type - leaf domPKey { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type fv_PrimKey; + typedef vshd_ModeType { + type enumeration { + enum default { + value 0; + description "default"; + } + enum strict { + value 1; + description "strict"; + } + enum loose { + value 2; + description "loose"; + } } + default "default"; + } - // Type is an MO-Defined-Type - leaf instrImedcy { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type fv_InstrImedcy; + // Configuration state Preempt + typedef vtp_Mode { + type enumeration { + enum client { + value 1; + description "VTP Mode Client"; + } + enum server { + value 2; + description "VTP Mode Server"; + } + enum transparent { + value 3; + description "VTP Mode Transparent"; + } + enum off { + value 4; + description "VTP Mode Off"; + } } + default "transparent"; + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name; - } + // A shorthand for GroupPolicyClassTag: + // A tag that is used to identify and classify + // a particular group of resources/end-points + // for policy enforcement purposes + typedef vz_GPCTag { + type vz_GroupPolicyClassTag; + } - // Rel-def from domDefNs - container rsdomDefNs-items { + // A tag that is used to identify and classify + // a particular group of resources/end-points + // for policy enforcement purposes + typedef vz_GroupPolicyClassTag { + type uint32; + } - // Added containment as a singleton: Prefix=rsdomDefNs - // Acquired From Package fv - uses fv_RsDomDefNs_source-group; + typedef wedge_BmcIPEnabled { + type enumeration { + enum no { + value 0; + } + enum yes { + value 1; + } } + default "no"; + } - // Rel-def from domDefNsLocal - container rsdomDefNsLocal-items { - - // Added containment as a singleton: Prefix=rsdomDefNsLocal - // Acquired From Package fv - uses fv_RsDomDefNsLocal_source-group; + // Logging level type + typedef xbar_LoggingLevel { + type uint16 { + range "0..7"; } + default "5"; + } - // Rel-def target from toDomDef - // Inherited From fv:DomDef - container rtfvToDomDef-items { - - // Abstract containment of rtfvToDomDef derived from fv:DomDef - list RtFvToDomDef-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvToDomDef - // Acquired From Package fv - uses fv_RtFvToDomDef_target-group; + // Logging Level + typedef xbar_LoggingType { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notifications { + value 5; + description "Notifications"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } + default "Notifications"; } - grouping fv_DEp-group { + // Type is a Local-MO-Defined-Type + typedef nw_InstCtrl_Inst_ctrl { - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type string; + default "fastExtFallover"; + } - // Type is an MO-Defined-Type - type naming_Name; - } + // Type is a Local-MO-Defined-Type + typedef bgp_NhTimeout_DomAf_critNhTimeout { + type uint32; + default "3000"; + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef bgp_NhTimeout_DomAf_nonCritNhTimeout { + type uint32; + default "10000"; + } - // Type is an MO-Defined-Type - type naming_Id; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf encap { - config "false"; - type string; - } - leaf uuid { - config "false"; - type string; + // Type is a Local-MO-Defined-Type + typedef syslog_Severity_Level_severity { + type enumeration { + enum emergencies { + value 0; + description "emergencies"; + } + enum alerts { + value 1; + description "alerts"; + } + enum critical { + value 2; + description "critical"; + } + enum errors { + value 3; + description "errors"; + } + enum warnings { + value 4; + description "warnings"; + } + enum notifications { + value 5; + description "notifications"; + } + enum information { + value 6; + description "information"; + } + enum debugging { + value 7; + description "debugging"; + } + enum unspecified { + value 8; + description "unspecified"; + } } + default "unspecified"; } - grouping opflex_IDEp-group { - leaf eppdn { - config "false"; - type string; - } - leaf compVmDn { - config "false"; - type string; - } - leaf compHvDn { - config "false"; - type string; - } - leaf epgID { - config "false"; - type string; - } - leaf epHostAddr { - config "false"; - type string; - } - leaf hypervisorName { - config "false"; - type string; - } - leaf portId { - config "false"; - type uint32; - } - leaf containerName { - config "false"; - type string; + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_RadiusProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // ep transition status - // Type is an MO-Defined-Type - leaf transitionStatus { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_RadiusProvider_timeout { + type uint32; + default "5"; + } - // Type is an MO-Defined-Type - type opflex_EpTransitionStatus; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_RadiusProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_LdapProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // epp push policy - // Type is an MO-Defined-Type - leaf eppDownloadHint { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_LdapProvider_timeout { + type uint32; + default "0"; + } - // Type is an MO-Defined-Type - type opflex_EppDownloadHint; - } - leaf handle { - config "false"; - type uint64; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_LdapProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_TacacsPlusProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // instType - // Type is an MO-Defined-Type - leaf instType { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_TacacsPlusProvider_timeout { + type uint32; + default "0"; + } - // Type is an MO-Defined-Type - type comp_NicInstType; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_TacacsPlusProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_Realm_DomainAuth_realm { + type enumeration { + enum local { + value 0; + description "Local"; + } + enum radius { + value 1; + description "RADIUS"; + } + enum tacacs { + value 2; + description "TACACS+"; + } + enum ldap { + value 3; + description "LDAP"; + } + enum none { + value 4; + } } - leaf pcIfId { - config "false"; - type uint32; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_Date_User_expiration { + type union { + type string; + type uint64; } + default "0"; + } - // type of the device - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef l1_FECMode_PhysIf_operFECMode { + type enumeration { + enum auto { + value 4; + description "auto"; + } + enum rs-fec { + value 2; + description "RS-Fec"; + } + enum fc-fec { + value 1; + description "FC-Fec"; + } + enum fec-off { + value 3; + description "Fec-off"; + } + enum rs-ieee { + value 5; + description "RS-IEEE"; + } + enum rs-cons16 { + value 6; + description "RS-CONS16"; + } + enum kp-fec { + value 7; + description "FECMode: KP-Fec CL119"; + } + enum not-available { + value 20; + description "N/A"; + } + } + } - // Type is an MO-Defined-Type - type comp_NicState; + // Type is a Local-MO-Defined-Type + typedef l1_Layer_AggrIf_layer { + type enumeration { + enum Layer2 { + value 1; + description "switched"; + } + enum Layer3 { + value 2; + description "routed"; + } + enum pltfmDfltLayer { + value 3; + } } + default "pltfmDfltLayer"; + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_proxyArp { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Type is an MO-Defined-Type - type naming_Name; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_localProxyArp { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_mRouting { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Type is an MO-Defined-Type - type naming_Id; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_icmpRedirect { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf mac { - config "false"; - type address_Mac; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_directBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf encap { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_ipUnreach { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf uuid { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_portUnreach { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // IDEp stats is the object exchanged between opflex agent - // and opflex controller for the end point stats - container idepcntr-items { - list IDEpCntr-list { - config "false"; - key "mac encap"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoDisc { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Added containment: Prefix=idepcntr - // Acquired From Package opflex - uses opflex_IDEpCntr-group; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoDiscAdd { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; } } - container vdep-items { - list VDEp-list { - config "false"; - key "mac encap brIfId"; + } - // Added containment: Prefix=vdep - // Acquired From Package fv - uses fv_VDEp-group; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_nullBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; } } } - grouping opflex_IDEpCntr-group { - leaf mac { - config "false"; - type address_Mac; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoPuntBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf encap { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_staticDisc { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef pktmgr_RateLimitPps_Inst_rateLimitPps { + type int32; + default "-1"; + } - // Type is an MO-Defined-Type - type opflex_Direction; + // Type is a Local-MO-Defined-Type + typedef pktmgr_RateLimitPps_If_rateLimitPps { + type int32; + default "-1"; + } + + // Type is a Local-MO-Defined-Type + typedef eqpt_Arch_CPU_arch { + type enumeration { + enum x86_32 { + value 1; + description "x86_32"; + } + enum x86_64 { + value 2; + description "x86_64"; + } + enum any { + value 0; + description "any"; + } } + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Type is a Local-MO-Defined-Type + typedef icmp_IfControl_If_ctrl { - // Type is an MO-Defined-Type - type naming_Name; - } + type string; + default "redirect,port-unreachable"; + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef mcast_GrpTimeout_GTimers_grpTimeout { + type uint16; + default "0"; + } - // Type is an MO-Defined-Type - type naming_Id; - } + // Type is a Local-MO-Defined-Type + typedef nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime { + type uint32; + default "3"; } - grouping fv_VDEp-group { - leaf epgID { + // Type is a Local-MO-Defined-Type + typedef nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime { + type uint32; + default "3"; + } + + grouping l2cap_Prov-group { + description "L2 Capability Provider"; + + // Subject consuming the capability + leaf subj { config "false"; - type string; + + type l2cap_Subj; + description "Subject"; } - // Physical Interface ID on which this EP was attached - // Type is an MO-Defined-Type - leaf brIfId { + // Every Consumer has a Subject. + // Subject represents the entity which consumes the capability. + // Namespaces which have concrete consumers, define the Subject property + // and its types + // Max capability available + leaf total { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type nw_IfId; + type cap_Counter; + description "TBD"; } - // instType - // Type is an MO-Defined-Type - leaf instType { + // Remaining capability available + leaf remaining { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type comp_NicInstType; + type cap_Counter; + description "TBD"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + // utilization indicator in percentages of consiumption + leaf utilization { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type cap_StorageHint; + description "TBD"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { + // Type of the Rule consumed by this consumer. + leaf type { config "false"; - description "Id"; - // Type is an MO-Defined-Type - type naming_Id; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf encap { - config "false"; - type string; - } - leaf uuid { - config "false"; - type string; + type cap_RuleT; + description "TBD"; } + } - // Rel-def from vNode - container rsvNode-items { + grouping syslog_RemoteDest-group { + description "Syslog Remote Destination"; - // Abstract containment of rsvNode derived from fv:VDEp - list RsVNode-list { - key "tDn"; + leaf severity { - // Added containment: Prefix=rsvNode - // Acquired From Package fv - uses fv_RsVNode_source-group; - } + type syslog_Severity; + description "Severity"; } - } - grouping maint_NodeInMaint-group { - leaf nodeId { - config "false"; - type uint32; - } - leaf windowStartTime { - config "false"; - type string; - } - leaf windowTimeCap { - config "false"; - type string; - } - } + leaf port { - grouping synthetic_IfcCTestObj-group { - leaf ifcCTestOnly { - type string; + type syslog_SyslogPort; + description "Port"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf transport { - // Type is an MO-Defined-Type - type naming_Name; + type mon_Transport; + default "udp"; + description "Transport"; + } + leaf trustpointClientIdentity { + type string { + length "0..64"; + } + description "Trustpoint Client Identity"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf forwardingFacility { - // Type is an MO-Defined-Type - type naming_Id; + type syslog_Facility; + description "Forward Facility"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type - leaf descr { - description "TBD"; + leaf adminState { - // Type is an MO-Defined-Type - type naming_Descr; + type mon_AdminState; + description "TBD"; } - leaf objDn { - type string; + leaf vrfId { + type uint32; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - // Inherited From synthetic:IfcCTestObj - container rttoObj-items { + leaf ip { - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + type address_HostNameOrDottedQuad; + description "ip address"; } - } - grouping synthetic_SwCTestObj-group { - leaf swCTestOnly { - type string; + leaf operState { + config "false"; + + type syslog_OperState; + description "TBD"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Id; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type - leaf descr { - description "TBD"; + // Hostname or IP for export destination + leaf host { - // Type is an MO-Defined-Type - type naming_Descr; + type address_HostNameOrDottedQuad { + length "1..255"; + } + description "Host"; } - leaf objDn { + leaf epgDn { + config "false"; type string; + description "Reachability EpG"; } - // Rel-def from toObj - container rstoObj-items { + // The vrf that remote host belongs to + leaf vrfName { - // Added containment as a singleton: Prefix=rstoObj - // Acquired From Package synthetic - uses synthetic_RsToObj_source-group; + type l3_VrfName; + description "Vrf Name"; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - // Inherited From synthetic:IfcCTestObj - // Inherited From synthetic:SwCTestObj - container rttoObj-items { + // Syslog Dest state + container destst-items { + list DestState-list { + config "false"; + key "name"; - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + uses syslog_DestState-group; + description "syslog Destination State list"; + } + description "syslog Destination State"; } } - grouping System-group { - leaf currentTime { + grouping syslog_DestState-group { + description "syslog Destination State"; + + leaf operState { config "false"; - type string; + + type syslog_OperState; + description "TBD"; } - leaf systemUpTime { + leaf vrfId { config "false"; - type string; + type uint32; } - // Serial Number of the system - // Type is an MO-Defined-Type - leaf serial { + leaf ip { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type address_HostNameOrDottedQuad; + description "ip address"; + } + leaf totalBufferedMsgs { + config "false"; + type uint32; + description "total buffered messages"; + } + leaf totalDroppedMsgs { + config "false"; + type uint32; + description "total drooped messages"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Modified by Override: top:System->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name { + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Holds bgp control plane entity information - container bgp-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=bgp - // Acquired From Package bgp - uses bgp_Entity-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Firmware Versions compatible with running version - // Created on node to maintain list of compatible firmwares - container sfw-items { - list SuppFw-list { + // Syslog Log Message + container msg-items { + list LogMsg-list { config "false"; - key "name"; + key "index"; - // Added containment: Prefix=sfw - // Acquired From Package compat - uses compat_SuppFw-group; + uses syslog_LogMsg-group; + description "syslog Destination State list"; } + description "syslog Destination State"; } + } - // Capability Catalogue - container capabilities-items { - - // Added containment as a singleton: Prefix=capabilities - // Acquired From Package cap - uses cap_Cat-group; + grouping syslog_LogMsg-group { + description "syslog Destination State"; + leaf index { + config "false"; + type uint32; + description "Message Index"; } - - container clock-items { - - // Added containment as a singleton: Prefix=clock - // Acquired From Package datetime - uses datetime_Clock-group; + leaf message { + config "false"; + type string; + description "Message Entry"; } - - // Datetime policy - container time-items { - - // Added containment as a singleton: Prefix=time - // Acquired From Package datetime - uses datetime_ClkPol-group; + leaf facility { + config "false"; + type string; + description "Message Facility"; + } + leaf severity { + config "false"; + type uint16; + description "Message Severity"; } - container ntpq-items { - list Ntpq-list { - config "false"; - key "remote"; - // Added containment: Prefix=ntpq - // Acquired From Package datetime - uses datetime_Ntpq-group; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Holds span global accounting information - container acct-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=acct - // Acquired From Package span - uses span_Acct-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Holds span retry information - container retry-items { + grouping syslog_File-group { + description "File"; + + leaf adminState { - // Added containment as a singleton: Prefix=retry - // Acquired From Package span - uses span_RetryCont-group; + type mon_AdminState; + description "TBD"; } - // Holds span manager control plane entity information - container span-items { + leaf severity { - // Added containment as a singleton: Prefix=span - // Acquired From Package span - uses span_Entity-group; + type syslog_Severity; + default "information"; + description "Severity"; } - // Holds dhcp control plane entity information - container dhcp-items { + leaf size { - // Added containment as a singleton: Prefix=dhcp - // Acquired From Package dhcp - uses dhcp_Entity-group; + type syslog_FileSize; + description "Size"; } - // Holds dns control plane entity information - container dns-items { + leaf name { - // Added containment as a singleton: Prefix=dns - // Acquired From Package dns - uses dns_Entity-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container decommission-items { + leaf descr { - // Added containment as a singleton: Prefix=decommission - // Acquired From Package fabric - uses fabric_Decommission-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inband (sup) Interface - container inb-items { - list InbandIf-list { - key "id"; + grouping syslog_Console-group { + description "Console"; - // Added containment: Prefix=inb - // Acquired From Package l2 - uses l2_InbandIf-group; - } + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // Fex fabric Interface - container ext-items { - list ExtIf-list { - key "id"; + leaf severity { - // Added containment: Prefix=ext - // Acquired From Package l2 - uses l2_ExtIf-group; - } + type syslog_Severity; + default "critical"; + description "Severity"; } + } - // Bridged Interface - container br-items { - list BrIf-list { - key "id"; + grouping dhcp_OptionDef-group { + description "DHCP Option"; - // Added containment: Prefix=br - // Acquired From Package l2 - uses l2_BrIf-group; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // DN: sys/mac - container mac-items { + // DHCP OPTION ID + leaf id { + config "false"; - // Added containment as a singleton: Prefix=mac - // Acquired From Package l2 - uses l2_Macs-group; + type dhcp_OptionId; + description "TBD"; } - // Holds cdp control plane entity information - container cdp-items { + // DHCP OPTION ID + leaf data { + config "false"; - // Added containment as a singleton: Prefix=cdp - // Acquired From Package cdp - uses cdp_Entity-group; + type naming_Regex; + description "Model Regex"; } - // Holds lldp control plane entity information - container lldp-items { + // Discovered DHCP client node + container bd-items { + list DiscNode-list { + config "false"; + key "encap mac ciAddr"; - // Added containment as a singleton: Prefix=lldp - // Acquired From Package lldp - uses lldp_Entity-group; + uses dhcp_DiscNode-group; + description "DHCP Discovered Client Node list"; + } + description "DHCP Discovered Client Node"; } + } - // Holds MCP control plane entity information - container mcp-items { - - // Added containment as a singleton: Prefix=mcp - // Acquired From Package mcp - uses mcp_Entity-group; + grouping dhcp_DiscNode-group { + description "DHCP Discovered Client Node"; + leaf mac { + config "false"; + type address_Mac; + description "Client Hardware Address"; } - - // Holds VPC control plane entity information - container vpc-items { - - // Added containment as a singleton: Prefix=vpc - // Acquired From Package vpc - uses vpc_Entity-group; + leaf ciAddr { + config "false"; + type address_Ip; + description "Client IP Address"; + } + leaf ctxEncap { + config "false"; + type string; + description "VRF Encap"; + } + leaf fabEncap { + config "false"; + type string; + description "BD Encap"; + } + leaf encap { + config "false"; + type string; + description "FD Encap"; } + } - // Holder of PE specific information of endpoints - container epns-items { + grouping fv_DomDef-group { + description "Domain"; + + leaf domPKey { + config "false"; - // Added containment as a singleton: Prefix=epns - // Acquired From Package fv - uses fv_EpNs-group; + type fv_PrimKey; + description "TBD"; } - // Entity for Gold - container gold-items { + leaf instrImedcy { + config "false"; - // Added containment as a singleton: Prefix=gold - // Acquired From Package gold - uses gold_Entity-group; + type fv_InstrImedcy; + description "TBD"; } - // Holds igmp control plane entity information - container igmp-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=igmp - // Acquired From Package igmp - uses igmp_Entity-group; + type naming_Name; + description "Name"; } - // Firmware status container object for a controller. Contains objects which represent status of firmware management of a controller. - container ctrlrfwstatuscont-items { + container rsdomDefNs-items { - // Added containment as a singleton: Prefix=ctrlrfwstatuscont - // Acquired From Package firmware - uses firmware_CtrlrFwStatusCont-group; + uses fv_RsDomDefNs_source-group; + description "VXLAN Pool"; } - // Firmware status container object for a node. Contains objects which represent status of firmware management of a node. - container fwstatuscont-items { + container rsdomDefNsLocal-items { - // Added containment as a singleton: Prefix=fwstatuscont - // Acquired From Package firmware - uses firmware_FwStatusCont-group; + uses fv_RsDomDefNsLocal_source-group; + description "VXLAN Pool"; } - // Catalog status container object for a controller. Contains objects which represent status of catalog on a controller. - container catfwstatuscont-items { + container rtfvToDomDef-items { + + list RtFvToDomDef-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=catfwstatuscont - // Acquired From Package firmware - uses firmware_CatFwStatusCont-group; + uses fv_RtFvToDomDef_target-group; + } } + } - // Holds isis control plane entity information - container isis-items { + grouping fv_DEp-group { + description "Dynamic Endpoint"; - // Added containment as a singleton: Prefix=isis - // Acquired From Package isis - uses isis_Entity-group; + leaf name { + config "false"; + + type naming_Name; + description "Name"; } - // Holds lacp control plane entity information - container lacp-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=lacp - // Acquired From Package lacp - uses lacp_Entity-group; + type naming_Id; + description "Id"; } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; + } + } - // Mgmt interface - container mgmt-items { - list MgmtIf-list { - key "id"; - - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_MgmtIf-group; - } + grouping opflex_IDEp-group { + description "Inband Discovered Endpoint"; + leaf eppdn { + config "false"; + type string; + } + leaf compVmDn { + config "false"; + type string; + } + leaf compHvDn { + config "false"; + type string; + } + leaf epgID { + config "false"; + type string; + } + leaf epHostAddr { + config "false"; + type string; + } + leaf hypervisorName { + config "false"; + type string; + } + leaf portId { + config "false"; + type uint32; + } + leaf containerName { + config "false"; + type string; } - container mitOper-items { + // ep transition status + leaf transitionStatus { + config "false"; - // Added containment as a singleton: Prefix=mitOper - // Acquired From Package mit - uses mit_MitOperRoot-group; + type opflex_EpTransitionStatus; + description "TBD"; } - // Holds snmp control plane entity information - container snmp-items { + // epp push policy + leaf eppDownloadHint { + config "false"; - // Added containment as a singleton: Prefix=snmp - // Acquired From Package snmp - uses snmp_Entity-group; + type opflex_EppDownloadHint; + description "TBD"; + } + leaf handle { + config "false"; + type uint64; } - // Holds syslog global accounting information - container syslogacct-items { + // instType + leaf instType { + config "false"; - // Added containment as a singleton: Prefix=syslogacct - // Acquired From Package syslog - uses syslog_Acct-group; + type comp_NicInstType; + description "TBD"; + } + leaf pcIfId { + config "false"; + type uint32; } - container syslog-items { + // type of the device + leaf state { + config "false"; - // Added containment as a singleton: Prefix=syslog - // Acquired From Package syslog - uses syslog_Syslog-group; + type comp_NicState; + description "TBD"; } - container mts-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mts - // Acquired From Package mts - uses mts_Mts-group; + type naming_Name; + description "Name"; } - container nat-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=nat - // Acquired From Package nat - uses nat_Entity-group; + type naming_Id; + description "Id"; + } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; } - // Command to be executed on the device - // This object is owned by the opflexelem - container odcreq-items { - list ODevCmdReq-list { + // IDEp stats is the object exchanged between opflex agent + // and opflex controller for the end point stats + container idepcntr-items { + list IDEpCntr-list { config "false"; - key "devId sessId cmdId"; + key "mac encap"; - // Added containment: Prefix=odcreq - // Acquired From Package opflex - uses opflex_ODevCmdReq-group; + uses opflex_IDEpCntr-group; } } - container odcresp-items { - list ODevCmdResp-list { + container vdep-items { + list VDEp-list { config "false"; - key "devId sessId cmdId"; + key "mac encap brIfId"; - // Added containment: Prefix=odcresp - // Acquired From Package opflex - uses opflex_ODevCmdResp-group; + uses fv_VDEp-group; + description "Vleaf Discovered Endpoint list"; } + description "Vleaf Discovered Endpoint"; } + } - // Holds ospf control plane entity information - container ospf-items { - - // Added containment as a singleton: Prefix=ospf - // Acquired From Package ospf - uses ospf_Entity-group; + grouping opflex_IDEpCntr-group { + leaf mac { + config "false"; + type address_Mac; } - - // L2EVPN instance definition - container evpn-items { - - // Added containment as a singleton: Prefix=evpn - // Acquired From Package rtctrl - uses rtctrl_L2Evpn-group; + leaf encap { + config "false"; + type string; } - container userext-items { + leaf direction { + config "false"; - // Added containment as a singleton: Prefix=userext - // Acquired From Package aaa - uses aaa_UserEp-group; + type opflex_Direction; + description "TBD"; } - // statsmock root objects - container mockroot-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mockroot - // Acquired From Package mock - uses mock_MockRoot-group; + type naming_Name; + description "Name"; } - // Holds stp control plane entity information - container stp-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=stp - // Acquired From Package stp - uses stp_Entity-group; + type naming_Id; + description "Id"; + } + } + + grouping fv_VDEp-group { + description "Vleaf Discovered Endpoint"; + leaf epgID { + config "false"; + type string; + } + + // Physical Interface ID on which this EP was attached + leaf brIfId { + config "false"; + + type nw_IfId; + description "TBD"; + } + + // instType + leaf instType { + config "false"; + + type comp_NicInstType; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + + leaf id { + config "false"; + + type naming_Id; + description "Id"; + } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; + } + + container rsvNode-items { + + list RsVNode-list { + key "tDn"; + + uses fv_RsVNode_source-group; + description "Relation to Virtual Node list"; + } + description "Relation to Virtual Node"; + } + } + + grouping synthetic_IfcCTestObj-group { + description "Synthetic Ifc C Test Object"; + leaf ifcCTestOnly { + type string; + } + + leaf name { + + type naming_Name; + description "Name"; + } + + leaf id { + + type naming_Id; + description "Id"; + } + + leaf descr { + + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + + container rttoObj-items { + + uses synthetic_RtToObj_target-group; + } + } + + grouping synthetic_SwCTestObj-group { + description "Synthetic Sw C Test Object"; + leaf swCTestOnly { + type string; + } + + leaf name { + + type naming_Name; + description "Name"; + } + + leaf id { + + type naming_Id; + description "Id"; + } + + leaf descr { + + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + + container rstoObj-items { + + uses synthetic_RsToObj_source-group; + } + + container rttoObj-items { + + uses synthetic_RtToObj_target-group; + } + } + + grouping System-group { + description "General information about this system"; + leaf name { + type string { + pattern "[0-9a-z-A-Z_\\.-]{0,63}"; + } + } + leaf currentTime { + config "false"; + type union { + type string; + type uint64; + } + description "Current Time on this system"; + } + leaf systemUpTime { + config "false"; + type union { + type string; + type uint64; + } + description "System Up Time in seconds since this system is booted"; + } + + // Serial Number of the system + leaf serial { + config "false"; + + type eqpt_Serial; + description "TBD"; + } + + // global config time stamp + leaf configModTs { + config "false"; + + type mo_TStamp; + description "set when config is performed"; + } + leaf configDirty { + config "false"; + type boolean; + default "false"; + description "set when config is performed, unset after copy r s"; + } + + leaf configModTsBackup { + config "false"; + + type mo_TStamp; + description "set when config is performed, backup old value"; + } + leaf configDirtyBackup { + config "false"; + type boolean; + default "false"; + description "set when config is performed, backup old value"; + } + + // Holds bgp control plane entity information + container bgp-items { + + uses bgp_Entity-group; + description "BGP control plane entity information."; + } + + // bgp trap + container bgptrap-items { + + uses bgp_Tbgp-group; + description "Configure SNMP BGP traps"; + } + + // cbgp2 trap + container cbgp2trap-items { + + uses bgp_Tcbgp2-group; + description "SNMP CISCO-BGP-MIBv2 traps"; + } + + container callhome-items { + + uses callhome_Callhome-group; + description "Callhome node, used as a placeholder for uniformity"; + } + + // Container to hold Capability logging level related objects and statistics + container caploglevel-items { + + uses cap_LogLevel-group; + description "Config Capability logging level"; + } + + container clock-items { + + uses datetime_Clock-group; + description "Clock Manager"; + } + + // Datetime policy + container time-items { + + uses datetime_ClkPol-group; + description "Date Time Policy"; + } + container ntpq-items { + list Ntpq-list { + config "false"; + key "remote"; + + uses datetime_Ntpq-group; + description "Ntp Concrete Details list"; + } + description "Ntp Concrete Details"; + } + + // Holds span manager control plane entity information + container span-items { + + uses span_Entity-group; + description "SPAN Entity"; + } + + container originip-items { + + uses span_ErspanOriginIp-group; + description "Global MO of origin Ip address for every Erspan session"; + } + + // Holds dhcp control plane entity information + container dhcp-items { + + uses dhcp_Entity-group; + description "DHCP Entity"; + } + + // Holds dns control plane entity information + container dns-items { + + uses dns_Entity-group; + description "DNS Entity"; + } + + // Event Manager MO + container email-items { + + uses email_Email-group; + description "Email configuration mode"; + } + + // Event Manager MO + container evtmgr-items { + + uses evms_EvtMgr-group; + description "Embedded event manager"; + } + + // Inband (sup) Interface + container inb-items { + list InbandIf-list { + key "id"; + + uses l2_InbandIf-group; + description "Layer2 Inband Interface list"; + } + description "Layer2 Inband Interface"; + } + + // Fex fabric Interface + container ext-items { + list ExtIf-list { + key "id"; + + uses l2_ExtIf-group; + description "Layer 2 Extending Interface list"; + } + description "Layer 2 Extending Interface"; + } + + // Bridged Interface + container br-items { + list BrIf-list { + key "id"; + + uses l2_BrIf-group; + description "Layer 2 Bridged Interface list"; + } + description "Layer 2 Bridged Interface"; + } + + // DN: sys/mac + container mac-items { + + uses l2_Macs-group; + description "Mac Address"; + } + + // Holds cdp control plane entity information + container cdp-items { + + uses cdp_Entity-group; + description "CDP Entity"; + } + + // Holds lldp control plane entity information + container lldp-items { + + uses lldp_Entity-group; + description "LLDP Entity"; + } + + // Holds VPC control plane entity information + container vpc-items { + + uses vpc_Entity-group; + description "VPC Entity"; + } + + // Container to hold Xbar logging level related objects and statistics + container xbarloglevel-items { + + uses xbar_LogLevel-group; + description "Config Xbar logging level"; + } + + // Entity for Gold + container gold-items { + + uses gold_Entity-group; + description "Gold Entity"; + } + + // Holds igmp control plane entity information + container igmp-items { + + uses igmp_Entity-group; + description "IGMP Entity"; + } + + // Holds isis control plane entity information + container isis-items { + + uses isis_Entity-group; + description "Holds ISIS Control Plane Entity Information"; + } + + container itd-items { + + uses itd_Entity-group; + description "ITD Entity"; + } + + // Holds lacp control plane entity information + container lacp-items { + + uses lacp_Entity-group; + description "LACP Entity"; + } + + // Mgmt interface + container mgmt-items { + list MgmtIf-list { + key "id"; + + uses mgmt_MgmtIf-group; + description "Management Interface list"; + } + description "Management Interface"; + } + + container logging-items { + + uses logging_Logging-group; + description "Logging root node for logging operations"; + } + + // Holds snmp control plane entity information + container snmp-items { + + uses snmp_Entity-group; + description "SNMP Entity"; + } + + // Holds syslog global accounting information + container syslogacct-items { + + uses syslog_Acct-group; + description "Syslog Accounting"; + } + + container syslog-items { + + uses syslog_Syslog-group; + description "syslog root node"; + } + + container mts-items { + + uses mts_Mts-group; + description "MTS stats"; + } + + container nat-items { + + uses nat_Entity-group; + description "NAT entity"; + } + + // Holds OSPF control plane entity information + container ospf-items { + + uses ospf_Entity-group; + description "Holds OSPF control plane entity information"; + } + + // L2EVPN instance definition + container evpn-items { + + uses rtctrl_L2Evpn-group; + description "L2EVPN Entity"; + } + + container comm-items { + + uses comm_Entity-group; + description "Communication Entity"; + } + + container userext-items { + + uses aaa_UserEp-group; + description "User Management"; + } + + container security-items { + + uses security_Security-group; + description "Security Rules For User And Fips"; + } + + container passwdenc-items { + + uses smartcard_PasswdEncrypt-group; + description "password encryption aes feature"; + } + + // Holds stp control plane entity information + container stp-items { + + uses stp_Entity-group; + description "STP Entity"; } // Aggregate BdTable container bdTable-items { - // Added containment as a singleton: Prefix=bdTable - // Acquired From Package aggregate uses aggregate_BdTable-group; + description "Bd Table"; } // Aggregate VlanTable container globalConfTable-items { - // Added containment as a singleton: Prefix=globalConfTable - // Acquired From Package aggregate uses aggregate_GlobalConfTable-group; + description "Global Configuration Table"; } // Aggregate InterfaceTable container intfTable-items { - // Added containment as a singleton: Prefix=intfTable - // Acquired From Package aggregate uses aggregate_IntfTable-group; + description "Interface Table"; } // Aggregate MacTable container macTable-items { - // Added containment as a singleton: Prefix=macTable - // Acquired From Package aggregate uses aggregate_MacTable-group; + description "MAC Table"; } container systemTable-items { - // Added containment as a singleton: Prefix=systemTable - // Acquired From Package aggregate uses aggregate_SystemTable-group; + description "System or switch level properties for SDN controller interface."; } // Aggregate InterfaceTable container tunnelIntfTable-items { - // Added containment as a singleton: Prefix=tunnelIntfTable - // Acquired From Package aggregate uses aggregate_TunnelIntfTable-group; + description "Tunnel Interface Table"; } // Aggregate VlanTable container vlanTable-items { - // Added containment as a singleton: Prefix=vlanTable - // Acquired From Package aggregate uses aggregate_VlanTable-group; + description "Vlan Table"; } // VPCDOMTAB container vpcDomTable-items { - // Added containment as a singleton: Prefix=vpcDomTable - // Acquired From Package aggregate uses aggregate_VpcDomTable-group; + description "Vpc Domain Table"; } container vrfTable-items { - // Added containment as a singleton: Prefix=vrfTable - // Acquired From Package aggregate uses aggregate_VrfTable-group; } // Holds ACL control plane configuration container acl-items { - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl uses acl_Entity-group; - } - - // Holds actrl control plane entity information - container actrl-items { - - // Added containment as a singleton: Prefix=actrl - // Acquired From Package actrl - uses actrl_Entity-group; - } - container actrlcapprov-items { - list Prov-list { - config "false"; - key "subj type"; - - // Added containment: Prefix=actrlcapprov - // Acquired From Package actrlcap - uses actrlcap_Prov-group; - } + description "Entity of the Access Control List"; } container analytics-items { - // Added containment as a singleton: Prefix=analytics - // Acquired From Package analytics uses analytics_Entity-group; + description "Entity"; } container hwtelemetry-items { - // Added containment as a singleton: Prefix=hwtelemetry - // Acquired From Package analytics uses analytics_HwTelemetry-group; + description "Entity for all Hardware Telemetry features"; + } + + container kubernetes-items { + + uses kbs_ContainerTracker-group; + description "Container Tracker entity"; } // Holds copp control plane entity information container copp-items { - // Added containment as a singleton: Prefix=copp - // Acquired From Package copp uses copp_Entity-group; + description "CoPP Entity"; } // Holds glean control plane entity information container glean-items { - // Added containment as a singleton: Prefix=glean - // Acquired From Package glean uses glean_Entity-group; + description "Glean Entity"; } // Holds HMM entity information container hmm-items { - // Added containment as a singleton: Prefix=hmm - // Acquired From Package hmm uses hmm_Entity-group; + description "Holds Host Mobility Manager (HMM) Entity information."; + } + + // Container for all the BDs in the system. + container bd-items { + + uses bd_Entity-group; + description "System BD"; } - // Holds icam entity information container icam-items { - // Added containment as a singleton: Prefix=icam - // Acquired From Package icam uses icam_Entity-group; + description "ICAM Entity"; } container ipqos-items { - // Added containment as a singleton: Prefix=ipqos - // Acquired From Package ipqos uses ipqos_Entity-group; + description "QoS configuration space"; } // Holds span manager control plane entity information container monitor-items { - // Added containment as a singleton: Prefix=monitor - // Acquired From Package monitor uses monitor_Entity-group; + description "Entity"; } container flow-items { - // Added containment as a singleton: Prefix=flow - // Acquired From Package flow uses flow_Entity-group; + description "Entity"; } // Holds NGOAM entity information container ngoam-items { - // Added containment as a singleton: Prefix=ngoam - // Acquired From Package ngoam uses ngoam_Entity-group; + description "NGOAM Entity"; } // nxapi config @@ -30246,119 +34470,88 @@ module Cisco-NX-OS-device { // could pick it own default setting. container nxapi-items { - // Added containment as a singleton: Prefix=nxapi - // Acquired From Package nxapi uses nxapi_Inst-group; + description "NXAPI Instance"; + } + + container ofm-items { + + uses ofm_Inst-group; + description "Static Tunnel"; } // Container for all the interfaces in the system. container poe-items { - // Added containment as a singleton: Prefix=poe - // Acquired From Package poe uses poe_Entity-group; + description "poe Entity"; } // Holds qos manager control plane entity information container qosm-items { - // Added containment as a singleton: Prefix=qosm - // Acquired From Package qosm uses qosm_Entity-group; + description "QoS Entity"; } // Holds sisf control plane entity information container sisf-items { - // Added containment as a singleton: Prefix=sisf - // Acquired From Package sisf uses sisf_Entity-group; + description "Enable/Disable FHS feature"; + } + + // Holds service control plane entity information + container sla-items { + + uses sla_Entity-group; + description "SLA"; } container tm-items { - // Added containment as a singleton: Prefix=tm - // Acquired From Package telemetry uses telemetry_Entity-group; + description "Telemetry System"; } // Holds object tracking entity information container track-items { - // Added containment as a singleton: Prefix=track - // Acquired From Package track uses track_Entity-group; + description "Object track entity"; } container udld-items { - // Added containment as a singleton: Prefix=udld - // Acquired From Package udld uses udld_Entity-group; + description "Unidirectional Link Detection Entity"; } - // Holds Acllog entity information - container acllog-items { + container vmtracker-items { - // Added containment as a singleton: Prefix=acllog - // Acquired From Package acllog - uses acllog_Entity-group; + uses vmtracker_VmTracker-group; + description "VmTracker entity"; } - // Container for all the BDs in the system. - container bd-items { + // Holds Acllog entity information + container acllog-items { - // Added containment as a singleton: Prefix=bd - // Acquired From Package bd - uses bd_Entity-group; + uses acllog_Entity-group; + description "Acllog entity"; } // TemplateTable MO container templateTable-items { - // Added containment as a singleton: Prefix=templateTable - // Acquired From Package conftmpl uses conftmpl_TemplateTable-group; - } - - // Holds Storage information - container fc-items { - - // Added containment as a singleton: Prefix=fc - // Acquired From Package fc - uses fc_Entity-group; - } - - // Holds Fcoe-mgr control plane entity information - container fcoe-items { - - // Added containment as a singleton: Prefix=fcoe - // Acquired From Package fcoe - uses fcoe_Entity-group; - } - - // Holds NPV entity information - container npv-items { - - // Added containment as a singleton: Prefix=npv - // Acquired From Package npv - uses npv_Entity-group; - } - - // Holds Vsan-mgr control plane entity information - container vsanmgr-items { - - // Added containment as a singleton: Prefix=vsanmgr - // Acquired From Package vsanmgr - uses vsanmgr_Entity-group; + description "Template Table"; } // Holds feature entity information container fm-items { - // Added containment as a singleton: Prefix=fm - // Acquired From Package fm uses fm_Entity-group; + description "Feature entity"; } // This object information is common to featureSet @@ -30366,135 +34559,131 @@ module Cisco-NX-OS-device { list FeatureSet-list { key "name"; - // Added containment: Prefix=fset - // Acquired From Package fset uses fset_FeatureSet-group; + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function list"; } + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function"; + } + + // Guest Shell Top Object + container guestshell-items { + + uses guestshell_GuestShell-group; + description "Guest Shell execution space"; } // Exec results container install-items { - // Added containment as a singleton: Prefix=install - // Acquired From Package installer uses installer_Install-group; + description "Image installation information and result"; } // Container for all the interfaces in the system. container intf-items { - // Added containment as a singleton: Prefix=intf - // Acquired From Package interface uses interface_Entity-group; + description "Interface"; } // Holds ipv4 control plane entity information container ipv4-items { - // Added containment as a singleton: Prefix=ipv4 - // Acquired From Package ipv4 uses ipv4_Entity-group; + description "IPv4 Entity"; } // Holds ipv6 control plane entity information container ipv6-items { - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package ipv6 uses ipv6_Entity-group; - } - container l1capprov-items { - list Prov-list { - config "false"; - key "subj type"; - - // Added containment: Prefix=l1capprov - // Acquired From Package l1cap - uses l1cap_Prov-group; - } + description "IPv6 Entity"; } container ethpm-items { - // Added containment as a singleton: Prefix=ethpm - // Acquired From Package ethpm uses ethpm_Entity-group; + description "Ethernet Port Manager Entity"; } container breakout-items { - // Added containment as a singleton: Prefix=breakout - // Acquired From Package im uses im_Breakout-group; + description "Interface Breakout"; } container im-items { - // Added containment as a singleton: Prefix=im - // Acquired From Package im uses im_Entity-group; + description "Interface Manager Entity"; } container pc-items { - // Added containment as a singleton: Prefix=pc - // Acquired From Package pc uses pc_Entity-group; + description "Port Channel Entity"; } container l2capprov-items { list Prov-list { config "false"; key "subj type"; - // Added containment: Prefix=l2capprov - // Acquired From Package l2cap uses l2cap_Prov-group; + description "L2 Capability Provider list"; } + description "L2 Capability Provider"; } - container fcpm-items { + container flexlink-items { - // Added containment as a singleton: Prefix=fcpm - // Acquired From Package fcpm - uses fcpm_Entity-group; + uses flexlink_Flexlink-group; + description "Flexlink configuration and management"; } container l2fm-items { - // Added containment as a singleton: Prefix=l2fm - // Acquired From Package l2fm uses l2fm_Entity-group; + description "l2fm"; + } + + container l2pt-items { + + uses l2pt_L2protocol-group; + description "L2 Protocol Tunneling configuration and management"; } // L2RIB control plane entity information container l2rib-items { - // Added containment as a singleton: Prefix=l2rib - // Acquired From Package l2rib uses l2rib_Entity-group; + description "L2RIB Entity"; + } + + // DN: sys/portsecurity + container portsec-items { + + uses portsecurity_PortSecurity-group; + description "Port Security configuration and management at interface"; } - // Holds PVLAN control plane entity information + // PVLAN control plane information DN: sys/pvlan container pvlan-items { - // Added containment as a singleton: Prefix=pvlan - // Acquired From Package pvlan - uses pvlan_Entity-group; + uses pvlan_PrivateVlan-group; + description "Private VLAN (PVLAN) configuration and management"; } // Holds Vlan-mgr control plane entity information container vlanmgr-items { - // Added containment as a singleton: Prefix=vlanmgr - // Acquired From Package vlanmgr uses vlanmgr_Entity-group; + description "Vlan Manager Entity"; } container eps-items { - // Added containment as a singleton: Prefix=eps - // Acquired From Package nvo uses nvo_Eps-group; + description "Container object for NVO endpoint."; } // tenant context object @@ -30502,10 +34691,10 @@ module Cisco-NX-OS-device { list Ctx-list { key "encap"; - // Added containment: Prefix=ctx - // Acquired From Package l3 uses l3_Ctx-group; + description "Context list"; } + description "Context"; } // Overlay instance object @@ -30513,256 +34702,231 @@ module Cisco-NX-OS-device { list Inst-list { key "name"; - // Added containment: Prefix=inst - // Acquired From Package l3 uses l3_Inst-group; + description "Overlay Instance list"; } + description "Overlay Instance"; } container l3capprov-items { list Prov-list { config "false"; key "subj type"; - // Added containment: Prefix=l3capprov - // Acquired From Package l3cap uses l3cap_Prov-group; + description "L3 Capability Provider list"; } + description "L3 Capability Provider"; + } + + // Holds ipfib entity information + container ipfib-items { + + uses ipfib_Entity-group; + description "Ipfib Entity Information"; } // Holds l3vm entity information container l3vm-items { - // Added containment as a singleton: Prefix=l3vm - // Acquired From Package l3vm uses l3vm_Entity-group; + description "L3VM Entity"; } container urib-items { - // Added containment as a singleton: Prefix=urib - // Acquired From Package urib uses urib_Entity4-group; + description "Urib ipv4 root element"; } container u6rib-items { - // Added containment as a singleton: Prefix=u6rib - // Acquired From Package urib uses urib_Entity6-group; + description "Urib ipv6 root element"; } // Entity information container uribv4-items { - // Added containment as a singleton: Prefix=uribv4 - // Acquired From Package uribv4 uses uribv4_Entity-group; + description "IPv4 Unicast Routing Information Base Entity"; } // Entity information container uribv6-items { - // Added containment as a singleton: Prefix=uribv6 - // Acquired From Package uribv6 uses uribv6_Entity-group; + description "Unicast Routing Information Base Entity"; } - // Connection group - container conng-items { + // Holds mmode entity information + container mmode-items { - // Added containment as a singleton: Prefix=conng - // Acquired From Package nw - uses nw_ConnGrp-group; + uses mmode_Entity-group; + description "MMODE Entity"; } - - // DEPRICATE: CONTROLLED VI AINSTANCES ETC. virtual device Context (vdc) TODO: should derive from super="naming:NamedDerivedObject" container vdc-items { list Vdc-list { - config "false"; key "id"; - // Added containment: Prefix=vdc - // Acquired From Package nw uses nw_Vdc-group; + description "VDC list"; } + description "VDC"; + } + + container nxsdk-items { + + uses nxsdk_Entity-group; + description "Nx-sdk Manager"; + } + + // Holds pktmgr entity information + container pktmgr-items { + + uses pktmgr_Entity-group; + description "Pktmgr Entity"; } // Container of processes in the system container procsys-items { - // Added containment as a singleton: Prefix=procsys - // Acquired From Package proc uses proc_System-group; + description "System Process Information"; } // Container of processes in the system + // Ephemeral data container proc-items { - // Added containment as a singleton: Prefix=proc - // Acquired From Package proc uses proc_Entity-group; - } - container regr-items { - list If-list { - config "false"; - key "id"; - - // Added containment: Prefix=regr - // Acquired From Package regress - uses regress_If-group; - } + description "Process Entity"; } // Holds rpm control plane entity information container rpm-items { - // Added containment as a singleton: Prefix=rpm - // Acquired From Package rpm uses rpm_Entity-group; + description "Route Policy Map Entity"; } container ipSrcIf-items { - // Added containment as a singleton: Prefix=ipSrcIf - // Acquired From Package srcintf uses srcintf_Entity-group; + description " IP Source Interface"; } // Install RPM Packages in the system container swpkgs-items { - // Added containment as a singleton: Prefix=swpkgs - // Acquired From Package swpkgs uses swpkgs_Install-group; + description "Software packages Install"; } // Holds sysmgr control plane entity information container sysmgr-items { - // Added containment as a singleton: Prefix=sysmgr - // Acquired From Package sysmgr uses sysmgr_Entity-group; + description "Entity"; } // Holds show version information container showversion-items { - // Added containment as a singleton: Prefix=showversion - // Acquired From Package sysmgr uses sysmgr_ShowVersion-group; + description "Show Version CLI"; } // Holds tcpudp entity information container tcpudp-items { - // Added containment as a singleton: Prefix=tcpudp - // Acquired From Package tcpudp uses tcpudp_Entity-group; + description "Tcpdp Entity"; } // Terminal MO to form the base, which means the user terminal base container terml-items { - // Added containment as a singleton: Prefix=terml - // Acquired From Package terminal uses terminal_Terminal-group; + description "Terminal"; } // Organizes the terminal log-all specific property container termlog-items { - // Added containment as a singleton: Prefix=termlog - // Acquired From Package terminal uses terminal_TerminalLog-group; - } - - // Rule for concrete test app - container test_rule-items { - list CRule-list { - config "false"; - key "name"; - - // Added containment: Prefix=test_rule - // Acquired From Package test - uses test_CRule-group; - } - } - - // Result for concrete test app - container test_rslt_-items { - list CRslt-list { - config "false"; - key "name ts"; - - // Added containment: Prefix=test_rslt_ - // Acquired From Package test - uses test_CRslt-group; - } + description "Enable accounting log for all commands"; } container tunnel-items { list If-list { config "false"; key "id"; - // Added containment: Prefix=tunnel - // Acquired From Package tunnel uses tunnel_If-group; + description "Tunnel Interface list"; } + description "Tunnel Interface"; + } + + // Top MO for branching everything under + container virtualservice-items { + + uses virtualService_VirtualServiceTop-group; + description "Virtual Service"; } // Holds VTP control plane entity information container vtp-items { - // Added containment as a singleton: Prefix=vtp - // Acquired From Package vtp uses vtp_Entity-group; + description "VTP Entity"; + } + + // Wedge BMC(Board Management Controller) IP + container wedge-items { + + uses wedge_Bmc-group; + description "Wedge BMC IP"; } // Top MO for branching everything under container nbm-items { - // Added containment as a singleton: Prefix=nbm - // Acquired From Package nbm uses nbm_NbmTop-group; + description "Non Blocking Multicast."; } // Top MO for branching everything under container nbmcc-items { - // Added containment as a singleton: Prefix=nbmcc - // Acquired From Package nbm uses nbm_NbmCcTable-group; + description "Non Blocking Multicast Consistency Checker"; } // Top MO for branching everything under container nbmFlowsTable-items { - // Added containment as a singleton: Prefix=nbmFlowsTable - // Acquired From Package nbm uses nbm_NbmFlowsTable-group; + description "Non Blocking Multicast"; } // Top MO for branching everything under container nbmStats-items { - // Added containment as a singleton: Prefix=nbmStats - // Acquired From Package nbm uses nbm_NbmStats-group; + description "Non Blocking Multicast"; } container boot-items { - // Added containment as a singleton: Prefix=boot - // Acquired From Package boot uses boot_Boot-group; + description "Configure boot images"; } // Hardware chassis container container ch-items { - // Added containment as a singleton: Prefix=ch - // Acquired From Package eqpt uses eqpt_Ch-group; + description "The hardware chassis information container"; } // Extension chassis @@ -30771,275 +34935,281 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=extch - // Acquired From Package eqpt uses eqpt_ExtCh-group; + description "FEX list"; } + description "FEX"; } // Equipment policy container container ops-items { - // Added containment as a singleton: Prefix=ops - // Acquired From Package eqpt uses eqpt_Entity-group; + description "Equipment Policy Entity"; } - // Container to hold equipment capacity related - // objects and statistics - container eqptcapacity-items { - - // Added containment as a singleton: Prefix=eqptcapacity - // Acquired From Package eqptcapacity - uses eqptcapacity_Entity-group; - } - - // Holds diag related entity information - container diag-items { - - // Added containment as a singleton: Prefix=diag - // Acquired From Package eqptdiag - uses eqptdiag_Entity-group; - } - - // Loose Node - // @@@ Represents a External Connected Node. - // @@@ for eg: Blade Switch attached to a Leaf Node - container lsnode-items { - list LooseNode-list { - key "id"; + // Holds lcm entity information + container lcm-items { - // Added containment: Prefix=lsnode - // Acquired From Package leqpt - uses leqpt_LooseNode-group; - } + uses lcm_Entity-group; + description "lcm entity"; } // Container for all the interfaces in the system. container pltfm-items { - // Added containment as a singleton: Prefix=pltfm - // Acquired From Package platform uses platform_Entity-group; + description "Platform Entity"; } // Satellite manager entity information container satm-items { - // Added containment as a singleton: Prefix=satm - // Acquired From Package satm uses satm_Entity-group; + description "Satellite Manager Entity"; } // Holds adjacency information container adjacency-items { - // Added containment as a singleton: Prefix=adjacency - // Acquired From Package adjacency uses adjacency_Entity-group; + description "Adjacency Entity"; } // Holds arp control plane entity information container arp-items { - // Added containment as a singleton: Prefix=arp - // Acquired From Package arp uses arp_Entity-group; + description "ARP Entity"; } // Holds bfd control plane entity information container bfd-items { - // Added containment as a singleton: Prefix=bfd - // Acquired From Package bfd uses bfd_Entity-group; + description "BFD Entity"; + } + + // Holds cfs control plane entity information + container cfs-items { + + uses cfs_Entity-group; + description "Cfs Entity"; + } + + // Holds dot1x control plane entity information + container dot1x-items { + + uses dot1x_Entity-group; + description "Dot1x entity information"; } // Holds HSRP control plane entity information container hsrp-items { - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package hsrp uses hsrp_Entity-group; + description "HSRP Entity"; } // Holds icmpv4 control plane entity information container icmpv4-items { - // Added containment as a singleton: Prefix=icmpv4 - // Acquired From Package icmpv4 uses icmpv4_Entity-group; + description "ICMPv4 Entity"; } // Holds icmpv6 control plane entity information container icmpv6-items { - // Added containment as a singleton: Prefix=icmpv6 - // Acquired From Package icmpv6 uses icmpv6_Entity-group; + description "ICMPv6 Entity"; } // Holds igmp control plane entity information container igmpsnoop-items { - // Added containment as a singleton: Prefix=igmpsnoop - // Acquired From Package igmpsnoop uses igmpsnoop_Entity-group; + description "Holds IGMP Snooping Entity Information"; } // Holds m6rib entity information container m6rib-items { - // Added containment as a singleton: Prefix=m6rib - // Acquired From Package m6rib uses m6rib_Entity-group; + description "Holds M6RIB entity information"; } // Holds macsec control plane entity information container macsec-items { - // Added containment as a singleton: Prefix=macsec - // Acquired From Package macsec uses macsec_Entity-group; + description "Macsec control plane entity"; } // Holds mcastfwd control plane entity information container mcastfwd-items { - // Added containment as a singleton: Prefix=mcastfwd - // Acquired From Package mcastfwd uses mcastfwd_Entity-group; + description "Holds Multicast Forwarding Entity Information"; + } + + // Holds mld control plane entity information + container mld-items { + + uses mld_Entity-group; + description "MLD Entity"; } // Holds mld control plane entity information container mldsnoop-items { - // Added containment as a singleton: Prefix=mldsnoop - // Acquired From Package mldsnoop uses mldsnoop_Entity-group; + description "Holds MLD Snooping Entity Information"; + } + + // Holds mpls LDP entity information + container ldp-items { + + uses mplsldp_LDP-group; + description "MPLS LDP Entity, anchoring all LDP specific MOs"; } // Mpls container mpls-items { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package mpls uses mpls_Entity-group; + description "Root MPLS Manager entity anchoring general MPLS MOs"; } // Mpls container mplsstatic-items { - // Added containment as a singleton: Prefix=mplsstatic - // Acquired From Package mplsstatic uses mplsstatic_Entity-group; + description "Root MPLS Static entity anchoring MPLS Static MOs"; } // Label Table container labeltable-items { - // Added containment as a singleton: Prefix=labeltable - // Acquired From Package ulib uses ulib_LabelTable-group; + description "Label Table. Contains aggregate properties for allocated labels and anchors children that describe the allocated labels"; } // Holds mrib entity information container mrib-items { - // Added containment as a singleton: Prefix=mrib - // Acquired From Package mrib uses mrib_Entity-group; + description "Holds MRIB entity information"; } // Holds MSDP control plane entity information container msdp-items { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package msdp uses msdp_Entity-group; + description "Holds MSDP control plane entity information"; } - // Holds nd control plane entity information - container nd-items { + // Holds mvpn control plane entity information + container mvpn-items { + + uses mvpn_Entity-group; + description "Holds MVPN control plane entity information"; + } + + // Holds nd control plane entity information + container nd-items { - // Added containment as a singleton: Prefix=nd - // Acquired From Package nd uses nd_Entity-group; + description "Neighbor Discover Entity"; } // Holds NGMVPN // entity information container ngmvpn-items { - // Added containment as a singleton: Prefix=ngmvpn - // Acquired From Package ngmvpn uses ngmvpn_Entity-group; + description "Fabric Group Manager Entity, which hold NGMVPN entity information"; + } + + // Holds openflow entity information + container openflow-items { + + uses openflow_Entity-group; + description "Openflow Entity Object"; + } + + // Holds OSPFv3 control plane entity information + container ospfv3-items { + + uses ospfv3_Entity-group; + description "OSPFv3 control plane entity information"; } // Holds pim control plane entity information container pim-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package pim uses pim_Entity-group; + description "Holds PIM control plane entity information"; } // Holds pim6 control plane entity information container pim6-items { - // Added containment as a singleton: Prefix=pim6 - // Acquired From Package pim6 uses pim6_Entity-group; + description "Holds PIM6 control plane entity information"; + } + + // Holds ptp control plane entity information + container ptp-items { + + uses ptp_PtpEntity-group; + description "PTP Entity MO for all the PTP global configuration properties"; } // Holds Segment-routing entity information container segrt-items { - // Added containment as a singleton: Prefix=segrt - // Acquired From Package segrt uses segrt_Entity-group; + description "Segment-routing Entity"; } // Holds vrrp control plane entity information container vrrp-items { - // Added containment as a singleton: Prefix=vrrp - // Acquired From Package vrrp uses vrrp_Entity-group; + description "VRRP Entity"; } // Holds vrrpv3 control plane entity information container vrrpv3-items { - // Added containment as a singleton: Prefix=vrrpv3 - // Acquired From Package vrrpv3 uses vrrpv3_Entity-group; + description "VRRPv3 Entity"; } // Root node for scratchpad subtree container scrtchpdrt-items { - // Added containment as a singleton: Prefix=scrtchpdrt - // Acquired From Package scrtchpd uses scrtchpd_Root-group; + description "Root"; } container sectl-items { list SwTLTestObj-list { key "name"; - // Added containment: Prefix=sectl - // Acquired From Package synthetic uses synthetic_SwTLTestObj-group; + description "Synthetic Sw TL Test Object list"; } + description "Synthetic Sw TL Test Object"; } container caggr-items { list AggrIf-list { key "id"; - // Added containment: Prefix=caggr - // Acquired From Package cnw uses cnw_AggrIf-group; + description "Controller Aggregated Interface list"; } + description "Controller Aggregated Interface"; } // Physical ethernet interface information holder @@ -31047,359 +35217,350 @@ module Cisco-NX-OS-device { list PhysIf-list { key "id"; - // Added containment: Prefix=cphys - // Acquired From Package cnw uses cnw_PhysIf-group; + description "Controller Physical Interface list"; } + description "Controller Physical Interface"; + } + + // CliAlias entries list + container clialias-items { + list CliAlias-list { + key "aliasName"; + + uses vshd_CliAlias-group; + description "Cli alias configuration list"; + } + description "Cli alias configuration"; + } + + // CliAlias Check + container clialiascheck-items { + + uses vshd_CliAliasCheck-group; + description "Cli alias check configuration"; + } + + // CLI Variable + container clivar-items { + list CliVar-list { + key "varName"; + + uses vshd_CliVar-group; + description "Configure CLI commands list"; + } + description "Configure CLI commands"; } container action-items { - // Added containment as a singleton: Prefix=action - // Acquired From Package action uses action_LCont-group; + description "Action Container of mo LCont"; } - // Rel-def target from tsSrc - // Inherited From top:System container rtdbgexpTsSrc-items { - // Abstract containment of rtdbgexpTsSrc derived from top:System list RtDbgexpTsSrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rtdbgexpTsSrc - // Acquired From Package dbgexp uses dbgexp_RtDbgexpTsSrc_target-group; + description "Relation to Traceroute Source Node list"; } + description "Relation to Traceroute Source Node"; } - // Rel-def target from trSrc - // Inherited From top:System container rttraceroutepTrSrc-items { - // Abstract containment of rttraceroutepTrSrc derived from top:System list RtTraceroutepTrSrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rttraceroutepTrSrc - // Acquired From Package traceroutep uses traceroutep_RtTraceroutepTrSrc_target-group; + description "Relation to Source Node list"; } + description "Relation to Source Node"; } - // Rel-def target from trDst - // Inherited From top:System container rttraceroutepTrDst-items { - // Abstract containment of rttraceroutepTrDst derived from top:System list RtTraceroutepTrDst-list { config "false"; key "tDn"; - // Added containment: Prefix=rttraceroutepTrDst - // Acquired From Package traceroutep uses traceroutep_RtTraceroutepTrDst_target-group; + description "Relation to Traceroute Destination list"; } + description "Relation to Traceroute Destination"; } - // Rel-def target from fwinstlsrc - // Inherited From top:System container rtmaintFwinstlsrc-items { - // Abstract containment of rtmaintFwinstlsrc derived from top:System list RtMaintFwinstlsrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rtmaintFwinstlsrc - // Acquired From Package maint uses maint_RtMaintFwinstlsrc_target-group; + description "Relation to Source Node list"; } + description "Relation to Source Node"; } } grouping bgp_Entity-group { + description "BGP control plane entity information."; - // Inherited From nw:Conn - // Modified by Override: bgp:Entity->name - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per bgp instance information. There is only // instance supported in bgp container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package bgp uses bgp_Inst-group; + description + "Config and runtime information of + per BGP instance"; } } grouping bgp_Inst-group { + description + "Config and runtime information of + per BGP instance"; // Autonomous system number - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)]) "; } // Disable Policy Batching - // Type is an MO-Defined-Type leaf disPolBatch { - description "Disable Batching Evaluation To All Peers"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Disable Batching Evaluation To All Peers"; } leaf disPolBatchv4PfxLst { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Disable Batching Evaluation Of IPv4 Prefix Advertisements To All Peers"; } leaf disPolBatchv6PfxLst { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Disable Batching Evaluation Of IPv6 Prefix Advertisements To All Peers"; } leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Creation Timestamp, denotes the time when this instance was created"; } leaf activateTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Activation Timestamp, the time when this instance is activated with all the configuration"; } leaf waitDoneTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Wait Done Timestamp, the timestamp when the bgp protocol was out of wait mode"; } // Memory alert level - // Type is an MO-Defined-Type leaf memAlert { config "false"; - description "Memory Alert Level"; - // Type is an MO-Defined-Type type nw_MemAlertLevel; + description "Memory Alert Level"; } // Number of route attribute entries learned - // Type is an MO-Defined-Type leaf numRtAttrib { config "false"; - description "Route Attributes"; - // Type is an MO-Defined-Type type cap_Quant; + description "Route Attributes"; } // Current size of attribute database - // Type is an MO-Defined-Type leaf attribDbSz { config "false"; - description "Attribute Database Size"; - // Type is an MO-Defined-Type type bgp_AttribDbSz; + description "Attribute Database Size"; } // Number of AS path entries learned - // Type is an MO-Defined-Type leaf numAsPath { config "false"; - description "AS Paths entries"; - // Type is an MO-Defined-Type type cap_Quant; + description "AS Paths entries"; } // Current size of AS path database - // Type is an MO-Defined-Type leaf asPathDbSz { config "false"; - description "AS Path Database Size"; - // Type is an MO-Defined-Type type bgp_AsPathDbSz; + description "AS Path Database Size"; } // Enable/Disable isolate bgp - // Type is an MO-Defined-Type leaf isolate { - description "Isolate router from BGP perspective"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Isolate router from BGP perspective"; } // MED dampening interval - // Type is an MO-Defined-Type leaf medDampIntvl { - description "Setting med dampening interval"; - // Type is an MO-Defined-Type type bgp_MedIntvl; + description "Setting med dampening interval"; } leaf fabricSoo { type mtx_array_community; + description "Fabric Site of Origin extcommunity"; } // Enable/Disable flush-routes bgp - // Type is an MO-Defined-Type leaf flushRoutes { - description "Flush routes in RIB upon controlled restart"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Flush routes in RIB upon controlled restart"; } // Activate the affinity group activate - // Type is an MO-Defined-Type leaf affGrpActv { - description "Activate the affinity group"; - // Type is an MO-Defined-Type type bgp_AffGrpActv; + description "Activate the affinity group"; } // Segment routing global block min range value - // Type is an MO-Defined-Type leaf srgbMinLbl { config "false"; - description "Segment Routing Global Block Min Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; - // Type is an MO-Defined-Type type bgp_SRGBRange; + description "Segment Routing Global Block Min Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; } // Segment routing global block max range value - // Type is an MO-Defined-Type leaf srgbMaxLbl { config "false"; - description "Segment Routing Global Block Max Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; - // Type is an MO-Defined-Type type bgp_SRGBRange; + description "Segment Routing Global Block Max Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; } // EPE Configured Peers - // Type is an MO-Defined-Type leaf epeConfiguredPeers { config "false"; - description "EPE Configured Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "EPE Configured Peers"; } // EPE Active Peers - // Type is an MO-Defined-Type leaf epeActivePeers { config "false"; - description "EPE Active Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "EPE Active Peers"; } // Link-State Server - // Type is an MO-Defined-Type leaf lnkStSrvr { config "false"; - description "EPE Link-State Server"; - // Type is an MO-Defined-Type type bgp_LsAdminSt; + description "EPE Link-State Server"; } // Link-State Client - // Type is an MO-Defined-Type leaf lnkStClnt { config "false"; - description "EPE Link-State Server"; - // Type is an MO-Defined-Type type bgp_LsAdminSt; + description "EPE Link-State Server"; + } + + // nexthop suppress-default-resolution + leaf nhSupprDefRes { + + type bgp_AdminSt; + description "Suppress use of default route for nexthop address resolution"; + } + leaf enhancedErr { + type boolean; + default "true"; + description "Enable BGP Enhanced Error Handling to prevent inadvertent session resets for minor errors. See RFC7606 for more details"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Inst->name - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Modified by Override: bgp:Inst->ctrl - // Type is an MO-Defined-Type // Default value handled in local MO type leaf ctrl { - description "fastExtFallover"; // Type is a Local-MO-Defined-Type type nw_InstCtrl_Inst_ctrl; + description "Fast External Fallover"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per bgp domain (vrf) information @@ -31407,10 +35568,10 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package bgp uses bgp_Dom-group; + description "Domain: Virtual Router Context list"; } + description "Domain: Virtual Router Context"; } // This object holds global BGP customized buffer for event-history @@ -31418,270 +35579,229 @@ module Cisco-NX-OS-device { list EvtHist-list { key "type"; - // Added containment: Prefix=evthist - // Acquired From Package bgp uses bgp_EvtHist-group; + description "BGP customized buffer detail for event-history list"; } + description "BGP customized buffer detail for event-history"; } // This object holds bgp operational information. container oper-items { - // Added containment as a singleton: Prefix=oper - // Acquired From Package bgp uses bgp_OperBgp-group; + description + "Top-level container to hold BGP + runtime operational data"; } } grouping bgp_Dom-group { + description "Domain: Virtual Router Context"; // Mode, (external | fabric) - // Type is an MO-Defined-Type leaf mode { - description "Mode"; - // Type is an MO-Defined-Type type bgp_Mode; + description "BGP running in Fabric or External mode, default is fabric"; } // Router id - // Type is an MO-Defined-Type leaf rtrId { - description "Holds ip address to use as Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Holds ip address to use as Router ID"; } // Route refelector id (cluster id) identifies the cluster // of the route reflector domain. // The regular expression allows (1) a cluster id of value between // 1-4294967295 or (2) an IPv4 address. - // Type is an MO-Defined-Type leaf clusterId { - description "Route Reflector Cluster ID"; - // Type is an MO-Defined-Type type bgp_ClusterId { + pattern "(|(1|(\\+)?[1-9]{1}[0-9]{0,8}|(\\+)?[1-3]{1}[0-9]{1,9}|(\\+)?4{1}([0-1]{1}[0-9]{8}|2{1}([0-8]{1}[0-9]{7}|9{1}([0-3]{1}[0-9]{6}|4{1}([0-8]{1}[0-9]{5}|9{1}([0-5]{1}[0-9]{4}|6{1}([0-6]{1}[0-9]{3}|7{1}([0-1]{1}[0-9]{2}|2{1}([0-8]{1}[0-9]{1}|9{1}[0-5]{1})))))))))|((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]?))"; } + description "Route Reflector Cluster ID"; } // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive interval timer in secs"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive interval timer in secs"; } // Hold interval, how long you wait before you declare the // neighbor down - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold interval timer in secs"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold interval timer in secs"; } // Prefix Peer Timeout - // Type is an MO-Defined-Type leaf pfxPeerTimeout { - description "Prefix Peer Timeout in secs"; - // Type is an MO-Defined-Type type bgp_PfxPeerTimeout; + description "Prefix Peer Timeout in secs"; } // Prefix Peer Wait Time - // Type is an MO-Defined-Type leaf pfxPeerWaitTime { - description "Prefix Peer Wait Time in secs"; - // Type is an MO-Defined-Type type bgp_PfxPeerWaitTime; + description "Prefix Peer Wait Time in secs"; } // Maximum AS limit, to discard routes that have excessive // AS numbers - // Type is an MO-Defined-Type leaf maxAsLimit { - description "Max AS-Path limit from EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_MaxAsLimit; - } - leaf rd { - type mtx_array_community; + description "Max AS-Path limit from EBGP neighbor"; } // Timeout for first bestpath after restart - // Type is an MO-Defined-Type leaf bestPathIntvl { - description "Holds timeout for first bestpath after restart"; - // Type is an MO-Defined-Type type bgp_BestPathIntvl; + description "Holds timeout for first bestpath after restart"; } // Update Delay Option for first bestpath timeout - // Type is an MO-Defined-Type leaf always { - description "Update delay option for first bestpath timeout"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Update delay option for first bestpath timeout"; } // Configure connection reconnect interval in secs - // Type is an MO-Defined-Type leaf reConnIntvl { - description "Connection reconnect interval in secs"; - // Type is an MO-Defined-Type type bgp_ReConnectIntvl; - } - - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; + description "Connection reconnect interval in secs"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_DomOperSt; + description "Operational State"; } // Operational router id - // Type is an MO-Defined-Type leaf operRtrId { config "false"; - description "Operational Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Operational Router ID"; } leaf firstPeerUpTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Peer Up Timestamp"; } // Number of Peers - // Type is an MO-Defined-Type leaf numPeers { config "false"; - description "Number of Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Peers"; } // Number of Configured Peers pending - // Type is an MO-Defined-Type leaf numPeersPending { config "false"; - description "Number of Configured Peers pending"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Configured Peers pending"; } // Number of Established Peers - // Type is an MO-Defined-Type leaf numEstPeers { config "false"; - description "Number of Established Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Established Peers"; } // VRF Id - // Type is an MO-Defined-Type leaf id { config "false"; - description "VRF Id"; - // Type is an MO-Defined-Type type bgp_DomId; + description "VRF Id"; } // VRF Vnid - // Type is an MO-Defined-Type leaf vnid { config "false"; - description "Domain Vnid (Value in the range 1-16777214)"; - // Type is an MO-Defined-Type type bgp_Vnid; + description "Domain Vnid (Value in the range 1-16777214)"; } leaf vtepIp { config "false"; type address_Ip; + description "VTEP IP address"; } leaf vtepVirtIp { config "false"; type address_Ip; + description "VTEP Virtual IP address"; } leaf routerMac { config "false"; type address_Mac; + description "Router Mac address from nve"; } // Local ASN - // Type is an MO-Defined-Type leaf localAsn { - description "Local Asn for the EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Local Asn for the EBGP neighbor"; + } + leaf allocIndex { + type uint32 { + range "0..8000"; + } + description "Allocate index for vrf (Value in the range 1-8000)"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Dom->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } + description "Name"; } // This object holds global BGP knobs at Dom level container rtctrl-items { - // Added containment as a singleton: Prefix=rtctrl - // Acquired From Package bgp uses bgp_RtCtrl-group; + description "Route Control Information"; } // This object holds global BGP bestpath knobs at Dom level container pathctrl-items { - // Added containment as a singleton: Prefix=pathctrl - // Acquired From Package bgp uses bgp_PathCtrl-group; + description "Path Control"; } // AS Confed are needed to club ASNs together to look like a single ASN container confed-items { - // Added containment as a singleton: Prefix=confed - // Acquired From Package bgp uses bgp_Confederation-group; + description "AS confederation parameters"; } // This object holds per address family bgp vrf information @@ -31689,10 +35809,10 @@ module Cisco-NX-OS-device { list DomAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_DomAf-group; + description "Address Family Information list"; } + description "Address Family Information"; } // This object holds the BMP server information @@ -31700,29 +35820,57 @@ module Cisco-NX-OS-device { list BmpSvr-list { key "id"; - // Added containment: Prefix=bmp - // Acquired From Package bgp uses bgp_BmpSvr-group; + description "BMP server configuration list"; } + description "BMP server configuration"; } // This objects hold per domain graceful restart information container gr-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package bgp uses bgp_Gr-group; + description "Graceful Restart"; } - // This object holds bgp information pertaining to a peer + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + } + + // This object holds bgp information pertaining to a peer with ip container peer-items { list Peer-list { key "addr"; - // Added containment: Prefix=peer - // Acquired From Package bgp uses bgp_Peer-group; + description "BGP Peer: BGP information pertaining to a peer with ip list"; + } + description "BGP Peer: BGP information pertaining to a peer with ip"; + } + + // This object holds bgp information pertaining to a peer with intf + container peerif-items { + list PeerIf-list { + key "id"; + + uses bgp_PeerIf-group; + description "BGP Peer: BGP information pertaining to a peer with interface list"; } + description "BGP Peer: BGP information pertaining to a peer with interface"; + } + + // This object holds Bgp's Segment Routing configurations + container segrt-items { + list SgmtRtg-list { + key "sr"; + + uses bgp_SgmtRtg-group; + description "Object to hold BGP's MPLS Segment Routing configurations list"; + } + description "Object to hold BGP's MPLS Segment Routing configurations"; } // This object holds parameters pertaining to peer templates @@ -31730,10 +35878,10 @@ module Cisco-NX-OS-device { list PeerCont-list { key "name"; - // Added containment: Prefix=peercont - // Acquired From Package bgp uses bgp_PeerCont-group; + description "Peer Container: parameters pertaining to peer templates list"; } + description "Peer Container: parameters pertaining to peer templates"; } // This object holds parameters related to session templates @@ -31741,10 +35889,10 @@ module Cisco-NX-OS-device { list SessionCont-list { key "name"; - // Added containment: Prefix=sessioncont - // Acquired From Package bgp uses bgp_SessionCont-group; + description "Session Container: parameters related to session templates list"; } + description "Session Container: parameters related to session templates"; } // This object holds parameters pertaining to policy templates @@ -31752,147 +35900,131 @@ module Cisco-NX-OS-device { list PolicyCont-list { key "name"; - // Added containment: Prefix=policycont - // Acquired From Package bgp uses bgp_PolicyCont-group; + description "Policy Container: parameters pertaining to policy templates list"; } + description "Policy Container: parameters pertaining to policy templates"; } } grouping bgp_RtCtrl-group { + description "Route Control Information"; // Advertise only routes that are programmed in hardware to peers - // Type is an MO-Defined-Type leaf supprRt { + + type bgp_AdminSt; + default "enabled"; description "Suppress Routes: Advertise only routes that are programmed in hardware to peers"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; } // Generate system message when any neighbor state changes - // Type is an MO-Defined-Type leaf logNeighborChanges { - description "Log Neighbor Changes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Log Neighbor Changes"; } // Enforce the neighbor AS to be the first AS listed in the AS_path attribute for eBGP. - // Type is an MO-Defined-Type leaf enforceFirstAs { - description "Enforce First AS For EBgp"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "Enforce First AS For EBgp"; } // Handle BGP neighbor down event - // Type is an MO-Defined-Type leaf fibAccelerate { - description "Accelerate the hardware updates for IP/IPv6 adjacencies for neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Accelerate the hardware updates for IP/IPv6 adjacencies for neighbor"; } } grouping bgp_PathCtrl-group { + description "Path Control"; // Compare MED on paths from different AS - // Type is an MO-Defined-Type leaf alwaysCompMed { - description "Compare MED on paths from different AS"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare MED on paths from different AS"; } // Allow load sharing across providers with different AS paths - // Type is an MO-Defined-Type leaf asPathMultipathRelax { - description "Relax AS-Path restriction when choosing multipaths"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Relax AS-Path restriction when choosing multipaths"; } // Allow load sharing across providers with different AS paths - // Type is an MO-Defined-Type leaf asPathIgnore { - description "Ignore AS-Path during bestpath selection"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore AS-Path during bestpath selection"; } // Compare router-id for identical EBGP paths - // Type is an MO-Defined-Type leaf compRtrId { - description "Compare Router Id"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare Router Id"; } // Compare neighbor-id for identical EBGP paths - // Type is an MO-Defined-Type leaf compNbrId { - description "Compare Neighbor Id"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare Neighbor Id"; } // Ignore cost communities - // Type is an MO-Defined-Type leaf costCommunityIgnore { - description "Ignore Cost Communities"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore Cost Communities"; } // Compare MED for paths originated from within a confederation - // Type is an MO-Defined-Type leaf medConfed { - description "Med Confed"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare MED only from paths originated from within a confederation"; } // Treat missing MED as highest MED - // Type is an MO-Defined-Type leaf medMissingAsWorst { - description "Med Missing As Worst"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Med Missing As Worst"; } // Do not always pick the best-MED path among paths from same AS - // Type is an MO-Defined-Type leaf medNonDeter { + + type bgp_AdminSt; description "Med Non-Deterministic"; + } + + // Ignore IGP metric for next-hop during bestpath calculation + leaf igpMetricIgnore { - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore IGP metric for next-hop during bestpath calculation"; } } grouping bgp_Confederation-group { + description "AS confederation parameters"; // Autonomous system number - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // AS Confed are needed to club ASNs together to look like a single ASN @@ -31900,352 +36032,318 @@ module Cisco-NX-OS-device { list ConfederationPeer-list { key "asn"; - // Added containment: Prefix=peer - // Acquired From Package bgp uses bgp_ConfederationPeer-group; + description "Peer ASs in BGP confederation list"; } + description "Peer ASs in BGP confederation"; } } grouping bgp_ConfederationPeer-group { + description "Peer ASs in BGP confederation"; // Autonomous system in the confederation - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } } grouping bgp_DomAf-group { + description "Address Family Information"; // Maximum number of equal-cost paths for load sharing - // Type is an MO-Defined-Type leaf maxEcmp { - description "Max ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max ECMP"; } // Maximum number of equal-cost paths for eBGP - // Type is an MO-Defined-Type leaf maxExtEcmp { - description "Max External ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max External ECMP"; } // Maximum number of equal-cost paths for eiBGP - // Type is an MO-Defined-Type leaf maxExtIntEcmp { - description "Max External Internal ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max External Internal ECMP"; } // Maximum number of equal-cost multipath for local and remote paths - // Type is an MO-Defined-Type leaf maxMxdEcmp { - description "Max mixed equal-cost multipath for local and remote paths"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max mixed equal-cost multipath for local and remote paths"; } leaf tmrBstpthDfr { type uint32 { range "0..3000"; } + description "Configure bgp related timers"; } leaf tmrMax { type uint32 { range "0..300000"; } + description "Configure bestpath defer timer"; } leaf tblMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map name"; } // Configure table-map for Selective route download - // Type is an MO-Defined-Type leaf tblMapFltr { - description "Selective route download"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Selective route download"; } // Allow VNI in Ethernet Tag field in EVPN route - // Type is an MO-Defined-Type leaf vniEthTag { - description "Allow VNI in Ethernet Tag field in EVPN route"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Allow VNI in Ethernet Tag field in EVPN route"; } // Advertise extra EVPN RT-2 with system MAC - // Type is an MO-Defined-Type leaf advSysMac { - description "Advertise extra EVPN RT-2 with system MAC"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise extra EVPN RT-2 with system MAC"; } leaf bestPathSigTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Best Path Signalled Timestamp"; } leaf bestPathCmpltTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Best Path Completed Timestamp"; } // Critical NH timeout - // Type is an MO-Defined-Type // Default value handled in local MO type leaf critNhTimeout { - description "Critical Next-hop Trigger-delay"; // Type is a Local-MO-Defined-Type type bgp_NhTimeout_DomAf_critNhTimeout; + description "Critical Next-hop Trigger-delay"; } // Non-Critical NH timeout - // Type is an MO-Defined-Type // Default value handled in local MO type leaf nonCritNhTimeout { - description "Non-Critical Next-hop Trigger-delay"; // Type is a Local-MO-Defined-Type type bgp_NhTimeout_DomAf_nonCritNhTimeout; + description "Non-Critical Next-hop Trigger-delay"; } // Local BGP table version - // Type is an MO-Defined-Type leaf tblVer { config "false"; - description "Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Table Version"; } leaf nhRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Next hop route map name"; } // client-to-client route reflection - // Type is an MO-Defined-Type leaf clReflection { - description "client-to-client Reflection of routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "client-to-client Reflection of routes"; } // Advertise l2vpn evpn - Originate Type 5 L2VPN EVPN route // correspoinding to VRF route or not - // Type is an MO-Defined-Type leaf advertL2vpnEvpn { - description "Advertise L2vpn Evpn"; - // Type is an MO-Defined-Type type bgp_AdvertL2vpnEvpn; + description "Advertise L2vpn Evpn"; } - // Type is an MO-Defined-Type leaf allocLblAll { - description "Allocate labels for all routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Allocate labels for all routes"; } leaf allocLblRtMap { type string { + pattern ".*[!-~]{0,63}"; } + description "Allocate labels for selective routes"; } // Configure label allocation mode - // Type is an MO-Defined-Type leaf lblAllocMod { - description "per VRF label allocation mode"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "per VRF label allocation mode"; } leaf retainRttRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Retain Route Target Route Map"; } // Retain Route Target All - // Type is an MO-Defined-Type leaf retainRttAll { - description "Retain Route Target All"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Retain Route Target All"; } leaf defMetric { type string { + pattern "0*((429496729[0-5])|(42949672[0-8]\\d)|(4294967[01]\\d{2})|(429496[0-6]\\d{3})|(42949[0-5]\\d{4})|(4294[0-8]\\d{5})|(429[0-3]\\d{6})|(42[0-8]\\d{7})|(4[01]\\d{8})|([1-3]\\d{9})|\\d{0,9})"; } + description "Default Metric"; } // Local BGP table Id - // Type is an MO-Defined-Type leaf tblId { config "false"; - description "Table Id in hex display"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Table Id in hex display"; } // Local BGP table state - // Type is an MO-Defined-Type leaf tblSt { config "false"; - description "Table State"; - // Type is an MO-Defined-Type type bgp_DomOperSt; + description "Local BGP table state"; } // Number of Peers - // Type is an MO-Defined-Type leaf numPeers { config "false"; - description "Number of Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Peers"; } // Number of Active Peers - // Type is an MO-Defined-Type leaf numPeersActive { config "false"; - description "Number of Active Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Active Peers"; } // Number of Routes - // Type is an MO-Defined-Type leaf numRoutes { config "false"; - description "Number of Routes"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of Routes"; } // Number of Paths - // Type is an MO-Defined-Type leaf numPaths { config "false"; - description "Number of Paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of Paths"; } leaf numNetworks { config "false"; type uint32; + description "Number of Networks"; } leaf numAggregates { config "false"; type uint32; + description "Number of Aggregates"; } // default-information originate command - // Type is an MO-Defined-Type leaf defInfOriginate { - description "default-information originate"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "default-information originate"; } leaf defInfOrigRd { type mtx_array_community; + description "Default-information Originate always Route Distinguisher"; } leaf defInfOrigRtt { type mtx_array_community; + description "Default-information Originate always Route Target"; } // Dampen IGP metric - // Type is an MO-Defined-Type leaf igpMetric { - description "Dampen IGP metric-related changes"; - // Type is an MO-Defined-Type type bgp_igpMetric; + description "Dampen IGP metric-related changes"; } // Suppress inactive - // Type is an MO-Defined-Type leaf supprInactive { - description "Suppress Inactive"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise only active routes to peers"; } // advertise-pip - // Type is an MO-Defined-Type leaf advPip { - description "Advertise physical IP for type-5 routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise physical IP for type-5 routes"; } // Export Gateway IP to in Type-5 routes to neighbor - // Type is an MO-Defined-Type leaf exportGwIp { + + type bgp_AdminSt; description "Export Gateway IP to Type-5 EVPN routes for VRF"; + } + + // Wait for IGP convergence before starting bestpath computation + leaf waitIgpConv { - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Delay initial bestpath until redistributed IGPs have converged"; } - // Inherited From nw:Conn - // Modified by Override: bgp:DomAf->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "bgp DomAf"; + // Allow allocation of option B labels + leaf allocLblOptB { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_AdminSt; + default "enabled"; + description "Allow allocation of option B labels"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } // This object holds policy to control vpn af @@ -32255,10 +36353,10 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=ctrl - // Acquired From Package bgp uses bgp_VpnCtrlP-group; + description "Virtual Private Network Control Policy list"; } + description "Virtual Private Network Control Policy"; } // Administrative distance is used by routers to select the best path when @@ -32266,17 +36364,15 @@ module Cisco-NX-OS-device { // two different routing protocols container adminDist-items { - // Added containment as a singleton: Prefix=adminDist - // Acquired From Package bgp uses bgp_AdminDist-group; + description "Administrative Distance: This is the distance used by routers to select the best path when there are two or more different routes to the same destination from two different routing protocols."; } // Dampening is a BGP feature to suppress unstable routes container dampening-items { - // Added containment as a singleton: Prefix=dampening - // Acquired From Package bgp uses bgp_DampeningCtrl-group; + description "Dampening Control: BGP route flap dampening parameters"; } // Bgp advertise to IP @@ -32284,10 +36380,10 @@ module Cisco-NX-OS-device { list AdvPrefix-list { key "addr"; - // Added containment: Prefix=prefix - // Acquired From Package bgp uses bgp_AdvPrefix-group; + description "Advertise To Prefix list"; } + description "Advertise To Prefix"; } // This object holds per address family per bgp vrf aggregate address information @@ -32295,10 +36391,10 @@ module Cisco-NX-OS-device { list AggAddr-list { key "addr"; - // Added containment: Prefix=aggaddr - // Acquired From Package bgp uses bgp_AggAddr-group; + description "Configure BGP aggregate prefixes list"; } + description "Configure BGP aggregate prefixes"; } // BGP Additional Paths feature allows the advertisement of multiple @@ -32306,273 +36402,327 @@ module Cisco-NX-OS-device { // the new paths implicitly replacing any previous paths container addlpath-items { - // Added containment as a singleton: Prefix=addlpath - // Acquired From Package bgp uses bgp_AddlPath-group; + description + "Additional Paths: Advertise paths through the same + peering session for the same prefix without the new + implicitly replacing any previous paths."; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } // Show only Imported Routes + // Ephemeral data container importedrt-items { - // Added containment as a singleton: Prefix=importedrt - // Acquired From Package bgp uses bgp_ImportedRoutes-group; + description "Display Imported Routes"; } // Show only Self-originated Routes + // Ephemeral data container selforigrt-items { - // Added containment as a singleton: Prefix=selforigrt - // Acquired From Package bgp uses bgp_SelfOrigRoutes-group; + description "Display Self-originated Routes"; } // Show only Injected Routes + // Ephemeral data container injectedrt-items { - // Added containment as a singleton: Prefix=injectedrt - // Acquired From Package bgp uses bgp_InjectedRoutes-group; + description "Display Injected Routes"; } + // Ephemeral data container exportedrt-items { - // Added containment as a singleton: Prefix=exportedrt - // Acquired From Package bgp uses bgp_ExportedRoutes-group; + description "Display Exported Routes"; } // Show only Received Paths Routes + // Ephemeral data container rcvdpathsrt-items { - // Added containment as a singleton: Prefix=rcvdpathsrt - // Acquired From Package bgp uses bgp_RcvdPathsRoutes-group; + description "Display Received Paths Routes"; } // This object holds the bgp routes matching route-map + // Ephemeral data container rtmap-items { + + // Ephemeral data list RtMapRoutes-list { config "false"; key "name"; - // Added containment: Prefix=rtmap - // Acquired From Package bgp uses bgp_RtMapRoutes-group; + description "Display Routes matching rtmap name list"; } + description "Display Routes matching rtmap name"; } // This object holds the bgp routes matching filter-list + // Ephemeral data container fltrlist-items { + + // Ephemeral data list FltrListRoutes-list { config "false"; key "name"; - // Added containment: Prefix=fltrlist - // Acquired From Package bgp uses bgp_FltrListRoutes-group; + description "Display Routes matching filter-list name list"; } + description "Display Routes matching filter-list name"; } // This object holds the bgp routes matching prefix-list + // Ephemeral data container pfxlist-items { + + // Ephemeral data list PfxListRoutes-list { config "false"; key "name"; - // Added containment: Prefix=pfxlist - // Acquired From Package bgp uses bgp_PfxListRoutes-group; + description "Display Routes matching prefix-list name list"; } + description "Display Routes matching prefix-list name"; } // Show only Dampening Paths Routes + // Ephemeral data container damppathsrt-items { - // Added containment as a singleton: Prefix=damppathsrt - // Acquired From Package bgp uses bgp_DampPathsRoutes-group; + description "Display Dampening Paths Routes"; } // Show only Dampening History Paths Routes + // Ephemeral data container damphstpathsrt-items { - // Added containment as a singleton: Prefix=damphstpathsrt - // Acquired From Package bgp uses bgp_DampHistPathsRoutes-group; + description "Display Dampening History Paths Routes"; } // Show Routes by route-type + // Ephemeral data container rttype-items { + + // Ephemeral data list RtTypeRoutes-list { config "false"; key "rtType"; - // Added containment: Prefix=rttype - // Acquired From Package bgp uses bgp_RtTypeRoutes-group; + description "Display routes by route-type 1-5 list"; } + description "Display routes by route-type 1-5"; } // Show Evpn routes by vni-id + // Ephemeral data container vnid-items { + + // Ephemeral data list EvpnVnIdRoutes-list { config "false"; key "vnid"; - // Added containment: Prefix=vnid - // Acquired From Package bgp uses bgp_EvpnVnIdRoutes-group; + description "Display Evpn routes by vni id 1-16777214 list"; } + description "Display Evpn routes by vni id 1-16777214"; } // Show Evpn routes by mac address + // Ephemeral data container mac-items { + + // Ephemeral data list EvpnMacAddrRoutes-list { config "false"; key "macaddr"; - // Added containment: Prefix=mac - // Acquired From Package bgp uses bgp_EvpnMacAddrRoutes-group; + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE list"; } + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE"; } // Show routes by RD + // Ephemeral data container rd-items { + + // Ephemeral data list RdRoutes-list { config "false"; key "rd"; - // Added containment: Prefix=rd - // Acquired From Package bgp uses bgp_RdRoutes-group; + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN list"; } + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN"; } // Show routes by exact Prefix + // Ephemeral data container pfx-items { + + // Ephemeral data list PfxRoutes-list { config "false"; key "pfx"; - // Added containment: Prefix=pfx - // Acquired From Package bgp uses bgp_PfxRoutes-group; + description "Display Prefix routes by format IPV4 and IPV6 addr list"; } + description "Display Prefix routes by format IPV4 and IPV6 addr"; } // Show Evpn routes by Ethernet Segment + // Ephemeral data container esid-items { + + // Ephemeral data list EvpnEsRoutes-list { config "false"; key "esid"; - // Added containment: Prefix=esid - // Acquired From Package bgp uses bgp_EvpnEsRoutes-group; + description "Display Evpn Ethernet Segment routes by ESID list"; } + description "Display Evpn Ethernet Segment routes by ESID"; } // Show nexthop routes + // Ephemeral data container nh-items { + + // Ephemeral data list NextHopRoutes-list { config "false"; key "pfx"; - // Added containment: Prefix=nh - // Acquired From Package bgp uses bgp_NextHopRoutes-group; + description "Display next hop routes list"; } + description "Display next hop routes"; } // Show MCAST Routes by route-type + // Ephemeral data container mrttype-items { + + // Ephemeral data list McastRtTypeRoutes-list { config "false"; key "rtType"; - // Added containment: Prefix=mrttype - // Acquired From Package bgp uses bgp_McastRtTypeRoutes-group; + description "Display MCAST routes by route-type 1-7 list"; } + description "Display MCAST routes by route-type 1-7"; } // This objects holds default route leak policy, // this is not needed for FCS in our solution container defrtleak-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package bgp uses bgp_DefRtLeakP-group; + description "Default Route Leak Policy"; } // Inter protocol route leak policy. This defines distribution @@ -32581,10 +36731,14 @@ module Cisco-NX-OS-device { list InterLeakP-list { key "proto inst"; - // Added containment: Prefix=interleak - // Acquired From Package bgp uses bgp_InterLeakP-group; + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol list"; } + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol"; } // Inject route leak policy route map @@ -32592,2447 +36746,2817 @@ module Cisco-NX-OS-device { list InjLeakP-list { key "name rtMap"; - // Added containment: Prefix=injname - // Acquired From Package bgp uses bgp_InjLeakP-group; + description "Inject Route Policy list"; } + description "Inject Route Policy"; } - } - grouping bgp_VpnCtrlP-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds Bgp's Segment Routing configurations + container segrt-items { + list SgmtRtg-list { + key "sr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_SgmtRtg-group; + description "Object to hold BGP's MPLS Segment Routing configurations list"; } + description "Object to hold BGP's MPLS Segment Routing configurations"; } + } + + grouping bgp_VpnCtrlP-group { + description "Virtual Private Network Control Policy"; // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { config "false"; - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } } grouping bgp_AdminDist-group { + description "Administrative Distance: This is the distance used by routers to select the best path when there are two or more different routes to the same destination from two different routing protocols."; // eBGP Distance - // Type is an MO-Defined-Type leaf eDist { - description "eBGP Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "eBGP Distance"; } // iBGP Distance - // Type is an MO-Defined-Type leaf iDist { - description "iBGP Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "iBGP Distance"; } // Local Distance - // Type is an MO-Defined-Type leaf localDist { - description "Local Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "Local Distance"; } } grouping bgp_DampeningCtrl-group { + description "Dampening Control: BGP route flap dampening parameters"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Apply route-map to specify dampening criteria"; } // Dampening decay half life - // Type is an MO-Defined-Type leaf halfLife { - description "Decay Half Life"; - // Type is an MO-Defined-Type type rtmap_DampHalfLife; + description "Decay Half Life, range 1-45"; } // Dampening reuse limit - // Type is an MO-Defined-Type leaf reuse { - description "Reuse Limit"; - // Type is an MO-Defined-Type type rtmap_DampReuse; + description "Dampening Reuse Limit"; } // Dampening suppress limit - // Type is an MO-Defined-Type leaf suppress { - description "Suppress Limit"; - // Type is an MO-Defined-Type type rtmap_DampSuppress; + description "Dampening Suppress Limit"; } leaf maxSupprPenalty { config "false"; type uint32; + description "Max Suppress Penalty"; } // Dampening max suppress time - // Type is an MO-Defined-Type leaf maxSuppressTime { - description "Max Suppress Time"; - // Type is an MO-Defined-Type type rtmap_DampMaxSuppressTime; + description "Max Suppress Time"; } } grouping bgp_AdvPrefix-group { + description "Advertise To Prefix"; leaf addr { type address_Ip; + description "IP address of the network or prefix to advertise"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route map to modify attributes"; } } grouping bgp_AggAddr-group { + description "Configure BGP aggregate prefixes"; leaf addr { type address_Ip; + description "Aggregate Address"; } leaf adverMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description + "Advertise Map: Route map used to select + attribute information from selected routes"; } leaf attrMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description + "Attribute Map: Route map to set attribute + information of aggregate"; } // Generate AS set path info and community info from contributing paths - // Type is an MO-Defined-Type leaf asSet { - description "AS-SET"; - // Type is an MO-Defined-Type type bgp_AsSet; + description "AS-SET"; } // Aggregate Address Summary only - // Type is an MO-Defined-Type leaf summaryOnly { - description "Summary only"; - // Type is an MO-Defined-Type type bgp_SummaryOnly; + description "Aggregate address Summary only"; } leaf supprMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Suppress Map to conditionally filter more-specific routes"; } } grouping bgp_AddlPath-group { + description + "Additional Paths: Advertise paths through the same + peering session for the same prefix without the new + implicitly replacing any previous paths."; // Capability - // Type is an MO-Defined-Type leaf capability { - description "Capability"; - // Type is an MO-Defined-Type type bgp_AddlPathCapT; + description "Additional paths capability"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route map name for path selection"; } } grouping bgp_Route-group { + description "Route"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_Path-group { + description "Path: BGP AS path information"; + + // Ephemeral data leaf peer { config "false"; type address_Ip; + description "Peer"; } // Path id - // Type is an MO-Defined-Type + // Ephemeral data leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type bgp_PathId; + description "ID"; } + + // Ephemeral data leaf nh { config "false"; type address_Ip; + description "Nexthop"; } // Nexthop metric - // Type is an MO-Defined-Type + // Ephemeral data leaf nhMetric { config "false"; - description "Nexthop Metric"; - // Type is an MO-Defined-Type type bgp_Metric; + description "Nexthop Metric"; } // Path type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type bgp_PathT; + description "Type"; } // Path status - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PathSt; + description "Operational State"; } // Path flags - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PathFlags; + description "Flags"; } // Origin - // Type is an MO-Defined-Type + // Ephemeral data leaf origin { config "false"; - description "Origin"; - // Type is an MO-Defined-Type type bgp_Origin; + description "Origin"; } // Metric - // Type is an MO-Defined-Type + // Ephemeral data leaf metric { config "false"; - description "Metric"; - // Type is an MO-Defined-Type type rtmap_Metric; + description "Metric"; } // Local preference - // Type is an MO-Defined-Type + // Ephemeral data leaf localPref { config "false"; - description "Local Preference"; - // Type is an MO-Defined-Type type rtmap_LocalPref; + description "Local Preference"; } // Weight - // Type is an MO-Defined-Type + // Ephemeral data leaf weight { config "false"; - description "Weight"; - // Type is an MO-Defined-Type type rtmap_Weight; + description "Weight"; } + + // Ephemeral data leaf aggr { config "false"; type address_Ip; + description "Aggregator"; } // Aggregator AS - // Type is an MO-Defined-Type + // Ephemeral data leaf aggrAs { config "false"; - description "Aggregator ASN"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Aggregator ASN"; } + + // Ephemeral data leaf importedRd { config "false"; type mtx_array_community; + description "Imported Src Route Distinguisher"; } + + // Ephemeral data leaf origImportedRd { config "false"; type mtx_array_community; + description "Original Imported Src Route Distinguisher"; + } + + // Ephemeral data + leaf recvd { + config "false"; + type boolean; + description "Received Unmodified Path From Adj-RIB-In"; } + + // Ephemeral data leaf unknownAttrData { config "false"; type string; + description "Unknown Attribute Data"; } // Unknown Attribute Data - // Type is an MO-Defined-Type + // Ephemeral data leaf unknownAttrLen { config "false"; - description "Unknown Attribute Length"; - // Type is an MO-Defined-Type type bgp_UnknownAttrLen; + description "Unknown Attribute Length"; + } + leaf discardedAttrData { + config "false"; + type string; + description "Discarded Attribute Data"; } + + // Discarded Attribute Data + leaf discardedAttrLen { + config "false"; + + type bgp_DiscardedAttrLen; + description "Discarded Attribute Length"; + } + + // Ephemeral data leaf regComm { config "false"; type string; + description "Community"; } + + // Ephemeral data leaf extComm { config "false"; type string; + description "Extcommunity"; } + + // Ephemeral data leaf asPath { config "false"; type string; + description "AS-Path"; } + + // Ephemeral data leaf rcvdLbl { config "false"; type string; + description "Received label"; } + + // Ephemeral data leaf originatorId { config "false"; type address_Ip; + description "Originator Id"; } + + // Ephemeral data leaf clusterLst { config "false"; type string; + description "Cluster-List"; } + + // Ephemeral data leaf peerRtrId { config "false"; type string; + description "Peer router id ipaddress"; + } + + // Ephemeral data + leaf numImported { + config "false"; + type uint16; + description "Number of imported paths in the prefix"; + } + + // Ephemeral data + leaf importedLst { + config "false"; + type string; + description "List of imported paths"; + } + + // Ephemeral data + leaf importedSrc { + config "false"; + type string; + description "Imported from source info"; + } + + // Ephemeral data + leaf origImportedSrc { + config "false"; + type string; + description "Original Imported source info"; } // This object holds the bgp path AS segment information + // Ephemeral data container seg-items { + + // Ephemeral data list AsSeg-list { config "false"; key "order"; - // Added containment: Prefix=seg - // Acquired From Package bgp uses bgp_AsSeg-group; + description + "Autonomous System Segment: BGP + Path AS Segment information. list"; } + description + "Autonomous System Segment: BGP + Path AS Segment information."; } + + // Ephemeral data container rcomm-items { + + // Ephemeral data list RegComm-list { config "false"; key "community"; - // Added containment: Prefix=rcomm - // Acquired From Package bgp uses bgp_RegComm-group; + description "Regular Community list"; } + description "Regular Community"; } + // Ephemeral data container ecomm-items { - // Added containment as a singleton: Prefix=ecomm - // Acquired From Package bgp uses bgp_ExtComm-group; + description "Extended Community"; } // Link-state Attribute + // Ephemeral data container lnkstattr-items { - // Added containment as a singleton: Prefix=lnkstattr - // Acquired From Package bgp uses bgp_LnkStAttr-group; + description "Link-state attribute"; } // Prefix-SID Attribute + // Ephemeral data container pfxsid-items { - // Added containment as a singleton: Prefix=pfxsid - // Acquired From Package bgp uses bgp_PfxSidAttr-group; + description "Prefix-SID attribute"; } // PMSI Tunnel Attribute + // Ephemeral data container pmsi-items { - // Added containment as a singleton: Prefix=pmsi - // Acquired From Package bgp uses bgp_PmsiTunAttr-group; + description "PMSI Tunnel Attribute"; } } grouping bgp_AsSeg-group { + description + "Autonomous System Segment: BGP + Path AS Segment information."; // type - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type bgp_AsSegT; + description "Type"; } // Order - // Type is an MO-Defined-Type + // Ephemeral data leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type bgp_Order; + description "Order"; } // This object holds the AS segment items + // Ephemeral data container asn-items { + + // Ephemeral data list AsItem-list { config "false"; key "order"; - // Added containment: Prefix=asn - // Acquired From Package bgp uses bgp_AsItem-group; + description "Autonomous System Item list"; } + description "Autonomous System Item"; } } grouping bgp_AsItem-group { + description "Autonomous System Item"; // Order - // Type is an MO-Defined-Type + // Ephemeral data leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type bgp_Order; + description "Order"; } // AS number - // Type is an MO-Defined-Type + // Ephemeral data leaf asn { config "false"; - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } } grouping bgp_RegComm-group { + description "Regular Community"; + + // Ephemeral data leaf community { config "false"; type mtx_array_community; + description "Community"; } } grouping bgp_ExtComm-group { + description "Extended Community"; + + // Ephemeral data leaf encap { config "false"; type string; + description "Encapsulation"; } + + // Ephemeral data leaf rtrMac { config "false"; type address_Mac; + description "Router Mac address from nve"; } // Extended community route-target attribute entry + // Ephemeral data container rt-items { + + // Ephemeral data list ExtCommRt-list { config "false"; key "community"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_ExtCommRt-group; + description "Route-target attribute Extended Community list"; } + description "Route-target attribute Extended Community"; } } grouping bgp_ExtCommRt-group { + description "Route-target attribute Extended Community"; + + // Ephemeral data leaf community { config "false"; type mtx_array_community; + description "Community"; } } grouping bgp_LnkStAttr-group { + description "Link-state attribute"; // Link attribute TLV flags - // Type is an MO-Defined-Type + // Ephemeral data leaf lnkAttrFlags { config "false"; - description "Link-state Link TLV attribute flags"; - // Type is an MO-Defined-Type type bgp_LnkLsAttrFlags; + description "Link-state Link TLV attribute flags"; } + + // Ephemeral data leaf attrLen { config "false"; type uint16; + description "Link-state attribute length"; } // Link-state Attribute Entry + // Ephemeral data container tlv-items { + + // Ephemeral data list LnkStAttrEntry-list { config "false"; key "type"; - // Added containment: Prefix=tlv - // Acquired From Package bgp uses bgp_LnkStAttrEntry-group; + description "Link-state attributei entry list"; } + description "Link-state attributei entry"; } } grouping bgp_LnkStAttrEntry-group { + description "Link-state attributei entry"; // Type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Link-state TLV code point"; - // Type is an MO-Defined-Type type bgp_LsAttrEntryType; + description "Link-state TLV code point"; } + + // Ephemeral data leaf val { config "false"; type string; + description "Value"; } } grouping bgp_PfxSidAttr-group { + description "Prefix-SID attribute"; + + // Ephemeral data leaf pfxSidAttrLen { config "false"; type uint16; + description "Prefix-SID attribute length"; } // Prefix-SID Attribute Entry + // Ephemeral data container tlv-items { + + // Ephemeral data list PfxSidAttrEntry-list { config "false"; key "type"; - // Added containment: Prefix=tlv - // Acquired From Package bgp uses bgp_PfxSidAttrEntry-group; + description "Prefix-SID attribute entry list"; } + description "Prefix-SID attribute entry"; } } grouping bgp_PfxSidAttrEntry-group { + description "Prefix-SID attribute entry"; // Type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Link-state TLV code point"; - // Type is an MO-Defined-Type type bgp_PfxSidAttrEntryType; + description "Link-state TLV code point"; } + + // Ephemeral data leaf len { config "false"; type uint16; + description "Length"; } + + // Ephemeral data leaf val { config "false"; type string; + description "Value"; } } grouping bgp_PmsiTunAttr-group { + description "PMSI Tunnel Attribute"; + + // Ephemeral data leaf flags { config "false"; - // bits- Using string type string; + description "PMSI Tunnel Attribute Flags"; } // Tunnel Type - // Type is an MO-Defined-Type + // Ephemeral data leaf tunType { config "false"; - description "PMSI Tunnel Type"; - // Type is an MO-Defined-Type type bgp_PmsiTunType; + description "PMSI Tunnel Type"; } + + // Ephemeral data leaf lbl { config "false"; type uint32; + description "PMSI label"; } + + // Ephemeral data leaf tunId { config "false"; type address_Ip; + description "PMSI Tunnel ID"; } } grouping bgp_VpnRoute-group { + description "VPN Route information"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_LblRoute-group { + description "Labeled Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } // Labeled address-family route flags - // Type is an MO-Defined-Type + // Ephemeral data leaf rtLblAfFlags { config "false"; - description "Labeled address-family route flags"; - // Type is an MO-Defined-Type type bgp_RtLblAfFlags; + description "Labeled address-family route flags"; } + + // Ephemeral data leaf rtLblAfVer { config "false"; type uint32; + description "Labeled address-family version"; } // Local label - // Type is an MO-Defined-Type + // Ephemeral data leaf locLbl { config "false"; - description "Local label"; - // Type is an MO-Defined-Type type bgp_Lbl; + description "Local label"; } + + // Ephemeral data leaf pfxLblHoldDownDelTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Prefix label hold down delete timestamp"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_LnkStRoute-group { + description "Link State Route"; + + // Ephemeral data leaf pfx { config "false"; type string; + description "Link-state NLRI"; } // NLRI Type - // Type is an MO-Defined-Type + // Ephemeral data leaf nlriType { config "false"; - description "Link-state NLRI type"; - // Type is an MO-Defined-Type type bgp_LsNlriType; + description "Link-state NLRI type"; } // Protocol Id - // Type is an MO-Defined-Type + // Ephemeral data leaf protoId { config "false"; - description "Link-state NLRI Protocol ID"; - // Type is an MO-Defined-Type type bgp_LsProtoId; + description "Link-state NLRI Protocol ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_EvpnRoute-group { + description "EVPN Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } + + // Ephemeral data leaf pfx { config "false"; type string; + description "EVPN prefix"; } // EVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "EVPN route-type"; - // Type is an MO-Defined-Type type bgp_EvpnRtType; + description "EVPN route-type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_MvpnRoute-group { + description "MVPN Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } + + // Ephemeral data leaf pfx { config "false"; type string; + description "MVPN NLRI"; } // MVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "MVPN route-type"; - // Type is an MO-Defined-Type type bgp_MvpnRtType; + description "MVPN route-type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_ImportedRoutes-group { + description "Display Imported Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } } grouping bgp_SelfOrigRoutes-group { + description "Display Self-originated Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_InjectedRoutes-group { + description "Display Injected Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_ExportedRoutes-group { + description "Display Exported Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } } grouping bgp_RcvdPathsRoutes-group { + description "Display Received Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_RtMapRoutes-group { + description "Display Routes matching rtmap name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_FltrListRoutes-group { + description "Display Routes matching filter-list name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_PfxListRoutes-group { + description "Display Routes matching prefix-list name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_DampPathsRoutes-group { + description "Display Dampening Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_DampHistPathsRoutes-group { + description "Display Dampening History Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_RtTypeRoutes-group { + description "Display routes by route-type 1-5"; // EVPN and Linkstate route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "EVPN route-type"; - // Type is an MO-Defined-Type type bgp_EvpnRtType; + description "EVPN route-type"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnVnIdRoutes-group { + description "Display Evpn routes by vni id 1-16777214"; // EVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf vnid { config "false"; - description "EVPN vnid (Value should be in the range 1-16777214 when the feature is enabled.)"; - // Type is an MO-Defined-Type type bgp_Vnid; + description "EVPN vnid (Value should be in the range 1-16777214 when the feature is enabled.)"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnMacAddrRoutes-group { + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE"; + + // Ephemeral data leaf macaddr { config "false"; type address_Mac; + description "EVPN mac address"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RdRoutes-group { + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_PfxRoutes-group { + description "Display Prefix routes by format IPV4 and IPV6 addr"; + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Evpn/LnkState Prefix"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnEsRoutes-group { + description "Display Evpn Ethernet Segment routes by ESID"; + + // Ephemeral data leaf esid { config "false"; type string { + pattern "[!-~]{1,10}"; } + description "Evpn Ethernet Segment ID"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_NextHopRoutes-group { + description "Display next hop routes"; + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_McastRtTypeRoutes-group { + description "Display MCAST routes by route-type 1-7"; // MCAST route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "MVPN route-type"; - // Type is an MO-Defined-Type type bgp_MvpnRtType; + description "MVPN route-type"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_DefRtLeakP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description "Default Route Leak Policy"; // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + default "defrt"; + description "Scope"; } leaf rtMap { type string; + description "Route Map"; } } grouping bgp_InterLeakP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol"; // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + default "inter"; + description "Scope"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map applied to redistributed routes"; } // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf proto { - description "Protocol"; - // Type is an MO-Defined-Type type rtleak_Proto; + description "Protocol"; } // Routing protocol instance, the routing instance of the // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf inst { - description "Instance"; - // Type is an MO-Defined-Type type rtleak_Inst; + description "Instance"; } // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } + description "Autonomous System Number"; + } + + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { + + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } } grouping bgp_InjLeakP-group { + description "Inject Route Policy"; // Copy attributes from aggregate - // Type is an MO-Defined-Type leaf copyAttr { - description "Copy attributes from aggregate"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Copy attributes from aggregate"; } - // Inherited From pol:Obj - // Modified by Override: bgp:InjLeakP->name - // Type is an MO-Defined-Type leaf name { - description "Inject Route Map Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{0,63}.*"; } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Inject Route Map Name"; } // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + description "Scope"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map which specifies prefixes to inject"; + } + } + + grouping bgp_SgmtRtg-group { + description "Object to hold BGP's MPLS Segment Routing configurations"; + + leaf sr { + + type bgp_SgmntRtg; + description "Support MPLS SR options in BGP's Segment-Routing"; + } + + leaf sidAllocMod { + + type bgp_AllocMod; + description "per VRF SID allocation mode, under Dom or DomAF"; + } + + // This object holds Bgp's Segment Routing Locator configuration + container loc-items { + list Locator-list { + key "name"; + + uses bgp_Locator-group; + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations list"; + } + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations"; + } + } + + grouping bgp_Locator-group { + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations"; + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Indicates whether locator state is operational"; } } grouping bgp_BmpSvr-group { + description "BMP server configuration"; // BMP server identifier - // Type is an MO-Defined-Type leaf id { - description "BMP Server Id"; - // Type is an MO-Defined-Type type bgp_SrvId; + description "BMP Server Id"; } leaf addr { type address_Ip; + description "IP address of the BMP server"; } leaf port { type uint16 { range "0..65535"; } + description "Port number of the BMP server"; } leaf descr { type string { + pattern "(.{1,80}).*|()"; } + description "BMP server description string"; } leaf refreshIntvlDelay { type uint16 { range "30..720"; } default "30"; + description "Route refresh trigger delay"; } leaf refreshIntvlSkip { type boolean; - default "true"; + default "false"; + description "Route refresh trigger skip"; } leaf delayIntvl { type uint16 { range "30..720"; } default "45"; + description "Initial connect delay"; } leaf statIntvl { type uint16 { range "0..720"; } + description "Statistics reporting interval"; } // BMP server session config - // Type is an MO-Defined-Type leaf adminSt { - description "BMP server config state"; - // Type is an MO-Defined-Type type bgp_BmpSt; + description "BMP server config state"; } // BMP server VRF config - // Type is an MO-Defined-Type leaf vrfName { - description "VRF for BMP server"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF for BMP server"; } // BMP server Source interface - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface for BMP server"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface for BMP server"; } } grouping bgp_Gr-group { + description "Graceful Restart"; // Graceful restart controls - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type bgp_GrCtrl; + description "Graceful Restart Control"; } // Restart interval - // Type is an MO-Defined-Type leaf restartIntvl { - description "Restart Time Advertised to Peer"; - // Type is an MO-Defined-Type type bgp_GrIntvl; + description "Restart Time Advertised to Peer"; } // Stale interval for routes advertised by peer - // Type is an MO-Defined-Type leaf staleIntvl { - description "Stale Time for Routes Advertised by Peer"; - // Type is an MO-Defined-Type type bgp_GrStaleIntvl; + description "Stale Time for Routes Advertised by Peer"; } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping bgp_Gs-group { + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + leaf gshutAware { + type boolean; + default "true"; + description "Lower preference of routes carrying graceful-shutdown community"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf gshutActivate { + type boolean; + description "Send graceful-shutdown community on all routes"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route Map"; } } grouping bgp_Peer-group { + description "BGP Peer: BGP information pertaining to a peer with ip"; leaf addr { type address_Ip; + description "IP Address of the neighbor"; + } + leaf password { + type string; + description "Configure a password for neighbor"; + } + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source interface of BGP session and updates"; + } + leaf dynRtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Dynamic/Prefix Peer Route Map"; + } + + // Maximum peers for prefix + leaf maxPeerCnt { + + type bgp_MaxPeerCnt; + description "Maximum Peers For Prefix"; + } + + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { + + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "(.{1,80}).*|()"; + } + description "Name"; } // Administrative state - // Type is an MO-Defined-Type leaf adminSt { - description "Administrative State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Administrative State"; } leaf asn { type string; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // Generate system message when any neighbor state changes - // Type is an MO-Defined-Type leaf logNbrChgs { - description "Log messages for Neighbor up/down events"; - // Type is an MO-Defined-Type type bgp_LogNbrSt; + description "Log messages for Neighbor up/down events"; } // Peer Fabric type - // Type is an MO-Defined-Type leaf peerType { - description "Neighbor Fabric Type"; - // Type is an MO-Defined-Type type bgp_PeerFabType; - } - leaf dynRtMap { - type string { - } - } - - // Source interface - // Type is an MO-Defined-Type - leaf srcIf { - description "Source interface of BGP session and updates"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + description "Neighbor Fabric Type"; } - // Password Encrypt Type - // Type is an MO-Defined-Type leaf passwdType { - description "Password EnCrypt Type"; - // Type is an MO-Defined-Type type bgp_PwdType; + description "Password EnCrypt Type"; } // Peer controls - // Type is an MO-Defined-Type leaf ctrl { - description "Peer Controls"; - // Type is an MO-Defined-Type type bgp_PeerControl; + description "Peer Controls"; } // eBGP Multihop - // Type is an MO-Defined-Type leaf ttl { - description "eBGP Multihop TTL value"; - // Type is an MO-Defined-Type type bgp_TtlVal; + description "eBGP Multihop TTL value"; } // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive Interval"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval"; } // Hold interval, how long you wait before you declare the // neighbor down - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold Interval"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval"; } // Connection Mode - // Type is an MO-Defined-Type leaf connMode { - description "BGP transport connection mode"; - // Type is an MO-Defined-Type type bgp_ConnMode; - } - - // Maximum peers for prefix - // Type is an MO-Defined-Type - leaf maxPeerCnt { - description "Maximum Peers For Prefix"; - - // Type is an MO-Defined-Type - type bgp_MaxPeerCnt; + description "BGP transport connection mode"; } leaf sessionContImp { type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Session Template To Import From"; } leaf peerImp { type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Template To Import From"; } // Remove Private ASN - // Type is an MO-Defined-Type leaf privateASctrl { - description "Remove private AS number from outbound updates"; - // Type is an MO-Defined-Type type bgp_PrivateASControl; + description "Remove private AS number from outbound updates"; } // Egress Peer Engineering (EPE) for neighbor - // Type is an MO-Defined-Type leaf epe { - description "Egress Peer Engineering EPE for neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; } leaf epePeerSet { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } // Low Memory Exempt - // Type is an MO-Defined-Type leaf lowMemExempt { - description "Low Memory Exempt"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Low Memory Exempt"; } // Capability Suppress - // Type is an MO-Defined-Type leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; } leaf affGrp { type uint16; + description "Affinity group for the neighbor."; } leaf ttlScrtyHops { type uint16 { range "0..254"; } + description "Enable TTL Security Mechanism"; } // bmp-activate-server 1 - // Type is an MO-Defined-Type leaf bmpSrvId1St { - description "Activate BMP Server 1"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 1"; } // bmp-activate-server 2 - // Type is an MO-Defined-Type leaf bmpSrvId2St { - description "Activate BMP Server 2"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 2"; + } + + // Dscp value, set it in tcp packets + leaf dscp { + + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } // Operational state Maximum Prefix Peers - // Type is an MO-Defined-Type leaf maxPfxPeers { config "false"; - description "Maximum Prefix Peers Count"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Maximum Prefix Peers Count"; } // Current Prefix Peers - // Type is an MO-Defined-Type leaf curPfxPeers { config "false"; - description "Current Prefix Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Current Prefix Peers Counts"; } // Active Prefix Peers - // Type is an MO-Defined-Type leaf activePfxPeers { config "false"; - description "Active Prefix Peer Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Active Prefix Peer Counts"; } // Maximum Current Peers - // Type is an MO-Defined-Type leaf maxCurPeers { config "false"; - description "Maximum Current Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Maximum Current Peers Counts"; } // Total Prefix Peers - // Type is an MO-Defined-Type leaf totalPfxPeers { config "false"; - description "Total Prefix Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Total Prefix Peers Counts"; } - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'keepalive and hold - // timer' and BFD from a template, set this property with - // values - 'timer' and 'bfd'. - // A note that any attributes configured for the neighbor - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; + // gShut Operational state + leaf gShutOperSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerCtrlType; + type bgp_AdminSt; + description "GShut Operational State"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Peer->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; + } + + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } // This object holds local AS information pertaining to a peer container localasn-items { - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } // This object holds bgp peer operational status information. - // We can potentially discover many peer entries for a given - // configured prefix peer container ent-items { list PeerEntry-list { config "false"; key "addr"; - // Added containment: Prefix=ent - // Acquired From Package bgp uses bgp_PeerEntry-group; + description + "BGP Peer Entry: BGP peer operational + status information. list"; } + description + "BGP Peer Entry: BGP peer operational + status information."; } // This object holds operational state information for // bgp segment routing egress peer engineering container epe-items { - // Added containment as a singleton: Prefix=epe - // Acquired From Package bgp uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } // This object holds per address family bgp peer information @@ -35040,306 +39564,300 @@ module Cisco-NX-OS-device { list PeerAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_PeerAf-group; + description "Peer Address Family list"; } + description "Peer Address Family"; + } + } + + grouping bgp_PathAttr-group { + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; + + // Attribute value + leaf fltrType { + + type bgp_AttrFltrType; + description "Specify type of action performed on the filtered BGP Update Message"; + } + + // This objects holds path-attribute value per neighbor + container dir-items { + list FltrAttr-list { + key "direction startVal endVal"; + + uses bgp_FltrAttr-group; + description "Specify a range of attributes to filter the BGP Update message list"; + } + description "Specify a range of attributes to filter the BGP Update message"; + } + } + + grouping bgp_FltrAttr-group { + description "Specify a range of attributes to filter the BGP Update message"; + + // Attribute value + leaf startVal { + + type bgp_AttrTypes; + description "Specify the start of the range of attributes"; + } + + leaf endVal { + + type bgp_AttrTypes; + description "Specify the end of the range of attributes"; + } + + leaf direction { + + type bgp_AttrFltrDir; + description "Specify the filter direction of the BGP Update messages"; + } + + leaf inheritFltrAttrCtrl { + + type bgp_FltrSt; + description "Specify the State of the filter. Whether its enabled or disabled. A Filter can only be disabled when peer inherits"; } } grouping bgp_LocalAsn-group { + description "Local AS: local AS information pertaining to a peer"; // Local ASN - // Type is an MO-Defined-Type leaf localAsn { - description "Local Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Local Autonomous System Number"; } // local ASN config - // Type is an MO-Defined-Type leaf asnPropagate { - description "ASN Propagation"; - // Type is an MO-Defined-Type type bgp_AsnPropagation; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "ASN Propagation"; } } grouping bgp_PeerEntry-group { + description + "BGP Peer Entry: BGP peer operational + status information."; + leaf addr { + config "false"; + type address_Ip; + description "IP Address of Peer"; + } // Peer Type - // Type is an MO-Defined-Type leaf type { config "false"; - description "Peer Link Type"; - // Type is an MO-Defined-Type type bgp_PeerType; - } - leaf addr { - config "false"; - type address_Ip; + description "Peer Link Type"; } // Peer router id - // Type is an MO-Defined-Type leaf rtrId { config "false"; - description "Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Router ID"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PeerOperSt; + description "Operational State"; } // Previous Operational state - // Type is an MO-Defined-Type leaf prevOperSt { config "false"; - description "Previous Operational State"; - // Type is an MO-Defined-Type type bgp_PeerOperSt; + description "Previous Operational State"; } // Shut state qualifier - // Type is an MO-Defined-Type leaf shutStQual { config "false"; - description "Shut State Qualifier"; - // Type is an MO-Defined-Type type bgp_ShutStQual; + description "Shut State Qualifier"; } leaf lastFlapTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Flap Timestamp"; } leaf maxConnRetryIntvl { config "false"; type uint16; default "60"; + description "Max Connect Retry Interval"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PeerFlags; + description "Flags"; } // Advertised capability - // Type is an MO-Defined-Type leaf advCap { config "false"; - description "Advertised Capability"; - // Type is an MO-Defined-Type type bgp_CapT; + description "Advertised Capability"; } // Received capability - // Type is an MO-Defined-Type leaf rcvCap { config "false"; - description "Received Capability"; - // Type is an MO-Defined-Type type bgp_CapT; + description "Received Capability"; } // Connected interface - // Type is an MO-Defined-Type leaf connIf { config "false"; - description "Directly Attached Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Directly Attached Interface"; } // Negotiated hold time - // Type is an MO-Defined-Type leaf holdIntvl { config "false"; - description "Hold Interval in secs"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval in secs"; } // Negotiated keepalive interval - // Type is an MO-Defined-Type leaf kaIntvl { config "false"; - description "Keepalive Interval in secs"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval in secs"; } leaf localIp { config "false"; type address_Ip; + description "Local IP"; } // Local L4 port - // Type is an MO-Defined-Type leaf localPort { config "false"; - description "Local Port"; - // Type is an MO-Defined-Type type l4_Port; + description "Local port number of the local host"; } // Remote L4 port - // Type is an MO-Defined-Type leaf remotePort { config "false"; - description "Remote Port"; - // Type is an MO-Defined-Type type l4_Port; + description "Remote port number of the remote host"; } // Number of times connections established - // Type is an MO-Defined-Type leaf connEst { config "false"; - description "Connections Established"; - // Type is an MO-Defined-Type type cap_Quant; + description "Connections Established"; } // Number of times connections dropped - // Type is an MO-Defined-Type leaf connDrop { config "false"; - description "Connections Dropped"; - // Type is an MO-Defined-Type type cap_Quant; + description "Connections Dropped"; } leaf updateElapsedTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Update Received Timestamp"; } // FD to connect to peer - // Type is an MO-Defined-Type leaf fd { config "false"; - description "FD to Connect to Peer"; - // Type is an MO-Defined-Type type bgp_SockFD; + description "FD to Connect to Peer"; } // Peer Index - // Type is an MO-Defined-Type leaf peerIdx { config "false"; - description "Peer Index"; - // Type is an MO-Defined-Type type bgp_PeerIdx; + description "Peer Index"; } // Connection Attempts - // Type is an MO-Defined-Type leaf connAttempts { config "false"; - description "Connection Attempts"; - // Type is an MO-Defined-Type type bgp_ConnAttempts; + description "Connection Attempts"; } // Peer idle state reason - // Type is an MO-Defined-Type leaf stReason { config "false"; - description "Peer Idle State Reason"; - // Type is an MO-Defined-Type type bgp_StReason; + description "Peer Idle State Reason"; } // Indicate if password is set - // Type is an MO-Defined-Type leaf passwdSet { config "false"; - description "TCP MD5 Authentication"; - // Type is an MO-Defined-Type type bgp_PasswdSet; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "TCP MD5 Authentication"; } // This objects hold graceful restart operational information. This // is valid per neighbor container gr-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package bgp uses bgp_GrSt-group; + description "Graceful Restart State"; } // This object holds peer event information container ev-items { - // Added containment as a singleton: Prefix=ev - // Acquired From Package bgp uses bgp_PeerEvents-group; + description "Peer Events"; } // This object holds operational state information for // bgp segment routing egress peer engineering container epe-items { - // Added containment as a singleton: Prefix=epe - // Acquired From Package bgp uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } // This object holds bgp peer af operational status info @@ -35348,192 +39866,179 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_PeerAfEntry-group; + description "BGP Peer Address Family Entry list"; } + description "BGP Peer Address Family Entry"; } // This object holds bgp peer statistics operational information. // This is a singleton within a peerEntry container peerstats-items { - // Added containment as a singleton: Prefix=peerstats - // Acquired From Package bgp uses bgp_PeerEntryStats-group; + description "Peer Entry Statistics"; } } grouping bgp_GrSt-group { + description "Graceful Restart State"; // Graceful state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PeerGrSt; + description "Operational State"; } // Graceful restart interval advertised by peer - // Type is an MO-Defined-Type leaf restartIntvl { config "false"; - description "Restart Interval"; - // Type is an MO-Defined-Type - type bgp_GrIntvl; + type bgp_PeerGrIntvl; + description "Peer Graceful Restart Interval"; } leaf grTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Graceful Restart Timestamp"; } } grouping bgp_PeerEvents-group { + description "Peer Events"; // Major error during last reset sent - // Type is an MO-Defined-Type leaf majErrRstSent { config "false"; - description "Major Error During Last Resent Sent"; - // Type is an MO-Defined-Type type bgp_MajNotifErr; + description "Major Error During Last Resent Sent"; } // Minor error during last reset sent - // Type is an MO-Defined-Type leaf minErrRstSent { config "false"; - description "Minor Error During Last Reset Sent"; - // Type is an MO-Defined-Type type bgp_MinNotifErr; + description "Minor Error During Last Reset Sent"; } // Last error value sent - // Type is an MO-Defined-Type leaf lastErrValSent { config "false"; - description "Last Error Value Sent"; - // Type is an MO-Defined-Type type bgp_LastErrVal; + description "Last Error Value Sent"; } leaf rstSentTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reset Sent Timestamp"; } // Major error during last reset received - // Type is an MO-Defined-Type leaf majErrRstRsvd { config "false"; - description "Major Error During Last Reset Received"; - // Type is an MO-Defined-Type type bgp_MajNotifErr; + description "Major Error During Last Reset Received"; } // Minor error during last reset received - // Type is an MO-Defined-Type leaf minErrRstRsvd { config "false"; - description "Minor Error During Last Reset Received"; - // Type is an MO-Defined-Type type bgp_MinNotifErr; + description "Minor Error During Last Reset Received"; } // Last error value received - // Type is an MO-Defined-Type leaf lastErrValRsvd { config "false"; - description "Last Error Value Received"; - // Type is an MO-Defined-Type type bgp_LastErrVal; + description "Last Error Value Received"; } leaf rstRsvdTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reset Received Timestamp"; } // Last error length received - // Type is an MO-Defined-Type leaf lastErrLenRsvd { config "false"; - description "Last Error Length Received"; - // Type is an MO-Defined-Type type bgp_LastErrLen; + description "Last Error Length Received"; } // Last error length sent - // Type is an MO-Defined-Type leaf lastErrLenSent { config "false"; - description "Last Error Length Sent"; - // Type is an MO-Defined-Type type bgp_LastErrLen; + description "Last Error Length Sent"; } leaf lastErrDataRsvd { config "false"; type string; + description "Last Error Data Received"; } leaf lastErrDataSent { config "false"; type string; + description "Last Error Data Sent"; } } grouping bgp_PeerEpeEntry-group { + description "BGP Peer Egress Peer Engineering Entry"; // Egress peer engineering - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Egress Peer Engineering State"; - // Type is an MO-Defined-Type type bgp_EgressPeerEng; + description "Egress Peer Engineering State"; } leaf sid { config "false"; type uint32; + description "EPE Peer Segment ID"; } leaf rpcSetID { config "false"; type uint32; + description "EPE Peer RPC Set ID"; } leaf peerSetName { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "EPE Peer Set Name"; } leaf peerSetSid { config "false"; type uint32; + description "EPE Peer Set Segment ID"; } leaf peerSetRpcSetID { config "false"; type uint32; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "EPE Peer Set RPC Set ID"; } // Egress Peer Engineering Peer Adjacencies @@ -35542,506 +40047,466 @@ module Cisco-NX-OS-device { config "false"; key "rpcSetID"; - // Added containment: Prefix=epeadj - // Acquired From Package bgp uses bgp_PeerEpeAdj-group; + description "Egress Peer Engineering Peer Adjacencies list"; } + description "Egress Peer Engineering Peer Adjacencies"; } } grouping bgp_PeerEpeAdj-group { + description "Egress Peer Engineering Peer Adjacencies"; leaf localAddr { config "false"; type address_Ip; + description "Local IP Address"; } leaf remoteAddr { config "false"; type address_Ip; + description "Remote IP Address"; } // Interface index - // Type is an MO-Defined-Type leaf ifIndex { config "false"; - description "Interface Index"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Index"; } leaf rpcSetID { config "false"; type uint32; + description "RPC Set ID"; } leaf sid { config "false"; type uint32; + description "Adjcency Segment ID"; } } grouping bgp_PeerAfEntry-group { + description "BGP Peer Address Family Entry"; // Local BGP table version - // Type is an MO-Defined-Type leaf tblVer { config "false"; - description "Local BGP Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Local BGP Table Version"; } // Peer table version - // Type is an MO-Defined-Type leaf peerTblVer { config "false"; - description "Peer Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Peer Table Version"; } // Table state - // Type is an MO-Defined-Type leaf tblSt { config "false"; - description "Table State"; - // Type is an MO-Defined-Type type bgp_TblSt; + description "Table State"; } // Number of accepted paths - // Type is an MO-Defined-Type leaf acceptedPaths { config "false"; - description "Number of accepted paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of accepted paths"; } // Number of denied paths - // Type is an MO-Defined-Type leaf deniedPaths { config "false"; - description "Number of denied paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of denied paths"; } // Number of withDrawn paths - // Type is an MO-Defined-Type leaf withDrawnPaths { config "false"; + + type bgp_NumPaths; description "Number of withDrawn paths"; + } + + // Number of treatAsWithdrawn paths + leaf treatAswithDrawnPaths { + config "false"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of treat-as-withdrawn paths"; } // Memory consumed by the number of accepted paths - // Type is an MO-Defined-Type leaf memAccPaths { config "false"; - description "Memory consumed by the number of accepted paths"; - // Type is an MO-Defined-Type type bgp_MemConsumed; + description "Memory consumed by the number of accepted paths"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PeerAfFlags; + description "Flags"; } // Prefixes Sent to peer - // Type is an MO-Defined-Type leaf pfxSent { config "false"; - description "Prefixes sent to peer"; - // Type is an MO-Defined-Type type bgp_PfxSent; + description "Prefixes sent to peer"; } // Prefixes Saved from peer - // Type is an MO-Defined-Type leaf pfxSaved { config "false"; - description "Prefixes saved from peer"; - // Type is an MO-Defined-Type type bgp_PfxSaved; + description "Prefixes saved from peer"; } // Prefixes Flushed from peer - // Type is an MO-Defined-Type leaf pfxFlushed { config "false"; - description "Prefixes flushed from peer"; - // Type is an MO-Defined-Type type bgp_PfxFlushed; + description "Prefixes flushed from peer"; } leaf lastEorRcvdTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last EOR Received Timestamp"; } leaf firstEorRcvdTs { config "false"; - type string; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "First EOR Received Timestamp"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { config "false"; - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } } grouping bgp_PeerEntryStats-group { + description "Peer Entry Statistics"; // BGP Peer Stats Number of BGP Open Messages sent - // Type is an MO-Defined-Type leaf openSent { config "false"; - description "Number of Open Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Open Messages Sent"; } // Number of BGP Open Messages received - // Type is an MO-Defined-Type leaf openRcvd { config "false"; - description "Number of Open Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Open Messages Received"; } // Number of BGP Update Messages sent - // Type is an MO-Defined-Type leaf updateSent { config "false"; - description "Number of Update Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Update Messages Sent"; } // Number of BGP Update Messages received - // Type is an MO-Defined-Type leaf updateRcvd { config "false"; - description "Number of Update Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Update Messages Received"; } // Number of BGP Keepalive Messages sent - // Type is an MO-Defined-Type leaf kaSent { config "false"; - description "Number of Keepalive Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Keepalive Messages Sent"; } // Number of BGP Keepalive Messages received - // Type is an MO-Defined-Type leaf kaRcvd { config "false"; - description "Number of Keepalive Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Keepalive Messages Received"; } // Number of BGP Route Refresh Messages sent - // Type is an MO-Defined-Type leaf routeRefreshSent { config "false"; - description "Number of Route Refresh Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Route Refresh Messages Sent"; } // Number of BGP Route Refresh Messages received - // Type is an MO-Defined-Type leaf routeRefreshRcvd { config "false"; - description "Number of Route Refresh Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Route Refresh Messages Received"; } // Number of BGP Capability Messages sent - // Type is an MO-Defined-Type leaf capSent { config "false"; - description "Number of Capability Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Capability Messages Sent"; } // Number of BGP Capability Messages received - // Type is an MO-Defined-Type leaf capRcvd { config "false"; - description "Number of Capability Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Capability Messages Received"; } // Number of BGP Notification Messages sent - // Type is an MO-Defined-Type leaf notifSent { config "false"; - description "Number of Notification Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Notification Messages Sent"; } // Number of BGP Notification Messages received - // Type is an MO-Defined-Type leaf notifRcvd { config "false"; - description "Number of Notification Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Notification Messages Received"; } // Number of BGP Messages sent - // Type is an MO-Defined-Type leaf msgSent { config "false"; - description "Number of Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Messages Sent"; } // Number of BGP Messages received - // Type is an MO-Defined-Type leaf msgRcvd { config "false"; - description "Number of Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Messages Received"; } // Number of BGP Message Bytes sent - // Type is an MO-Defined-Type leaf byteSent { config "false"; - description "Number of Bytes Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Bytes Sent"; } // Number of BGP Message Bytes received - // Type is an MO-Defined-Type leaf byteRcvd { config "false"; - description "Number of Bytes Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Bytes Received"; } // Bytes in send queue - // Type is an MO-Defined-Type leaf byteInSendQ { config "false"; - description "Bytes in Send Queue"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Bytes in Send Queue"; } // Bytes in receive queue - // Type is an MO-Defined-Type leaf byteInRecvQ { config "false"; - description "Bytes in Receive Queue"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Bytes in Receive Queue"; } leaf connectRetryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Connect Retry Timestamp"; } leaf kaTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Keepalive Timestamp"; + } + + // Total Discarded Attributes + leaf totalDiscardedAttributes { + config "false"; + + type bgp_PeerCount; + description "Total number of attributes discarded"; } } grouping bgp_PeerAf-group { + description "Peer Address Family"; // Peer address family controls - // Type is an MO-Defined-Type leaf ctrl { - description "Peer address-family control"; - // Type is an MO-Defined-Type type bgp_PeerAfControl; + description "Peer address-family control"; } leaf allowedSelfAsCnt { type uint8 { range "0..10"; } default "0"; + description "Allowed Self AS Count"; } // Soft Reconfiguration - // Type is an MO-Defined-Type leaf softReconfigBackup { - description "Soft Reconfiguration"; - // Type is an MO-Defined-Type type bgp_SoftReconfigBackup; + description "Soft Reconfiguration"; } // Neighbor advertisement interval - // Type is an MO-Defined-Type leaf advIntvl { - description "Neighbor advertisement interval"; - // Type is an MO-Defined-Type type bgp_AdvInterval; + description "Neighbor advertisement interval"; } - // Type is an MO-Defined-Type leaf defOrg { - description "Default Originate is enabled"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Default Originate is enabled"; } leaf defOrgRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Default Originate Route Map"; } // Capability Additional Paths - // Type is an MO-Defined-Type leaf capAddlPaths { - description "Capability Additional Paths"; - // Type is an MO-Defined-Type type bgp_CapAddlPathCapT; + description "Capability Additional Paths"; } leaf unSupprMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map to selectively unsuppress suppressed routes"; } // as-override - // Type is an MO-Defined-Type leaf asOverride { - description "Override matching AS-number while sending update"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Override matching AS-number while sending update"; } // next-hop-third-party - // Type is an MO-Defined-Type leaf nhThirdparty { - description "Compute a third-party nexthop if possible"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "Compute a third-party nexthop if possible"; } leaf wght { type string { + pattern ".*\\d*.*"; } + description "Weight for the neighbor."; } leaf soo { type mtx_array_community; + description "Site-of-origin extcommunity"; } // Send-community standard - // Type is an MO-Defined-Type leaf sendComStd { - description "Send-community standard"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Send-community standard"; } // Send-community extended - // Type is an MO-Defined-Type leaf sendComExt { - description "Send-community extended"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Send-community extended"; } // encapsulation mpls for L2Vpn Evpn PeerAf - // Type is an MO-Defined-Type leaf encapMpls { - description "Configure encapsulation type for EVPN routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Configure encapsulation type for EVPN routes"; } // rewrite-evpn-rt-asn + rewrite-rt-asn - // Type is an MO-Defined-Type leaf rewriteRtAsn { - description "Auto generate RTs for EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Auto generate RTs for EBGP neighbor"; } // Advertise Gateway IP to in Type-5 routes to neighbor - // Type is an MO-Defined-Type leaf advGwIp { + + type nw_AdminSt; description "Advertise Gateway IP in Type-5 routes to neighbor"; + } + + // advertise local-labeled-route + leaf advLocalLblRt { - // Type is an MO-Defined-Type type nw_AdminSt; + description "Advertise a route with local label to peer"; + } + leaf nhSelfAll { + type boolean; + description "Set address as next-hop for all routes"; } // Bits in this property represent whether to inherit or @@ -36055,36 +40520,25 @@ module Cisco-NX-OS-device { // A note that any attributes configured for the neighbor AF // take priority over any attributes inherited from a // template. - // From Interface bgp:InheritContPeerPolicyCtrl - // Type is an MO-Defined-Type leaf inheritContPeerPolicyCtrl { - description "Inherit control of peer policy parameters"; - // Type is an MO-Defined-Type type bgp_InheritContPeerPolicyCtrlType; + description "Inherit control of peer policy parameters"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PeerAf->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "bgp PeerAf"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "bgp PeerAf"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } // This policy tells on what to do when the number of prefixes @@ -36093,107 +40547,125 @@ module Cisco-NX-OS-device { // on the router container maxpfxp-items { - // Added containment as a singleton: Prefix=maxpfxp - // Acquired From Package bgp uses bgp_MaxPfxP-group; + description "Maximum Prefix Policy"; } // This object holds per advertise-map information container advtmap-items { - // Added containment as a singleton: Prefix=advtmap - // Acquired From Package bgp uses bgp_AdvtMap-group; + description "Advertise-Map: This object holds per advertise-map information."; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } + // Ephemeral data container advtdrt-items { - // Added containment as a singleton: Prefix=advtdrt - // Acquired From Package bgp uses bgp_AdvtdRoutes-group; + description "Display Advertised Routes to Peer"; } + // Ephemeral data container rcvdrt-items { - // Added containment as a singleton: Prefix=rcvdrt - // Acquired From Package bgp uses bgp_RcvdRoutes-group; + description "Display Received Routes from Peer"; } // Show only Dampening Paths Routes + // Ephemeral data container damppathsrt-items { - // Added containment as a singleton: Prefix=damppathsrt - // Acquired From Package bgp uses bgp_DampPathsRoutes-group; + description "Display Dampening Paths Routes"; } // Route control policy for routes coming/going to peers. @@ -36207,37 +40679,40 @@ module Cisco-NX-OS-device { list RtCtrlP-list { key "direction"; - // Added containment: Prefix=rtctrl - // Acquired From Package bgp uses bgp_RtCtrlP-group; + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers. list"; } + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; } // This objects holds default route leak policy, // this is not needed for FCS in our solution container defrtleak-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package bgp uses bgp_DefRtLeakP-group; + description "Default Route Leak Policy"; } container pfxctrl-items { list PfxCtrlP-list { key "direction"; - // Added containment: Prefix=pfxctrl - // Acquired From Package bgp uses bgp_PfxCtrlP-group; + description "Prefix-list Control Policy list"; } + description "Prefix-list Control Policy"; } container fltrctrl-items { list FltrCtrlP-list { key "direction"; - // Added containment: Prefix=fltrctrl - // Acquired From Package bgp uses bgp_FltrCtrlP-group; + description "Filter-list Control Policy list"; } + description "Filter-list Control Policy"; } // This object holds bgp peer af peer policy inherit @@ -36245,371 +40720,360 @@ module Cisco-NX-OS-device { list PolicyInheritRule-list { key "name"; - // Added containment: Prefix=pol - // Acquired From Package bgp uses bgp_PolicyInheritRule-group; + description "Rule for policy template import list"; } + description "Rule for policy template import"; } } grouping bgp_MaxPfxP-group { + description "Maximum Prefix Policy"; // Maximum number of prefixes allowed from the peer - // Type is an MO-Defined-Type leaf maxPfx { - description "Maximum number of prefixes from this neighbor"; - // Type is an MO-Defined-Type type bgp_MaxPfx; + description "Maximum number of prefixes from this neighbor"; } // Threshold at which warning is issued when number of // prefixes crosses the threshold - // Type is an MO-Defined-Type leaf thresh { - description "Threshold percentage at which to generate a warning"; - // Type is an MO-Defined-Type type bgp_MaxPfxThresh; + description "Threshold percentage at which to generate a warning"; } // Action on what to do when the maximum prefix limit is // reached - // Type is an MO-Defined-Type leaf action { - description "Action to do when limit is exceeded"; - // Type is an MO-Defined-Type type bgp_MaxPfxAct; + description "Action to do when limit is exceeded"; } // Duration before we restart the peer when the prefix // limit is reached (in minutes) - // Type is an MO-Defined-Type leaf restartTime { - description "Restart bgp connection after prefix limit is exceeded"; - // Type is an MO-Defined-Type type bgp_MaxPfxDuration; - } - - // Inherited From pol:Obj - // Modified by Override: bgp:MaxPfxP->name - // Type is an MO-Defined-Type - leaf name { - description "bgp MaxPfxP"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Restart bgp connection after prefix limit is exceeded"; } } grouping bgp_AdvtMap-group { + description "Advertise-Map: This object holds per advertise-map information."; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "advertise route map"; } // Condition route-map - // Type is an MO-Defined-Type leaf condition { - description "Specify route-map for conditional advertisement"; - // Type is an MO-Defined-Type type bgp_AdvtMapCondition; + description "Specify route-map for conditional advertisement"; } leaf condMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "conditional exist or non-exist route map"; } } grouping bgp_AdvtdRoutes-group { + description "Display Advertised Routes to Peer"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RcvdRoutes-group { + description "Display Received Routes from Peer"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RtCtrlP-group { + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_RtCtrlOperSt; + description "Operational State"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type leaf direction { - description "Direction"; - // Type is an MO-Defined-Type type rtctrl_RtCtrlDir; + description "Direction"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping bgp_PfxCtrlP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description "Prefix-list Control Policy"; // Direction [in/out] - // Inherited From bgp:RtListP - // Type is an MO-Defined-Type leaf direction { + + type bgp_RtCtrlDir; description "Direction: Specifies whether to apply this policy in the incoming or outgoing direction."; - - // Type is an MO-Defined-Type - type bgp_RtCtrlDir; } leaf list { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Name of Prefix List"; } } grouping bgp_FltrCtrlP-group { + description "Filter-list Control Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Direction [in/out] - // Inherited From bgp:RtListP - // Type is an MO-Defined-Type leaf direction { + + type bgp_RtCtrlDir; description "Direction: Specifies whether to apply this policy in the incoming or outgoing direction."; - - // Type is an MO-Defined-Type - type bgp_RtCtrlDir; } leaf list { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Name of Filter List"; } } grouping bgp_PolicyInheritRule-group { + description "Rule for policy template import"; // Sequence number of the inheritted peer policy template - // Type is an MO-Defined-Type leaf seq { - description "Sequence Number"; - // Type is an MO-Defined-Type type bgp_Order { range "1..65535"; } + description "Sequence Number"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PolicyInheritRule->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern ".*[!-~]{1,80}.*"; } + description "Name"; } } - grouping bgp_PeerCont-group { + grouping bgp_PeerIf-group { + description "BGP Peer: BGP information pertaining to a peer with interface"; + + // Peer interface id + leaf id { + + type nw_IfId; + description "Interface identifier of the neighbor"; + } + leaf password { + type string; + description "Configure a password for neighbor"; + } + leaf operIpAddr { + config "false"; + type address_Ip; + description "IP Address of the interface"; + } // Bits in this property represent whether to inherit or // not to inherit from template. @@ -36622,2397 +41086,2585 @@ module Cisco-NX-OS-device { // A note that any attributes configured for the neighbor // take priority over any attributes inherited from a // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; - // Type is an MO-Defined-Type type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: bgp:Common->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern "(.{1,80}).*|()"; } - } - leaf desc { - type string { - } + description "Name"; } - // Inherited From bgp:Common - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Administrative State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Administrative State"; } leaf asn { type string; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // Generate system message when any neighbor state changes - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf logNbrChgs { - description "Log Neighbor Changes"; - // Type is an MO-Defined-Type type bgp_LogNbrSt; + description "Log messages for Neighbor up/down events"; } - // Source interface - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Peer Fabric type + leaf peerType { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - // Password Encrypt Type - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf passwdType { - description "Password EnCrypt Type"; - // Type is an MO-Defined-Type type bgp_PwdType; + description "Password EnCrypt Type"; } // Peer controls - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type bgp_PeerControl; + description "Peer Controls"; } // eBGP Multihop - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf ttl { - description "eBGP Multihop"; - // Type is an MO-Defined-Type type bgp_TtlVal; + description "eBGP Multihop TTL value"; } // Keepalive interval, how often you send keepalives - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive Interval"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval"; } // Hold interval, how long you wait before you declare the // neighbor down - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold Interval"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval"; } // Connection Mode - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf connMode { - description "Connection Mode"; - // Type is an MO-Defined-Type type bgp_ConnMode; + description "BGP transport connection mode"; } leaf sessionContImp { type string { + pattern ".*[!-~]{0,80}.*"; + } + description "Peer Session Template To Import From"; + } + leaf peerImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Template To Import From"; } // Remove Private ASN - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf privateASctrl { - description "Private AS Control"; - // Type is an MO-Defined-Type type bgp_PrivateASControl; + description "Remove private AS number from outbound updates"; } - // Peer Fabric type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf peerType { - description "Neighbor Fabric Type"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Type is an MO-Defined-Type - type bgp_PeerFabType; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; + } + leaf epePeerSet { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Egress Peer Engineering EPE Peer-Set name"; } // Low Memory Exempt - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf lowMemExempt { - description "Low Memory Exempt"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Low Memory Exempt"; } // Capability Suppress - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; } leaf affGrp { type uint16; + description "Affinity group for the neighbor."; } - - // Egress Peer Engineering (EPE) for neighbor - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf epe { - description "Egress Peer Engineering EPE for neighbor"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf epePeerSet { - type string { + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description "Enable TTL Security Mechanism"; } // bmp-activate-server 1 - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf bmpSrvId1St { - description "Activate BMP Server 1"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 1"; } // bmp-activate-server 2 - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf bmpSrvId2St { - description "Activate BMP Server 2"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 2"; } - // This object holds local AS information pertaining to a peer - container localasn-items { + // Dscp value, set it in tcp packets + leaf dscp { - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp - uses bgp_LocalAsn-group; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - // This object holds per address family bgp peer information - container af-items { - list PeerAf-list { - key "type"; + // Operational state Maximum Prefix Peers + leaf maxPfxPeers { + config "false"; - // Added containment: Prefix=af - // Acquired From Package bgp - uses bgp_PeerAf-group; - } + type bgp_PfxPeerCounts; + description "Maximum Prefix Peers Count"; } - } - - grouping bgp_SessionCont-group { - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'keepalive and hold - // timer' and BFD from a template, set this property with - // values - 'timer' and 'bfd'. - // A note that any attributes configured for the neighbor - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; + // Current Prefix Peers + leaf curPfxPeers { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerCtrlType; + type bgp_PfxPeerCounts; + description "Current Prefix Peers Counts"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: bgp:Common->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Active Prefix Peers + leaf activePfxPeers { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf desc { - type string { - } + type bgp_PfxPeerCounts; + description "Active Prefix Peer Counts"; } - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative State"; + // Maximum Current Peers + leaf maxCurPeers { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; - } - leaf asn { - type string; + type bgp_PfxPeerCounts; + description "Maximum Current Peers Counts"; } - // Generate system message when any neighbor state changes - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf logNbrChgs { - description "Log Neighbor Changes"; + // Total Prefix Peers + leaf totalPfxPeers { + config "false"; - // Type is an MO-Defined-Type - type bgp_LogNbrSt; + type bgp_PfxPeerCounts; + description "Total Prefix Peers Counts"; } - // Source interface - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // gShut Operational state + leaf gShutOperSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + type bgp_AdminSt; + description "GShut Operational State"; } - // Password Encrypt Type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf passwdType { - description "Password EnCrypt Type"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type bgp_PwdType; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; + } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - // Peer controls - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; + // This objects hold graceful shutdown informations + container gs-items { - // Type is an MO-Defined-Type - type bgp_PeerControl; + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } - // eBGP Multihop - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf ttl { - description "eBGP Multihop"; + // This object holds local AS information pertaining to a peer + container localasn-items { - // Type is an MO-Defined-Type - type bgp_TtlVal; + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } - // Keepalive interval, how often you send keepalives - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf kaIntvl { - description "Keepalive Interval"; + // This object holds bgp peerif operational status information. + container ent-items { + list PeerIfEntry-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type bgp_KaIntvl; + uses bgp_PeerIfEntry-group; + description + "BGP Peer Interface Entry: BGP peer operational + status information. list"; + } + description + "BGP Peer Interface Entry: BGP peer operational + status information."; } - // Hold interval, how long you wait before you declare the - // neighbor down - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // This object holds per address family bgp peer information + container af-items { + list PeerAf-list { + key "type"; - // Type is an MO-Defined-Type - type bgp_HoldIntvl; + uses bgp_PeerAf-group; + description "Peer Address Family list"; + } + description "Peer Address Family"; } + } - // Connection Mode - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf connMode { - description "Connection Mode"; + grouping bgp_PeerIfEntry-group { + description + "BGP Peer Interface Entry: BGP peer operational + status information."; - // Type is an MO-Defined-Type - type bgp_ConnMode; - } - leaf sessionContImp { - type string { - } + // Peer interface id + leaf id { + config "false"; + + type nw_IfId; + description "Interface id of the neighbor"; } - // Remove Private ASN - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf privateASctrl { - description "Private AS Control"; + // Peer Type + leaf type { + config "false"; - // Type is an MO-Defined-Type - type bgp_PrivateASControl; + type bgp_PeerType; + description "Peer Link Type"; } - // Peer Fabric type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf peerType { - description "Neighbor Fabric Type"; + // Peer router id + leaf rtrId { + config "false"; - // Type is an MO-Defined-Type - type bgp_PeerFabType; + type ip_RtrId; + description "Router ID"; } - // Low Memory Exempt - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf lowMemExempt { - description "Low Memory Exempt"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerOperSt; + description "Operational State"; } - // Capability Suppress - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; + // Previous Operational state + leaf prevOperSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf affGrp { - type uint16; + type bgp_PeerOperSt; + description "Previous Operational State"; } - // Egress Peer Engineering (EPE) for neighbor - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf epe { - description "Egress Peer Engineering EPE for neighbor"; + // Shut state qualifier + leaf shutStQual { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_ShutStQual; + description "Shut State Qualifier"; } - leaf epePeerSet { - type string { + leaf lastFlapTs { + config "false"; + type union { + type string; + type uint64; } + description "Last Flap Timestamp"; + } + leaf maxConnRetryIntvl { + config "false"; + type uint16; + default "60"; + description "Max Connect Retry Interval"; } - // bmp-activate-server 1 - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf bmpSrvId1St { - description "Activate BMP Server 1"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerFlags; + description "Flags"; } - // bmp-activate-server 2 - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf bmpSrvId2St { - description "Activate BMP Server 2"; + // Advertised capability + leaf advCap { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_CapT; + description "Advertised Capability"; } - // This object holds local AS information pertaining to a peer - container localasn-items { + // Received capability + leaf rcvCap { + config "false"; - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp - uses bgp_LocalAsn-group; + type bgp_CapT; + description "Received Capability"; } - } - - grouping bgp_PolicyCont-group { - // Peer address family controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; + // Connected interface + leaf connIf { + config "false"; - // Type is an MO-Defined-Type - type bgp_PeerAfControl; - } - leaf allowedSelfAsCnt { - type uint8 { - range "0..10"; - } - default "0"; + type nw_IfId; + description "Directly Attached Interface"; } - // Soft Reconfiguration - // Type is an MO-Defined-Type - leaf softReconfigBackup { - description "Soft Reconfiguration"; + // Negotiated hold time + leaf holdIntvl { + config "false"; - // Type is an MO-Defined-Type - type bgp_SoftReconfigBackup; + type bgp_HoldIntvl; + description "Hold Interval in secs"; } - // Neighbor advertisement interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Neighbor advertisement interval"; + // Negotiated keepalive interval + leaf kaIntvl { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdvInterval; + type bgp_KaIntvl; + description "Keepalive Interval in secs"; + } + leaf localIp { + config "false"; + type address_Ip; + description "Local IP"; } - // Type is an MO-Defined-Type - leaf defOrg { - description "Default Originate is enabled"; + // Local L4 port + leaf localPort { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf defOrgRtMap { - type string { - } + type l4_Port; + description "Local port number of the local host"; } - // Capability Additional Paths - // Type is an MO-Defined-Type - leaf capAddlPaths { - description "Capability Additional Paths"; + // Remote L4 port + leaf remotePort { + config "false"; - // Type is an MO-Defined-Type - type bgp_CapAddlPathCapT; - } - leaf unSupprMap { - type string { - } + type l4_Port; + description "Remote port number of the remote host"; } - // as-override - // Type is an MO-Defined-Type - leaf asOverride { - description "Override matching AS-number while sending update"; + // Number of times connections established + leaf connEst { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type cap_Quant; + description "Connections Established"; } - // next-hop-third-party - // Type is an MO-Defined-Type - leaf nhThirdparty { - description "Compute a third-party nexthop if possible"; + // Number of times connections dropped + leaf connDrop { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type cap_Quant; + description "Connections Dropped"; } - leaf wght { - type string { + leaf updateElapsedTs { + config "false"; + type union { + type string; + type uint64; } - } - leaf soo { - type mtx_array_community; + description "Last Update Received Timestamp"; } - // Send-community standard - // Type is an MO-Defined-Type - leaf sendComStd { - description "Send-community standard"; + // FD to connect to peer + leaf fd { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_SockFD; + description "FD to Connect to Peer"; } - // Send-community extended - // Type is an MO-Defined-Type - leaf sendComExt { - description "Send-community extended"; + // Peer Index + leaf peerIdx { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerIdx; + description "Peer Index"; } - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor AF, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'send community' - // from a template, set this property with value - - // 'send-com'. - // A note that any attributes configured for the neighbor AF - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerPolicyCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerPolicyCtrl { - description "Inherit control of peer policy parameters"; + // Connection Attempts + leaf connAttempts { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerPolicyCtrlType; + type bgp_ConnAttempts; + description "Connection Attempts"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PolicyCont->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Peer idle state reason + leaf stReason { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_StReason; + description "Peer Idle State Reason"; } - // This policy tells on what to do when the number of prefixes - // advertised by the peer crosses a maximum limit specified. - // This is used as a defensive mechanism to protect resources - // on the router - container maxpfxp-items { + // Indicate if password is set + leaf passwdSet { + config "false"; - // Added containment as a singleton: Prefix=maxpfxp - // Acquired From Package bgp - uses bgp_MaxPfxP-group; + type bgp_PasswdSet; + description "TCP MD5 Authentication"; } - // This object holds per advertise-map information - container advtmap-items { + // This object holds peer event information + container ev-items { - // Added containment as a singleton: Prefix=advtmap - // Acquired From Package bgp - uses bgp_AdvtMap-group; + uses bgp_PeerEvents-group; + description "Peer Events"; } - // Route control policy for routes coming/going to peers. - // There are few ways to apply this policy, controlling - // through route maps or prefix lists or filter lists. - // If both are specified, the order is implicit. Prefix - // lists are applied before route maps. - // The direction specifies whether to apply this policy - // in the incoming or outgoing direction - container rtctrl-items { - list RtCtrlP-list { - key "direction"; + // This object holds operational state information for + // bgp segment routing egress peer engineering + container epe-items { - // Added containment: Prefix=rtctrl - // Acquired From Package bgp - uses bgp_RtCtrlP-group; - } + uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } - container pfxctrl-items { - list PfxCtrlP-list { - key "direction"; - // Added containment: Prefix=pfxctrl - // Acquired From Package bgp - uses bgp_PfxCtrlP-group; - } - } - container fltrctrl-items { - list FltrCtrlP-list { - key "direction"; + // This object holds bgp peer af operational status info + container af-items { + list PeerAfEntry-list { + config "false"; + key "type"; - // Added containment: Prefix=fltrctrl - // Acquired From Package bgp - uses bgp_FltrCtrlP-group; + uses bgp_PeerAfEntry-group; + description "BGP Peer Address Family Entry list"; } + description "BGP Peer Address Family Entry"; } - // This object holds bgp peer af peer policy inherit - container pol-items { - list PolicyInheritRule-list { - key "name"; + // This object holds bgp peer statistics operational information. + // This is a singleton within a peerEntry + container peerstats-items { - // Added containment: Prefix=pol - // Acquired From Package bgp - uses bgp_PolicyInheritRule-group; - } + uses bgp_PeerEntryStats-group; + description "Peer Entry Statistics"; } } - grouping bgp_EvtHist-group { + grouping bgp_PeerCont-group { + description "Peer Container: parameters pertaining to peer templates"; - // Event-history buffer type - // Type is an MO-Defined-Type - leaf type { - description "Configure event-history {cli | events | periodic | detail}"; + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { - // Type is an MO-Defined-Type - type bgp_EhType; + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; } - // Event-history buffer size - // Type is an MO-Defined-Type - leaf size { - description "Configure event-history with buffer size"; + leaf name { - // Type is an MO-Defined-Type - type bgp_Size; + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; } - } - - grouping bgp_OperBgp-group { - - // This object holds bgp operational information for L2. - container l2-items { - list OperRtctrlL2-list { - config "false"; - key "encap"; - - // Added containment: Prefix=l2 - // Acquired From Package bgp - uses bgp_OperRtctrlL2-group; + leaf desc { + type string { + pattern "(.{1,80}).*|()"; } + description "Description"; } - // This object holds bgp operational information for L3. - container l3-items { - list OperRtctrlL3-list { - config "false"; - key "encap"; + leaf adminSt { - // Added containment: Prefix=l3 - // Acquired From Package bgp - uses bgp_OperRtctrlL3-group; - } + type nw_AdminSt; + description "Administrative State"; + } + leaf asn { + type string; + description "Autonomous System Number"; } - } - - grouping bgp_OperRtctrlL2-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Generate system message when any neighbor state changes + leaf logNbrChgs { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_LogNbrSt; + description "Log Neighbor Changes"; } - leaf rd { - config "false"; - type mtx_array_community; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source Interface"; } - leaf encap { - config "false"; + leaf password { type string; + description "Configure a password for neighbor"; } - // Route target policy - container rttp-items { - list OperRttP-list { - config "false"; - key "type"; + // Password Encrypt Type + leaf passwdType { - // Added containment: Prefix=rttp - // Acquired From Package bgp - uses bgp_OperRttP-group; - } + type bgp_PwdType; + description "Password EnCrypt Type"; } - } - grouping bgp_OperRttP-group { + // Peer controls + leaf ctrl { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type bgp_PeerControl; + description "Control"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // eBGP Multihop + leaf ttl { + + type bgp_TtlVal; + description "eBGP Multihop"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_KaIntvl; + description "Keepalive Interval"; } - // Type - // Inherited From rtctrl:ARtP - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Hold interval, how long you wait before you declare the + // neighbor down + leaf holdIntvl { - // Type is an MO-Defined-Type - type rtctrl_RttPType; + type bgp_HoldIntvl; + description "Hold Interval"; } - // List of route targets - container entry-items { - list OperRttEntry-list { - config "false"; - key "rtt"; + // Connection Mode + leaf connMode { - // Added containment: Prefix=entry - // Acquired From Package bgp - uses bgp_OperRttEntry-group; + type bgp_ConnMode; + description "Connection Mode"; + } + leaf sessionContImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description + "Importing Session Specific properties from + Session Template"; } - // Route control map policy for routes imported/exported - // into an AF. Control is through route maps. - container rtctrlmap-items { + // Remove Private ASN + leaf privateASctrl { - // Added containment as a singleton: Prefix=rtctrlmap - // Acquired From Package rtctrl - uses rtctrl_MapP-group; + type bgp_PrivateASControl; + description "Private AS Control"; } - // Route control map policy for routes imported/exported - // into an AF in the default VRF. Control is through route maps. - container rtctrldefmap-items { + // Peer Fabric type + leaf peerType { - // Added containment as a singleton: Prefix=rtctrldefmap - // Acquired From Package rtctrl - uses rtctrl_DomDefMapP-group; + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - } - grouping bgp_OperRttEntry-group { - leaf rtt { - config "false"; - type mtx_array_community; - } - } + // Low Memory Exempt + leaf lowMemExempt { - grouping rtctrl_MapP-group { + type bgp_AdminSt; + description "Low Memory Exempt"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Capability Suppress + leaf capSuppr4ByteAsn { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; + } + leaf affGrp { + type uint16; + description "Affinity group for the neighbor."; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; } - leaf rtMap { + leaf epePeerSet { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } - } - grouping rtctrl_DomDefMapP-group { - leaf pfxLimit { - type uint32 { - range "0..2147483647"; - } - default "0"; - } - leaf allowVpn { - type boolean; + // bmp-activate-server 1 + leaf bmpSrvId1St { + + type bgp_AdminSt; + description "Activate BMP Server 1"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // bmp-activate-server 2 + leaf bmpSrvId2St { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type bgp_AdminSt; + description "Activate BMP Server 2"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Dscp value, set it in tcp packets + leaf dscp { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - leaf rtMap { - type string { + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description + "Enable TTL Security Mechanism + with hop counts specified for remote peers"; } - } - - grouping bgp_OperRtctrlL3-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - leaf rd { - config "false"; - type mtx_array_community; + + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } - leaf encap { - config "false"; - type string; + + // This object holds local AS information pertaining to a peer + container localasn-items { + + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } - // This object holds per address family bgp vrf information + // This object holds per address family bgp peer information container af-items { - list OperDomAf-list { - config "false"; + list PeerAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp - uses bgp_OperDomAf-group; + uses bgp_PeerAf-group; + description "Peer Address Family list"; } + description "Peer Address Family"; } } - grouping bgp_OperDomAf-group { + grouping bgp_SessionCont-group { + description "Session Container: parameters related to session templates"; + + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { + + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; + } + leaf desc { + type string { + pattern "(.{1,80}).*|()"; } + description "Description"; } - // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Address Family Type"; + leaf adminSt { - // Type is an MO-Defined-Type - type bgp_AfT; + type nw_AdminSt; + description "Administrative State"; } - - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list OperAfCtrl-list { - config "false"; - key "type"; - - // Added containment: Prefix=ctrl - // Acquired From Package bgp - uses bgp_OperAfCtrl-group; - } + leaf asn { + type string; + description "Autonomous System Number"; } - } - - grouping bgp_OperAfCtrl-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Generate system message when any neighbor state changes + leaf logNbrChgs { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_LogNbrSt; + description "Log Neighbor Changes"; } - // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Address Family Type"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type bgp_AfT; + type nw_IfId; + description "Source Interface"; } - - // Route target policy - container rttp-items { - list OperRttP-list { - config "false"; - key "type"; - - // Added containment: Prefix=rttp - // Acquired From Package bgp - uses bgp_OperRttP-group; - } + leaf password { + type string; + description "Configure a password for neighbor"; } - } - grouping compat_SuppFw-group { - - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Password Encrypt Type + leaf passwdType { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_PwdType; + description "Password EnCrypt Type"; } - // Compatible version - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "Version"; + // Peer controls + leaf ctrl { - // Type is an MO-Defined-Type - type cap_Version; + type bgp_PeerControl; + description "Control"; } - } - // Has Polymorphic containment of abstract object cap:Rule - grouping cap_Cat-group { - - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // eBGP Multihop + leaf ttl { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; - } + type bgp_TtlVal; + description "eBGP Multihop"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { - - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; - } + type bgp_KaIntvl; + description "Keepalive Interval"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Hold interval, how long you wait before you declare the + // neighbor down + leaf holdIntvl { - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; - } + type bgp_HoldIntvl; + description "Hold Interval"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { - - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Connection Mode + leaf connMode { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type bgp_ConnMode; + description "Connection Mode"; + } + leaf sessionContImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description + "Importing Session Specific properties from + Session Template"; } - // Card capability provider - container card-items { - list Card-list { - config "false"; - key "vendor model version"; + // Remove Private ASN + leaf privateASctrl { - // Added containment: Prefix=card - // Acquired From Package eqptcap - uses eqptcap_Card-group; - } + type bgp_PrivateASControl; + description "Private AS Control"; } - // Port capability provider - container port-items { - list Port-list { - config "false"; - key "vendor model version"; + // Peer Fabric type + leaf peerType { - // Added containment: Prefix=port - // Acquired From Package eqptcap - uses eqptcap_Port-group; - } + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - // Psu capability provider - container psu-items { - list Psu-list { - config "false"; - key "vendor model version"; + // Low Memory Exempt + leaf lowMemExempt { - // Added containment: Prefix=psu - // Acquired From Package eqptcap - uses eqptcap_Psu-group; - } + type bgp_AdminSt; + description "Low Memory Exempt"; } - // Fan capability provider - container fan-items { - list Fan-list { - config "false"; - key "vendor model version"; + // Capability Suppress + leaf capSuppr4ByteAsn { - // Added containment: Prefix=fan - // Acquired From Package eqptcap - uses eqptcap_Fan-group; - } + type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; + } + leaf affGrp { + type uint16; + description "Affinity group for the neighbor."; } - // Sfp capability provider - container sfp-items { - list Sfp-list { - config "false"; - key "vendor model version"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Added containment: Prefix=sfp - // Acquired From Package eqptcap - uses eqptcap_Sfp-group; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; + } + leaf epePeerSet { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } - } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Card-group { - - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + // bmp-activate-server 1 + leaf bmpSrvId1St { - // Type is an MO-Defined-Type - type cap_Version; + type bgp_AdminSt; + description "Activate BMP Server 1"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + // bmp-activate-server 2 + leaf bmpSrvId2St { - // Type is an MO-Defined-Type - type cap_Vendor; + type bgp_AdminSt; + description "Activate BMP Server 2"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + // Dscp value, set it in tcp packets + leaf dscp { - // Type is an MO-Defined-Type - type cap_Model; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; - - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description + "Enable TTL Security Mechanism + with hop counts specified for remote peers"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { - - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + // This objects hold graceful shutdown informations + container gs-items { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + } - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; - } + // This object holds local AS information pertaining to a peer + container localasn-items { + + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_PolicyCont-group { + description "Policy Container: parameters pertaining to policy templates"; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Peer address family controls + leaf ctrl { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type bgp_PeerAfControl; + description "Control"; + } + leaf allowedSelfAsCnt { + type uint8 { + range "0..10"; } + default "0"; + description "Allowed Self AS Count"; } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + // Soft Reconfiguration + leaf softReconfigBackup { - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + type bgp_SoftReconfigBackup; + description "Soft Reconfiguration"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // Neighbor advertisement interval + leaf advIntvl { - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + type bgp_AdvInterval; + description "Neighbor advertisement interval"; } - } - - grouping eqptcap_MfgDef-group { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf defOrg { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type bgp_AdminSt; + description "Default Originate is enabled"; + } + leaf defOrgRtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Default Originate Route Map"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // Capability Additional Paths + leaf capAddlPaths { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_CapAddlPathCapT; + description "Capability Additional Paths"; + } + leaf unSupprMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route-map to selectively unsuppress suppressed routes"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // as-override + leaf asOverride { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type bgp_AdminSt; + description "Override matching AS-number while sending update"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // next-hop-third-party + leaf nhThirdparty { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_AdminSt; + default "enabled"; + description "Compute a third-party nexthop if possible"; } - leaf partNumber { - config "false"; - type string; + leaf wght { + type string { + pattern ".*\\d*.*"; + } + description "Weight for the neighbor."; + } + leaf soo { + type mtx_array_community; + description "Site-of-origin extcommunity"; } - } - - grouping eqptcap_PhysicalDef-group { - // Type is an MO-Defined-Type - leaf height { - config "false"; - description "TBD"; + // Send-community standard + leaf sendComStd { - // Type is an MO-Defined-Type - type eqptcap_Size; + type bgp_AdminSt; + description "Send-community standard"; } - // Type is an MO-Defined-Type - leaf width { - config "false"; - description "TBD"; + // Send-community extended + leaf sendComExt { - // Type is an MO-Defined-Type - type eqptcap_Size; + type bgp_AdminSt; + description "Send-community extended"; } - // Type is an MO-Defined-Type - leaf depth { - config "false"; - description "TBD"; + // template: advertise local-labeled-route + leaf advLocalLblRt { - // Type is an MO-Defined-Type - type eqptcap_Size; + type nw_AdminSt; + description "Advertise a route with local label to peer"; + } + leaf nhSelfAll { + type boolean; + description "Set address as next-hop for all routes"; } - // Type is an MO-Defined-Type - leaf weight { - config "false"; - description "TBD"; + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor AF, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'send community' + // from a template, set this property with value - + // 'send-com'. + // A note that any attributes configured for the neighbor AF + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerPolicyCtrl { - // Type is an MO-Defined-Type - type eqptcap_Weight; + type bgp_InheritContPeerPolicyCtrlType; + description "Inherit control of peer policy parameters"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; + pattern ".*[!-~]{1,80}.*"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // This policy tells on what to do when the number of prefixes + // advertised by the peer crosses a maximum limit specified. + // This is used as a defensive mechanism to protect resources + // on the router + container maxpfxp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses bgp_MaxPfxP-group; + description "Maximum Prefix Policy"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // This object holds per advertise-map information + container advtmap-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses bgp_AdvtMap-group; + description "Advertise-Map: This object holds per advertise-map information."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Route control policy for routes coming/going to peers. + // There are few ways to apply this policy, controlling + // through route maps or prefix lists or filter lists. + // If both are specified, the order is implicit. Prefix + // lists are applied before route maps. + // The direction specifies whether to apply this policy + // in the incoming or outgoing direction + container rtctrl-items { + list RtCtrlP-list { + key "direction"; - // Type is an MO-Defined-Type - type naming_Descr; + uses bgp_RtCtrlP-group; + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers. list"; + } + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; } - } - - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Port-group { + container pfxctrl-items { + list PfxCtrlP-list { + key "direction"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + uses bgp_PfxCtrlP-group; + description "Prefix-list Control Policy list"; + } + description "Prefix-list Control Policy"; + } + container fltrctrl-items { + list FltrCtrlP-list { + key "direction"; - // Type is an MO-Defined-Type - type cap_Version; + uses bgp_FltrCtrlP-group; + description "Filter-list Control Policy list"; + } + description "Filter-list Control Policy"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + // This object holds bgp peer af peer policy inherit + container pol-items { + list PolicyInheritRule-list { + key "name"; - // Type is an MO-Defined-Type - type cap_Vendor; + uses bgp_PolicyInheritRule-group; + description "Rule for policy template import list"; + } + description "Rule for policy template import"; } + } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + grouping bgp_EvtHist-group { + description "BGP customized buffer detail for event-history"; - // Type is an MO-Defined-Type - type cap_Model; - } + // Event-history buffer type + leaf type { - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + type bgp_EhType; + description "Configure event-history {cli | events | periodic | detail | errors | socket}"; + } - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Event-history buffer size + leaf size { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; - } + type bgp_Size; + description "Configure event-history with buffer size"; } + } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + grouping bgp_OperBgp-group { + description + "Top-level container to hold BGP + runtime operational data"; - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { + // This object holds bgp operational information for L2. + container l2-items { + list OperRtctrlL2-list { config "false"; - key "subj scope type"; + key "encap"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + uses bgp_OperRtctrlL2-group; + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes. list"; } + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes."; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { + // This object holds bgp operational information for L3. + container l3-items { + list OperRtctrlL3-list { config "false"; - key "subj scope type"; + key "encap"; - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + uses bgp_OperRtctrlL3-group; + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6 list"; } + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_OperRtctrlL2-group { + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes."; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { - - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + leaf rd { + config "false"; + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + config "false"; + type string; + description "Encapsulation"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // Route target policy + container rttp-items { + list OperRttP-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses bgp_OperRttP-group; + description "Operational Route Target Policy for import/export list"; + } + description "Operational Route Target Policy for import/export"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Psu-group { + grouping bgp_OperRttP-group { + description "Operational Route Target Policy for import/export"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Version; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Vendor; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { + // Type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Model; + type rtctrl_RttPType; + description "Type"; } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { + // List of route targets + container entry-items { + list OperRttEntry-list { config "false"; - key "subj scope type"; + key "rtt"; - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + uses bgp_OperRttEntry-group; + description "Operational Route Target Entry list"; } + description "Operational Route Target Entry"; + } + } + + grouping bgp_OperRttEntry-group { + description "Operational Route Target Entry"; + leaf rtt { + config "false"; + type mtx_array_community; + description "Route Target"; } + } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + grouping bgp_OperRtctrlL3-group { + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6"; - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; + } + leaf rd { + config "false"; + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + config "false"; + type string; + description "Encapsulation"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { + // This object holds per address family bgp vrf information + container af-items { + list OperDomAf-list { config "false"; - key "subj scope type"; + key "type"; - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + uses bgp_OperDomAf-group; + description "Operational Address Family Domain list"; } + description "Operational Address Family Domain"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_OperDomAf-group { + description "Operational Address Family Domain"; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + // Type + leaf type { + config "false"; - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + type bgp_AfT; + description "Address Family Type"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list OperAfCtrl-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses bgp_OperAfCtrl-group; + description "Operational Virtual Private Network Control Policy list"; + } + description "Operational Virtual Private Network Control Policy"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Fan-group { + grouping bgp_OperAfCtrl-group { + description "Operational Virtual Private Network Control Policy"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Version; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { + // Type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Vendor; + type bgp_AfT; + description "Address Family Type"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + // Route target policy + container rttp-items { + list OperRttP-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type cap_Model; + uses bgp_OperRttP-group; + description "Operational Route Target Policy for import/export list"; + } + description "Operational Route Target Policy for import/export"; } + } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + grouping bgp_Tbgp-group { + description "Configure SNMP BGP traps"; - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // SNMP BGP trap for All 3 (back-trans, limited, all) + // state change traps + leaf stChange { + + type bgp_TrapType; + description "SNMP BGP trap for all bgp state change traps"; + } + leaf stChangeAllFsm { + type boolean; + description "SNMP BGP trap for all fsm state change"; + } + leaf stChangeBackTrans { + type boolean; + description "SNMP BGP trap for backward transition state change trap"; + } + leaf stChangeLtd { + type boolean; + description "SNMP BGP trap for limited state change trap"; + } + leaf thresPfx { + type boolean; + description "SNMP BGP trap for prefix threshold event"; + } + + // SNMP BGP trap to enable all state change and + // prefix threshold trap + leaf trapAll { + + type bgp_TrapType; + description "All state-change and threshold prefix traps"; + } + } + + grouping bgp_Tcbgp2-group { + description "SNMP CISCO-BGP-MIBv2 traps"; + + // SNMP BGP trap for All 3 (back-trans, limited, all) + // state change traps + leaf stChange { + + type bgp_TrapType; + description "SNMP BGP trap for all bgp state change traps"; + } + leaf stChangeAllFsm { + type boolean; + description "SNMP BGP trap for all fsm state change"; + } + leaf stChangeBackTrans { + type boolean; + description "SNMP BGP trap for backward transition state change trap"; + } + leaf stChangeLtd { + type boolean; + description "SNMP BGP trap for limited state change trap"; + } + leaf thresPfx { + type boolean; + description "SNMP BGP trap for prefix threshold event"; + } + + // SNMP BGP trap to enable all state change and + // prefix threshold trap + leaf trapAll { + + type bgp_TrapType; + description "All state-change and threshold prefix traps"; + } + } + + grouping callhome_Callhome-group { + description "Callhome node, used as a placeholder for uniformity"; + + container inst-items { + + uses callhome_Inst-group; + description "Callhome instance node, represents an instance of callhome"; + } + } + + grouping callhome_Inst-group { + description "Callhome instance node, represents an instance of callhome"; + + leaf callhomeEnable { + + type callhome_Boolean; + default "disabled"; + description "Enable/Disable callhome"; + } + + leaf dupMsgThrottle { + + type callhome_Boolean; + default "enabled"; + description "Enable/Disable duplicate message throttling"; + } + + leaf contractId { + + type callhome_StringRange; + description "Service contract id of the customer"; + } + + leaf customerId { + + type callhome_StringRange; + description "Customer ID as specified in the service agreement"; + } + + leaf emailId { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + type callhome_Email { + length "0..255"; } + description "Email address of the contact person"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + leaf phoneContact { - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Phone { + length "0..17"; + } + description "Contact person's phone number"; + } + + leaf siteId { - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + type callhome_StringRange; + description "Site id of the network where switch is deployed"; + } + + leaf streetAddress { + + type callhome_StringRange; + description "Configure replacement part shipping address"; + } + leaf switchPri { + type uint16 { + range "0..7"; } + default "7"; + description "Priority of the switch"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + leaf periodicInvNotif { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Boolean; + default "enabled"; + description "Enable/Disable periodic inventory notification"; + } + + leaf periodInvNotifInterval { + + type callhome_PeriodicSystemInventoryIntervalDays; + description "The time period for periodic inventory"; + } + + leaf periodInvNotifTimeOfDayHour { + + type callhome_PeriodicSystemInventoryTimeOfDayHour; + description "The hour part of time period"; + } + + leaf periodInvNotifTimeOfDayMinute { - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + type callhome_PeriodicSystemInventoryTimeOfDayMinute; + description "The minute part of time period"; + } + + // mo for alert group + container alertgroup-items { + list AlertGroup-list { + key "alertGroup seqNum"; + + uses callhome_AlertGroup-group; + description "Alert group node list"; } + description "Alert group node"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + // mo for Destination profile + container destprof-items { + + uses callhome_DestProf-group; + description "Destination profile node with required delivery information for an alert notification"; + } - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // mo for Transport + container transport-items { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + uses callhome_Transport-group; + description "Tranport node to configure transport related configuration"; + } + } + + grouping callhome_AlertGroup-group { + description "Alert group node"; + + leaf alertGroup { + + type callhome_AlertGroupName; + description "Grouped callhome alerts"; + } + leaf seqNum { + type uint32 { + range "1..5"; } + description "Sequence number assosiated with user defined command"; } + leaf userDefCmd { + type string { + length "1..600"; + } + description "User defined show commands for alert group action"; + } + } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + grouping callhome_DestProf-group { + description "Destination profile node with required delivery information for an alert notification"; - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + // mo for xml(CiscoTac1),full-text,short-text + container predefprofile-items { + list PredefinedProfile-list { + key "predefProfile"; + + uses callhome_PredefinedProfile-group; + description "Predefined destination profile node with required delivery information list"; + } + description "Predefined destination profile node with required delivery information"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // mo for Custom Profile + container custprof-items { + list CustomProfile-list { + key "profileName"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses callhome_CustomProfile-group; + description "User defined destination profile node list"; + } + description "User defined destination profile node"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Sfp-group { + grouping callhome_PredefinedProfile-group { + description "Predefined destination profile node with required delivery information"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + leaf predefProfile { - // Type is an MO-Defined-Type - type cap_Version; + type callhome_PredefProfileName; + description "Predefined destination profile names"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + leaf transportMethodEmail { - // Type is an MO-Defined-Type - type cap_Vendor; + type callhome_Boolean; + default "enabled"; + description "Trnasport method as email "; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + leaf transportMethodHttp { + + type callhome_Boolean; + default "disabled"; + description "Transport method as http"; + } + leaf messageLevel { + type uint32 { + range "0..9"; + } + default "0"; + description "Callhome message-level for the configured profile"; + } + leaf messageSize { + type uint32 { + range "0..5000000"; + } + default "2500000"; + description "Callhome message-size for the configured profile"; + } - // Type is an MO-Defined-Type - type cap_Model; + leaf format { + + type callhome_Format; + description "Callhome message format to be sent to configured profile"; } - // SFP Manufacturing-related properties - container mfg-items { - list SfpMfgDef-list { - config "false"; - key "partNumber"; + leaf alertGrpCiscoTac1 { + + type callhome_Boolean; + description "Events which are meant for Cisco TAC only"; + } + + leaf alertGrpConfiguration { + + type callhome_Boolean; + description "Events related to Configuration"; + } + + leaf alertGrpDiagnostic { + + type callhome_Boolean; + description "Events related to Diagnostic"; + } + + leaf alertGrpEEM { + + type callhome_Boolean; + description "Events related to EEM"; + } + + leaf alertGrpEnvironmental { + + type callhome_Boolean; + description "Power,Fan,Temperature related events"; + } + + leaf alertGrpInventory { + + type callhome_Boolean; + description "Inventory Status Events"; + } + + leaf alertGrpLinecard { + + type callhome_Boolean; + description "Linecard related events"; + } + + leaf alertGrpSupervisor { + + type callhome_Boolean; + description "Supervisor related events"; + } + + leaf alertGrpSyslogPort { + + type callhome_Boolean; + description "Events related to syslog messages filed by port manager"; + } + + leaf alertGrpSystem { + + type callhome_Boolean; + description "Software related events"; + } + + leaf alertGrpTest { + + type callhome_Boolean; + description "User generated test events"; + } + + leaf alertGrpLicense { - // Added containment: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_SfpMfgDef-group; + type callhome_Boolean; + description "Events related to licensing"; + } + + leaf alertGrpAll { + + type callhome_Boolean; + description "This alert group consists of all of the callhome messages"; + } + + // mo for PredefProfile/PredefProfileName/Email + container pdprofemail-items { + list PredefProfEmail-list { + key "seqNum"; + + uses callhome_PredefProfEmail-group; + description "Email address node to send email notifications list"; } + description "Email address node to send email notifications"; } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + // mo for PredefProfile/PredefProfileName/PredefProfHttp + container pdprofhttp-items { + list PredefProfHttp-list { + key "seqNum"; - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + uses callhome_PredefProfHttp-group; + description "HTTP node with URL configuration for profile list"; + } + description "HTTP node with URL configuration for profile"; + } + } - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + grouping callhome_PredefProfEmail-group { + description "Email address node to send email notifications"; + leaf seqNum { + type uint32 { + range "1..50"; } + description "Sequence number associated with email-id"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + leaf emailAddr { - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Email; + description "Email address for the profile"; + } + } + + grouping callhome_PredefProfHttp-group { + description "HTTP node with URL configuration for profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with HTTP URL"; + } + leaf http { + type string { + length "11..255"; + } + description "HTTP URL configuration for the profile"; + } + } - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + grouping callhome_CustomProfile-group { + description "User defined destination profile node"; + leaf profileName { + type string { + length "0..31"; } + description "User defined destination profile name"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + leaf transportMethodEmail { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Boolean; + default "enabled"; + description "Trnasport method as email "; + } - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + leaf transportMethodHttp { + + type callhome_Boolean; + default "disabled"; + description "Transport method as http"; + } + leaf messageLevel { + type uint32 { + range "0..9"; + } + default "0"; + description "Callhome message-level for the configured profile"; + } + leaf messageSize { + type uint32 { + range "0..5000000"; } + default "2500000"; + description "Callhome message-size for the configured profile"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + leaf format { - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Format; + description "Callhome message format to be sent to configured profile"; + } + + leaf alertGrpCiscoTac1 { + + type callhome_Boolean; + description "Events which are meant for Cisco TAC only"; + } + + leaf alertGrpConfiguration { + + type callhome_Boolean; + description "Events related to Configuration"; + } + + leaf alertGrpDiagnostic { + + type callhome_Boolean; + description "Events related to Diagnostic"; + } + + leaf alertGrpEEM { + + type callhome_Boolean; + description "Events related to EEM"; + } - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + leaf alertGrpEnvironmental { + + type callhome_Boolean; + description "Power,Fan,Temperature related events"; + } + + leaf alertGrpInventory { + + type callhome_Boolean; + description "Inventory Status Events"; + } + + leaf alertGrpLinecard { + + type callhome_Boolean; + description "Linecard related events"; + } + + leaf alertGrpSupervisor { + + type callhome_Boolean; + description "Supervisor related events"; + } + + leaf alertGrpSyslogPort { + + type callhome_Boolean; + description "Events related to syslog messages filed by port manager"; + } + + leaf alertGrpSystem { + + type callhome_Boolean; + description "Software related events"; + } + + leaf alertGrpTest { + + type callhome_Boolean; + description "User generated test events"; + } + + leaf alertGrpLicense { + + type callhome_Boolean; + description "Events related to licensing"; + } + + leaf alertGrpAll { + + type callhome_Boolean; + description "This alert group consists of all of the callhome messages"; + } + + // mo for CustomProfile/CustomEmail + container custemail-items { + list CustomEmail-list { + key "seqNum"; + + uses callhome_CustomEmail-group; + description "Email address node with delivery information for the custom profile list"; } + description "Email address node with delivery information for the custom profile"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // mo for CustomProfile/CustomHttp + container custhttp-items { + list CustomHttp-list { + key "seqNum"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses callhome_CustomHttp-group; + description "HTTP node with the URL configuration for custom profile list"; + } + description "HTTP node with the URL configuration for custom profile"; } } - grouping eqptcap_SfpMfgDef-group { - leaf pnPattern { - config "false"; - type string; + grouping callhome_CustomEmail-group { + description "Email address node with delivery information for the custom profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with email-id"; } - // Internal vendor id - // Type is an MO-Defined-Type - leaf intVendorId { - config "false"; - description "Internal Vendor ID"; + leaf emailAddr { - // Type is an MO-Defined-Type - type eqptcap_IntVendorId; + type callhome_Email; + description "Email address to send email notifications"; } + } - // Magic key - // Type is an MO-Defined-Type - leaf magicKey { - config "false"; - description "Magic Key"; + grouping callhome_CustomHttp-group { + description "HTTP node with the URL configuration for custom profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with http url"; + } + leaf http { + type string { + length "11..255"; + } + description "HTTP URL configuration for custom profile"; + } + } - // Type is an MO-Defined-Type - type eqptcap_SfpVendorMagicKey; + grouping callhome_Transport-group { + description "Tranport node to configure transport related configuration"; + + leaf httpProxyEnable { + + type callhome_Boolean; + default "disabled"; + description "Enable HTTP proxy server to send messages"; } - // Transceiver Type - // Type is an MO-Defined-Type - leaf xcvr { - config "false"; - description "Transceiver Type"; + leaf proxyServer { - // Type is an MO-Defined-Type - type eqptcap_XcvrT; + type callhome_ServerType; + description "Proxy server name or IP address"; + } + leaf proxyServerPort { + type uint32 { + range "1..65535"; + } + default "8080"; + description "Configure proxy server port"; + } + leaf httpUseVrf { + type string { + length "1..32"; + } + default "default"; + description "Configure HTTP VRF name"; } - // Connector Type - // Type is an MO-Defined-Type - leaf connector { - config "false"; - description "Connector Type"; + leaf emailFrom { - // Type is an MO-Defined-Type - type eqptcap_ConnT; + type callhome_Email; + description "Configure from email address"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf emailReplyTo { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type callhome_Email; + description "Configure replyto email address"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // mo for Email + container emailserver-items { + list EmailServer-list { + key "emailServer"; - // Type is an MO-Defined-Type - type naming_Descr; + uses callhome_EmailServer-group; + description "Tranport email mail server node list"; + } + description "Tranport email mail server node"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + grouping callhome_EmailServer-group { + description "Tranport email mail server node"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + leaf emailServer { + + type callhome_ServerType; + description "SMTP server name or IP address"; + } + leaf mailServerPort { + type uint32 { + range "1..65535"; + } + default "25"; + description "Configure SMTP server port"; + } + leaf mailServerPriority { + type uint32 { + range "0..100"; + } + default "50"; + description "Configure SMTP server priority"; + } + leaf mailServerUseVrf { + type string { + length "1..32"; } + default "default"; + description "Configure SMTP mail server VRF name"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping cap_LogLevel-group { + description "Config Capability logging level"; - // Type is an MO-Defined-Type - type naming_Descr; + // logging level + leaf loggingLevel { + + type cap_LoggingLevel; + description "Logging Level"; } - leaf partNumber { + + // logging type + leaf loggingType { config "false"; - type string; + + type cap_LoggingType; + description "Logging type"; } } grouping datetime_Clock-group { + description "Clock Manager"; - // Type is an MO-Defined-Type leaf protocol { - description "Protocol Type"; - // Type is an MO-Defined-Type type datetime_ClockProtocol; + description "Protocol Type"; } - // Type is an MO-Defined-Type leaf vdcId { - description "Vdc"; - // Type is an MO-Defined-Type type datetime_VdcId; + description "Vdc"; } - // Type is an MO-Defined-Type leaf format { - description "Clock Format"; - // Type is an MO-Defined-Type type datetime_ClockFormat; + description "Clock Format"; + } + leaf formatDebug { + type boolean; + description "enable/disable Clock Format for debug"; + } + leaf formatSyslog { + type boolean; + description "enable/disable Clock Format for syslog"; + } + + // for clock logging level + leaf loggingLevel { + + type datetime_LoggingLevel; + description "Clock manager logging level"; } - // Inherited From pol:Obj - // Modified by Override: datetime:APol->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:APol - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type datetime_AdminState; + default "enabled"; + description "Admin State"; } - // Inherited From datetime:APol - // Type is an MO-Defined-Type leaf authSt { - description "Authentication State"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "Authentication State"; } container set-items { - // Added containment as a singleton: Prefix=set - // Acquired From Package datetime uses datetime_ClockSet-group; + description "Clock Set"; } container timezone-items { - // Added containment as a singleton: Prefix=timezone - // Acquired From Package datetime uses datetime_Timezone-group; + description "Clock Timezone"; } container summertime-items { - // Added containment as a singleton: Prefix=summertime - // Acquired From Package datetime uses datetime_SummerT-group; + description "Clock Summer-time"; + } + + container ttag-items { + + uses datetime_TTag-group; + description "ttag configuration"; } } grouping datetime_ClockSet-group { + description "Clock Set"; leaf time { type string; + description "HH:MM:SS Current Time"; } - // Type is an MO-Defined-Type leaf date { - description "Day of the month"; - // Type is an MO-Defined-Type type datetime_Date; + description "Day of the month"; } - // Type is an MO-Defined-Type leaf month { - description "Month of the year"; - // Type is an MO-Defined-Type type datetime_Month; + description "Month of the year"; } - // Type is an MO-Defined-Type leaf year { - description "Year"; - // Type is an MO-Defined-Type type datetime_Year; + description "Year"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping datetime_Timezone-group { + description "Clock Timezone"; - // Type is an MO-Defined-Type leaf hours { - description "Hours offset from UTC"; - // Type is an MO-Defined-Type type datetime_HourOffset; + description "Hours offset from UTC"; } - // Type is an MO-Defined-Type leaf minutes { - description "Minutes offset from UTC"; - // Type is an MO-Defined-Type type datetime_MinuteOffsetTz; + description "Minutes offset from UTC"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf nameT { type string; + description "Name of timezone"; } } grouping datetime_SummerT-group { + description "Clock Summer-time"; - // Type is an MO-Defined-Type leaf startWeek { - description "Week number to start"; - // Type is an MO-Defined-Type type datetime_WeekNum; + description "Week number to start"; } leaf startDay { type string; default "Sun"; + description "Weekday to start"; } leaf startMon { type string; default "Mar"; + description "Month to start"; } leaf startTime { type string; default "02:00"; + description "HH:MM Time to start"; } - // Type is an MO-Defined-Type leaf endWeek { - description "Week number to end"; - // Type is an MO-Defined-Type type datetime_WeekNum; + description "Week number to end"; } leaf endDay { type string; default "Sun"; + description "Weekday to end"; } leaf endMon { type string; default "Nov"; + description "Month to end"; } leaf endTime { type string; default "02:00"; + description "HH:MM Time to end"; } - // Type is an MO-Defined-Type leaf offsetMin { - description "Offset to add in minutes"; - // Type is an MO-Defined-Type type datetime_MinuteOffsetSt; + description "Offset to add in minutes"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf nameT { type string; + description "Name of timezone in summer"; + } + } + + grouping datetime_TTag-group { + description "ttag configuration"; + leaf ethtype { + type uint32 { + range "0..34998"; + } + default "0"; + description "Ethernet header type"; + } + leaf ttagMarkerInterval { + type uint32 { + range "1..4"; + } + default "1"; + description "PTP ttag marker interval in seconds"; + } + container if-items { + list ClkIf-list { + key "id"; + + uses datetime_ClkIf-group; + description "Interface configuration and management list"; + } + description "Interface configuration and management"; + } + } + + grouping datetime_ClkIf-group { + description "Interface configuration and management"; + + // interface id + leaf id { + + type nw_IfId; + description "Interface id"; + } + leaf ttag { + type boolean; + default "false"; + description "Ingress packet with ttag on interface"; + } + leaf ttagMarker { + type boolean; + default "false"; + description "ttag marker packet on interface"; } } grouping datetime_ClkPol-group { + description "Date Time Policy"; - // Type is an MO-Defined-Type leaf flags { config "false"; - description "System Status Flags (time sync status)"; - // Type is an MO-Defined-Type type datetime_SysStatusFlags; + description "System Status Flags (time sync status)"; } - // Type is an MO-Defined-Type leaf leap { config "false"; - description "Leap Indicator"; - // Type is an MO-Defined-Type type datetime_NTPLeapIndicator; + description "Leap Indicator"; } - // Type is an MO-Defined-Type leaf stratum { config "false"; - description "Clock Stratum"; - // Type is an MO-Defined-Type type datetime_NTPStratum; + description "Clock Stratum"; } leaf precision { config "false"; type int32; + description "Clock Precision"; } - // Type is an MO-Defined-Type leaf rootDelay { config "false"; - description "RootDelay"; - // Type is an MO-Defined-Type type datetime_NTPSignedTimeValue; + description "RootDelay"; } - // Type is an MO-Defined-Type leaf rootDispersion { config "false"; - description "RootDispersion"; - // Type is an MO-Defined-Type type datetime_NTPUnsignedTimeValue; + description "RootDispersion"; } - // Type is an MO-Defined-Type leaf refId { config "false"; - description "RefId"; - // Type is an MO-Defined-Type type datetime_NTPRefId; + description "RefId"; } leaf refTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reference Time"; } leaf refTimeRaw { config "false"; type uint64; + description "Raw Reference Time"; } - // Type is an MO-Defined-Type leaf poll { config "false"; - description "Polling Interval"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "Polling Interval"; } - // Type is an MO-Defined-Type leaf peer { config "false"; - description "The Current Synchronization Source/Peer"; - // Type is an MO-Defined-Type type datetime_NTPAssocIdentifier; + description "The Current Synchronization Source/Peer"; } leaf clock { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Clock"; } leaf clockRaw { config "false"; type uint64; + description "Clock Raw [Raw NTPD format]"; } - // Type is an MO-Defined-Type leaf srvStatus { config "false"; - description "NTP Daemon State"; - // Type is an MO-Defined-Type type datetime_NtpSrvStatus; + description "NTP Daemon State"; } - // Type is an MO-Defined-Type leaf logging { - description "NTP Logging Status"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "NTP Logging Status"; } - // Type is an MO-Defined-Type leaf loggingLevel { - description "NTP Logging Level"; - // Type is an MO-Defined-Type type datetime_LoggingLevel; + description "NTP Logging Level"; } - // Type is an MO-Defined-Type leaf master { - description "NTP Master Configuration"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "NTP Master Configuration"; } - // Type is an MO-Defined-Type leaf masterStratum { - description "NTP Master Stratum Level"; - // Type is an MO-Defined-Type type datetime_Stratum; + description "NTP Master Stratum Level"; + } + + leaf passive { + + type datetime_AdminState; + description "Enable/Disable Passive NTP Associations"; + } + + leaf allowPrivate { + + type datetime_AdminState; + description "Allow Private Mode NTP Packets"; + } + + leaf allowControl { + + type datetime_AdminState; + description "Allow Control Mode NTP Packets"; + } + + leaf rateLimit { + + type datetime_allowCtrlRateLimit; + description "Rate-Limit NTP Control Mode Packets"; } - // Inherited From pol:Obj - // Modified by Override: datetime:ClkPol->name - // Modified by Override: datetime:APol->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:APol - // Modified by Override: datetime:ClkPol->adminSt - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type datetime_AdminState; + default "enabled"; + description "Admin State"; } - // Inherited From datetime:APol - // Modified by Override: datetime:ClkPol->authSt - // Type is an MO-Defined-Type leaf authSt { - description "Authentication State"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "Authentication State"; } // NTP Client Autentication @@@ this is not exposed in logical model, we will start @@ -39022,10 +43674,10 @@ module Cisco-NX-OS-device { list NtpAuth-list { key "id"; - // Added containment: Prefix=auth - // Acquired From Package datetime uses datetime_NtpAuth-group; + description "Authentication Key list"; } + description "Authentication Key"; } // NTP Providers @@ -39033,10 +43685,10 @@ module Cisco-NX-OS-device { list NtpProvider-list { key "name"; - // Added containment: Prefix=prov - // Acquired From Package datetime uses datetime_NtpProvider-group; + description "NTP Server Or Peer list"; } + description "NTP Server Or Peer"; } // CSCvh50485 : removing from model until implemented @@ -39056,1257 +43708,705 @@ module Cisco-NX-OS-device { // NTP Access Group container accessgroup-items { - // Added containment as a singleton: Prefix=accessgroup - // Acquired From Package datetime uses datetime_AccessGroup-group; + description "NTP Access Group"; } // This is used to store IP address of source of NTP packets container srcIp-items { - // Added containment as a singleton: Prefix=srcIp - // Acquired From Package datetime uses datetime_NtpSrcIp-group; + description "NTP source IP address"; } // This is used to store interface sending NTP packets container srcIf-items { - // Added containment as a singleton: Prefix=srcIf - // Acquired From Package datetime uses datetime_NtpSrcIf-group; + description "NTP source interface"; } } grouping datetime_NtpAuth-group { + description "Authentication Key"; // encrypted key - // Type is an MO-Defined-Type leaf encryptedKey { - description "Encrypted Key"; - // Type is an MO-Defined-Type type datetime_Key; + description "Encrypted Key"; } - // Type is an MO-Defined-Type leaf isEncrypt { - description "Is Encrypted Flag"; - // Type is an MO-Defined-Type type datetime_Encrypt; + description "Is Encrypted Flag"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:ANtpAuthKey - // Modified by Override: datetime:NtpAuth->key - // Type is an MO-Defined-Type leaf key { - description "Key"; - // Type is an MO-Defined-Type type datetime_Key; + description "Key"; } - // Inherited From datetime:ANtpAuthKey - // Modified by Override: datetime:NtpAuth->id - // Type is an MO-Defined-Type leaf id { - description "Auth Key Id"; - // Type is an MO-Defined-Type type datetime_AuthKeyId; + description "Auth Key Id"; } leaf trusted { type boolean; + description "Trusted State"; } } grouping datetime_NtpProvider-group { + description "NTP Server Or Peer"; // This property tells if the configured provider is NTP server Or peer - // Type is an MO-Defined-Type leaf provT { - description "NTP Server Or Peer"; - // Type is an MO-Defined-Type type datetime_ProvT; + description "NTP Server Or Peer"; } // vrf name - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } - // Inherited From pol:Obj - // Modified by Override: datetime:NtpProvider->name - // Modified by Override: datetime:ANtpProv->name - // Type is an MO-Defined-Type leaf name { - description "NTP Server/Peer Name Or Address"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { // Restriction copied from aaa:NtpHostname type NXOS has max limit of 80 chars, limiting to 64 here length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.:-]{0,63}.*"; } + description "NTP Server/Peer Name Or Address"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf preferred { type boolean; + description "Preferred State"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->minPoll - // Type is an MO-Defined-Type leaf minPoll { - description "Min Poll"; - // Type is an MO-Defined-Type type datetime_Poll; + description "Min Poll"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->maxPoll - // Type is an MO-Defined-Type leaf maxPoll { - description "Max Poll"; - // Type is an MO-Defined-Type type datetime_Poll; + description "Max Poll"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->keyId - // Type is an MO-Defined-Type leaf keyId { - description "Key Id"; - // Type is an MO-Defined-Type type datetime_KeyId; + description "Key Id"; } // Status for NTP Providers container status-items { - // Added containment as a singleton: Prefix=status - // Acquired From Package datetime uses datetime_NtpProviderStatus-group; + description "NTP Provider Status"; } - // Rel-def from NtpProviderToNtpAuth container rsntpProviderToNtpAuth-items { - // Abstract containment of rsntpProviderToNtpAuth derived from datetime:NtpProvider list RsNtpProviderToNtpAuth-list { config "false"; key "tDn"; - // Added containment: Prefix=rsntpProviderToNtpAuth - // Acquired From Package datetime uses datetime_RsNtpProviderToNtpAuth_source-group; + description "Ntp Authentication Attachment list"; } + description "Ntp Authentication Attachment"; } } grouping datetime_NtpProviderStatus-group { + description "NTP Provider Status"; - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Peer Specific Flags"; - // Type is an MO-Defined-Type type datetime_PeerStatusFlags; + description "Peer Specific Flags"; } - // Type is an MO-Defined-Type leaf mode { config "false"; - description "The Association Mode Of NTP Server"; - // Type is an MO-Defined-Type type datetime_NTPPeerMode; + description "The Association Mode Of NTP Server"; } - // Type is an MO-Defined-Type leaf stratum { config "false"; - description "Stratum"; - // Type is an MO-Defined-Type type datetime_NTPStratum; + description "Stratum"; } - // Type is an MO-Defined-Type leaf peerPoll { config "false"; - description "PeerPoll"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "PeerPoll"; } - // Type is an MO-Defined-Type leaf hostPoll { config "false"; - description "HostPoll"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "HostPoll"; } leaf reach { config "false"; type uint8; + description "Reach"; } leaf delay { config "false"; type string; + description "Delay"; } leaf delayRaw { config "false"; type int32; + description "DelayRaw"; } - // Type is an MO-Defined-Type leaf dispersion { config "false"; - description "Dispersion"; - // Type is an MO-Defined-Type type datetime_NTPUnsignedTimeValue; + description "Dispersion"; } } grouping datetime_AccessGroup-group { + description "NTP Access Group"; leaf peer { type string; + description "NTP Peer Access Group Name (max 63 characters)"; } leaf serveOnly { type string; + description "NTP ServeOnly Access Group Name (max 63 characters)"; } leaf serve { type string; + description "NTP Serve Access Group Name (max 63 characters)"; } leaf queryOnly { type string; + description "NTP QueryOnly Access Group Name (max 63 characters)"; + } + + leaf matchAll { + + type datetime_AdminState; + description "Scan All NTP Access-Group Options"; } } grouping datetime_NtpSrcIp-group { + description "NTP source IP address"; leaf srcIp { type address_Ipv4; + description "Source IP Address"; } leaf srcIpv6 { type address_Ipv6; + description "Source IPv6 Address"; } } grouping datetime_NtpSrcIf-group { + description "NTP source interface"; // Source interface - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping datetime_Ntpq-group { + description "Ntp Concrete Details"; leaf tally { config "false"; type string; + description "Tally"; } leaf remote { config "false"; type string; + description "Remote"; } leaf refid { config "false"; type string; + description "RefId"; } leaf stratum { config "false"; type string; + description "Stratum"; } leaf t { config "false"; type string; + description "Type"; } leaf when { config "false"; type string; + description "When"; } leaf poll { config "false"; type string; + description "Poll Interval"; } leaf reach { config "false"; type string; + description "Reach"; } leaf delay { config "false"; type string; + description "Delay"; } leaf offset { config "false"; type string; + description "Offset"; } leaf jitter { config "false"; type string; + description "Jitter"; } } - grouping span_Acct-group { - leaf sessionNum { - config "false"; - type uint32; - } - leaf sessionId { - config "false"; - type uint32; - } - leaf sourceId { - config "false"; - type uint32; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping span_Entity-group { + description "SPAN Entity"; // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; - } - } - - grouping span_RetryCont-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; } - container src-items { - list RetrySrc-list { - config "false"; - key "srcDn"; + container monitor-items { + list Monitor-list { + key "id"; - // Added containment: Prefix=src - // Acquired From Package span - uses span_RetrySrc-group; + uses span_Monitor-group; + description "Monitor MO for each SPAN session identified by session id list"; } + description "Monitor MO for each SPAN session identified by session id"; } } - grouping span_RetrySrc-group { - - // srcDn - // Type is an MO-Defined-Type - leaf srcDn { - config "false"; - description "RetrySrc Dn"; - - // Type is an MO-Defined-Type - type fabric_PrimKey; - } + grouping span_Monitor-group { + description "Monitor MO for each SPAN session identified by session id"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // scalar:Enum8 Value Types + leaf type { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_Type; + description "Type of the current monitor session"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf operState { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type span_OperStQual; + description "Actual State of the current session updated by SPAN process"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - container tgt-items { - list RetryTarget-list { - config "false"; - key "targetDn"; + leaf configState { - // Added containment: Prefix=tgt - // Acquired From Package span - uses span_RetryTarget-group; - } + type span_State; + description "State of the current session as configured by the user"; } - } - grouping span_RetryTarget-group { - - // targetDn - // Type is an MO-Defined-Type - leaf targetDn { - config "false"; - description "RetryTarget Dn"; + // string:Basic Value Types + leaf description { - // Type is an MO-Defined-Type - type fabric_PrimKey; + type span_Description; + description "Description for the current monitor session"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf vrfName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "VRF name for the erspan-source session.(user specified name / default / manangement)"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf aclName { - // Type is an MO-Defined-Type - type nw_AdminSt; + type span_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Uint Value Types + leaf id { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type span_SsnId; + description "Session identification number for current monitor session."; } - } - grouping span_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf mtu { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_MtuValue; + description "Value of Maximum transmission unit truncation size for SPAN packets"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf allowSharing { + type boolean; + default "false"; + description "Denotes whether sharing is enabled for the given filter ACL"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf headerType { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type span_HeaderVer; + description "Denotes header type ver is enabled for the given erspan session"; } - - // Abstraction of span database - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package span - uses span_Db-group; - } + leaf isMarkerPacket { + type boolean; + default "false"; + description "Denotes whether marker packet is enabled for the given erspan-source session"; } - - // Span session definition. Each session represents a - // a set of sources on which the packets are monitored. - // These packets are sent to a given destination that - // is part of this session @@@ There could be only 4 sessions active at a - // @@@ given time - container session-items { - list Session-list { - config "false"; - key "name"; - - // Added containment: Prefix=session - // Acquired From Package span - uses span_Session-group; - } + leaf isFwdDropsRx { + type boolean; + default "false"; + description "Denotes whether source forwarding drops rx is enabled for the given erspan-source session"; } - } - - grouping span_Db-group { - - // Type of the database - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_DbT; + leaf isFwdDropsRxLowPriority { + type boolean; + default "false"; + description "Denotes whether source forwarding drops rx has low priority for the given erspan-source session"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf erspanId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_ErspanId; + description "ERSPAN identification number"; } - // SPAN Endpoint resolution records - container epr-items { - list EpRec-list { - config "false"; - key "vnid ip"; - - // Added containment: Prefix=epr - // Acquired From Package span - uses span_EpRec-group; - } - } - } + leaf ipTtl { - grouping span_EpRec-group { - leaf vnid { - config "false"; - type string; - } - leaf ip { - config "false"; - type address_Ip; + type span_IpTtl; + description "ERSPAN IP time-to-live value"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf ipDscp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_IpDscp; + description "ERSPAN IP DSCP value"; } - } - - grouping span_Session-group { - // Identifier of the session - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf markerPktInt { - // Type is an MO-Defined-Type - type span_SessionId; + type span_MarkerPktInt; + description "ERSPAN session send marker packet interval value"; } - // Administrative state of the session - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Interface types + leaf destinationPorts { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Destination ports for the current session"; } - leaf ASrcGrpDn { - config "false"; - type string; + leaf destinationIp { + type address_Ip; + description "Destination IP address for the current erspan session"; } - - // Inherited From pol:Obj - // Modified by Override: span:Session->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf sourceIp { + type address_Ip; + description "Source IP address for the current erspan destination session"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + leaf shutError { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type span_ErrorInt; + description "failure code for raising a config fault during shut operation"; } + container srcintf-items { + list SourceIntf-list { + key "id"; - // Access source - container src-items { - list Source-list { - config "false"; - key "name"; - - // Added containment: Prefix=src - // Acquired From Package span - uses span_Source-group; + uses span_SourceIntf-group; + description "Source interface configuration MO. list"; } + description "Source interface configuration MO."; } + container filter-items { + list FilterVlan-list { + key "vlan"; - // Fabric source - container fabsrc-items { - list FabSource-list { - config "false"; - key "name"; - - // Added containment: Prefix=fabsrc - // Acquired From Package span - uses span_FabSource-group; + uses span_FilterVlan-group; + description "Range of Filter VLANs specified for the current monitor sesion list"; } + description "Range of Filter VLANs specified for the current monitor sesion"; } + container src-items { + list SourceVlan-list { + key "vlan"; - // ERSpan destination information. The destination - // is reachable via a GRE tunnel - container erdst-items { - - // Added containment as a singleton: Prefix=erdst - // Acquired From Package span - uses span_ERDestination-group; - } - - // Local span destination information. The destination - // is locally attached to a port in the device - container ldst-items { - - // Added containment as a singleton: Prefix=ldst - // Acquired From Package span - uses span_LDestination-group; - } - - // Implicit DomainRef objects cannot be user created - they are implicitly created - // and added to domainable objects created by the backend - container idomain-items { - list IDomainRef-list { - config "false"; - key "name"; - - // Added containment: Prefix=idomain - // Acquired From Package aaa - uses aaa_IDomainRef-group; + uses span_SourceVlan-group; + description "Source configuration MO. list"; } + description "Source configuration MO."; } + container srcvsan-items { + list SourceVsan-list { + key "vsan"; - // Rel-def from SessionToDomainRef - container rssessionToDomainRef-items { - - // Added containment as a singleton: Prefix=rssessionToDomainRef - // Acquired From Package span - uses span_RsSessionToDomainRef_source-group; + uses span_SourceVsan-group; + description "Source vsan configuration MO. list"; + } + description "Source vsan configuration MO."; } } - grouping span_Source-group { - - // Inherited From pol:Obj - // Modified by Override: span:Source->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } + grouping span_SourceIntf-group { + description "Source interface configuration MO."; - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf direction { - // Type is an MO-Defined-Type - type naming_Descr; + type span_SrcDirection; + description "The direction of the source interface - Rx, Tx, Both"; } - // Type of the source - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf id { - // Type is an MO-Defined-Type - type span_SrcT; + type nw_IfId; + description "The interface id for the session"; } - // The direction of the packets to be monitored - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf dir { + leaf error { config "false"; - description "Direction"; - // Type is an MO-Defined-Type - type span_Direction; + type span_ErrorInt; + description "failure code for raising a config fault during applying source interface"; } + } - // Mode of the source (access side or fabric side) - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; - - // Type is an MO-Defined-Type - type span_Mode; - } - leaf domain { - config "false"; + grouping span_FilterVlan-group { + description "Range of Filter VLANs specified for the current monitor sesion"; + leaf vlan { type string; - } - - // Rel-def from spanSrcToL2CktEpAtt - container rsspanSrcToL2CktEpAtt-items { - - // Added containment as a singleton: Prefix=rsspanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RsSpanSrcToL2CktEpAtt_source-group; + description "VLAN id for Filter VLAN"; } } - grouping span_FabSource-group { - leaf ctxEncap { - config "false"; - type string; - } - leaf bdEncap { - config "false"; + grouping span_SourceVlan-group { + description "Source configuration MO."; + leaf vlan { type string; + description "VLAN id for Source VLAN"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Type of the source - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_SrcT; - } - - // The direction of the packets to be monitored - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Direction"; - - // Type is an MO-Defined-Type - type span_Direction; - } - - // Mode of the source (access side or fabric side) - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + leaf direction { - // Type is an MO-Defined-Type - type span_Mode; - } - leaf domain { - config "false"; - type string; + type span_SrcDirection; + description "The direction of the source VLAN - Rx, Tx, Both"; } } - grouping span_ERDestination-group { - - // Encapsulation type, the encapsulation of the monitored - // packet sent to the destination - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_DestEncapT; - } - leaf srcIp { - config "false"; - type address_Ip; - } - leaf dstIp { - config "false"; - type address_Ip; - } - - // Erspan version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type span_ErSpanVer; - } - - // Flow id of the erspan packet - // Type is an MO-Defined-Type - leaf flowId { - config "false"; - description "Flow ID"; - - // Type is an MO-Defined-Type - type span_FlowId; - } - - // Ttl used in the erspan packet - // Type is an MO-Defined-Type - leaf ttl { - config "false"; - description "TTL"; - - // Type is an MO-Defined-Type - type l3_Ttl; - } - - // the vrf on which the erspan packet is sent - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf vnid { - config "false"; + grouping span_SourceVsan-group { + description "Source vsan configuration MO."; + leaf vsan { type string; + description "VSAN id for Source VSAN"; } - // dscp value to be used when sending the monitored - // packets using ERSpan - // Type is an MO-Defined-Type - leaf dscp { - config "false"; - description "Dscp"; - - // Type is an MO-Defined-Type - type qosp_Dscp; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // mtu truncation size for the packets - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; - - // Type is an MO-Defined-Type - type span_Mtu; - } - - // Operational state of the session - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf direction { - // Type is an MO-Defined-Type - type span_OperSt; + type span_SrcDirection; + description "The direction of the source VSAN - Rx, Tx, Both"; } } - grouping span_LDestination-group { - - // Port - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // mtu truncation size for the packets - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; - - // Type is an MO-Defined-Type - type span_Mtu; + grouping span_ErspanOriginIp-group { + description "Global MO of origin Ip address for every Erspan session"; + leaf originIp { + type address_Ip; + description "Global origin IP address for all erspan sessions"; } - - // Operational state of the session - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type span_OperSt; + leaf isGlobal { + type boolean; + default "false"; + description "Denotes whether origin ip is global across all erspan sessions"; } } grouping dhcp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + description "DHCP Entity"; // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per dhcp instance information. There is only // one instance of dhcp relay running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package dhcp uses dhcp_Inst-group; + description "DHCP Instance"; } } grouping dhcp_Inst-group { + description "DHCP Instance"; leaf v4RelayEnabled { type boolean; + description "DHCPv4 Enabled"; } leaf v6RelayEnabled { type boolean; + description "DHCPv6 Enabled"; } leaf SnoopingEnabled { type boolean; + description "Snooping Enabled"; } leaf SnoopingVerifyMacAddressEnabled { type boolean; + default "true"; + description "Snooping Verify Mac Address Enabled"; } leaf SnoopingInformationOptionEnabled { type boolean; + description "Snooping Information Option Enabled"; } leaf RelayInformationOptionEnabled { type boolean; + description "Relay Information Option Enabled"; } leaf RelayInformationOptionVpnEnabled { type boolean; + description "Relay Information Option Vpn Enabled"; + } + leaf relayInformationOptionServerIdOverrideDisableEnabled { + type uint32 { + range "0..1"; + } + default "0"; + description "Relay Information Option Server-id-override-disable Enabled"; } leaf RelayInformationOptionTrustEnabled { type boolean; + description "Relay Information Option Trust Enabled"; } leaf RelayInformationTrustAllEnabled { type boolean; + description "Relay Information Trust All Enabled"; } leaf RelaySubOptionCircuitIdCustomizedEnabled { type boolean; + description "Relay Sub-Option Circuit-id Customized Enabled"; } leaf RelaySubOptionCircuitIdFormatString { type string; + description "Relay Sub-Option Circuit-id Format String"; } leaf RelaySubOptionTypeCiscoEnabled { type boolean; + description "Relay Sub-Option Type Cisco Enabled"; } leaf SmartRelayGlobalEnabled { type boolean; + description "Smart Relay Global Enabled"; } leaf Ipv6RelayInformationOptionVpnEnabled { type boolean; + description "IPv6 Relay Information Option Vpn Enabled"; } leaf Ipv6RelayOptionTypeCiscoEnabled { type boolean; + description "IPv6 Relay Sub-Option Type Cisco Enabled"; + } + leaf ipv6RelayOption79Enabled { + type boolean; + description "IPv6 Relay Option79 Enabled"; } leaf daiValidateSrc { type boolean; + description "DAI Validate Type: src-mac"; } leaf daiValidateDst { type boolean; + description "DAI Validate Type: dst-mac"; } leaf daiValidateIp { type boolean; + description "DAI Validate Type: ip"; } // Set DAI Log Buffer Entries - // Type is an MO-Defined-Type leaf daiLogBufEntries { - description "DAI Log Buffer Entries"; - // Type is an MO-Defined-Type type dhcp_NumLogBuffers; + description "DAI Log Buffer Entries"; } leaf pktStrictVal { type boolean; + description "Pkt Strict Validation"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Snoop sub-option circuit-id format string + leaf snoopSubOptionCircuitIdFormatString { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type dhcp_StringBasicDhcp; + description "Snoop Sub-Option Circuit-id Format String"; } // IP ARP inspection on vlan, used for enabling ARP inspection on Vlan @@ -40314,23 +44414,35 @@ module Cisco-NX-OS-device { list DAIVlan-list { key "daiVlanNum"; - // Added containment: Prefix=daivlan - // Acquired From Package dhcp uses dhcp_DAIVlan-group; + description "DAI on Vlan list"; + } + description "DAI on Vlan"; + } + + // DHCP DAI interface, + // used for representing DAI functionality on + // the interface + container daiif-items { + list DAIIf-list { + key "id"; + + uses dhcp_DAIIf-group; + description "DHCP DAI Interface list"; } + description "DHCP DAI Interface"; } // DHCP client-if, used for representing client functionality on // the interface container clientif-items { list ClientIf-list { - config "false"; key "id"; - // Added containment: Prefix=clientif - // Acquired From Package dhcp uses dhcp_ClientIf-group; + description "DHCP Client Interface list"; } + description "DHCP Client Interface"; } // DHCP relay-if, used for representing relay functionality on @@ -40339,10 +44451,10 @@ module Cisco-NX-OS-device { list RelayIf-list { key "id"; - // Added containment: Prefix=relayif - // Acquired From Package dhcp uses dhcp_RelayIf-group; + description "DHCP Relay Interface list"; } + description "DHCP Relay Interface"; } // DHCP server if, not supported; defined for completeness @@ -40351,26 +44463,24 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=serverif - // Acquired From Package dhcp uses dhcp_ServerIf-group; + description "DHCP Server Interface list"; } + description "DHCP Server Interface"; } // Global Ipv4 Source Interface Config container srcif-items { - // Added containment as a singleton: Prefix=srcif - // Acquired From Package dhcp uses dhcp_SourceIf-group; + description "IPv4 Global DHCP Source Interface"; } // Global Ipv6 Source Interface Config container v6srcif-items { - // Added containment as a singleton: Prefix=v6srcif - // Acquired From Package dhcp uses dhcp_V6SourceIf-group; + description "IPv6 Global DHCP Source Interface"; } // DHCP IP source binding, @@ -40379,23 +44489,22 @@ module Cisco-NX-OS-device { list IpSrcBind-list { key "bindIp bindVlan bindMac bindIntf"; - // Added containment: Prefix=ipsrcbindip - // Acquired From Package dhcp uses dhcp_IpSrcBind-group; + description "DHCP IP Source Binding static entry list"; } + description "DHCP IP Source Binding static entry"; } // DHCP ipsgif, used for representing ipsg functionality on // the interface (ip verify source dhcp-snooping-vlan) container ipsgif-items { list IpsgIf-list { - config "false"; key "id"; - // Added containment: Prefix=ipsgif - // Acquired From Package dhcp uses dhcp_IpsgIf-group; + description "DHCP Ipsg Interface list"; } + description "DHCP Ipsg Interface"; } // DHCP IPSG Exclude Vlan, used forexcluding vlan from IPSG @@ -40403,10 +44512,10 @@ module Cisco-NX-OS-device { list IpsgExVlan-list { key "ipsgExVlanNum"; - // Added containment: Prefix=ipsgexvlan - // Acquired From Package dhcp uses dhcp_IpsgExVlan-group; + description "DHCP IPSG exclude on Vlan list"; } + description "DHCP IPSG exclude on Vlan"; } // DHCP snoop-vlan, used for representing snooping functionality on @@ -40415,128 +44524,73 @@ module Cisco-NX-OS-device { list SnoopVlan-list { key "snoopVlanNum"; - // Added containment: Prefix=snoopvlan - // Acquired From Package dhcp uses dhcp_SnoopVlan-group; + description "DHCP Snoop on Vlan list"; } + description "DHCP Snoop on Vlan"; } // DHCP snoop-if, used for representing snoop functionality on // the interface container snoopif-items { list SnoopIf-list { - config "false"; key "id"; - // Added containment: Prefix=snoopif - // Acquired From Package dhcp uses dhcp_SnoopIf-group; + description "DHCP Snoop Interface list"; } + description "DHCP Snoop Interface"; } } grouping dhcp_DAIVlan-group { + description "DAI on Vlan"; leaf daiVlanNum { type uint16; + description "DAI Vlan Number"; } // Log All/Permit/None DAI on Vlan matching DHCP Bindings - // Type is an MO-Defined-Type leaf daiLogTypeOnVlan { - description "Log All/Permit/None DAI on Vlan matching DHCP Bindings"; - // Type is an MO-Defined-Type type dhcp_DAILogType; + description "Log All/Permit/None DAI on Vlan matching DHCP Bindings"; } } - grouping dhcp_ClientIf-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type dhcp_ClIfOperSt; + grouping dhcp_DAIIf-group { + description "DHCP DAI Interface"; + leaf daiEnabled { + type boolean; + description "DAI Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; - } - - // DHCP address received (for client) - container addr-items { - list ClientAddr-list { - config "false"; - key "address"; - - // Added containment: Prefix=addr - // Acquired From Package dhcp - uses dhcp_ClientAddr-group; - } - } - - // DHCPv6 address received (for client) - container addrv6-items { - list Clientv6Addr-list { - config "false"; - key "address"; - - // Added containment: Prefix=addrv6 - // Acquired From Package dhcp - uses dhcp_Clientv6Addr-group; - } - } - - // DHCP client response - container resp-items { - - // Added containment as a singleton: Prefix=resp - // Acquired From Package dhcp - uses dhcp_ClientResp-group; + description "Admin State"; } // Represents a Complex TLV, @@ -40546,10 +44600,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -40558,10 +44612,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -40570,10 +44624,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40582,10 +44636,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40594,10 +44648,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40606,10 +44660,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40618,10 +44672,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40630,67 +44684,33 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def from pseudoIf - container rspseudoIf-items { - - // Abstract containment of rspseudoIf derived from dhcp:ClientIf - list RsPseudoIf-list { - key "tDn"; - - // Added containment: Prefix=rspseudoIf - // Acquired From Package dhcp - uses dhcp_RsPseudoIf_source-group; - } - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } - grouping dhcp_ClientAddr-group { - leaf address { + grouping dhcptlvpol_Complex-group { + description "Complex"; + + // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. + leaf code { config "false"; - type address_Ip; - } - } - grouping dhcp_Clientv6Addr-group { - leaf address { + type tlv_Code; + description "TBD"; + } + leaf id { config "false"; - type address_Ip; + type uint32; } - } - - grouping dhcp_ClientResp-group { // Represents an IP TLV container ip-items { @@ -40698,10 +44718,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlv - uses dhcptlv_Ip-group; + uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40710,10 +44730,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlv - uses dhcptlv_Mac-group; + uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40722,10 +44742,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlv - uses dhcptlv_UInt64-group; + uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40734,10 +44754,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlv - uses dhcptlv_UInt32-group; + uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40746,10 +44766,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlv - uses dhcptlv_UInt16-group; + uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40758,10 +44778,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlv - uses dhcptlv_UByte-group; + uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } // Represents a text TLV @@ -40770,37 +44790,22 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlv - uses dhcptlv_Text-group; - } - } - - // Represents a Complex TLV. - // Complex TLV contains Basic TLVs - container complex-items { - list Complex-list { - config "false"; - key "code id"; - - // Added containment: Prefix=complex - // Acquired From Package dhcptlv - uses dhcptlv_Complex-group; + uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } } - grouping dhcptlv_Ip-group { + grouping dhcptlvpol_Ip-group { + description "IP"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40808,17 +44813,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Mac-group { + grouping dhcptlvpol_Mac-group { + description "MAC"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40826,17 +44829,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt64-group { + grouping dhcptlvpol_UInt64-group { + description "64 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40844,17 +44845,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt32-group { + grouping dhcptlvpol_UInt32-group { + description "32 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40862,17 +44861,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt16-group { + grouping dhcptlvpol_UInt16-group { + description "16 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40880,17 +44877,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UByte-group { + grouping dhcptlvpol_UByte-group { + description "Unsigned Byte"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40898,17 +44893,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Text-group { + grouping dhcptlvpol_Text-group { + description "Text"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40916,21 +44909,96 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Complex-group { + grouping dhcp_ClientIf-group { + description "DHCP Client Interface"; - // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type - leaf code { + // Circuit id info to per port + leaf circuitId { + + type dhcp_StringBasicDhcp; + description "Option82 suboption Circuit Id Information to Per Port"; + } + leaf raGuard { + type boolean; + description "Configure IPv6 ND RA Guard"; + } + + // Operational state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type tlv_Code; + type dhcp_ClIfOperSt; + description "Operational State"; } + + // Interface ID of this endpoint leaf id { - config "false"; - type uint32; + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type nw_IfAdminSt; + description "Admin State"; + } + + // DHCP address received (for client) + container addr-items { + list ClientAddr-list { + config "false"; + key "address"; + + uses dhcp_ClientAddr-group; + description "Client Address list"; + } + description "Client Address"; + } + + // DHCPv6 address received (for client) + container addrv6-items { + list Clientv6Addr-list { + config "false"; + key "address"; + + uses dhcp_Clientv6Addr-group; + description "Client v6 Address list"; + } + description "Client v6 Address"; + } + + // DHCP client response + container resp-items { + + uses dhcp_ClientResp-group; + description "Client Response"; + } + + // Represents a Complex TLV, + // complex TLV contains Basic TLVs + container complex-items { + list Complex-list { + config "false"; + key "code id"; + + uses dhcptlvpol_Complex-group; + description "Complex list"; + } + description "Complex"; + } + + // Represents a text TLV + container text-items { + list Text-list { + config "false"; + key "code"; + + uses dhcptlvpol_Text-group; + description "Text list"; + } + description "Text"; } // Represents an IP TLV @@ -40939,10 +45007,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlv - uses dhcptlv_Ip-group; + uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40951,10 +45019,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlv - uses dhcptlv_Mac-group; + uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40963,10 +45031,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlv - uses dhcptlv_UInt64-group; + uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40975,10 +45043,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlv - uses dhcptlv_UInt32-group; + uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40987,10 +45055,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlv - uses dhcptlv_UInt16-group; + uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40999,41 +45067,50 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlv - uses dhcptlv_UByte-group; + uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Represents a text TLV - container text-items { - list Text-list { - config "false"; - key "code"; + container rspseudoIf-items { - // Added containment: Prefix=text - // Acquired From Package dhcptlv - uses dhcptlv_Text-group; + list RsPseudoIf-list { + key "tDn"; + + uses dhcp_RsPseudoIf_source-group; + description "Pseudo Interface list"; } + description "Pseudo Interface"; } - } - grouping dhcptlvpol_Complex-group { + container rtvrfMbr-items { - // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type - leaf code { - config "false"; - description "TBD"; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } - // Type is an MO-Defined-Type - type tlv_Code; + grouping dhcp_ClientAddr-group { + description "Client Address"; + leaf address { + config "false"; + type address_Ip; + description "Address"; } - leaf id { + } + + grouping dhcp_Clientv6Addr-group { + description "Client v6 Address"; + leaf address { config "false"; - type uint32; + type address_Ip; + description "v6 Address"; } + } + + grouping dhcp_ClientResp-group { + description "Client Response"; // Represents an IP TLV container ip-items { @@ -41041,10 +45118,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Ip-group; + uses dhcptlv_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41053,10 +45130,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Mac-group; + uses dhcptlv_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41065,10 +45142,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt64-group; + uses dhcptlv_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41077,10 +45154,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt32-group; + uses dhcptlv_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41089,10 +45166,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt16-group; + uses dhcptlv_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41101,10 +45178,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UByte-group; + uses dhcptlv_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } // Represents a text TLV @@ -41113,24 +45190,35 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Text-group; + uses dhcptlv_Text-group; + description "Text list"; } + description "Text"; + } + + // Represents a Complex TLV. + // Complex TLV contains Basic TLVs + container complex-items { + list Complex-list { + config "false"; + key "code id"; + + uses dhcptlv_Complex-group; + description "Complex list"; + } + description "Complex"; } } - grouping dhcptlvpol_Ip-group { + grouping dhcptlv_Ip-group { + description "IP"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41138,17 +45226,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_Mac-group { + grouping dhcptlv_Mac-group { + description "MAC"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41156,17 +45242,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt64-group { + grouping dhcptlv_UInt64-group { + description "64 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41174,17 +45258,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt32-group { + grouping dhcptlv_UInt32-group { + description "32 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41192,17 +45274,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt16-group { + grouping dhcptlv_UInt16-group { + description "16 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41210,17 +45290,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UByte-group { + grouping dhcptlv_UByte-group { + description "Unsigned Byte"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41228,17 +45306,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_Text-group { + grouping dhcptlv_Text-group { + description "Text"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41246,65 +45322,144 @@ module Cisco-NX-OS-device { } } + grouping dhcptlv_Complex-group { + description "Complex"; + + // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. + leaf code { + config "false"; + + type tlv_Code; + description "TBD"; + } + leaf id { + config "false"; + type uint32; + } + + // Represents an IP TLV + container ip-items { + list Ip-list { + config "false"; + key "code value"; + + uses dhcptlv_Ip-group; + description "IP list"; + } + description "IP"; + } + + // Represents a Mac TLV + container mac-items { + list Mac-list { + config "false"; + key "code value"; + + uses dhcptlv_Mac-group; + description "MAC list"; + } + description "MAC"; + } + + // Represents a UInt64 TLV + container uint64-items { + list UInt64-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt64-group; + description "64 Bit Unsigned Integer list"; + } + description "64 Bit Unsigned Integer"; + } + + // Represents a UInt32 TLV + container uint32-items { + list UInt32-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt32-group; + description "32 Bit Unsigned Integer list"; + } + description "32 Bit Unsigned Integer"; + } + + // Represents a UInt16 TLV + container uint16-items { + list UInt16-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt16-group; + description "16 Bit Unsigned Integer list"; + } + description "16 Bit Unsigned Integer"; + } + + // Represents a UByte TLV + container ubyte-items { + list UByte-list { + config "false"; + key "code value"; + + uses dhcptlv_UByte-group; + description "Unsigned Byte list"; + } + description "Unsigned Byte"; + } + + // Represents a text TLV + container text-items { + list Text-list { + config "false"; + key "code"; + + uses dhcptlv_Text-group; + description "Text list"; + } + description "Text"; + } + } + grouping dhcp_RelayIf-group { + description "DHCP Relay Interface"; + leaf subnetSelection { + type address_Ip; + description "DHCP relay source subnet"; + } // DHCP options - // Type is an MO-Defined-Type leaf options { - description "DHCP Options"; - // Type is an MO-Defined-Type type dhcp_Options; + description "DHCP Options"; } leaf SmartRelayEnabled { type boolean; + description "Smart Relay Enabled"; } leaf SubnetBroadcastEnabled { type boolean; + description "Subnet Broadcast Enabled"; } leaf InformationTrustedEnabled { type boolean; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + description "Information Trusted Enabled"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // DHCP OPTION @@ -41313,10 +45468,10 @@ module Cisco-NX-OS-device { config "false"; key "name"; - // Added containment: Prefix=opt - // Acquired From Package dhcp uses dhcp_OptionDef-group; + description "DHCP Option list"; } + description "DHCP Option"; } // DHCP relay address @@ -41324,10 +45479,10 @@ module Cisco-NX-OS-device { list RelayAddr-list { key "vrf address"; - // Added containment: Prefix=addr - // Acquired From Package dhcp uses dhcp_RelayAddr-group; + description "Relay Address list"; } + description "Relay Address"; } // DHCPv6 relay address @@ -41335,26 +45490,24 @@ module Cisco-NX-OS-device { list V6RelayAddr-list { key "vrf address dstif"; - // Added containment: Prefix=addrv6 - // Acquired From Package dhcp uses dhcp_V6RelayAddr-group; + description "v6 Relay Address list"; } + description "v6 Relay Address"; } // Ipv4 dhcp Source interface per i/f container srcif-items { - // Added containment as a singleton: Prefix=srcif - // Acquired From Package dhcp uses dhcp_SrcIf-group; + description "IPv4 DHCP Source Interface per if"; } // Ipv6 dhcp Source interface per i/f container v6srcif-items { - // Added containment as a singleton: Prefix=v6srcif - // Acquired From Package dhcp uses dhcp_V6SrcIf-group; + description "IPv6 DHCP Source Interface per if"; } // Represents a Complex TLV, @@ -41364,10 +45517,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41376,10 +45529,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41388,10 +45541,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41400,10 +45553,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41412,10 +45565,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41424,10 +45577,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41436,10 +45589,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41448,60 +45601,38 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_RelayAddr-group { + description "Relay Address"; // vrf in which the dhcp server is present. Valid only // when the client is in a different vrf from the server // vrf - // Type is an MO-Defined-Type leaf vrf { - description "vrf in which the dhcp server is present. Valid only when the client is in a different vrf from the server vrf"; - // Type is an MO-Defined-Type type l3_VrfName; + description "vrf in which the dhcp server is present. Valid only when the client is in a different vrf from the server vrf"; } leaf counter { type uint16; + description "Counter"; } - // Property has READ-CREATE access leaf address { type address_Ip; + description "Address"; } // Gateway IP address, valid only when we are crossing @@ -41511,49 +45642,48 @@ module Cisco-NX-OS-device { list RelayGw-list { key "address"; - // Added containment: Prefix=gw - // Acquired From Package dhcp uses dhcp_RelayGw-group; + description "Relay Gateway list"; } + description "Relay Gateway"; } } grouping dhcp_RelayGw-group { + description "Relay Gateway"; - // Property has READ-CREATE access leaf address { type address_Ip; + description "Address"; } } grouping dhcp_V6RelayAddr-group { + description "v6 Relay Address"; // vrf in which the dhcp server is present. Valid only // when the client is in a different vrf from the server // vrf - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } leaf counter { type uint16; + description "Counter"; } // Destination interface for IPv6 relay address - // Type is an MO-Defined-Type leaf dstif { - description "Destination Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Destination Interface"; } - // Property has READ-CREATE access leaf address { type address_Ip; + description "v6 Address"; } // Gateway IP address, valid only when we are crossing @@ -41563,88 +45693,75 @@ module Cisco-NX-OS-device { list V6RelayGw-list { key "address"; - // Added containment: Prefix=gw - // Acquired From Package dhcp uses dhcp_V6RelayGw-group; + description "v6 Relay Gateway list"; } + description "v6 Relay Gateway"; } } grouping dhcp_V6RelayGw-group { + description "v6 Relay Gateway"; - // Property has READ-CREATE access leaf address { type address_Ip; + description "v6 Address"; } } grouping dhcp_SrcIf-group { + description "IPv4 DHCP Source Interface per if"; - // Type is an MO-Defined-Type leaf sourceInterface { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping dhcp_V6SrcIf-group { + description "IPv6 DHCP Source Interface per if"; - // Type is an MO-Defined-Type leaf v6sourceInterface { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping dhcp_ServerIf-group { + description "DHCP Server Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -41654,10 +45771,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41666,10 +45783,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41678,10 +45795,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41690,10 +45807,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41702,10 +45819,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41714,10 +45831,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41726,10 +45843,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41738,201 +45855,139 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_SourceIf-group { + description "IPv4 Global DHCP Source Interface"; - // Type is an MO-Defined-Type leaf sourceInterface { - description "Global Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Global Source Interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } } grouping dhcp_V6SourceIf-group { + description "IPv6 Global DHCP Source Interface"; - // Type is an MO-Defined-Type leaf v6sourceInterface { - description "Global Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Global Source Interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } } grouping dhcp_IpSrcBind-group { + description "DHCP IP Source Binding static entry"; leaf bindVlan { type uint16; + description "IP Source Biinding Vlan Number"; } leaf bindIp { type address_Ip; + description "IP Source Biinding Vlan Number"; } leaf bindMac { type address_Mac; + description "IP Source Client Hardware Address"; } // Interface on which the client was discovered - // Type is an MO-Defined-Type leaf bindIntf { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface ID"; } } grouping dhcp_IpsgIf-group { + description "DHCP Ipsg Interface"; leaf ipsgEnabled { - config "false"; type boolean; + description " IPSG in Interface Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -41942,10 +45997,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41954,10 +46009,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41966,10 +46021,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41978,10 +46033,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41990,10 +46045,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -42002,10 +46057,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -42014,10 +46069,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -42026,108 +46081,68 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_IpsgExVlan-group { + description "DHCP IPSG exclude on Vlan"; leaf ipsgExVlanNum { type uint16; + description "Vlan Number to be ecluded from IPSG"; } } grouping dhcp_SnoopVlan-group { + description "DHCP Snoop on Vlan"; leaf snoopVlanNum { type uint16; + description "Snoop Vlan Number"; } } grouping dhcp_SnoopIf-group { + description "DHCP Snoop Interface"; leaf trustEnabled { - config "false"; type boolean; + description "Snoop Trust Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -42137,10 +46152,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -42149,10 +46164,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -42161,10 +46176,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -42173,10 +46188,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -42185,10 +46200,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -42197,10 +46212,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -42209,10 +46224,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -42221,82 +46236,43 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dns_Entity-group { + description "DNS Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per dns instance information @@ -42304,57 +46280,46 @@ module Cisco-NX-OS-device { list Prof-list { key "name"; - // Added containment: Prefix=prof - // Acquired From Package dns uses dns_Prof-group; + description "DNS Profile list"; } + description "DNS Profile"; } } grouping dns_Prof-group { + description "DNS Profile"; - // Inherited From pol:Obj - // Modified by Override: dns:Prof->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,32}.*"; } + description "Name"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // DNS Provider @@ -42362,10 +46327,10 @@ module Cisco-NX-OS-device { list Provider-list { key "addr"; - // Added containment: Prefix=prov - // Acquired From Package dns uses dns_Provider-group; + description "DNS Provider list"; } + description "DNS Provider"; } // VRF modes to search for additional to current vrf mode @@ -42373,18 +46338,17 @@ module Cisco-NX-OS-device { list Vrf-list { key "name"; - // Added containment: Prefix=vrf - // Acquired From Package dns uses dns_Vrf-group; + description "Vrf Name list"; } + description "Vrf Name"; } // DNS Domain container dom-items { - // Added containment as a singleton: Prefix=dom - // Acquired From Package dns uses dns_Dom-group; + description "Domain"; } // Additional DNS Domains to search for @@ -42392,10 +46356,10 @@ module Cisco-NX-OS-device { list DomExt-list { key "name"; - // Added containment: Prefix=domext - // Acquired From Package dns uses dns_DomExt-group; + description "Domain List list"; } + description "Domain List"; } // DNS host entries @@ -42403,40 +46367,40 @@ module Cisco-NX-OS-device { list Host-list { key "name"; - // Added containment: Prefix=host - // Acquired From Package dns uses dns_Host-group; + description "Host Name list"; } + description "Host Name"; } } grouping dns_Provider-group { + description "DNS Provider"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } leaf addr { type address_Ip; + description "IP Address"; } } grouping dns_Vrf-group { + description "Vrf Name"; // The vrf that this client group belongs to - // Type is an MO-Defined-Type leaf name { - description "Vrf Name"; - // Type is an MO-Defined-Type type l3_VrfName { + pattern ".*[!-~]{1,32}.*"; } + description "Vrf Name"; } // DNS Provider @@ -42444,18 +46408,17 @@ module Cisco-NX-OS-device { list Provider-list { key "addr"; - // Added containment: Prefix=prov - // Acquired From Package dns uses dns_Provider-group; + description "DNS Provider list"; } + description "DNS Provider"; } // DNS Domain container dom-items { - // Added containment as a singleton: Prefix=dom - // Acquired From Package dns uses dns_Dom-group; + description "Domain"; } // Additional DNS Domains to search for @@ -42463,94542 +46426,106174 @@ module Cisco-NX-OS-device { list DomExt-list { key "name"; - // Added containment: Prefix=domext - // Acquired From Package dns uses dns_DomExt-group; + description "Domain List list"; } + description "Domain List"; } } grouping dns_Dom-group { + description "Domain"; - // Inherited From pol:Obj - // Modified by Override: dns:Dom->name - // Modified by Override: dns:ADomain->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,64}.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping dns_DomExt-group { + description "Domain List"; - // Inherited From pol:Obj - // Modified by Override: dns:DomExt->name - // Modified by Override: dns:ADomain->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,64}.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping dns_Host-group { + description "Host Name"; leaf name { type string { + pattern ".*[!-~]{1,64}.*"; } + description "Host Name"; } // DNS IPv4 Entries container ipv4host-items { - // Added containment as a singleton: Prefix=ipv4host - // Acquired From Package dns uses dns_Ipv4Host-group; + description "Host Name"; } // DNS IPv6 Entries container ipv6host-items { - // Added containment as a singleton: Prefix=ipv6host - // Acquired From Package dns uses dns_Ipv6Host-group; + description "Host Name"; } } grouping dns_Ipv4Host-group { + description "Host Name"; leaf addr { type address_Ipv4; + description "IPv4 Address Of Hostname"; } } grouping dns_Ipv6Host-group { + description "Host Name"; leaf addr { type address_Ipv6; + description "IPv6 Address Of Hostname"; } } - grouping fabric_Decommission-group { + grouping email_Email-group { + description "Email configuration mode"; - // Type is an MO-Defined-Type - leaf nodeDn { - config "false"; - description "TBD"; + leaf smtpHost { - // Type is an MO-Defined-Type - type reln_Dn; + type callhome_ServerType { + length "0..254"; + } + description "DNS name or IPv4 or IPv6 address"; } - leaf wipe { - config "false"; - type boolean; + leaf smtpPort { + type uint32 { + range "0..65535"; + } + description "Port for the SMTP server"; } - leaf targetId { - config "false"; - type uint32; + + leaf replyTo { + + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } + description "Reply-to email address"; } - // Type is an MO-Defined-Type - leaf tickCount { - config "false"; - description "TBD"; + leaf from { - // Type is an MO-Defined-Type - type fabric_TickCount; + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } + description "Email address from where the mail should go"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf vrf { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type l3_VrfName { + length "0..32"; } + description "VRF for pipe email transmit"; + } + leaf config { + type boolean; + description "Config property for email"; } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping evms_EvtMgr-group { + description "Embedded event manager"; - // Type is an MO-Defined-Type - type naming_Descr; + // Event Manager Instance + container inst-items { + + uses evms_Inst-group; + description "EvtMgr instance object"; } } - grouping l2_InbandIf-group { + grouping evms_Inst-group { + description "EvtMgr instance object"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Admin State"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Event Fan Bad + container fanbad-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses evms_EventFanBadUnTagged-group; + description "Event fan bad"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Event Temperature + container temperature-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses evms_EventTemperatureUnTagged-group; + description "Event temperature"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Event Power Over Budget + container poweroverbudget-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses evms_EventPowerOverBudgetUnTagged-group; + description "Event power over budget"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + grouping evms_EventApplicationUnTagged-group { + description "Untagged application event specification"; + leaf subSystemId { + type uint32; + description "Sub-system ID that will publish the application event"; + } + leaf eventType { + type uint32; + description "Event type within the specified sub-system"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + grouping evms_EventCdp-group { + description "Cdp event specification"; + + // interface + leaf intf { - // Type is an MO-Defined-Type type nw_IfId; + description "interface"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // ]-mac- - container vlan-items { - list StaticEntry-list { - key "vlan staticMacAddress"; - - // Added containment: Prefix=vlan - // Acquired From Package l2 - uses l2_StaticEntry-group; + grouping evms_EventCliUnTagged-group { + description "Event Cli specification"; + leaf match { + type string { + length "0..128"; } + description "CLI regular expression to be used for matching"; } - } - - grouping l2_StaticEntry-group { - leaf staticMacAddress { - type address_Mac; + leaf timeInterval { + type uint32 { + range "0..10000000"; + } + description "Time interval in seconds"; } - leaf vlan { - type string; + leaf occurrences { + type uint32 { + range "1..65000"; + } + description "Enter an integer to be used as count"; } - leaf dropAction { + } + + grouping evms_EventNone-group { + description "Manually run policy tagged event with none"; + leaf eventnonestatus { type boolean; default "true"; } - // Type is an MO-Defined-Type - leaf interface { - description "Interface"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping l2_MacAddressTable-group { - - // MacAddress DN: sys/mac/table/vlan-[vlan-x]-mac- - container vlan-items { - list MacAddressEntry-list { - config "false"; - key "vlan macAddress"; - - // Added containment: Prefix=vlan - // Acquired From Package l2 - uses l2_MacAddressEntry-group; - } + grouping evms_EventNoneUnTagged-group { + description "Manually run policy untagged event with none"; + leaf eventnonestatus { + type boolean; + default "true"; } } - grouping l2_MacAddressEntry-group { - leaf macAddress { - config "false"; - type address_Mac; + grouping evms_EventTimer-group { + description "Tagged Timer event specification"; + leaf watchdogTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event watchdog time in seconds"; + } + leaf countdownTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event countdown time in seconds"; + } + leaf absoluteTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event absolute time in seconds"; + } + leaf cronTime { + type string { + length "0..100"; + } + description "Event cron time in [min hour dom month dow] format"; + } + leaf name { + type string { + length "0..29"; + } + description "Name of the timer"; } - // Primary, Gateway... - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type l2_MacType; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } - leaf vlan { - config "false"; - type string; + } + + grouping evms_EventTimerUnTagged-group { + description "Untagged Timer event specification"; + leaf watchdogTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event watchdog time in seconds"; } - leaf static { - config "false"; - type boolean; + leaf countdownTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event countdown time in seconds"; } - leaf secure { - config "false"; - type boolean; + leaf absoluteTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event absolute time in seconds"; } - leaf ntfy { - config "false"; - type boolean; + leaf cronTime { + type string { + length "0..100"; + } + description "Event cron time in [min hour dom month dow] format"; } - leaf routed { - config "false"; - type boolean; + leaf name { + type string { + length "0..29"; + } + description "Name of the timer"; } - leaf age { - config "false"; - type uint32; + } + + grouping evms_EventTrack-group { + description "Track event specification"; + leaf trackId { + type uint32 { + range "0..512"; + } + description "Track object ID Number"; } - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; + // track state specification + leaf trackStateOp { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_TrackStateOp; + description "track event specification"; } - // Type is an MO-Defined-Type - leaf macInfo { - config "false"; - description "Additional Information on the MAC"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type l2_MacInfo; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping cdp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_EventTrackUnTagged-group { + description "Track event specification"; + leaf trackId { + type uint32 { + range "0..512"; } + description "Track object ID Number"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // track state specification + leaf trackStateOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type evms_TrackStateOp; + description "track event specification"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } + grouping evms_EventUfdm-group { + description "Ufdm event fib specification"; - // This objects hold per cdp instance information. There is - // only one instance of cdp running in the system today - container inst-items { + // UFDM Event Fib Route, Fib Resource and Adjacency Extra of the Applet + leaf eventFib { - // Added containment as a singleton: Prefix=inst - // Acquired From Package cdp - uses cdp_Inst-group; + type evms_EventFibType; + description "Event-manager Applet Event Fib type"; } } - grouping cdp_Inst-group { + grouping evms_Tag-group { + description "Enter the conditions to be used for correlation of events"; - // CDP version supported by the device - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Event Tag 1 + leaf eventTag1 { - // Type is an MO-Defined-Type - type cdp_Ver; + type evms_EventTagType; + description "Tag-1 to correlate"; } - // What to advertise in the device id to the peer? - // This will be the identifier of the local switch - // to the remote peer - // Type is an MO-Defined-Type - leaf devIdType { - description "Device ID Type"; + // Correlate Operator 1 + leaf correlateTag1 { - // Type is an MO-Defined-Type - type cdp_DevIdT; + type evms_CorrelateTagType; + description "Correlate-1 operator"; } - // Sets the time that cdp holds onto neighbor - // information before aging it out - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // Event Tag 2 + leaf eventTag2 { - // Type is an MO-Defined-Type - type cdp_HoldIntvl; + type evms_EventTagType; + description "Tag-2 to correlate"; } - // Sets the transmission frequency of cdp - // advertisements in seconds - // Type is an MO-Defined-Type - leaf txFreq { - description "Transmit Frequency"; + // Correlate Operator 2 + leaf correlateTag2 { - // Type is an MO-Defined-Type - type cdp_TxFreq; + type evms_CorrelateTagType; + description "Correlate-2 operator"; } - // System Name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + // Event Tag 3 + leaf eventTag3 { - // Type is an MO-Defined-Type - type cdp_SysName; + type evms_EventTagType; + description "Tag-3 to correlate"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Correlate Operator 3 + leaf correlateTag3 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type evms_CorrelateTagType; + description "Correlate-3 operator"; + } + + // Event Tag 4 + leaf eventTag4 { + + type evms_EventTagType; + description "Tag-4 to correlate"; + } + leaf occurences { + type uint32 { + range "1..4294967295"; } + default "1"; + description "Number of occurences"; + } + leaf timeInterval { + type uint32 { + range "0..4294967295"; + } + description "Time interval"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping evms_EventCounter-group { + description "counter event specification"; + leaf counterName { + type string { + length "0..28"; + } + description "Name of the counter"; + } + leaf entryValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Entry Operator + leaf entryOp { + + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + leaf exitValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Exit Operator + leaf exitOp { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // This object holds cdp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping evms_EventCounterUnTagged-group { + description "counter event specification"; + leaf counterName { + type string { + length "0..28"; + } + description "Name of the counter"; + } + leaf entryValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; + } - // Added containment: Prefix=if - // Acquired From Package cdp - uses cdp_If-group; + // Entry Operator + leaf entryOp { + + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + leaf exitValue { + type uint32 { + range "0..2147483647"; } + description "Specify the value for comparison with the counter Value"; } - } - grouping cdp_If-group { + // Exit Operator + leaf exitOp { - // Port description - // Type is an MO-Defined-Type - leaf portDesc { - description "Port Description"; + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + } - // Type is an MO-Defined-Type - type naming_Descr; + grouping evms_EventEthpm-group { + description "Ethpm Event Specification"; + leaf eventStrmCtrl { + type boolean; + } + } + + grouping evms_EventGold-group { + description "Gold event specification"; + leaf modId { + type uint32; + description "Module id for which the event shall be triggered on diag test failure"; } - // Type is an MO-Defined-Type - leaf locDesc { - description "Location Description"; + // All Module + leaf moduleAll { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_AdminSt; + description "All Module of sys for which the event shall be triggered on diag test failure"; + } + leaf diagTestName { + type string; + description "Name of the online Diagnostic test which is run"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Failure Severity + leaf failureSeverity { - // Type is an MO-Defined-Type - type cdp_OperSt; + type evms_SeverityLevel; + description "Diag failure severity level"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // Diag Test Type + leaf testingType { - // Type is an MO-Defined-Type - type cdp_OperStQual; + type evms_TestType; + description "Diagnostics Testing type"; + } + leaf consectiFailCnt { + type uint32; + description "Diag consecutive Failure count"; } + } - // Native vlan - // Type is an MO-Defined-Type - leaf nativeVlan { - config "false"; - description "Native Vlan"; + grouping evms_EventModuleFailure-group { + description "Event module-failure specification"; - // Type is an MO-Defined-Type - type cdp_VlanId; + // Device type + leaf errType { + + type evms_ErrorType; + description "Error type for event module-failure"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Device Number + leaf moduleNumber { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type evms_ModuleNumber; + description "Module number for event module-failure"; + } + leaf count { + type uint32 { + range "0..65000"; } + default "0"; + description "Integer number to be used as count"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // time + leaf time { - // Type is an MO-Defined-Type - type naming_Descr1024; + type evms_timeInterval; + description "Time interval within which the events need to happen"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping evms_EventModuleFailureUnTagged-group { + description "Event module-failure specification"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + // Device type + leaf errType { + + type evms_ErrorType; + description "Error type for event module-failure"; } - // This object holds cdp neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "index"; + // Device Number + leaf moduleNumber { - // Added containment: Prefix=adj - // Acquired From Package cdp - uses cdp_AdjEp-group; + type evms_ModuleNumber; + description "Module number for event module-failure"; + } + leaf count { + type uint32 { + range "0..65000"; } + default "0"; + description "Integer number to be used as count"; } - // This object holds cdp intf statistics operational information. - // This is a singleton within an intferace - container ifstats-items { + // time + leaf time { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package cdp - uses cdp_IfStats-group; + type evms_timeInterval; + description "Time interval within which the events need to happen"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - container rtvrfMbr-items { + grouping evms_EventModule-group { + description "Event module specification"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Device type + leaf moduleStatus { + + type evms_ModuleStatus; + description "Module status for event module"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Device Number + leaf moduleNumber { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type evms_ModuleNumber; + description "Module number for event module"; + } + + // Event tag identifier + leaf eventTag { + + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping cdp_AdjEp-group { + grouping evms_EventModuleUnTagged-group { + description "Event Module specification"; - // A unique value for each device from which CDP - // messages are being received - // Type is an MO-Defined-Type - leaf index { - config "false"; - description "Index"; + // Device type + leaf moduleStatus { - // Type is an MO-Defined-Type - type cdp_DevIndex; + type evms_ModuleStatus; + description "Module status for event module"; } - // Remote version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Device Number + leaf moduleNumber { - // Type is an MO-Defined-Type - type cdp_NbrVer; + type evms_ModuleNumber; + description "Module number for event module"; } + } - // Remote device ID - // Type is an MO-Defined-Type - leaf devId { - config "false"; - description "Device ID"; + grouping evms_EventOir-group { + description "Event Oir specification"; - // Type is an MO-Defined-Type - type cdp_DevId; + // Device type + leaf deviceType { + + type evms_DeviceType; + description "Device type for event oir"; } - // Remote Port ID - // Type is an MO-Defined-Type - leaf portId { - config "false"; - description "Port ID"; + // OIR type + leaf oirType { - // Type is an MO-Defined-Type - type cdp_PortId; + type evms_OirType; + description "Oir type for event oir"; } - // Remote Platform ID - // Type is an MO-Defined-Type - leaf platId { - config "false"; - description "Platform ID"; + // Device Number + leaf deviceNumber { - // Type is an MO-Defined-Type - type cdp_PlatId; + type evms_DeviceNumber; + description "Device number matching with device type"; } - // Capabilities - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "Capabilities"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type cdp_CapT; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Duplex advertised by neighbor - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex"; + grouping evms_EventOirUnTagged-group { + description "Event Oir specification"; - // Type is an MO-Defined-Type - type cdp_Duplex; + // Device type + leaf deviceType { + + type evms_DeviceType; + description "Device type for event oir"; } - // Native vlan advertised by neighbor - // Type is an MO-Defined-Type - leaf nativeVlan { - config "false"; - description "Native Vlan"; + // OIR type + leaf oirType { - // Type is an MO-Defined-Type - type cdp_VlanId; + type evms_OirType; + description "Oir type for event oir"; } - // MTU advertised by neighbor - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; + // Device Number + leaf deviceNumber { - // Type is an MO-Defined-Type - type cdp_MTU; + type evms_DeviceNumber; + description "Device number matching with device type"; } + } - // System name advertised by neighbor - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + grouping evms_EventFanAbsentUnTagged-group { + description "Event fan absent"; - // Type is an MO-Defined-Type - type cdp_SysName; + // Fan type + leaf fanNumber { + + type evms_IntegerRange; + description "Specify fan number, 0|all for all fan or interger range"; } - // System location advertised by neighbor - // Type is an MO-Defined-Type - leaf sysLoc { - config "false"; - description "System Location"; + // Time Interval + leaf time { - // Type is an MO-Defined-Type - type cdp_SysLoc; + type evms_FanInterval; + description "Time in seconds fan can stay absent"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping evms_EventFanBadUnTagged-group { + description "Event fan bad"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Fan type + leaf fanNumber { + + type evms_IntegerRange; + description "Specify fan number, 0|all for all fan or interger range"; } - // Management address received from cdp neighbor - container mgmt-items { - list MgmtAddr-list { - config "false"; - key "addr"; + // Time Interval + leaf time { - // Added containment: Prefix=mgmt - // Acquired From Package cdp - uses cdp_MgmtAddr-group; - } + type evms_FanInterval; + description "Time in seconds fan can stay absent"; } + } - // Interface address received from cdp neighbor - container intf-items { - list IntfAddr-list { - config "false"; - key "addr"; + grouping evms_EventTemperatureUnTagged-group { + description "Event temperature"; - // Added containment: Prefix=intf - // Acquired From Package cdp - uses cdp_IntfAddr-group; - } + // Module Number + leaf moduleNumber { + + type evms_IntegerRange; + description "Specify module number, 0|all for all module or interger range"; } - // This object holds cdp adj statistics operational information. - // This is a singleton within an adjacency - container adjstats-items { + // Sensor Number + leaf sensorNumber { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package cdp - uses cdp_AdjStats-group; + type evms_IntegerRange; + description "Specify sensor number range"; + } + + // Threshold Levels + leaf thresholdLevel { + + type evms_ThresholdLevels; + description "Specify threshold level: major, minor or any"; } } - grouping cdp_MgmtAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventPowerOverBudgetUnTagged-group { + description "Event power over budget"; + leaf eventpoweroverbudgetstatus { + type boolean; + default "true"; } } - grouping cdp_IntfAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventMemoryUnTagged-group { + description "Event for memory level"; + + // Memory level number + leaf memLevels { + + type evms_MemoryType; + description "Specify memory level: minor, major, critical"; } } - grouping cdp_AdjStats-group { - leaf adjExpTs { - config "false"; - type string; + grouping evms_EventPolicyDefault-group { + description "Use the event in the system policy being overridden"; + leaf occurences { + type uint16 { + range "1..65000"; + } + default "1"; + description "Number of occurances"; + } + leaf timeInterval { + type uint32 { + range "0..32768"; + } + description "Time interval in seconds"; } } - grouping cdp_IfStats-group { + grouping evms_EventSnmp-group { + description "Snmp event specification"; + leaf oid { + type string { + length "0..128"; + } + description "Oid of data element in dot notation"; + } - // CDP Interface Stats Number of v1 packets sent - // Type is an MO-Defined-Type - leaf v1Sent { - config "false"; - description "Number of V1 Packets Sent"; + // Get request type + leaf getType { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_GetTypeType; + description "The type of SNMP get operation"; } - // Number of v2 packets sent - // Type is an MO-Defined-Type - leaf v2Sent { - config "false"; - description "Number of V2 Packets Sent"; + // Entry operator + leaf entryOp { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_EntryExitOpType; + description "Entry comparison operator"; } - - // Number of packets failed to send - // Type is an MO-Defined-Type - leaf failedSent { - config "false"; - description "Number of Packets Failed to Send"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf entryVal { + type uint64; + description "Value to compare with the current polled value"; } - // Number of valid v1 packets received - // Type is an MO-Defined-Type - leaf validV1Rcvd { - config "false"; - description "Number of Valid V1 Packets Received"; + // Exit combination + leaf exitComb { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_ExitCombType; + description "Exit criterion combination"; } - // Number of v2 packets received - // Type is an MO-Defined-Type - leaf validV2Rcvd { - config "false"; - description "Number of Valid V2 Packets Received"; + // Exit operator + leaf exitOp { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_EntryExitOpType; + description "Exit comparison operator"; } - - // Number of unsupported version packets received - // Type is an MO-Defined-Type - leaf unSupVerRcvd { - config "false"; - description "Number of Unsupported Version Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitVal { + type uint64; + description "Value to compare with the current polled value"; } - - // Number of checksum error packets received - // Type is an MO-Defined-Type - leaf cksumErrRcvd { - config "false"; - description "Number of Checksum Error Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitTimeMin { + type uint32; + description "Min Exit time value required"; } - - // Number of malformed packets received - // Type is an MO-Defined-Type - leaf malformRcvd { - config "false"; - description "Number of Malform Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitTimeMax { + type uint32; + description "Max Exit time value required"; } - } - - grouping lldp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf pollIntervalMin { + type uint32 { + range "1..2147483647"; } + description "Min Polling time interval"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf pollIntervalMax { + type uint32 { + range "1..2147483647"; + } + description "Max Polling time interval"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Exit operator 1 + leaf exitOp1 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type evms_EntryExitOpType; + description "Exit comparison operator"; + } + leaf exitVal1 { + type uint64; + description "Value to compare with the current polled value"; } - // This objects hold per lldp instance information. There is - // only one instance of lldp running in the system today - container inst-items { + // Event tag identifier + leaf eventTag { - // Added containment as a singleton: Prefix=inst - // Acquired From Package lldp - uses lldp_Inst-group; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping lldp_Inst-group { - - // Amount of time in seconds that a receiving device - // should hold the information sent by your device - // before discarding it - // Type is an MO-Defined-Type - leaf holdTime { - description "Hold Time"; - - // Type is an MO-Defined-Type - type lldp_HoldTime; + grouping evms_EventSnmpUnTagged-group { + description "Snmp event specification"; + leaf oid { + type string { + length "0..128"; + } + description "Oid of data element in dot notation"; } - // Delay time in seconds for lldp to initialize on any - // interface - // Type is an MO-Defined-Type - leaf initDelayTime { - description "Init Delay Time"; + // Get request type + leaf getType { - // Type is an MO-Defined-Type - type lldp_InitDelayTime; + type evms_GetTypeType; + description "The type of SNMP get operation"; } - // Transmission frequency of lldp updates in seconds - // Type is an MO-Defined-Type - leaf txFreq { - description "Transmission Frequency"; + // Entry operator + leaf entryOp { - // Type is an MO-Defined-Type - type lldp_TxFreq; + type evms_EntryExitOpType; + description "Entry comparison operator"; + } + leaf entryVal { + type uint64; + description "Value to compare with the current polled value"; } - // Some tlvs are optional as per LLDP protocol (802.1AB) - // specifications. Use these selectors to turn on/off - // Type is an MO-Defined-Type - leaf optTlvSel { - description "Optional TLV Selector"; + // Exit combination + leaf exitComb { - // Type is an MO-Defined-Type - type lldp_OptTlvSel; + type evms_ExitCombType; + description "Exit criterion combination"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - description "System Description"; + // Exit operator + leaf exitOp { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_EntryExitOpType; + description "Exit comparison operator"; + } + leaf exitVal { + type uint64; + description "Value to compare with the current polled value"; + } + leaf exitTimeMin { + type uint32; + description "Min Exit time value required"; + } + leaf exitTimeMax { + type uint32; + description "Max Exit time value required"; + } + leaf pollIntervalMin { + type uint32 { + range "1..2147483647"; + } + description "Min Polling time interval"; + } + leaf pollIntervalMax { + type uint32 { + range "1..2147483647"; + } + description "Max Polling time interval"; } - // PortId Subtype - // Type is an MO-Defined-Type - leaf portIdSubType { - description "PortId SubType"; + // Exit operator 1 + leaf exitOp1 { - // Type is an MO-Defined-Type - type lldp_PortIdSubType; + type evms_EntryExitOpType; + description "Exit comparison operator"; } + leaf exitVal1 { + type uint64; + description "Value to compare with the current polled value"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_EventSyslog-group { + description "Syslog event specification"; + leaf occurences { + type uint16 { + range "1..65000"; + } + description "Number of occurances"; + } + leaf timeInterval { + type uint32 { + range "0..4294967295"; } + description "Time interval in seconds"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Syslog Priority + leaf priority { - // Type is an MO-Defined-Type - type nw_AdminSt; + type evms_PriorityType; + default "7"; + description "Priority of the syslog message"; + } + leaf pattern { + type string { + length "0..256"; + } + description "Syslog pattern text of the syslog message"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Local management address - container mgmt-items { - list MgmtAddr-list { - config "false"; - key "addr"; - - // Added containment: Prefix=mgmt - // Acquired From Package lldp - uses lldp_MgmtAddr-group; + grouping evms_EventSyslogUnTagged-group { + description "Syslog event specification"; + leaf occurences { + type uint16 { + range "1..65000"; } + description "Number of occurances"; } - - // This object holds lldp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; - - // Added containment: Prefix=if - // Acquired From Package lldp - uses lldp_If-group; + leaf timeInterval { + type uint32 { + range "0..4294967295"; } + description "Time interval in seconds"; } - // This object holds lldp inst statistics operational information. - // This is a singleton within lldp - container inststats-items { + // Syslog Priority + leaf priority { - // Added containment as a singleton: Prefix=inststats - // Acquired From Package lldp - uses lldp_InstStats-group; + type evms_PriorityType; + default "7"; + description "Priority of the syslog message"; } + leaf pattern { + type string { + length "0..256"; + } + description "Syslog pattern text of the syslog message"; + } + } - // Rel-def from lldpInstPolCons - container rslldpInstPolCons-items { - - // Added containment as a singleton: Prefix=rslldpInstPolCons - // Acquired From Package lldp - uses lldp_RsLldpInstPolCons_source-group; + grouping evms_EventSysmgrMemAlertUnTagged-group { + description "Sysmgr event specification"; + leaf module { + type uint32; + default "0"; + description "module number optional."; + } + leaf major { + type uint32 { + range "0..99"; + } + description "Major memory threshold between 1 to 99"; + } + leaf minor { + type uint32 { + range "0..99"; + } + description "Minor memory threshold between 1 to 99"; + } + leaf clear { + type uint32 { + range "0..99"; + } + description "clear memory threshold between 1 to 99"; } } - grouping lldp_MgmtAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventSysmgrSwitchoverUnTagged-group { + description "Sysmgr event specification"; + leaf count { + type uint32 { + range "0..65000"; + } + description "Expected Number of switch over to trigger event [1-65000]"; + } + leaf time { + type uint32 { + range "0..4294967295"; + } + description "Expected Time interval to trigger event, in seconds [1-4294967295]"; } } - grouping lldp_If-group { + grouping evms_EventInternalLinkFlapUnTagged-group { + description "Event internal-link-flap specification"; + leaf count { + type uint32 { + range "0..65000"; + } + default "0"; + description "Integer number to be used as count"; + } - // Receive admin state - // Type is an MO-Defined-Type - leaf adminRxSt { - description "Admin Receive State"; + // time + leaf time { - // Type is an MO-Defined-Type - type lldp_AdminSt; + type evms_LinkFlapTime; + description "Time interval within which the events need to happen"; } + } - // Transmit admin state - // Type is an MO-Defined-Type - leaf adminTxSt { - description "Admin Transmit State"; + grouping evms_Action-group { + description "Applet action parent"; - // Type is an MO-Defined-Type - type lldp_AdminSt; + // Action Label + leaf actionLabel { + + type evms_ActionLabelType; + description "Specify action label"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "System Description"; + // Action publish-event + container publishevent-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses evms_ActionPublishEvent-group; + description "Publish an application specific event"; } - // Type is an MO-Defined-Type - leaf tlvSetVlan { - description "Tlv vlan"; + // Action - Counter + container counter-items { - // Type is an MO-Defined-Type - type lldp_MgmtVlanId; - } - leaf tlvSetMgmtIpv4 { - type address_Ip; - } - leaf tlvSetMgmtIpv6 { - type address_Ip; + uses evms_ActionCounter-group; + description "Modifies the counter based on configured value and operation"; } - // Port description - // Type is an MO-Defined-Type - leaf portDesc { - config "false"; - description "Port Description"; + // Action exceptionlog + container exceptionlog-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses evms_ActionExceptionLog-group; + description "Action for exceptionlog for modules"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Action - reload module + container reload-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses evms_ActionReload-group; + description "Action to reload module"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Action force shutdown + container forceshut-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses evms_ActionForceShut-group; + description "Action for force shutdown"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Action overbudgetshut + container overbudgetshut-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses evms_ActionOverBudgetShut-group; + description "Action for Shut down the specified LCs due to power over budget"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Action - Event Default + container eventdefault-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses evms_ActionEventDefault-group; + description "Do default action for the event"; } - // This object holds lldp neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; + // Action - Policy Default + container policydefault-items { - // Added containment: Prefix=adj - // Acquired From Package lldp - uses lldp_AdjEp-group; - } + uses evms_ActionPolicyDefault-group; + description "Do default action(s) of the policy being overridden"; } - // This object holds the information about IFC adj, used by PE to cache - // Controller adjEP information to handle adj deletes - container ctrlradj-items { + // Action - CLI + container cli-items { - // Added containment as a singleton: Prefix=ctrlradj - // Acquired From Package lldp - uses lldp_CtrlrAdjEp-group; + uses evms_ActionCLI-group; + description "Configure a VSH CLI action"; } - // This object holds lldp intf statistics operational information. - // This is a singleton within an interface - container ifstats-items { + // Action - Collect + container collect-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package lldp - uses lldp_IfStats-group; + uses evms_ActionCollect-group; + description "Collect debugging info using a yaml file"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - container rtvrfMbr-items { + // Action - SNMP TRAP + container snmptrap-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses evms_ActionSnmpTrap-group; + description "Send out an SNMP trap"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Action - Syslog + container syslog-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses evms_ActionSyslog-group; + description "Generate a syslog message"; } } - grouping lldp_AdjEp-group { - - // Neighbor ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type lldp_AdjId; + grouping evms_ActionPublishEvent-group { + description "Publish an application specific event"; + leaf subSystemId { + type uint32; + description "Sub-system ID that will publish the application event"; } - - // Neighbor chassis id type - // Type is an MO-Defined-Type - leaf chassisIdT { - config "false"; - description "Chassis ID Type"; - - // Type is an MO-Defined-Type - type lldp_ChassisIdT; + leaf eventType { + type uint32; + description "Event type within the specified sub-system"; } + leaf arg1 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg1)"; + } + leaf arg2 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg2)"; + } + leaf arg3 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg3)"; + } + leaf arg4 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg4)"; + } + } - // Neighbor chassis id value - // Type is an MO-Defined-Type - leaf chassisIdV { - config "false"; - description "Chassis ID Value"; - - // Type is an MO-Defined-Type - type lldp_ChassisIdV; + grouping evms_ActionCounter-group { + description "Modifies the counter based on configured value and operation"; + leaf counterName { + type string { + length "0..29"; + } + description "Name of the action counter"; + } + leaf counterValue { + type string; + description "Specify the value to be applied to the counter"; } - // Neighbor port type - // Type is an MO-Defined-Type - leaf portIdT { - config "false"; - description "Port ID Type"; + // Counter operation + leaf counterOp { - // Type is an MO-Defined-Type - type lldp_PortIdT; + type evms_CounterOpType; + description "Specify the operator to be applied"; } + } - // Neighbor port value - // Type is an MO-Defined-Type - leaf portIdV { - config "false"; - description "Port ID Value"; + grouping evms_ActionExceptionLog-group { + description "Action for exceptionlog for modules"; - // Type is an MO-Defined-Type - type lldp_PortIdV; + // Module Number + leaf moduleNumber { + + type evms_ExpLogComValStr; + description "Specify module number: interger module number or a $predefine environment name"; } - // Neighbor system name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + // syserr + leaf sysErr { - // Type is an MO-Defined-Type - type lldp_SysName; + type evms_ExpLogComValStr; + description "Specify syserr code : hex value or a $predefine environment name"; } - // Neighbor system description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "System Description"; + // device Id + leaf devId { - // Type is an MO-Defined-Type - type lldp_NbrSysDesc; + type evms_ExpLogComValStr; + description "Specify device ID : interger value or a $predefine environment name"; } - // Neighbor port description - // Type is an MO-Defined-Type - leaf portDesc { - config "false"; - description "Port Description"; + // error type + leaf errType { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_ExpLogComValStr; + description "Specify error type : interger value or a $predefine environment name"; } - // Neighbor System Capability - // Type is an MO-Defined-Type - leaf capability { - config "false"; - description "Capability"; + // error code + leaf errCode { - // Type is an MO-Defined-Type - type lldp_Capability; + type evms_ExpLogComValStr; + description "Specify error code : interger value or a $predefine environment name"; } - // Neighbor Enabled Capability - // Type is an MO-Defined-Type - leaf enCap { - config "false"; - description "Enabled Capability"; + // phylayer code + leaf phyLayer { - // Type is an MO-Defined-Type - type lldp_Capability; + type evms_ExpLogComValStr; + description "Specify phy layer : interger value or a $predefine environment name"; } - // Neighbor Management Address - // Type is an MO-Defined-Type - leaf mgmtIp { - config "false"; - description "Management Address"; + // ports + leaf ports { - // Type is an MO-Defined-Type - type lldp_MgmtIp; + type evms_ExpLogComValStr; + description "Specify list of ports"; } - // Org tlv, Neighbor port vlan - // Type is an MO-Defined-Type - leaf portVlan { - config "false"; - description "Port Vlan"; + // hard error + leaf hardError { - // Type is an MO-Defined-Type - type lldp_PortVlan; + type evms_HardError; + description "Specify hard error 0..4"; } + leaf desc { + type string { + length "0..128"; + } + description "Specify string data for error description"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_ActionReload-group { + description "Action to reload module"; + leaf moduleNumber { + type string { + length "1..30"; } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; } + } - // This object holds lldp adj statistics operational information. - // This is a singleton within an adjacency - container adjstats-items { + grouping evms_ActionForceShut-group { + description "Action for force shutdown"; + leaf moduleNumber { + type string { + length "1..30"; + } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; + } + leaf resetReason { + type string { + length "1..80"; + } + default "action_force_shutdown"; + description "Reset reason for action forceshut"; + } + } - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package lldp - uses lldp_AdjStats-group; + grouping evms_ActionOverBudgetShut-group { + description "Action for Shut down the specified LCs due to power over budget"; + leaf moduleNumber { + type string { + length "1..30"; + } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; } } - grouping lldp_AdjStats-group; + grouping evms_ActionEventDefault-group { + description "Do default action for the event"; + leaf actioneventdefaultstatus { + type boolean; + default "true"; + } + } - grouping lldp_CtrlrAdjEp-group { + grouping evms_ActionPolicyDefault-group { + description "Do default action(s) of the policy being overridden"; + leaf actionpolicydefaultstatus { + type boolean; + default "true"; + } + } - // Fabric node ID of the Controller - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Controller ID"; + grouping evms_ActionCLI-group { + description "Configure a VSH CLI action"; + leaf execModule { + type boolean; + default "true"; + description "Execute the action on the module where event happens"; + } + leaf cliCommand { + type string { + length "0..1023"; + } + description "Enter the VSH command"; + } + } - // Type is an MO-Defined-Type - type fabric_NodeId; + grouping evms_ActionCollect-group { + description "Collect debugging info using a yaml file"; + leaf yamlFile { + type string { + length "0..1023"; + } + description "Enter the YAML input file"; + } + leaf componentName { + type string { + length "0..1023"; + } + description "Enter the component for tech-support collection"; + } + leaf rateLimit { + type uint16 { + range "1..65000"; + } + description "Limit trigger based collection for a period of time"; + } + leaf purgeTime { + type uint16 { + range "1..65000"; + } + description "Change the time period for which older files are purged"; } - // Rel-def from CtrlrAdjEpToStAdjEp - container rsctrlrAdjEpToStAdjEp-items { + // Enable/Disable Action - Collect + leaf yamlStatus { - // Added containment as a singleton: Prefix=rsctrlrAdjEpToStAdjEp - // Acquired From Package lldp - uses lldp_RsCtrlrAdjEpToStAdjEp_source-group; + type nw_AdminSt; + description "TBD"; } } - grouping lldp_IfStats-group { - - // LLDP Interface Stats Number of packets sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Number of Packets Sent"; + grouping evms_ActionSnmpTrap-group { + description "Send out an SNMP trap"; + leaf trapstatus { + type boolean; + default "true"; + description "Enable or Disable snmp trap"; + } + leaf integerData1 { + type string { + length "0..255"; + } + description "Integer data1 to be included in the payload"; + } + leaf integerData2 { + type string { + length "0..255"; + } + description "Integer data2 to be included in the payload"; + } + leaf stringData { + type string { + length "0..255"; + } + description "String data to BE included in the payload"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping evms_ActionSyslog-group { + description "Generate a syslog message"; + leaf priority { + type string { + length "0..29"; + } + description "Priority of the syslog message"; + } + leaf message { + type string { + length "0..256"; + } + description "Syslog message text"; } + } - // Number of packets received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Number of Packets Received"; + grouping evms_SystemPolicies-group { + description "Configure all system policies"; + container policy-items { + list SystemPolicy-list { + config "false"; + key "scriptName"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses evms_SystemPolicy-group; + description "Configure a system policy list"; + } + description "Configure a system policy"; } + } - // Number of entries aged - // Type is an MO-Defined-Type - leaf entriesAged { + grouping evms_SystemPolicy-group { + description "Configure a system policy"; + leaf scriptName { config "false"; - description "Number of Entries Aged"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string { + length "1..29"; + } + description "Name of the system policy"; } - - // Number of packets received in error - // Type is an MO-Defined-Type - leaf errPktRcvd { + leaf evType { config "false"; - description "Number of Packets Received in Error"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint32; + description "Base event type of system policy"; } - - // Number of packets discarded - // Type is an MO-Defined-Type - leaf pktDiscarded { + leaf description { config "false"; - description "Number of Packets Discarded"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string { + length "0..128"; + } + description "System policy description"; } - - // Number of unrecognized TLVs - // Type is an MO-Defined-Type - leaf unrecogTLV { + leaf overridable { config "false"; - description "Number of Unrecognized TLVs"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type boolean; + default "true"; + description "System policy overridable attribute"; } } - grouping lldp_InstStats-group { + grouping l2_InbandIf-group { + description "Layer2 Inband Interface"; - // LLDP Inst Stats Number of packets sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Number of Packets Sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Number of packets received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Number of Packets Received"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; - } - - // Number of entries aged - // Type is an MO-Defined-Type - leaf entriesAged { - config "false"; - description "Number of Entries Aged"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr1024; + description "Description"; } - // Number of packets received in error - // Type is an MO-Defined-Type - leaf errPktRcvd { - config "false"; - description "Number of Packets Received in Error"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Number of packets discarded - // Type is an MO-Defined-Type - leaf pktDiscarded { - config "false"; - description "Number of Packets Discarded"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // IDEp represents a inband learned end point on the switch. + // This object is owned by the end point manager + container idep-items { + list IDEp-list { + config "false"; + key "mac encap"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses opflex_IDEp-group; + description "Inband Discovered Endpoint list"; } + description "Inband Discovered Endpoint"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Device represents an opflex capable device that is connected + // to the fabric. + // This object is owned by the opflexelem + container odev-items { + list ODev-list { + config "false"; + key "devId"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses opflex_ODev-group; + description "Openflex Device list"; + } + description "Openflex Device"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rsinbandConf-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses l2_RsInbandConf_source-group; + description "Inband Attachment"; } - // This objects hold per MCP instance information. There is only - // one instance of MCP running in the system today - container inst-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package mcp - uses mcp_Inst-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping mcp_Inst-group { - - // Transmission frequency of MCP packets on each L2 - // interface in seconds - // Type is an MO-Defined-Type - leaf txFreq { + grouping fv_VNode-group { + description "Vleaf Node"; + leaf devId { config "false"; - description "Transmission Frequency"; - - // Type is an MO-Defined-Type - type mcp_TxFreq; + type uint32; } - // Loop detection multiplier i.e. number of MCP packets, - // when received consecutively from same {leaf, port}, - // treated as loop condition - // Type is an MO-Defined-Type - leaf loopDetectMult { + // type of the device + leaf devType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mcp_LoopDetectMult; + type opflex_DeviceType; + description "TBD"; } - leaf key { + leaf lNodeDn { config "false"; type string; + description "LNode Dn"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + leaf id { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Id; + description "Id"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + container rtfvVNode-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + list RtFvVNode-list { + config "false"; + key "tDn"; + + uses fv_RtFvVNode_target-group; + description "Relation to Virtual Node list"; + } + description "Relation to Virtual Node"; } - // This object holds mcp information that is operated at a - // interface level - container if-items { - list If-list { + container rslNode-items { + + list RsLNode-list { config "false"; - key "id"; + key "tDn"; - // Added containment: Prefix=if - // Acquired From Package mcp - uses mcp_If-group; + uses fv_RsLNode_source-group; + description "Distributed Virtual Switch list"; } + description "Distributed Virtual Switch"; } } - grouping mcp_If-group { + grouping opflex_ODev-group { + description "Openflex Device"; + leaf devId { + config "false"; + type uint32; + } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // type of the device + leaf devType { config "false"; + + type opflex_DeviceType; description "TBD"; + } + leaf lNodeDn { + config "false"; + type string; + description "LNode Dn"; + } + leaf encap { + config "false"; + type string; + } + leaf hostName { + config "false"; + type string; + description "Fqdn of the Host"; + } + leaf ipAddr { + config "false"; + type string; + description "IPAddress of the Host"; + } + leaf numHB { + config "false"; + type uint32; + } + leaf lastNumHB { + config "false"; + type uint32; + } - // Type is an MO-Defined-Type - type mcp_OperSt; + // channel failure + leaf hbStatus { + config "false"; + + type opflex_HbStatus; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Operational State + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type opflex_DevOperState; + description "Status"; + } + leaf maxMissHb { + config "false"; + type uint32; + } + leaf pcIfId { + config "false"; + type uint32; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // ep transition status + leaf transitionStatus { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type opflex_EpTransitionStatus; + description "TBD"; + } + leaf portId { + config "false"; + type uint32; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // type of the device + leaf state { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type comp_HostState; + description "TBD"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { + leaf name { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Name; + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - container rtvrfMbr-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Id; + description "Id"; + } + + // DeviceCap represents the capabilities of an opflex + // capable device that is connected to the fabric. + // This object is owned by the opflexelem + container odevcap-items { + + uses opflex_ODevCap-group; + } + + // VNode represents an opflex capable vnode that is connected + // to the fabric. + container vnode-items { + list VNode-list { + config "false"; + key "devId"; + + uses fv_VNode-group; + description "Vleaf Node list"; + } + description "Vleaf Node"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Device represents an opflex capable device that is connected + // to the fabric. + // This object is owned by the opflexelem + container opnic-items { + list OPNic-list { config "false"; - key "tDn"; + key "mac"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses opflex_OPNic-group; + description "Hypervisor PNic list"; } + description "Hypervisor PNic"; } } - grouping vpc_Entity-group { + grouping opflex_ODevCap-group { + leaf version { + config "false"; + type string; + } + leaf devId { + config "false"; + type uint32; + } + leaf lNodeDn { + config "false"; + type string; + description "LNode Dn"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Id; + description "Id"; + } + } + + grouping opflex_OPNic-group { + description "Hypervisor PNic"; + leaf mac { + config "false"; + type address_Mac; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // type of the device + leaf state { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type comp_NicState; + description "TBD"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { + leaf name { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type naming_Name; + description "Name"; } - // This objects hold per vpc instance information. There is only - // one instance of vpcm running in the system today - container inst-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vpc - uses vpc_Inst-group; + type naming_Id; + description "Id"; } } - grouping vpc_Inst-group { + grouping l2_ExtIf-group { + description "Layer 2 Extending Interface"; + + // Extension chassis ID + leaf extChasId { + + type l2_ExtChasId; + description "Extension Chassis ID"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // + container vlan-items { + list MacVlan-list { + key "id"; - // Type is an MO-Defined-Type - type vpc_AutoRecoveryIntvl; + uses l2_MacVlan-group; + description "Per-VLAN MAC address configuration and management list"; + } + description "Per-VLAN MAC address configuration and management"; } - // Enable peer switch on vPC pair switches - // Type is an MO-Defined-Type - leaf peerSwitch { - description "vPC pair switches"; + // DN: sys/mac/if- + container if-items { + list MacIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses l2_MacIf-group; + description "Per-Interface MAC address configuration and management list"; + } + description "Per-Interface MAC address configuration and management"; } + } - // Delay in bringing up the vPC links - // Type is an MO-Defined-Type - leaf delayRestoreVPC { - description "Delay restore for vPC links"; - - // Type is an MO-Defined-Type - type vpc_DelayRestoreVPC; - } + grouping l2_Static-group { + description "Static Mac Addresses"; - // Delay in bringing-up interface-vlan - // Type is an MO-Defined-Type - leaf delayRestoreSVI { - description "Delay restore for SVI"; + // DN: sys/mac/static/vlan-[]-mac- + container vlan-items { + list StaticEntry-list { + key "vlan staticMacAddress"; - // Type is an MO-Defined-Type - type vpc_DelayRestoreSVI; + uses l2_StaticEntry-group; + description "Static Mac Address Entry list"; + } + description "Static Mac Address Entry"; } - // Delay in bringing-up the peer-link - // Type is an MO-Defined-Type - leaf delayPeerLinkBringup { - description "Peer link delay timer"; + // DN: sys/mac/static/vni--mac- + container vni-items { + list StaticEntryVni-list { + key "vni staticMacAddress"; - // Type is an MO-Defined-Type - type vpc_DelayPeerLinkBringup; + uses l2_StaticEntryVni-group; + description "Static Mac Address Entry for vni interface list"; + } + description "Static Mac Address Entry for vni interface"; } + } - // Interface vlans to exclude from suspension when dual-active - // Type is an MO-Defined-Type - leaf excludeSVI { - description "SVI List excluded from suspension when dual-active"; - - // Type is an MO-Defined-Type - type vpc_ExcludeSVI; + grouping l2_StaticEntry-group { + description "Static Mac Address Entry"; + leaf staticMacAddress { + type address_Mac; + description "MAC"; } - - // Suspend vPC locally - // Type is an MO-Defined-Type - leaf adminSt { - description "vPC suspend locally"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf vlan { + type string; + description "Vlan"; } - - // Enable auto recovery if peer is presumed non-operational - // Type is an MO-Defined-Type - leaf fastConvergence { - description "Fast Convergence"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf dropAction { + type boolean; + default "true"; + description "Drop"; } - // Layer 3 Peer Router status - // Type is an MO-Defined-Type - leaf l3PeerRouter { - description "L3 Peer Router"; + leaf interface { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Interface"; } + } - // Layer 3 Peer Router Syslog Status - // Type is an MO-Defined-Type - leaf l3PeerRouterSyslog { - description "L3 Peer Router Syslog"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping l2_StaticEntryVni-group { + description "Static Mac Address Entry for vni interface"; + leaf staticMacAddress { + type address_Mac; + description "MAC address for vni interface"; } - - // Layer 3 Peer Router Syslog Interval - // Type is an MO-Defined-Type - leaf l3PeerRouterSyslogInterval { - description "L3 Peer Router Syslog Interval"; - - // Type is an MO-Defined-Type - type vpc_L3PeerRouterSyslogInterval; + leaf vni { + type uint32 { + range "1..16777215"; + } + description "Virtual Network Identifier"; } - - // role - // Type is an MO-Defined-Type - leaf operRole { - config "false"; - description "Operational Role"; - - // Type is an MO-Defined-Type - type vpc_Role; + leaf peerIpv4 { + type address_Ipv4; + description "IPv4 Address of the Peer"; } + } - // old role - // Type is an MO-Defined-Type - leaf oldRole { - config "false"; - description "Old Role"; - - // Type is an MO-Defined-Type - type vpc_Role; - } + grouping l2_MacAddressTable-group { + description "MAC Address Table"; - // lacp role - // Type is an MO-Defined-Type - leaf lacpRole { - config "false"; - description "Lacp Role"; + // MacAddress DN: sys/mac/table/vlan-[vlan-x]-mac- + container vlan-items { + list MacAddressEntry-list { + config "false"; + key "vlan macAddress"; - // Type is an MO-Defined-Type - type vpc_Role; + uses l2_MacAddressEntry-group; + description "MAC Address Entry list"; + } + description "MAC Address Entry"; } + } - // summarized role - // Type is an MO-Defined-Type - leaf summOperRole { + grouping l2_MacAddressEntry-group { + description "MAC Address Entry"; + leaf macAddress { config "false"; - description "Summarized Oper Role"; - - // Type is an MO-Defined-Type - type vpc_SummRole; + type address_Mac; + description "MAC"; } - // local system priority - // Type is an MO-Defined-Type - leaf localPrio { + // Primary, Gateway... + leaf type { config "false"; - description "Local System Priority"; - // Type is an MO-Defined-Type - type vpc_SysPrio; + type l2_MacType; + description "Type"; } - - // peer system priority - // Type is an MO-Defined-Type - leaf peerPrio { + leaf vlan { config "false"; - description "Peer System Priority"; - - // Type is an MO-Defined-Type - type vpc_SysPrio; + type string; + description "Vlan"; } - - // vpc system priority - // Type is an MO-Defined-Type - leaf vpcPrio { + leaf static { config "false"; - description "Vpc System Priority"; - - // Type is an MO-Defined-Type - type vpc_SysPrio; + type boolean; + description "Static"; } - leaf localMAC { + leaf secure { config "false"; - type address_Mac; + type boolean; + description "Secure"; } - leaf peerMAC { + leaf ntfy { config "false"; - type address_Mac; + type boolean; + description "NTFY"; } - leaf vpcMAC { + leaf routed { config "false"; - type address_Mac; + type boolean; + description "Routed"; } - - // various operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf age { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type vpc_DomOperSt; + type uint32; + description "Age - seconds since last seen"; } - // peer version - // Type is an MO-Defined-Type - leaf peerVersion { + leaf port { config "false"; - description "Peer Version"; - // Type is an MO-Defined-Type - type vpc_PeerVersion; + type nw_IfId; + description "Port"; } - // batched vpc inventory - // Type is an MO-Defined-Type - leaf batchedVpcInv { + leaf macInfo { config "false"; - description "Batched Vpc Inventory"; - // Type is an MO-Defined-Type - type vpc_BatchedVpcInv; + type l2_MacInfo; + description "Additional Information on the MAC"; } - leaf issuFromVer { - config "false"; + } + + grouping l2_MacVlan-group { + description "Per-VLAN MAC address configuration and management"; + leaf id { type string; + description "Vlan ID for per-VLAN configuration and management"; } - leaf issuToVer { - config "false"; - type string; + leaf vlanLimit { + type uint32 { + range "100..196000"; + } + default "196000"; + description "Per-VLAN limit for learnt MAC addresses"; } + } - // Peer state - // Type is an MO-Defined-Type - leaf peerSt { - config "false"; - description "Peer State"; + grouping l2_MacIf-group { + description "Per-Interface MAC address configuration and management"; - // Type is an MO-Defined-Type - type vpc_PeerSt; + // naming property + leaf id { + + type nw_IfId; + description "Interface ID for per-interface configuration and management"; + } + leaf ifLimit { + type uint32 { + range "100..196000"; + } + default "196000"; + description "Per-interface limit for learnt MAC addresses"; } + } - // Peer status reason code - // Type is an MO-Defined-Type - leaf peerStQual { - config "false"; - description "Peer Status Qualifier"; + grouping cdp_Entity-group { + description "CDP Entity"; - // Type is an MO-Defined-Type - type vpc_PeerStQual; + // This objects hold per cdp instance information. There is + // only one instance of cdp running in the system today + container inst-items { + + uses cdp_Inst-group; + description "CDP Instance"; } + } - // Dual active status - // Type is an MO-Defined-Type - leaf dualActiveSt { - config "false"; - description "Dual Active Status"; + grouping cdp_Inst-group { + description "CDP Instance"; - // Type is an MO-Defined-Type - type vpc_DualActiveSt; + // CDP version supported by the device + leaf ver { + + type cdp_Ver; + description "Version"; } - // Compatibility status - // Type is an MO-Defined-Type - leaf compatSt { - config "false"; - description "Compatibility Status"; + // What to advertise in the device id to the peer? + // This will be the identifier of the local switch + // to the remote peer + leaf devIdType { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type cdp_DevIdT; + description "Device ID Type"; } - // Compatibility reason code - // Type is an MO-Defined-Type - leaf compatQual { - config "false"; - description "Compatibility Qualifier"; + // Sets the time that cdp holds onto neighbor + // information before aging it out + leaf holdIntvl { - // Type is an MO-Defined-Type - type vpc_CompatQual; - } - leaf compatQualStr { - config "false"; - type string; + type cdp_HoldIntvl; + description "Hold Interval"; } - // Type-2 compatibility status - // Type is an MO-Defined-Type - leaf type2CompatSt { - config "false"; - description "Type-2 Compatibility Status"; + // Sets the transmission frequency of cdp + // advertisements in seconds + leaf txFreq { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type cdp_TxFreq; + description "Transmit Frequency"; } - // Type-2 compatibility reason code - // Type is an MO-Defined-Type - leaf type2CompatQual { + // System Name + leaf sysName { config "false"; - description "Type-2 Compatibility Qualifier"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type cdp_SysName; + description "System Name"; } - leaf type2CompatQualStr { - config "false"; - type string; + leaf pnpStartVlan { + type uint16 { + range "1..4094"; + } + default "1"; + description "pnp startup-vlan configuration"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Admin State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + + // This object holds cdp information that is operated at a + // interface level container if-items { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package vpc - uses vpc_If-group; + uses cdp_If-group; + description "CDP Interface list"; } + description "CDP Interface"; } + } - // vpc keepalive definitions - container keepalive-items { + grouping cdp_If-group { + description "CDP Interface"; - // Added containment as a singleton: Prefix=keepalive - // Acquired From Package vpc - uses vpc_Keepalive-group; + // Port description + leaf portDesc { + + type naming_Descr; + description "Port Description"; } - // This object holds parameters information for an app. - container params-items { - list AppParams-list { - config "false"; - key "appId"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=params - // Acquired From Package vpc - uses vpc_AppParams-group; - } + type cdp_OperSt; + description "Operational State"; } - // Rel-def from vpcInstPolCons - container rsvpcInstPolCons-items { + // Operational state qualifier + leaf operStQual { + config "false"; - // Added containment as a singleton: Prefix=rsvpcInstPolCons - // Acquired From Package vpc - uses vpc_RsVpcInstPolCons_source-group; + type cdp_OperStQual; + description "Operational State Qualifier"; } - } - grouping vpc_If-group { + // Native vlan + leaf nativeVlan { + config "false"; - // vpc id - // Type is an MO-Defined-Type + type cdp_VlanId; + description "Native Vlan"; + } + + // Interface ID of this endpoint leaf id { - description "VPC ID"; - // Type is an MO-Defined-Type - type vpc_Id; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // local operational status - // Type is an MO-Defined-Type - leaf localOperSt { - config "false"; - description "Local Operational State"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type vpc_OperSt; + type nw_IfAdminSt; + description "Admin State"; } - // remote operational status - // Type is an MO-Defined-Type - leaf remoteOperSt { - config "false"; - description "Remote Operational State"; + // This object holds cdp neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "index"; - // Type is an MO-Defined-Type - type vpc_OperSt; + uses cdp_AdjEp-group; + description "CDP Adjacency list"; + } + description "CDP Adjacency"; } - // Compatibility status - // Type is an MO-Defined-Type - leaf compatSt { - config "false"; - description "Compatibility Status"; + // This object holds cdp intf statistics operational information. + // This is a singleton within an intferace + container ifstats-items { - // Type is an MO-Defined-Type - type vpc_CompatSt; + uses cdp_IfStats-group; + description "Interface Statistics"; } - // Compatibility reason code - // Type is an MO-Defined-Type - leaf compatQual { - config "false"; - description "Compatibility Qualifier"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type vpc_CompatQual; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - leaf compatQualStr { + } + + grouping cdp_AdjEp-group { + description "CDP Adjacency"; + + // A unique value for each device from which CDP + // messages are being received + leaf index { config "false"; - type string; + + type cdp_DevIndex; + description "Index"; } - // Configured vlans - // Type is an MO-Defined-Type - leaf cfgdVlans { + // Remote version + leaf ver { config "false"; - description "Configured Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_NbrVer; + description "Version"; } - // Configured trunk vlans - // Type is an MO-Defined-Type - leaf cfgdTrunkVlans { + // Remote device ID + leaf devId { config "false"; - description "Configured Trunk Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_DevId; + description "Device ID"; } - leaf cfgdAccessVlan { + + // Remote Port ID + leaf portId { config "false"; - type string; + + type cdp_PortId; + description "Port ID"; } - // Up vlans - // Type is an MO-Defined-Type - leaf upVlans { + // Remote Platform ID + leaf platId { config "false"; - description "Up Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_PlatId; + description "Platform ID"; } - // Suspended vlans - // Type is an MO-Defined-Type - leaf suspVlans { + // Capabilities + leaf cap { config "false"; - description "Suspended Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_CapT; + description "Capabilities"; } - // Configured vlans on peer - // Type is an MO-Defined-Type - leaf peerCfgdVlans { + // Duplex advertised by neighbor + leaf duplex { config "false"; - description "Peer Configured Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_Duplex; + description "Duplex"; } - // Up vlans on peer - // Type is an MO-Defined-Type - leaf peerUpVlans { + // Native vlan advertised by neighbor + leaf nativeVlan { config "false"; - description "Peer Up Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_VlanId; + description "Native Vlan"; } - // This object holds parameters information for an app. - container params-items { - list AppParams-list { - config "false"; - key "appId"; + // MTU advertised by neighbor + leaf mtu { + config "false"; - // Added containment: Prefix=params - // Acquired From Package vpc - uses vpc_AppParams-group; - } + type cdp_MTU; + description "MTU"; } - // Rel-def from vpcConf - container rsvpcConf-items { + // System name advertised by neighbor + leaf sysName { + config "false"; - // Added containment as a singleton: Prefix=rsvpcConf - // Acquired From Package vpc - uses vpc_RsVpcConf_source-group; + type cdp_SysName; + description "System Name"; } - } - grouping vpc_AppParams-group { - - // Application Sap Id - // Type is an MO-Defined-Type - leaf appId { + // System location advertised by neighbor + leaf sysLoc { config "false"; - description "Application SAP ID"; - // Type is an MO-Defined-Type - type vpc_AppId; + type cdp_SysLoc; + description "System Location"; } - // Local Reason Code - // Type is an MO-Defined-Type - leaf locRsnCode { + leaf name { config "false"; - description "Local Reason Code"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Local Param Length - // Type is an MO-Defined-Type - leaf locParamLen { - config "false"; - description "Local Param Length"; + // Management address received from cdp neighbor + container mgmt-items { + list MgmtAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_ParamLen; + uses cdp_MgmtAddr-group; + description "Management Address list"; + } + description "Management Address"; } - // Local Param Value - // Type is an MO-Defined-Type - leaf locParamVal { - config "false"; - description "Local Param Value"; + // Interface address received from cdp neighbor + container intf-items { + list IntfAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_ParamVal; + uses cdp_IntfAddr-group; + description "Interface Address list"; + } + description "Interface Address"; } - // Remote Reason Code - // Type is an MO-Defined-Type - leaf remRsnCode { - config "false"; - description "Remoe Reason Code"; + // This object holds cdp adj statistics operational information. + // This is a singleton within an adjacency + container adjstats-items { - // Type is an MO-Defined-Type - type vpc_CompatQual; + uses cdp_AdjStats-group; + description "Adjacency Statistics"; } + } - // Remote Param Length - // Type is an MO-Defined-Type - leaf remParamLen { + grouping cdp_MgmtAddr-group { + description "Management Address"; + leaf addr { config "false"; - description "Remote Param Length"; - - // Type is an MO-Defined-Type - type vpc_ParamLen; + type address_Ip; + description "Address"; } + } - // Remote Param Value - // Type is an MO-Defined-Type - leaf remParamVal { + grouping cdp_IntfAddr-group { + description "Interface Address"; + leaf addr { config "false"; - description "Remote Param Value"; - - // Type is an MO-Defined-Type - type vpc_ParamVal; + type address_Ip; + description "Address"; } + } - // This object holds per app per param information . - container param-items { - list AppParamInfo-list { - config "false"; - key "paramName"; - - // Added containment: Prefix=param - // Acquired From Package vpc - uses vpc_AppParamInfo-group; + grouping cdp_AdjStats-group { + description "Adjacency Statistics"; + leaf adjExpTs { + config "false"; + type union { + type string; + type uint64; } + description "Adjacency Expiration Timestamp"; } } - grouping vpc_AppParamInfo-group { - leaf paramName { + grouping cdp_IfStats-group { + description "Interface Statistics"; + + // CDP Interface Stats Number of v1 packets sent + leaf v1Sent { config "false"; - type string; + + type nw_Counter32; + description "Number of V1 Packets Sent"; } - // Param Type - // Type is an MO-Defined-Type - leaf paramType { + // Number of v2 packets sent + leaf v2Sent { config "false"; - description "Parameter Type"; - // Type is an MO-Defined-Type - type vpc_ParamType; + type nw_Counter32; + description "Number of V2 Packets Sent"; } - leaf locParamVal { + + // Number of packets failed to send + leaf failedSent { config "false"; - type string; + + type nw_Counter32; + description "Number of Packets Failed to Send"; } - leaf remParamVal { + + // Number of valid v1 packets received + leaf validV1Rcvd { config "false"; - type string; - } - } - grouping vpc_Keepalive-group { + type nw_Counter32; + description "Number of Valid V1 Packets Received"; + } - // vrf name - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Number of v2 packets received + leaf validV2Rcvd { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf srcIp { - type address_Ip; + type nw_Counter32; + description "Number of Valid V2 Packets Received"; } - leaf srcIpCli { + + // Number of unsupported version packets received + leaf unSupVerRcvd { config "false"; - type boolean; - default "true"; - } - leaf destIp { - type address_Ip; + + type nw_Counter32; + description "Number of Unsupported Version Packets Received"; } - // port number - // Type is an MO-Defined-Type - leaf udpPort { - description "UDP Port"; + // Number of checksum error packets received + leaf cksumErrRcvd { + config "false"; - // Type is an MO-Defined-Type - type comm_Port; + type nw_Counter32; + description "Number of Checksum Error Packets Received"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Number of malformed packets received + leaf malformRcvd { + config "false"; - // Type is an MO-Defined-Type - type vpc_KeepaliveInterval; + type nw_Counter32; + description "Number of Malform Packets Received"; } + } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + grouping lldp_Entity-group { + description "LLDP Entity"; - // Type is an MO-Defined-Type - type vpc_KeepaliveTout; + // This objects hold per lldp instance information. There is + // only one instance of lldp running in the system today + container inst-items { + + uses lldp_Inst-group; + description "LLDP Instance"; } + } - // tos config type - // Type is an MO-Defined-Type - leaf tosCfgType { - description "TOS Type"; + grouping lldp_Inst-group { + description "LLDP Instance"; - // Type is an MO-Defined-Type - type vpc_TosCfgType; + // Amount of time in seconds that a receiving device + // should hold the information sent by your device + // before discarding it + leaf holdTime { + + type lldp_HoldTime; + description "Hold Time"; } - // tos byte - // Type is an MO-Defined-Type - leaf tosByte { - description "TOS Byte"; + // Delay time in seconds for lldp to initialize on any + // interface + leaf initDelayTime { - // Type is an MO-Defined-Type - type vpc_TosByte; + type lldp_InitDelayTime; + description "Init Delay Time"; } - // tos value - // Type is an MO-Defined-Type - leaf tosValue { - description "TOS Value"; + // Transmission frequency of lldp updates in seconds + leaf txFreq { - // Type is an MO-Defined-Type - type vpc_TosValue; + type lldp_TxFreq; + description "Transmission Frequency"; } - // tos type - // Type is an MO-Defined-Type - leaf tosType { - description "TOS Type"; + // Some tlvs are optional as per LLDP protocol (802.1AB) + // specifications. Use these selectors to turn on/off + leaf optTlvSel { - // Type is an MO-Defined-Type - type vpc_TosType; + type lldp_OptTlvSel; + description "Optional TLV Selector"; } - // precedence value - // Type is an MO-Defined-Type - leaf precValue { - description "Precedence Value"; + // System description + leaf sysDesc { - // Type is an MO-Defined-Type - type vpc_PrecValue; + type naming_Descr; + description "System Description"; } - // precedence type - // Type is an MO-Defined-Type - leaf precType { - description "Precedence Type"; + // PortId Subtype + leaf portIdSubType { - // Type is an MO-Defined-Type - type vpc_PrecType; + type lldp_PortIdSubType; + description "PortId SubType"; } - // flush timeout - // Type is an MO-Defined-Type - leaf flushTout { - description "Flush Timeout"; + // Local management address + container mgmt-items { + list MgmtAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_FlushTout; + uses lldp_MgmtAddr-group; + description "Management Address list"; + } + description "Management Address"; } - // operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This object holds lldp information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type vpc_KeepaliveOperSt; + uses lldp_If-group; + description "LLDP Interface list"; + } + description "LLDP Interface"; } - // send interface - // Type is an MO-Defined-Type - leaf sendIf { - config "false"; - description "Send Interface"; + // This object holds lldp inst statistics operational information. + // This is a singleton within lldp + container inststats-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses lldp_InstStats-group; + description "LLDP Statistics"; } - // recv interface - // Type is an MO-Defined-Type - leaf recvIf { - config "false"; - description "Received Interface"; + container rslldpInstPolCons-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses lldp_RsLldpInstPolCons_source-group; + description "Lldp Instance Policy Consumption"; } + } - // last send time - // Type is an MO-Defined-Type - leaf sendTime { + grouping lldp_MgmtAddr-group { + description "Management Address"; + leaf addr { config "false"; - description "Last Send Time"; - - // Type is an MO-Defined-Type - type vpc_Time; + type address_Ip; + description "Address"; } + } - // last recv time - // Type is an MO-Defined-Type - leaf recvTime { - config "false"; - description "Last Received Time"; + grouping lldp_If-group { + description "LLDP Interface"; - // Type is an MO-Defined-Type - type vpc_Time; + // Receive admin state + leaf adminRxSt { + + type lldp_AdminSt; + description "Admin Receive State"; } - // first recv time - // Type is an MO-Defined-Type - leaf firstRecvTime { - config "false"; - description "First Received Time"; + // Transmit admin state + leaf adminTxSt { - // Type is an MO-Defined-Type - type vpc_Time; + type lldp_AdminSt; + description "Admin Transmit State"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // System description + leaf sysDesc { - // Type is an MO-Defined-Type - type naming_Name; + type naming_Descr; + description "System Description"; } - // Specify link used for peer communication - container peerlink-items { + leaf tlvSetVlan { - // Added containment as a singleton: Prefix=peerlink - // Acquired From Package vpc - uses vpc_PeerLink-group; + type lldp_MgmtVlanId; + description "Tlv vlan"; + } + leaf tlvSetMgmtIpv4 { + type address_Ip; + description "Tlv ipv4"; + } + leaf tlvSetMgmtIpv6 { + type address_Ip; + description "Tlv ipv6"; } - } - - grouping vpc_PeerLink-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port description + leaf portDesc { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Port Description"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf portDCBXPVer { - // Type is an MO-Defined-Type - type naming_Descr1024; + type lldp_DCBXPVerType; + description "DCBXP Version"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds lldp neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses lldp_AdjEp-group; + description "LLDP Adjacency Endpoint list"; + } + description "LLDP Adjacency Endpoint"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - container rtvrfMbr-items { + // This object holds lldp intf statistics operational information. + // This is a singleton within an interface + container ifstats-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses lldp_IfStats-group; + description "Interface Statistics"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + container rtvrfMbr-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping fv_EpNs-group { + grouping lldp_AdjEp-group { + description "LLDP Adjacency Endpoint"; - // Represents the number of EPs currently - // discovered - // Type is an MO-Defined-Type - leaf epCount { + // Neighbor ID + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type fv_EpCount; + type lldp_AdjId; + description "ID"; } - } - grouping gold_Entity-group { - leaf description { + // Neighbor chassis id type + leaf chassisIdT { config "false"; - type string; + + type lldp_ChassisIdT; + description "Chassis ID Type"; } - // Module - container module-items { - list Module-list { - config "false"; - key "id"; + // Neighbor chassis id value + leaf chassisIdV { + config "false"; - // Added containment: Prefix=module - // Acquired From Package gold - uses gold_Module-group; - } + type lldp_ChassisIdV; + description "Chassis ID Value"; } - } - - grouping gold_Module-group { - // Module id - // Type is an MO-Defined-Type - leaf id { + // Neighbor port type + leaf portIdT { config "false"; - description "Module Id"; - // Type is an MO-Defined-Type - type gold_Id; + type lldp_PortIdT; + description "Port ID Type"; } - // Module name - // Type is an MO-Defined-Type - leaf description { + // Neighbor port value + leaf portIdV { config "false"; - description "Module Description"; - // Type is an MO-Defined-Type - type gold_Name; + type lldp_PortIdV; + description "Port ID Value"; } - // Diagnostic Bootup Level - // Type is an MO-Defined-Type - leaf diagBootLevel { + // Neighbor system name + leaf sysName { config "false"; - description "Module Diagnostic Bootup Level"; - // Type is an MO-Defined-Type - type gold_bootLevel; + type lldp_SysName; + description "System Name"; } - // Module Diag Status - // Type is an MO-Defined-Type - leaf diagStatus { + // Neighbor system description + leaf sysDesc { config "false"; - description "Module Diagnostic Status"; - // Type is an MO-Defined-Type - type gold_moduleDiagStatus; + type lldp_NbrSysDesc; + description "System Description"; } - // Test - container test-items { - list Test-list { - config "false"; - key "id"; + // Neighbor port description + leaf portDesc { + config "false"; - // Added containment: Prefix=test - // Acquired From Package gold - uses gold_Test-group; - } + type naming_Descr; + description "Port Description"; } - } - - grouping gold_Test-group { - // Test id - // Type is an MO-Defined-Type - leaf id { + // Neighbor System Capability + leaf capability { config "false"; - description "Test Id"; - // Type is an MO-Defined-Type - type gold_Id; + type lldp_Capability; + description "Capability"; } - // Test name - // Type is an MO-Defined-Type - leaf name { + // Neighbor Enabled Capability + leaf enCap { config "false"; - description "Test Name"; - // Type is an MO-Defined-Type - type gold_Name; + type lldp_Capability; + description "Enabled Capability"; } - // Test first fail time - // Type is an MO-Defined-Type - leaf firstFailTime { + // Neighbor Management Address + leaf mgmtIp { config "false"; - description "Test First Failure Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type lldp_MgmtIp; + description "Management Address"; } - // Test last fail time - // Type is an MO-Defined-Type - leaf lastFailTime { + // Org tlv, Neighbor port vlan + leaf portVlan { config "false"; - description "Test Last Failure Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type lldp_PortVlan; + description "Port Vlan"; } - // Test last execution time - // Type is an MO-Defined-Type - leaf lastExecutionTime { + leaf name { config "false"; - description "Test Last Execution Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Test last pass time - // Type is an MO-Defined-Type - leaf lastPassTime { - config "false"; - description "Test Last Pass Time"; + // This object holds lldp adj statistics operational information. + // This is a singleton within an adjacency + container adjstats-items { - // Type is an MO-Defined-Type - type gold_TestTime; + uses lldp_AdjStats-group; + description "Adjacency Statistics"; } + } - // Test next execution time - // Type is an MO-Defined-Type - leaf nextExecutionTime { + grouping lldp_AdjStats-group { + description "Adjacency Statistics"; + } + + grouping lldp_IfStats-group { + description "Interface Statistics"; + + // LLDP Interface Stats Number of packets sent + leaf pktSent { config "false"; - description "Test Next Execution Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type nw_Counter64; + description "Number of Packets Sent"; } - // Test result - // Type is an MO-Defined-Type - leaf result { + // Number of packets received + leaf pktRcvd { config "false"; - description "Test Result"; - // Type is an MO-Defined-Type - type gold_Result; + type nw_Counter64; + description "Number of Packets Received"; } - // Test failure reason - // Type is an MO-Defined-Type - leaf resultReason { + // Number of entries aged + leaf entriesAged { config "false"; - description "Test Failure Reason"; - // Type is an MO-Defined-Type - type gold_TestFailReason; + type nw_Counter64; + description "Number of Entries Aged"; } - leaf runCount { - config "false"; - type uint32; - } - leaf failCount { - config "false"; - type uint32; - } - leaf consecutiveFailCount { + + // Number of packets received in error + leaf errPktRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Number of Packets Received in Error"; } - // Aborted Ports - // Type is an MO-Defined-Type - leaf portsAborted { + // Number of packets discarded + leaf pktDiscarded { config "false"; - description "List of Aborted Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Discarded"; } - // Error Disabled Ports - // Type is an MO-Defined-Type - leaf portsErrorDisabled { + // Number of unrecognized TLVs + leaf unrecogTLV { config "false"; - description "List of Error Disabled Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Unrecognized TLVs"; } + } - // Failed Ports - // Type is an MO-Defined-Type - leaf portsFailing { + grouping lldp_InstStats-group { + description "LLDP Statistics"; + + // LLDP Inst Stats Number of packets sent + leaf pktSent { config "false"; - description "List of Failing Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Sent"; } - // Incomplete Ports - // Type is an MO-Defined-Type - leaf portsIncomplete { + // Number of packets received + leaf pktRcvd { config "false"; - description "List of Incomplete Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Received"; } - // Passed Ports - // Type is an MO-Defined-Type - leaf portsPassing { + // Number of entries aged + leaf entriesAged { config "false"; - description "List of Passing Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Entries Aged"; } - // Untested Ports - // Type is an MO-Defined-Type - leaf portsUntested { + // Number of packets received in error + leaf errPktRcvd { config "false"; - description "List of Untested Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Received in Error"; } - leaf testAttributes { + + // Number of packets discarded + leaf pktDiscarded { config "false"; - type string; + + type nw_Counter64; + description "Number of Packets Discarded"; } - // Test Interval - // Type is an MO-Defined-Type - leaf testInterval { + // Number of unrecognized TLVs + leaf unrecogTLV { config "false"; - description "Health Monitor Test Interval"; - // Type is an MO-Defined-Type - type gold_TestTime; + type nw_Counter64; + description "Number of Unrecognized TLVs"; } } - grouping igmp_Entity-group { + grouping vpc_Entity-group { + description "VPC Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per igmp instance information. There is only - // one instance of igmp running in the system today + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This objects hold per vpc instance information. There is only + // one instance of vpcm running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package igmp - uses igmp_Inst-group; + uses vpc_Inst-group; + description "VPC Instance"; } } - grouping igmp_Inst-group { - leaf heavyTemplate { - type boolean; - } + grouping vpc_Inst-group { + description "VPC Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // Control - // Inherited From ipmc:AInst - // Type is an MO-Defined-Type - leaf instCtrl { - description "Inst Controls"; - - // Type is an MO-Defined-Type - type ipmc_InstCtrl; - } - - // Bootup route add delay to RIB - // Inherited From ipmc:AInst - // Type is an MO-Defined-Type - leaf bootupDelay { - description "Bootup Route Add Delay"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type ipmc_BootupDelay; - } - leaf flushRoute { - type boolean; - } - leaf rtrAlert { - type boolean; - } - leaf anyQueryDest { - type boolean; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This objects hold per igmp external domain information - container extdom-items { - list ExtDom-list { + // configure orphan ports to be brought down on Secondary peerlink failure + container orphan-items { + list OrphanPort-list { key "id"; - // Added containment: Prefix=extdom - // Acquired From Package igmp - uses igmp_ExtDom-group; + uses vpc_OrphanPort-group; + description "Orphan Port Suspend list"; } + description "Orphan Port Suspend"; } - // This objects hold per igmp domain information + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system container dom-items { - list Dom-list { - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package igmp - uses igmp_Dom-group; - } - } - - // IGMP database for show commands - needs to be ephemeral - container routedb-items { - - // Added containment as a singleton: Prefix=routedb - // Acquired From Package igmp - uses igmp_RouteDb-group; - } - } - - grouping igmp_ExtDom-group { - - // Id for this domain @@@ This comes from the Network id assigned by the - // PE for the external domain - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; - - // Type is an MO-Defined-Type - type top_RemoteNetworkId; - } - - // Igmp Version - // Type is an MO-Defined-Type - leaf ver { - description "IGMP Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // This objects hold per igmp external interface information - container extif-items { - list ExtIf-list { - key "id"; - // Added containment: Prefix=extif - // Acquired From Package igmp - uses igmp_ExtIf-group; - } + uses vpc_Dom-group; + description "VPC Domain"; } } - grouping igmp_ExtIf-group { + grouping vpc_OrphanPort-group { + description "Orphan Port Suspend"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - container rtnwPathToIf-items { + grouping vpc_Dom-group { + description "VPC Domain"; - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Domain id @@@ This property is internally set by PE + leaf id { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type vpc_DomId; + description "Domain ID"; + } + leaf peerIp { + type address_Ip; + description "Peer IP"; + } + leaf virtualIp { + type address_Ip; + description "Virtual IP"; } - } - - grouping igmp_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // MCTless vPC DSCP value + leaf dscp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_Dscp; + description "DSCP"; } - // IGMP databases - container db-items { - list Db-list { - config "false"; - key "type"; + // system priority @@@ This comes from the lacp policy + leaf sysPrio { - // Added containment: Prefix=db - // Acquired From Package igmp - uses igmp_Db-group; - } + type vpc_SysPrio; + description "System Priority"; } - container eventHist-items { - list EventHistory-list { - key "type"; - - // Added containment: Prefix=eventHist - // Acquired From Package igmp - uses igmp_EventHistory-group; - } + leaf sysMac { + type address_Mac; + description "System MAC"; } - // This objects hold per igmp interface information - container if-items { - list If-list { - key "id"; + // role priority @@@ This comes from the vpc policy + leaf rolePrio { - // Added containment: Prefix=if - // Acquired From Package igmp - uses igmp_If-group; - } + type vpc_RolePrio; + description "Role Priority"; } - // This objects hold per igmp domain information - container ssmxlate-items { - list SSMXlate-list { - key "srcAddr grpPfx"; + // Interface vlans to exclude for peer gateway + leaf peerGWExcludeVLAN { - // Added containment: Prefix=ssmxlate - // Acquired From Package igmp - uses igmp_SSMXlate-group; - } + type vpc_ExcludeVLAN; + description "Exclude VLAN List"; } - } - - grouping igmp_Db-group { - // Type of the repository - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Database type for different show commands"; + // Enable L3 forwarding for packets destined to peer's gateway + // mac-address. + leaf peerGw { - // Type is an MO-Defined-Type - type igmp_DbT; + type nw_AdminSt; + default "disabled"; + description "Peer Gateway"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Enable graceful type-1 consistency check + leaf grcflCnstncyChck { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Graceful Type-1 Consistency Check"; } - // IGMP Group/Src MOs - container src-items { - list Route-list { - config "false"; - key "src grp"; - - // Added containment: Prefix=src - // Acquired From Package igmp - uses igmp_Route-group; - } - } - } + // Tracking object to suspend vPC if object goes down + leaf track { - grouping igmp_Route-group { - leaf src { - config "false"; - type address_Ip; - } - leaf grp { - config "false"; - type address_Ip; + type vpc_Track; + description "Tracking object to suspend vPC if object goes down"; } - // IGMP Oif MOs. We create one object per interface in the oif list - container oif-items { - list Oif-list { - config "false"; - key "oif"; + // Enable auto recovery if peer is presumed non-operational + leaf autoRecovery { - // Added containment: Prefix=oif - // Acquired From Package igmp - uses igmp_Oif-group; - } + type nw_AdminSt; + default "disabled"; + description "Auto Recovery"; } - } - - grouping igmp_Oif-group { - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "Outgoing interface"; + // Duration to wait before assuming peer dead and restoring vpcs + leaf autoRecoveryIntvl { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf expiryTs { - config "false"; - type string; - } - leaf createTs { - config "false"; - type string; - } - leaf lastRep { - config "false"; - type address_Ip; + type vpc_AutoRecoveryIntvl; + description "Auto Recovery interval"; } - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Join type"; + // Enable peer switch on vPC pair switches + leaf peerSwitch { - // Type is an MO-Defined-Type - type ipmc_RouteFlags; + type nw_AdminSt; + default "disabled"; + description "vPC pair switches"; } - } - - grouping igmp_EventHistory-group { - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + // Delay in bringing up the vPC links + leaf delayRestoreVPC { - // Type is an MO-Defined-Type - type igmp_EhType; + type vpc_DelayRestoreVPC; + description "Delay restore for vPC links"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text per kb"; + // Delay in bringing-up interface-vlan + leaf delayRestoreSVI { - // Type is an MO-Defined-Type - type igmp_Size; + type vpc_DelayRestoreSVI; + description "Delay restore for SVI"; } - } - grouping igmp_If-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Delay in bringing-up the peer-link + leaf delayPeerLinkBringup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_DelayPeerLinkBringup; + description "Peer link delay timer"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Delay restore: Orphan Port + leaf delayRestoreOrphanPort { - // Type is an MO-Defined-Type - type naming_Descr1024; + type vpc_DelayRestoreOrphanPort; + description "Delay restore for orphan ports"; + } + leaf macBpduSrcVer2 { + type boolean; + default "false"; + description "Version 2 bpdu source mac-address"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Interface vlans to exclude from suspension when dual-active + leaf excludeSVI { - // Type is an MO-Defined-Type - type nw_IfId; + type vpc_ExcludeSVI; + description "SVI List excluded from suspension when dual-active"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type + // Suspend vPC locally leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_AdminSt; + description "vPC suspend locally"; } - // Interface Control - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf ifCtrl { - description "Controls"; + // Enable auto recovery if peer is presumed non-operational + leaf fastConvergence { - // Type is an MO-Defined-Type - type ipmc_IfCtrl; + type nw_AdminSt; + default "disabled"; + description "Fast Convergence"; } - // Interface version - // Inherited From ipmc:AIf - // Modified by Override: igmp:If->ver - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Layer 3 Peer Router status + leaf l3PeerRouter { - // Type is an MO-Defined-Type - type mcast_Ver; + type nw_AdminSt; + default "disabled"; + description "L3 Peer Router"; } - // Group Timeout - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf grpTimeout { - description "Group Membership Timeout"; + // Layer 3 Peer Router Syslog Status + leaf l3PeerRouterSyslog { - // Type is an MO-Defined-Type - type ipmc_GrpTimeout; - } - leaf actQuer { - config "false"; - type address_Ip; + type nw_AdminSt; + default "disabled"; + description "L3 Peer Router Syslog"; } - leaf nextQuerTime { - config "false"; - type string; + + // Layer 3 Peer Router Syslog Interval + leaf l3PeerRouterSyslogInterval { + + type vpc_L3PeerRouterSyslogInterval; + description "L3 Peer Router Syslog Interval"; } - // Flags - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf flags { + // role + leaf operRole { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmc_IfFlags; - } - leaf entryCount { - type uint32; - } - leaf stEntryCount { - type uint32; + type vpc_Role; + description "Operational Role"; } - leaf querExpiry { + + // old role + leaf oldRole { config "false"; - type string; - } - leaf reportLl { - type boolean; - } - leaf immediateLeave { - type boolean; + + type vpc_Role; + description "Old Role"; } - // Allow v3 ASM - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf allowv3Asm { - description "Allow v3 ASM"; + // lacp role + leaf lacpRole { + config "false"; - // Type is an MO-Defined-Type - type ipmc_Allowv3AsmType; + type vpc_Role; + description "Lacp Role"; } - // IGMP Interface Stats Oper MO - container IfStats-items { + // summarized role + leaf summOperRole { + config "false"; - // Added containment as a singleton: Prefix=IfStats - // Acquired From Package igmp - uses igmp_IfStats-group; + type vpc_SummRole; + description "Summarized Oper Role"; } - // This objects hold IP Multicast Group JoinType information - container jointype-items { - list JoinType-list { - key "type"; + // local system priority + leaf localPrio { + config "false"; - // Added containment: Prefix=jointype - // Acquired From Package igmp - uses igmp_JoinType-group; - } + type vpc_SysPrio; + description "Local System Priority"; } - // This object holds resource (router state) limit policy - // to limit amount of multicast routing state on the router - container limit-items { + // peer system priority + leaf peerPrio { + config "false"; - // Added containment as a singleton: Prefix=limit - // Acquired From Package igmp - uses igmp_ResP-group; + type vpc_SysPrio; + description "Peer System Priority"; } - // This object holds igmp reports policy state per Interface - container reppol-items { - - // Added containment as a singleton: Prefix=reppol - // Acquired From Package igmp - uses igmp_RepP-group; - } - - // This object holds static igmp reports policy state per Interface - container streppol-items { - list StRepP-list { - key "joinType"; - - // Added containment: Prefix=streppol - // Acquired From Package igmp - uses igmp_StRepP-group; - } - } - - // This object holds querier information per interface - container querierp-items { - - // Added containment as a singleton: Prefix=querierp - // Acquired From Package igmp - uses igmp_QuerierP-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } - } - } - - grouping igmp_IfStats-group { - leaf v2querSent { - config "false"; - type uint32; - } - leaf v2querRcvd { + // vpc system priority + leaf vpcPrio { config "false"; - type uint32; + + type vpc_SysPrio; + description "Vpc System Priority"; } - leaf v3querSent { + leaf localMAC { config "false"; - type uint32; + type address_Mac; + description "Local System MAC"; } - leaf v3querRcvd { + leaf peerMAC { config "false"; - type uint32; + type address_Mac; + description "Peer System MAC"; } - leaf v2rprtSent { + leaf vpcMAC { config "false"; - type uint32; + type address_Mac; + description "Vpc System MAC"; } - leaf v2rprtRcvd { + + // various operational state + leaf operSt { config "false"; - type uint32; + + type vpc_DomOperSt; + description "Operational State"; } - leaf v3rprtSent { + + // peer version + leaf peerVersion { config "false"; - type uint32; + + type vpc_PeerVersion; + description "Peer Version"; } - leaf v3rprtRcvd { + + // batched vpc inventory + leaf batchedVpcInv { config "false"; - type uint32; + + type vpc_BatchedVpcInv; + description "Batched Vpc Inventory"; } - leaf v2leaveSent { + leaf issuFromVer { config "false"; - type uint32; + type string; + description "Issu from Version"; } - leaf v2leaveRcvd { + leaf issuToVer { config "false"; - type uint32; + type string; + description "Issu to Version"; } - } - - grouping igmp_JoinType-group { - // Join Type of the groups - // Type is an MO-Defined-Type - leaf type { - description "Join Type of the groups"; + // Peer state + leaf peerSt { + config "false"; - // Type is an MO-Defined-Type - type ipmc_JoinType; + type vpc_PeerSt; + description "Peer State"; } - // This objects hold IP Multicast Group version information - container ver-items { - list Version-list { - key "version"; + // Peer status reason code + leaf peerStQual { + config "false"; - // Added containment: Prefix=ver - // Acquired From Package igmp - uses igmp_Version-group; - } + type vpc_PeerStQual; + description "Peer Status Qualifier"; } - } - - grouping igmp_Version-group { - // IGMP version - // Type is an MO-Defined-Type - leaf version { - description "Group version"; + // Dual active status + leaf dualActiveSt { + config "false"; - // Type is an MO-Defined-Type - type ipmc_Ver; + type vpc_DualActiveSt; + description "Dual Active Status"; } - // This object holds igmp group configuration per Interface - container group-items { - list Group-list { - key "grp"; - - // Added containment: Prefix=group - // Acquired From Package igmp - uses igmp_Group-group; - } - } - } + // Compatibility status + leaf compatSt { + config "false"; - grouping igmp_Group-group { - leaf grp { - type address_Ip; - } - leaf useStaticOif { - type boolean; - default "true"; + type vpc_CompatSt; + description "Compatibility Status"; } - // This object holds static igmp source per group - container source-items { - list Source-list { - key "src"; - - // Added containment: Prefix=source - // Acquired From Package igmp - uses igmp_Source-group; - } - } - } + // Compatibility reason code + leaf compatQual { + config "false"; - grouping igmp_Source-group { - leaf src { - type address_Ip; + type vpc_CompatQual; + description "Compatibility Qualifier"; } - leaf useStaticOif { - type boolean; - default "true"; + leaf compatQualStr { + config "false"; + type string; + description "Compatibility Qualifier String"; } - } - - grouping igmp_ResP-group { - // Reserved entry Limit Status - // Type is an MO-Defined-Type - leaf rsvdEntries { + // Type-2 compatibility status + leaf type2CompatSt { config "false"; - description "Reserved entries availability status"; - // Type is an MO-Defined-Type - type igmp_LimitSt; + type vpc_CompatSt; + description "Type-2 Compatibility Status"; } - // Regular entry Limit Status - // Type is an MO-Defined-Type - leaf regEntries { + // Type-2 compatibility reason code + leaf type2CompatQual { config "false"; - description "Regular entries availability status"; - // Type is an MO-Defined-Type - type igmp_LimitSt; - } - leaf availRsvdEntries { - config "false"; - type uint32; + type vpc_CompatQual; + description "Type-2 Compatibility Qualifier"; } - leaf availRegEntries { + leaf type2CompatQualStr { config "false"; - type uint32; + type string; + description "Type-2 Compatibility Qualifier String"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } + container if-items { + list If-list { + key "id"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type - leaf max { - description "Maximum Multicast Entries"; - - // Type is an MO-Defined-Type - type mcast_NumEntries; + uses vpc_If-group; + description "VPC Interface list"; + } + description "VPC Interface"; } - // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type - leaf rsvd { - description "Reserved Multicast Entries"; + // vpc keepalive definitions + container keepalive-items { - // Type is an MO-Defined-Type - type mcast_NumEntries; - } - leaf rtMap { - type string; + uses vpc_Keepalive-group; + description "VPC Keepalive Policy"; } - } - grouping igmp_RepP-group { - leaf rtMap { - type string; - } - leaf pfxList { - type string; - } - leaf useAccessGrpCommand { - type boolean; - } - } + // This object holds parameters information for an app. + container params-items { + list AppParams-list { + config "false"; + key "appId"; - grouping igmp_StRepP-group { - leaf rtMap { - type string; - } - leaf pfxList { - type string; - } - leaf useAccessGrpCommand { - type boolean; + uses vpc_AppParams-group; + description "Application Parameters list"; + } + description "Application Parameters"; } - // Join Type of the groups - // Inherited From ipmc:AStRepP - // Type is an MO-Defined-Type - leaf joinType { - description "Join Type of Groups"; + container rsvpcInstPolCons-items { - // Type is an MO-Defined-Type - type ipmc_JoinType; + uses vpc_RsVpcInstPolCons_source-group; + description "Vpc Instance Policy Attachment"; } } - grouping igmp_QuerierP-group { + grouping vpc_If-group { + description "VPC Interface"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // vpc id + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type vpc_Id; + description "VPC ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // local operational status + leaf localOperSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type vpc_OperSt; + description "Local Operational State"; } - // Querier version - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // remote operational status + leaf remoteOperSt { + config "false"; - // Type is an MO-Defined-Type - type mcast_Ver; + type vpc_OperSt; + description "Remote Operational State"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // Compatibility status + leaf compatSt { + config "false"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type vpc_CompatSt; + description "Compatibility Status"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - description "Query Interval"; + // Compatibility reason code + leaf compatQual { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type vpc_CompatQual; + description "Compatibility Qualifier"; + } + leaf compatQualStr { + config "false"; + type string; + description "Compatibility Qualifier String"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - description "Response Interval"; + // Configured vlans + leaf cfgdVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type l2_VlanBitmap; + description "Configured Vlans"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - description "Robustness Factor"; + // Configured trunk vlans + leaf cfgdTrunkVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type l2_VlanBitmap; + description "Configured Trunk Vlans"; + } + leaf cfgdAccessVlan { + config "false"; + type string; + description "Configured Access Vlan"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - description "Startup Query Interval"; + // Up vlans + leaf upVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type l2_VlanBitmap; + description "Up Vlans"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - description "Startup Query Count"; + // Suspended vlans + leaf suspVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type l2_VlanBitmap; + description "Suspended Vlans"; } - // Querier timeout - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf querierTimeout { - description "Querier Timeout"; + // Configured vlans on peer + leaf peerCfgdVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type l2_VlanBitmap; + description "Peer Configured Vlans"; } - // Last member query count - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrCnt { - description "Last Member Query Count"; + // Up vlans on peer + leaf peerUpVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryCnt; + type l2_VlanBitmap; + description "Peer Up Vlans"; } - // Last member response time - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrRespTime { - description "Last Member Response Time"; + // This object holds parameters information for an app. + container params-items { + list AppParams-list { + config "false"; + key "appId"; - // Type is an MO-Defined-Type - type mcast_LastMbrRespTime; + uses vpc_AppParams-group; + description "Application Parameters list"; + } + description "Application Parameters"; } - } - - grouping igmp_SSMXlate-group { - // Group IP Prefix address - // Inherited From ipmc:ASSMXlate - // Type is an MO-Defined-Type - leaf grpPfx { - description "Address"; + container rsvpcConf-items { - // Type is an MO-Defined-Type - type mcast_GrpIp; - } - leaf srcAddr { - type address_Ip; + uses vpc_RsVpcConf_source-group; + description "Port Channel Attachment"; } } - grouping igmp_RouteDb-group { + grouping vpc_AppParams-group { + description "Application Parameters"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Application Sap Id + leaf appId { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_AppId; + description "Application SAP ID"; } - // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type - leaf type { + // Local Reason Code + leaf locRsnCode { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type rtdmc_DbT; + type vpc_CompatQual; + description "Local Reason Code"; } - // This objects hold per igmp domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Local Param Length + leaf locParamLen { + config "false"; - // Added containment: Prefix=vrf - // Acquired From Package igmp - uses igmp_Vrf-group; - } + type vpc_ParamLen; + description "Local Param Length"; } - } - grouping igmp_Vrf-group { - leaf name { + // Local Param Value + leaf locParamVal { config "false"; - type string; - } - - // This object holds igmp route group information - container group-items { - list RouteGroup-list { - config "false"; - key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package igmp - uses igmp_RouteGroup-group; - } + type vpc_ParamVal; + description "Local Param Value"; } - } - grouping igmp_RouteGroup-group { - leaf grpAddr { + // Remote Reason Code + leaf remRsnCode { config "false"; - type address_Ip; - } - - // This object holds igmp route source information - container source-items { - list RouteSource-list { - config "false"; - key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package igmp - uses igmp_RouteSource-group; - } + type vpc_CompatQual; + description "Remoe Reason Code"; } - } - grouping igmp_RouteSource-group { - leaf srcAddr { + // Remote Param Length + leaf remParamLen { config "false"; - type address_Ip; + + type vpc_ParamLen; + description "Remote Param Length"; } - leaf oifcount { + + // Remote Param Value + leaf remParamVal { config "false"; - type uint32; + + type vpc_ParamVal; + description "Remote Param Value"; } - // IGMP Route Oif MOs. We create one object per interface in the oif list - container oif-items { - list RouteOif-list { + // This object holds per app per param information . + container param-items { + list AppParamInfo-list { config "false"; - key "oif"; + key "paramName"; - // Added containment: Prefix=oif - // Acquired From Package igmp - uses igmp_RouteOif-group; + uses vpc_AppParamInfo-group; + description "Application Parameter Information list"; } + description "Application Parameter Information"; } } - grouping igmp_RouteOif-group { - leaf local { - config "false"; - type boolean; - } - leaf static { - config "false"; - type boolean; - } - leaf hostProxy { - config "false"; - type boolean; - } - leaf uptime { + grouping vpc_AppParamInfo-group { + description "Application Parameter Information"; + leaf paramName { config "false"; type string; + description "Parameter Name"; } - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf oif { + // Param Type + leaf paramType { config "false"; - description "Outgoing interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type vpc_ParamType; + description "Parameter Type"; } - leaf expiryTs { + leaf locParamVal { config "false"; type string; + description "Local Parameter Value"; } - leaf createTs { + leaf remParamVal { config "false"; type string; - } - leaf lastRep { - config "false"; - type address_Ip; - } - - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Join type"; - - // Type is an MO-Defined-Type - type ipmc_RouteFlags; + description "Remote Parameter Value"; } } - grouping firmware_CtrlrFwStatusCont-group { - - // Information about firmware running on a controller. - container ctrlrrunning-items { - - // Added containment as a singleton: Prefix=ctrlrrunning - // Acquired From Package firmware - uses firmware_CtrlrRunning-group; - } + grouping vpc_Keepalive-group { + description "VPC Keepalive Policy"; - // Specification for maintenance policy enforcement status on a node. - // This object exists on every node where the policy is enforced. - container upgjob-items { + // vrf name + leaf vrf { - // Added containment as a singleton: Prefix=upgjob - // Acquired From Package maint - uses maint_UpgJob-group; + type l3_VrfName; + description "VRF"; } - } - - grouping firmware_CtrlrRunning-group { - - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type cap_Version; + leaf srcIp { + type address_Ip; + description "Source IP"; } - leaf internalLabel { - config "false"; - type string; + leaf destIp { + type address_Ip; + description "Destination IP"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // port number + leaf udpPort { - // Type is an MO-Defined-Type - type firmware_Type; + type comm_Port; + description "UDP Port"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + // interval + leaf interval { - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type vpc_KeepaliveInterval; + description "Interval"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // timeout + leaf timeout { - // Type is an MO-Defined-Type - type naming_Descr; + type vpc_KeepaliveTout; + description "Timeout"; } - } - grouping maint_UpgJob-group { - leaf grpPriKey { - config "false"; - type string; - } - leaf internalLabel { - config "false"; - type string; + // tos config type + leaf tosCfgType { + + type vpc_TosCfgType; + description "TOS Type"; } - // A scheduler keeps a list consisting only of nodes with upgrade - // in progress. This object is used by scheduler to keep track of nodes in installation. - // This object exists only on Controller. - container node-items { - list NodeInMaint-list { - config "false"; - key "nodeId"; + // tos byte + leaf tosByte { - // Added containment: Prefix=node - // Acquired From Package maint - uses maint_NodeInMaint-group; - } + type vpc_TosByte; + description "TOS Byte"; } - container upgjobfault-items { + // tos value + leaf tosValue { - // Added containment as a singleton: Prefix=upgjobfault - // Acquired From Package maint - uses maint_UpgJobFault-group; + type vpc_TosValue; + description "TOS Value"; } - } - grouping maint_UpgJobFault-group { - leaf faultDelegateKey { - config "false"; - type string; - } - } + // tos type + leaf tosType { - grouping firmware_FwStatusCont-group { + type vpc_TosType; + description "TOS Type"; + } - // Information about switch firmware running on a node - container running-items { + // precedence value + leaf precValue { - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_Running-group; + type vpc_PrecValue; + description "Precedence Value"; } - // Specification for maintenance policy enforcement status on a node. - // This object exists on every node where the policy is enforced. - container upgjob-items { + // precedence type + leaf precType { - // Added containment as a singleton: Prefix=upgjob - // Acquired From Package maint - uses maint_UpgJob-group; + type vpc_PrecType; + description "Precedence Type"; } - } - - grouping firmware_Running-group { - // PE version - // Type is an MO-Defined-Type - leaf peVer { - config "false"; - description "A property that indicates Policy Element Version"; + // flush timeout + leaf flushTout { - // Type is an MO-Defined-Type - type cap_Version; + type vpc_FlushTout; + description "Flush Timeout"; } - // Bios version - // Type is an MO-Defined-Type - leaf biosVer { + // operational state + leaf operSt { config "false"; - description "A property that indicates BIOS Version"; - // Type is an MO-Defined-Type - type cap_Version; - } - leaf biosTs { - config "false"; - type string; + type vpc_KeepaliveOperSt; + description "Operational State"; } - // Kickstart image file name - // Type is an MO-Defined-Type - leaf ksFile { + // send interface + leaf sendIf { config "false"; - description "A property that indicates kickstart file name"; - // Type is an MO-Defined-Type - type firmware_Name; + type nw_IfId; + description "Send Interface"; } - // System image file name - // Type is an MO-Defined-Type - leaf sysFile { + // recv interface + leaf recvIf { config "false"; - description "A property that indicates system file name"; - // Type is an MO-Defined-Type - type firmware_Name; + type nw_IfId; + description "Received Interface"; } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + // last send time + leaf sendTime { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type cap_Version; - } - leaf internalLabel { - config "false"; - type string; + type vpc_Time; + description "Last Send Time"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { + // last recv time + leaf recvTime { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type firmware_Type; + type vpc_Time; + description "Last Received Time"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { + // first recv time + leaf firstRecvTime { config "false"; - description "Mode"; - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type vpc_Time; + description "First Received Time"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name; + description "Name"; } - } - grouping firmware_CatFwStatusCont-group { - - // Specification for catalog policy enforcement status. - // This object exists on every node where the policy is enforced. - container catupgjob-items { + // Specify link used for peer communication + container peerlink-items { - // Added containment as a singleton: Prefix=catupgjob - // Acquired From Package maint - uses maint_CatUpgJob-group; + uses vpc_PeerLink-group; + description "Peer Link"; } } - grouping maint_CatUpgJob-group; - - grouping isis_Entity-group { + grouping vpc_PeerLink-group { + description "Peer Link"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // This objects hold per isis instance information. - container inst-items { - list Inst-list { - key "name"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=inst - // Acquired From Package isis - uses isis_Inst-group; - } + type nw_IfAdminSt; + description "Admin State"; } - // This object holds isis information that is operated at a - // interface level - container if-items { - list InternalIf-list { - config "false"; - key "id"; + container rtvrfMbr-items { - // Added containment: Prefix=if - // Acquired From Package isis - uses isis_InternalIf-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_Inst-group { + grouping xbar_LogLevel-group { + description "Config Xbar logging level"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Holds ISIS Instance Operational State"; + // logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type isis_OperSt; - } - leaf flushRoutes { - type boolean; - } - leaf isolate { - type boolean; + type xbar_LoggingLevel; + description "Logging Level"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // logging type + leaf loggingType { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type xbar_LoggingType; + description "Logging type"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping gold_Entity-group { + description "Gold Entity"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Diagnostic Bootup Level + leaf diagBootLevel { + + type gold_bootLevel; + description "Module Diagnostic Bootup Level"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Config for Gold + container config-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses gold_Config-group; + description "Gold Health monitoring configurations"; } - // This objects hold per isis domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Module + container module-items { + list Module-list { + key "id"; - // Added containment: Prefix=dom - // Acquired From Package isis - uses isis_Dom-group; + uses gold_Module-group; + description "Gold Module list"; } + description "Gold Module"; } } - grouping isis_Dom-group { + grouping gold_Config-group { + description "Gold Health monitoring configurations"; - // Type is an MO-Defined-Type - leaf net { - description "Holds ISIS Domain Net value"; + // Diagnostic monitor module all + leaf diagMonitorModuleAll { - // Type is an MO-Defined-Type - type isis_Net; + type gold_AdminSt; + description "Diagnostic Monitor Module All Diagnostic All"; } - // LSP MTU - // Type is an MO-Defined-Type - leaf mtu { - description "Holds ISIS Domain Maximum Transmission Unit"; + // Test name + leaf monitorTestName { - // Type is an MO-Defined-Type - type isis_Mtu; + type gold_Name; + description "GOLD Health Monitoring Specific Test on All Modules"; } - // Bandwidth Reference - // Type is an MO-Defined-Type - leaf bwRef { - description "Holds ISIS Domain Bandwidth Reference"; + // Test monitor + leaf monitorTestStatus { - // Type is an MO-Defined-Type - type isis_BwRef; + type gold_AdminSt; + description "Health Monitor All Modules Specific Test Status"; } - // Bandwidth Reference Unit - // Type is an MO-Defined-Type - leaf bwRefUnit { - description "Holds ISIS Domain Bandwidth Reference Unit (Mbps or Gbps)"; + // Module Configuration + container module-items { + list ModuleConfig-list { + key "modId"; - // Type is an MO-Defined-Type - type isis_BwRefUnit; + uses gold_ModuleConfig-group; + description " GOLD Module level health monitor configuration list"; + } + description " GOLD Module level health monitor configuration "; } + } - // Narrow/Wide Metric Style - // Type is an MO-Defined-Type - leaf metricStyle { - description "Holds ISIS Domain Metric Style"; + grouping gold_ModuleConfig-group { + description " GOLD Module level health monitor configuration "; - // Type is an MO-Defined-Type - type isis_MetricStyle; + // Module id + leaf modId { + + type gold_Id; + description "GOLD helath monitoring Module Id Property has READ-Create access."; } - // IS Type - // Type is an MO-Defined-Type - leaf isType { - description "Holds ISIS Domain IS[Level] Type"; + // Test monitor + leaf testMonitorAll { - // Type is an MO-Defined-Type - type isis_IsT; + type gold_AdminSt; + description "Health Monitor Module level Status"; } - // Max LSP Lifetime - // Type is an MO-Defined-Type - leaf lspLifetime { - description "Holds ISIS Domain LSP Lifetime"; + // Test Interval + leaf testModuleInterval { - // Type is an MO-Defined-Type - type isis_MaxLSPLife; + type gold_TestTime; + description "Health Monitor Test Module Interval"; } - // Shutdown VRF context in ISIS - // Type is an MO-Defined-Type - leaf adminSt { - description "Holds ISIS Domain Administative state"; + // Test monitor + container test-items { + list TestMonitor-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses gold_TestMonitor-group; + description "Test monitor status list"; + } + description "Test monitor status"; } + } - // Dom controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS Domain Control messages"; + grouping gold_TestMonitor-group { + description "Test monitor status"; - // Type is an MO-Defined-Type - type isis_DomControl; - } - leaf authCheckLvl1 { - type boolean; - default "true"; + // Test id + leaf id { + + type gold_Id; + description "GOLD Health Monitoring Test Id Property has READ-Create access."; } - leaf authCheckLvl2 { - type boolean; - default "true"; + + // Test name + leaf monitorTestName { + + type gold_Name; + description "GOLD Health Monitoring Test Name"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Test monitor + leaf monitorStatus { - // Type is an MO-Defined-Type - type isis_OperSt; + type gold_AdminSt; + description "Health Monitor Status"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Test Interval + leaf testInterval { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_TestTime; + description "Health Monitor Test Interval"; } + } - // ISIS databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping gold_Module-group { + description "Gold Module"; - // Added containment: Prefix=db - // Acquired From Package isis - uses isis_Db-group; - } + // Module id + leaf id { + + type gold_Id; + description "Module Id Property has READ-Create access."; } - // This object holds overload information - container overload-items { + // Module name + leaf description { + config "false"; - // Added containment as a singleton: Prefix=overload - // Acquired From Package isis - uses isis_Overload-group; + type gold_Name; + description "Module Description"; } - // This object holds per level isis vrf information - container lvl-items { - list DomLvl-list { - config "false"; - key "type"; + // Module Diag Status + leaf diagStatus { + config "false"; - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_DomLvl-group; - } + type gold_moduleDiagStatus; + description "Module Diagnostic Status"; } - // Fabric multicast (ftag) tree element - container fmtree-items { - list FmcastTree-list { - config "false"; + // Test + container test-items { + list Test-list { key "id"; - // Added containment: Prefix=fmtree - // Acquired From Package isis - uses isis_FmcastTree-group; + uses gold_Test-group; + description "Test case list"; } + description "Test case"; } + } - // This objects hold per graceful restart information - container gr-items { - - // Added containment as a singleton: Prefix=gr - // Acquired From Package isis - uses isis_Gr-group; - } + grouping gold_Test-group { + description "Test case"; - // This object holds ospf information that is operated at an - // interface level - container if-items { - list If-list { - key "id"; + // Test id + leaf id { - // Added containment: Prefix=if - // Acquired From Package isis - uses isis_If-group; - } + type gold_Id; + description "Test Id"; } - // This objects holds default route leak policy - container defrtleak-items { + // Test name + leaf monitorTestName { + config "false"; - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package isis - uses isis_DefRtLeakP-group; + type gold_Name; + description "Monitor Test Id to Test Name Mapping"; } - // Inter protocol route leak policy. This defines distribution - // of routes from other protocols to isis - container interleak-items { - list InterLeakP-list { - config "false"; - key "proto inst asn"; + // Test status + container teststatus-items { - // Added containment: Prefix=interleak - // Acquired From Package isis - uses isis_InterLeakP-group; - } + uses gold_TestStatus-group; + description "Test running status"; } } - grouping isis_Db-group { + grouping gold_TestStatus-group { + description "Test running status"; - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Test name + leaf name { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type isis_DbT; + type gold_Name; + description "Test Name"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Test first fail time + leaf firstFailTime { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_TestTime; + description "Test First Failure Time"; } - // Database of fabric multicast group elements - container grp-items { - list GrpRec-list { - config "false"; - key "addr"; + // Test last fail time + leaf lastFailTime { + config "false"; - // Added containment: Prefix=grp - // Acquired From Package isis - uses isis_GrpRec-group; - } + type gold_TestTime; + description "Test Last Failure Time"; } - // Node records - container node-items { - list NodeRec-list { - config "false"; - key "sysId"; + // Test last execution time + leaf lastExecutionTime { + config "false"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeRec-group; - } + type gold_TestTime; + description "Test Last Execution Time"; } - // LSP records - container lsp-items { - list LspRec-list { - config "false"; - key "sysId lanId frag"; + // Test last pass time + leaf lastPassTime { + config "false"; - // Added containment: Prefix=lsp - // Acquired From Package isis - uses isis_LspRec-group; - } + type gold_TestTime; + description "Test Last Pass Time"; } - // This object holds the isis nexthop information - container nh-items { - list Nexthop-list { - config "false"; - key "nhIf addr"; + // Test next execution time + leaf nextExecutionTime { + config "false"; - // Added containment: Prefix=nh - // Acquired From Package isis - uses isis_Nexthop-group; - } + type gold_TestTime; + description "Test Next Execution Time"; } - // This object holds the isis route information - container rt-items { - list Route-list { - config "false"; - key "pfx"; + // Test result + leaf result { + config "false"; - // Added containment: Prefix=rt - // Acquired From Package isis - uses isis_Route-group; - } + type gold_Result; + description "Test Result"; } - // Tunnel endpoints discovered through isis - container dtep-items { - list DTEp-list { - config "false"; - key "id"; + // Test failure reason + leaf resultReason { + config "false"; - // Added containment: Prefix=dtep - // Acquired From Package isis - uses isis_DTEp-group; - } + type gold_TestFailReason; + description "Test Failure Reason"; } - } - - grouping isis_GrpRec-group { - - // Group address - // Type is an MO-Defined-Type - leaf addr { + leaf runCount { config "false"; - description "Address"; + type uint32; + description "Test Run Count"; + } + leaf failCount { + config "false"; + type uint32; + description "Test Fail Count"; + } + leaf consecutiveFailCount { + config "false"; + type uint32; + description "Test Consecutive Fail Count"; + } - // Type is an MO-Defined-Type - type mcast_GrpIp; + // Aborted Ports + leaf portsAborted { + config "false"; + + type gold_PortList; + description "List of Aborted Ports"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Error Disabled Ports + leaf portsErrorDisabled { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_PortList; + description "List of Error Disabled Ports"; } - // Per FTAG OIF List Record - container ftagoif-items { - list FtagOifRec-list { - config "false"; - key "id"; + // Failed Ports + leaf portsFailing { + config "false"; - // Added containment: Prefix=ftagoif - // Acquired From Package isis - uses isis_FtagOifRec-group; - } + type gold_PortList; + description "List of Failing Ports"; } - // BD records active for this multicast group element - container bd-items { - list BdIdRec-list { - config "false"; - key "encap"; + // Incomplete Ports + leaf portsIncomplete { + config "false"; - // Added containment: Prefix=bd - // Acquired From Package isis - uses isis_BdIdRec-group; - } + type gold_PortList; + description "List of Incomplete Ports"; } - // Fabric nodes active for this multicast group element - container node-items { - list NodeIdRec-list { - config "false"; - key "addr"; + // Passed Ports + leaf portsPassing { + config "false"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeIdRec-group; - } + type gold_PortList; + description "List of Passing Ports"; } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; + // Untested Ports + leaf portsUntested { + config "false"; - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + type gold_PortList; + description "List of Untested Ports"; + } + leaf testAttributes { + config "false"; + type string; + description "Test Attributes"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // Test Interval + leaf testInterval { + config "false"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; - } + type gold_TestTime; + description "Runtime Health Monitor Test Interval"; } - } - grouping isis_FtagOifRec-group { + // lowest allowed Test Interval + leaf lowestAllowedTestInterval { + config "false"; - // Ftag ID - // Type is an MO-Defined-Type - leaf id { + type gold_TestTime; + description "Lowest Allowed Test Interval in Seconds"; + } + + // Test Interval + leaf runtimeMonitorStatus { config "false"; - description "Ftag ID"; - // Type is an MO-Defined-Type - type fmcast_Id; + type gold_AdminSt; + description "Runtime Health Monitor Test monitor status"; } + } + + grouping igmp_Entity-group { + description "IGMP Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + type nw_AdminSt; + description "Admin State"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; - } + type nw_EntOperSt; + description "Operational State"; } - } - grouping isis_OifListLeaf-group { + // This objects hold per igmp instance information. There is only + // one instance of igmp running in the system today + container inst-items { - // Index - // Type is an MO-Defined-Type - leaf idx { - config "false"; - description "Index"; + uses igmp_Inst-group; + description "IGMP Instance"; + } + } - // Type is an MO-Defined-Type - type fmcast_Id; + grouping igmp_Inst-group { + description "IGMP Instance"; + leaf heavyTemplate { + type boolean; + description "Enabling/Disabling IGMP Heavy Template"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - } - grouping isis_OifListSpine-group { + // Administrative state + leaf adminSt { - // Index - // Type is an MO-Defined-Type - leaf idx { - config "false"; - description "Index"; + type nw_AdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type fmcast_Id; + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Control + leaf instCtrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_InstCtrl; + description "Inst Controls"; } - } - grouping isis_BdIdRec-group { - leaf encap { - config "false"; - type string; + // Bootup route add delay to RIB + leaf bootupDelay { + + type ipmc_BootupDelay; + description "Bootup Route Add Delay"; + } + leaf flushRoute { + type boolean; + description "Flush Routes on Restart"; + } + leaf rtrAlert { + type boolean; + description "Enforce Router Alert"; + } + leaf anyQueryDest { + type boolean; + description "Allow any destination-IP for General Queries "; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // syslog-Threshold + leaf syslogThreshold { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_SyslogThresT; + description "IGMP table syslog threshold percentage"; + } + leaf spoofCheck { + type boolean; + description "Enable spoof check for IGMP"; + } + leaf strictQuerElect { + type boolean; + description "Consider subnet check for L3 igmp querier election"; } - } - grouping isis_NodeIdRec-group { - leaf addr { - config "false"; - type address_Ip; + // This objects hold per igmp external domain information + container extdom-items { + list ExtDom-list { + key "id"; + + uses igmp_ExtDom-group; + description "This object holds IGMP external domain information list"; + } + description "This object holds IGMP external domain information"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This objects hold per igmp domain information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses igmp_Dom-group; + description "This object holds IGMP domain information list"; } + description "This object holds IGMP domain information"; + } + + container loglevel-items { + + uses igmp_LogLevel-group; + description "Configure logging level"; + } + + // IGMP database for show commands - needs to be ephemeral + // Ephemeral data + container routedb-items { + + uses igmp_RouteDb-group; + description "IGMP database for show commands"; } } - grouping isis_NodeRec-group { - leaf addr { - config "false"; - type address_Ip; + grouping igmp_ExtDom-group { + description "This object holds IGMP external domain information"; + + // Id for this domain @@@ This comes from the Network id assigned by the + // PE for the external domain + leaf id { + + type top_RemoteNetworkId; + description "Domain Identifier"; } - leaf sysId { - config "false"; - type address_Mac; + + // Igmp Version + leaf ver { + + type mcast_Ver; + description "IGMP Version"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Multicast groups identifier record - container grp-items { - list GrpIdRec-list { - config "false"; - key "addr"; + // This objects hold per igmp external interface information + container extif-items { + list ExtIf-list { + key "id"; - // Added containment: Prefix=grp - // Acquired From Package isis - uses isis_GrpIdRec-group; + uses igmp_ExtIf-group; + description "This object holds IGMP external interface information list"; } + description "This object holds IGMP external interface information"; } } - grouping isis_GrpIdRec-group { - - // Group address - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; - } + grouping igmp_ExtIf-group { + description "This object holds IGMP external interface information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping isis_LspRec-group { - leaf sysId { - config "false"; - type address_Mac; + leaf descr { + + type naming_Descr1024; + description "Description"; } - // LAN id - // Type is an MO-Defined-Type - leaf lanId { - config "false"; - description "LAN ID"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type isis_LanId; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Fragment number - // Type is an MO-Defined-Type - leaf frag { - config "false"; - description "Fragment Number"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type isis_FragNum; + type nw_IfAdminSt; + description "Admin State"; } - // Level type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Level Type"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type isis_LvlT; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } + + grouping igmp_Dom-group { + description "This object holds IGMP domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Extended IS Record - container extisrec-items { - list ExtIsRec-list { + // IGMP databases + container db-items { + list Db-list { config "false"; - key "name"; + key "type"; - // Added containment: Prefix=extisrec - // Acquired From Package isis - uses isis_ExtIsRec-group; + uses igmp_Db-group; + description "IGMP Database list"; } + description "IGMP Database"; } - - // Generic TLV Record - container tlvRec-items { - list TlvRec-list { - config "false"; + container eventHist-items { + list EventHistory-list { key "type"; - // Added containment: Prefix=tlvRec - // Acquired From Package isis - uses isis_TlvRec-group; + uses igmp_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; } + description "This object holds configuration details of event-history buffers"; } - // IP Prefix record - container iprec-items { - list IpRec-list { - config "false"; - key "pfx"; + // This objects hold per igmp interface information + container if-items { + list If-list { + key "id"; - // Added containment: Prefix=iprec - // Acquired From Package isis - uses isis_IpRec-group; + uses igmp_If-group; + description "This object holds per IGMP interface information list"; } + description "This object holds per IGMP interface information"; } - } - - grouping isis_ExtIsRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This objects hold per igmp external interface information that supports mvr configs + container mvrif-items { + list MvrIf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses igmp_MvrIf-group; + description "This objects hold per igmp external interface information that supports mvr configs list"; } + description "This objects hold per igmp external interface information that supports mvr configs"; } - } - grouping isis_TlvRec-group { + // This objects holds multicast vlan registartion state + container mvr-items { - // TLV Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TLV"; + uses igmp_Mvr-group; + description "This objects holds multicast vlan registartion state"; + } - // Type is an MO-Defined-Type - type isis_TlvType; + // This objects hold per igmp domain information + container ssmxlate-items { + list SSMXlate-list { + key "srcAddr grpPfx"; + + uses igmp_SSMXlate-group; + description "Holds Source Specific Multicast (SSM) translation information list"; + } + description "Holds Source Specific Multicast (SSM) translation information"; } + } - // TLV Value - // Type is an MO-Defined-Type - leaf value { + grouping igmp_Db-group { + description "IGMP Database"; + + // Type of the repository + leaf type { config "false"; - description "Value"; - // Type is an MO-Defined-Type - type isis_TlvVal; + type igmp_DbT; + description "Database type for different show commands"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; + } + + // IGMP Group/Src MOs + container src-items { + list Route-list { + config "false"; + key "src grp"; + + uses igmp_Route-group; + description "Holds IGMP Route Information list"; + } + description "Holds IGMP Route Information"; } } - grouping isis_IpRec-group { - leaf pfx { + grouping igmp_Route-group { + description "Holds IGMP Route Information"; + leaf src { config "false"; type address_Ip; + description "Source Address"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf grp { config "false"; - description "Name"; + type address_Ip; + description "Group Address"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // IGMP Oif MOs. We create one object per interface in the oif list + container oif-items { + list Oif-list { + config "false"; + key "oif"; + + uses igmp_Oif-group; + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces. list"; } + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces."; } } - grouping isis_Nexthop-group { - - // Nexhop interface [Deprecated] - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface (IOD Internal)"; - - // Type is an MO-Defined-Type - type nw_Iod; - } + grouping igmp_Oif-group { + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces."; - // Nexhop interface - // Type is an MO-Defined-Type - leaf nhIf { + leaf oif { config "false"; - description "Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Outgoing interface"; } - leaf addr { + leaf expiryTs { config "false"; - type address_Ip; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf createTs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "Create Timestamp"; } - } - - grouping isis_Route-group { - leaf pfx { + leaf lastRep { config "false"; type address_Ip; + description "Last reporter info"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf type { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_RouteFlags; + description "Join type"; } + } - // Rel-def from NhAtt - container rsnhAtt-items { + grouping igmp_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Abstract containment of rsnhAtt derived from isis:Route - list RsNhAtt-list { - key "tDn"; + leaf type { - // Added containment: Prefix=rsnhAtt - // Acquired From Package isis - uses isis_RsNhAtt_source-group; - } + type igmp_EhType; + description "Configures type of event history"; + } + + leaf size { + + type igmp_Size; + description "Configures buffer size in text per kb"; } } - grouping isis_DTEp-group { + grouping igmp_If-group { + description "This object holds per IGMP interface information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Endpoint identifier - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf descr { - // Type is an MO-Defined-Type - type tunnel_EpId; + type naming_Descr1024; + description "Description"; } - // Endpoint encapsulation type - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf encapt { - config "false"; - description "Encapsulation Type"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type tunnel_EncapT; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Endpoint type - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type tunnel_EpT; + type nw_IfAdminSt; + description "Admin State"; } - // Role of the remote endpoint - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf role { - config "false"; - description "Role"; + // Interface Control + leaf ifCtrl { - // Type is an MO-Defined-Type - type top_NodeRole; + type ipmc_IfCtrl; + description "Controls"; } - } - grouping isis_Overload-group { + // Interface version + leaf ver { - // Adminstrative state - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type isis_OverloadAdminSt; - } - - // On at startup till the following duration - // Type is an MO-Defined-Type - leaf startupTime { - description "Startup Time"; - - // Type is an MO-Defined-Type - type isis_StartupTime; - } - leaf bgpAsNum { - type uint16; + type mcast_Ver; + description "Version"; } - // Suppress information - // Type is an MO-Defined-Type - leaf suppress { - description "Suppress Internal/External"; + // Group Timeout + leaf grpTimeout { - // Type is an MO-Defined-Type - type isis_SuppressControl; + type ipmc_GrpTimeout; + description "Group Membership Timeout"; } - } - - grouping isis_DomLvl-group { - - // Per level controls - // Type is an MO-Defined-Type - leaf ctrl { + leaf actQuer { config "false"; - description "Controls"; - - // Type is an MO-Defined-Type - type isis_DomLvlControl; + type address_Ip; + description "IGMP active querier IP"; } - - // ISIS DOM Authentication Type for Level-1 - // Type is an MO-Defined-Type - leaf authTypeLvl1 { + leaf nextQuerTime { config "false"; - description "Holds ISIS DOM Authentication-Type for Level-1"; - - // Type is an MO-Defined-Type - type isis_AuthT; + type union { + type string; + type uint64; + } + description "IGMP next query time"; } - // ISIS DOM Authentication Type for Level-2 - // Type is an MO-Defined-Type - leaf authTypeLvl2 { + // Flags + leaf flags { config "false"; - description "Holds ISIS DOM Authentication-Type for Level-2"; - // Type is an MO-Defined-Type - type isis_AuthT; + type ipmc_IfFlags; + description "Flags"; } - - // ISIS DOM Authentication Key for Level-1 - // Type is an MO-Defined-Type - leaf authKeyLvl1 { - config "false"; - description "Holds Authentication Key for ISIS DOM on Level-1"; - - // Type is an MO-Defined-Type - type isis_AuthKeyN; + leaf entryCount { + type uint32; + description "Dynamic entry count"; } - - // ISIS DOM Authentication Key for Level-2 - // Type is an MO-Defined-Type - leaf authKeyLvl2 { + leaf stEntryCount { + type uint32; + description "Static Entry count"; + } + leaf querExpiry { config "false"; - description "Holds Authentication Key for ISIS DOM on Level-2"; - - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type union { + type string; + type uint64; + } + description "Querier expiry time"; + } + leaf reportLl { + type boolean; + description "Report link local"; + } + leaf immediateLeave { + type boolean; + description "Fast leave"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Allow v3 ASM + leaf allowv3Asm { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_Allowv3AsmType; + description "Allow v3 ASM"; + } + leaf suppressv3Gsq { + type boolean; + description "Suppress v3 GSQ"; } - // Type - // Inherited From isis:Lvl - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // IGMP Interface Stats Oper MO + container IfStats-items { - // Type is an MO-Defined-Type - type isis_LvlT; + uses igmp_IfStats-group; + description "Holds IGMP interface statistics"; } - // ISIS databases - container db-items { - list Db-list { - config "false"; + // This objects hold IP Multicast Group JoinType information + container jointype-items { + list JoinType-list { key "type"; - // Added containment: Prefix=db - // Acquired From Package isis - uses isis_Db-group; + uses igmp_JoinType-group; + description "This Object Holds IP Multicast Group JoinType Information list"; } + description "This Object Holds IP Multicast Group JoinType Information"; } - // This object holds lsp generation interval controls - container lspgen-items { + // This object holds resource (router state) limit policy + // to limit amount of multicast routing state on the router + container limit-items { - // Added containment as a singleton: Prefix=lspgen - // Acquired From Package isis - uses isis_LspGen-group; + uses igmp_ResP-group; + description "Holds Resource policy to limit amount of multicast routing state on the router"; } - // This object holds spf computation frequency controls - container spfcomp-items { + // This object holds igmp reports policy state per Interface + container reppol-items { - // Added containment as a singleton: Prefix=spfcomp - // Acquired From Package isis - uses isis_SpfComp-group; + uses igmp_RepP-group; + description "This object holds igmp reports policy state per Interface"; } - } - - grouping isis_LspGen-group { - // Initial wait interval - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Wait Interval"; + // This object holds static igmp reports policy state per Interface + container streppol-items { + list StRepP-list { + key "joinType"; - // Type is an MO-Defined-Type - type isis_LspGenInitIntvl; + uses igmp_StRepP-group; + description "Holds Static IGMP report policy list"; + } + description "Holds Static IGMP report policy"; } - // Second wait interval - // Type is an MO-Defined-Type - leaf secIntvl { - description "Second Wait Interval"; + // This object holds querier information per interface + container querierp-items { - // Type is an MO-Defined-Type - type isis_LspGenSecIntvl; + uses igmp_QuerierP-group; + description "Holds IGMP querier information"; } - // Maximum wait interval - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Wait Interval"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type isis_LspGenMaxIntvl; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_SpfComp-group { - - // Initial wait inerval - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompInitIntvl; + grouping igmp_IfStats-group { + description "Holds IGMP interface statistics"; + leaf v2querSent { + config "false"; + type uint32; + description "Number of IGMP v2 queries sent"; } - - // Second wait interval - // Type is an MO-Defined-Type - leaf secIntvl { - description "Second Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompSecIntvl; + leaf v2querRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 queries received"; } - - // Maximum wait interval - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompMaxIntvl; + leaf v3querSent { + config "false"; + type uint32; + description "Number of IGMP v3 queries sent"; + } + leaf v3querRcvd { + config "false"; + type uint32; + description "Number of IGMP v3 queries received"; + } + leaf v2rprtSent { + config "false"; + type uint32; + description "Number of IGMP v2 reports sent"; + } + leaf v2rprtRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 reports received"; + } + leaf v3rprtSent { + config "false"; + type uint32; + description "Number of IGMP v3 reports sent"; + } + leaf v3rprtRcvd { + config "false"; + type uint32; + description "Number of IGMP v3 reports received"; + } + leaf v2leaveSent { + config "false"; + type uint32; + description "Number of IGMP v2 leave sent"; + } + leaf v2leaveRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 leave received"; } } - grouping isis_FmcastTree-group { + grouping igmp_JoinType-group { + description "This Object Holds IP Multicast Group JoinType Information"; - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Tree ID"; + // Join Type of the groups + leaf type { - // Type is an MO-Defined-Type - type fmcast_Id; + type ipmc_JoinType; + description "Join Type of the Groups. Supported Types Include Static or Join."; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This objects hold IP Multicast Group version information + container ver-items { + list Version-list { + key "version"; - // Type is an MO-Defined-Type - type fmcast_OperSt; + uses igmp_Version-group; + description "This Object Holds IP Multicast Group Version Information list"; + } + description "This Object Holds IP Multicast Group Version Information"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping igmp_Version-group { + description "This Object Holds IP Multicast Group Version Information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // IGMP version + leaf version { + + type ipmc_Ver; + description "IGMP Group Version"; } - // Fabric nodes active for this multicast group element - container node-items { - list NodeIdRec-list { - config "false"; - key "addr"; + // This object holds igmp group configuration per Interface + container group-items { + list Group-list { + key "grp"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeIdRec-group; + uses igmp_Group-group; + description "IGMP Group Information per Interface list"; } + description "IGMP Group Information per Interface"; } + } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; - - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + grouping igmp_Group-group { + description "IGMP Group Information per Interface"; + leaf grp { + type address_Ip; + description "Route IP Address for Choosing Groups"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interace is Being Used"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // This object holds static igmp source per group + container source-items { + list Source-list { + key "src"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; + uses igmp_Source-group; + description "This Object Holds Static IGMP Source per Group list"; } + description "This Object Holds Static IGMP Source per Group"; } } - grouping isis_Gr-group { + grouping igmp_Source-group { + description "This Object Holds Static IGMP Source per Group"; + leaf src { + type address_Ip; + description "IGMP Source IP Address"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is being used"; + } + } - // Graceful Restart - // Type is an MO-Defined-Type - leaf adminSt { + grouping igmp_ResP-group { + description "Holds Resource policy to limit amount of multicast routing state on the router"; + + // Reserved entry Limit Status + leaf rsvdEntries { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type igmp_LimitSt; + description "Reserved entries availability status"; } - // T3 timer for graceful restart - // Type is an MO-Defined-Type - leaf grT3Intvl { + // Regular entry Limit Status + leaf regEntries { config "false"; - description "T3 Interval"; - // Type is an MO-Defined-Type - type isis_GrT3Intvl; + type igmp_LimitSt; + description "Regular entries availability status"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf availRsvdEntries { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint32; + description "Availble reserved entries"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + leaf availRegEntries { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint32; + description "Available regular entries"; } - } - grouping isis_If-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Maximum Multicast Entries + leaf max { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_NumEntries; + description "Maximum Multicast Entries"; } - // Circuit type - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf cktT { - description "Holds ISIS interface Circuit Type"; + // Reserved Multicast Entries + leaf rsvd { - // Type is an MO-Defined-Type - type isis_IsT; + type mcast_NumEntries; + description "Reserved Multicast Entries"; } - - // Metric (deprecated) - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf metric { - description "Holds ISIS interface Metric"; - - // Type is an MO-Defined-Type - type isis_Metric; + leaf rtMap { + type string; + description "Reserved Entries Route Map"; } + } - // Interface controls - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS interface Control messages"; - - // Type is an MO-Defined-Type - type isis_IfControl; + grouping igmp_RepP-group { + description "This object holds igmp reports policy state per Interface"; + leaf rtMap { + type string; + description "Route Map"; } - leaf v4enable { - type boolean; - default "true"; + leaf pfxList { + type string; + description "Prefix List"; } - leaf v6enable { + leaf useAccessGrpCommand { type boolean; - default "true"; + description "Flag to use access-group"; } - leaf authCheckLvl1 { - type boolean; - default "true"; + } + + grouping igmp_StRepP-group { + description "Holds Static IGMP report policy"; + leaf rtMap { + type string; + description "Route Map"; } - leaf authCheckLvl2 { - type boolean; - default "true"; + leaf pfxList { + type string; + description "Prefix List"; } - leaf authCheck { + leaf useAccessGrpCommand { type boolean; - default "true"; + description "Flag to use access-group"; } - leaf networkTypeP2P { - type boolean; - default "true"; + + // Join Type of the groups + leaf joinType { + + type ipmc_JoinType; + description "Join Type of Groups"; } + } - // LSP refresh Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf lspRefreshIntvl { - description "Holds ISIS Interface LSP Refresh Interval"; + grouping igmp_QuerierP-group { + description "Holds IGMP querier information"; - // Type is an MO-Defined-Type - type isis_LspRefreshIntvl; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // LSP Retransmit Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransInterval { - description "Holds ISIS Interface Retransmit Interval"; + leaf descr { - // Type is an MO-Defined-Type - type isis_RetransInterval; + type naming_Descr; + description "Description of the specified attribute"; } - // LSP Retransmit Throttle Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransThrottleInterval { - description "Holds ISIS Interface Retransmit Throttle Interval"; + // Querier version + leaf ver { - // Type is an MO-Defined-Type - type isis_RetransThrottleInterval; + type mcast_Ver; + description "Version"; } - // Passive-interface Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf passive { - description "Holds ISIS Passive Interface Info"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type isis_PassiveIntfT; + type mcast_QuerierIp; + description "Address"; } - // Interface Hello padding Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf helloPad { - description "Holds ISIS Interface Hello Padding Info"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type isis_HelloPadT; + type mcast_QueryIntvl; + description "Query Interval"; } - // This object holds isis neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "type sysId"; + // Query response interval + leaf rspIntvl { - // Added containment: Prefix=adj - // Acquired From Package isis - uses isis_AdjEp-group; + type mcast_QueryRspIntvl { + range "1..25"; } + description "Response Interval of Querier"; } - // This object holds mesh group information per interface - container meshgrp-items { - list MeshGrp-list { - key "id"; + // Robustness factor + leaf robustFac { - // Added containment: Prefix=meshgrp - // Acquired From Package isis - uses isis_MeshGrp-group; - } + type mcast_RobustFactor; + description "Robustness Factor"; } - // This object holds per level isis interface information - container lvl-items { - list IfLvl-list { - key "type"; + // Startup query interval + leaf startQueryIntvl { - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_IfLvl-group; - } + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // This object holds per IF States information - container traffic-items { + // Startup query count + leaf startQueryCnt { - // Added containment as a singleton: Prefix=traffic - // Acquired From Package isis - uses isis_IfTraffic-group; + type mcast_QueryCnt; + description "Startup Query Count"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - container rtvrfMbr-items { + // Querier timeout + leaf querierTimeout { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mcast_QuerierTimeout; + description "Querier Timeout"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Last member query count + leaf lastMbrCnt { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mcast_LastMbrQueryCnt; + description "Last Member Query Count"; } - } - grouping isis_AdjEp-group { + // Last member response time + leaf lastMbrRespTime { - // Adjacency type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Level Type"; + type mcast_LastMbrRespTime; + description "Last Member Response Time"; + } + } - // Type is an MO-Defined-Type - type isis_LvlT; + grouping igmp_MvrIf-group { + description "This objects hold per igmp external interface information that supports mvr configs"; + leaf mvrRcvr { + type boolean; + description "Enable/disable MVR Receiver Port"; } - leaf sysId { - config "false"; - type address_Mac; + leaf mvrSrc { + type boolean; + description "Enable/disable MVR Source Port"; } - // Operational state of the adjacency - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_AdjOperSt; + type igmp_VlanIdT; + description "Interface default multicast vlan configuration"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - container addr-items { - list PeerIpAddr-list { - config "false"; - key "addr"; - // Added containment: Prefix=addr - // Acquired From Package isis - uses isis_PeerIpAddr-group; - } - } - } + leaf descr { - grouping isis_PeerIpAddr-group { - leaf addr { - config "false"; - type address_Ip; + type naming_Descr1024; + description "Description"; } - } - grouping isis_MeshGrp-group { - - // Mesh Group Id - // Type is an MO-Defined-Type + // Interface ID of this endpoint leaf id { - description "Holds ISIS Mesh Group ID per Interface"; - - // Type is an MO-Defined-Type - type isis_MeshGrpId; - } - // Mesh group controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS Mesh Group Control Info per Interface"; - - // Type is an MO-Defined-Type - type isis_MeshGrpControl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This objects holds multicast vlan registartion group information + container mvrgrp-items { + list MvrGrp-list { + key "ip"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses igmp_MvrGrp-group; + description "This objects holds multicast vlan registartion group information list"; } + description "This objects holds multicast vlan registartion group information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_IfLvl-group { - - // ISIS Priority for Level-1 - // Type is an MO-Defined-Type - leaf priorityLvl1 { - description "Holds ISIS Interface Level-1 Circuit Priority"; - - // Type is an MO-Defined-Type - type isis_CktPrio; + grouping igmp_MvrGrp-group { + description "This objects holds multicast vlan registartion group information"; + leaf ip { + type address_Ip; + description "Multicast Group IP Address"; } - // ISIS Priority for Level-2 - // Type is an MO-Defined-Type - leaf priorityLvl2 { - description "Holds ISIS Interface Level-2 Circuit Priority"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_CktPrio; + type igmp_VlanIdT; + description "Global default MVR vlan identifier"; } - - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Holds Interface Hello Interval value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; + leaf ipMask { + type address_Ip; + description "IP network mask in format m.m.m.m"; } - - // ISIS Hello Interval for Level-1 - // Type is an MO-Defined-Type - leaf helloIntvlLvl1 { - description "Holds ISIS interface Hello Interval Level-1 value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; + leaf count { + type uint32; + description "Number of contiguous groups"; } + } - // ISIS Hello Interval for Level-2 - // Type is an MO-Defined-Type - leaf helloIntvlLvl2 { - description "Holds ISIS interface Hello Interval Level-2 value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; - } + grouping igmp_Mvr-group { + description "This objects holds multicast vlan registartion state"; - // Hello Multiplier - // Type is an MO-Defined-Type - leaf helloMult { - description "Holds Interface Hello Multiplier value"; + leaf adminSt { - // Type is an MO-Defined-Type - type isis_HelloMult; + type nw_AdminSt; + description "Enable/disable multicast vlan registration capability"; } - // ISIS Hello Multiplier for Level-1 - // Type is an MO-Defined-Type - leaf helloMultLvl1 { - description "Holds ISIS interface Hello Multiplier Level-1 value"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_HelloMult; + type igmp_VlanIdT; + description "Global default MVR vlan identifier"; } - // ISIS Hello Multiplier for Level-2 - // Type is an MO-Defined-Type - leaf helloMultLvl2 { - description "Holds ISIS interface Hello Multiplier Level-2 value"; + leaf suppressQuery { - // Type is an MO-Defined-Type - type isis_HelloMult; + type l2_VlanBitmap; + description "Suppress IGMP General query forwarding from vlans"; } - // ISIS CSNP Interval for Level-1 - // Type is an MO-Defined-Type - leaf csnpIntvlLvl1 { - description "Holds ISIS Interface Level-1 CSNP Interval"; + // This objects holds multicast vlan registartion group information + container mvrgrp-items { + list MvrGrp-list { + key "ip"; - // Type is an MO-Defined-Type - type isis_CsnpIntvl; + uses igmp_MvrGrp-group; + description "This objects holds multicast vlan registartion group information list"; + } + description "This objects holds multicast vlan registartion group information"; } + } - // ISIS Wide Metric MT0[IPV4] topology for Level-1 - // Type is an MO-Defined-Type - leaf mt0MetricLvl1 { - description "Holds ISIS interface IPV4 wide metric value for Level-1"; - - // Type is an MO-Defined-Type - type isis_WideMetric; - } + grouping igmp_SSMXlate-group { + description "Holds Source Specific Multicast (SSM) translation information"; - // ISIS Wide Metric MT0[IPV4] topology for Level-2 - // Type is an MO-Defined-Type - leaf mt0MetricLvl2 { - description "Holds ISIS interface IPV4 wide metric value for Level-2"; + // Group IP Prefix address + leaf grpPfx { - // Type is an MO-Defined-Type - type isis_WideMetric; + type mcast_GrpIp; + description "Address"; } - - // ISIS Wide Metric MT2[IPV6] topology for Level-1 - // Type is an MO-Defined-Type - leaf mt2MetricLvl1 { - description "Holds ISIS interface IPV6 wide metric value for Level-1"; - - // Type is an MO-Defined-Type - type isis_WideMetric; + leaf srcAddr { + type address_Ip; + description "Address"; } + } - // ISIS Wide Metric MT2[IPV6] topology for Level-2 - // Type is an MO-Defined-Type - leaf mt2MetricLvl2 { - description "Holds ISIS interface IPV6 wide metric value for Level-2"; - - // Type is an MO-Defined-Type - type isis_WideMetric; - } + grouping igmp_LogLevel-group { + description "Configure logging level"; - // Type is an MO-Defined-Type - leaf authType { - description "Holds Authentication Type value for ISIS Interface"; + leaf type { - // Type is an MO-Defined-Type - type isis_AuthT; + type igmp_LogType; + description "Configures logging type"; } - // Authentication Type for Level-1 - // Type is an MO-Defined-Type - leaf authTypeLvl1 { - description "Holds ISIS Level-1 Authentication Type value for Interface"; + leaf level { - // Type is an MO-Defined-Type - type isis_AuthT; + type igmp_LvlType; + description "Configures log level"; } + } - // Authentication Type for Level-2 - // Type is an MO-Defined-Type - leaf authTypeLvl2 { - description "Holds ISIS Level-2 Authentication Type value for Interface"; - - // Type is an MO-Defined-Type - type isis_AuthT; - } + grouping igmp_RouteDb-group { + description "IGMP database for show commands"; - // Authentication Key for ISIS Interface - // Type is an MO-Defined-Type - leaf authKey { - description "Holds Authentication Key for ISIS Interface"; + // Ephemeral data + leaf name { + config "false"; - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Authentication Key for ISIS Interface on Level-1 - // Type is an MO-Defined-Type - leaf authKeyLvl1 { - description "Holds Authentication Key for ISIS Interface on Level-1"; + // Type of the repository + // Ephemeral data + leaf type { + config "false"; - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type rtdmc_DbT; + description "Type"; } - // Authentication Key for ISIS Interface on Level-2 - // Type is an MO-Defined-Type - leaf authKeyLvl2 { - description "Holds Authentication Key for ISIS Interface on Level-2"; + // This objects hold per igmp domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type isis_AuthKeyN; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses igmp_Vrf-group; + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information list"; + } + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information"; } + } + + grouping igmp_Vrf-group { + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type + // Vrf name + // Ephemeral data leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "Virtual Routing and Forwarding Name"; } - // Type - // Inherited From isis:Lvl - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // This object holds igmp route group information + // Ephemeral data + container group-items { - // Type is an MO-Defined-Type - type isis_LvlT; + // Ephemeral data + list RouteGroup-list { + config "false"; + key "grpAddr"; + + uses igmp_RouteGroup-group; + description "This Object holds IGMP Route Group Information list"; + } + description "This Object holds IGMP Route Group Information"; } } - grouping isis_IfTraffic-group; - - grouping isis_DefRtLeakP-group { + grouping igmp_RouteGroup-group { + description "This Object holds IGMP Route Group Information"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf grpAddr { config "false"; - description "Name"; + type address_Ip; + description "Group IP Address"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // This object holds igmp route source information + // Ephemeral data + container source-items { + + // Ephemeral data + list RouteSource-list { + config "false"; + key "srcAddr"; + + uses igmp_RouteSource-group; + description "This Object holds IGMP Route Source Information list"; } + description "This Object holds IGMP Route Source Information"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping igmp_RouteSource-group { + description "This Object holds IGMP Route Source Information"; - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "IGMP Route Source IP Address"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type - leaf scope { + // Ephemeral data + leaf oifcount { config "false"; - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; + type uint32; + description "Outgoing Interface (OIF) Count"; } - leaf rtMap { - config "false"; - type string; + + // IGMP Route Oif MOs. We create one object per interface in the oif list + // Ephemeral data + container oif-items { + + // Ephemeral data + list RouteOif-list { + config "false"; + key "oif"; + + uses igmp_RouteOif-group; + description "Holds Route Outgoing Interface(OIF) Details list"; + } + description "Holds Route Outgoing Interface(OIF) Details"; } } - grouping isis_InterLeakP-group { + grouping igmp_RouteOif-group { + description "Holds Route Outgoing Interface(OIF) Details"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf local { config "false"; - description "Name"; + type boolean; + description "Indicates if the Route is Local"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf static { + config "false"; + type boolean; + description "Indicates if the Route is Static"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf hostProxy { config "false"; - description "Description"; + type boolean; + description "Indicates if Host is Proxy"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf uptime { + config "false"; + type union { + type string; + type uint64; + } + description "Route OIF Uptime Timestamp"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type - leaf scope { + // Ephemeral data + leaf oif { config "false"; - description "Scope"; - // Type is an MO-Defined-Type - type rtleak_Scope; + type nw_IfId; + description "Outgoing interface"; } - leaf rtMap { + leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - - // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf proto { + leaf createTs { config "false"; - description "Protocol"; - - // Type is an MO-Defined-Type - type rtleak_Proto; + type union { + type string; + type uint64; + } + description "Create Timestamp"; } - - // Routing protocol instance, the routing instance of the - // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf inst { + leaf lastRep { config "false"; - description "Instance"; - - // Type is an MO-Defined-Type - type rtleak_Inst; + type address_Ip; + description "Last reporter info"; } - // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf asn { + leaf type { config "false"; - description "Autonomous System Number"; - // Type is an MO-Defined-Type - type rtleak_Asn { - } + type ipmc_RouteFlags; + description "Join type"; } } - grouping isis_InternalIf-group { + grouping isis_Entity-group { + description "Holds ISIS Control Plane Entity Information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // Operational state + leaf operSt { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // This objects hold per isis instance information. + container inst-items { + list Inst-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses isis_Inst-group; + description "Holds ISIS per Instance Information list"; + } + description "Holds ISIS per Instance Information"; } - // Circuit type - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf cktT { - config "false"; - description "Holds ISIS interface Circuit Type"; + // This object holds isis logging information + container syslog-items { - // Type is an MO-Defined-Type - type isis_IsT; + uses isis_SysLog-group; + description "Holds ISIS logging Information"; } - // Metric (deprecated) - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf metric { - config "false"; - description "Holds ISIS interface Metric"; + // This object holds isis information that is operated at a + // interface level + container if-items { + list InternalIf-list { + key "id"; - // Type is an MO-Defined-Type - type isis_Metric; + uses isis_InternalIf-group; + description "Internal Model for ISIS Interface list"; + } + description "Internal Model for ISIS Interface"; } + } - // Interface controls - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Holds ISIS interface Control messages"; + grouping isis_Inst-group { + description "Holds ISIS per Instance Information"; - // Type is an MO-Defined-Type - type isis_IfControl; - } - leaf v4enable { - config "false"; - type boolean; - default "true"; - } - leaf v6enable { - config "false"; - type boolean; - default "true"; - } - leaf authCheckLvl1 { - config "false"; - type boolean; - default "true"; - } - leaf authCheckLvl2 { + // Operational state + leaf operSt { config "false"; - type boolean; - default "true"; + + type isis_OperSt; + description "Holds ISIS Instance Operational State"; } - leaf authCheck { - config "false"; + leaf flushRoutes { type boolean; - default "true"; + description "Flush ISIS Routes on non graceful controlled restart"; } - leaf networkTypeP2P { - config "false"; + leaf isolate { type boolean; - default "true"; + description "Isolate ISIS Instance from other process tags"; } - // LSP refresh Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf lspRefreshIntvl { - config "false"; - description "Holds ISIS Interface LSP Refresh Interval"; + leaf name { - // Type is an MO-Defined-Type - type isis_LspRefreshIntvl; + type naming_Name256 { + length "1..64"; + pattern ".*[a-zA-Z0-9_-]{1,20}.*"; + } + description "Name"; } - // LSP Retransmit Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransInterval { - config "false"; - description "Holds ISIS Interface Retransmit Interval"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type isis_RetransInterval; + type nw_AdminSt; + description "Admin State"; } - // LSP Retransmit Throttle Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransThrottleInterval { - config "false"; - description "Holds ISIS Interface Retransmit Throttle Interval"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type isis_RetransThrottleInterval; + type nw_InstCtrl; + description "Controls"; } - // Passive-interface Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf passive { - config "false"; - description "Holds ISIS Passive Interface Info"; + // This objects hold per isis domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type isis_PassiveIntfT; + uses isis_Dom-group; + description "IS-IS Domain list"; + } + description "IS-IS Domain"; } - // Interface Hello padding Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf helloPad { - config "false"; - description "Holds ISIS Interface Hello Padding Info"; + // This object holds event-history buffers information for ISIS + container evthstry-items { + list EvtHstry-list { + key "type"; - // Type is an MO-Defined-Type - type isis_HelloPadT; + uses isis_EvtHstry-group; + description "Holds ISIS event-history buffers Information for ISIS list"; + } + description "Holds ISIS event-history buffers Information for ISIS"; } + } - // Instance name - // Inherited From isis:AInternalIf - // Type is an MO-Defined-Type - leaf instance { - config "false"; - description "Owning Instance"; - - // Type is an MO-Defined-Type - type isis_InstanceName; - } + grouping isis_Dom-group { + description "IS-IS Domain"; - // Dom name - // Inherited From isis:AInternalIf - // Type is an MO-Defined-Type - leaf dom { - config "false"; - description "Dom to which the interface belongs to"; + leaf net { - // Type is an MO-Defined-Type - type isis_DomName; + type isis_Net; + description "Holds ISIS Domain Net value"; } - // This object holds mesh group information per interface - container meshgrp-items { - list MeshGrp-list { - key "id"; + // LSP MTU + leaf mtu { - // Added containment: Prefix=meshgrp - // Acquired From Package isis - uses isis_MeshGrp-group; - } + type isis_Mtu; + description "Holds ISIS Domain Maximum Transmission Unit"; } - // This object holds per level isis interface information - container lvl-items { - list IfLvl-list { - key "type"; + // Bandwidth Reference + leaf bwRef { - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_IfLvl-group; - } + type isis_BwRef; + description "Holds ISIS Domain Bandwidth Reference"; } - // This object holds per IF States information - container traffic-items { + // Bandwidth Reference Unit + leaf bwRefUnit { - // Added containment as a singleton: Prefix=traffic - // Acquired From Package isis - uses isis_IfTraffic-group; + type isis_BwRefUnit; + description "Holds ISIS Domain Bandwidth Reference Unit (Mbps or Gbps)"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - container rtvrfMbr-items { + // Narrow/Wide Metric Style + leaf metricStyle { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type isis_MetricStyle; + description "Holds ISIS Domain Metric Style"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // IS Type + leaf isType { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type isis_IsT; + description "Holds ISIS Domain IS[Level] Type"; } - } - grouping lacp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Max LSP Lifetime + leaf lspLifetime { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type isis_MaxLSPLife; + description "Holds ISIS Domain LSP Lifetime"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Shutdown VRF context in ISIS leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Holds ISIS Domain Administative state"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - - // This objects hold per lacp instance information. There is only - // one instance of lacp running in the system today - container inst-items { + // Dom controls + leaf ctrl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package lacp - uses lacp_Inst-group; + type isis_DomControl; + description "Holds ISIS Domain Control messages"; } - } - - grouping lacp_Inst-group { - - // Administrative system priority - // Type is an MO-Defined-Type - leaf adminPrio { - description "LACP instance adminstrative priority"; - - // Type is an MO-Defined-Type - type lacp_SysPrio; + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Authentication Check for ISIS DOM on Level-1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Authentication Check for ISIS DOM on Level-2"; } - // Administrative System mac - // Type is an MO-Defined-Type - leaf adminSysMac { - description "System MAC"; + // ISIS DOM Authentication Type for Level-1 + leaf authTypeLvl1 { - // Type is an MO-Defined-Type - type lacp_SysMac; + type isis_AuthT; + description "Holds ISIS DOM Authentication-Type for Level-1"; } - // Administrative Role - // Type is an MO-Defined-Type - leaf adminRole { - description "System Role"; + // ISIS DOM Authentication Type for Level-2 + leaf authTypeLvl2 { - // Type is an MO-Defined-Type - type lacp_SysRole; + type isis_AuthT; + description "Holds ISIS DOM Authentication-Type for Level-2"; } - // Instance Control Fields - // Type is an MO-Defined-Type - leaf lacpctrl { - description "Instance Control"; + // ISIS DOM Authentication Key for Level-1 + leaf authKeyLvl1 { - // Type is an MO-Defined-Type - type lacp_LACPInstCtrl; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS DOM on Level-1"; } - // Operational system priority - // Type is an MO-Defined-Type - leaf operPrio { - config "false"; - description "Specifies the LACP instance operational system priority"; + // ISIS DOM Authentication Key for Level-2 + leaf authKeyLvl2 { - // Type is an MO-Defined-Type - type lacp_SysPrio; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS DOM on Level-2"; } - // System mac - // Type is an MO-Defined-Type - leaf sysMac { - config "false"; - description "System MAC"; + // Passive Interface default level + leaf passiveDflt { - // Type is an MO-Defined-Type - type lacp_SysMac; + type isis_PassiveT; + description "Holds ISIS Domain passive-interface default level"; } - // Operational Role - // Type is an MO-Defined-Type - leaf operRole { + // Operational state + leaf operSt { config "false"; - description "System Role"; - // Type is an MO-Defined-Type - type lacp_SysRole; + type isis_OperSt; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // ISIS databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses isis_Db-group; + description "IS-IS Database list"; + } + description "IS-IS Database"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds overload information + container overload-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses isis_Overload-group; + description "Holds ISIS Domain Overload Policy"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // This object holds per level isis vrf information + container lvl-items { + list DomLvl-list { + key "type"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + uses isis_DomLvl-group; + description "Holds ISIS Domain Level Properties list"; + } + description "Holds ISIS Domain Level Properties"; } - // This object holds lacp information that is operated at a - // interface (member port of the port channel) level - container if-items { - list If-list { - key "id"; + // This object holds per address family isis vrf information + container af-items { + list DomAf-list { + key "type"; - // Added containment: Prefix=if - // Acquired From Package lacp - uses lacp_If-group; + uses isis_DomAf-group; + description "Holds ISIS Domain Address Family Domain related properties list"; } + description "Holds ISIS Domain Address Family Domain related properties"; } - } - - grouping lacp_If-group { - // Port priority - LACP uses the port priority to decide - // which ports should be put in standby mode when there - // is a limitation that prevents all compatible ports - // from aggregating and which ports should be put into - // active mode. A higher port priority value means a - // lower priority for LACP - // Type is an MO-Defined-Type - leaf prio { - description "Specifies the LACP Interface Port Priority"; + // ISIS Distribute link-state + container distrls-items { - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_DistrLs-group; + description "Holds ISIS Distribute link-state information"; } - // Transmit rate, the rate at which the packets are - // transmitted - // Type is an MO-Defined-Type - leaf txRate { - description "Specifies the rate at which the LACP Packets are transmitted"; + // Fabric multicast (ftag) tree element + container fmtree-items { + list FmcastTree-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type lacp_TxRate; + uses isis_FmcastTree-group; + description "IS-IS Fabric Multicast Tree list"; + } + description "IS-IS Fabric Multicast Tree"; } - // Activity flags - // Type is an MO-Defined-Type - leaf activityFlags { - config "false"; - description "Specifies the LACP interface activity flags"; + // This objects hold per graceful restart information + container gr-items { - // Type is an MO-Defined-Type - type lacp_ActivityFlags; - } - leaf lastActive { - config "false"; - type string; + uses isis_Gr-group; + description "Graceful Restart Policy"; } - // Local port num - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Specifies the LACP interface local port number"; + // This object holds ospf information that is operated at an + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type lacp_PortNum; + uses isis_If-group; + description "ISIS Interface list"; + } + description "ISIS Interface"; } - // Operational port priority - // Type is an MO-Defined-Type - leaf operPrio { - config "false"; - description "Specifies the LACP Interface Operational Port Priority"; + // This objects holds default route leak policy + container defrtleak-items { - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_DefRtLeakP-group; + description "Default Route Leak Policy"; } + } - // Operational key - // Type is an MO-Defined-Type - leaf key { + grouping isis_Db-group { + description "IS-IS Database"; + + // Type of the repository + leaf type { config "false"; - description "Specifies the LACP Interface Operational Key"; - // Type is an MO-Defined-Type - type lacp_Key; + type isis_DbT; + description "Type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Database of fabric multicast group elements + container grp-items { + list GrpRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses isis_GrpRec-group; + description "Group Record list"; + } + description "Group Record"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Node records + container node-items { + list NodeRec-list { + config "false"; + key "sysId"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses isis_NodeRec-group; + description "Node Record list"; + } + description "Node Record"; } - // This object holds lacp neighbor information - container adj-items { + // LSP records + container lsp-items { + list LspRec-list { + config "false"; + key "sysId lanId frag"; - // Added containment as a singleton: Prefix=adj - // Acquired From Package lacp - uses lacp_AdjEp-group; + uses isis_LspRec-group; + description "LSP Record list"; + } + description "LSP Record"; } - // This object holds lacp intf statistics operational information. - // This is a singleton within an intferace - container ifstats-items { + // This object holds the isis nexthop information + container nh-items { + list Nexthop-list { + config "false"; + key "nhIf addr"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package lacp - uses lacp_IfStats-group; + uses isis_Nexthop-group; + description "IS-IS Nexthop list"; + } + description "IS-IS Nexthop"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - container rtvrfMbr-items { + // This object holds the isis route information + container rt-items { + list Route-list { + config "false"; + key "pfx"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses isis_Route-group; + description "IS-IS Route list"; + } + description "IS-IS Route"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Tunnel endpoints discovered through isis + container dtep-items { + list DTEp-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses isis_DTEp-group; + description "Discovered Tunnel Endpoint list"; } + description "Discovered Tunnel Endpoint"; } } - grouping lacp_AdjEp-group { + grouping isis_GrpRec-group { + description "Group Record"; - // Neighbor system priority - // Type is an MO-Defined-Type - leaf sysPrio { + // Group address + leaf addr { config "false"; - description "Specifies the Adjacency Neighbor System Priority"; - // Type is an MO-Defined-Type - type lacp_SysPrio; + type mcast_GrpIp; + description "Address"; } - // Neighbor system id - // Type is an MO-Defined-Type - leaf sysId { + leaf name { config "false"; - description "Specifies the Adjacency Neighbor System ID"; - // Type is an MO-Defined-Type - type lacp_SysMac; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Neighbor Port number - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Specifies the Adjacency Neighbor Port Number"; + // Per FTAG OIF List Record + container ftagoif-items { + list FtagOifRec-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type lacp_PortNum; + uses isis_FtagOifRec-group; + description "FTAG OIF Record list"; + } + description "FTAG OIF Record"; } - // Neighbor port priority - // Type is an MO-Defined-Type - leaf portPrio { - config "false"; - description "Neighbor Port Priority"; + // BD records active for this multicast group element + container bd-items { + list BdIdRec-list { + config "false"; + key "encap"; - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_BdIdRec-group; + description "Bridge Domain ID Record list"; + } + description "Bridge Domain ID Record"; } - // Neighbor activity flags - // Type is an MO-Defined-Type - leaf activityFlags { - config "false"; - description "Specifies the LACP Adjacency Neighbor Activity Flags"; + // Fabric nodes active for this multicast group element + container node-items { + list NodeIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type lacp_ActivityFlags; + uses isis_NodeIdRec-group; + description "Node ID Record list"; + } + description "Node ID Record"; } - // Neighbor oper key - // Type is an MO-Defined-Type - leaf key { + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; + + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; + } + + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; + + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; + } + } + + grouping isis_FtagOifRec-group { + description "FTAG OIF Record"; + + // Ftag ID + leaf id { config "false"; - description "Specifies the Adjacency Neighbor Operational Key"; - // Type is an MO-Defined-Type - type lacp_Key; + type fmcast_Id; + description "Ftag ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping lacp_IfStats-group { + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; - // LACP Interface Stats Number of LACP pdus sent - // Type is an MO-Defined-Type - leaf pduSent { - config "false"; - description "Number of PDUs Sent"; + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; + } - // Type is an MO-Defined-Type - type nw_Counter64; + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; + + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; } + } - // Number of LACP pdus received - // Type is an MO-Defined-Type - leaf pduRcvd { + grouping isis_OifListLeaf-group { + description "OIF List"; + + // Index + leaf idx { config "false"; - description "Number of PDUs Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type fmcast_Id; + description "Index"; } - // Number of marker sent - // Type is an MO-Defined-Type - leaf markerSent { + leaf name { config "false"; - description "Number of Markers Sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Number of marker received - // Type is an MO-Defined-Type - leaf markerRcvd { + grouping isis_OifListSpine-group { + description "OIF List"; + + // Index + leaf idx { config "false"; - description "Number of Markers Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type fmcast_Id; + description "Index"; } - // Number of marker response sent - // Type is an MO-Defined-Type - leaf markerRspSent { + leaf name { config "false"; - description "Number of Marker Responses Sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Number of marker reponse received - // Type is an MO-Defined-Type - leaf markerRspRcvd { + grouping isis_BdIdRec-group { + description "Bridge Domain ID Record"; + leaf encap { config "false"; - description "Number of Marker Responses Received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string; + description "Encapsulation"; } - // Number of error packets received - // Type is an MO-Defined-Type - leaf errPktRcvd { + leaf name { config "false"; - description "Number of Error Packets Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } } - grouping mgmt_MgmtIf-group { + grouping isis_NodeIdRec-group { + description "Node ID Record"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + grouping isis_NodeRec-group { + description "Node Record"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Multicast groups identifier record + container grp-items { + list GrpIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses isis_GrpIdRec-group; + description "Group IP Record list"; + } + description "Group IP Record"; } + } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + grouping isis_GrpIdRec-group { + description "Group IP Record"; - // Type is an MO-Defined-Type - type l1_AdminSt; + // Group address + leaf addr { + config "false"; + + type mcast_GrpIp; + description "Address"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Modified by Override: mgmt:MgmtIf->speed - // Type is an MO-Defined-Type - leaf speed { + leaf name { config "false"; - description "Administrative Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; - - // Type is an MO-Defined-Type - type l1_Duplex; + grouping isis_LspRec-group { + description "LSP Record"; + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + // LAN id + leaf lanId { + config "false"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + type isis_LanId; + description "LAN ID"; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + // Fragment number + leaf frag { + config "false"; - // Type is an MO-Defined-Type - type l1_Mtu; + type isis_FragNum; + description "Fragment Number"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + // Level type + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type isis_LvlT; + description "Level Type"; } - // Mgmt interface - container mgmt-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mgmt - // Acquired From Package im - uses im_MgmtIf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Mgmt0 interface capabilities - container portcap-items { + // Extended IS Record + container extisrec-items { + list ExtIsRec-list { + config "false"; + key "name"; - // Added containment as a singleton: Prefix=portcap - // Acquired From Package im - uses im_PortCap-group; + uses isis_ExtIsRec-group; + description "Extended IS Record list"; + } + description "Extended IS Record"; } - // Rel-def target from rtdMgmtConf - // Inherited From mgmt:MgmtIf - container rtrtdMgmtConf-items { + // Generic TLV Record + container tlvRec-items { + list TlvRec-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=rtrtdMgmtConf - // Acquired From Package mgmt - uses mgmt_RtRtdMgmtConf_target-group; + uses isis_TlvRec-group; + description "Generic TLV Record list"; + } + description "Generic TLV Record"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - container rtvrfMbr-items { + // IP Prefix record + container iprec-items { + list IpRec-list { + config "false"; + key "pfx"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses isis_IpRec-group; + description "IP Prefix Record list"; + } + description "IP Prefix Record"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + grouping isis_ExtIsRec-group { + description "Extended IS Record"; + + leaf name { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } + } - container dbgIfIn-items { + grouping isis_TlvRec-group { + description "Generic TLV Record"; - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + // TLV Type + leaf type { + config "false"; + + type isis_TlvType; + description "TLV"; } - container dbgIfOut-items { + // TLV Value + leaf value { + config "false"; - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + type isis_TlvVal; + description "Value"; } - container dbgIpIn-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgDot1d-items { - - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + grouping isis_IpRec-group { + description "IP Prefix Record"; + leaf pfx { + config "false"; + type address_Ip; + description "Prefix"; } - container dbgEtherStats-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgDot3Stats-items { + grouping isis_Nexthop-group { + description "IS-IS Nexthop"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + // Nexhop interface [Deprecated] + leaf if { + config "false"; + + type nw_Iod; + description "Interface (IOD Internal)"; } - container dbgIfHCIn-items { + // Nexhop interface + leaf nhIf { + config "false"; - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + type nw_IfId; + description "Interface"; + } + leaf addr { + config "false"; + type address_Ip; + description "Address"; } - container dbgIfHCOut-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgIpv6IfStats-items { + grouping isis_Route-group { + description "IS-IS Route"; + leaf pfx { + config "false"; + type address_Ip; + description "Prefix"; + } - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - container dbgIfStorm-items { + container rsnhAtt-items { - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + list RsNhAtt-list { + key "tDn"; + + uses isis_RsNhAtt_source-group; + description "IS-IS Nexthop Attachment list"; + } + description "IS-IS Nexthop Attachment"; } } - grouping im_MgmtIf-group { + grouping isis_DTEp-group { + description "Discovered Tunnel Endpoint"; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Runtime state of the object or policy"; - // Type is an MO-Defined-Type - type l1_OperSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational port status reason - // Type is an MO-Defined-Type - leaf operStQual { + // Endpoint identifier + leaf id { config "false"; - description "Chassis Operational Port Status Qualifier"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type tunnel_EpId; + description "ID"; } - // Operational port speed - // Type is an MO-Defined-Type - leaf operSpeed { + // Endpoint encapsulation type + leaf encapt { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type tunnel_EncapT; + description "Encapsulation Type"; } - // Operational duplex - // Type is an MO-Defined-Type - leaf operDuplex { + // Endpoint type + leaf type { config "false"; - description "Operational Duplex"; - // Type is an MO-Defined-Type - type l1_Duplex; + type tunnel_EpT; + description "Type"; } - // Operational physical port layer - // Type is an MO-Defined-Type - leaf operPhyLayer { + // Role of the remote endpoint + leaf role { config "false"; - description "Operational Physical Port Layer"; - // Type is an MO-Defined-Type - type l1_PhyLayer; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf portInitEvalFlag { - config "false"; - type uint8; + type top_NodeRole; + description "Role"; } + } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Mtu"; + grouping isis_Overload-group { + description "Holds ISIS Domain Overload Policy"; - // Type is an MO-Defined-Type - type l1_Mtu; - } - leaf iod { - config "false"; - type uint64; + // Adminstrative state + leaf adminSt { + + type isis_OverloadAdminSt; + description "Admin State"; } - // Vdc id - // Type is an MO-Defined-Type - leaf vdcId { - config "false"; - description "Vdc Id"; + // On at startup till the following duration + leaf startupTime { - // Type is an MO-Defined-Type - type l2_VdcId; + type isis_StartupTime; + description "Startup Time"; } - leaf lastLinkStChg { - config "false"; - type string; + leaf bgpAsNum { + type uint16; + description "BGP ASN"; } - } - grouping im_PortCap-group { - leaf portCap { - config "false"; - type uint32; + // Suppress information + leaf suppress { + + type isis_SuppressControl; + description "Suppress Internal/External"; } } - grouping mit_MitOperRoot-group { + grouping isis_DomLvl-group { + description "Holds ISIS Domain Level Properties"; - container commitMit-items { + // Per level controls + leaf ctrl { - // Added containment as a singleton: Prefix=commitMit - // Acquired From Package mit - uses mit_CommitMit-group; + type isis_DomLvlControl; + description "Controls"; } - container copyMit-items { + leaf name { - // Added containment as a singleton: Prefix=copyMit - // Acquired From Package mit - uses mit_CopyMit-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - container mitLock-items { - list MitLock-list { - key "treeId"; - // Added containment: Prefix=mitLock - // Acquired From Package mit - uses mit_MitLock-group; - } + // Type + leaf type { + + type isis_LvlT; + description "Type"; } - container sessionLock-items { - list SessionLock-list { - key "name"; - // Added containment: Prefix=sessionLock - // Acquired From Package mit - uses mit_SessionLock-group; + // ISIS databases + container db-items { + list Db-list { + config "false"; + key "type"; + + uses isis_Db-group; + description "IS-IS Database list"; } + description "IS-IS Database"; } - } - grouping mit_CommitMit-group { - leaf srcTreeId { - type uint32; + // This object holds lsp generation interval controls + container lspgen-items { + + uses isis_LspGen-group; + description "LSP Generation Controls"; } - // Type is an MO-Defined-Type - leaf commitOperType { - description "commit operation type"; + // This object holds spf computation frequency controls + container spfcomp-items { - // Type is an MO-Defined-Type - type mit_OperType; - } - leaf timeout { - type uint32; - } - leaf txnId { - type string; + uses isis_SpfComp-group; + description "SPF Computation Controls"; } } - grouping mit_CopyMit-group { + grouping isis_LspGen-group { + description "LSP Generation Controls"; - // Type is an MO-Defined-Type - leaf srcTreeId { - description "source id of mit"; + // Initial wait interval + leaf initIntvl { - // Type is an MO-Defined-Type - type mit_TreeType; + type isis_LspGenInitIntvl; + description "Initial Wait Interval"; } - // Type is an MO-Defined-Type - leaf dstTreeId { - description "destination id of mit"; - - // Type is an MO-Defined-Type - type mit_TreeType; - } - } + // Second wait interval + leaf secIntvl { - grouping mit_MitLock-group { - leaf treeId { - type uint32; + type isis_LspGenSecIntvl; + description "Second Wait Interval"; } - // Type is an MO-Defined-Type - leaf lockStatus { - description "current lock status of a mit"; + // Maximum wait interval + leaf maxIntvl { - // Type is an MO-Defined-Type - type mit_LockStatus; - } - leaf pid { - type uint32; - } - leaf isForceUnlock { - type boolean; - default "true"; + type isis_LspGenMaxIntvl; + description "Maximum Wait Interval"; } } - grouping mit_SessionLock-group { - leaf treeId { - type uint32; - } + grouping isis_SpfComp-group { + description "SPF Computation Controls"; - // Type is an MO-Defined-Type - leaf lockStatus { - description "current lock status of a session"; + // Initial wait inerval + leaf initIntvl { - // Type is an MO-Defined-Type - type mit_LockStatus; + type isis_SpfCompInitIntvl; + description "Initial Wait Interval"; } - leaf pid { - type uint32; + + // Second wait interval + leaf secIntvl { + + type isis_SpfCompSecIntvl; + description "Second Wait Interval"; } - leaf name { - type string; + + // Maximum wait interval + leaf maxIntvl { + + type isis_SpfCompMaxIntvl; + description "Maximum Wait Interval"; } } - grouping snmp_Entity-group { + grouping isis_DomAf-group { + description "Holds ISIS Domain Address Family Domain related properties"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Per address family controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type isis_DomAfControl; + description "Controls"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // ISIS Multi-topology information + leaf mtType { - // Type is an MO-Defined-Type - type nw_AdminSt; + type isis_TopoT; + description "Holds ISIS Domain address family Multi-topology information"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf dist { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type isis_Dist; + description "Holds ISIS Domain address family Administrative Distance"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Modified by Override: snmp:Entity->operErr - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // MAX ECMP + leaf maxEcmp { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type isis_Ecmp; + description "Holds ISIS Domain address family Max ECMP value"; } - // This objects hold per snmp instance information - container inst-items { + // default-information originate command + leaf defInfOrig { - // Added containment as a singleton: Prefix=inst - // Acquired From Package snmp - uses snmp_Inst-group; + type isis_DefInfOrigSt; + description "Holds ISIS Domain address family default-information originate state for Route"; + } + leaf defInfOrigRtMap { + type string; + description "Holds Route-map name for ISIS Domain address family default-information originate"; + } + leaf enableBfd { + type boolean; + description "Enabling BFD on all ISIS domain interfaces"; + } + leaf tblMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Holds Route-map name to filter routes downloaded"; } - } - grouping snmp_Inst-group { + // Configure table-map for Selective route download + leaf tblMapFltr { - // Engine Id - // Type is an MO-Defined-Type - leaf engId { - description "Engine Id"; + type isis_AdminSt; + description "Enables table-map for Selective route"; + } + leaf rtrIdIpAddr { + type address_Ip; + description "Holds ip address to become router id"; + } - // Type is an MO-Defined-Type - type snmp_EngId; + // Router interface + leaf rtrIdIf { + + type nw_IfId; + description "Holds interface"; + } + leaf srMpls { + type boolean; + default "true"; + description "Segment routing for MPLS"; } - // Inherited From pol:Obj - // Modified by Override: snmp:APol->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_AfT; + description "Type"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Distribute policy defines distribution of routes from one level to another level + container distribute-items { + list Distribute-list { + key "source"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses isis_Distribute-group; + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level list"; } + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Advertise interface + container advertiseint-items { + list AdvertiseInt-list { + key "advtIf"; - // Type is an MO-Defined-Type - type naming_Descr; + uses isis_AdvertiseInt-group; + description "Holds Advertise Interface medialist Level list"; + } + description "Holds Advertise Interface medialist Level"; } - // Inherited From snmp:APol - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to isis + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses isis_InterLeakP-group; + description "Inter Protocol Route Leak Policy list"; + } + description "Inter Protocol Route Leak Policy"; } - // Access control based on ip addresses and communities. - // This is valid only with v1/v2c security Client group - container clgrp-items { - list ClientGrp-list { - key "name"; + // Leak controls related to the number of routes leaked + container leakctrl-items { - // Added containment: Prefix=clgrp - // Acquired From Package snmp - uses snmp_ClientGrp-group; - } + uses isis_LeakCtrlP-group; + description "Leak Control Policy"; } - container globals-items { + // This objects hold summarization address. Any address + // that maps to this prefix will be summarized through + // this address + container rtsum-items { + list RtSum-list { + key "addr"; - // Added containment as a singleton: Prefix=globals - // Acquired From Package snmp - uses snmp_Globals-group; + uses isis_RtSum-group; + description "Route Summarization Policy list"; + } + description "Route Summarization Policy"; } - container host-items { - list Host-list { - key "hostName udpPortID"; - // Added containment: Prefix=host - // Acquired From Package snmp - uses snmp_Host-group; + // This object holds ISIS Segment Routing configurations + container segrt-items { + list SgmRtg-list { + key "sr"; + + uses isis_SgmRtg-group; + description "Object to hold isis Segment Routing configurations list"; } + description "Object to hold isis Segment Routing configurations"; } + } - container rmon-items { + grouping isis_Distribute-group { + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level"; - // Added containment as a singleton: Prefix=rmon - // Acquired From Package snmp - uses snmp_Rmon-group; + // Source domain, level from which the routes are leaked + leaf source { + + type isis_LvlT; + description "Holds Source Domain for Routes Distribute Policy"; } - // Security policy using communities. Uses a community - // string match for authentication - container community-items { - list CommSecP-list { - key "name"; + // Destination domain, level to which the routes are leaked + leaf destination { - // Added containment: Prefix=community - // Acquired From Package snmp - uses snmp_CommSecP-group; + type isis_LvlT; + description "Holds Destination Domain for Routes Distribute Policy"; + } + leaf all { + type boolean; + default "true"; + description "Holds Distribution of all level-n routes"; + } + leaf rmap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Holds Route-map name for Distribute Policy"; } + } - // Authentication policy using user names - container user-items { - list UserSecP-list { - key "name"; + grouping isis_AdvertiseInt-group { + description "Holds Advertise Interface medialist Level"; - // Added containment: Prefix=user - // Acquired From Package snmp - uses snmp_UserSecP-group; - } + // Interface + leaf advtIf { + + type nw_IfId; + description "Holds Advertise interface"; } - // This objects holds snmp context information - container ctx-items { - list Ctx-list { - key "name"; + // Level + leaf advtLevel { - // Added containment: Prefix=ctx - // Acquired From Package snmp - uses snmp_Ctx-group; - } + type isis_AdvtLvl; + description "Holds Advertise interface level"; } + } - container sysinfo-items { + grouping isis_InterLeakP-group { + description "Inter Protocol Route Leak Policy"; - // Added containment as a singleton: Prefix=sysinfo - // Acquired From Package snmp - uses snmp_SysInfo-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container traps-items { + leaf descr { - // Added containment as a singleton: Prefix=traps - // Acquired From Package snmp - uses snmp_Traps-group; + type naming_Descr; + description "Description of the specified attribute"; } - container rmtUser-items { - list RemoteUser-list { - key "userName usrengineId"; - // Added containment: Prefix=rmtUser - // Acquired From Package snmp - uses snmp_RemoteUser-group; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + + type rtleak_Scope; + default "inter"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Route Map"; } - container lclUser-items { - list LocalUser-list { - key "userName"; - // Added containment: Prefix=lclUser - // Acquired From Package snmp - uses snmp_LocalUser-group; - } + // Protocol from where the routes are leaked + leaf proto { + + type rtleak_Proto; + description "Protocol"; } - } - grouping snmp_ClientGrp-group { + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // The vrf that this client group belongs to - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + type rtleak_Inst; + description "Instance"; + } - // Type is an MO-Defined-Type - type l3_VrfName; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { + + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; + } + description "Autonomous System Number"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Type is an MO-Defined-Type - type nw_OSSum; + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } + } + + grouping isis_LeakCtrlP-group { + description "Leak Control Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf epgDn { - config "false"; - type string; - } - container client-items { - list Client-list { - key "addr"; - // Added containment: Prefix=client - // Acquired From Package snmp - uses snmp_Client-group; - } + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { + + type rtleak_Ctrl; + description "Controls"; } - // Rel-def from CommSecPClientGrpAtt - container rscommSecPClientGrpAtt-items { + // Maximum limit on routes leaked + leaf max { - // Abstract containment of rscommSecPClientGrpAtt derived from snmp:ClientGrp - list RsCommSecPClientGrpAtt-list { - config "false"; - key "tDn"; + type rtleak_MaxPfx; + description "Maximum Limit"; + } - // Added containment: Prefix=rscommSecPClientGrpAtt - // Acquired From Package snmp - uses snmp_RsCommSecPClientGrpAtt_source-group; - } + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { + + type rtleak_Thresh; + description "Threshold"; + } + + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { + + type rtleak_Retries; + description "Retries"; + } + + // Duration between the retries + leaf duration { + + type rtleak_Duration; + description "Duration"; } } - grouping snmp_Client-group { + grouping isis_RtSum-group { + description "Route Summarization Policy"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Summary Level + leaf sumLevel { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_SumLvl; + description "Holds summary address level"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; + description "Address"; } } - grouping snmp_Globals-group { + grouping isis_SgmRtg-group { + description "Object to hold isis Segment Routing configurations"; - // Type is an MO-Defined-Type - leaf aaaUserCacheTimeout { - description "Timeout for AAA Cache"; + leaf sr { - // Type is an MO-Defined-Type - type snmp_AaaUserCacheTimeout; + type isis_SgmntRtg; + description "Support Segment-Routing options in ISIS"; } - // Type is an MO-Defined-Type - leaf protocolEnable { - description "Enable/Disable snmp protocol operations"; + // This object holds ISIS Segment Routing Locator configuration + container loc-items { + list Locator-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_Boolean; + uses isis_Locator-group; + description "Object to hold ISIS Segment Routing SRv6 Locator configurations list"; + } + description "Object to hold ISIS Segment Routing SRv6 Locator configurations"; } + } - // Type is an MO-Defined-Type - leaf counterCacheEnable { - description "Enable port stats cache"; - - // Type is an MO-Defined-Type - type snmp_Boolean; - } + grouping isis_Locator-group { + description "Object to hold ISIS Segment Routing SRv6 Locator configurations"; - // Type is an MO-Defined-Type - leaf counterCacheTimeout { - description "Timeout for port stats cache"; + leaf name { - // Type is an MO-Defined-Type - type snmp_CounterCacheTimeout; + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,58}.*"; + } + description "Name"; } - // SNMP SERVER Packet Size - // Type is an MO-Defined-Type - leaf pktSize { - description "Packet size config"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_PktSizeT; + type nw_AdminSt; + description "Admin State"; } - // tcp-session auth config - // Type is an MO-Defined-Type - leaf tcpSessionAuth { - description "tcp-session auth config"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type snmp_tcpSessionAuthT; + type nw_EntOperSt; + description "Indicates whether locator state is operational"; } + } - container srcInterfaceTraps-items { - - // Added containment as a singleton: Prefix=srcInterfaceTraps - // Acquired From Package snmp - uses snmp_SourceInterfaceTraps-group; + grouping isis_DistrLs-group { + description "Holds ISIS Distribute link-state information"; + leaf state { + type boolean; + default "true"; + description "Holds State of ISIS Distribute Link-state"; } - container srcInterfaceInforms-items { + // Instance id of ISIS Distribute Link-state + leaf instId { - // Added containment as a singleton: Prefix=srcInterfaceInforms - // Acquired From Package snmp - uses snmp_SourceInterfaceInforms-group; + type isis_InstId; + description "Holds Instance id of ISIS Distribute Link-state"; } - } - - grouping snmp_SourceInterfaceTraps-group { - // Type is an MO-Defined-Type - leaf ifname { - description "Source interface name for Traps"; + // Level of ISIS Distribute Link-state + leaf level { - // Type is an MO-Defined-Type - type nw_IfId; + type isis_DistrLvl; + description "Holds Level of ISIS Distribute Link-state"; } - } - - grouping snmp_SourceInterfaceInforms-group { - // Type is an MO-Defined-Type - leaf ifname { - description "Source interface name for informs"; + // Throttle timer of ISIS Distribute Link-state + leaf throt { - // Type is an MO-Defined-Type - type nw_IfId; + type isis_Throttle; + description "Holds Throttle timer of ISIS Distribute Link-state"; } } - grouping snmp_Host-group { + grouping isis_FmcastTree-group { + description "IS-IS Fabric Multicast Tree"; - // Host name - // Type is an MO-Defined-Type - leaf hostName { - description "snmp-server host name"; + // Id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type snmp_hostNameT; + type fmcast_Id; + description "Tree ID"; } - // IP address in string - // Type is an MO-Defined-Type - leaf ipAddr { + // Operational state + leaf operSt { config "false"; - description "Ip address corresponding to the host"; - // Type is an MO-Defined-Type - type snmp_hostNameT; + type fmcast_OperSt; + description "Operational State"; } - // Community name - // Type is an MO-Defined-Type - leaf commName { - description "community to be associated to the host"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type snmp_commNameT; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Ctrl bits to decide Traps / Informs - // Type is an MO-Defined-Type - leaf notifType { - description "Ctrl bits indicating traps/informs config"; + // Fabric nodes active for this multicast group element + container node-items { + list NodeIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type snmp_NotificationType; + uses isis_NodeIdRec-group; + description "Node ID Record list"; + } + description "Node ID Record"; } - // Ctrl bits to decide version - // Type is an MO-Defined-Type - leaf version { - description "Ctrl bits indicating version"; + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; - // Type is an MO-Defined-Type - type snmp_Version; + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; } - // Control bitmask for deciding auth/ priv/ noauth for v3 - // Type is an MO-Defined-Type - leaf secLevel { - description "Ctrl bits indicating auth/ priv/ noauth for v3"; + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; - // Type is an MO-Defined-Type - type snmp_V3SecLvl; + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; } + } - // udp-port ID - // Type is an MO-Defined-Type - leaf udpPortID { - description "snmp-server host udp-port"; + grouping isis_Gr-group { + description "Graceful Restart Policy"; - // Type is an MO-Defined-Type - type snmp_PortIdT; - } - container usevrf-items { - list UseVrf-list { - key "vrfname"; + // Graceful Restart + leaf adminSt { - // Added containment: Prefix=usevrf - // Acquired From Package snmp - uses snmp_UseVrf-group; - } + type nw_AdminSt; + description "Admin State"; } - } - - grouping snmp_UseVrf-group { - // Type is an MO-Defined-Type - leaf vrfname { - description "vrfname to be used by host"; + // T3 timer for graceful restart + leaf grT3Intvl { - // Type is an MO-Defined-Type - type l3_VrfName; + type isis_GrT3Intvl; + description "T3 Interval"; } - } - grouping snmp_Rmon-group { - container event-items { - list Event-list { - key "num"; + leaf name { - // Added containment: Prefix=event - // Acquired From Package snmp - uses snmp_Event-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container alarm-items { - list Alarm-list { - key "num"; - // Added containment: Prefix=alarm - // Acquired From Package snmp - uses snmp_Alarm-group; - } + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping snmp_Event-group { + grouping isis_If-group { + description "ISIS Interface"; - // Event Number - // Type is an MO-Defined-Type - leaf num { - description "rmon event number"; + leaf name { - // Type is an MO-Defined-Type - type snmp_EventNum; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // To generate / not log when alarm event is fired - // Type is an MO-Defined-Type - leaf log { - description "Whether to generate / not log when alarm event is fired"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_LogEnableType; + type naming_Descr1024; + description "Description"; } - // Type is an MO-Defined-Type - leaf owner { - description "rmon event owner"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type snmp_OwnerType; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Type is an MO-Defined-Type - leaf description { - description "rmon event description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_DescType; + type nw_IfAdminSt; + description "Admin State"; } - // Type is an MO-Defined-Type - leaf trap { - description "rmon event description"; + // Circuit type + leaf cktT { - // Type is an MO-Defined-Type - type snmp_TrapCommType; + type isis_IsT; + description "Holds ISIS interface Circuit Type"; } - } - - grouping snmp_Alarm-group { - // Alarm Number - // Type is an MO-Defined-Type - leaf num { - description "rmon alarm number"; + // Metric level-1 + leaf metricLvl1 { - // Type is an MO-Defined-Type - type snmp_EventNum; - } - leaf oid { - type string; + type isis_Metric; + description "Holds ISIS interface Metric level-1"; } - // Sample Interval - // Type is an MO-Defined-Type - leaf sampleInterval { - description "rmon alarm sample interval"; + // Metric level-2 + leaf metricLvl2 { - // Type is an MO-Defined-Type - type snmp_smplIntvl; + type isis_Metric; + description "Holds ISIS interface Metric level-2"; } - // Sample Type - // Type is an MO-Defined-Type - leaf sampleType { - description "rmon alarm sample interval type"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type snmp_smplType; + type isis_IfControl; + description "Holds ISIS interface Control messages"; } - - // Rising Threshold - // Type is an MO-Defined-Type - leaf risingThr { - description "rmon alarm rising threshold"; - - // Type is an MO-Defined-Type - type snmp_thrshld; + leaf v4enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV4 family"; + } + leaf v6enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV6 family"; + } + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level2"; + } + leaf authCheck { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface without specific Level"; } - // Rising Threshold Event Index - // Type is an MO-Defined-Type - leaf risingEvntIndx { - description "rmon alarm rising threshold event index"; + // Enable P2P Interface + leaf networkTypeP2P { - // Type is an MO-Defined-Type - type snmp_EventIndx; + type isis_NetworkTypeP2PSt; + description "Enabling Point-to-Point Network Type on ISIS Interface"; } - // Falling Threshold - // Type is an MO-Defined-Type - leaf fallingThr { - description "rmon alarm falling threshold"; + // LSP refresh Interval + leaf lspRefreshIntvl { - // Type is an MO-Defined-Type - type snmp_thrshld; + type isis_LspRefreshIntvl; + description "Holds ISIS Interface LSP Refresh Interval"; } - // Falling Threshold Event Index - // Type is an MO-Defined-Type - leaf fallingEvntIndx { - description "rmon alarm falling threshold event index"; + // LSP Retransmit Interval + leaf retransInterval { - // Type is an MO-Defined-Type - type snmp_EventIndx; + type isis_RetransInterval; + description "Holds ISIS Interface Retransmit Interval"; } - // Owner Name - // Type is an MO-Defined-Type - leaf owner { - description "rmon alarm owner"; + // LSP Retransmit Throttle Interval + leaf retransThrottleInterval { - // Type is an MO-Defined-Type - type snmp_OwnerType; + type isis_RetransThrottleInterval; + description "Holds ISIS Interface Retransmit Throttle Interval"; } - } - - grouping snmp_CommSecP-group { - // Group to which community belongs to - // Type is an MO-Defined-Type - leaf grpName { - description "SNMP community group"; + // IPv4 BFD + leaf v4Bfd { - // Type is an MO-Defined-Type - type snmp_GrpNameT; + type isis_BfdT; + description "Holds ISIS Interface BFD Configruation"; } - // Community Access - // Type is an MO-Defined-Type - leaf commAcess { - description "SNMP community group"; + // IPv6 BFD + leaf v6Bfd { - // Type is an MO-Defined-Type - type snmp_CommAcessT; + type isis_BfdT; + description "Holds Interface BFD Configruation for IPV6 family"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Passive-interface Info + leaf passive { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_PassiveIntfT; + description "Holds ISIS Passive Interface Info"; } - // Inherited From pol:Obj - // Modified by Override: snmp:CommSecP->name - // Modified by Override: snmp:ACommunityP->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Interface Hello padding Info + leaf helloPad { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_HelloPadT; + description "Holds ISIS Interface Hello Padding Info"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Interface Hello Interval Info + leaf helloIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_HelloIntvl; + description "Holds Interface Hello Interval value"; } - // This object hold the ACl informations - container acl-items { + // ISIS Hello Interval for Level-1 + leaf helloIntvlLvl1 { - // Added containment as a singleton: Prefix=acl - // Acquired From Package snmp - uses snmp_Acl-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-1 value"; } - // Rel-def from CommToCtxAtt - container rscommToCtxAtt-items { + // ISIS Hello Interval for Level-2 + leaf helloIntvlLvl2 { - // Added containment as a singleton: Prefix=rscommToCtxAtt - // Acquired From Package snmp - uses snmp_RsCommToCtxAtt_source-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-2 value"; } - } - - grouping snmp_Acl-group { - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useAclName { - description "SNMP community acl name"; + // Hello Multiplier + leaf helloMult { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds Interface Hello Multiplier value"; } - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useIpv4AclName { - description "SNMP community acl name"; + // ISIS Hello Multiplier for Level-1 + leaf helloMultLvl1 { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-1 value"; } - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useIpv6AclName { - description "SNMP community acl name"; + // ISIS Hello Multiplier for Level-2 + leaf helloMultLvl2 { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-2 value"; } - } - - grouping snmp_UserSecP-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // ISIS Priority for Level-1 + leaf priorityLvl1 { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_CktPrio; + description "Holds ISIS Interface Level-1 Circuit Priority"; } - // Inherited From pol:Obj - // Modified by Override: snmp:AUserP->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // ISIS Priority for Level-2 + leaf priorityLvl2 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_CktPrio; + description "Holds ISIS Interface Level-2 Circuit Priority"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // ISIS Wide Metric MT2[IPV6] topology for Level-1 + leaf mt2MetricLvl1 { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-1"; } - // Authentication type - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf authType { - description "Authentication Type"; + // ISIS Wide Metric MT2[IPV6] topology for Level-2 + leaf mt2MetricLvl2 { - // Type is an MO-Defined-Type - type snmp_AuthType; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-2"; } - // Authentication key - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf authKey { - description "Authentication Key"; + // ISIS CSNP Interval for Level-1 + leaf csnpIntvlLvl1 { - // Type is an MO-Defined-Type - type snmp_AuthKey; + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-1 CSNP Interval"; } - // Privacy (encryption) type - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf privType { - description "Privacy"; + // ISIS CSNP Interval for Level-2 + leaf csnpIntvlLvl2 { - // Type is an MO-Defined-Type - type snmp_PrivType; + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-2 CSNP Interval"; } - // Privacy key - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf privKey { - description "Privacy Key"; + leaf authType { - // Type is an MO-Defined-Type - type snmp_PrivKey; + type isis_AuthT; + description "Holds Authentication Type value for ISIS Interface"; } - } - - grouping snmp_Ctx-group { - // The vrf that this client group belongs to - // Type is an MO-Defined-Type - leaf vrf { - config "false"; - description "VRF"; + // Authentication Type for Level-1 + leaf authTypeLvl1 { - // Type is an MO-Defined-Type - type l3_VrfName; + type isis_AuthT; + description "Holds ISIS Level-1 Authentication Type value for Interface"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Authentication Type for Level-2 + leaf authTypeLvl2 { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_AuthT; + description "Holds ISIS Level-2 Authentication Type value for Interface"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Authentication Key for ISIS Interface + leaf authKey { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Authentication Key for ISIS Interface on Level-1 + leaf authKeyLvl1 { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-1"; } - } - - grouping snmp_SysInfo-group { - // Type is an MO-Defined-Type - leaf sysLocation { - description "System Location"; + // Authentication Key for ISIS Interface on Level-2 + leaf authKeyLvl2 { - // Type is an MO-Defined-Type - type snmp_SnmpSysLoc; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-2"; } - - // Type is an MO-Defined-Type - leaf sysContact { - description "System Contact"; - - // Type is an MO-Defined-Type - type snmp_SnmpSysContact; + leaf mtuCheckLvl1 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level1"; } - - // Type is an MO-Defined-Type - leaf sysDescription { - description "System Description"; - - // Type is an MO-Defined-Type - type snmp_SnmpSysDescr; + leaf mtuCheckLvl2 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level2"; } - } - - grouping snmp_Traps-group { - leaf enableAllTriggerCount { - config "false"; - type uint16; + leaf mtuCheck { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface without specific Level"; } - leaf enableAllViaCLI { - config "false"; + leaf nFlagClear { type boolean; + default "true"; + description "Enabling N flag clear for ISIS interface"; } - // Default traps List Starts From Here StormControl trap - container stormcontrol-items { + // This object holds isis neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "type sysId"; - // Added containment as a singleton: Prefix=stormcontrol - // Acquired From Package snmp - uses snmp_TstormControl-group; + uses isis_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } - // Default traps List Starts From Here AAA trap - container aaa-items { + // This object holds mesh group information per interface + container meshgrp-items { - // Added containment as a singleton: Prefix=aaa - // Acquired From Package snmp - uses snmp_Taaa-group; + uses isis_MeshGrp-group; + description "Holds ISIS interface Mesh Group Policy"; } - // Bfd trap - container bfd-items { + // This object holds per level isis interface information + container lvl-items { + list IfLvl-list { + key "type"; - // Added containment as a singleton: Prefix=bfd - // Acquired From Package snmp - uses snmp_Tbfd-group; + uses isis_IfLvl-group; + description "IS-IS Interface Policy Per Level list"; + } + description "IS-IS Interface Policy Per Level"; } - // Bridge trap - container bridge-items { + // This object holds per IF States information + container traffic-items { - // Added containment as a singleton: Prefix=bridge - // Acquired From Package snmp - uses snmp_Tbridge-group; + uses isis_IfTraffic-group; + description "Interface Traffic Statistics"; } - // Callhome trap - container callhome-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=callhome - // Acquired From Package snmp - uses snmp_Tcallhome-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // CFS trap - container cfs-items { + grouping isis_AdjEp-group { + description "Adjacency"; - // Added containment as a singleton: Prefix=cfs - // Acquired From Package snmp - uses snmp_Tcfs-group; + // Adjacency type + leaf type { + config "false"; + + type isis_LvlT; + description "Level Type"; + } + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; } - // Config trap - container config-items { + // Operational state of the adjacency + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=config - // Acquired From Package snmp - uses snmp_Tconfig-group; + type isis_AdjOperSt; + description "Operational State"; } - // Entity trap - container entity-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=entity - // Acquired From Package snmp - uses snmp_Tentity-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + container addr-items { + list PeerIpAddr-list { + config "false"; + key "addr"; - // Feature-control trap - container featurecontrol-items { + uses isis_PeerIpAddr-group; + description "Peer IP Address list"; + } + description "Peer IP Address"; + } + } - // Added containment as a singleton: Prefix=featurecontrol - // Acquired From Package snmp - uses snmp_Tfeaturecontrol-group; + grouping isis_PeerIpAddr-group { + description "Peer IP Address"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; } + } - // hsrp trap - container hsrp-items { + grouping isis_MeshGrp-group { + description "Holds ISIS interface Mesh Group Policy"; - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package snmp - uses snmp_Thsrp-group; + // Mesh Group Id + leaf id { + + type isis_MeshGrpId; + description "Holds ISIS Mesh Group ID per Interface"; } - // generic trap - container generic-items { + // Mesh group controls + leaf ctrl { - // Added containment as a singleton: Prefix=generic - // Acquired From Package snmp - uses snmp_Tgeneric-group; + type isis_MeshGrpControl; + description "Holds ISIS Mesh Group Control Info per Interface"; } - // ip trap - container ip-items { + leaf name { - // Added containment as a singleton: Prefix=ip - // Acquired From Package snmp - uses snmp_Tip-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // license trap - container license-items { + leaf descr { - // Added containment as a singleton: Prefix=license - // Acquired From Package snmp - uses snmp_Tlicense-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // poe trap - container poe-items { + grouping isis_IfLvl-group { + description "IS-IS Interface Policy Per Level"; - // Added containment as a singleton: Prefix=poe - // Acquired From Package snmp - uses snmp_Tpoe-group; + // ISIS Wide Metric MT0[IPV4] topology for Level-1 + leaf mt0MetricLvl1 { + + type isis_WideMetric; + description "Holds ISIS interface IPV4 wide metric value for Level-1"; } - // link trap - container link-items { + // ISIS Wide Metric MT0[IPV4] topology for Level-2 + leaf mt0MetricLvl2 { - // Added containment as a singleton: Prefix=link - // Acquired From Package snmp - uses snmp_Tlink-group; + type isis_WideMetric; + description "Holds ISIS interface IPV4 wide metric value for Level-2"; } - // lldp trap - container lldp-items { + leaf name { - // Added containment as a singleton: Prefix=lldp - // Acquired From Package snmp - uses snmp_Tlldp-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // msdp trap - container msdp-items { + // Type + leaf type { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package snmp - uses snmp_Tmsdp-group; + type isis_LvlT; + description "Type"; } + } - // mmode trap - container mmode-items { + grouping isis_IfTraffic-group { + description "Interface Traffic Statistics"; + } - // Added containment as a singleton: Prefix=mmode - // Acquired From Package snmp - uses snmp_Tmmode-group; + grouping isis_DefRtLeakP-group { + description "Default Route Leak Policy"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // pim trap - container pim-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=pim - // Acquired From Package snmp - uses snmp_Tpim-group; + type naming_Descr; + description "Description of the specified attribute"; } - // rf trap - container rf-items { + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + config "false"; - // Added containment as a singleton: Prefix=rf - // Acquired From Package snmp - uses snmp_Trf-group; + type rtleak_Scope; + default "defrt"; + description "Scope"; } + leaf rtMap { + config "false"; + type string; + description "Route Map"; + } + } - // rmon trap - container rmon-items { + grouping isis_EvtHstry-group { + description "Holds ISIS event-history buffers Information for ISIS"; - // Added containment as a singleton: Prefix=rmon - // Acquired From Package snmp - uses snmp_Trmon-group; + // Holds type of event history + leaf type { + + type isis_EhType; + description "configures type of event history"; } - // snmp trap - container snmp-items { + leaf size { - // Added containment as a singleton: Prefix=snmp - // Acquired From Package snmp - uses snmp_Tsnmp-group; + type isis_EhSize; + description "configures buffer size in text/kb"; } + } - // stpx trap - container stpx-items { + grouping isis_SysLog-group { + description "Holds ISIS logging Information"; - // Added containment as a singleton: Prefix=stpx - // Acquired From Package snmp - uses snmp_Tstpx-group; + // Logging level for IS-IS + leaf logLevel { + + type isis_LogL; + description "Holds ISIS Logging Level"; } - // sysmgr trap - container sysmgr-items { + leaf name { - // Added containment as a singleton: Prefix=sysmgr - // Acquired From Package snmp - uses snmp_Tsysmgr-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // system trap - container system-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=system - // Acquired From Package snmp - uses snmp_Tsystem-group; + type nw_AdminSt; + description "Admin State"; } - // upgrade trap - container upgrade-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=upgrade - // Acquired From Package snmp - uses snmp_Tupgrade-group; + type nw_InstCtrl; + description "Controls"; } - // vsan trap - container vsan-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=vsan - // Acquired From Package snmp - uses snmp_Tvsan-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // vtp trap - container vtp-items { + grouping isis_InternalIf-group { + description "Internal Model for ISIS Interface"; - // Added containment as a singleton: Prefix=vtp - // Acquired From Package snmp - uses snmp_Tvtp-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // port-security trap - container portsecurity-items { + leaf descr { - // Added containment as a singleton: Prefix=portsecurity - // Acquired From Package snmp - uses snmp_Tportsecurity-group; + type naming_Descr1024; + description "Description"; } - // mpls trap - container mpls-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package snmp - uses snmp_Tmpls-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping snmp_TstormControl-group { + // Administrative state + leaf adminSt { - // SNMP trap-rate - // Type is an MO-Defined-Type - leaf traprate { - description "Number of traps per minute"; + type nw_IfAdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type snmp_TrapRateT; + // Circuit type + leaf cktT { + + type isis_IsT; + description "Holds ISIS interface Circuit Type"; } - // snmp authentication trap - container cpscEventRev1-items { + // Metric level-1 + leaf metricLvl1 { - // Added containment as a singleton: Prefix=cpscEventRev1 - // Acquired From Package snmp - uses snmp_CpscEventRev1-group; + type isis_Metric; + description "Holds ISIS interface Metric level-1"; } - } - grouping snmp_CpscEventRev1-group { + // Metric level-2 + leaf metricLvl2 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_Metric; + description "Holds ISIS interface Metric level-2"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Interface controls + leaf ctrl { + + type isis_IfControl; + description "Holds ISIS interface Control messages"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf v4enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV4 family"; } - } - - grouping snmp_Taaa-group { - leaf enableViaCLI { - config "false"; + leaf v6enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV6 family"; + } + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level2"; + } + leaf authCheck { type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface without specific Level"; } - // AAA server-state-change trap - container serverstatechange-items { + // Enable P2P Interface + leaf networkTypeP2P { - // Added containment as a singleton: Prefix=serverstatechange - // Acquired From Package snmp - uses snmp_ServerStateChange-group; + type isis_NetworkTypeP2PSt; + description "Enabling Point-to-Point Network Type on ISIS Interface"; } - } - - grouping snmp_ServerStateChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // LSP refresh Interval + leaf lspRefreshIntvl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_LspRefreshIntvl; + description "Holds ISIS Interface LSP Refresh Interval"; } - } - - grouping snmp_Tbfd-group { - // Bfd session-down trap - container sessiondown-items { + // LSP Retransmit Interval + leaf retransInterval { - // Added containment as a singleton: Prefix=sessiondown - // Acquired From Package snmp - uses snmp_SessionDown-group; + type isis_RetransInterval; + description "Holds ISIS Interface Retransmit Interval"; } - // Bfd session-up trap - container sessionup-items { + // LSP Retransmit Throttle Interval + leaf retransThrottleInterval { - // Added containment as a singleton: Prefix=sessionup - // Acquired From Package snmp - uses snmp_SessionUp-group; + type isis_RetransThrottleInterval; + description "Holds ISIS Interface Retransmit Throttle Interval"; } - } - - grouping snmp_SessionDown-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // IPv4 BFD + leaf v4Bfd { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_BfdT; + description "Holds ISIS Interface BFD Configruation"; } - } - grouping snmp_SessionUp-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // IPv6 BFD + leaf v6Bfd { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_BfdT; + description "Holds Interface BFD Configruation for IPV6 family"; } - } - - grouping snmp_Tbridge-group { - // Bridge newroot trap - container newroot-items { + // Passive-interface Info + leaf passive { - // Added containment as a singleton: Prefix=newroot - // Acquired From Package snmp - uses snmp_NewRoot-group; + type isis_PassiveIntfT; + description "Holds ISIS Passive Interface Info"; } - // Bridge topologychange trap - container topologychange-items { + // Interface Hello padding Info + leaf helloPad { - // Added containment as a singleton: Prefix=topologychange - // Acquired From Package snmp - uses snmp_TopologyChange-group; + type isis_HelloPadT; + description "Holds ISIS Interface Hello Padding Info"; } - } - - grouping snmp_NewRoot-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Interface Hello Interval Info + leaf helloIntvl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloIntvl; + description "Holds Interface Hello Interval value"; } - } - grouping snmp_TopologyChange-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Interval for Level-1 + leaf helloIntvlLvl1 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-1 value"; } - } - - grouping snmp_Tcallhome-group { - // callhome event-notify trap - container eventnotify-items { + // ISIS Hello Interval for Level-2 + leaf helloIntvlLvl2 { - // Added containment as a singleton: Prefix=eventnotify - // Acquired From Package snmp - uses snmp_EventNotify-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-2 value"; } - // callhome smtp-send-fail trap - container smtpsendfail-items { + // Hello Multiplier + leaf helloMult { - // Added containment as a singleton: Prefix=smtpsendfail - // Acquired From Package snmp - uses snmp_SmtpSendFail-group; + type isis_HelloMult; + description "Holds Interface Hello Multiplier value"; } - } - - grouping snmp_EventNotify-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Multiplier for Level-1 + leaf helloMultLvl1 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-1 value"; } - } - - grouping snmp_SmtpSendFail-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Multiplier for Level-2 + leaf helloMultLvl2 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-2 value"; } - } - grouping snmp_Tcfs-group { + // ISIS Priority for Level-1 + leaf priorityLvl1 { - // cfs state-change-notif trap - container statechangenotif-items { + type isis_CktPrio; + description "Holds ISIS Interface Level-1 Circuit Priority"; + } - // Added containment as a singleton: Prefix=statechangenotif - // Acquired From Package snmp - uses snmp_StateChangeNotif-group; + // ISIS Priority for Level-2 + leaf priorityLvl2 { + + type isis_CktPrio; + description "Holds ISIS Interface Level-2 Circuit Priority"; } - // cfs merge-failure trap - container mergefailure-items { + // ISIS Wide Metric MT2[IPV6] topology for Level-1 + leaf mt2MetricLvl1 { - // Added containment as a singleton: Prefix=mergefailure - // Acquired From Package snmp - uses snmp_MergeFailure-group; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-1"; } - } - grouping snmp_StateChangeNotif-group { + // ISIS Wide Metric MT2[IPV6] topology for Level-2 + leaf mt2MetricLvl2 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-2"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // ISIS CSNP Interval for Level-1 + leaf csnpIntvlLvl1 { + + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-1 CSNP Interval"; } - leaf isToggleAction { - config "false"; - type uint16; + + // ISIS CSNP Interval for Level-2 + leaf csnpIntvlLvl2 { + + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-2 CSNP Interval"; } - } - grouping snmp_MergeFailure-group { + leaf authType { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type isis_AuthT; + description "Holds Authentication Type value for ISIS Interface"; } - leaf isToggleAction { - config "false"; - type uint16; + + // Authentication Type for Level-1 + leaf authTypeLvl1 { + + type isis_AuthT; + description "Holds ISIS Level-1 Authentication Type value for Interface"; } - } - grouping snmp_Tconfig-group { + // Authentication Type for Level-2 + leaf authTypeLvl2 { - // config CLIRunningConfigChange trap - container ccmCLIRunningConfigChanged-items { + type isis_AuthT; + description "Holds ISIS Level-2 Authentication Type value for Interface"; + } - // Added containment as a singleton: Prefix=ccmCLIRunningConfigChanged - // Acquired From Package snmp - uses snmp_CLIRunningConfigChange-group; + // Authentication Key for ISIS Interface + leaf authKey { + + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface"; } - } - grouping snmp_CLIRunningConfigChange-group { + // Authentication Key for ISIS Interface on Level-1 + leaf authKeyLvl1 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-1"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Authentication Key for ISIS Interface on Level-2 + leaf authKeyLvl2 { + + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-2"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf mtuCheckLvl1 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level1"; + } + leaf mtuCheckLvl2 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level2"; + } + leaf mtuCheck { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface without specific Level"; + } + leaf nFlagClear { + type boolean; + default "true"; + description "Enabling N flag clear for ISIS interface"; } - } - - grouping snmp_Tentity-group { - // entity entitymibchange trap - container entitymibchange-items { + // Instance name + leaf instance { - // Added containment as a singleton: Prefix=entitymibchange - // Acquired From Package snmp - uses snmp_EntityMIBChange-group; + type isis_InstanceName; + description "Instance to which the interface belongs to"; } - // entity entitymodulestatuschange trap - container entitymodulestatuschange-items { + // Dom name + leaf dom { - // Added containment as a singleton: Prefix=entitymodulestatuschange - // Acquired From Package snmp - uses snmp_EntityModuleStatusChange-group; + type isis_DomName; + description "Dom to which the interface belongs to"; } - // entity entitypowerstatuschange trap - container entitypowerstatuschange-items { + // This object holds mesh group information per interface + container meshgrp-items { - // Added containment as a singleton: Prefix=entitypowerstatuschange - // Acquired From Package snmp - uses snmp_EntityPowerStatusChange-group; + uses isis_MeshGrp-group; + description "Holds ISIS interface Mesh Group Policy"; } - // entity entitymoduleinserted trap - container entitymoduleinserted-items { + // This object holds per level isis interface information + container lvl-items { + list IfLvl-list { + key "type"; - // Added containment as a singleton: Prefix=entitymoduleinserted - // Acquired From Package snmp - uses snmp_EntityModuleInserted-group; + uses isis_IfLvl-group; + description "IS-IS Interface Policy Per Level list"; + } + description "IS-IS Interface Policy Per Level"; } - // entity entitymoduleremoved trap - container entitymoduleremoved-items { + // This object holds per IF States information + container traffic-items { - // Added containment as a singleton: Prefix=entitymoduleremoved - // Acquired From Package snmp - uses snmp_EntityModuleRemoved-group; + uses isis_IfTraffic-group; + description "Interface Traffic Statistics"; } - // entity entityunrecognisedmodule trap - container entityunrecognisedmodule-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=entityunrecognisedmodule - // Acquired From Package snmp - uses snmp_EntityUnrecognisedModule-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // entity entityfanstatuschange trap - container entityfanstatuschange-items { + grouping itd_Entity-group { + description "ITD Entity"; - // Added containment as a singleton: Prefix=entityfanstatuschange - // Acquired From Package snmp - uses snmp_EntityFanStatusChange-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // entity entitypoweroutchange trap - container entitypoweroutchange-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=entitypoweroutchange - // Acquired From Package snmp - uses snmp_EntityPowerOutChange-group; + type nw_AdminSt; + description "Admin State"; } - // entity entitysensor trap - container entitysensor-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entitysensor - // Acquired From Package snmp - uses snmp_EntitySensor-group; + type nw_EntOperSt; + description "Operational State"; } - // entity entitymibenablestatusnotification trap - container cefcMIBEnableStatusNotification-items { + container inst-items { - // Added containment as a singleton: Prefix=cefcMIBEnableStatusNotification - // Acquired From Package snmp - uses snmp_EntityMIBEnableStatusNotification-group; + uses itd_Inst-group; + description "ITD Instance"; } } - grouping snmp_EntityMIBChange-group { + grouping itd_Inst-group { + description "ITD Instance"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf isToggleAction { - config "false"; - type uint16; + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - } - grouping snmp_EntityModuleStatusChange-group { + // Instance controls + leaf ctrl { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type nw_InstCtrl; + description "Controls"; + } + container devgrp-items { + list DeviceGroup-list { + key "dgName"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_DeviceGroup-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container prtgrp-items { + list PortGroup-list { + key "pgName"; + + uses itd_PortGroup-group; + } } - } + container service-items { + list Service-list { + key "name"; - grouping snmp_EntityPowerStatusChange-group { + uses itd_Service-group; + } + } + container sessiondevgrp-items { + list SessionDevGrp-list { + key "devGroupName"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_SessionDevGrp-group; + } + } + container refreshacl-items { + list AclAction-list { + key "aclName"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_AclAction-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container stats-items { + list StatsAction-list { + key "svcName"; + + uses itd_StatsAction-group; + } } } - grouping snmp_EntityModuleInserted-group { + grouping itd_DeviceGroup-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf dgName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_DevGrpNameType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; - } - } - grouping snmp_EntityModuleRemoved-group { + type itd_dgFaultBitmapT; + description "Error state for the device-group."; + } + container nodev4-items { + list Nodev4-list { + key "ip"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_Nodev4-group; + } + } + container nodev6-items { + list Nodev6-list { + key "ip"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_Nodev6-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntityUnrecognisedModule-group { + grouping itd_Nodev4-group { + leaf ip { + type address_Ipv4; + } + leaf weight { + type uint32; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf mode { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_nodeModeType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_nodeFaultBitmapT; + description "Error state for the IPV4 nodes."; } - } - grouping snmp_EntityFanStatusChange-group { + leaf port { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; + } + container stbynodev4-items { + list StandbyNodev4-list { + key "ip"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_StandbyNodev4-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntityPowerOutChange-group { + grouping itd_StandbyNodev4-group { + leaf ip { + type address_Ipv4; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_standbyNodeFaultBitmapT; + description "Error state for the standby IPV4 nodes."; } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntitySensor-group { + grouping itd_Probe-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf protocol { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_protocolType; + description "TBD"; } - } - - grouping snmp_EntityMIBEnableStatusNotification-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf port { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf frequency { + type uint32 { + range "0..604800"; + } + default "0"; + } + leaf retryDownCount { + type uint32 { + range "0..5"; + } + default "0"; + } + leaf retryUpCount { + type uint32 { + range "0..5"; + } + default "0"; + } + leaf timeout { + type uint32 { + range "0..604800"; + } + default "0"; } - } - - grouping snmp_Tfeaturecontrol-group { - // feature-control FeatureOpStatusChange trap - container FeatureOpStatusChange-items { + leaf dnshost { - // Added containment as a singleton: Prefix=FeatureOpStatusChange - // Acquired From Package snmp - uses snmp_FeatureOpStatusChange-group; + type itd_DnsHostType; + description "TBD"; + } + leaf probeIp { + type address_Ipv4; } - // feature-control CiscoFeatOpStatusChange trap - container ciscoFeatOpStatusChange-items { + leaf httpGetStr { - // Added containment as a singleton: Prefix=ciscoFeatOpStatusChange - // Acquired From Package snmp - uses snmp_CiscoFeatOpStatusChange-group; + type itd_HttpStringType; + description "TBD"; } - } - - grouping snmp_FeatureOpStatusChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf ctrlStatusEnable { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_ctrlType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_probeFaultBitmapT; + description "Error state for probes."; } } - grouping snmp_CiscoFeatOpStatusChange-group { + grouping itd_Nodev6-group { + leaf ip { + type address_Ipv6; + } + leaf weight { + type uint32; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf mode { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_nodeModeType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_nodeFaultBitmapT; + description "Error state for the IPV6 nodes."; } - } + container stbynodev6-items { + list StandbyNodev6-list { + key "ip"; - grouping snmp_Thsrp-group { + uses itd_StandbyNodev6-group; + } + } - // hsrp statechange trap - container statechange-items { + container probe-items { - // Added containment as a singleton: Prefix=statechange - // Acquired From Package snmp - uses snmp_StateChange-group; + uses itd_Probe-group; } } - grouping snmp_StateChange-group { + grouping itd_StandbyNodev6-group { + leaf ip { + type address_Ipv6; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_standbyNodeFaultBitmapT; + description "Error state for the standby IPV6 nodes."; } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_Tgeneric-group { + grouping itd_PortGroup-group { - // generic coldstart trap - container coldStart-items { + leaf pgName { - // Added containment as a singleton: Prefix=coldStart - // Acquired From Package snmp - uses snmp_ColdStart-group; + type itd_PortGrpNameType; + description "TBD"; } + container if-items { + list L2If-list { + key "name"; - // generic warmstart trap - container warmStart-items { - - // Added containment as a singleton: Prefix=warmStart - // Acquired From Package snmp - uses snmp_WarmStart-group; + uses itd_L2If-group; + } } } - grouping snmp_ColdStart-group { + grouping itd_L2If-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type nw_IfId; + description "TBD"; } } - grouping snmp_WarmStart-group { + grouping itd_Service-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_SvcNameType; + description "TBD"; } - } - grouping snmp_Tip-group { + leaf adminSt { - // ip sla trap - container sla-items { + type itd_AdminSt; + description "TBD"; + } - // Added containment as a singleton: Prefix=sla - // Acquired From Package snmp - uses snmp_Sla-group; + leaf defaultDevGroup { + + type itd_DevGrpNameType; + description "TBD"; } - } - grouping snmp_Sla-group { + leaf defaultPortGroup { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_PortGrpNameType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf excludeACL { + + type itd_AclNameType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf vrf { + + type itd_vrfName; + description "TBD"; } - } - grouping snmp_Tlicense-group { + leaf failactionMode { - // license Notify licenseexpiry trap - container notifylicenseexpiry-items { + type itd_failactionType; + description "TBD"; + } - // Added containment as a singleton: Prefix=notifylicenseexpiry - // Acquired From Package snmp - uses snmp_NotifyLicenseExpiry-group; + leaf lbMethod { + + type itd_LBMethod; + description "TBD"; } - // license Notify LicenseExpiryWarning trap - container notifylicenseexpirywarning-items { + leaf lbProtocol { - // Added containment as a singleton: Prefix=notifylicenseexpirywarning - // Acquired From Package snmp - uses snmp_NotifyLicenseExpiryWarning-group; + type itd_protocolType; + description "TBD"; } - // license Notify licensefilemissing trap - container notifylicensefilemissing-items { + leaf rangeX { - // Added containment as a singleton: Prefix=notifylicensefilemissing - // Acquired From Package snmp - uses snmp_NotifyLicenseFileMissing-group; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - // license Notifynolicenceforfeature trap - container notifynolicenseforfeature-items { + leaf rangeY { - // Added containment as a singleton: Prefix=notifynolicenseforfeature - // Acquired From Package snmp - uses snmp_NotifyNoLicenceForFeature-group; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - } - grouping snmp_NotifyLicenseExpiry-group { + leaf bucket { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_BucketNumType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf maskPosition { + + type itd_MaskPosType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf natDestination { + + type itd_ctrlType; + description "TBD"; } - } - grouping snmp_NotifyLicenseExpiryWarning-group { + leaf peerLocalServiceName { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_SvcNameType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf sourceIntf { + + type nw_IfId; + description "Source interface for probe generation."; } - leaf isToggleAction { - config "false"; - type uint16; + leaf leastBit { + type boolean; } - } - grouping snmp_NotifyLicenseFileMissing-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_serviceFaultBitmapT; + description "Error state for service."; } - leaf isToggleAction { - config "false"; - type uint16; + container if-items { + list IngressIf-list { + key "name"; + + uses itd_IngressIf-group; + } } - } + container vlan-items { + list SourceVlan-list { + key "name"; - grouping snmp_NotifyNoLicenceForFeature-group { + uses itd_SourceVlan-group; + } + } + container acl-items { + list Accesslist-list { + key "name"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_Accesslist-group; + } + } + container vipv4-items { + list VirtualIPv4-list { + key "ip subnet protocol port"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_VirtualIPv4-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container vipv6-items { + list VirtualIPv6-list { + key "ip prefix protocol port"; + + uses itd_VirtualIPv6-group; + } } } - grouping snmp_Tpoe-group { + grouping itd_IngressIf-group { - // POE police notify trap - container policenotify-items { + leaf name { - // Added containment as a singleton: Prefix=policenotify - // Acquired From Package snmp - uses snmp_PoliceNotify-group; + type nw_IfId; + description "TBD"; } - // POE control enable notify trap - container controlenable-items { + leaf propFaultBitmap { + config "false"; - // Added containment as a singleton: Prefix=controlenable - // Acquired From Package snmp - uses snmp_ControlEnable-group; + type itd_ingressIfFaultBitmapT; + description "Error state for the ingress interface."; } } - grouping snmp_PoliceNotify-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; - } + grouping itd_SourceVlan-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l2_DomId; + description "TBD"; } } - grouping snmp_ControlEnable-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; + grouping itd_Accesslist-group { + + leaf name { + + type itd_AclNameType; + description "TBD"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf deviceGroup { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_DevGrpNameType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf isIPv6 { + type boolean; } } - grouping snmp_Tlink-group { - - // link Ciscoxcvrmonstatuschange trap - container ciscoxcvrmonstatuschg-items { - - // Added containment as a singleton: Prefix=ciscoxcvrmonstatuschg - // Acquired From Package snmp - uses snmp_CiscoXcvrMonStatusChange-group; + grouping itd_VirtualIPv4-group { + leaf ip { + type address_Ipv4; } - - // link linkdown trap - container linkDown-items { - - // Added containment as a singleton: Prefix=linkDown - // Acquired From Package snmp - uses snmp_LinkDown-group; + leaf subnet { + type address_Ipv4; + } + leaf advertise { + type boolean; + } + leaf active { + type boolean; } - // link linkup trap - container linkUp-items { + leaf deviceGroup { - // Added containment as a singleton: Prefix=linkUp - // Acquired From Package snmp - uses snmp_LinkUp-group; + type itd_DevGrpNameType; + description "TBD"; } - // link extended linkdown trap - container extendedlinkDown-items { + leaf protocol { - // Added containment as a singleton: Prefix=extendedlinkDown - // Acquired From Package snmp - uses snmp_ExtendedLinkDown-group; + type itd_protocolType; + description "TBD"; } - // link extended linkup trap - container extendedlinkUp-items { + leaf port { - // Added containment as a singleton: Prefix=extendedlinkUp - // Acquired From Package snmp - uses snmp_ExtendedLinkUp-group; + type address_PortNumber; + description "TBD"; } + } - // link cielinkdown trap - container cieLinkDown-items { - - // Added containment as a singleton: Prefix=cieLinkDown - // Acquired From Package snmp - uses snmp_CieLinkDown-group; + grouping itd_VirtualIPv6-group { + leaf ip { + type address_Ipv6; } - // link Cie linkup trap - container cieLinkUp-items { + leaf prefix { - // Added containment as a singleton: Prefix=cieLinkUp - // Acquired From Package snmp - uses snmp_CieLinkUp-group; + type itd_Prefix; + description "TBD"; + } + leaf advertise { + type boolean; + } + leaf active { + type boolean; } - // link delayedlinkstatechange trap - container delayedlinkstatechange-items { + leaf deviceGroup { - // Added containment as a singleton: Prefix=delayedlinkstatechange - // Acquired From Package snmp - uses snmp_DelayedLinkStateChange-group; + type itd_DevGrpNameType; + description "TBD"; } - // link cErrDisableInterfaceEventRev1 trap - container cerrdisableinterfaceeventrev1-items { + leaf protocol { - // Added containment as a singleton: Prefix=cerrdisableinterfaceeventrev1 - // Acquired From Package snmp - uses snmp_CErrDisableInterfaceEventRev1-group; + type itd_protocolType; + description "TBD"; } - // link cmnMacMoveNotification trap - container cmnmacmovenotification-items { + leaf port { - // Added containment as a singleton: Prefix=cmnmacmovenotification - // Acquired From Package snmp - uses snmp_CmnMacMoveNotification-group; + type address_PortNumber; + description "TBD"; } } - grouping snmp_CiscoXcvrMonStatusChange-group { + grouping itd_SessionDevGrp-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf devGroupName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_DevGrpNameType; + description "TBD"; } - } - grouping snmp_LinkDown-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf sessAction { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_sessActionType; + description "TBD"; } - leaf isToggleAction { + leaf actionSet { config "false"; - type uint16; + type boolean; } - } + container nodev4-items { + list SessNodev4-list { + key "ip"; - grouping snmp_LinkUp-group { + uses itd_SessNodev4-group; + } + } + container nodev6-items { + list SessNodev6-list { + key "ip"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_SessNodev6-group; + } + } + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + grouping itd_SessNodev4-group { + leaf ip { + type address_Ipv4; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf action { + + type itd_sessNodeActionType; + description "TBD"; } } - grouping snmp_ExtendedLinkDown-group { + grouping itd_SessNodev6-group { + leaf ip { + type address_Ipv6; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf action { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_sessNodeActionType; + description "TBD"; } } - grouping snmp_ExtendedLinkUp-group { + grouping itd_AclAction-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf aclName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_AclNameType; + description "TBD"; } - leaf isToggleAction { + leaf refreshSet { config "false"; - type uint16; + type boolean; } } - grouping snmp_CieLinkDown-group { + grouping itd_StatsAction-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf svcName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_SvcNameType; + description "TBD"; } - leaf isToggleAction { + + leaf startStats { + + type itd_statsActionType; + description "TBD"; + } + leaf clearStats { + type boolean; + } + leaf statsSet { config "false"; - type uint16; + type boolean; } } - grouping snmp_CieLinkUp-group { + grouping lacp_Entity-group { + description "LACP Entity"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // This objects hold per lacp instance information. There is only + // one instance of lacp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses lacp_Inst-group; + description "LACP Instance"; } } - grouping snmp_DelayedLinkStateChange-group { + grouping lacp_Inst-group { + description "LACP Instance"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative system priority + leaf adminPrio { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type lacp_SysPrio; + description "LACP instance adminstrative priority"; } - } - grouping snmp_CErrDisableInterfaceEventRev1-group { - leaf toggleState { - config "false"; - type uint16; + // Administrative System mac + leaf adminSysMac { + + type lacp_SysMac; + description "System MAC"; } - leaf toggleStateCount { - config "false"; - type uint16; + + // Administrative Role + leaf adminRole { + + type lacp_SysRole; + description "System Role"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Instance Control Fields + leaf lacpctrl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_LACPInstCtrl; + description "Instance Control"; } - leaf isToggleAction { + + // Operational system priority + leaf operPrio { config "false"; - type uint16; + + type lacp_SysPrio; + description "Specifies the LACP instance operational system priority"; } - } - grouping snmp_CmnMacMoveNotification-group { - leaf toggleState { + // System mac + leaf sysMac { config "false"; - type uint16; + + type lacp_SysMac; + description "System MAC"; } - leaf toggleStateCount { + + // Operational Role + leaf operRole { config "false"; - type uint16; + + type lacp_SysRole; + description "System Role"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf isToggleAction { - config "false"; - type uint16; + + // This object holds lacp information that is operated at a + // interface (member port of the port channel) level + container if-items { + list If-list { + key "id"; + + uses lacp_If-group; + description "LACP Interface list"; + } + description "LACP Interface"; } } - grouping snmp_Tlldp-group { + grouping lacp_If-group { + description "LACP Interface"; - // lldp RemTablesChange trap - container lldpRemTablesChange-items { + // Port priority - LACP uses the port priority to decide + // which ports should be put in standby mode when there + // is a limitation that prevents all compatible ports + // from aggregating and which ports should be put into + // active mode. A higher port priority value means a + // lower priority for LACP + leaf prio { - // Added containment as a singleton: Prefix=lldpRemTablesChange - // Acquired From Package snmp - uses snmp_LldpRemTablesChange-group; + type lacp_PortPrio; + description "Specifies the LACP Interface Port Priority"; } - } - grouping snmp_LldpRemTablesChange-group { + // Transmit rate, the rate at which the packets are + // transmitted + leaf txRate { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type lacp_TxRate; + description "Specifies the rate at which the LACP Packets are transmitted"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Activity flags + leaf activityFlags { + config "false"; + + type lacp_ActivityFlags; + description "Specifies the LACP interface activity flags"; } - leaf isToggleAction { + leaf lastActive { config "false"; - type uint16; + type union { + type string; + type uint64; + } + description "Indicates the last operationally active timestamp on the LACP interface"; } - } - - grouping snmp_Tmsdp-group { - // msdp BackwardTransition trap - container msdpBackwardTransition-items { + // Local port num + leaf port { + config "false"; - // Added containment as a singleton: Prefix=msdpBackwardTransition - // Acquired From Package snmp - uses snmp_MsdpBackwardTransition-group; + type lacp_PortNum; + description "Specifies the LACP interface local port number"; } - } - - grouping snmp_MsdpBackwardTransition-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port priority + leaf operPrio { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_PortPrio; + description "Specifies the LACP Interface Operational Port Priority"; } - leaf isToggleAction { + + // Operational key + leaf key { config "false"; - type uint16; + + type lacp_Key; + description "Specifies the LACP Interface Operational Key"; } - } - grouping snmp_Tmmode-group { + // Interface ID of this endpoint + leaf id { - // mmode CseMaintModeChangeNotify trap - container cseMaintModeChangeNotify-items { + type nw_IfId; + description "Interface Identifier of this endpoint"; + } - // Added containment as a singleton: Prefix=cseMaintModeChangeNotify - // Acquired From Package snmp - uses snmp_CseMaintModeChangeNotify-group; + // This object holds lacp neighbor information + container adj-items { + + uses lacp_AdjEp-group; + description "Adjacency"; } - // mmode CseNormalModeChangeNotify trap - container cseNormalModeChangeNotify-items { + // This object holds lacp intf statistics operational information. + // This is a singleton within an intferace + container ifstats-items { - // Added containment as a singleton: Prefix=cseNormalModeChangeNotify - // Acquired From Package snmp - uses snmp_CseNormalModeChangeNotify-group; + uses lacp_IfStats-group; + description "Interface Statistics"; } } - grouping snmp_CseMaintModeChangeNotify-group { + grouping lacp_AdjEp-group { + description "Adjacency"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor system priority + leaf sysPrio { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_SysPrio; + description "Specifies the Adjacency Neighbor System Priority"; } - leaf isToggleAction { + + // Neighbor system id + leaf sysId { config "false"; - type uint16; - } - } - grouping snmp_CseNormalModeChangeNotify-group { + type lacp_SysMac; + description "Specifies the Adjacency Neighbor System ID"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor Port number + leaf port { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_PortNum; + description "Specifies the Adjacency Neighbor Port Number"; } - leaf isToggleAction { + + // Neighbor port priority + leaf portPrio { config "false"; - type uint16; - } - } - grouping snmp_Tpim-group { + type lacp_PortPrio; + description "Neighbor Port Priority"; + } - // pim PimNeighborloss trap - container pimNeighborLoss-items { + // Neighbor activity flags + leaf activityFlags { + config "false"; - // Added containment as a singleton: Prefix=pimNeighborLoss - // Acquired From Package snmp - uses snmp_PimNeighborLoss-group; + type lacp_ActivityFlags; + description "Specifies the LACP Adjacency Neighbor Activity Flags"; } - } - - grouping snmp_PimNeighborLoss-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor oper key + leaf key { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_Key; + description "Specifies the Adjacency Neighbor Operational Key"; } - leaf isToggleAction { + + leaf name { config "false"; - type uint16; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } } - grouping snmp_Trf-group { + grouping lacp_IfStats-group { + description "Interface Statistics"; - // rf redundancyframework trap - container redundancyframework-items { + // LACP Interface Stats Number of LACP pdus sent + leaf pduSent { + config "false"; - // Added containment as a singleton: Prefix=redundancyframework - // Acquired From Package snmp - uses snmp_RedundancyFramework-group; + type nw_Counter64; + description "Number of PDUs Sent"; } - } - - grouping snmp_RedundancyFramework-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Number of LACP pdus received + leaf pduRcvd { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_Counter64; + description "Number of PDUs Received"; } - leaf isToggleAction { + + // Number of marker sent + leaf markerSent { config "false"; - type uint16; - } - } - grouping snmp_Trmon-group { + type nw_Counter64; + description "Number of Markers Sent"; + } - // rmon RisingAlarm trap - container risingAlarm-items { + // Number of marker received + leaf markerRcvd { + config "false"; - // Added containment as a singleton: Prefix=risingAlarm - // Acquired From Package snmp - uses snmp_RisingAlarm-group; + type nw_Counter64; + description "Number of Markers Received"; } - // rmon FallingAlarm trap - container fallingAlarm-items { + // Number of marker response sent + leaf markerRspSent { + config "false"; - // Added containment as a singleton: Prefix=fallingAlarm - // Acquired From Package snmp - uses snmp_FallingAlarm-group; + type nw_Counter64; + description "Number of Marker Responses Sent"; } - // rmon HcRisingAlarm trap - container hcRisingAlarm-items { + // Number of marker reponse received + leaf markerRspRcvd { + config "false"; - // Added containment as a singleton: Prefix=hcRisingAlarm - // Acquired From Package snmp - uses snmp_HcRisingAlarm-group; + type nw_Counter64; + description "Number of Marker Responses Received"; } - // rmon HcFallingAlarm trap - container hcFallingAlarm-items { + // Number of error packets received + leaf errPktRcvd { + config "false"; - // Added containment as a singleton: Prefix=hcFallingAlarm - // Acquired From Package snmp - uses snmp_HcFallingAlarm-group; + type nw_Counter64; + description "Number of Error Packets Received"; } - } - grouping snmp_RisingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Number of PDU timeout count + leaf pduTimeoutCount { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_Counter64; + description "Number of PDU timeout received"; } - leaf isToggleAction { + + // Number of flaps + leaf flapCount { config "false"; - type uint16; + + type nw_Counter64; + description "Number of flaps on this port"; } } - grouping snmp_FallingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + grouping mgmt_MgmtIf-group { + description "Management Interface"; + leaf mediaType { + type enumeration { + enum sfp { + value 7; + } + enum rj45 { + value 8; + } + enum auto { + value 9; + } + } + default "auto"; + description "Configuring the interface media-type"; } - } - - grouping snmp_HcRisingAlarm-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - } - grouping snmp_HcFallingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type naming_Descr1024 { + length "0..254"; + } + description "descr"; } - } - - grouping snmp_Tsnmp-group { - // snmp authentication trap - container authentication-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=authentication - // Acquired From Package snmp - uses snmp_Authentication-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping snmp_Authentication-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_AdminSt; + description "Administrative Port State"; } - } - - grouping snmp_Tstpx-group { - // stpx inconsistency trap - container inconsistency-items { + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { - // Added containment as a singleton: Prefix=inconsistency - // Acquired From Package snmp - uses snmp_Inconsistency-group; + type l1_Speed; + description "Administrative Port Speed"; } - // stpx rootinconsistency trap - container rootinconsistency-items { + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { - // Added containment as a singleton: Prefix=rootinconsistency - // Acquired From Package snmp - uses snmp_RootInconsistency-group; + type l1_Duplex; + description "Duplex"; } - // stpx Loopinconsistency trap - container loopinconsistency-items { + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { - // Added containment as a singleton: Prefix=loopinconsistency - // Acquired From Package snmp - uses snmp_LoopInconsistency-group; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - } - - grouping snmp_Inconsistency-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_Mtu; + description "Administrative port MTU"; } - } - grouping snmp_RootInconsistency-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - } - - grouping snmp_LoopInconsistency-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Mgmt interface + container mgmt-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses im_MgmtIf-group; + description "Managment Interface"; } - } - grouping snmp_Tsysmgr-group { - - // sysmgr CseFailSwCoreNotifyExtended trap - container cseFailSwCoreNotifyExtended-items { + // Mgmt0 interface capabilities + container portcap-items { - // Added containment as a singleton: Prefix=cseFailSwCoreNotifyExtended - // Acquired From Package snmp - uses snmp_CseFailSwCoreNotifyExtended-group; + uses im_PortCap-group; + description "Port Capability"; } - } - - grouping snmp_CseFailSwCoreNotifyExtended-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container rtrtdMgmtConf-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses mgmt_RtRtdMgmtConf_target-group; } - } - - grouping snmp_Tsystem-group { - // system ClockChangeNotification trap - container Clockchangenotification-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=Clockchangenotification - // Acquired From Package snmp - uses snmp_ClockChangeNotification-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - } - - grouping snmp_ClockChangeNotification-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIfIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IfIn-group; + description "Interface Input Counters"; } - } - - grouping snmp_Tupgrade-group { - // upgrade UpgradeJobStatusNotify trap - container UpgradeJobStatusNotify-items { + container dbgIfOut-items { - // Added containment as a singleton: Prefix=UpgradeJobStatusNotify - // Acquired From Package snmp - uses snmp_UpgradeJobStatusNotify-group; + uses rmon_IfOut-group; + description "Interface Output Counters"; } - } - - grouping snmp_UpgradeJobStatusNotify-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIpIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IpIn-group; + description "IPV4 Input Counters"; } - } - - grouping snmp_Tvsan-group { - // vsan PortMembershipChange trap - container vsanPortMembershipChange-items { + container dbgDot1d-items { - // Added containment as a singleton: Prefix=vsanPortMembershipChange - // Acquired From Package snmp - uses snmp_VsanPortMembershipChange-group; + uses rmon_Dot1d-group; + description "Dot1d Counters"; } - // vsan vsanStatusChange trap - container vsanStatusChange-items { + container dbgEtherStats-items { - // Added containment as a singleton: Prefix=vsanStatusChange - // Acquired From Package snmp - uses snmp_VsanStatusChange-group; + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; } - } - - grouping snmp_VsanPortMembershipChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgDot3Stats-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; } - } - - grouping snmp_VsanStatusChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIfHCIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; } - } - - grouping snmp_Tvtp-group { - // vtp notifs trap - container notifs-items { + container dbgIfHCOut-items { - // Added containment as a singleton: Prefix=notifs - // Acquired From Package snmp - uses snmp_Notifs-group; + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; } - // vtp vlancreate trap - container vlancreate-items { + container dbgIpv6IfStats-items { - // Added containment as a singleton: Prefix=vlancreate - // Acquired From Package snmp - uses snmp_Vlancreate-group; + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; } - // vtp vlandelete trap - container vlandelete-items { + container dbgIfStorm-items { - // Added containment as a singleton: Prefix=vlandelete - // Acquired From Package snmp - uses snmp_Vlandelete-group; + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; } } - grouping snmp_Notifs-group { + grouping im_MgmtIf-group { + description "Managment Interface"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_OperSt; + description "Runtime state of the object or policy"; } - leaf isToggleAction { + + // Operational port status reason + leaf operStQual { config "false"; - type uint16; - } - } - grouping snmp_Vlancreate-group { + type l1_OperStQual; + description "Chassis Operational Port Status Qualifier"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port speed + leaf operSpeed { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_Speed; + description "Operational Port Speed"; } - leaf isToggleAction { + + // Operational duplex + leaf operDuplex { config "false"; - type uint16; - } - } - grouping snmp_Vlandelete-group { + type l1_Duplex; + description "Operational Duplex"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational physical port layer + leaf operPhyLayer { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_PhyLayer; + description "Operational Physical Port Layer"; } - leaf isToggleAction { + leaf backplaneMac { config "false"; - type uint16; + type address_Mac; + description "Port Backplane Mac"; } - } - - grouping snmp_Tportsecurity-group { - - // port-security access-secure-mac-violation - container accesssecuremacviolation-items { - - // Added containment as a singleton: Prefix=accesssecuremacviolation - // Acquired From Package snmp - uses snmp_AccessSecureMacViolation-group; + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router Mac"; + } + leaf portInitEvalFlag { + config "false"; + type uint8; + description "Port Initialize Evaluation Flag"; } - // port-security trunk-secure-mac-violation - container trunksecuremacviolation-items { + // Operational Mtu + leaf operMtu { + config "false"; - // Added containment as a singleton: Prefix=trunksecuremacviolation - // Acquired From Package snmp - uses snmp_TrunkSecureMacViolation-group; + type l1_Mtu; + description "Operational Mtu"; + } + leaf iod { + config "false"; + type uint64; + description "Specifies the IOD"; } - } - - grouping snmp_AccessSecureMacViolation-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Vdc id + leaf vdcId { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l2_VdcId; + description "Vdc Id"; } - leaf isToggleAction { + leaf lastLinkStChg { config "false"; - type uint16; + type union { + type string; + type uint64; + } + description "Holds the Last Link State Change"; } } - grouping snmp_TrunkSecureMacViolation-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { + grouping im_PortCap-group { + description "Port Capability"; + leaf portCap { config "false"; - type uint16; + type uint32; + description "Port Capability Flags"; } } - grouping snmp_Tmpls-group { + grouping logging_Logging-group { + description "Logging root node for logging operations"; - // ldp trap - container ldp-items { + container loglevel-items { - // Added containment as a singleton: Prefix=ldp - // Acquired From Package snmp - uses snmp_Ldp-group; + uses logging_LogLevel-group; + description "Logging level root node for all facilities"; } } - grouping snmp_Ldp-group { + grouping logging_LogLevel-group { + description "Logging level root node for all facilities"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf all { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type logging_LoggingEnableAll; + default "unspecified"; + description "Logging level all state disabled/enabled"; } - // ldp session-down trap - container ldpsessiondown-items { + leaf severityLevel { - // Added containment as a singleton: Prefix=ldpsessiondown - // Acquired From Package snmp - uses snmp_LdpSessiondown-group; + type syslog_Severity; + description "Logging severity level for all the facilites"; } + container facility-items { + list Facility-list { + key "facilityName"; - // ldp session-up trap - container ldpsessionup-items { - - // Added containment as a singleton: Prefix=ldpsessionup - // Acquired From Package snmp - uses snmp_LdpSessionup-group; + uses logging_Facility-group; + description "Syslog Logging Levels For Individual Facilities list"; + } + description "Syslog Logging Levels For Individual Facilities"; } } - grouping snmp_LdpSessiondown-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; - } - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + grouping logging_Facility-group { + description "Syslog Logging Levels For Individual Facilities"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; - } - } + leaf facilityName { - grouping snmp_LdpSessionup-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; + type comp_DelimitedString; + description "Facility Name of individual processes subscribed for logging level"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf severityLevel { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type syslog_Severity; + description "Logging severity level for individual facility name"; } } - grouping snmp_RemoteUser-group { + grouping snmp_Entity-group { + description "SNMP Entity"; - // User name - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf userName { - description "snmp-server user name"; + leaf name { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authpwd { - description "Auth Password"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_AuthPasswd; + type nw_AdminSt; + description "Admin State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encAuthpwd { + // Operational state + leaf operSt { config "false"; - description "Encrypted Auth Password"; - // Type is an MO-Defined-Type - type snmp_EncryptedAuthArray; - } - leaf authPwdLen { - config "false"; - type uint32; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authtype { - description "Auth Protocol Type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type snmp_AuthTypeT; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privpwd { - description "Priv Password"; + // This objects hold per snmp instance information + container inst-items { - // Type is an MO-Defined-Type - type snmp_PrivPasswd; + uses snmp_Inst-group; + description "SNMP Instance"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encPrivpwd { - config "false"; - description "Encrypted Priv Password"; + // Snmp server system shutdown control MO + container servershutdown-items { - // Type is an MO-Defined-Type - type snmp_EncryptedPrivArray; - } - leaf privPwdLen { - config "false"; - type uint32; + uses snmp_ServerShutdown-group; + description "SNMP server system shutdown"; } + } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privtype { - description "Priv Protocol Type"; + grouping snmp_Inst-group { + description "SNMP Instance"; - // Type is an MO-Defined-Type - type snmp_PrivTypeT; - } - leaf islocalizedkey { - type boolean; - } - leaf isenforcepriv { - type boolean; + // Logging Level + leaf loggingLevel { + + type snmp_SnmpLogLevel; + description "Set level for SNMP syslog messages"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineId { - description "Configured Engine Id"; + // Engine Id + leaf engId { - // Type is an MO-Defined-Type type snmp_EngId; + description "Engine Id"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineIdlen { - description "Configured Engine Id len"; + leaf unknownEngId { - // Type is an MO-Defined-Type - type snmp_EngIdLen; + type snmp_Boolean; + default "no"; + description "Indicates the Unknown Engine Id MO thats needs to be created"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf isAaaNotify { - config "false"; - description "Notify to AAA"; + leaf unknownUser { - // Type is an MO-Defined-Type type snmp_Boolean; + default "no"; + description "Indicates the Unknown User MO thats needs to be created"; } - } - - grouping snmp_LocalUser-group { - // User name - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf userName { - description "snmp-server user name"; + leaf name { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authpwd { - description "Auth Password"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type snmp_AuthPasswd; + type naming_Descr; + description "TBD"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encAuthpwd { - config "false"; - description "Encrypted Auth Password"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type snmp_EncryptedAuthArray; - } - leaf authPwdLen { - config "false"; - type uint32; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authtype { - description "Auth Protocol Type"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_AuthTypeT; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privpwd { - description "Priv Password"; + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_PrivPasswd; + type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encPrivpwd { - config "false"; - description "Encrypted Priv Password"; + // Access control based on ip addresses and communities. + // This is valid only with v1/v2c security Client group + container clgrp-items { + list ClientGrp-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_EncryptedPrivArray; + uses snmp_ClientGrp-group; + description "Client Group list"; + } + description "Client Group"; } - leaf privPwdLen { - config "false"; - type uint32; + + container globals-items { + + uses snmp_Globals-group; + description "The global info maintained by SNMP"; } + container host-items { + list Host-list { + key "hostName udpPortID"; - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privtype { - description "Priv Protocol Type"; + uses snmp_Host-group; + description "Snmp Host Configuration MO list"; + } + description "Snmp Host Configuration MO"; + } - // Type is an MO-Defined-Type - type snmp_PrivTypeT; + container rmon-items { + + uses snmp_Rmon-group; + description "Snmp RMON configurations"; } - leaf islocalizedkey { - type boolean; + + // Security policy using communities. Uses a community + // string match for authentication + container community-items { + list CommSecP-list { + key "name"; + + uses snmp_CommSecP-group; + description "Community Security Policy list"; + } + description "Community Security Policy"; } - leaf isenforcepriv { - type boolean; + + // Authentication policy using user names + container user-items { + list UserSecP-list { + key "name"; + + uses snmp_UserSecP-group; + description "User Security Policy list"; + } + description "User Security Policy"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineId { - description "Configured Engine Id"; + // This objects holds snmp context information + container ctx-items { + list Ctx-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_EngId; + uses snmp_Ctx-group; + description "Context list"; + } + description "Context"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineIdlen { - description "Configured Engine Id len"; + container sysinfo-items { - // Type is an MO-Defined-Type - type snmp_EngIdLen; + uses snmp_SysInfo-group; + description "The System Info maintained by SNMP"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf isAaaNotify { - config "false"; - description "Notify to AAA"; + container traps-items { - // Type is an MO-Defined-Type - type snmp_Boolean; + uses snmp_Traps-group; + description "Snmp Trap COnfiguration"; } - container group-items { - list UserGroup-list { - key "groupName"; + container rmtUser-items { + list RemoteUser-list { + key "userName usrengineId"; - // Added containment: Prefix=group - // Acquired From Package snmp - uses snmp_UserGroup-group; + uses snmp_RemoteUser-group; + description "Snmp remote user notification target list"; + } + description "Snmp remote user notification target"; + } + container lclUser-items { + list LocalUser-list { + key "userName"; + + uses snmp_LocalUser-group; + description "Snmp local user list"; } + description "Snmp local user"; } } - grouping snmp_UserGroup-group { + grouping snmp_ClientGrp-group { + description "Client Group"; - // Group name - // Type is an MO-Defined-Type - leaf groupName { - description "snmp-server user name"; + // The vrf that this client group belongs to + leaf vrf { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type l3_VrfName; + description "VRF"; } - } - grouping syslog_Acct-group { - leaf timerTick { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_OSSum; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf epgDn { config "false"; - description "Admin State"; + type string; + } + container client-items { + list Client-list { + key "addr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses snmp_Client-group; + description "Client Entry list"; + } + description "Client Entry"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rscommSecPClientGrpAtt-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + list RsCommSecPClientGrpAtt-list { + config "false"; + key "tDn"; + + uses snmp_RsCommSecPClientGrpAtt_source-group; + description "Community Security Policy Attachment list"; + } + description "Community Security Policy Attachment"; } } - grouping syslog_Syslog-group { + grouping snmp_Client-group { + description "Client Entry"; - container timestamp-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=timestamp - // Acquired From Package syslog - uses syslog_TimeStamp-group; + type nw_OSSum; + description "Operational State"; } - container level-items { - list Level-list { - key "facility"; - // Added containment: Prefix=level - // Acquired From Package syslog - uses syslog_Level-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; + } + leaf addr { + type address_Ip; + description "Client Address"; } + } - container monitor-items { + grouping snmp_Globals-group { + description "The global info maintained by SNMP"; - // Added containment as a singleton: Prefix=monitor - // Acquired From Package syslog - uses syslog_TermMonitor-group; + leaf aaaUserCacheTimeout { + + type snmp_AaaUserCacheTimeout; + description "Timeout for AAA Cache"; } - container console-items { + leaf protocolEnable { - // Added containment as a singleton: Prefix=console - // Acquired From Package syslog - uses syslog_Console-group; + type snmp_Boolean; + description "Enable/Disable snmp protocol operations"; } - container rdst-items { - list RemoteDest-list { - key "host"; - // Added containment: Prefix=rdst - // Acquired From Package syslog - uses syslog_RemoteDest-group; - } + leaf counterCacheEnable { + + type snmp_Boolean; + description "Enable port stats cache"; } - container source-items { + leaf counterCacheTimeout { - // Added containment as a singleton: Prefix=source - // Acquired From Package syslog - uses syslog_SourceInterface-group; + type snmp_CounterCacheTimeout; + description "Timeout for port stats cache"; } - container file-items { + // If-mib Ifalias long setting + leaf enableIfAliasLong { - // Added containment as a singleton: Prefix=file - // Acquired From Package syslog - uses syslog_File-group; + type snmp_Boolean; + default "no"; + description "Enable long description upto 256 characters for interface alias"; } - container inst-items { + // SNMP SERVER enforce privacy protocol + leaf enforcePrivacy { - // Added containment as a singleton: Prefix=inst - // Acquired From Package syslog - uses syslog_Inst-group; + type snmp_Boolean; + default "no"; + description "Globally enforce privacy for all the users"; } - } - - grouping syslog_TimeStamp-group { - // Type is an MO-Defined-Type - leaf format { - description "Format"; + // SNMP SERVER Packet Size + leaf pktSize { - // Type is an MO-Defined-Type - type syslog_TimeStampFormat; + type snmp_PktSizeT; + description "Packet size config"; } - } - grouping syslog_Level-group { + // tcp-session auth config + leaf tcpSessionAuth { - // Type is an MO-Defined-Type - leaf facility { - description "Facility Name"; + type snmp_tcpSessionAuthT; + description "tcp-session auth config"; + } - // Type is an MO-Defined-Type - type syslog_Facility; + container srcInterfaceTraps-items { + + uses snmp_SourceInterfaceTraps-group; + description "SNMP source interface for traps"; } - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf severity { - description "Severity"; + container srcInterfaceInforms-items { - // Type is a Local-MO-Defined-Type - type syslog_Severity_Level_severity; + uses snmp_SourceInterfaceInforms-group; + description "SNMP source interface for informs"; } } - grouping syslog_TermMonitor-group { + grouping snmp_SourceInterfaceTraps-group { + description "SNMP source interface for traps"; - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; + leaf ifname { - // Type is an MO-Defined-Type - type mon_AdminState; + type nw_IfId; + description "Source interface name for Traps"; } + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; + grouping snmp_SourceInterfaceInforms-group { + description "SNMP source interface for informs"; - // Type is an MO-Defined-Type - type syslog_Severity; + leaf ifname { + + type nw_IfId; + description "Source interface name for informs"; } } - grouping syslog_SourceInterface-group { + grouping snmp_Host-group { + description "Snmp Host Configuration MO"; - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; + // Host name + leaf hostName { - // Type is an MO-Defined-Type - type mon_AdminState; + type snmp_hostNameT; + description "snmp-server host name"; } - // Type is an MO-Defined-Type - leaf ifName { - description "Interface"; + // Community name + leaf commName { - // Type is an MO-Defined-Type - type nw_IfId; + type snmp_commNameT; + description "community to be associated to the host"; } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; + // Ctrl bits to decide Traps / Informs + leaf notifType { - // Type is an MO-Defined-Type - type syslog_OperState; + type snmp_NotificationType; + description "Ctrl bits indicating traps/informs config"; } - } - - grouping syslog_Inst-group { - // Type is an MO-Defined-Type - leaf modAdminState { - description "TBD"; + // Ctrl bits to decide version + leaf version { - // Type is an MO-Defined-Type - type mon_AdminState; + type snmp_Version; + description "Ctrl bits indicating version"; } - // Type is an MO-Defined-Type - leaf modSeverity { - description "Severity level"; + // Control bitmask for deciding auth/ priv/ noauth for v3 + leaf secLevel { - // Type is an MO-Defined-Type - type syslog_Severity; + type snmp_V3SecLvl; + description "Ctrl bits indicating auth/ priv/ noauth for v3"; } - } - - grouping mts_Mts-group { - container topsaps-items { + // udp-port ID + leaf udpPortID { - // Added containment as a singleton: Prefix=topsaps - // Acquired From Package mts - uses mts_TopSaps-group; + type snmp_PortIdT; + description "snmp-server host udp-port"; } - container qfullsaps-items { + // Source interface setting for hosts + container hostsourceinterface-items { - // Added containment as a singleton: Prefix=qfullsaps - // Acquired From Package mts - uses mts_QfullSaps-group; + uses snmp_HostSrcInterface-group; + description "SNMP source interface for host"; } - } + container usevrf-items { + list UseVrf-list { + key "vrfname"; - grouping mts_TopSaps-group { - leaf memUsed { - config "false"; - type uint32; + uses snmp_UseVrf-group; + description "SNMP VRF for host list"; + } + description "SNMP VRF for host"; } - container tsap-items { - list TSap-list { - config "false"; - key "index"; - // Added containment: Prefix=tsap - // Acquired From Package mts - uses mts_TSap-group; + // Filter VRF setting + container filtervrf-items { + list FilterVrf-list { + key "vrfName"; + + uses snmp_FilterVrf-group; + description "Filter notifications to host receiver based on the configured VRF list"; } + description "Filter notifications to host receiver based on the configured VRF"; } } - grouping mts_TSap-group { - leaf sapId { - config "false"; - type uint32; - } - leaf desc { - config "false"; - type string; - } - leaf process { - config "false"; - type string; - } - leaf timestamp { - config "false"; - type string; - } - leaf msgCount { - config "false"; - type uint32; - } - leaf bytesCount { - config "false"; - type uint32; - } - leaf memUsedInTotalMem { - config "false"; - type uint32; - } - leaf memUsedInSapShare { - config "false"; - type uint32; - } - leaf index { - config "false"; - type uint32; - } - leaf nodeId { - config "false"; - type uint32; - } - } + grouping snmp_HostSrcInterface-group { + description "SNMP source interface for host"; - grouping mts_QfullSaps-group { - container qsap-items { - list QSap-list { - config "false"; - key "sapId"; + // If Name of the interface + leaf ifName { - // Added containment: Prefix=qsap - // Acquired From Package mts - uses mts_QSap-group; - } + type nw_IfId; + description "Source interface name for host"; } } - grouping mts_QSap-group { - leaf qstate { - config "false"; - type string; - } - leaf sapId { - config "false"; - type uint32; - } - leaf desc { - config "false"; - type string; - } - leaf process { - config "false"; - type string; - } - leaf timestamp { - config "false"; - type string; - } - leaf msgCount { - config "false"; - type uint32; - } - leaf bytesCount { - config "false"; - type uint32; - } - leaf memUsedInTotalMem { - config "false"; - type uint32; - } - leaf memUsedInSapShare { - config "false"; - type uint32; - } - leaf index { - config "false"; - type uint32; - } - leaf nodeId { - config "false"; - type uint32; + grouping snmp_UseVrf-group { + description "SNMP VRF for host"; + + leaf vrfname { + + type l3_VrfName; + description "vrfname to be used by host"; } } - grouping nat_Entity-group { + grouping snmp_FilterVrf-group { + description "Filter notifications to host receiver based on the configured VRF"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // VRF name property + leaf vrfName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "VRF name to be used by host"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping snmp_Rmon-group { + description "Snmp RMON configurations"; + container event-items { + list Event-list { + key "num"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses snmp_Event-group; + description "Snmp RMON Event configurations list"; + } + description "Snmp RMON Event configurations"; } + container alarm-items { + list Alarm-list { + key "num"; - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses snmp_Alarm-group; + description "Snmp RMON Alarm configurations list"; + } + description "Snmp RMON Alarm configurations"; } + container hcalarm-items { + list HcAlarm-list { + key "num"; - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package nat - uses nat_Inst-group; + uses snmp_HcAlarm-group; + description "Configure high capacity RMON alarm list"; + } + description "Configure high capacity RMON alarm"; } } - grouping nat_Inst-group { + grouping snmp_Event-group { + description "Snmp RMON Event configurations"; - // Holds TCP Time-Out values - // Type is an MO-Defined-Type - leaf tcpTimeout { - description "NAT tcp timeout values "; + // Event Number + leaf num { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_EventNum; + description "rmon event number"; } - // Holds UDP Time-Out values - // Type is an MO-Defined-Type - leaf udpTimeout { - description "NAT udp timeout value"; + // To generate / not log when alarm event is fired + leaf log { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_LogEnableType; + description "Whether to generate / not log when alarm event is fired"; } - // Holds ICMP Time-out values - // Type is an MO-Defined-Type - leaf icmpTimeout { - description "NAT icmp timeout value"; + leaf owner { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_OwnerType; + description "rmon event owner"; } - // Holds DYN Time-out value - // Type is an MO-Defined-Type - leaf timeout { - description "NAT timeout value"; + leaf description { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_DescType; + description "rmon event description"; } - // Holds FINRST Timeout value - // Type is an MO-Defined-Type - leaf finrstTimeout { - description "FIN or RST Timeout"; + leaf trap { - // Type is an MO-Defined-Type - type nat_FinSynTimeout; + type snmp_TrapCommType; + description "rmon event description"; } + } - // Holds SYN Timeout value - // Type is an MO-Defined-Type - leaf synTimeout { - description "SYN Timeout value"; + grouping snmp_Alarm-group { + description "Snmp RMON Alarm configurations"; - // Type is an MO-Defined-Type - type nat_FinSynTimeout; + // Alarm Number + leaf num { + + type snmp_EventNum; + description "rmon alarm number"; + } + leaf oid { + type string; + description "rmon alarm oid"; } - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config error FINRST SYN timers"; + // Sample Interval + leaf sampleInterval { - // Type is an MO-Defined-Type - type nat_ConfigErrNat; + type snmp_smplIntvl; + description "rmon alarm sample interval"; } - // Type is an MO-Defined-Type - leaf maxtranslation { - description "NAT max trasnaltions"; + // Sample Type + leaf sampleType { - // Type is an MO-Defined-Type - type nat_NatMaxTranslation; + type snmp_smplType; + description "rmon alarm sample interval type"; } - // Type is an MO-Defined-Type - leaf allhost { - description "NAT max trasnaltions all host"; + // Rising Threshold + leaf risingThr { - // Type is an MO-Defined-Type - type nat_NatMaxTranslationAllHost; + type snmp_thrshld; + description "rmon alarm rising threshold"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Rising Threshold Event Index + leaf risingEvntIndx { + + type snmp_EventIndx; + description "rmon alarm rising threshold event index"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Falling Threshold + leaf fallingThr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_thrshld; + description "rmon alarm falling threshold"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Falling Threshold Event Index + leaf fallingEvntIndx { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type snmp_EventIndx; + description "rmon alarm falling threshold event index"; } - container pool-items { - list Pool-list { - key "poolname"; - // Added containment: Prefix=pool - // Acquired From Package nat - uses nat_Pool-group; - } + // Owner Name + leaf owner { + + type snmp_OwnerType; + description "rmon alarm owner"; } } - grouping nat_Pool-group { + grouping snmp_HcAlarm-group { + description "Configure high capacity RMON alarm"; - // Properties Starts here - // Type is an MO-Defined-Type - leaf poolname { - description "NAT pool name"; + // Alarm Number + leaf num { - // Type is an MO-Defined-Type - type nat_NatPoolname; + type snmp_EventNum; + description "RMON alarm number"; } - leaf mask { - type address_Ip; + leaf oid { + type string { + pattern ".*[0-9\\.]+.*"; + } + description "MIB object to monitor"; } - // Type is an MO-Defined-Type - leaf prefixlen { - description "NAT prefix len"; + // Sample Interval + leaf sampleInterval { - // Type is an MO-Defined-Type - type nat_NatPrefixType; + type snmp_smplIntvl; + description "RMON alarm sample interval"; } - // Type is an MO-Defined-Type - leaf noalias { - description "NAT no alias"; + // Sample Type + leaf sampleType { - // Type is an MO-Defined-Type - type nat_booltype; + type snmp_smplType; + description "RMON sample interval type"; } - container startip-items { - list PoolAddress-list { - key "startip endip"; - // Added containment: Prefix=startip - // Acquired From Package nat - uses nat_PoolAddress-group; - } - } - } + // Startup alarm + leaf startupAlarm { - grouping nat_PoolAddress-group { - leaf startip { - type address_Ip; - } - leaf endip { - type address_Ip; + type snmp_startupAlarmType; + description "RMON startup alarm"; } - // Type is an MO-Defined-Type - leaf configErr { - config "false"; - description "Config error pool address"; + // Rising Threshold + leaf risingThr { - // Type is an MO-Defined-Type - type nat_ConfigErrNat; + type snmp_HcThrshld; + description "Alarm rising threshold value"; } - // Type is an MO-Defined-Type - leaf poolAddrDeleted { - config "false"; - description "Pool address deleted"; + // Rising Threshold Event Index + leaf risingEvntIndx { - // Type is an MO-Defined-Type - type nat_booltype; + type snmp_EventIndx; + description "RMON alarm rising threshold event crossing"; } - } - grouping opflex_ODevCmdReq-group { - leaf req { - config "false"; - type string; + // Falling Threshold + leaf fallingThr { + + type snmp_HcThrshld; + description "RMON alarm falling threshold"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Falling Threshold Event Index + leaf fallingEvntIndx { - // Type is an MO-Defined-Type - type naming_Name; + type snmp_EventIndx; + description "RMON alarm falling threshold event crossing"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Owner Name + leaf owner { - // Type is an MO-Defined-Type - type naming_Id; + type snmp_OwnerType; + description "RMON alarm owner"; } - leaf devId { - config "false"; - type uint32; + } + + grouping snmp_CommSecP-group { + description "Community Security Policy"; + + // Group to which community belongs to + leaf grpName { + + type snmp_GrpNameT; + description "SNMP community group"; } - leaf sessId { - config "false"; - type uint32; + leaf contextName { + type string; + description "Name of the SNMP context"; } - leaf cmdId { - config "false"; - type uint32; + + // Community Access + leaf commAcess { + + type snmp_CommAcessT; + description "SNMP community group"; } - } - grouping opflex_ODevCmdResp-group { - leaf resp { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_OSSum; + description "Operational State"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type pol_ObjName { + length "0..64"; + pattern "[^\\s@]{1,32}"; + } + description "Name of the given attribute"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Id; - } - leaf devId { - config "false"; - type uint32; + type naming_Descr; + description "Description of the specified attribute"; } - leaf sessId { - config "false"; - type uint32; + + // This object hold the ACl informations + container acl-items { + + uses snmp_Acl-group; + description "snmp community acl"; } - leaf cmdId { - config "false"; - type uint32; + + container rscommToCtxAtt-items { + + uses snmp_RsCommToCtxAtt_source-group; } } - grouping ospf_Entity-group { + grouping snmp_Acl-group { + description "snmp community acl"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Modified by Override: ospf:AEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // SNMP ACL name + leaf useAclName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_AclNameT; + description "SNMP community acl name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // SNMP ACL name + leaf useIpv4AclName { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_AclNameT; + description "SNMP community acl name"; + } + + // SNMP ACL name + leaf useIpv6AclName { + + type snmp_AclNameT; + description "SNMP community acl name"; } + } + + grouping snmp_UserSecP-group { + description "User Security Policy"; // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_OSSum; + description "Operational State"; } - // This objects hold per ospf instance information - container inst-items { - list Inst-list { - key "name"; + leaf name { - // Added containment: Prefix=inst - // Acquired From Package ospf - uses ospf_Inst-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.@-]{0,31}.*"; } + description "Name of the given attribute"; } - } - - grouping ospf_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Modified by Override: ospf:AInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Authentication type + leaf authType { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_AuthType; + description "Authentication Type"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: ospf:AInst->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + // Authentication key + leaf authKey { - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + type snmp_AuthKey; + description "Authentication Key"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Privacy (encryption) type + leaf privType { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type snmp_PrivType; + description "Privacy"; } - // Memory alert level - // Inherited From ospf:AInst - // Type is an MO-Defined-Type - leaf memAlert { - config "false"; - description "Memory Alert Level"; + // Privacy key + leaf privKey { - // Type is an MO-Defined-Type - type nw_MemAlertLevel; + type snmp_PrivKey; + description "Privacy Key"; + } + } + + grouping snmp_Ctx-group { + description "Context"; + leaf ctxInstance { + type string; + description "Protocol instance associated with the SNMP context"; + } + leaf ctxTopology { + type string; + description "Topology associated with the SNMP context"; + } + leaf vrf { + type string; + description "VRF associated with the SNMP context"; } - leaf deletedViaCLI { + + // Operational state + leaf operSt { config "false"; - type boolean; + + type nw_OSSum; + description "Operational State"; } - // This objects hold per ospf domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package ospf - uses ospf_Dom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This object holds the size of the Logfiles for - // various types of OSPF events - container evtlogs-items { - list EventLogs-list { - key "eventType"; + leaf descr { - // Added containment: Prefix=evtlogs - // Acquired From Package ospf - uses ospf_EventLogs-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ospf_Dom-group { + grouping snmp_SysInfo-group { + description "The System Info maintained by SNMP"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ospf:ADom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf sysLocation { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpSysLoc; + description "System Location"; } - // Router id for this domain, if this is not specified - // the router-id is automatically picked up based on the - // first interface that comes up in that domain - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf rtrId { - description "Router ID"; + leaf sysContact { - // Type is an MO-Defined-Type - type ip_RtrId; + type snmp_SnmpSysContact; + description "System Contact"; } - // Dom controls - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf sysDescription { - // Type is an MO-Defined-Type - type ospf_DomControl; + type snmp_SnmpSysDescr; + description "System Description"; } + } - // Admin state - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative state"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping snmp_Traps-group { + description "Snmp Trap COnfiguration"; + leaf enableAllViaCLI { + type boolean; + description "Was trap enabled via CLI"; } - // Administrative distance preference - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf dist { - description "Distance"; + // Default traps List Starts From Here StormControl trap + container stormcontrol-items { - // Type is an MO-Defined-Type - type ospf_Dist; + uses snmp_TstormControl-group; + description "StormControl Traps"; } - // MAX ECMP - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf maxEcmp { - description "Max ECMP"; + // Default traps List Starts From Here AAA trap + container aaa-items { - // Type is an MO-Defined-Type - type ospf_Ecmp; + uses snmp_Taaa-group; + description "AAA Traps"; } - // Bandwidth Reference value. If bwRefUnit is mbps, then the - // range is 1 to 4000000 and if bwRefUnit is gbps, then the - // range is 1 to 4000 - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf bwRef { - description "Bandwidth Reference value"; + // Bfd trap + container bfd-items { - // Type is an MO-Defined-Type - type ospf_BwRef; + uses snmp_Tbfd-group; + description "Bfd Traps"; } - // Bandwidth Reference Unit - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf bwRefUnit { - description "Bandwidth Reference Unit (Mbps or Gbps)"; + // Bridge trap + container bridge-items { - // Type is an MO-Defined-Type - type ospf_BwRefUnit; + uses snmp_Tbridge-group; + description "Bridge Traps"; } - // Default Metric for redistributed routes - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf defMetric { - description "Default metric cost"; + // Callhome trap + container callhome-items { - // Type is an MO-Defined-Type - type ospf_Metric; - } - leaf rfc1583Compat { - type boolean; - } - leaf deletedViaCLI { - config "false"; - type boolean; + uses snmp_Tcallhome-group; + description "Callhome Traps"; } - // Adjacency change logging level - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf adjChangeLogLevel { - description "Adjacency change logging level"; + // Syslog trap + container syslog-items { - // Type is an MO-Defined-Type - type ospf_AdjChangeLogLevel; + uses snmp_Tsyslog-group; + description "Syslog Traps"; } - // L3VM Operational state - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "L3vm Operational State"; + // CFS trap + container cfs-items { - // Type is an MO-Defined-Type - type ospf_OperSt; + uses snmp_Tcfs-group; + description "CFS Traps"; } - // Operational Router id for this dom, if it is not specified - // the router-id is automatically picked up based on the - // first interface that comes up in that domain - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operRtrId { - config "false"; - description "Operational Router ID"; + // Config trap + container config-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_Tconfig-group; + description "Entity Traps"; } - // Operational SRGB minimum label - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSrgbStart { - config "false"; - description "Segment Routing Global Block Start Index for OSPF"; + // Entity trap + container entity-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses snmp_Tentity-group; + description "Entity Traps"; } - // Operational SRGB maximum label - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSrgbEnd { - config "false"; - description "Segment Routing Global Block End Index for OSPF"; + // Feature-control trap + container featurecontrol-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses snmp_Tfeaturecontrol-group; + description "Feature-control Traps"; } - // Operational State of Segment Routing MPLS in OSPF Dom/VRF - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operStSgmntRtgMpls { - config "false"; - description "Segment Routing MPLS Operational State in OSPF which is Enable/Disable"; + // hsrp trap + container hsrp-items { - // Type is an MO-Defined-Type - type ospf_SgmntRtgMplsOperSt; + uses snmp_Thsrp-group; + description "Hsrp Traps"; } - // Discard Route Bits - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf discardRoute { - description "Ctrl bits for discard-route external and internal"; + // generic trap + container generic-items { - // Type is an MO-Defined-Type - type ospf_DiscardRoute; + uses snmp_Tgeneric-group; + description "Generic Traps"; } - leaf downbitIgnore { - type boolean; + + // ip trap + container ip-items { + + uses snmp_Tip-group; + description "Ip Traps"; } - // Capability vrf-lite - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf capVrfLite { - description "capability vrf-lite"; + // license trap + container license-items { - // Type is an MO-Defined-Type - type ospf_VrfLiteControl; + uses snmp_Tlicense-group; + description "license Traps"; } - // This object holds ospf information that is operated at a - // interface level - container area-items { - list Area-list { - key "id"; + // poe trap + container poe-items { - // Added containment: Prefix=area - // Acquired From Package ospf - uses ospf_Area-group; - } + uses snmp_Tpoe-group; + description "poe Traps"; } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; + // link trap + container link-items { - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } + uses snmp_Tlink-group; + description "link Traps"; } - // This object holds spf computation frequency controls, none - // of these need to be exposed to the user - container spfcomp-items { + // lldp trap + container lldp-items { - // Added containment as a singleton: Prefix=spfcomp - // Acquired From Package ospf - uses ospf_SpfComp-group; + uses snmp_Tlldp-group; + description "lldp Traps"; } - // This object holds lsa related frequency controls, none of - // these need to be exposed to the user - container lsactrl-items { + // msdp trap + container msdp-items { - // Added containment as a singleton: Prefix=lsactrl - // Acquired From Package ospf - uses ospf_LsaCtrl-group; + uses snmp_Tmsdp-group; + description "msdp Traps"; } - // This object holds the ospf dom related statistics - container domstats-items { + // mmode trap + container mmode-items { - // Added containment as a singleton: Prefix=domstats - // Acquired From Package ospf - uses ospf_DomStats-group; + uses snmp_Tmmode-group; + description "mmode Traps"; } - // This objects hold per domain graceful restart information - container gr-items { + // pim trap + container pim-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package ospf - uses ospf_Gr-group; + uses snmp_Tpim-group; + description "pim Traps"; } - // This object holds ospf information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // rf trap + container rf-items { - // Added containment: Prefix=if - // Acquired From Package ospf - uses ospf_If-group; - } + uses snmp_Trf-group; + description "rf Traps"; } - // This object holds per domain max-lsa information - container maxlsap-items { + // rmon trap + container rmon-items { - // Added containment as a singleton: Prefix=maxlsap - // Acquired From Package ospf - uses ospf_MaxLsaP-group; + uses snmp_Trmon-group; + description "rmon Traps"; } - // This object holds per domain max-lsa information - container maxmetriclsap-items { + // snmp trap + container snmp-items { - // Added containment as a singleton: Prefix=maxmetriclsap - // Acquired From Package ospf - uses ospf_MaxMetricLsaP-group; + uses snmp_Tsnmp-group; + description "snmp Traps"; } - // This objects holds default route leak policy, - // this is not needed for FCS in our solution - container defrtleak-items { + // stpx trap + container stpx-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package ospf - uses ospf_DefRtLeakP-group; + uses snmp_Tstpx-group; + description "lldp Traps"; } - // Inter protocol route leak policy. This defines distribution - // of routes from other protocols to ospf - container interleak-items { - list InterLeakP-list { - key "proto inst asn"; + // sysmgr trap + container sysmgr-items { - // Added containment: Prefix=interleak - // Acquired From Package ospf - uses ospf_InterLeakP-group; - } + uses snmp_Tsysmgr-group; + description "sysmgr Traps"; } - // Leak controls related to the number of routes leaked - container leakctrl-items { + // system trap + container system-items { - // Added containment as a singleton: Prefix=leakctrl - // Acquired From Package ospf - uses ospf_LeakCtrlP-group; + uses snmp_Tsystem-group; + description "system Traps"; } - container ribleak-items { + // upgrade trap + container upgrade-items { - // Added containment as a singleton: Prefix=ribleak - // Acquired From Package ospf - uses ospf_RibLeakP-group; + uses snmp_Tupgrade-group; + description "upgrade Traps"; } - // External route summarization is specific to external - // routes that are injected into OSPF using route leak. - // Configure external route summarization on ASBRs that - // are leaking routes into OSPF - container extrtsum-items { - list ExtRtSum-list { - key "addr"; + // vsan trap + container vsan-items { - // Added containment: Prefix=extrtsum - // Acquired From Package ospf - uses ospf_ExtRtSum-group; - } + uses snmp_Tvsan-group; + description "vsan Traps"; } - // This object holds the ospf traffic related information - container trstats-items { + // vtp trap + container vtp-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package ospf - uses ospf_TrafficStats-group; + uses snmp_Tvtp-group; + description "vtp Traps"; } - } - - grouping ospf_Area-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ospf:AArea->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // port-security trap + container portsecurity-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_Tportsecurity-group; + description "port-security Traps"; } - // Area id - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf id { - description "Area ID"; + // mpls trap + container mpls-items { - // Type is an MO-Defined-Type - type ospf_AreaId; + uses snmp_Tmpls-group; + description "mpls Traps"; } + } - // Area type (stub | nssa | backbone, etc) - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf type { - description "Type"; + grouping snmp_TstormControl-group { + description "StormControl Traps"; - // Type is an MO-Defined-Type - type ospf_AreaT; + // SNMP trap-rate + leaf traprate { + + type snmp_TrapRateT; + description "Number of traps per minute"; } - // Area controls - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // snmp authentication trap + container cpscEventRev1-items { - // Type is an MO-Defined-Type - type ospf_AreaControl; + uses snmp_CpscEventRev1-group; + description "storm-control cpscEventRev1 Traps"; } + } - // Area cost, specifies cost for default summary LSAs. - // Used with nssa/stub area types. Not applicable in - // our fabric solution - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf cost { - description "Cost"; + grouping snmp_CpscEventRev1-group { + description "storm-control cpscEventRev1 Traps"; - // Type is an MO-Defined-Type - type ospf_AreaCost; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Segment Routing control - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf sgmntRtgMpls { - description "Segment Routing Control"; + grouping snmp_Taaa-group { + description "AAA Traps"; - // Type is an MO-Defined-Type - type ospf_SegRtControl; + // AAA server-state-change trap + container serverstatechange-items { + + uses snmp_ServerStateChange-group; + description "AAA server-state-change Traps"; } + } - // NSSA translator role - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransRole { - description "NSSA Translator Role"; + grouping snmp_ServerStateChange-group { + description "AAA server-state-change Traps"; - // Type is an MO-Defined-Type - type ospf_NssaTransRole; - } + leaf trapstatus { - // Border router count - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf brCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Area Border Router Count"; - - // Type is an MO-Defined-Type - type ospf_BrCnt; + type uint16; + description "whether it is default config"; } + } - // AS Border router count - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf asbrCnt { - config "false"; - description "AS Border Router Count"; + grouping snmp_Tbfd-group { + description "Bfd Traps"; - // Type is an MO-Defined-Type - type ospf_AsbrCnt; + // Bfd session-down trap + container sessiondown-items { + + uses snmp_SessionDown-group; + description "Bfd session-down Traps"; } - // LSA checksum sum - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf lsaCksumSum { - config "false"; - description "LSA Checksum Sum"; + // Bfd session-up trap + container sessionup-items { - // Type is an MO-Defined-Type - type ospf_LsaCksumSum; + uses snmp_SessionUp-group; + description "Bfd session-up Traps"; } + } - // NSSA translator state - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransSt { - config "false"; - description "NSSA Translator State"; + grouping snmp_SessionDown-group { + description "Bfd session-down Traps"; - // Type is an MO-Defined-Type - type ospf_NssaTransSt; - } + leaf trapstatus { - // NSSA translator stability interval - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransStabIntvl { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "NSSA Translator Stability Interval"; - - // Type is an MO-Defined-Type - type ospf_NssaTransStabIntvl; + type uint16; + description "whether it is default config"; } + } - // Operational State of Segment Routing MPLS in OSPF Area - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf operStSgmntRtgMpls { - config "false"; - description "Segment Routing MPLS Operational State in OSPF Area which is Enable/Disable"; + grouping snmp_SessionUp-group { + description "Bfd session-up Traps"; - // Type is an MO-Defined-Type - type ospf_SgmntRtgMplsOperSt; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Authentication type - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf authType { - description "Type"; + grouping snmp_Tbridge-group { + description "Bridge Traps"; - // Type is an MO-Defined-Type - type ospf_AuthT; + // Bridge newroot trap + container newroot-items { + + uses snmp_NewRoot-group; + description "Bridge Newroot"; } - // This object holds the ospf area related statistics - container areastats-items { + // Bridge topologychange trap + container topologychange-items { - // Added containment as a singleton: Prefix=areastats - // Acquired From Package ospf - uses ospf_AreaStats-group; + uses snmp_TopologyChange-group; + description "Bridge Newroot"; } + } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping snmp_NewRoot-group { + description "Bridge Newroot"; - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf information about OSPF virtual - // links - container vlink-items { - list VLink-list { - key "nbrRtrId"; + grouping snmp_TopologyChange-group { + description "Bridge Newroot"; - // Added containment: Prefix=vlink - // Acquired From Package ospf - uses ospf_VLink-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf information about OSPF sham - // links - container slink-items { - list SLink-list { - config "false"; - key "srcAddr dstAddr"; + grouping snmp_Tcallhome-group { + description "Callhome Traps"; - // Added containment: Prefix=slink - // Acquired From Package ospf - uses ospf_SLink-group; - } + // callhome event-notify trap + container eventnotify-items { + + uses snmp_EventNotify-group; + description "Callhome event-notify Traps"; } - // Lsa Leak concrete class. - container lsaleakp-items { + // callhome smtp-send-fail trap + container smtpsendfail-items { - // Added containment as a singleton: Prefix=lsaleakp - // Acquired From Package ospf - uses ospf_LsaLeakP-group; + uses snmp_SmtpSendFail-group; + description "Callhome smtp-send-fail Traps"; } + } - // Lsa Leak Control concrete class. - container lsaleakctrlp-items { - list LsaLeakCtrlP-list { - key "dir"; + grouping snmp_EventNotify-group { + description "Callhome event-notify Traps"; - // Added containment: Prefix=lsaleakctrlp - // Acquired From Package ospf - uses ospf_LsaLeakCtrlP-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; + } + } - // This objects holds default route leak policy, - // this is not needed for FCS in our solution - container defrtleak-items { + grouping snmp_SmtpSendFail-group { + description "Callhome smtp-send-fail Traps"; - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package ospf - uses ospf_DefRtLeakP-group; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Inter-area route summarization. This is configured - // on ABRs, summarizing routes between areas in the - // autonomous system - container iartsum-items { - list InterAreaRtSum-list { - key "addr"; + grouping snmp_Tsyslog-group { + description "Syslog Traps"; - // Added containment: Prefix=iartsum - // Acquired From Package ospf - uses ospf_InterAreaRtSum-group; - } + // syslog message-generated trap + container messagegenerated-items { + + uses snmp_MessageGenerated-group; + description "Syslog message-generated Traps"; } } - grouping ospf_AreaStats-group { - leaf areaCreatedTs { + grouping snmp_MessageGenerated-group { + description "Syslog message-generated Traps"; + leaf toggleState { config "false"; - type string; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of SPF runs - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf spfRuns { + leaf toggleStateCount { config "false"; - description "SPF Runs"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // LSA count - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf lsaCnt { - config "false"; - description "LSA Count"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf lastSpfDuration { + leaf isToggleAction { config "false"; - type uint32; + type uint16; + description "whether it is default config"; } + } - // Total number of interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf ifCnt { - config "false"; - description "Interface Count"; + grouping snmp_Tcfs-group { + description "CFS Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // cfs state-change-notif trap + container statechangenotif-items { + + uses snmp_StateChangeNotif-group; + description "cfs state-change-notif Traps"; } - // Number of active interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf activeIfCnt { - config "false"; - description "Active Interface Count"; + // cfs merge-failure trap + container mergefailure-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_MergeFailure-group; + description "cfs merge-failure Traps"; } + } - // Number of passive interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf passiveIfCnt { - config "false"; - description "Passive Interface Count"; + grouping snmp_StateChangeNotif-group { + description "cfs state-change-notif Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Number of loopback interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf lpbkIfCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Loopback Interface Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Number of adjacency - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf adjCnt { - config "false"; - description "Adjacency Count"; + grouping snmp_MergeFailure-group { + description "cfs merge-failure Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Number of peers in hitless helper mode - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf grHelperPeerCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "GR Helper Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } } - grouping ospf_Db-group { + grouping snmp_Tconfig-group { + description "Entity Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // config CLIRunningConfigChange trap + container ccmCLIRunningConfigChanged-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_CLIRunningConfigChange-group; + description "config CLIRunningConfigChange Traps"; } + } - // Type of the repository - // Inherited From ospf:ADb - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + grouping snmp_CLIRunningConfigChange-group { + description "config CLIRunningConfigChange Traps"; - // Type is an MO-Defined-Type - type ospf_DbT; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // LSA records - container lsa-items { - list LsaRec-list { - config "false"; - key "type id advRtr"; + grouping snmp_Tentity-group { + description "Entity Traps"; - // Added containment: Prefix=lsa - // Acquired From Package ospf - uses ospf_LsaRec-group; - } + // entity entitymibchange trap + container entitymibchange-items { + + uses snmp_EntityMIBChange-group; + description "entity entitymibchange Traps"; } - // This object holds the ospf route information - container rt-items { - list Route-list { - config "false"; - key "pfx"; + // entity entitymodulestatuschange trap + container entitymodulestatuschange-items { - // Added containment: Prefix=rt - // Acquired From Package ospf - uses ospf_Route-group; - } + uses snmp_EntityModuleStatusChange-group; + description "entity entitymodulestatuschange Traps"; } - } - - grouping ospf_LsaRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // entity entitypowerstatuschange trap + container entitypowerstatuschange-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_EntityPowerStatusChange-group; + description "entity entitypowerstatuschange Traps"; } - // Lsa type - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // entity entitymoduleinserted trap + container entitymoduleinserted-items { - // Type is an MO-Defined-Type - type ospf_LsaT; + uses snmp_EntityModuleInserted-group; + description "entity entitymoduleinserted Traps"; } - // Lsa id - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // entity entitymoduleremoved trap + container entitymoduleremoved-items { - // Type is an MO-Defined-Type - type ospf_LsaId; + uses snmp_EntityModuleRemoved-group; + description "entity entitymoduleremoved Traps"; } - // Router id - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf advRtr { - config "false"; - description "Advertising Router"; + // entity entityunrecognisedmodule trap + container entityunrecognisedmodule-items { - // Type is an MO-Defined-Type - type ospf_LsaAdvRtr; + uses snmp_EntityUnrecognisedModule-group; + description "entity entityunrecognisedmodule Traps"; } - // Sequence number - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf seq { - config "false"; - description "Sequence Number"; + // entity entityfanstatuschange trap + container entityfanstatuschange-items { - // Type is an MO-Defined-Type - type ospf_LsaSeq; + uses snmp_EntityFanStatusChange-group; + description "entity entityfanstatuschange Traps"; } - // Age - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf age { - config "false"; - description "Age"; + // entity entitypoweroutchange trap + container entitypoweroutchange-items { - // Type is an MO-Defined-Type - type ospf_LsaAge; - } - leaf arrivalTs { - config "false"; - type string; + uses snmp_EntityPowerOutChange-group; + description "entity entitypoweroutchange Traps"; } - // Checksum - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf cksum { - config "false"; - description "Checksum"; + // entity entitysensor trap + container entitysensor-items { - // Type is an MO-Defined-Type - type ospf_LsaCksum; + uses snmp_EntitySensor-group; + description "entity entitysensor Traps"; } - // Advertisement - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf advert { - config "false"; - description "LSA Advertisement"; + // entity entitymibenablestatusnotification trap + container cefcMIBEnableStatusNotification-items { - // Type is an MO-Defined-Type - type ospf_LsaAdvert; + uses snmp_EntityMIBEnableStatusNotification-group; + description "entity entitymibenablestatusnotification Traps"; } } - grouping ospf_Route-group { + grouping snmp_EntityMIBChange-group { + description "entity entitymibchange Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf pfx { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Path type - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf pathT { - config "false"; - description "Path Type"; + grouping snmp_EntityModuleStatusChange-group { + description "entity entitymodulestatuschange Traps"; - // Type is an MO-Defined-Type - type ospf_PathT; - } + leaf trapstatus { - // Area id - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf area { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Area ID"; - - // Type is an MO-Defined-Type - type ospf_AreaId; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_EntityPowerStatusChange-group { + description "entity entitypowerstatuschange Traps"; - // Type is an MO-Defined-Type - type ospf_RtFlags; - } + leaf trapstatus { - // Unicast cost - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf ucastCost { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Unicast Cost"; - - // Type is an MO-Defined-Type - type ospf_RtCost; + type uint16; + description "whether it is default config"; } + } - // Multicast cost - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf mcastCost { - config "false"; - description "Multicast Cost"; + grouping snmp_EntityModuleInserted-group { + description "entity entitymoduleinserted Traps"; - // Type is an MO-Defined-Type - type ospf_RtCost; - } + leaf trapstatus { - // Route Tag - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf tag { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Route Tag"; - - // Type is an MO-Defined-Type - type ospf_RtTag; + type uint16; + description "whether it is default config"; } + } - // Administrative distance preference - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf dist { - config "false"; - description "Distance"; + grouping snmp_EntityModuleRemoved-group { + description "entity entitymoduleremoved Traps"; - // Type is an MO-Defined-Type - type ospf_Dist; - } + leaf trapstatus { - // Unicast nexthop - container ucnh-items { - list UcNexthop-list { - config "false"; - key "if addr"; - - // Added containment: Prefix=ucnh - // Acquired From Package ospf - uses ospf_UcNexthop-group; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Multicast nexthop - container mcnh-items { - list McNexthop-list { - config "false"; - key "if addr"; + grouping snmp_EntityUnrecognisedModule-group { + description "entity entityunrecognisedmodule Traps"; - // Added containment: Prefix=mcnh - // Acquired From Package ospf - uses ospf_McNexthop-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_UcNexthop-group { + grouping snmp_EntityFanStatusChange-group { + description "entity entityfanstatuschange Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Nexhop interface - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf if { + leaf isToggleAction { config "false"; - description "Interface"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type nw_IfId; + grouping snmp_EntityPowerOutChange-group { + description "entity entitypoweroutchange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf addr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_EntitySensor-group { + description "entity entitysensor Traps"; - // Type is an MO-Defined-Type - type ospf_NhFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_McNexthop-group { + grouping snmp_EntityMIBEnableStatusNotification-group { + description "entity entitymibenablestatusnotification Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Name"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + grouping snmp_Tfeaturecontrol-group { + description "Feature-control Traps"; + + // feature-control FeatureOpStatusChange trap + container FeatureOpStatusChange-items { + + uses snmp_FeatureOpStatusChange-group; + description "feature-control FeatureOpStatusChange Traps"; } - // Nexhop interface - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface"; + // feature-control CiscoFeatOpStatusChange trap + container ciscoFeatOpStatusChange-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses snmp_CiscoFeatOpStatusChange-group; + description "feature-control ciscoFeatOpStatusChange Traps"; } - leaf addr { + } + + grouping snmp_FeatureOpStatusChange-group { + description "feature-control FeatureOpStatusChange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_CiscoFeatOpStatusChange-group { + description "feature-control ciscoFeatOpStatusChange Traps"; - // Type is an MO-Defined-Type - type ospf_NhFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_VLink-group { + grouping snmp_Thsrp-group { + description "Hsrp Traps"; - // Router id associated with virtual link neighbor - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf nbrRtrId { - description "Router ID"; + // hsrp statechange trap + container statechange-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_StateChange-group; + description "hsrp statechange Traps"; } + } - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; + grouping snmp_StateChange-group { + description "hsrp statechange Traps"; - // Type is an MO-Defined-Type - type ospf_HelloIntvl; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf deadIntvl { - description "Dead Interval"; + grouping snmp_Tgeneric-group { + description "Generic Traps"; - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + // generic coldstart trap + container coldStart-items { + + uses snmp_ColdStart-group; + description "generic coldstart Traps"; } - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf rexmitIntvl { - description "Retransmit Interval"; + // generic warmstart trap + container warmStart-items { - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + uses snmp_WarmStart-group; + description "generic warmstart Traps"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf xmitDelay { - description "Transmit Delay"; + grouping snmp_ColdStart-group { + description "generic coldstart Traps"; - // Type is an MO-Defined-Type - type ospf_XmitDelay; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; + grouping snmp_WarmStart-group { + description "generic warmstart Traps"; - // Added containment: Prefix=adj - // Acquired From Package ospf - uses ospf_AdjEp-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds authentication new policy information - container authnew-items { + grouping snmp_Tip-group { + description "Ip Traps"; - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + // ip sla trap + container sla-items { + + uses snmp_Sla-group; + description "ip sla Traps"; } } - grouping ospf_AdjEp-group { + grouping snmp_Sla-group { + description "ip sla Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Neighbor's router id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf id { + leaf isToggleAction { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type ospf_AdjId; + type uint16; + description "whether it is default config"; } + } - // Neighbor's interface id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Interface ID"; + grouping snmp_Tlicense-group { + description "license Traps"; - // Type is an MO-Defined-Type - type ospf_AdjIfId; + // license Notify licenseexpiry trap + container notifylicenseexpiry-items { + + uses snmp_NotifyLicenseExpiry-group; + description "Notify license LicenseExpiry Traps"; } - // Adjacency state - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // license Notify LicenseExpiryWarning trap + container notifylicenseexpirywarning-items { - // Type is an MO-Defined-Type - type ospf_AdjOperSt; + uses snmp_NotifyLicenseExpiryWarning-group; + description "license Notify LicenseExpiryWarning Traps"; } - // BFD state - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf bfdSt { - config "false"; - description "BFD State"; + // license Notify licensefilemissing trap + container notifylicensefilemissing-items { - // Type is an MO-Defined-Type - type ospf_BfdOperSt; + uses snmp_NotifyLicenseFileMissing-group; + description "license Notify licensefilemissing Traps"; } - // Area id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf area { - config "false"; - description "Area ID"; + // license Notifynolicenceforfeature trap + container notifynolicenseforfeature-items { - // Type is an MO-Defined-Type - type ospf_AreaId; + uses snmp_NotifyNoLicenceForFeature-group; + description "license Notify nolicenceforfeature Traps"; } + } - // Neighbor priority - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping snmp_NotifyLicenseExpiry-group { + description "Notify license LicenseExpiry Traps"; - // Type is an MO-Defined-Type - type ospf_DesigPrio; - } + leaf trapstatus { - // Designated router address - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf dr { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Designated Router"; - - // Type is an MO-Defined-Type - type ospf_DesigAddr; + type uint16; + description "whether it is default config"; } + } - // Backup designated router address - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf bdr { - config "false"; - description "Backup Designated Router"; + grouping snmp_NotifyLicenseExpiryWarning-group { + description "license Notify LicenseExpiryWarning Traps"; - // Type is an MO-Defined-Type - type ospf_DesigAddr; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf peerIp { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Peer options from hello packet - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf helloOptions { - config "false"; - description "Hello Options"; + grouping snmp_NotifyLicenseFileMissing-group { + description "license Notify licensefilemissing Traps"; - // Type is an MO-Defined-Type - type ospf_Options; - } + leaf trapstatus { - // Peer options from DBD packet - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf dbdOptions { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "DBD Options"; - - // Type is an MO-Defined-Type - type ospf_Options; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_NotifyNoLicenceForFeature-group { + description "license Notify nolicenceforfeature Traps"; - // Type is an MO-Defined-Type - type ospf_AdjFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf peerName { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // This object holds the ospf neighbor related statistics - container adjstats-items { + grouping snmp_Tpoe-group { + description "poe Traps"; - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package ospf - uses ospf_AdjStats-group; + // POE police notify trap + container policenotify-items { + + uses snmp_PoliceNotify-group; + description "POE police notify Traps"; } - // This object holds ospf graceful restart operational - // information - container gr-items { + // POE control enable notify trap + container controlenable-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package ospf - uses ospf_GrSt-group; + uses snmp_ControlEnable-group; + description "POE control enable notify Traps"; } } - grouping ospf_AdjStats-group { - - // State change count - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf stChgCnt { - config "false"; - description "State Change Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; - } - leaf lastStChgTs { + grouping snmp_PoliceNotify-group { + description "POE police notify Traps"; + leaf toggleState { config "false"; - type string; + type uint16; + description "1 for enable / 2 for disable"; } - leaf lastNonHelloPktTs { + leaf toggleStateCount { config "false"; - type string; + type uint16; + description "Incremental counter for triggering BI"; } - // DBD Sequence number - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf dbdSeqNum { - config "false"; - description "DBD Sequence Number"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Number of LSAs on request list - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf reqLsaCnt { + leaf isToggleAction { config "false"; - description "Request LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Outstanding LSAs from last request - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf outstandingLsaCnt { + grouping snmp_ControlEnable-group { + description "POE control enable notify Traps"; + leaf toggleState { config "false"; - description "Outstanding LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of retransmissions of LSA request - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf lsaReqRexmitCnt { + leaf toggleStateCount { config "false"; - description "LSA Request Retransmission Count"; + type uint16; + description "Incremental counter for triggering BI"; + } - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf deadTimerExpTs { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } } - grouping ospf_GrSt-group { + grouping snmp_Tlink-group { + description "link Traps"; - // Peer restart helper Status - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperSt { - config "false"; - description "Peer Restart Helper Status"; + // link Ciscoxcvrmonstatuschange trap + container ciscoxcvrmonstatuschg-items { - // Type is an MO-Defined-Type - type ospf_HelperSt; + uses snmp_CiscoXcvrMonStatusChange-group; + description "link Ciscoxcvrmonstatuschange Traps"; } - // Peer restart helper age - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperAge { - config "false"; - description "Peer Restart Helper Age"; + // link linkdown trap + container linkDown-items { - // Type is an MO-Defined-Type - type ospf_HelperAge; + uses snmp_LinkDown-group; + description "link linkdown Traps"; } - // Peer restart helper exit qualifier - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperExitQual { - config "false"; - description "Peer Restart Helper Exit Qualifier"; + // link linkup trap + container linkUp-items { - // Type is an MO-Defined-Type - type ospf_HelperExitQual; + uses snmp_LinkUp-group; + description "link linkup Traps"; } - } - grouping ospf_AuthNewP-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:AAuthNewP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // link extended linkdown trap + container extendedlinkDown-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses snmp_ExtendedLinkDown-group; + description "link Extended linkdown Traps"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AAuthNewP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // link extended linkup trap + container extendedlinkUp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses snmp_ExtendedLinkUp-group; + description "link extended linkup Traps"; } - // Authentication type - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // link cielinkdown trap + container cieLinkDown-items { - // Type is an MO-Defined-Type - type ospf_AuthT; + uses snmp_CieLinkDown-group; + description "link Cie linkdown Traps"; } - // Authentication key id - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf keyId { - description "Key ID"; + // link Cie linkup trap + container cieLinkUp-items { - // Type is an MO-Defined-Type - type ospf_AuthKeyId; + uses snmp_CieLinkUp-group; + description "link Cie linkup Traps"; } - // Authentication key - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // link delayedlinkstatechange trap + container delayedlinkstatechange-items { - // Type is an MO-Defined-Type - type ospf_AuthKey; + uses snmp_DelayedLinkStateChange-group; + description "link DelayedLinkStateChange Traps"; } - leaf keySecureMode { - type boolean; - default "true"; + + // link cErrDisableInterfaceEventRev1 trap + container cerrdisableinterfaceeventrev1-items { + + uses snmp_CErrDisableInterfaceEventRev1-group; + description "link cErrDisableInterfaceEventRev1 Traps"; } - // Authentication md5 key - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf md5key { - description "Key"; + // link cmnMacMoveNotification trap + container cmnmacmovenotification-items { - // Type is an MO-Defined-Type - type ospf_AuthKey; + uses snmp_CmnMacMoveNotification-group; + description "link cmnMacMoveNotification Traps"; } - leaf md5keySecureMode { - type boolean; - default "true"; + } + + grouping snmp_CiscoXcvrMonStatusChange-group { + description "link Ciscoxcvrmonstatuschange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf keychain { - type string; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_SLink-group { - leaf srcAddr { - config "false"; - type address_Ip; + grouping snmp_LinkDown-group { + description "link linkdown Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf dstAddr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } - leaf demandCkt { - config "false"; - type boolean; - } - - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf helloIntvl { - config "false"; - description "Hello Interval"; + } - // Type is an MO-Defined-Type - type ospf_HelloIntvl; - } + grouping snmp_LinkUp-group { + description "link linkup Traps"; - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf deadIntvl { - config "false"; - description "Dead Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf rexmitIntvl { + leaf isToggleAction { config "false"; - description "Retransmit Interval"; - - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + type uint16; + description "whether it is default config"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf xmitDelay { - config "false"; - description "Transmit Delay"; - - // Type is an MO-Defined-Type - type ospf_XmitDelay; - } + grouping snmp_ExtendedLinkDown-group { + description "link Extended linkdown Traps"; - // Cost of the interface - // From Interface ospf:IIntfCost - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf cost { - config "false"; - description "Cost"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_IfCost; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // This object holds authentication new policy information - container authnew-items { - - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_LsaLeakP-group { + grouping snmp_ExtendedLinkUp-group { + description "link extended linkup Traps"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "Scope"; + grouping snmp_CieLinkDown-group { + description "link Cie linkdown Traps"; - // Type is an MO-Defined-Type - type rtleak_Scope; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf rtMap { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // Operational state - // Inherited From ospf:ALsaLeakP - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping snmp_CieLinkUp-group { + description "link Cie linkup Traps"; - // Type is an MO-Defined-Type - type ospf_LsaLeakOperSt; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_LsaLeakCtrlP-group { + grouping snmp_DelayedLinkStateChange-group { + description "link DelayedLinkStateChange Traps"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; + grouping snmp_CErrDisableInterfaceEventRev1-group { + description "link cErrDisableInterfaceEventRev1 Traps"; + leaf toggleState { + config "false"; + type uint16; + description "1 for enable / 2 for disable"; } - leaf rtMap { - type string; + leaf toggleStateCount { + config "false"; + type uint16; + description "Incremental counter for triggering BI"; } - // Inherited From ospf:ALsaLeakCtrlP - // Type is an MO-Defined-Type - leaf dir { - description "Filter Type"; + leaf trapstatus { - // Type is an MO-Defined-Type - type rtleak_RtCtrlDir; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Operational state - // Inherited From ospf:ALsaLeakCtrlP - // Type is an MO-Defined-Type - leaf operSt { + leaf isToggleAction { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type ospf_LsaLeakOperSt; + type uint16; + description "whether it is default config"; } } - grouping ospf_DefRtLeakP-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:ADefRtLeakP->name - // Type is an MO-Defined-Type - leaf name { + grouping snmp_CmnMacMoveNotification-group { + description "link cmnMacMoveNotification Traps"; + leaf toggleState { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint16; + description "1 for enable / 2 for disable"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ADefRtLeakP->descr - // Type is an MO-Defined-Type - leaf descr { + leaf toggleStateCount { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "Incremental counter for triggering BI"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + leaf trapstatus { - // Type is an MO-Defined-Type - type rtleak_Scope; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf rtMap { - type string { - } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // DefRtLeak always advertise - // Inherited From ospf:ADefRtLeakP - // Type is an MO-Defined-Type - leaf always { - description "Always advertise default leak"; + grouping snmp_Tlldp-group { + description "lldp Traps"; - // Type is an MO-Defined-Type - type ospf_Always; + // lldp RemTablesChange trap + container lldpRemTablesChange-items { + + uses snmp_LldpRemTablesChange-group; + description "lldp LldpRemTablesChange Traps"; } } - grouping ospf_InterAreaRtSum-group { + grouping snmp_LldpRemTablesChange-group { + description "lldp LldpRemTablesChange Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ARtSum->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ARtSum->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf addr { - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Summary address no Advertise - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping snmp_Tmsdp-group { + description "msdp Traps"; - // Type is an MO-Defined-Type - type ospf_SumControl; + // msdp BackwardTransition trap + container msdpBackwardTransition-items { + + uses snmp_MsdpBackwardTransition-group; + description "msdp BackwardTransition Traps"; } + } - // Number of component routes - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf compRtCnt { - config "false"; - description "Number of component routes"; + grouping snmp_MsdpBackwardTransition-group { + description "msdp BackwardTransition Traps"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + leaf trapstatus { - // Route summary cost - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf operCost { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Route Summary Operational Cost"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type ospf_SumCost; + grouping snmp_Tmmode-group { + description "mmode Traps"; + + // mmode CseMaintModeChangeNotify trap + container cseMaintModeChangeNotify-items { + + uses snmp_CseMaintModeChangeNotify-group; + description "mmode CseMaintModeChangeNotify Traps"; } - // Area range cost - // Inherited From ospf:AInterAreaRtSum - // Type is an MO-Defined-Type - leaf cost { - description "Area range cost"; + // mmode CseNormalModeChangeNotify trap + container cseNormalModeChangeNotify-items { - // Type is an MO-Defined-Type - type ospf_SumCost; + uses snmp_CseNormalModeChangeNotify-group; + description "mmode CseNormalModeChangeNotify Traps"; } } - grouping ospf_SpfComp-group { + grouping snmp_CseMaintModeChangeNotify-group { + description "mmode CseMaintModeChangeNotify Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ASpfComp->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ASpfComp->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Initial spf schedule delay interval - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Interval"; - - // Type is an MO-Defined-Type - type ospf_SpfCompInitIntvl; - } + grouping snmp_CseNormalModeChangeNotify-group { + description "mmode CseNormalModeChangeNotify Traps"; - // Minimum hold time between spf calculations - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_SpfCompHoldIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Maximum wait time between spf calculations - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Interval"; + grouping snmp_Tpim-group { + description "pim Traps"; - // Type is an MO-Defined-Type - type ospf_SpfCompMaxIntvl; + // pim PimNeighborloss trap + container pimNeighborLoss-items { + + uses snmp_PimNeighborLoss-group; + description "pim PimNeighborloss Traps"; } } - grouping ospf_LsaCtrl-group { + grouping snmp_PimNeighborLoss-group { + description "pim PimNeighborloss Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ALsaCtrl->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ALsaCtrl->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // LSA group pacing interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf gpPacingIntvl { - description "Group Pacing Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaGpPacingIntvl; - } + grouping snmp_Trf-group { + description "rf Traps"; - // Minimum interval between arrival of a LSA - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf arrivalIntvl { - description "Arrival Interval"; + // rf redundancyframework trap + container redundancyframework-items { - // Type is an MO-Defined-Type - type ospf_LsaArrivalIntvl; + uses snmp_RedundancyFramework-group; + description "rf redundancyframework Traps"; } + } - // LSA generation throttle start wait interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf startIntvl { - description "Start Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaThStartIntvl; - } + grouping snmp_RedundancyFramework-group { + description "rf redundancyframework Traps"; - // LSA generation throttle hold interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_LsaThHoldIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // LSA generation throttle maximum interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaThMaxIntvl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_DomStats-group { + grouping snmp_Trmon-group { + description "rmon Traps"; - // Interface count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf ifCnt { - config "false"; - description "Interface Count"; + // rmon RisingAlarm trap + container risingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_RisingAlarm-group; + description "rmon RisingAlarm Traps"; } - // Area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf areaCnt { - config "false"; - description "Area Count"; + // rmon FallingAlarm trap + container fallingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_FallingAlarm-group; + description "rmon FallingAlarm Traps"; } - // Stub area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf stubAreaCnt { - config "false"; - description "Stub Area Count"; + // rmon HcRisingAlarm trap + container hcRisingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_HcRisingAlarm-group; + description "rmon HcRisingAlarm Traps"; } - // NSSA area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf nssaAreaCnt { - config "false"; - description "NSSA Area Count"; + // rmon HcFallingAlarm trap + container hcFallingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_HcFallingAlarm-group; + description "rmon HcFallingAlarm Traps"; } + } - // External area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf extAreaCnt { - config "false"; - description "External Area Count"; + grouping snmp_RisingAlarm-group { + description "rmon RisingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Active stub area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeStubAreaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Active Stub Area Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Active NSSA area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeNssaAreaCnt { - config "false"; - description "Active NSSA Area Count"; + grouping snmp_FallingAlarm-group { + description "rmon FallingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Active external area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeExtAreaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Active External Area Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Active Area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeAreaCnt { - config "false"; - description "Active Area Count"; + grouping snmp_HcRisingAlarm-group { + description "rmon HcRisingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf lastStatsClearTs { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // Neighbor count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf peerCnt { - config "false"; - description "Peer Count"; + grouping snmp_HcFallingAlarm-group { + description "rmon HcFallingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // External LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf extLsaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "External LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Opaque AS LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf opaqueAsLsaCnt { - config "false"; - description "Opaque AS LSA Count"; + grouping snmp_Tsnmp-group { + description "snmp Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // snmp authentication trap + container authentication-items { + + uses snmp_Authentication-group; + description "snmp authentication Traps"; } + } - // Total AS LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf totalAsLsaCnt { - config "false"; - description "Total AS LSA Count"; + grouping snmp_Authentication-group { + description "snmp authentication Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // New LSA Rx count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf newLsaRxCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "New LSA Rx Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // New LSA Tx count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf newLsaTxCnt { - config "false"; - description "New LSA Tx Count"; + grouping snmp_Tstpx-group { + description "lldp Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // stpx inconsistency trap + container inconsistency-items { + + uses snmp_Inconsistency-group; + description "stpx inconsistency Traps"; } - // Area Border Router Status - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf areaBdrRtr { - config "false"; - description "Area Border Router"; + // stpx rootinconsistency trap + container rootinconsistency-items { - // Type is an MO-Defined-Type - type ospf_AreaBdrRtr; + uses snmp_RootInconsistency-group; + description "stpx root inconsistency Traps"; } - // ASBR Router Status - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf asBdrRtr { - config "false"; - description "Autonomous System Boundary Router"; + // stpx Loopinconsistency trap + container loopinconsistency-items { - // Type is an MO-Defined-Type - type ospf_ASBdrRtr; + uses snmp_LoopInconsistency-group; + description "stpx loop inconsistency Traps"; } } - grouping ospf_Gr-group { + grouping snmp_Inconsistency-group { + description "stpx inconsistency Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:AGr->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AGr->descr - // Type is an MO-Defined-Type - leaf descr { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Graceful restart controls - // Inherited From ospf:AGr - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; - - // Type is an MO-Defined-Type - type ospf_GrCtrl; - } - leaf helper { - type boolean; - default "true"; - } + grouping snmp_RootInconsistency-group { + description "stpx root inconsistency Traps"; - // Graceful restart period - // Inherited From ospf:AGr - // Type is an MO-Defined-Type - leaf gracePeriod { - description "Control"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_GrPeriod; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_If-group { + grouping snmp_LoopInconsistency-group { + description "stpx loop inconsistency Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: ospf:AIf->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Inherited From nw:If - // Modified by Override: ospf:AIf->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + type uint16; + description "whether it is default config"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping snmp_Tsysmgr-group { + description "sysmgr Traps"; - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // sysmgr CseFailSwCoreNotifyExtended trap + container cseFailSwCoreNotifyExtended-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses snmp_CseFailSwCoreNotifyExtended-group; + description "sysmgr CseFailSwCoreNotifyExtended Traps"; } + } - // Interface controls - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type ospf_IfControl; - } + grouping snmp_CseFailSwCoreNotifyExtended-group { + description "sysmgr CseFailSwCoreNotifyExtended Traps"; - // Passive interface control - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf passiveCtrl { - description "Passive Interface Control"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_PassiveControl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // BFD control - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf bfdCtrl { - description "BFD Control"; - - // Type is an MO-Defined-Type - type ospf_BfdControl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Network type - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf nwT { - description "Network Type"; - - // Type is an MO-Defined-Type - type ospf_NwT; - } + grouping snmp_Tsystem-group { + description "system Traps"; - // Priority, used in determining the designated router on - // this network - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf prio { - description "Priority"; + // system ClockChangeNotification trap + container Clockchangenotification-items { - // Type is an MO-Defined-Type - type ospf_DesigPrio; + uses snmp_ClockChangeNotification-group; + description "system ClockChangeNotification Traps"; } + } - // Cost of the interface - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf cost { - description "Cost"; + grouping snmp_ClockChangeNotification-group { + description "system ClockChangeNotification Traps"; - // Type is an MO-Defined-Type - type ospf_IfCost; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf xmitDelay { - description "Transmit Delay"; + grouping snmp_Tupgrade-group { + description "upgrade Traps"; - // Type is an MO-Defined-Type - type ospf_XmitDelay; + // upgrade UpgradeJobStatusNotify trap + container UpgradeJobStatusNotify-items { + + uses snmp_UpgradeJobStatusNotify-group; + description "upgrade UpgradeJobStatusNotify Traps"; } + } - // Area to which this interface belongs to - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf area { - description "Area ID"; + grouping snmp_UpgradeJobStatusNotify-group { + description "upgrade UpgradeJobStatusNotify Traps"; - // Type is an MO-Defined-Type - type ospf_AreaId; - } - leaf advertiseSecondaries { - type boolean; - default "true"; - } + leaf trapstatus { - // Operational state - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operSt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type ospf_IfOperSt; + type uint16; + description "whether it is default config"; } + } - // Operational failed state qualifier - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf failStQual { - config "false"; - description "Failed State Qualifier"; + grouping snmp_Tvsan-group { + description "vsan Traps"; - // Type is an MO-Defined-Type - type ospf_FailStQual; + // vsan PortMembershipChange trap + container vsanPortMembershipChange-items { + + uses snmp_VsanPortMembershipChange-group; + description "vsan PortMembershipChange Traps"; } - // Interface type - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // vsan vsanStatusChange trap + container vsanStatusChange-items { - // Type is an MO-Defined-Type - type ospf_IfType; + uses snmp_VsanStatusChange-group; + description "vsan vsanStatusChange Traps"; } + } - // Flags - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_VsanPortMembershipChange-group { + description "vsan PortMembershipChange Traps"; - // Type is an MO-Defined-Type - type ospf_IfFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf addr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } - leaf dr { - config "false"; - type address_Ip; + } + + grouping snmp_VsanStatusChange-group { + description "vsan vsanStatusChange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf bdr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Designated router id - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf drId { - config "false"; - description "DR Id"; - - // Type is an MO-Defined-Type - type ip_RtrId; - } + grouping snmp_Tvtp-group { + description "vtp Traps"; - // Backup designated router id - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf bdrId { - config "false"; - description "BDR Id"; + // vtp notifs trap + container notifs-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_Notifs-group; + description "vtp notifs Traps"; } - // LSA checksum sum - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf lsaCksumSum { - config "false"; - description "LSA Checksum Sum"; + // vtp vlancreate trap + container vlancreate-items { - // Type is an MO-Defined-Type - type ospf_LsaCksumSum; + uses snmp_Vlancreate-group; + description "vtp vlancreate Traps"; } - // Operational Cost - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operCost { - config "false"; - description "Operational Cost"; + // vtp vlandelete trap + container vlandelete-items { - // Type is an MO-Defined-Type - type ospf_IfCost; + uses snmp_Vlandelete-group; + description "vtp vlandelete Traps"; } + } - // Operational Dead interval - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operDeadIntvl { - config "false"; - description "Operational Dead Interval"; + grouping snmp_Notifs-group { + description "vtp notifs Traps"; - // Type is an MO-Defined-Type - type ospf_DeadIntvl; - } + leaf trapstatus { - // Operational SID value for this interface - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operSidIndex { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Operational Segment-Routing prefix SID value. It is relative value to SRBG start."; - - // Type is an MO-Defined-Type - type ospf_SidIndex; + type uint16; + description "whether it is default config"; } + } - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; - - // Type is an MO-Defined-Type - type ospf_HelloIntvl; - } + grouping snmp_Vlancreate-group { + description "vtp vlancreate Traps"; - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf deadIntvl { - description "Dead Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf rexmitIntvl { - description "Retransmit Interval"; - - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; - - // Added containment: Prefix=adj - // Acquired From Package ospf - uses ospf_AdjEp-group; - } - } + grouping snmp_Vlandelete-group { + description "vtp vlandelete Traps"; - // This object holds authentication policy information - container auth-items { + leaf trapstatus { - // Added containment as a singleton: Prefix=auth - // Acquired From Package ospf - uses ospf_AuthP-group; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // This object holds authentication new policy information - container authnew-items { - - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } - } + grouping snmp_Tportsecurity-group { + description "port-security Traps"; - // This object holds the ospf interface related statistics - container ifstats-items { + // port-security access-secure-mac-violation + container accesssecuremacviolation-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package ospf - uses ospf_IfStats-group; + uses snmp_AccessSecureMacViolation-group; + description "port-security access-secure-mac-violation Traps"; } - // This object holds multi-area information - // at a interface level - container multiarea-items { - list MultiArea-list { - key "multiareaid"; + // port-security trunk-secure-mac-violation + container trunksecuremacviolation-items { - // Added containment: Prefix=multiarea - // Acquired From Package ospf - uses ospf_MultiArea-group; - } + uses snmp_TrunkSecureMacViolation-group; + description "port-security trunk-secure-mac-violation Traps"; } + } - // This object holds the ospf traffic related information - container trstats-items { + grouping snmp_AccessSecureMacViolation-group { + description "port-security access-secure-mac-violation Traps"; - // Added containment as a singleton: Prefix=trstats - // Acquired From Package ospf - uses ospf_TrafficStats-group; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Rel-def target from IfDefToOspfIf - // Inherited From ospf:If - container rtospfIfDefToOspfIf-items { + grouping snmp_TrunkSecureMacViolation-group { + description "port-security trunk-secure-mac-violation Traps"; - // Abstract containment of rtospfIfDefToOspfIf derived from ospf:If - list RtOspfIfDefToOspfIf-list { - config "false"; - key "tDn"; + leaf trapstatus { - // Added containment: Prefix=rtospfIfDefToOspfIf - // Acquired From Package ospf - uses ospf_RtOspfIfDefToOspfIf_target-group; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; + } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - container rtvrfMbr-items { + grouping snmp_Tmpls-group { + description "mpls Traps"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // ldp trap + container ldp-items { + + uses snmp_Ldp-group; + description "Enable LDP notifications"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // vpn trap + container vpn-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses snmp_Vpn-group; + description "Enable VPN notifications"; } } - grouping ospf_AuthP-group { - - // Authentication type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ospf_AuthT; - } + grouping snmp_Ldp-group { + description "Enable LDP notifications"; - // Authentication key id - // Type is an MO-Defined-Type - leaf keyId { - config "false"; - description "Key ID"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_AuthKeyId; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Authentication key - // Type is an MO-Defined-Type - leaf key { + leaf isToggleAction { config "false"; - description "Key"; - - // Type is an MO-Defined-Type - type ospf_AuthKey; + type uint16; + description "whether it is default config"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // ldp session-down trap + container ldpsessiondown-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses snmp_LdpSessiondown-group; + description "MPLS LDP Session Down Notification"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // ldp session-up trap + container ldpsessionup-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses snmp_LdpSessionup-group; + description "MPLS LDP Session Up Notification"; } } - grouping ospf_IfStats-group { - - // If events count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf evCnt { + grouping snmp_LdpSessiondown-group { + description "MPLS LDP Session Down Notification"; + leaf toggleState { config "false"; - description "If Events Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // LSA count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf lsaCnt { + leaf toggleStateCount { config "false"; - description "LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Neighbor count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf peerCnt { - config "false"; - description "Peer Count"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Flood to neighbor count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf floodToPeerCnt { + leaf isToggleAction { config "false"; - description "Flood To Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Number of adjacency - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf adjCnt { + grouping snmp_LdpSessionup-group { + description "MPLS LDP Session Up Notification"; + leaf toggleState { config "false"; - description "Adjacency Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of peers in hitless helper mode - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf grHelperPeerCnt { + leaf toggleStateCount { config "false"; - description "GR Helper Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - } - - grouping ospf_MultiArea-group { - // Multi Area id - // Inherited From ospf:AMultiArea - // Type is an MO-Defined-Type - leaf multiareaid { - description "Multi Area ID"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_AreaId; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_TrafficStats-group { + grouping snmp_Vpn-group { + description "Enable VPN notifications"; - // Total packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf totalPktsRcvd { - config "false"; - description "Total Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Hello packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf helloPktsRcvd { + leaf isToggleAction { config "false"; - description "Hello Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } - // Database description packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dbdPktsRcvd { - config "false"; - description "DBD Packets Received"; + // vpn vrf-down trap + container vpnvrfdown-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnVrfdown-group; + description "MPLS VPN VRF Down Notification"; } - // Link-state request packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsReqPktsRcvd { - config "false"; - description "LSREQ Packets Received"; + // Vpn vrf-up trap + container vpnvrfup-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnVrfup-group; + description "MPLS VPN VRF Up Notification"; } - // Link-state update packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsUpdPktsRcvd { - config "false"; - description "LSU Packets Received"; + // vpn max-thresh-cleared trap + container vpnmaxthreshcleared-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMaxThreshcleared-group; + description "MPLS VPN max thresh cleared notification"; } - // Link-state ack packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsAckPktsRcvd { - config "false"; - description "LSACK Packets Received"; + // vpn max-thresh-exceeded trap + container vpnmaxthreshexceeded-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMaxThreshexceeded-group; + description "MPLS VPN max thresh exceeded notification"; } - // Received packets dropped - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf rcvdPktsDropped { - config "false"; - description "Received Packets Dropped"; + // vpn mid-thresh-exceeded trap + container vpnmidthreshexceeded-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMidThreshexceeded-group; + description "MPLS VPN mid thresh exceeded notification"; } + } - // Error packets rcvd - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errPktsRcvd { + grouping snmp_VpnVrfdown-group { + description "MPLS VPN VRF Down Notification"; + leaf toggleState { config "false"; - description "Error Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Error hello packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errHelloPktsRcvd { + leaf toggleStateCount { config "false"; - description "Error Hello Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Error database description packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errDbdPktsRcvd { - config "false"; - description "Error DBD Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Error link-state request packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsReqPktsRcvd { + leaf isToggleAction { config "false"; - description "Error LSREQ Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Error link-state update packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsUpdPktsRcvd { + grouping snmp_VpnVrfup-group { + description "MPLS VPN VRF Up Notification"; + leaf toggleState { config "false"; - description "Error LSU Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Error link-state ack packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsAckPktsRcvd { + leaf toggleStateCount { config "false"; - description "Error LSACK Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Unknown packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf unknownPktsRcvd { - config "false"; - description "Unknown Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Duplicate routerid packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dupRtrIdPktsRcvd { + leaf isToggleAction { config "false"; - description "Duplicate RouterId Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Duplicate source addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dupSrcAddrPktsRcvd { - config "false"; - description "Duplicate Source Addr Packets Received"; + grouping snmp_VpnMaxThreshcleared-group { + description "MPLS VPN max thresh cleared notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Wrong area packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf wrongAreaPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Wrong Area Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Invalid source addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf invalidSrcAddrPktsRcvd { - config "false"; - description "Invalid Source Addr Packets Received"; + grouping snmp_VpnMaxThreshexceeded-group { + description "MPLS VPN max thresh exceeded notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Invalid destination addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf invalidDestAddrPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Invalid Destination Addr Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Bad CRC packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badCRCPktsRcvd { - config "false"; - description "Bad CRC Packets Received"; + grouping snmp_VpnMidThreshexceeded-group { + description "MPLS VPN mid thresh exceeded notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Bad version packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badVersionPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Bad Version Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Bad reserved fields packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badResvFieldPktsRcvd { + grouping snmp_RemoteUser-group { + description "Snmp remote user notification target"; + + leaf hashedauthpwd { config "false"; - description "Bad Reserved Field Packets Received"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Hashed Auth Password"; } - // Changed neighbor routerId or ip address packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf peerRtrIdChgdPktsRcvd { + leaf encrptprivpwd { config "false"; - description "Peer RouterId Changed Packets Received"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Encrypted Priv Password"; } - // Non hello received packets for which neighbor is not found - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf peerNotFoundPktsRcvd { - config "false"; - description "Peer Not Found Packets Received"; + // User name + leaf userName { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_userNameT; + description "snmp-server user name"; } - // Authentication failed packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badAuthPktsRcvd { - config "false"; - description "Bad Authentication Packets Received"; + leaf authpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Auth Password"; } - // Bad length packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badLenPktsRcvd { - config "false"; - description "Bad Length Packets Received"; + leaf authtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthTypeT; + description "Auth Protocol Type"; } - // Packets received on passive interface - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf passiveIntfPktsRcvd { - config "false"; - description "Passive Interface Packets Received"; + leaf privpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivPasswd; + description "Priv Password"; } - // Packets received on OSPF not enabled interface - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf noOspfIntfPktsRcvd { - config "false"; - description "No OSPF Interface Packets Received"; + leaf privtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivTypeT; + description "Priv Protocol Type"; + } + leaf islocalizedkey { + type boolean; + description "whether localized key configured"; + } + leaf isenforcepriv { + type boolean; + description "whether enforce priv con"; } - // Received LSA packets ignored - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf rcvdLsaPktsIgnored { - config "false"; - description "Received LSA Packets Ignored"; + leaf usrengineId { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngId; + description "Configured Engine Id"; } - // Number of LSA packets dropped during SPF run - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedLsaPktsWhileSPF { - config "false"; - description "LSA Packets Dropped During SPF"; + leaf usrengineIdlen { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngIdLen; + description "Configured Engine Id len"; } + } - // Number of LSA packets dropped during graceful restart - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedLsaPktsWhileGR { - config "false"; - description "LSA Packets Dropped During GR"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + grouping snmp_LocalUser-group { + description "Snmp local user"; + leaf ipv4AclName { + type string; + description "IPv4 ACL name to filter SNMP requests"; + } + leaf ipv6AclName { + type string; + description "IPv6 ACL name to filter SNMP requests"; } - // Total packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf totalPktsSent { + leaf hashedauthpwd { config "false"; - description "Total Packets Sent"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Hashed Auth Password"; } - // Hello packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf helloPktsSent { + leaf encrptprivpwd { config "false"; - description "Hello Packets Sent"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Encrypted Priv Password"; } - // Database description packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dbdPktsSent { - config "false"; - description "DBD Packets Sent"; + // User name + leaf userName { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_userNameT; + description "snmp-server user name"; } - // Link-state request packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsReqPktsSent { - config "false"; - description "LSREQ Packets Sent"; + leaf authpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Auth Password"; } - // Link-state update packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsUpdPktsSent { - config "false"; - description "LSU Packets Sent"; + leaf authtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthTypeT; + description "Auth Protocol Type"; } - // Link-state ack packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsAckPktsSent { - config "false"; - description "LSACK Packets Sent"; + leaf privpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivPasswd; + description "Priv Password"; } - // Dropped send packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedSendPkts { - config "false"; - description "Dropped Send Packets"; + leaf privtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivTypeT; + description "Priv Protocol Type"; + } + leaf islocalizedkey { + type boolean; + description "whether localized key configured"; + } + leaf isenforcepriv { + type boolean; + description "whether enforce priv con"; } - // Error send packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errSendPkts { - config "false"; - description "Error Send Packets"; + leaf usrengineId { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngId; + description "Configured Engine Id"; } - // Number of first transmission of LSU packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuFirstTxPkts { - config "false"; - description "LSU First Tx Packets"; + leaf usrengineIdlen { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngIdLen; + description "Configured Engine Id len"; } + container group-items { + list UserGroup-list { + key "groupName"; - // Number of retransmissions of LSU packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuRexmitPkts { - config "false"; - description "LSU Retransmission Packets"; + uses snmp_UserGroup-group; + description "Snmp user group configuration MO list"; + } + description "Snmp user group configuration MO"; + } + } - // Type is an MO-Defined-Type - type ospf_Counter32; + grouping snmp_UserGroup-group { + description "Snmp user group configuration MO"; + + // Group name + leaf groupName { + + type snmp_userNameT; + description "snmp-server user name"; } + } - // Number of LSU packets sent in response to LSREQ packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuForLsreqPkts { - config "false"; - description "LSU Packets For LSREQ Packets"; + grouping snmp_ServerShutdown-group { + description "SNMP server system shutdown"; - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf sysShutdown { + + type snmp_Boolean; + default "no"; + description "SNMP server system shutdown control"; } + } - // Number of LSU packets sent to a neighbor specifically - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuPeerTxPkts { + grouping syslog_Acct-group { + description "Syslog Accounting"; + leaf timerTick { config "false"; - description "LSU Packets To Peer"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint32; } - // Number of times flooding packets dropped due to IP queue throttling - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf floodPktSendIpThrottle { + leaf name { config "false"; - description "Flood Packet Send IP Throttle"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Number of times flooding packets dropped due to token throttling - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf floodPktSendTokenThrottle { + // - Admin state + leaf adminSt { config "false"; - description "Flood Packet Send Token Throttle"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type nw_AdminSt; + description "Admin State"; } - leaf lastStatsClearTs { + + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } } - grouping ospf_MaxLsaP-group { + grouping syslog_Syslog-group { + description "syslog root node"; - // Inherited From pol:Obj - // Modified by Override: ospf:AMaxLsaP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container timestamp-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses syslog_TimeStamp-group; + description "Syslog TimeStamp Format"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AMaxLsaP->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // MO for Rfc Strict support for syslog formats + container rfcstrict-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses syslog_RfcStrict-group; + description + "RFC Logging Format, with this option set to a supported syslog RFC number, + all syslogs from the device will follow configured RFC format"; } + container level-items { + list Level-list { + key "facility"; - // maximum number of non self-generated LSAs - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf maxLsa { - description "Maximum # of non self-generated LSAs"; - - // Type is an MO-Defined-Type - type ospf_MaxLsa; + uses syslog_Level-group; + description "Level list"; + } + description "Level"; } - // Threshold value (%) at which to generate a warning message - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf thresh { - description "Threshold"; + container monitor-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaThresh; + uses syslog_TermMonitor-group; + description "Terminal Monitor"; } - // Specifies the number of times the OSPF process can - // consecutively be placed into the sleep state. - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf sleepCnt { - description "Sleep Count"; + container console-items { - // Type is an MO-Defined-Type - type ospf_SleepCnt; + uses syslog_Console-group; + description "Console"; } - // Specifies the time (in minutes) to ignore all neighbors after - // the maximum limit of LSAs has been exceeded - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf sleepIntvl { - description "Sleep Interval"; + container originid-items { - // Type is an MO-Defined-Type - type ospf_SleepIntvl; + uses syslog_Originid-group; + description "Hostname,IP address,or string to append to syslog msgs"; } - // Specifies the time, in minutes, after which the - // sleep count is reset to zero. - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf resetIntvl { - description "Reset Interval"; + // dns-refresh-interval + container dnsinterval-items { - // Type is an MO-Defined-Type - type ospf_ResetIntvl; + uses syslog_DnsInterval-group; + description "Specifies the server dns-refresh-interval"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // logging rate-limit + container loggingratelimit-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaAct; + uses syslog_LoggingRateLimit-group; + description "Specifies the Logging Rate limit"; } + container rdst-items { + list RemoteDest-list { + key "host"; - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "OperSt"; + uses syslog_RemoteDest-group; + description "Syslog Remote Destination list"; + } + description "Syslog Remote Destination"; + } - // Type is an MO-Defined-Type - type ospf_MaxLsaOperSt; + container source-items { + + uses syslog_SourceInterface-group; + description "Source Interface"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + container file-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaOperStQual; + uses syslog_File-group; + description "File"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf nonSelfLsaCnt { - config "false"; - description "Current # of non self-generated LSAs"; + container inst-items { - // Type is an MO-Defined-Type - type ospf_NonSelfLsaCnt; + uses syslog_Inst-group; + description "Logging Instances"; } + } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf currSleepCnt { - config "false"; - description "Current # of non self-generated LSAs"; + grouping syslog_TimeStamp-group { + description "Syslog TimeStamp Format"; - // Type is an MO-Defined-Type - type ospf_CurrSleepCnt; + leaf format { + + type syslog_TimeStampFormat; + description "Format"; } } - grouping ospf_MaxMetricLsaP-group { + grouping syslog_RfcStrict-group { + description + "RFC Logging Format, with this option set to a supported syslog RFC number, + all syslogs from the device will follow configured RFC format"; - // Max metric controls - specifies when to send max - // metric LSAs and for which routes/links - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf ctrl { - description "Maximum Metric Controls"; + // Syslogs will be complaint to the RFC number specifie for this below property + leaf format { - // Type is an MO-Defined-Type - type ospf_MaxMetricControl; + type syslog_RfcStrictFormat; + description "Rfc number to which syslogs are compliant"; } + } - // Max metric value to be used for external LSAs - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf maxMetricExtLsa { - description "Maximum metric value for external LSAs"; + grouping syslog_Level-group { + description "Level"; - // Type is an MO-Defined-Type - type ospf_MaxMetric; + leaf facility { + + type syslog_Facility; + description "Facility Name"; } - // Max metric value to be used for summary LSAs - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf maxMetricSummLsa { - description "Maximum metric value for summary LSAs"; + // Default value handled in local MO type + leaf severity { - // Type is an MO-Defined-Type - type ospf_MaxMetric; + // Type is a Local-MO-Defined-Type + type syslog_Severity_Level_severity; + description "Severity"; } + } - // Time (in secs) for which max metric should be advertised - // at startup - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf startupIntvl { - description "Startup interval"; + grouping syslog_TermMonitor-group { + description "Terminal Monitor"; - // Type is an MO-Defined-Type - type ospf_StartupIntvl; + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // At startup, advertise max metric until convergence of BGP ASN - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf awaitConvBgpAsn { - description "BGP ASN to wait for"; + leaf severity { - // Type is an MO-Defined-Type - type rtleak_Asn; + type syslog_Severity; + description "Severity"; } } - grouping ospf_InterLeakP-group { + grouping syslog_Originid-group { + description "Hostname,IP address,or string to append to syslog msgs"; - // Inherited From pol:Obj - // Modified by Override: ospf:AInterLeakP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf idtype { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type syslog_OriginIdType; + description "OriginId type for Hostname, IP or String"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AInterLeakP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf idvalue { - // Type is an MO-Defined-Type - type naming_Descr; + type syslog_OriginIdValue; + description "OriginId value for Hostname, IP or String"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; - } - leaf rtMap { - type string { + grouping syslog_DnsInterval-group { + description "Specifies the server dns-refresh-interval"; + leaf dnsRefreshInterval { + type uint32 { + range "10..1440"; } + default "60"; + description "DNS refresh interval for remote syslog server hostnames"; } + } - // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf proto { - description "Protocol"; + grouping syslog_LoggingRateLimit-group { + description "Specifies the Logging Rate limit"; - // Type is an MO-Defined-Type - type rtleak_Proto; + leaf ratelimit { + + type callhome_Boolean; + default "enabled"; + description "rate-limit of syslog messages"; } + } - // Routing protocol instance, the routing instance of the - // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf inst { - description "Instance"; + grouping syslog_SourceInterface-group { + description "Source Interface"; - // Type is an MO-Defined-Type - type rtleak_Inst; + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf asn { - description "Autonomous System Number"; + leaf ifName { - // Type is an MO-Defined-Type - type rtleak_Asn { - } + type nw_IfId; + description "Interface"; } - // DefRtLeak always advertise - // Inherited From ospf:AInterLeakP - // Type is an MO-Defined-Type - leaf always { - description "Always advertise default leak"; + leaf operState { + config "false"; - // Type is an MO-Defined-Type - type ospf_Always; + type syslog_OperState; + description "TBD"; } } - grouping ospf_LeakCtrlP-group { + grouping syslog_Inst-group { + description "Logging Instances"; - // Inherited From pol:Obj - // Modified by Override: ospf:ALeakCtrlP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf modAdminState { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type mon_AdminState; + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ALeakCtrlP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf modSeverity { - // Type is an MO-Defined-Type - type naming_Descr; + type syslog_Severity; + description "Severity level"; } + } - // Controls on what to do when the number of routes cross - // the maximum route/prefix limit - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping mts_Mts-group { + description "MTS stats"; - // Type is an MO-Defined-Type - type rtleak_Ctrl; + container topsaps-items { + + uses mts_TopSaps-group; + description "Top saps based on their usuage"; } - // Maximum limit on routes leaked - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf max { - description "Maximum Limit"; + container qfullsaps-items { - // Type is an MO-Defined-Type - type rtleak_MaxPfx; + uses mts_QfullSaps-group; + description "MTS Q full saps based on their queue limit"; } + } - // Threshold at which warning is issued when number of - // routes crosses the threshold - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf thresh { - description "Threshold"; - - // Type is an MO-Defined-Type - type rtleak_Thresh; - } - - // Maximum number of retries to retrieve the leaked routes, - // this is applicable only when the routes are withdrawn - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; - - // Type is an MO-Defined-Type - type rtleak_Retries; + grouping mts_TopSaps-group { + description "Top saps based on their usuage"; + leaf memUsed { + config "false"; + type uint32; + description "% of memory used by all apps"; } + container tsap-items { + list TSap-list { + config "false"; + key "index"; - // Duration between the retries - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf duration { - description "Duration"; - - // Type is an MO-Defined-Type - type rtleak_Duration; + uses mts_TSap-group; + description "Top saps list"; + } + description "Top saps"; } } - grouping ospf_RibLeakP-group { - leaf rtMap { - type string { - } + grouping mts_TSap-group { + description "Top saps"; + leaf sapId { + config "false"; + type uint32; + description "sap num"; } - - // If always is set to false, only routes that are permitted - // by the route map(rtMap) configuration are downloaded to the - // routing information base (RIB). - // Inherited From rtleak:RibLeakP - // Type is an MO-Defined-Type - leaf always { - description "Filter routes into RIB"; - - // Type is an MO-Defined-Type - type rtleak_Always; + leaf desc { + config "false"; + type string; + description "sap description"; } - } - - grouping ospf_ExtRtSum-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:ARtSum->name - // Type is an MO-Defined-Type - leaf name { + leaf process { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type string; + description "Process owns sap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ARtSum->descr - // Type is an MO-Defined-Type - leaf descr { + leaf timestamp { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; + description "Exact time at which this condition happened"; } - leaf addr { - type address_Ip; + leaf msgCount { + config "false"; + type uint32; + description "Num of messages consumed by the sap"; } - - // Summary address no Advertise - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type ospf_SumControl; + leaf bytesCount { + config "false"; + type uint32; + description "Num of bytes consumed by the sap"; } - - // Number of component routes - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf compRtCnt { + leaf memUsedInTotalMem { config "false"; - description "Number of component routes"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "% of memory used from the global mts memory"; } - - // Route summary cost - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf operCost { + leaf memUsedInSapShare { config "false"; - description "Route Summary Operational Cost"; - - // Type is an MO-Defined-Type - type ospf_SumCost; + type uint32; + description "% of memory used from the memory limit assigned to sap"; } - - // Summary address tag - // Inherited From ospf:AExtRtSum - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; - - // Type is an MO-Defined-Type - type ospf_RtTag; + leaf index { + config "false"; + type uint32; + description "Index of the sap"; + } + leaf nodeId { + config "false"; + type uint32; + description "Node id of the sap"; } } - grouping ospf_EventLogs-group { - - // Event LogType - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + grouping mts_QfullSaps-group { + description "MTS Q full saps based on their queue limit"; + container qsap-items { + list QSap-list { + config "false"; + key "sapId"; - // Type is an MO-Defined-Type - type ospf_EventType; + uses mts_QSap-group; + description "Top saps list"; + } + description "Top saps"; } + } - // Event LogSize - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; - - // Type is an MO-Defined-Type - type ospf_EventLogSize; + grouping mts_QSap-group { + description "Top saps"; + leaf qstate { + config "false"; + type string; + description "Queue state of the sap"; } - - // Event Log size in bytes - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf logSizeKBytes { - description "Event Log Size in KBytes"; - - // Type is an MO-Defined-Type - type ospf_EventLogSizeKBytes; + leaf sapId { + config "false"; + type uint32; + description "sap num"; + } + leaf desc { + config "false"; + type string; + description "sap description"; + } + leaf process { + config "false"; + type string; + description "Process owns sap"; + } + leaf timestamp { + config "false"; + type string; + description "Exact time at which this condition happened"; + } + leaf msgCount { + config "false"; + type uint32; + description "Num of messages consumed by the sap"; + } + leaf bytesCount { + config "false"; + type uint32; + description "Num of bytes consumed by the sap"; + } + leaf memUsedInTotalMem { + config "false"; + type uint32; + description "% of memory used from the global mts memory"; + } + leaf memUsedInSapShare { + config "false"; + type uint32; + description "% of memory used from the memory limit assigned to sap"; + } + leaf index { + config "false"; + type uint32; + description "Index of the sap"; + } + leaf nodeId { + config "false"; + type uint32; + description "Node id of the sap"; } } - grouping rtctrl_L2Evpn-group { + grouping nat_Entity-group { + description "NAT entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This object holds Bridge Domain - // Ethernet VPN instance information - container bdevi-items { - list BDEvi-list { - key "encap"; + container inst-items { - // Added containment: Prefix=bdevi - // Acquired From Package rtctrl - uses rtctrl_BDEvi-group; - } + uses nat_Inst-group; + description "NAT instance"; } } - grouping rtctrl_BDEvi-group { + grouping nat_Inst-group { + description "NAT instance"; - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; + // Holds TCP Time-Out values + leaf tcpTimeout { - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf operRd { - config "false"; - type mtx_array_community; + type nat_NatTimeout; + description "NAT tcp timeout values "; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Holds UDP Time-Out values + leaf udpTimeout { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nat_NatTimeout; + description "NAT udp timeout value"; } - leaf rd { - type mtx_array_community; + + // Holds ICMP Time-out values + leaf icmpTimeout { + + type nat_NatTimeout; + description "NAT icmp timeout value"; } - leaf encap { - type string; + + // Holds DYN Time-out value + leaf timeout { + + type nat_NatTimeout; + description "NAT timeout value"; } - // Route policy holds all route policy entries and route controls - container rttp-items { - list RttP-list { - key "type"; + // Holds Sampling Timeout value + leaf samplingTimeout { - // Added containment: Prefix=rttp - // Acquired From Package rtctrl - uses rtctrl_RttP-group; - } + type nat_SamplingTimeout; + description "Sampling Timeout value"; } - } - grouping rtctrl_RttP-group { + // Holds FINRST Timeout value + leaf finRstTimeout { - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; + type nat_FinSynTimeout; + description "FIN or RST wait timeout"; + } - // Type is an MO-Defined-Type - type bgp_AdminSt; + // Holds SYN Timeout value + leaf synTimeout { + + type nat_FinSynTimeout; + description "SYN wait timeout value"; } - leaf operRttAuto { + + leaf configError { config "false"; - type mtx_array_community; + + type nat_ConfigErrNat; + default "noerror"; + description "Config error for FIN/RST SYN timers"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type arp_LoggingLevel; + default "warning"; + description "Logging level information for NAT"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf creationDelay { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_BatchTimeout; + description "Creation delay timeout for NAT"; } - // Type - // Inherited From rtctrl:ARtP - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf maxTranslation { - // Type is an MO-Defined-Type - type rtctrl_RttPType; + type nat_NatMaxTranslation; + description "NAT max translations"; } - // List of route policy entries - container ent-items { - list RttEntry-list { - key "rtt"; + leaf allHost { - // Added containment: Prefix=ent - // Acquired From Package rtctrl - uses rtctrl_RttEntry-group; - } + type nat_NatMaxTranslationAllHost; + description "NAT max translations all host"; } - // Route control map policy for routes imported/exported - // into an AF. Control is through route maps. - container rtctrlmap-items { + leaf name { - // Added containment as a singleton: Prefix=rtctrlmap - // Acquired From Package rtctrl - uses rtctrl_MapP-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Route control map policy for routes imported/exported - // into an AF in the default VRF. Control is through route maps. - container rtctrldefmap-items { + // Holds NAT global statistics information + // Ephemeral data + container globalstats-items { - // Added containment as a singleton: Prefix=rtctrldefmap - // Acquired From Package rtctrl - uses rtctrl_DomDefMapP-group; + uses nat_GlobalStats-group; + description "NAT global statistics info"; } - } + container dom-items { + list Dom-list { + key "name"; - grouping rtctrl_RttEntry-group { - leaf rtt { - type mtx_array_community; + uses nat_Dom-group; + description "This Object Holds Per Domain (vrf) Information list"; + } + description "This Object Holds Per Domain (vrf) Information"; } + container pool-items { + list Pool-list { + key "poolname"; - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; + uses nat_Pool-group; + description "Pool instance to define pool-addresses list"; + } + description "Pool instance to define pool-addresses"; } } - // Has Polymorphic containment of abstract object aaa:Ep - // Has Polymorphic containment of abstract object aaa:Banner - grouping aaa_UserEp-group { + grouping nat_GlobalStats-group { + description "NAT global statistics info"; - // Type is an MO-Defined-Type - leaf pwdStrengthCheck { - description "Password Strength Check"; + // Holds max permitted and presently active NAT tranlslation infromation + // Ephemeral data + container nattransstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses nat_NatTransStats-group; + description "Max and present active translation stats"; } - // Type is an MO-Defined-Type - leaf pwdSecureMode { - description "Password secure-mode"; + // Ephemeral data + container nattransexpiredstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; - } - leaf pwdMinLength { - type uint16; - default "8"; - } - leaf pwdMaxLength { - type uint16; - default "127"; + uses nat_NatTransExpiredStats-group; + description "Nat translation expired statistics"; } - // Type is an MO-Defined-Type - leaf svcPwdRecovery { - description "Service Password Recovery"; + // Ephemeral data + container natpacketstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses nat_NatPacketStats-group; + description "Packets statistics hits/misses,software translation/drops"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // TCP session statistics + // Ephemeral data + container nattcpstats-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses nat_NatTcpStats-group; + description " Total TCP session statistics"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // NAT packet drops statistics + // Ephemeral data + container natpktdrops-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_NatPktDrops-group; + description "Dynamic nat Address pool usage statistics"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // NAT address pool statistics + // Ephemeral data + container acl-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + // Ephemeral data + list NatAclPooldb-list { + config "false"; + key "aclName"; + + uses nat_NatAclPooldb-group; + description "Dynamic nat address pool usage statistics list"; } + description "Dynamic nat address pool usage statistics"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // NAT interface statistics + // Ephemeral data + container natifstats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_NatIfStats-group; + description " NAT Inside/outside interfaces stats"; } + } - // Polymorphic containment of derivative object aaa:RadiusEp (from aaa:Ep) - container radiusext-items { + grouping nat_NatTransStats-group { + description "Max and present active translation stats"; - // Added containment as a singleton: Prefix=radiusext - // Acquired From Package aaa - uses aaa_RadiusEp-group; + // Ephemeral data + leaf maxDynTransAllowed { + config "false"; + type uint64; + description "Maximum number of dynamic translation allowed"; } - // Polymorphic containment of derivative object aaa:LdapEp (from aaa:Ep) - container ldapext-items { - - // Added containment as a singleton: Prefix=ldapext - // Acquired From Package aaa - uses aaa_LdapEp-group; + // Ephemeral data + leaf maxPerHostTransAllowed { + config "false"; + type uint64; + description "Maximum number of translation allowed per host IP"; } - // Polymorphic containment of derivative object aaa:TacacsPlusEp (from aaa:Ep) - container tacacsext-items { - - // Added containment as a singleton: Prefix=tacacsext - // Acquired From Package aaa - uses aaa_TacacsPlusEp-group; + // Ephemeral data + leaf noOfActiveStatic { + config "false"; + type uint64; + description "Present number of active static translation"; } - container authrealm-items { + // Ephemeral data + leaf noOfActiveDyanamic { + config "false"; + type uint64; + description "Present number of active dyanamic translation"; + } - // Added containment as a singleton: Prefix=authrealm - // Acquired From Package aaa - uses aaa_AuthRealm-group; + // Ephemeral data + leaf noOfActiveICMP { + config "false"; + type uint64; + description "Present number of active ICMP translation"; } + } - // This MO represents an AAA (accounting/authorization/accounting) - // domain. The AAA configuration can be configured per domain. - container logindomain-items { - list LoginDomain-list { - key "name"; + grouping nat_NatTransExpiredStats-group { + description "Nat translation expired statistics"; - // Added containment: Prefix=logindomain - // Acquired From Package aaa - uses aaa_LoginDomain-group; - } + // Ephemeral data + leaf totalNoOfExpiredTranslations { + config "false"; + type uint64; + description "Total number of expired translations"; } - // Banner presented to the user prior to the console, serial and ssh login prompts - container preloginbanner-items { + // Ephemeral data + leaf noOfSynTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to SYN timer expiry"; + } - // Added containment as a singleton: Prefix=preloginbanner - // Acquired From Package aaa - uses aaa_PreLoginBanner-group; + // Ephemeral data + leaf noOfFinRstTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to FIN-RST timer expiry"; } - container remoteuser-items { - list RemoteUser-list { - config "false"; - key "name"; - // Added containment: Prefix=remoteuser - // Acquired From Package aaa - uses aaa_RemoteUser-group; - } + // Ephemeral data + leaf noOfInactiveTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to inactive timer expiry"; } - container user-items { - list User-list { - key "name"; + } - // Added containment: Prefix=user - // Acquired From Package aaa - uses aaa_User-group; - } + grouping nat_NatPacketStats-group { + description "Packets statistics hits/misses,software translation/drops"; + + // Ephemeral data + leaf totalHits { + config "false"; + type uint64; + description "Total number packet hit count"; } - container role-items { - list Role-list { - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_Role-group; - } + // Ephemeral data + leaf hitInToOut { + config "false"; + type uint64; + description "Total number packet hit count in to out flow"; } - container factoryrole-items { - list FactoryRole-list { - key "name"; - // Added containment: Prefix=factoryrole - // Acquired From Package aaa - uses aaa_FactoryRole-group; - } + // Ephemeral data + leaf hitOutToIn { + config "false"; + type uint64; + description "Total number packet hit count out to In flow"; } - container domain-items { - list Domain-list { - key "name"; - // Added containment: Prefix=domain - // Acquired From Package aaa - uses aaa_Domain-group; - } + // Ephemeral data + leaf totalMisses { + config "false"; + type uint64; + description "Total number packet miss count"; } - // This MO stores information about password constratints - // applicable to all the local users. - container pwdprofile-items { + // Ephemeral data + leaf missInToOut { + config "false"; + type uint64; + description "Total number packet miss count in to out flow"; + } - // Added containment as a singleton: Prefix=pwdprofile - // Acquired From Package aaa - uses aaa_PwdProfile-group; + // Ephemeral data + leaf missOutToIn { + config "false"; + type uint64; + description "Total number packet miss count out to in flow"; } - // PKI config: keyrings and CA certs - container pkiext-items { + // Ephemeral data + leaf totalSwTranslation { + config "false"; + type uint64; + description "Total number packet software translation"; + } - // Added containment as a singleton: Prefix=pkiext - // Acquired From Package pki - uses pki_Ep-group; + // Ephemeral data + leaf swTranslationInToOut { + config "false"; + type uint64; + description "Total number packet software translation in to out flow"; } - // Rel-def target from resUserEp - // Inherited From aaa:UserEp - container rtfabricResUserEp-items { + // Ephemeral data + leaf swTranslationOutToIn { + config "false"; + type uint64; + description "Total number packet software translation out to in flow"; + } + } - // Abstract containment of rtfabricResUserEp derived from aaa:UserEp - list RtFabricResUserEp-list { - config "false"; - key "tDn"; + grouping nat_NatTcpStats-group { + description " Total TCP session statistics"; - // Added containment: Prefix=rtfabricResUserEp - // Acquired From Package fabric - uses fabric_RtFabricResUserEp_target-group; - } + // Ephemeral data + leaf tcpEstablished { + config "false"; + type uint64; + description "Total TCP session established"; } - // Rel-def target from userEp - // Inherited From aaa:UserEp - container rtaaaUserEp-items { + // Ephemeral data + leaf tcpClosed { + config "false"; + type uint64; + description "Total TCP session closed"; + } + } - // Abstract containment of rtaaaUserEp derived from aaa:UserEp - list RtAaaUserEp-list { - config "false"; - key "tDn"; + grouping nat_NatPktDrops-group { + description "Dynamic nat Address pool usage statistics"; - // Added containment: Prefix=rtaaaUserEp - // Acquired From Package aaa - uses aaa_RtAaaUserEp_target-group; - } + // Ephemeral data + leaf addrAllocDrops { + config "false"; + type uint64; + description "Address allocation failure drops"; } - } - grouping aaa_RadiusEp-group { + // Ephemeral data + leaf portAllocDrops { + config "false"; + type uint64; + description "Port allocation failure drops"; + } - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + // Ephemeral data + leaf maxLimitDrops { + config "false"; + type uint64; + description "Dynamic translation max limit drops"; + } - // Type is an MO-Defined-Type - type aaa_TimeMin; + // Ephemeral data + leaf icmpMaxLimitDrops { + config "false"; + type uint64; + description "ICMP Translation max limit drops"; } - // Type is an MO-Defined-Type - leaf key { - description "Global RADIUS server shared secret"; + // Ephemeral data + leaf allowedHostLimitDrops { + config "false"; + type uint64; + description "Allowed host per max limit drops"; + } - // Type is an MO-Defined-Type - type aaa_EncKey; + // Ephemeral data + leaf totalSwDrops { + config "false"; + type uint64; + description "Total number packet software drops"; } - // Type is an MO-Defined-Type - leaf keyEnc { - description "Default key encryption"; + // Ephemeral data + leaf swDropInToOut { + config "false"; + type uint64; + description "Total number packet software drops in to out flow"; + } - // Type is an MO-Defined-Type - type aaa_KeyEnc; + // Ephemeral data + leaf swDropOutToIn { + config "false"; + type uint64; + description "Total number packet software drops out to in flow"; } + } - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Radius Logging level"; + grouping nat_NatAclPooldb-group { + description "Dynamic nat address pool usage statistics"; - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + // nat acl name + // Ephemeral data + leaf aclName { + config "false"; + + type nat_stringtype; + description "Nat ACL name"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // nat oveload + leaf overload { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nat_stringtype; + description "Overload ip address,PAT"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // nat pool name + // Ephemeral data + leaf poolName { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nat_stringtype; + description "Nat pool name"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Nat rule type inside/outside + // Ephemeral data + leaf ruleType { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_stringtype; + description "Inside/outside rule"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + leaf noOfAddrInPool { + config "false"; + type uint64; + description "Total number of Addresses in pool"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf noOfAllocated { + config "false"; + type uint64; + description "Pool address allocated in percentage"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Ephemeral data + leaf noOfMissed { + config "false"; + type uint64; + description "Pool address missed in percentage"; + } - // Type is an MO-Defined-Type - type aaa_TimeSec; + // Ephemeral data + leaf ifOverloadName { + config "false"; + + type nat_stringtype; + description "Interface overloaded"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Ephemeral data + leaf ifOverloadAddr { + config "false"; + type address_Ip; + description "Overloaded interface IP address"; + } - // Type is an MO-Defined-Type - type aaa_Retries; + // Ephemeral data + leaf ifOverloadState { + config "false"; + + type nat_stringtype; + description "Interface status"; } + } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + grouping nat_NatIfStats-group { + description " NAT Inside/outside interfaces stats"; - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf noOfInsideInterface { + config "false"; + type uint64; + description "Number of nat inside interface"; } - container radiusprovider-items { - list RadiusProvider-list { - key "name"; - // Added containment: Prefix=radiusprovider - // Acquired From Package aaa - uses aaa_RadiusProvider-group; - } + // Ephemeral data + leaf noOfOutsideInterface { + config "false"; + type uint64; + description "Number of nat outside interface"; } + } - // This MO represents a group of AAA RADIUS servers. - // A member of this group is represented by ProviderRef MO - container radiusprovidergroup-items { - list RadiusProviderGroup-list { - key "name"; + grouping nat_Dom-group { + description "This Object Holds Per Domain (vrf) Information"; + leaf encap { + config "false"; + type string; + description "Encapsulation"; + } - // Added containment: Prefix=radiusprovidergroup - // Acquired From Package aaa - uses aaa_RadiusProviderGroup-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container radiusservermonitor-items { + // NAT Interface config MO + container if-items { + list If-list { + key "id"; - // Added containment as a singleton: Prefix=radiusservermonitor - // Acquired From Package aaa - uses aaa_RadiusServerMonitor-group; + uses nat_If-group; + description "NAT interface config inside/outside list"; + } + description "NAT interface config inside/outside"; } + container xlate-items { + list IpNat-list { + key "xlateType"; - // Rel-def target from resRadiusEp - // Inherited From aaa:RadiusEp - container rtfabricResRadiusEp-items { + uses nat_IpNat-group; + description "IP NAT instance for config list"; + } + description "IP NAT instance for config"; + } - // Abstract containment of rtfabricResRadiusEp derived from aaa:RadiusEp - list RtFabricResRadiusEp-list { + // ip nat alias MO + // Ephemeral data + container natalias-items { + + // Ephemeral data + list IpNatAlias-list { config "false"; - key "tDn"; + key "ipAddr"; - // Added containment: Prefix=rtfabricResRadiusEp - // Acquired From Package fabric - uses fabric_RtFabricResRadiusEp_target-group; + uses nat_IpNatAlias-group; + description "Ip nat alias information list"; } + description "Ip nat alias information"; } - } - grouping aaa_RadiusProvider-group { + // Holds NAT translation information + // Ephemeral data + container proto-items { - // Type is an MO-Defined-Type - leaf useType { - description "Usage for the radius server"; + // Ephemeral data + list TranslationDb-list { + config "false"; + key "protocol insideGlobalAddress insideGlobalPort insideLocalAddress insideLocalPort outsideLocalAddress outsideLocalPort outsideGlobalAddress outsideGlobalPort"; - // Type is an MO-Defined-Type - type aaa_RadSrvUseType; + uses nat_TranslationDb-group; + description "Nat Translation Database list"; + } + description "Nat Translation Database"; } + } - // Type is an MO-Defined-Type - leaf authPort { - description "authPort"; + grouping nat_If-group { + description "NAT interface config inside/outside"; - // Type is an MO-Defined-Type - type aaa_RadPort; + leaf natIf { + + type nat_NatTrafficDir; + description "NAT interface config inside/outside"; } - // Type is an MO-Defined-Type - leaf acctPort { - description "acctPort"; + leaf configErrIf { + config "false"; - // Type is an MO-Defined-Type - type aaa_RadPort; + type nat_ConfigErrNat; + default "noerror"; + description "Config error in nat interface. "; } - // Per provider configuration, - // if set to 0, it uses global settings value - // - // - // - // - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + grouping nat_IpNat-group { + description "IP NAT instance for config"; - // Type is an MO-Defined-Type - type naming_Descr; + // Properties Starts here + leaf xlateType { + + type nat_InterfaceType; + description "Xlate type to define translation"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // static mo starts here + container protocol-items { + list StaticNat-list { + key "protocol localIp localPort globalIp globalPort"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses nat_StaticNat-group; + description "Static NAT config mo list"; } + description "Static NAT config mo"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // dynamicnat mo starts here + container list-items { + list DynamicNat-list { + key "aclName"; - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_DynamicNat-group; + description "Dynamic NAT MO for config list"; + } + description "Dynamic NAT MO for config"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + grouping nat_StaticNat-group { + description "Static NAT config mo"; - // Type is an MO-Defined-Type - type aaa_EncKey; + leaf protocol { + + type nat_ProtocolType; + description "Specifies tcp/udp/any protocol"; } - leaf keySet { - config "false"; - type boolean; + leaf localIp { + type address_Ip; + description "Local ip address of a network"; + } + leaf globalIp { + type address_Ip; + description "Global ip address of a network"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + leaf localPort { - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_RadiusProvider_keyEnc; + type nat_port; + description "Port number for localip "; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + leaf globalPort { - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_RadiusProvider_timeout; + type nat_port; + description "Port number for global ip"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; + leaf noAlias { - // Type is a Local-MO-Defined-Type - type aaa_Retries_RadiusProvider_retries; + type nat_booltype; + description "no-alias flag disables addition of alias"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { + leaf configErrStaticNat { config "false"; - description "Provider Operational State"; - // Type is an MO-Defined-Type - type aaa_ProviderState; + type nat_ConfigErrNat; + default "noerror"; + description "Config error in static nat."; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + leaf groupId { - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + type nat_twicenatgroup; + description "Group id for Twice-Nat"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + leaf dynamic { - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + type nat_booltype; + description "Dynamic flag for Twice-Nat"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + leaf matchInVrf { - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; - } - leaf epgDn { - config "false"; - type string; + type nat_booltype; + description "Match in vrf, flag used in vrf-aware Nat"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "Vrf Name"; + leaf addRoute { - // Type is an MO-Defined-Type - type l3_VrfName; + type nat_booltype; + description "Adds route for translations"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider SNMP Index"; + grouping nat_DynamicNat-group { + description "Dynamic NAT MO for config"; - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; - } - } + leaf aclName { - grouping aaa_RadiusProviderGroup-group { + type nat_stringtype; + description "To define ACL allowing set of addresses Property has READ-Create access."; + } - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + leaf interface { - // Type is an MO-Defined-Type - type aaa_ProviderGroupDeadtime; + type nw_IfId; + description "Interface name for overload case"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf poolName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nat_NatPoolname; + description "Defines set of address-range"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf overload { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_booltype; + description "Allows usage of same ip , with different port numbers"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf configErrDynamicNat { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_ConfigErrNat; + default "noerror"; + description "Config error in Dynamic nat"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf groupId { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_twicenatgroup; + description "Group id for Twice-Nat"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider Group SNMP Index"; + leaf dynamic { - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; + type nat_booltype; + description "Dynamic flag for Twice-Nat"; } - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + leaf matchInVrf { - // Type is an MO-Defined-Type - type nw_IfId; + type nat_booltype; + description "Match in vrf, flag used in vrf-aware Nat"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + leaf addRoute { - // Type is an MO-Defined-Type - type l3_VrfName; + type nat_booltype; + description "Adds route for translations"; } + } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + grouping nat_IpNatAlias-group { + description "Ip nat alias information"; - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + // Ephemeral data + leaf ipAddr { + config "false"; + type address_Ip; + description "Nat alias ip address"; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Nat alias interface name"; } } - grouping aaa_ProviderRef-group { + grouping nat_TranslationDb-group { + description "Nat Translation Database"; - // This property dicates the order in which the Provider - // referred by this MO will be tried within the ProviderGroup - // Type is an MO-Defined-Type - leaf order { - description "Order in which Providers are Tried"; + // Ephemeral data + leaf protocol { + config "false"; + type string; + description "Protocol , tcp/udp/any"; + } - // Type is an MO-Defined-Type - type aaa_Order; + // Ephemeral data + leaf insideGlobalAddress { + config "false"; + type address_Ip; + description "Inside global address"; } - // Type is an MO-Defined-Type - leaf snmpIndex { + // Ephemeral data + leaf insideGlobalPort { config "false"; - description "Provider SNMP Index"; + type uint32; + description "Inside global port"; + } - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + // Ephemeral data + leaf insideLocalAddress { + config "false"; + type address_Ip; + description "Inside local address"; } - // Inherited From pol:Obj - // Modified by Override: aaa:ProviderRef->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf insideLocalPort { + config "false"; + type uint32; + description "Inside local port"; + } - // Type is an MO-Defined-Type - type naming_Name256 { + // Ephemeral data + leaf outsideLocalAddress { + config "false"; + type address_Ip; + description "Outside local address"; + } - // Copied from "ProviderName" type - length "0..64"; - } + // Ephemeral data + leaf outsideLocalPort { + config "false"; + type uint32; + description "Outside local port"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Ephemeral data + leaf outsideGlobalAddress { + config "false"; + type address_Ip; + description "Outside global address"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf outsideGlobalPort { + config "false"; + type uint32; + description "Outside global port"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Ephemeral data + leaf groupId { + config "false"; + type uint32; + description "Group ID for Twice-Nat"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + // Ephemeral data + leaf entryId { + config "false"; + type uint32; + description "Entry ID to identify unique translation."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + leaf inStats { + config "false"; + type uint32; + description "In statistics count"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf outStats { + config "false"; + type uint32; + description "Out statistics count"; } - } - grouping aaa_RadiusServerMonitor-group { + // Ephemeral data + leaf timeLeft { + config "false"; - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + type nat_NatTimeLeft; + description "Inactive time left"; + } - // Type is an MO-Defined-Type - type aaa_Passwd; + // Ephemeral data + leaf synTimer { + config "false"; + + type nat_NatTimeLeft; + description "TCP syn timer left"; } - // Type is an MO-Defined-Type - leaf idleTime { - description "Idle timer to monitor tacacs/radius server"; + // Ephemeral data + leaf finTimer { + config "false"; - // Type is an MO-Defined-Type - type aaa_IdleTimer; + type nat_NatTimeLeft; + description "TCP fin timer left"; } + } - // Inherited From pol:Obj - // Modified by Override: aaa:RadiusServerMonitor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping nat_Pool-group { + description "Pool instance to define pool-addresses"; - // Type is an MO-Defined-Type - type naming_Name256 { + // Properties Starts here + leaf poolname { - // Copied from "aaa:User" type - length "0..64"; - } + type nat_NatPoolname; + description + "Defines set of address + "; + } + leaf mask { + type address_Ip; + description "NAT netmask for pool-range "; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf prefixlen { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_NatPrefixType; + description "NAT prefix len for pool-range"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf noalias { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_booltype; + description "no-alias flag disables addition of alias"; } + container startip-items { + list PoolAddress-list { + key "startip endip"; - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_PoolAddress-group; + description "NAT pool address instance list"; + } + description "NAT pool address instance"; } } - grouping aaa_LdapEp-group { - - // Type is an MO-Defined-Type - leaf attribute { - description "LDAP Attribute"; - - // Type is an MO-Defined-Type - type aaa_LdapAttribute; + grouping nat_PoolAddress-group { + description "NAT pool address instance"; + leaf startip { + type address_Ip; + description "NAT start ip address for pool-range"; + } + leaf endip { + type address_Ip; + description "NAT end ip address for pool-range"; } - // Type is an MO-Defined-Type - leaf basedn { - description "LDAP Base DN"; + leaf configErr { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapDn; + type nat_ConfigErrNat; + default "noerror"; + description "Config error pool address"; } - // Type is an MO-Defined-Type - leaf filter { - description "LDAP Filter"; + leaf poolAddrDeleted { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapFilter; + type nat_booltype; + description "Pool address deleted"; } + } + + grouping ospf_Entity-group { + description "Holds OSPF control plane entity information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per OSPF instance information + container inst-items { + list Inst-list { + key "name"; + + uses ospf_Inst-group; + description "This object holds per OSPF instance information list"; } + description "This object holds per OSPF instance information"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping ospf_Inst-group { + description "This object holds per OSPF instance information"; - // Type is an MO-Defined-Type - type naming_Descr; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9_][A-Za-z0-9_-]{0,19}"; + } + description "Name"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Modified by Override: aaa:LdapEp->timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type aaa_TimeSec; + type nw_AdminSt; + description "Admin State"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Instance controls + // Default value handled in local MO type + leaf ctrl { - // Type is an MO-Defined-Type - type aaa_Retries; + // Type is a Local-MO-Defined-Type + type nw_InstCtrl_Inst_ctrl; + description "Holds OSPF instance controls"; } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This MO represents a group of AAA LDAP servers. - // A member of this group is represented by ProviderRef MO - container ldapprovidergroup-items { - list LdapProviderGroup-list { - key "name"; + // Memory alert level + leaf memAlert { + config "false"; - // Added containment: Prefix=ldapprovidergroup - // Acquired From Package aaa - uses aaa_LdapProviderGroup-group; - } + type nw_MemAlertLevel; + description "Specifies the memory alert level"; } - container ldapprovider-items { - list LdapProvider-list { + + // This objects hold per OSPF domain (vrf) information + container dom-items { + list Dom-list { key "name"; - // Added containment: Prefix=ldapprovider - // Acquired From Package aaa - uses aaa_LdapProvider-group; + uses ospf_Dom-group; + description "This object holds per OSPF VRF information list"; } + description "This object holds per OSPF VRF information"; } - // Rel-def target from resLdapEp - // Inherited From aaa:LdapEp - container rtfabricResLdapEp-items { - - // Abstract containment of rtfabricResLdapEp derived from aaa:LdapEp - list RtFabricResLdapEp-list { - config "false"; - key "tDn"; + // This object holds the size of the Logfiles for + // various types of OSPF events + container evtlogs-items { + list EventLogs-list { + key "eventType"; - // Added containment: Prefix=rtfabricResLdapEp - // Acquired From Package fabric - uses fabric_RtFabricResLdapEp_target-group; + uses ospf_EventLogs-group; + description "Object holding the size of the Logfiles for various types of OSPF events list"; } + description "Object holding the size of the Logfiles for various types of OSPF events "; } } - grouping aaa_LdapProviderGroup-group { + grouping ospf_Dom-group { + description "This object holds per OSPF VRF information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Router id for this domain, if this is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that domain + leaf rtrId { - // Type is an MO-Defined-Type - type naming_Descr; + type ip_RtrId; + description "Router identifier for this domain"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Dom controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_DomControl; + description "Holds the controls bfd, name-lookup, default-passive and Segment Routing"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Holds the administrative state of domain"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider Group SNMP Index"; + // Administrative distance preference + leaf dist { - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; - } - - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_Dist; + description "Administrative distance preference"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // MAX ECMP + leaf maxEcmp { - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_Ecmp; + description "Maximum Equal Cost Multi Path(ECMP)"; } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + // Bandwidth Reference value. If bwRefUnit is mbps, then the + // range is 1 to 4000000 and if bwRefUnit is gbps, then the + // range is 1 to 4000 + leaf bwRef { - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + type ospf_BwRef; + description + "Bandwidth reference value, holds the range from 1-4000000 if unit is mbps + and holds range from 1-4000 if unit is gbps"; } - } - grouping aaa_LdapProvider-group { - - // Type is an MO-Defined-Type - leaf rootdn { - description "Root DN"; + // Bandwidth Reference Unit + leaf bwRefUnit { - // Type is an MO-Defined-Type - type aaa_LdapDn; + type ospf_BwRefUnit; + description "Bandwidth reference unit (Mbps or Gbps)"; } - // Type is an MO-Defined-Type - leaf port { - description "Port"; + // Default Metric for redistributed routes + leaf defMetric { - // Type is an MO-Defined-Type - type aaa_Port; + type ospf_Metric; + description "Default metric cost for redistributed routes"; } - leaf enableSSL { + leaf rfc1583Compat { type boolean; + description "RFC 1583 compatibility for external path preferences"; } - // Type is an MO-Defined-Type - leaf SSLValidationLevel { - description "SSL certificate validation level"; + // Adjacency change logging level + leaf adjChangeLogLevel { - // Type is an MO-Defined-Type - type aaa_LdapSSLStrictnessLevel; + type ospf_AdjChangeLogLevel; + description "Adjacency change logging level"; } - // This property names the attribute to be downloaded - // which has user's roles and domains information. - // The value of this property takes precendence over the - // value of 'attribute' property in LdapEp MO - // Type is an MO-Defined-Type - leaf attribute { - description "LDAP Attribute"; + // L3VM Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapAttribute; + type ospf_OperSt; + description "Operational state of Layer 3 virtualization related commands(l3vm)"; } - // Ldap Base DN to be used while searching for the user. - // The value of this property takes precendence over the value - // of 'basedn' property in LdapEp MO - // Type is an MO-Defined-Type - leaf basedn { - description "LDAP Base DN"; + // Operational Router id for this dom, if it is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that domain + leaf operRtrId { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapDn; + type ip_RtrId; + description "Operational router identifier for this domain"; } - // Ldap filter to be used while searching for the user. - // The value of this property takes precendence over the - // value of 'filter' property in LdapEp MO - // Type is an MO-Defined-Type - leaf filter { - description "LDAP Filter"; + // Operational SRGB minimum label + leaf operSrgbStart { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapFilter; + type ulib_LabelVal; + description "Operational Segment Routing Global Block(SRGB) start index for OSPF"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Operational SRGB maximum label + leaf operSrgbEnd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ulib_LabelVal; + description "Operational Segment Routing Global Block(SRGB) end index for OSPF"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Operational State of Segment Routing MPLS in OSPF Dom/VRF + leaf operStSgmntRtgMpls { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_SgmntRtgMplsOperSt; + description "Operational state of Segment Routing MPLS in OSPF VRF which is Enable/Disable"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Discard Route Bits + leaf discardRoute { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_DiscardRoute; + description "Control bits for discard-route external and internal"; } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf downbitIgnore { + type boolean; + description "Holds the status of Down-bit ignore"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // Capability vrf-lite + leaf capVrfLite { - // Type is an MO-Defined-Type - type aaa_EncKey; - } - leaf keySet { - config "false"; - type boolean; + type ospf_VrfLiteControl; + description "Capability vrf-lite for L3VPN or Ethernet VPN "; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + // This object holds OSPF information that is operated at a + // interface level + container area-items { + list Area-list { + key "id"; - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_LdapProvider_keyEnc; + uses ospf_Area-group; + description "This object holds OSPF area properties information list"; + } + description "This object holds OSPF area properties information"; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Modified by Override: aaa:LdapProvider->timeout - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_LdapProvider_timeout { - range "5..60"; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; } + description "This object holds OSPF link state databases (LSDB)"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; + // This object holds spf computation frequency controls, none + // of these need to be exposed to the user + container spfcomp-items { - // Type is a Local-MO-Defined-Type - type aaa_Retries_LdapProvider_retries; + uses ospf_SpfComp-group; + description "Shortest Path First(SPF) computation frequency controls"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "Provider Operational State"; + // This object holds lsa related frequency controls, none of + // these need to be exposed to the user + container lsactrl-items { - // Type is an MO-Defined-Type - type aaa_ProviderState; + uses ospf_LsaCtrl-group; + description "Link State Advertisement(LSA) related frequency controls"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + // This object holds the OSPF VRF related statistics + container domstats-items { - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + uses ospf_DomStats-group; + description "This object holds the OSPF VRF related statistics"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + // This object holds per OSPF VRF graceful restart information + container gr-items { - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + uses ospf_Gr-group; + description "Object holding per OSPF VRF graceful restart information"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + // This object holds OSPF information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; + uses ospf_If-group; + description "Object holds OSPF information that is operated at interface level list"; + } + description "Object holds OSPF information that is operated at interface level"; } - leaf epgDn { - config "false"; - type string; + + // This object holds per domain max-lsa information + container maxlsap-items { + + uses ospf_MaxLsaP-group; + description "Max-LSA(Link State Advertisement) Database overflow for each domain or VRF"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "Vrf Name"; + // This object holds per domain max-lsa information + container maxmetriclsap-items { - // Type is an MO-Defined-Type - type l3_VrfName; + uses ospf_MaxMetricLsaP-group; + description "Max-Metric Link State Advertisement information per Domain/VRF"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider SNMP Index"; + // This objects holds default route leak policy, + // this is not needed for FCS in our solution + container defrtleak-items { - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + uses ospf_DefRtLeakP-group; + description "Default Route leak or the distribution policy"; } - } - grouping aaa_TacacsPlusEp-group { + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to ospf + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + uses ospf_InterLeakP-group; + description "This defines distribution of routes from other protocols to OSPF list"; + } + description "This defines distribution of routes from other protocols to OSPF"; + } - // Type is an MO-Defined-Type - type aaa_TimeMin; + // Leak controls related to the number of routes leaked + container leakctrl-items { + + uses ospf_LeakCtrlP-group; + description "Leak controls related to the number of routes leaked"; } - // Type is an MO-Defined-Type - leaf key { - description "Global TACACS+ server shared secret"; + container ribleak-items { - // Type is an MO-Defined-Type - type aaa_EncKey; + uses ospf_RibLeakP-group; + description "OSPF to Route Information Base(RIB) Route Leak/distribution Policy Per Domain or VRF"; } - // Type is an MO-Defined-Type - leaf keyEnc { - description "Default key encryption"; + // External route summarization is specific to external + // routes that are injected into OSPF using route leak. + // Configure external route summarization on ASBRs that + // are leaking routes into OSPF + container extrtsum-items { + list ExtRtSum-list { + key "addr"; - // Type is an MO-Defined-Type - type aaa_KeyEnc; + uses ospf_ExtRtSum-group; + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF list"; + } + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF"; } - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Tacacs Logging level"; + // This object holds the OSPF traffic related information + container trstats-items { - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + uses ospf_TrafficStats-group; + description "This object holds the OSPF traffic related information"; } + } + + grouping ospf_Area-group { + description "This object holds OSPF area properties information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Area id + leaf id { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaId; + description "Area identifier to which a network or interface belongs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Area type (stub | nssa | backbone, etc) + leaf type { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AreaT; + description "Area types can be stub, nssa, backbone etc."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Area controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaControl; + description "Area controls can be ABRs originate summary LSAs into other areas, redistributed LSAs or suppress forwarding address"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Area cost, specifies cost for default summary LSAs. + // Used with nssa/stub area types. Not applicable in + // our fabric solution + leaf cost { - // Type is an MO-Defined-Type - type aaa_TimeSec; + type ospf_AreaCost; + description "Area cost, specifies cost for default summary LSAs, Used with nssa/stub area types"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Segment Routing control + leaf sgmntRtgMpls { - // Type is an MO-Defined-Type - type aaa_Retries; + type ospf_SegRtControl; + description "Segment routing mpls control"; } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // NSSA translator role + leaf nssaTransRole { - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_NssaTransRole; + description "Not-so-stubby area(NSSA) translator role"; } - container tacacsplusprovider-items { - list TacacsPlusProvider-list { - key "name"; - // Added containment: Prefix=tacacsplusprovider - // Acquired From Package aaa - uses aaa_TacacsPlusProvider-group; - } + // Border router count + leaf brCnt { + config "false"; + + type ospf_BrCnt; + description "Area border router count"; } - // This MO represents a group of AAA TACACS+ servers. - container tacacsplusprovidergroup-items { - list TacacsPlusProviderGroup-list { - key "name"; + // AS Border router count + leaf asbrCnt { + config "false"; - // Added containment: Prefix=tacacsplusprovidergroup - // Acquired From Package aaa - uses aaa_TacacsPlusProviderGroup-group; - } + type ospf_AsbrCnt; + description "Autonomous system border router count"; } - container tacacsservermonitor-items { + // LSA checksum sum + leaf lsaCksumSum { + config "false"; - // Added containment as a singleton: Prefix=tacacsservermonitor - // Acquired From Package aaa - uses aaa_TacacsServerMonitor-group; + type ospf_LsaCksumSum; + description "Link-state advertisement(LSA) checksum sum"; } - // Rel-def target from resTacacsPlusEp - // Inherited From aaa:TacacsPlusEp - container rtfabricResTacacsPlusEp-items { + // NSSA translator state + leaf nssaTransSt { + config "false"; - // Abstract containment of rtfabricResTacacsPlusEp derived from aaa:TacacsPlusEp - list RtFabricResTacacsPlusEp-list { - config "false"; - key "tDn"; + type ospf_NssaTransSt; + description "Not-so-stubby area (NSSA) translator state"; + } - // Added containment: Prefix=rtfabricResTacacsPlusEp - // Acquired From Package fabric - uses fabric_RtFabricResTacacsPlusEp_target-group; - } + // NSSA translator stability interval + leaf nssaTransStabIntvl { + config "false"; + + type ospf_NssaTransStabIntvl; + description "Not-so-stubby area (NSSA) translator stability interval"; } - } - grouping aaa_TacacsPlusProvider-group { + // Operational State of Segment Routing MPLS in OSPF Area + leaf operStSgmntRtgMpls { + config "false"; - // Type is an MO-Defined-Type - leaf port { - description "Port"; + type ospf_SgmntRtgMplsOperSt; + description "Segment routing MPLS operational state in OSPF area which is Enable/Disable"; + } - // Type is an MO-Defined-Type - type aaa_Port; + // Authentication type + leaf authType { + + type ospf_AuthT; + description "Authentication type can be simple, none or md5"; } - // Type is an MO-Defined-Type - leaf authProtocol { - description "TACACS+ Authentication Protocol"; + // This object holds the OSPF area related statistics + container areastats-items { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + uses ospf_AreaStats-group; + description "Object holding the OSPF area related statistics"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; } + description "This object holds OSPF link state databases (LSDB)"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // This object holds OSPF information about OSPF virtual + // links + container vlink-items { + list VLink-list { + key "nbrRtrId"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_VLink-group; + description "This object holds information about OSPF virtual links list"; + } + description "This object holds information about OSPF virtual links"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds OSPF information about OSPF sham + // links + container slink-items { + list SLink-list { + config "false"; + key "srcAddr dstAddr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_SLink-group; + description "This object holds information about OSPF sham links list"; } + description "This object holds information about OSPF sham links"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Lsa Leak concrete class. + container lsaleakp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_LsaLeakP-group; + description "Thi object holds link-state advertisement(LSA) leak policies"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // Lsa Leak Control concrete class. + container lsaleakctrlp-items { + list LsaLeakCtrlP-list { + key "dir"; - // Type is an MO-Defined-Type - type aaa_EncKey; - } - leaf keySet { - config "false"; - type boolean; + uses ospf_LsaLeakCtrlP-group; + description "This object holds link-state advertisement(LSA) leak control policies list"; + } + description "This object holds link-state advertisement(LSA) leak control policies"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + // This objects holds default route leak policy, + // this is not needed for FCS in our solution + container defrtleak-items { - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_TacacsPlusProvider_keyEnc; + uses ospf_DefRtLeakP-group; + description "Default Route leak or the distribution policy"; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Modified by Override: aaa:TacacsPlusProvider->timeout - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + // Inter-area route summarization. This is configured + // on ABRs, summarizing routes between areas in the + // autonomous system + container iartsum-items { + list InterAreaRtSum-list { + key "addr"; - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_TacacsPlusProvider_timeout { - range "0..60"; + uses ospf_InterAreaRtSum-group; + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system list"; } + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; - - // Type is a Local-MO-Defined-Type - type aaa_Retries_TacacsPlusProvider_retries; + grouping ospf_AreaStats-group { + description "Object holding the OSPF area related statistics"; + leaf areaCreatedTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the area created"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { + // Number of SPF runs + leaf spfRuns { config "false"; - description "Provider Operational State"; - // Type is an MO-Defined-Type - type aaa_ProviderState; + type ospf_Counter32; + description "Number of Shortest Path First (SPF) runs"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + // LSA count + leaf lsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + type ospf_Counter32; + description "Count of link-state advertisements(LSA)"; + } + leaf lastSpfDuration { + config "false"; + type uint32; + description "Duration of last Shortest Path First (SPF)"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + // Total number of interfaces + leaf ifCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + type ospf_Counter32; + description "Total number of interfaces"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + // Number of active interfaces + leaf activeIfCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; + type ospf_Counter32; + description "Number of active interfaces"; } - leaf epgDn { + + // Number of passive interfaces + leaf passiveIfCnt { config "false"; - type string; + + type ospf_Counter32; + description "Number of passive interfaces"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { + // Number of loopback interfaces + leaf lpbkIfCnt { config "false"; - description "Vrf Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_Counter32; + description "Number of loopback interfaces"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { + // Number of adjacency + leaf adjCnt { config "false"; - description "Provider SNMP Index"; - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + type ospf_Counter32; + description "Number of adjacencies formed"; } - } - - grouping aaa_TacacsPlusProviderGroup-group { - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + // Number of peers in hitless helper mode + leaf grHelperPeerCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupDeadtime; + type ospf_Counter32; + description "Gracefull restart helper peer count"; } + } + + grouping ospf_Db-group { + description "This object holds OSPF link state databases (LSDB)"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Type of the repository + leaf type { + config "false"; + + type ospf_DbT; + description "Type of database repository"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // LSA records + container lsa-items { + list LsaRec-list { + config "false"; + key "type id advRtr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_LsaRec-group; + description "This object holds Link-state advertisement (LSA) database definitions list"; } + description "This object holds Link-state advertisement (LSA) database definitions"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds the OSPF route information + container rt-items { + list Route-list { + config "false"; + key "pfx"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_Route-group; + description "Open Shortest Path First (OSPF) Route information list"; + } + description "Open Shortest Path First (OSPF) Route information"; } + } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { + grouping ospf_LsaRec-group { + description "This object holds Link-state advertisement (LSA) database definitions"; + + // Lsa type + leaf type { config "false"; - description "Provider Group SNMP Index"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; + type ospf_LsaT; + description "Holds Link-state advertisement (LSA) type"; } - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Lsa id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_LsaId; + description "Holds Link-state advertisement (LSA) Id"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Router id + leaf advRtr { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_LsaAdvRtr; + description "Link-state advertisement (LSA) advertising router"; } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + // Sequence number + leaf seq { + config "false"; - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + type ospf_LsaSeq; + description "Holds Link-state advertisement (LSA) sequence number"; } - } - grouping aaa_TacacsServerMonitor-group { - - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + // Age + leaf age { + config "false"; - // Type is an MO-Defined-Type - type aaa_Passwd; + type ospf_LsaAge; + description "Holds the age of Link-state advertisement (LSA)"; + } + leaf arrivalTs { + config "false"; + type union { + type string; + type uint64; + } + description "Holds the arrival timestamp of LSA"; } - // Type is an MO-Defined-Type - leaf idleTime { - description "Idle timer to monitor tacacs/radius server"; + // Checksum + leaf cksum { + config "false"; - // Type is an MO-Defined-Type - type aaa_IdleTimer; + type ospf_LsaCksum; + description "Link-state advertisement (LSA) checksum "; } - // Inherited From pol:Obj - // Modified by Override: aaa:TacacsServerMonitor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { + // Advertisement + leaf advert { + config "false"; - // Copied from "aaa:User" type - length "0..64"; - } + type ospf_LsaAdvert; + description "Link-state advertisement (LSA) Advertisement"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Router Information (RI) LSA records + container ri-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_RiLsaRec-group; + description "Router Information LSA Record"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Extended Prefix LSA records + container epl-items { + list ExtPfxRec-list { + config "false"; + key "ipPfx"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_ExtPfxRec-group; + description "Extended Prefix LSA Record list"; } + description "Extended Prefix LSA Record"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Extended Link TLV records + container ell-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_ExtLinkRec-group; + description "Extended Link LSA Record"; } } - grouping aaa_AuthRealm-group { + grouping ospf_RiLsaRec-group { + description "Router Information LSA Record"; - // default role policy for remote user - // Type is an MO-Defined-Type - leaf defRolePolicy { - description "Default Role Policy"; + // Graceful Restart Capability + leaf grRestartCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_NoRolePolicy; + type ospf_CapFlag; + description "Graceful Restart Capability Flag"; } - // Type is an MO-Defined-Type - leaf radDirectedReq { - description "Enable direct authentication requests to server"; + // Graceful Restart Helper Capability + leaf grRestartHelperCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_CapFlag; + description "Graceful Restart Helper Capability Flag"; } - // Type is an MO-Defined-Type - leaf tacDirectedReq { - description "Enable direct authentication requests to server"; + // Stub Router Support Capability + leaf stubRouterCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_CapFlag; + description "Stub Router Support Capability Flag"; } - // for aaa logging level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "AAA Logging level"; + // Traffic Engineering Support Capability + leaf teCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + type ospf_CapFlag; + description "Traffic Engineering Support Capability Flag"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Point to Point over LAN Support Capability + leaf p2pOverLanCap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_CapFlag; + description "Point to Point over LAN Support Capability Flag"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Experimental Traffic Engineering Support Capability + leaf expTeCap { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_CapFlag; + description "Experimental Traffic Engineering Support Capability Flag"; + } + leaf sgmntRtgGlobalRange { + config "false"; + type uint32; + description "Segment Routing Global Block Range"; + } + leaf sgmntRtgGlobalRangeStart { + config "false"; + type uint32; + description "Segment Routing Global Block Range Start Label"; + } + leaf sgmntRtgLocalRange { + config "false"; + type uint32; + description "Segment Routing Local Block Range"; + } + leaf sgmntRtgLocalRangeStart { + config "false"; + type uint32; + description "Segment Routing Local Block Range Start Label"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + grouping ospf_ExtPfxRec-group { + description "Extended Prefix LSA Record"; + leaf ipPfx { + config "false"; + type address_Ip; + description "ip address with mask"; + } + leaf addressFamily { + config "false"; + type uint16; + description "Extended Prefix Address Family - Ipvx"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + // Extended Prefix Route Type, Intra, Inter, External, NSSA + leaf routeType { + config "false"; + + type ospf_PathT; + description "Extended Prefix Route Type, Intra, Inter, External, NSSA"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Extended Prefix Flags + leaf pfxFlags { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_PfxFlags; + description "Extended Prefix Flags, Attach/Node Flag as in rfc7684"; } - container aaagroup-items { - list AaaServerGroup-list { + + // Segment Routing Prefix SID TLV record + container sid-items { + list SgmntRtgPfxSidRec-list { config "false"; - key "name"; + key "sgmntRtgAlgo"; - // Added containment: Prefix=aaagroup - // Acquired From Package aaa - uses aaa_AaaServerGroup-group; + uses ospf_SgmntRtgPfxSidRec-group; + description "Segment Routing Prefix SID TLV Record list"; } + description "Segment Routing Prefix SID TLV Record"; } + } - // MO representing the Default Authentication configuration for - // all logins - container defaultauth-items { + grouping ospf_SgmntRtgPfxSidRec-group { + description "Segment Routing Prefix SID TLV Record"; - // Added containment as a singleton: Prefix=defaultauth - // Acquired From Package aaa - uses aaa_DefaultAuth-group; - } - container defaultauthor-items { - list DefaultAuthor-list { - key "cmdType"; + // Segment Routing MPLS Prefix Sid Flags + leaf sgmntRtgPfxSidFlags { + config "false"; - // Added containment: Prefix=defaultauthor - // Acquired From Package aaa - uses aaa_DefaultAuthor-group; - } + type ospf_PfxSidFlags; + description "Segment Routing MPLS Prefix Sid Flags, NP/M/E/V/L"; } - container consoleauthor-items { - list ConsoleAuthor-list { - key "cmdType"; - - // Added containment: Prefix=consoleauthor - // Acquired From Package aaa - uses aaa_ConsoleAuthor-group; - } + leaf sgmntRtgMtid { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; } - - container defaultacc-items { - - // Added containment as a singleton: Prefix=defaultacc - // Acquired From Package aaa - uses aaa_DefaultAcc-group; + leaf sgmntRtgAlgo { + config "false"; + type uint16; + description "Segment Routing Algorithm Type"; } - - container pkisshcert-items { - - // Added containment as a singleton: Prefix=pkisshcert - // Acquired From Package aaa - uses aaa_PkiSSHCertificate-group; + leaf sgmntRtgAlgoName { + config "false"; + type string; + description "Segment Routing Algorithm Name ; Name if it's a supported else Unsupported"; } - container pkisshpubkey-items { + // Segment Routing MPLS SID/Index/Label + leaf sgmntRtgPfxSid { + config "false"; - // Added containment as a singleton: Prefix=pkisshpubkey - // Acquired From Package aaa - uses aaa_PkiSSHPublicKey-group; + type ospf_SidIndex; + description "Segment Routing MPLS SID/Index/Label based on Flag"; } + } - // MO representing the Authentication configuration for Console - // Login - container consoleauth-items { + grouping ospf_ExtLinkRec-group { + description "Extended Link LSA Record"; - // Added containment as a singleton: Prefix=consoleauth - // Acquired From Package aaa - uses aaa_ConsoleAuth-group; - } + // Extended Link TLV, Link Type + leaf linkType { + config "false"; - // Rel-def target from resAuthRealm - // Inherited From aaa:AuthRealm - container rtfabricResAuthRealm-items { + type ospf_NwT; + description "OSPFv2 Link type as per rfc7684"; + } + leaf linkId { + config "false"; + type address_Ip; + description "OSPFv2 Link ID as per rfc7684"; + } + leaf linkData { + config "false"; + type address_Ip; + description "OSPFv2 Link Data as per rfc7684"; + } - // Abstract containment of rtfabricResAuthRealm derived from aaa:AuthRealm - list RtFabricResAuthRealm-list { + // Segment Routing Adjacency SID TLV record + container sid-items { + list SgmntRtgAdjSidRec-list { config "false"; - key "tDn"; + key "sgmntRtgAdjSidLabel"; - // Added containment: Prefix=rtfabricResAuthRealm - // Acquired From Package fabric - uses fabric_RtFabricResAuthRealm_target-group; + uses ospf_SgmntRtgAdjSidRec-group; + description "Segment Routing Adjacency SID TLV Record list"; } + description "Segment Routing Adjacency SID TLV Record"; } } - grouping aaa_AaaServerGroup-group { + grouping ospf_SgmntRtgAdjSidRec-group { + description "Segment Routing Adjacency SID TLV Record"; - // Type is an MO-Defined-Type - leaf name { + // Segment Routing Adjacency SID Type + leaf adjSidTlvType { config "false"; - description "server Group"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AdjSidTlvType; + description "Segment Routing Adjacency SID TLV type"; + } + leaf sgmntRtgMtid { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; + } + leaf sgmntRtgWeight { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; } - // Type is an MO-Defined-Type - leaf protocol { + // Segment Routing Adjacency SID TLV Flags + leaf sgmntRtgAdjSidFlags { config "false"; - description "server Group protocol"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupProtocol; + type ospf_AdjSidFlags; + description "Segment Routing Adjacency SID TLV Flags"; + } + leaf sgmntRtgAdjSidNbrId { + config "false"; + type address_Ip; + description "Segment Routing Adjacency SID TLV Neighbor ID"; + } + + // Segment Routing Adjacency SID TLV SID/Index/Label + leaf sgmntRtgAdjSidLabel { + config "false"; + + type ospf_AdjSidLabel; + description "Segment Routing Adjacency SID TLV SID/Index/Label"; } } - grouping aaa_DefaultAuth-group { + grouping ospf_Route-group { + description "Open Shortest Path First (OSPF) Route information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf pfx { + config "false"; + type address_Ip; + description "Specifies the prefix IP address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Path type + leaf pathT { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_PathT; + description "Specifies the path type of route"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Area id + leaf area { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaId; + description "Specifies the Area identifier (ID)"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_RtFlags; + description "Specifies the route flags"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Unicast cost + leaf ucastCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtCost; + description "Holds the unicast route cost"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Multicast cost + leaf mcastCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtCost; + description "Holds the multicast route cost"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Route Tag + leaf tag { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtTag; + description "Specifies the route tag information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Administrative distance preference + leaf dist { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Dist; + description "Administrative distance preference"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // MPLS Segment ID + leaf sgmntRtgMplsSid { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment routing MPLS segment ID"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Segment Routing MPLS in-label + leaf sgmntRtgMplsInLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment Routing MPLS in-label"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Unicast nexthop + container ucnh-items { + list UcNexthop-list { + config "false"; + key "if addr"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + uses ospf_UcNexthop-group; + description "Open Shortest Path First (OSPF) Unicast nexthop information list"; + } + description "Open Shortest Path First (OSPF) Unicast nexthop information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Multicast nexthop + container mcnh-items { + list McNexthop-list { + config "false"; + key "if addr"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf errEn { - type boolean; - default "true"; + uses ospf_McNexthop-group; + description "Holds OSPF Multicast nexthop information list"; + } + description "Holds OSPF Multicast nexthop information"; } + } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + grouping ospf_UcNexthop-group { + description "Open Shortest Path First (OSPF) Unicast nexthop information"; - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + // Nexhop interface + leaf if { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type nw_IfId; + description "Specifies the nexhop interface"; + } + leaf addr { + config "false"; + type address_Ip; + description "Specifies the nexhop interface IP address"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_NhFlags; + description "Specifies nexhop interface flags"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // Segment Routing MPLS out-label + leaf sgmntRtgMplsOutLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_SgmntRtgMplsLabel; + description "Segment-routing Multiprotocol Label Switching(MPLS) out-label"; } } - grouping aaa_DefaultAuthor-group { + grouping ospf_McNexthop-group { + description "Holds OSPF Multicast nexthop information"; - // Inherited From pol:Obj - // Modified by Override: aaa:DefaultAuthor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Nexhop interface + leaf if { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nw_IfId; + description "Specifies the nexhop interface"; } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf addr { + config "false"; + type address_Ip; + description "Specifies the nexhop interface IP address"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:DefaultAuthor->realm - // Type is an MO-Defined-Type - leaf realm { + // Flags + leaf flags { config "false"; - description "Realm"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_NhFlags; + description "Specifies nexhop interface flags"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Segment Routing MPLS out-label + leaf sgmntRtgMplsOutLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment-routing Multiprotocol Label Switching(MPLS) out-label"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } + grouping ospf_VLink-group { + description "This object holds information about OSPF virtual links"; - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Router id associated with virtual link neighbor + leaf nbrRtrId { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ip_RtrId; + description "Router id associated with virtual link neighbor"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // This object holds OSPF neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf authorMethodNone { - type boolean; - } - leaf localRbac { - type boolean; - default "true"; + uses ospf_AdjEp-group; + description "This object holds OSPF adjacency information list"; + } + description "This object holds OSPF adjacency information"; } - // Inherited From aaa:AuthorConfig - // Type is an MO-Defined-Type - leaf cmdType { - description "Type of command for authorization"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_CmdType; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } } - grouping aaa_ConsoleAuthor-group { + grouping ospf_AdjEp-group { + description "This object holds OSPF adjacency information"; - // Inherited From pol:Obj - // Modified by Override: aaa:ConsoleAuthor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Neighbor's router id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AdjId; + description "OSPF adjacency neighbor's router id"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Neighbor's interface id + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AdjIfId; + description "Neighbor's interface id"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Adjacency state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AdjOperSt; + description "Operational state of OSPF adjacency"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:ConsoleAuthor->realm - // Type is an MO-Defined-Type - leaf realm { + // BFD state + leaf bfdSt { config "false"; - description "Realm"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_BfdOperSt; + description "Operational Bidirectional Forwarding Detection(BFD) State"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Area id + leaf area { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AreaId; + description "OSPF adjacency operational area ID"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Neighbor priority + leaf prio { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigPrio; + description "Operational neighbor priority"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Designated router address + leaf dr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigAddr; + description "Designated router address(DR)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Backup designated router address + leaf bdr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigAddr; + description "Backup designated router address(BDR)"; } - - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf peerIp { + config "false"; + type address_Ip; + description "Adjacency peer IP address"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Peer options from hello packet + leaf helloOptions { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Options; + description "Peer options from hello packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Peer options from DBD packet + leaf dbdOptions { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Options; + description "Peer options from database descriptor(DBD) packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf authorMethodNone { - type boolean; + type ospf_AdjFlags; + description "Adjacency flags can be master-self,all-dbds-sent,all-dbds-acked and peer-gr-helper"; } - leaf localRbac { - type boolean; - default "true"; + leaf peerName { + config "false"; + type string; + description "OSPf adjacency Neighbor name"; } - // Inherited From aaa:AuthorConfig - // Type is an MO-Defined-Type - leaf cmdType { - description "Type of command for authorization"; + // Segment Routing Adjacency sid label + leaf sgmntRtgMplsAdjSidLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_CmdType; + type ospf_AdjSidLabel; + description "Segment routing adjacency label absolute value"; } - } - - grouping aaa_DefaultAcc-group { - // Inherited From pol:Obj - // Modified by Override: aaa:DefaultAcc->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Segment Routing Adjacency sid flags + leaf sgmntRtgMplsAdjSidFlags { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_AdjSidFlags; + description "Segment routing adjacency sid flags"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // This object holds the OSPF neighbor related statistics + container adjstats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_AdjStats-group; + description "Object holds OSPF neighbor adjacency related statistics"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds OSPF graceful restart operational + // information + container gr-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses ospf_GrSt-group; + description "Object holds OSPF Graceful Restart operational Information"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + grouping ospf_AdjStats-group { + description "Object holds OSPF neighbor adjacency related statistics"; - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // State change count + leaf stChgCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_Counter32; + description "Number of states changed during OSPF adjacency"; } - - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf lastStChgTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the latest state change"; + } + leaf lastNonHelloPktTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the last non hello packet received"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // DBD Sequence number + leaf dbdSeqNum { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Database descriptor(DBD) sequence number"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Number of LSAs on request list + leaf reqLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of link-state advertisement(LSAs) on request list"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Outstanding LSAs from last request + leaf outstandingLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of outstanding LSAs from last request"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Number of retransmissions of LSA request + leaf lsaReqRexmitCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of retransmissions of LSA request"; + } + leaf deadTimerExpTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the dead timer expiry"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + grouping ospf_GrSt-group { + description "Object holds OSPF Graceful Restart operational Information"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + // Peer restart helper Status + leaf helperSt { + config "false"; + + type ospf_HelperSt; + description "Peer restart helper status"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Peer restart helper age + leaf helperAge { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelperAge; + description "Peer restart helper age"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Peer restart helper exit qualifier + leaf helperExitQual { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf accMethodNone { - type boolean; - default "true"; - } - leaf localRbac { - type boolean; - default "true"; + type ospf_HelperExitQual; + description "Peer restart helper exit qualifier"; } } - grouping aaa_PkiSSHCertificate-group { - leaf local { - type boolean; - } + grouping ospf_AuthNewP-group { + description "This object holds authentication new policy information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Authentication type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AuthT; + description "Authentication types can be simple, md5 or none."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Authentication key id + leaf keyId { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AuthKeyId; + description "Key id used for authentication"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_AuthKey; + description "Key used for authenticatoin"; + } + leaf keySecureMode { + type boolean; + default "false"; + description "Encrypted authentication key or plain text key"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Authentication md5 key + leaf md5key { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AuthKey; + description "Authentication md5 key"; } + leaf md5keySecureMode { + type boolean; + default "false"; + description "Encrypted authentication md5 key or plain text key"; + } + leaf keychain { + type string; + description "Authentication keychain"; + } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + grouping ospf_SLink-group { + description "This object holds information about OSPF sham links"; + leaf srcAddr { + config "false"; + type address_Ip; + description "Sham-link source IP address"; + } + leaf dstAddr { + config "false"; + type address_Ip; + description "Sham-link destination IP address"; + } + leaf demandCkt { + config "false"; + type boolean; + description "Specifies whether a OSPF sham-link interface is a demand circuit or not"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Cost of the interface + leaf cost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_IfCost; + description "Specifies the cost of interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } } - grouping aaa_PkiSSHPublicKey-group { - leaf local { - type boolean; - } + grouping ospf_LsaLeakP-group { + description "Thi object holds link-state advertisement(LSA) leak policies"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type rtleak_Scope; + description "Scope"; + } + leaf rtMap { + config "false"; + type string; + description "Route Map"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_LsaLeakOperSt; + description "Operational state of LSA leak"; } + } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + grouping ospf_LsaLeakCtrlP-group { + description "This object holds link-state advertisement(LSA) leak control policies"; - // Type is an MO-Defined-Type - type aaa_Realm; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + leaf descr { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_Scope; + description "Scope"; + } + leaf rtMap { + type string; + description "Route Map"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + leaf dir { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_RtCtrlDir; + description "Holds route control directory information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_LsaLeakOperSt; + description "Operational state of LSA leak"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + grouping ospf_DefRtLeakP-group { + description "Default Route leak or the distribution policy"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_Scope; + default "defrt"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route map for default-information originate"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // DefRtLeak always advertise + leaf always { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Always; + description "Always advertise default route leak"; } } - grouping aaa_ConsoleAuth-group { + grouping ospf_InterAreaRtSum-group { + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; + } + leaf addr { + type address_Ip; + description "Address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Summary address no Advertise + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_SumControl; + description "Summary address no advertise"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Number of component routes + leaf compRtCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Number of component routes"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Route summary cost + leaf operCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_SumCost; + description "Route summary operational cost"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Area range cost + leaf cost { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SumCost; + description "Area range cost for route summarization"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + grouping ospf_SpfComp-group { + description "Shortest Path First(SPF) computation frequency controls"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Initial spf schedule delay interval + leaf initIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompInitIntvl; + description "Initial SPF schedule delay interval"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Minimum hold time between spf calculations + leaf holdIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompHoldIntvl; + description "Minimum hold time interval between SPF calculations"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Maximum wait time between spf calculations + leaf maxIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompMaxIntvl; + description "Maximum wait time between SPF calculations"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + grouping ospf_LsaCtrl-group { + description "Link State Advertisement(LSA) related frequency controls"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - leaf errEn { - type boolean; - default "true"; + + // LSA group pacing interval + leaf gpPacingIntvl { + + type ospf_LsaGpPacingIntvl; + description "LSA group pacing interval"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Minimum interval between arrival of a LSA + leaf arrivalIntvl { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type ospf_LsaArrivalIntvl; + description "Minimum interval between arrival of a LSA"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + // LSA generation throttle start wait interval + leaf startIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThStartIntvl; + description "LSA generation throttle start wait interval"; } - // Inherited From aaa:AuthConfig - // Modified by Override: aaa:ConsoleAuth->local - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + // LSA generation throttle hold interval + leaf holdIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThHoldIntvl; + description "LSA generation throttle hold interval"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // LSA generation throttle maximum interval + leaf maxIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThMaxIntvl; + description "LSA generation throttle maximum interval"; } } - grouping aaa_LoginDomain-group { + grouping ospf_DomStats-group { + description "This object holds the OSPF VRF related statistics"; - // Inherited From pol:Obj - // Modified by Override: aaa:LoginDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Interface count + leaf ifCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of interfaces"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Area count + leaf areaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the number of area's configured"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Stub area count + leaf stubAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of stub areas"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // NSSA area count + leaf nssaAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Count of not-so-stubby area(NSSA) area"; } - // MO representing the Authentication configuration for - // a domain login - this is always a child of a LoginDomain object - container domainauth-items { + // External area count + leaf extAreaCnt { + config "false"; - // Added containment as a singleton: Prefix=domainauth - // Acquired From Package aaa - uses aaa_DomainAuth-group; + type ospf_Counter32; + description "Holds the count of external areas"; } - // Rel-def target from loginDomain - // Inherited From aaa:LoginDomain - container rtaaaLoginDomain-items { - - // Abstract containment of rtaaaLoginDomain derived from aaa:LoginDomain - list RtAaaLoginDomain-list { - config "false"; - key "tDn"; + // Active stub area count + leaf activeStubAreaCnt { + config "false"; - // Added containment: Prefix=rtaaaLoginDomain - // Acquired From Package aaa - uses aaa_RtAaaLoginDomain_target-group; - } + type ospf_Counter32; + description "Holds the count of active stub areas"; } - } - grouping aaa_DomainAuth-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:DomainAuth->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Active NSSA area count + leaf activeNssaAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Active not-so-stubby area(NSSA) area count"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Active external area count + leaf activeExtAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the active external area count"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Active Area count + leaf activeAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type ospf_Counter32; + description "Holds the count of active areas"; + } + leaf lastStatsClearTs { + config "false"; + type union { + type string; + type uint64; } + description "Holds the last statistics clear timestamp"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Neighbor count + leaf peerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the neighbor/peer count"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:DomainAuth->realm - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // External LSA count + leaf extLsaCnt { + config "false"; - // Type is a Local-MO-Defined-Type - type aaa_Realm_DomainAuth_realm; + type ospf_Counter32; + description "Holds the external link-state advertisement(LSA) count"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Opaque AS LSA count + leaf opaqueAsLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the count of opaque AS LSAs"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Total AS LSA count + leaf totalAsLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the total AS link-state advertisement(LSA) count"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // New LSA Rx count + leaf newLsaRxCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the Rx count of new link-state advertisement(LSA)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // New LSA Tx count + leaf newLsaTxCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the Tx count of new link-state advertisement(LSA)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Area Border Router Status + leaf areaBdrRtr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AreaBdrRtr; + description "Status of Area Border Router(ABR)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // ASBR Router Status + leaf asBdrRtr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_ASBdrRtr; + description "Holds the status of Autonomous System Boundary Router(ASBR)"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + grouping ospf_Gr-group { + description "Object holding per OSPF VRF graceful restart information"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - leaf errEn { + + // Graceful restart controls + leaf ctrl { + + type ospf_GrCtrl; + description "Graceful restart controls like planned, complete and disabled state"; + } + leaf helper { type boolean; default "true"; + description "Graceful restart helper mode"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Graceful restart period + leaf gracePeriod { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type ospf_GrPeriod; + description "Graceful restart period in seconds starting from 5 to 1800"; } + } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + grouping ospf_If-group { + description "Object holds OSPF information that is operated at interface level"; - // Type is an MO-Defined-Type - type aaa_Boolean; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type naming_Descr1024; + description "Description"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type aaa_Boolean; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // MO representing the Default Authentication configuration for - // all logins - container defaultauth-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=defaultauth - // Acquired From Package aaa - uses aaa_DefaultAuth-group; + type nw_IfAdminSt; + description "Admin State"; } - // MO representing the Authentication configuration for Console - // Login - container consoleauth-items { + // Interface controls + leaf ctrl { - // Added containment as a singleton: Prefix=consoleauth - // Acquired From Package aaa - uses aaa_ConsoleAuth-group; + type ospf_IfControl; + description "Interface controls can be MTU ignore, Advertise subnet"; } - } - - grouping aaa_PreLoginBanner-group { - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Passive interface control + leaf passiveCtrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_PassiveControl; + description "Passive interface control. Interface can be configured as passive or non-passive"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // BFD control + leaf bfdCtrl { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_BfdControl; + description "Bidirectional Forwarding Detection (BFD) control"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Network type + leaf nwT { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_NwT; + description "Holds the network type as point2point or broadcast"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Priority, used in determining the designated router on + // this network + leaf prio { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_DesigPrio; + description "Priority, used in determining the designated router on this network"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->message - // Type is an MO-Defined-Type - leaf message { - description "Login Banner Message"; + // Cost of the interface + leaf cost { - // Type is an MO-Defined-Type - type aaa_BannerMsg; + type ospf_IfCost; + description "Cost of the interface ranging from 0 to 65535"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->guiMessage - // Type is an MO-Defined-Type - leaf guiMessage { - description "Login GUI Message"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { - // Type is an MO-Defined-Type - type aaa_BannerMsg; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->delimiter - // Type is an MO-Defined-Type - leaf delimiter { - description "Delimiter character"; + // Area to which this interface belongs to + leaf area { - // Type is an MO-Defined-Type - type aaa_Delimiter; + type ospf_AreaId; + description "Area to which this interface belongs to"; + } + leaf advertiseSecondaries { + type boolean; + default "true"; + description "Advertise secondary IP addresses"; } - // Rel-def target from preLoginBanner - // Inherited From aaa:PreLoginBanner - container rtpreLoginBanner-items { + // Node Flag, determines if prefix attribute + // should have the node flag or not + leaf nodeFlag { - // Added containment as a singleton: Prefix=rtpreLoginBanner - // Acquired From Package aaa - uses aaa_RtPreLoginBanner_target-group; + type ospf_FlagStatus; + description "Node flag, determines if prefix attribute should have the node flag or not"; } - } - - grouping aaa_RemoteUser-group { - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUser->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Operational state + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_IfOperSt; + description "Operational state of the interface"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Operational failed state qualifier + leaf failStQual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_FailStQual; + description "Operational failed state qualifier"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Interface type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_IfType; + description "Type of the interface, loopback, p2p, p2mp, nbma, bcast etc."; } - // From Interface naming:Described - // Inherited From pol:Def - // Modified by Override: aaa:RemoteUser->descr - // Type is an MO-Defined-Type - leaf descr { + // Flags + leaf flags { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_IfFlags; + description "Interface flags, Admin up or Proto up"; } - container userdomain-items { - list RemoteUserDomain-list { - config "false"; - key "name"; - - // Added containment: Prefix=userdomain - // Acquired From Package aaa - uses aaa_RemoteUserDomain-group; - } + leaf addr { + config "false"; + type address_Ip; + description "Interface IPv4 address"; } - } - - grouping aaa_RemoteUserDomain-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUserDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + leaf dr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type address_Ip; + description "Designated router(DR) IP address"; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + leaf bdr { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + type address_Ip; + description "Backup designated router(BDR) Ip address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Designated router id + leaf drId { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ip_RtrId; + description "Designated router(DR) identifier"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // Backup designated router id + leaf bdrId { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - container role-items { - list RemoteUserRole-list { - config "false"; - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_RemoteUserRole-group; - } + type ip_RtrId; + description "Backup designated router (BDR) identifier"; } - } - grouping aaa_RemoteUserRole-group { - - // Type is an MO-Defined-Type - leaf privType { + // LSA checksum sum + leaf lsaCksumSum { config "false"; - description "Privilege Type"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_LsaCksumSum; + description " Link-state advertisement(LSA) checksum sum"; } - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUserRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Operational Cost + leaf operCost { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_IfCost; + description "Operational cost of interface"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Operational Dead interval + leaf operDeadIntvl { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_DeadIntvl; + description "Interface operational dead interval"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Operational SID value for this interface + leaf operSidIndex { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_SidIndex; + description "Operational Segment-Routing prefix SID value. It is relative value to SRBG start."; + } + leaf sgmntRtgMplsEllLsid { + config "false"; + type address_Ip; + description "Segment Routing MPLS Extended Link LSA Link State ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // Explicit-NULL + leaf explicitNull { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Active; + description "Holds the Explicit-NULL state as active or not active"; } - } - grouping aaa_User-group { - - // The user's first name - // Type is an MO-Defined-Type - leaf firstName { - description "First Name"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..32"; - } + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // The user's last name - // Type is an MO-Defined-Type - leaf lastName { - description "Last Name"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..32"; - } + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // The user's e-mail address - // Type is an MO-Defined-Type - leaf email { - description "Email Address"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { - // Type is an MO-Defined-Type - type aaa_Email; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // The user's phone number - // Type is an MO-Defined-Type - leaf phone { - description "Phone Number"; + // This object holds OSPF neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type aaa_Phone; + uses ospf_AdjEp-group; + description "This object holds OSPF adjacency information list"; + } + description "This object holds OSPF adjacency information"; } - // The expiration date of this account - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf expiration { - description "Account Expiration Date"; + // This object holds authentication policy information + container auth-items { - // Type is a Local-MO-Defined-Type - type aaa_Date_User_expiration; + uses ospf_AuthP-group; + description "This object holds authentication policy information"; } - // A boolean value indicating whether this account has an expiration date or not - // Type is an MO-Defined-Type - leaf expires { - description "Expiration Set Status"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } - // Type is an MO-Defined-Type - leaf allowExpired { - description "Allow expired user to be configured"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type aaa_Boolean; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; + } + description "This object holds OSPF link state databases (LSDB)"; } - // Type is an MO-Defined-Type - leaf accountStatus { - description "Account Status"; + // This object holds the OSPF interface related statistics + container ifstats-items { - // Type is an MO-Defined-Type - type aaa_AccountStatus; + uses ospf_IfStats-group; + description "Object holds the OSPF interface related Statistics"; } - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + // This object holds multi-area information + // at a interface level + container multiarea-items { + list MultiArea-list { + key "multiareaid"; - // Type is an MO-Defined-Type - type aaa_Passwd; + uses ospf_MultiArea-group; + description "This object holds multi-area information operated at interface level list"; + } + description "This object holds multi-area information operated at interface level"; } - // Type is an MO-Defined-Type - leaf encPwd { - config "false"; - description "BI encrypted password"; + // This object holds the OSPF traffic related information + container trstats-items { - // Type is an MO-Defined-Type - type aaa_EncryptedArray; + uses ospf_TrafficStats-group; + description "This object holds the OSPF traffic related information"; } - // Type is an MO-Defined-Type - leaf pwdLen { - config "false"; - description "Length of user password"; + container rtospfIfDefToOspfIf-items { - // Type is an MO-Defined-Type - type aaa_PwdLen; - } - leaf pwdSet { - config "false"; - type boolean; - default "true"; + list RtOspfIfDefToOspfIf-list { + config "false"; + key "tDn"; + + uses ospf_RtOspfIfDefToOspfIf_target-group; + } } - // Type is an MO-Defined-Type - leaf pwdEncryptType { - description "Password Encryption Type"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type aaa_KeyEncUserPass; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } + + grouping ospf_AuthP-group { + description "This object holds authentication policy information"; - // Adding a property to hold the old value - // Type is an MO-Defined-Type - leaf oldPwdEncryptType { + // Authentication type + leaf type { config "false"; - description "Old Password Encryption Type"; - // Type is an MO-Defined-Type - type aaa_KeyEncUserPass; + type ospf_AuthT; + description "Authentication types can be simple, md5 or none."; } - // Type is an MO-Defined-Type - leaf isSnmpNotify { + // Authentication key id + leaf keyId { config "false"; - description "Notify to snmp"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_AuthKeyId; + description "Key id used for authentication"; } - // Type is an MO-Defined-Type - leaf pwdLifeTime { - description "Password Life Time"; + // Authentication key + leaf key { + config "false"; - // Type is an MO-Defined-Type - type aaa_PwdLifeTime; + type ospf_AuthKey; + description "Key used for authenticatoin"; } - // This is to allow the admin/aaa users to clear - // locally-authenticated users's password history - // Type is an MO-Defined-Type - leaf clearPwdHistory { - description "Clear Password History"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_Clear; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf unixUserId { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_UnixUID; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inherited From pol:Obj - // Modified by Override: aaa:User->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping ospf_IfStats-group { + description "Object holds the OSPF interface related Statistics"; - // Type is an MO-Defined-Type - type naming_Name256 { + // If events count + leaf evCnt { + config "false"; - // Copied from "aaa:UserName" type - length "0..64"; - } + type ospf_Counter32; + description "Interface events count"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // LSA count + leaf lsaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state advertisement(LSA) count"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Neighbor count + leaf peerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of peers/neighbors"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flood to neighbor count + leaf floodToPeerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Flood to neighbor count"; } - container sshauth-items { + // Number of adjacency + leaf adjCnt { + config "false"; - // Added containment as a singleton: Prefix=sshauth - // Acquired From Package aaa - uses aaa_SshAuth-group; + type ospf_Counter32; + description "Holds the count of adjacency"; } - container usercert-items { - list UserCert-list { - key "name"; - // Added containment: Prefix=usercert - // Acquired From Package aaa - uses aaa_UserCert-group; - } - } - container userdomain-items { - list UserDomain-list { - key "name"; + // Number of peers in hitless helper mode + leaf grHelperPeerCnt { + config "false"; - // Added containment: Prefix=userdomain - // Acquired From Package aaa - uses aaa_UserDomain-group; - } + type ospf_Counter32; + description "Number of peers in GR hitless helper mode"; } + } - // Do not taking backup of this MO, this user data become invalid - // with time - container userdata-items { + grouping ospf_MultiArea-group { + description "This object holds multi-area information operated at interface level"; - // Added containment as a singleton: Prefix=userdata - // Acquired From Package aaa - uses aaa_UserData-group; + // Multi Area id + leaf multiareaid { + + type ospf_AreaId; + description "Holds multi area identifier (ID)"; } } - grouping aaa_SshAuth-group { + grouping ospf_TrafficStats-group { + description "This object holds the OSPF traffic related information"; - // Type is an MO-Defined-Type - leaf data { - description "Ssh Authorization Data"; + // Total packets received + leaf totalPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type aaa_SshData; + type ospf_Counter32; + description "Total number of packets received"; } - leaf fingerprint { + + // Hello packets received + leaf helloPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Total number of hello packets received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:SshAuth->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Database description packets received + leaf dbdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Database description packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Link-state request packets received + leaf lsReqPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state request packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Link-state update packets received + leaf lsUpdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Link-state update packets received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Link-state ack packets received + leaf lsAckPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state ACK packets received"; } - } - - grouping aaa_UserCert-group { - // Type is an MO-Defined-Type - leaf data { - description "User X509 Certificate"; + // Received packets dropped + leaf rcvdPktsDropped { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Count of received packets dropped"; } - leaf fingerprint { + + // Error packets rcvd + leaf errPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Count of Error packets received"; } - // Populated with the output of openssl output of the x509 certificate analysis - // Type is an MO-Defined-Type - leaf certificateDecodeInformation { + // Error hello packets received + leaf errHelloPktsRcvd { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Number of Error hello packets received"; } - // Populated with the PEM format public key extracted from the x509 certificate - // Type is an MO-Defined-Type - leaf publicKey { + // Error database description packets received + leaf errDbdPktsRcvd { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Error database description packets received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Error link-state request packets received + leaf errLsReqPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Error link-state request packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Error link-state update packets received + leaf errLsUpdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Error link-state update packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Error link-state ack packets received + leaf errLsAckPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Error LSACK Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Unknown packets received + leaf unknownPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Count of unknown packets received"; } - } - grouping aaa_UserDomain-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:UserDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Duplicate routerid packets received + leaf dupRtrIdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Duplicate router-id packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Duplicate source addr packets received + leaf dupSrcAddrPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Duplicate source address packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Wrong area packets received + leaf wrongAreaPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Wrong Area Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Invalid source addr packets received + leaf invalidSrcAddrPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Invalid Source Addr Packets Received"; } - container role-items { - list UserRole-list { - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_UserRole-group; - } - } - } + // Invalid destination addr packets received + leaf invalidDestAddrPktsRcvd { + config "false"; - grouping aaa_UserRole-group { + type ospf_Counter32; + description "Invalid Destination Addr Packets Received"; + } - // Type is an MO-Defined-Type - leaf privType { - description "Privilege Type"; + // Bad CRC packets received + leaf badCRCPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_Counter32; + description "Bad CRC Packets Received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:UserRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Bad version packets received + leaf badVersionPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Bad Version Packets Received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Bad reserved fields packets received + leaf badResvFieldPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Bad Reserved Field Packets Received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Changed neighbor routerId or ip address packets received + leaf peerRtrIdChgdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Peer RouterId Changed Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Non hello received packets for which neighbor is not found + leaf peerNotFoundPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Peer Not Found Packets Received"; } - } - grouping aaa_UserData-group { - leaf pwdChangedDate { + // Authentication failed packets received + leaf badAuthPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Bad Authentication Packets Received"; } - // User password history, stores encrypted passwords - // max of PwdProfile.historyCount recent passwords are stored - // Type is an MO-Defined-Type - leaf pwdHistory { + // Bad length packets received + leaf badLenPktsRcvd { config "false"; - description "Password History"; - // Type is an MO-Defined-Type - type aaa_PwdHistory; + type ospf_Counter32; + description "Bad Length Packets Received"; } - // How many times user has changed the password within - // the given time interval - // (pwdChangeIntervalBegin + PwdProfile.changeInterval) - // Type is an MO-Defined-Type - leaf pwdChangeCount { + // Packets received on passive interface + leaf passiveIntfPktsRcvd { config "false"; - description "Password Change Count"; - // Type is an MO-Defined-Type - type aaa_PwdChangeCount; + type ospf_Counter32; + description "Passive Interface Packets Received"; } - leaf pwdChangeIntervalBegin { + + // Packets received on OSPF not enabled interface + leaf noOspfIntfPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "No OSPF Interface Packets Received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Received LSA packets ignored + leaf rcvdLsaPktsIgnored { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Received LSA Packets Ignored"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Number of LSA packets dropped during SPF run + leaf droppedLsaPktsWhileSPF { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "LSA Packets Dropped During SPF"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Number of LSA packets dropped during graceful restart + leaf droppedLsaPktsWhileGR { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "LSA Packets Dropped During GR"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Total packets sent + leaf totalPktsSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Total number of packets sent"; } - } - grouping aaa_Role-group { - - // Type is an MO-Defined-Type - leaf denyVRF { - description "Deny all VRF except allowed ones"; + // Hello packets sent + leaf helloPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Total number of hello packets sent"; } - // Type is an MO-Defined-Type - leaf allowedVRF { - description "mention the allowed VRF if denyVRF is set to yes"; + // Database description packets sent + leaf dbdPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_Counter32; + description "Database description packets sent"; } - // Type is an MO-Defined-Type - leaf denyVLAN { - description "Deny all VLAN except allowed ones"; + // Link-state request packets sent + leaf lsReqPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Link-state request packets sent"; } - // Type is an MO-Defined-Type - leaf allowedVLAN { - description "mention the allowed VLAN if denyVLAN is set to yes"; + // Link-state update packets sent + leaf lsUpdPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_Counter32; + description "Link-state update packets sent"; } - // Type is an MO-Defined-Type - leaf denyIntf { - description "Deny all interfaces except allowed ones"; + // Link-state ack packets sent + leaf lsAckPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; - } - leaf priv { - type string; + type ospf_Counter32; + description "Link-state ACK packets sent"; } - // Type is an MO-Defined-Type - leaf rolePrivType { - description "Privilege Type"; + // Dropped send packets + leaf droppedSendPkts { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_Counter32; + description "Total number of dropped send packets"; } - // Type is an MO-Defined-Type - leaf roleIsBuiltin { + // Error send packets + leaf errSendPkts { config "false"; - description "Role is Built-in"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Total number of error send packets"; } - // Type is an MO-Defined-Type - leaf resetToFactory { - description "Trigger Reset to Factory settings"; + // Number of first transmission of LSU packets + leaf lsuFirstTxPkts { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Number of first transmission of LSU packets"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Role->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of retransmissions of LSU packets + leaf lsuRexmitPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Number of retransmissions of LSU packets"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Number of LSU packets sent in response to LSREQ packets + leaf lsuForLsreqPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Number of LSU packets sent in response to LSREQ packets"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Number of LSU packets sent to a neighbor specifically + leaf lsuPeerTxPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Number of LSU packets sent to a neighbor specifically"; } - // From Interface naming:Described - // Inherited From pol:Def - // Modified by Override: aaa:Role->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Number of times flooding packets dropped due to IP queue throttling + leaf floodPktSendIpThrottle { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Number of times flooding packets dropped due to IP queue throttling"; } - container rule-items { - list RoleRule-list { - key "ruleNumber"; - // Added containment: Prefix=rule - // Acquired From Package aaa - uses aaa_RoleRule-group; - } - } - container intf-items { - list RoleIntf-list { - key "intfName"; + // Number of times flooding packets dropped due to token throttling + leaf floodPktSendTokenThrottle { + config "false"; - // Added containment: Prefix=intf - // Acquired From Package aaa - uses aaa_RoleIntf-group; + type ospf_Counter32; + description "Number of times flooding packets dropped due to token throttling"; + } + leaf lastStatsClearTs { + config "false"; + type union { + type string; + type uint64; } + description "Last traffic statistics clear timestamp"; } } - grouping aaa_RoleRule-group { + grouping ospf_MaxLsaP-group { + description "Max-LSA(Link State Advertisement) Database overflow for each domain or VRF"; - // Type is an MO-Defined-Type - leaf ruleNumber { - description "Role Rule number"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleNumberType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf permission { - description "Permission type permit or deny"; + leaf descr { - // Type is an MO-Defined-Type - type aaa_RulePermissionType; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf ruleAccess { - description "Rule access type command or read or read-write"; + // maximum number of non self-generated LSAs + leaf maxLsa { - // Type is an MO-Defined-Type - type aaa_RuleAccessType; + type ospf_MaxLsa; + description "Maximum number of non self-generated LSAs"; } - // Type is an MO-Defined-Type - leaf ruleScope { - description "Role Rule scope feature or feature-group or OID"; + // Threshold value (%) at which to generate a warning message + leaf thresh { - // Type is an MO-Defined-Type - type aaa_RuleScopeType; + type ospf_MaxLsaThresh; + description "Max LSA threshold value (%) at which to generate a warning message"; } - // Type is an MO-Defined-Type - leaf cmdStr { - description "Allowed command string pattern"; + // Specifies the number of times the OSPF process can + // consecutively be placed into the sleep state. + leaf sleepCnt { - // Type is an MO-Defined-Type - type aaa_RuleCmdStrType; + type ospf_SleepCnt; + description "Specifies the number of times the OSPF process can consecutively be placed into the sleep state"; } - // Type is an MO-Defined-Type - leaf scopeEntity { - description "Allowed scope string"; + // Specifies the time (in minutes) to ignore all neighbors after + // the maximum limit of LSAs has been exceeded + leaf sleepIntvl { - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_SleepIntvl; + description "Specifies time interval(in minutes) to ignore all neighbors after the maximum limit of LSAs has been exceeded"; } - } - grouping aaa_RoleIntf-group { - leaf intfName { - type string; + // Specifies the time, in minutes, after which the + // sleep count is reset to zero. + leaf resetIntvl { + + type ospf_ResetIntvl; + description "Specifies the time, in minutes, after which the sleep count reset to zero"; } - // Type is an MO-Defined-Type - leaf allowInst { - description "interface instances which can be allowed and deny rest"; + leaf action { - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_MaxLsaAct; + description "Specifies the Max LSA action"; } - } - grouping aaa_FactoryRole-group { - leaf priv { + leaf operSt { config "false"; - type string; - } - - // Type is an MO-Defined-Type - leaf resetToFactory { - description "Trigger Reset to Factory settings"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_MaxLsaOperSt; + description "Operational state of max LSA"; } - // Inherited From pol:Obj - // Modified by Override: aaa:FactoryRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operStQual { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_MaxLsaOperStQual; + description "Operational state qualifier for max LSA"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf nonSelfLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_NonSelfLsaCnt; + description "Current number of non self-generated LSAs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf currSleepCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_CurrSleepCnt; + description "Current number of sleep LSAs"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping ospf_MaxMetricLsaP-group { + description "Max-Metric Link State Advertisement information per Domain/VRF"; - // Type is an MO-Defined-Type - type naming_Descr; - } - } + // Max metric controls - specifies when to send max + // metric LSAs and for which routes/links + leaf ctrl { - grouping aaa_Domain-group { + type ospf_MaxMetricControl; + description "Maximum Metric Controls - specifies when to send max-metric LSAs"; + } - // Inherited From pol:Obj - // Modified by Override: aaa:Domain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Max metric value to be used for external LSAs + leaf maxMetricExtLsa { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_MaxMetric; + description "Maximum metric value for external LSAs"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Max metric value to be used for summary LSAs + leaf maxMetricSummLsa { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_MaxMetric; + description "Maximum metric value for summary LSAs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Time (in secs) for which max metric should be advertised + // at startup + leaf startupIntvl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_StartupIntvl; + description "Time (in secs) for which max metric should be advertised at startup"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // At startup, advertise max metric until convergence of BGP ASN + leaf awaitConvBgpAsn { - // Type is an MO-Defined-Type - type naming_Descr; + type rtleak_Asn; + description "At startup, advertise max metric until convergence of BGP ASN"; } } - grouping aaa_PwdProfile-group { + grouping ospf_InterLeakP-group { + description "This defines distribution of routes from other protocols to OSPF"; - // Interval used to warn the users whose password is closed - // to expiry date. warn the user before expirationWarnTime - // days of actual password expiration. - // Type is an MO-Defined-Type - leaf expirationWarnTime { - description "Password Expiration Warn Time in Days"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_PwdExpWarnTime; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // How many recent user passwords should be stored in user - // password history. - // Type is an MO-Defined-Type - leaf historyCount { - description "Password History Count"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_HistoryDepth; + type naming_Descr; + description "Description of the specified attribute"; } - // There are two ways of restricting the user from changing - // the password frequently. - // 1. allow no passwd changes within given time interval. - // 2. allow max of n psswd changes within give time interval. - // noChangeInterval holds the 1st policy mentioned above - // Type is an MO-Defined-Type - leaf noChangeInterval { - description "No Password Change Interval in Hours"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_PwdChangeInterval; + type rtleak_Scope; + default "inter"; + description "Scope"; } - - // ChangeInterval holds the 2nd policy mentioned above - // Type is an MO-Defined-Type - leaf changeInterval { - description "Change Interval in Hours"; - - // Type is an MO-Defined-Type - type aaa_PwdChangeInterval; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; + } + description "Route-map for Inter protocol route leak"; } - // stores which one of the above two policies is active now - // Type is an MO-Defined-Type - leaf changeDuringInterval { - description "Password Policy"; + // Protocol from where the routes are leaked + leaf proto { - // Type is an MO-Defined-Type - type aaa_PwdPolicy; + type rtleak_Proto; + description "Protocol"; } - // How many password changes allowed within changeInterval - // Type is an MO-Defined-Type - leaf changeCount { - description "Number of Password Changes in Interval"; + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // Type is an MO-Defined-Type - type aaa_PwdChangeCount; + type rtleak_Inst; + description "Instance"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } + description "Autonomous System Number"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // DefRtLeak always advertise + leaf always { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Always; + description "Always advertise default route leak"; } } - grouping pki_Ep-group { + grouping ospf_LeakCtrlP-group { + description "Leak controls related to the number of routes leaked"; - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type rtleak_Ctrl; + description "Controls"; } - container webtokendata-items { + // Maximum limit on routes leaked + leaf max { - // Added containment as a singleton: Prefix=webtokendata - // Acquired From Package pki - uses pki_WebTokenData-group; + type rtleak_MaxPfx; + description "Maximum Limit"; } - // Csync2 Pre Shared Key - used to distribute the key to all IFC nodes - container csyncsharedkey-items { + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { - // Added containment as a singleton: Prefix=csyncsharedkey - // Acquired From Package pki - uses pki_CsyncSharedKey-group; + type rtleak_Thresh; + description "Threshold"; } - // Csync2 Policy - used to control csync timeout and enable/disable - container csyncpolicy-items { + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { - // Added containment as a singleton: Prefix=csyncpolicy - // Acquired From Package pki - uses pki_CsyncPolicy-group; + type rtleak_Retries; + description "Retries"; } - container dbgplgch-items { + // Duration between the retries + leaf duration { - // Added containment as a singleton: Prefix=dbgplgch - // Acquired From Package pki - uses pki_DebugPluginChallenge-group; + type rtleak_Duration; + description "Duration"; } - container keyring-items { - list KeyRing-list { - key "name"; + } - // Added containment: Prefix=keyring - // Acquired From Package pki - uses pki_KeyRing-group; + grouping ospf_RibLeakP-group { + description "OSPF to Route Information Base(RIB) Route Leak/distribution Policy Per Domain or VRF"; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Route map used in distribution of routes"; } - // CertificateAuthority object, also called Trust Points in DCOS - container tp-items { - list TP-list { - key "name"; + // If always is set to false, only routes that are permitted + // by the route map(rtMap) configuration are downloaded to the + // routing information base (RIB). + leaf always { - // Added containment: Prefix=tp - // Acquired From Package pki - uses pki_TP-group; - } + type rtleak_Always; + description "Filter routes into RIB"; } + } - // Rel-def target from resPkiEp - // Inherited From pki:Ep - container rtfabricResPkiEp-items { + grouping ospf_ExtRtSum-group { + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF"; - // Abstract containment of rtfabricResPkiEp derived from pki:Ep - list RtFabricResPkiEp-list { - config "false"; - key "tDn"; + leaf name { + config "false"; - // Added containment: Prefix=rtfabricResPkiEp - // Acquired From Package fabric - uses fabric_RtFabricResPkiEp_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping pki_WebTokenData-group { - - // The encryption parameters cannot be modified by a client request - // Type is an MO-Defined-Type - leaf key { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_AES128Key { - length "24"; - } + type naming_Descr; + description "Description of the specified attribute"; + } + leaf addr { + type address_Ip; + description "Address"; } - // Type is an MO-Defined-Type - leaf initializationVector { - config "false"; - description "TBD"; + // Summary address no Advertise + leaf ctrl { - // Type is an MO-Defined-Type - type pki_AES128IV { - length "24"; - } + type ospf_SumControl; + description "Summary address no advertise"; } - // Type is an MO-Defined-Type - leaf hashSecret { + // Number of component routes + leaf compRtCnt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_SHA256_SharedSecret16 { - length "24"; - } + type nw_Counter32; + description "Number of component routes"; } - // Token timeout modifications are allowed - // Type is an MO-Defined-Type - leaf webtokenTimeoutSeconds { - description "Timeout in Seconds"; + // Route summary cost + leaf operCost { + config "false"; - // Type is an MO-Defined-Type - type pki_WebTokenTimeoutType; + type ospf_SumCost; + description "Route summary operational cost"; } - // Knob to control absolute maximum validity period for a webtoken beyond which it cannot be refreshed Units are in hours - minimum 4 hours, maximum 24 hours - // Type is an MO-Defined-Type - leaf maximumValidityPeriod { - description "Maximum Validity Period in hours"; + // Summary address tag + leaf tag { - // Type is an MO-Defined-Type - type pki_WebTokenValidityPeriodType; + type ospf_RtTag; + description "Route tag of external route"; } + } - // Type is an MO-Defined-Type - leaf uiIdleTimeoutSeconds { - description "GUI Idle Timeout in Seconds"; + grouping ospf_EventLogs-group { + description "Object holding the size of the Logfiles for various types of OSPF events "; - // Type is an MO-Defined-Type - type pki_GuiIdleTimeoutType; + // Event LogType + leaf eventType { + + type ospf_EventType; + description "Holds the type of event logging"; } - // Type is an MO-Defined-Type - leaf sessionRecordFlags { - description "Session Recording Options"; + // Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type pki_SessionRecordFlags; + type ospf_EventLogSize; + description "Holds the size of event logging"; } - leaf siteFingerprint { - config "false"; - type string; + + // Event Log size in bytes + leaf logSizeKBytes { + + type ospf_EventLogSizeKBytes; + description "Event Log Size in KBytes"; } + } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping rtctrl_L2Evpn-group { + description "L2EVPN Entity"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds Bridge Domain + // Ethernet VPN instance information + container bdevi-items { + list BDEvi-list { + key "encap"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses rtctrl_BDEvi-group; + description "Bridge Domain Ethernet VPN Instance list"; } + description "Bridge Domain Ethernet VPN Instance"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container encap_mpls-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nvo_EncapMpls-group; + description "Configuration of MPLS-based segment routing encapsulation"; } } - grouping pki_CsyncSharedKey-group { - - // The encryption parameters cannot be modified by any client requests - // Type is an MO-Defined-Type - leaf key { + grouping rtctrl_BDEvi-group { + description "Bridge Domain Ethernet VPN Instance"; + leaf operRd { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type pki_Csync2KeyType; + type mtx_array_community; + description "Operational Route Distinguisher"; } - - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf tblMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map name for table-map command to filter routes."; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf tblMapFltr { + type boolean; + description "Filter option used with table-map configuration for selective route download."; } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + type string; + description "Encapsulation"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Route policy holds all route policy entries and route controls + container rttp-items { + list RttP-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_RttP-group; + description "Route Policy list"; + } + description "Route Policy"; } } - grouping pki_CsyncPolicy-group { - - // Type is an MO-Defined-Type - leaf state { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_CsyncActivationStateType; + grouping rtctrl_RttP-group { + description "Route Policy"; + leaf operRttAuto { + config "false"; + type mtx_array_community; + description "Operational Route Target Import Auto Evpn"; } - // Type is an MO-Defined-Type - leaf interval { - description "TBD"; + // Type + leaf type { - // Type is an MO-Defined-Type - type pki_CsyncRefreshIntervalType; + type rtctrl_RttPType; + description "Type"; } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of route policy entries + container ent-items { + list RttEntry-list { + key "rtt"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses rtctrl_RttEntry-group; + description "Route Entry list"; } + description "Route Entry"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Route control map policy for routes imported/exported + // into an AF. Control is through route maps. + container rtctrlmap-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_MapP-group; + description "Route Control Map Policy"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Route control map policy for routes imported/exported + // into an AF in the default VRF. Control is through route maps. + container rtctrldefmap-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses rtctrl_DomDefMapP-group; + description "Route Control Map Policy for the default VRF"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Route control policy for routes imported/exported + // into an AF in the non-default VRF + container rtctrlnondef-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_DomNonDefP-group; + description "Route Control Policy for the non-default VRF"; } + } - // Csync2 Element - contains - // a) file pattern - // b) type of pattern (include or exclude) - // c) symbolic name of the pattern - container csyncelem-items { - list CsyncElement-list { - key "name"; + grouping rtctrl_RttEntry-group { + description "Route Entry"; + leaf rtt { + type mtx_array_community; + description "Route Target"; + } + } - // Added containment: Prefix=csyncelem - // Acquired From Package pki - uses pki_CsyncElement-group; + grouping rtctrl_MapP-group { + description "Route Control Map Policy"; + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } - grouping pki_CsyncElement-group { - leaf pattern { - type string; + grouping rtctrl_DomDefMapP-group { + description "Route Control Map Policy for the default VRF"; + leaf pfxLimit { + type uint32 { + range "0..2147483647"; + } + default "0"; + description "Default Vrf Prefix Limit"; } - - // Type is an MO-Defined-Type - leaf type { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_CsyncElementType; + leaf allowVpn { + type boolean; + description "Allow VPN to be considered for route leaking"; } - - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf advtVpn { + type boolean; + description "Allow leaked routes to be advertised to VPN"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping rtctrl_DomNonDefP-group { + description "Route Control Policy for the non-default VRF"; + leaf allowVpn { + type boolean; + description "Allow VPN to be considered for route leaking"; } + leaf advtVpn { + type boolean; + description "Allow leaked routes to be advertised to VPN"; + } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + grouping nvo_EncapMpls-group { + description "Configuration of MPLS-based segment routing encapsulation"; + leaf encapCfg { + type boolean; + description "Enable/disable segment routing encapsulation"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf sourceIf { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Source interface associated with segment routing encapsulation."; + } + leaf operPrimaryIp { + config "false"; + type address_Ip; + description "Indicates primary IP address of source interface."; + } + leaf operSecondaryIp { + config "false"; + type address_Ip; + description "Indicates secondary IP address of source interface."; + } + leaf operFlags { + config "false"; + type uint32; + description "Indicates internal operational flags set"; } - } - - grouping pki_DebugPluginChallenge-group { - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operSmSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nvo_SrStateT; + description "Indicates operational FSM state"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf operEncapT { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nvo_MplsEncapT; + description "Indicates encapsulation type"; + } + leaf operDownReason { + config "false"; + type string; + description "Indicates the reason the encapsulation is down (if applicable)."; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + grouping comm_Entity-group { + description "Communication Entity"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + container ssh-items { + + uses comm_Ssh-group; + description "Ssh Service"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container telnet-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses comm_Telnet-group; + description "Telnet Service"; } } - grouping pki_KeyRing-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_KeyringState; + grouping comm_Ssh-group { + description "Ssh Service"; + leaf loginAttempts { + type uint32 { + range "1..10"; + } + default "3"; + description "Max number of login attempts allowed before SSH session is reset"; } - leaf regen { - type boolean; - default "true"; + leaf loginGraceTime { + type uint32 { + range "0..3600"; + } + default "120"; + description "Maximum grace time of SSH login"; } - // Type is an MO-Defined-Type - leaf key { - description "TBD"; + leaf enWeakCiphers { - // Type is an MO-Defined-Type - type pki_PrivateKey; + type aaa_Boolean; + default "no"; + description "Enable or Disable weak Ciphers"; } - // Type is an MO-Defined-Type - leaf modulus { - description "Modulus"; + leaf keyExchangeAlgorithms { - // Type is an MO-Defined-Type - type pki_Modulus; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Key Exchange methods"; } - // Type is an MO-Defined-Type - leaf cert { - description "Certificate"; + leaf ciphers { - // Type is an MO-Defined-Type - type pki_Cert; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Ciphers"; } - // Type is an MO-Defined-Type - leaf certValidUntil { - config "false"; - description "Certificate Validity"; + leaf messageAuthCodes { - // Type is an MO-Defined-Type - type pki_CertValidity; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Message Authentication Codes"; } - // Populated with the output of openssl output of the x509 certificate analysis - // Type is an MO-Defined-Type - leaf certificateDecodeInformation { - config "false"; - description "Certificate Decode Information"; + leaf keyTypes { - // Type is an MO-Defined-Type - type pki_Cert; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Public Key Algorithms"; } - // trust point (CA) reference - // DN IS IMPLIED AND RESOLVED PROGRAMATICALLY - // refers="pki:TP" - // Type is an MO-Defined-Type - leaf tp { - description "Certificate Authority"; + // Operational properties + leaf configErrSshPort { + config "false"; - // Type is an MO-Defined-Type - type naming_Name; + type comm_SshPortfaultBitmapT; + default "noerror"; + description "Error for SSH port config."; } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type comm_Port { + range "22..65535"; } + description "Port"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type comm_AdminState; + description "Admin State"; } - container certreq-items { + // need protocol for creating iptable rule + leaf proto { + config "false"; - // Added containment as a singleton: Prefix=certreq - // Acquired From Package pki - uses pki_CertReq-group; + type comm_Protocol; + default "tcp"; + description "TBD"; } + container key-items { + list SshKey-list { + key "type"; - // Rel-def target from KeyRing - // Inherited From pki:KeyRing - container rtcommKeyRing-items { - - // Abstract containment of rtcommKeyRing derived from pki:KeyRing - list RtCommKeyRing-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtcommKeyRing - // Acquired From Package comm - uses comm_RtCommKeyRing_target-group; + uses comm_SshKey-group; + description "Ssh Keys list"; } + description "Ssh Keys"; } - // Rel-def target from keyringRef - // Inherited From pki:KeyRing - container rtaaaKeyringRef-items { + container rekey-items { - // Abstract containment of rtaaaKeyringRef derived from pki:KeyRing - list RtAaaKeyringRef-list { - config "false"; - key "tDn"; + uses comm_Rekey-group; + description "SSH rekey container"; + } - // Added containment: Prefix=rtaaaKeyringRef - // Acquired From Package aaa - uses aaa_RtAaaKeyringRef_target-group; - } + container sshsession-items { + + uses comm_SshSession-group; + description "SSH Session Idle Timeout"; } } - grouping pki_CertReq-group { - leaf pwd { - type string; - } + grouping comm_SshKey-group { + description "Ssh Keys"; - // TODO how to set this value to hostname by default - // Type is an MO-Defined-Type - leaf subjName { - description "Subject Name"; + leaf type { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type comm_SshKeyType; + description "SSH server key type"; + } + leaf keyLen { + type uint32 { + range "0..4096"; } + default "1024"; + description "Length of the key in bytes"; } + } - // Type is an MO-Defined-Type - leaf email { - description "Email Address"; + grouping comm_Rekey-group { + description "SSH rekey container"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..40"; - } + leaf maxData { + + type comm_RekeyDataType; + description "SSH max-data"; } - // Type is an MO-Defined-Type - leaf country { - description "Country"; + leaf maxTime { - // Type is an MO-Defined-Type - type naming_Name { - } + type comm_RekeyDataType; + description "SSH max-time"; } + } - // Type is an MO-Defined-Type - leaf state { - description "State"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + grouping comm_SshSession-group { + description "SSH Session Idle Timeout"; + leaf idleTimeout { + type uint32 { + range "0..120"; } + default "0"; + description "Idle Timeout value in Seconds"; } - - // Type is an MO-Defined-Type - leaf locality { - description "Locality"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf keepAliveCount { + type uint32 { + range "0..5"; } + default "0"; + description "Count of KeepAlive packets to be sent to SSH Client"; } - // Type is an MO-Defined-Type - leaf orgUnitName { - description "Organization Unit Name"; + leaf name { - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf orgName { - description "Organization Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // PEM encoded certificate request - // Type is an MO-Defined-Type - leaf req { - config "false"; - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type pki_Cert; + type comm_Port; + description "Port"; } - } - - grouping pki_TP-group { - // Type is an MO-Defined-Type - leaf certChain { - description "Certificate Chain"; + leaf adminSt { - // Type is an MO-Defined-Type - type pki_Cert; + type comm_AdminState; + description "Admin State"; } - // Certificate Fingerprint populated by backend - // Type is an MO-Defined-Type - leaf fp { + // need protocol for creating iptable rule + leaf proto { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_FP; - } - leaf numCerts { - config "false"; - type uint32; - default "0"; + type comm_Protocol; + default "tcp"; + description "TBD"; } + } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + grouping comm_Telnet-group { + description "Telnet Service"; + leaf loginAttempts { + type uint32 { + range "1..10"; } + default "3"; + description "Max number of login attempts allowed before TELNET session is reset"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr1024 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; - } - } - - grouping mock_MockRoot-group { - leaf disable { - config "false"; - type boolean; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + description "Description of the specified attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type naming_Descr; + type comm_Port; + description "Port"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type comm_AdminState; + default "disabled"; + description "Admin State"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // need protocol for creating iptable rule + leaf proto { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - container session-items { - list MockSession-list { - config "false"; - key "name"; - // Added containment: Prefix=session - // Acquired From Package mock - uses mock_MockSession-group; - } + type comm_Protocol; + default "tcp"; + description "TBD"; } } - grouping mock_MockSession-group { + grouping aaa_UserEp-group { + description "User Management"; - // The DN of the mocked Observable - // Type is an MO-Defined-Type - leaf observable { - config "false"; - description "DN of a Mocked Mo"; + leaf pwdStrengthCheck { - // Type is an MO-Defined-Type - type mock_Observable; + type aaa_Boolean; + description "Password Strength Check"; } - // The duration of the mock operation - // Type is an MO-Defined-Type - leaf duration { - config "false"; - description "Duration of Mock Session "; + leaf pwdSecureMode { - // Type is an MO-Defined-Type - type mock_Duration; + type aaa_Boolean; + description "Password secure-mode"; + } + leaf pwdMinLength { + type uint16; + default "8"; + description "Password min length"; + } + leaf pwdMaxLength { + type uint16; + default "127"; + description "Password max length"; } - // The duration of the mock operation - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mock Session Mode "; + leaf svcPwdRecovery { - // Type is an MO-Defined-Type - type mock_Mode; + type aaa_Boolean; + description "Service Password Recovery"; + } + leaf maxLogins { + type uint32 { + range "0..7"; + } + default "0"; + description "Maximum Simultaneous Logins"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - container stat-items { - list Stats-list { - config "false"; - key "nameSpace statName"; - - // Added containment: Prefix=stat - // Acquired From Package mock - uses mock_Stats-group; - } - } - } - grouping mock_Stats-group { - - // The namespace of the Stats - // Type is an MO-Defined-Type - leaf nameSpace { - config "false"; - description "Stat Namespace "; + container radiusext-items { - // Type is an MO-Defined-Type - type naming_Name; + uses aaa_RadiusEp-group; + description "Default Radius Authentication Settings"; } - // The name of the Stats - // Type is an MO-Defined-Type - leaf statName { - config "false"; - description "Stat Name "; + container ldapext-items { - // Type is an MO-Defined-Type - type naming_Name; + uses aaa_LdapEp-group; + description "Default LDAP Authentication Settings"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container tacacsext-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses aaa_TacacsPlusEp-group; + description "Default TACACS+ Authentication Settings"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + container authrealm-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_AuthRealm-group; + description "AAA Authentication"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // This MO represents an AAA (accounting/authorization/accounting) + // domain. The AAA configuration can be configured per domain. + container logindomain-items { + list LoginDomain-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses aaa_LoginDomain-group; + description "Login Domain list"; } + description "Login Domain"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This MO represents System login for block with attempts fail values. + container loginprotection-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_LoginProtection-group; + description "Specifies the System login block for attempts and within"; } - container counter-items { - list Counter-list { - config "false"; - key "name"; - // Added containment: Prefix=counter - // Acquired From Package mock - uses mock_Counter-group; - } + // Banner presented to the user post login + container postloginbanner-items { + + uses aaa_PostLoginBanner-group; + description "Post Login Banner"; } - } - grouping mock_Counter-group { - - // The start value of the mocked counter - // Type is an MO-Defined-Type - leaf start { - config "false"; - description "Start Value of Mocked Counter "; + // Banner presented to the user prior to the console, serial and ssh login prompts + container preloginbanner-items { - // Type is an MO-Defined-Type - type mock_Value; + uses aaa_PreLoginBanner-group; + description "Pre Login Banner"; } + container remoteuser-items { + list RemoteUser-list { + key "name"; - // The end value of the mocked counter - // Type is an MO-Defined-Type - leaf end { - config "false"; - description "End Value of Mocked Counter "; - - // Type is an MO-Defined-Type - type mock_Value; + uses aaa_RemoteUser-group; + description "Remote User list"; + } + description "Remote User"; } + container user-items { + list User-list { + key "name"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aaa_User-group; + description "Local User list"; } + description "Local User"; } + container role-items { + list Role-list { + key "name"; - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + uses aaa_Role-group; + description "Role list"; + } + description "Role"; + } + container factoryrole-items { + list FactoryRole-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_FactoryRole-group; + description "Role list"; + } + description "Role"; } + container domain-items { + list Domain-list { + key "name"; - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + uses aaa_Domain-group; + description "Security Domain list"; + } + description "Security Domain"; + } + container privsecret-items { + list PrivSecret-list { + key "privLvl"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses aaa_PrivSecret-group; + description "Enable user to a higher privilege after prompting for secret password list"; } + description "Enable user to a higher privilege after prompting for secret password"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This MO stores information about password constratints + // applicable to all the local users. + container pwdprofile-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_PwdProfile-group; + description "Password Change/Expiration Policy"; } - } - - grouping stp_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Role feature-group configuration + container rolefeaturegroup-items { + list RoleFeatureGroup-list { + key "groupName"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses aaa_RoleFeatureGroup-group; + description "Create or Modify role feature group list"; } + description "Create or Modify role feature group"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // PKI config: keyrings and CA certs + container pkiext-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses pki_Ep-group; + description "Public Key Management"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtfabricResUserEp-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + list RtFabricResUserEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResUserEp_target-group; + } } - // This objects hold per stp instance information. There is - // only one instance of stp running in the system today - container inst-items { + container rtaaaUserEp-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package stp - uses stp_Inst-group; + list RtAaaUserEp-list { + config "false"; + key "tDn"; + + uses aaa_RtAaaUserEp_target-group; + } } } - grouping stp_Inst-group { + grouping aaa_RadiusEp-group { + description "Default Radius Authentication Settings"; - // Spanning Tree operating mode - // Type is an MO-Defined-Type - leaf mode { - description "Protocol Mode"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_Mode; + type aaa_TimeMin; + description "Duration for which non-reachable server is skipped"; } - // Linecard ISSU type pathcost options - // Type is an MO-Defined-Type - leaf pathcostOp { - description "Spanning tree pathcost options"; + leaf key { - // Type is an MO-Defined-Type - type stp_PathcostOp; + type aaa_EncKey; + description "Global RADIUS server shared secret"; } - // Enable STP for FCoE VLANs - // Type is an MO-Defined-Type - leaf fcoe { - description "enable spanning tree for fcoe vlan"; + leaf keyEnc { - // Type is an MO-Defined-Type - type stp_AdminSt; + type aaa_KeyEnc; + description "Default key encryption"; } - // Enable spanning tree bridge assurance - // Type is an MO-Defined-Type - leaf bridge { - description "enable spanning-tree bridge assurance on all ports"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type stp_AdminSt; + type aaa_LoggingLevel; + description "Radius Logging level"; } - // spanning tree loopguard options - // Type is an MO-Defined-Type - leaf loopguard { - description "enable loop guard on all ports"; + leaf name { - // Type is an MO-Defined-Type - type stp_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // spanning tree L2 Gateway domain ID - // Type is an MO-Defined-Type - leaf l2GStpDomId { - description "spanning tree L2 Gateway Domain Id"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_L2GStpDomId; + type naming_Descr; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: stp:Inst->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + // add units for timeout. This helps display in CLI + leaf timeout { - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + type aaa_TimeSec; + description "Timeout in Seconds"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + leaf retries { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type aaa_Retries; + description "Retries"; } - // This object holds mcp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Source interface + leaf srcIf { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_If-group; - } + type nw_IfId; + description "Source Interface"; } + container radiusprovider-items { + list RadiusProvider-list { + key "name"; - // Holds mst informaton at switch level - container mstent-items { - - // Added containment as a singleton: Prefix=mstent - // Acquired From Package stp - uses stp_MstEntity-group; + uses aaa_RadiusProvider-group; + description "RADIUS Provider list"; + } + description "RADIUS Provider"; } - // This object holds stp information that is operated at - // vlan level - container vlan-items { - list Vlan-list { - key "id"; + // This MO represents a group of AAA RADIUS servers. + // A member of this group is represented by ProviderRef MO + container radiusprovidergroup-items { + list RadiusProviderGroup-list { + key "name"; - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_Vlan-group; + uses aaa_RadiusProviderGroup-group; + description "RADIUS Provider Group list"; } + description "RADIUS Provider Group"; } - } - - grouping stp_If-group { - // Port mode - // Type is an MO-Defined-Type - leaf mode { - description "Port Mode"; + container radiusservermonitor-items { - // Type is an MO-Defined-Type - type stp_IfMode; + uses aaa_RadiusServerMonitor-group; + description "Periodic server monitoring for Radius"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container dynamicradiusauthserver-items { - // Type is an MO-Defined-Type - type stp_IfControl; + uses aaa_DynamicRadiusAuthServer-group; + description "dynamic authorization local server configuration object"; } - // guard mode - // Type is an MO-Defined-Type - leaf guard { - description "Guard Mode"; + container rtfabricResRadiusEp-items { - // Type is an MO-Defined-Type - type stp_Guard; + list RtFabricResRadiusEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResRadiusEp_target-group; + } } + } - // bpdufilter mode - // Type is an MO-Defined-Type - leaf bpdufilter { - description "bpdufilter mode"; + grouping aaa_RadiusProvider-group { + description "RADIUS Provider"; - // Type is an MO-Defined-Type - type stp_Bpdufilter; + leaf useType { + + type aaa_RadSrvUseType; + description "Usage for the radius server"; } - // bpduguard mode - // Type is an MO-Defined-Type - leaf bpduguard { - description "Guard Mode"; + leaf authPort { - // Type is an MO-Defined-Type - type stp_BPDUGuard; + type aaa_RadPort; + description "authPort"; } - // Link Type - // Type is an MO-Defined-Type - leaf linkType { - description "Link Type"; + leaf acctPort { - // Type is an MO-Defined-Type - type stp_LinkType; + type aaa_RadPort; + description "acctPort"; } - // Port Priority - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf authProtocol { - // Type is an MO-Defined-Type - type stp_PortPriority; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + leaf monitoringIdleTime { - // Type is an MO-Defined-Type - type stp_Cost; + type aaa_IdleTimer; + description "Idle timer to monitor radius server"; } - // PortFast - // Type is an MO-Defined-Type - leaf portFast { - description "Port Fast"; + leaf monitoringPasswordType { - // Type is an MO-Defined-Type - type stp_PortFast; + type aaa_LdapPwdEnc; + description "Monitoring password type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "TBD"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // This object describes interface level config per vlan - container vlan-items { - list VlanCfg-list { - key "vlanId"; + leaf key { - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_VlanCfg-group; - } + type aaa_EncKey; + description "Key"; } - // This object describes interface level config per mst instance - container mst-items { - list MstCfg-list { - key "mstId"; + // Default value handled in local MO type + leaf keyEnc { - // Added containment: Prefix=mst - // Acquired From Package stp - uses stp_MstCfg-group; - } + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_RadiusProvider_keyEnc; + description "Default key encryption"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - container rtvrfMbr-items { + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_RadiusProvider_timeout; + description "Timeout in Seconds"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Default value handled in local MO type + leaf retries { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + // Type is a Local-MO-Defined-Type + type aaa_Retries_RadiusProvider_retries; + description "Retries"; } - } - - grouping stp_VlanCfg-group { - // Vlan Id - // Type is an MO-Defined-Type - leaf vlanId { - description "Vlan Id"; + leaf monitoringUser { - // Type is an MO-Defined-Type - type stp_VlanId; + type aaa_MonitoringUserType { + length "1..32"; + } + description "Periodic Server Monitoring Username"; } - // Port Priority in increments of 32 - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type stp_PortPriority; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; + } + leaf epgDn { + config "false"; + type string; + description "Reachability EpG"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type stp_Cost; + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping stp_MstCfg-group { + grouping aaa_RadiusProviderGroup-group { + description "RADIUS Provider Group"; - // MST Id - // Type is an MO-Defined-Type - leaf mstId { - description "Mst Instance Id"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_MstId; + type aaa_ProviderGroupDeadtime; + description "Duration for which non-reachable server is skipped"; } - // Port Priority in increments of 32 - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf name { - // Type is an MO-Defined-Type - type stp_PortPriority; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_Cost; + type naming_Descr; + description "TBD"; } - } - - grouping stp_MstEntity-group { - // spanning tree max hops - // Type is an MO-Defined-Type - leaf maxHops { - description "STP mst max hops"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_MaxHops; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // enable spanning tree simulation - // Type is an MO-Defined-Type - leaf simulate { - description "spanning tree simulation"; + leaf descr { - // Type is an MO-Defined-Type - type stp_Simulate; + type naming_Descr; + description "Description of the specified attribute"; } - // operation error - // Type is an MO-Defined-Type - leaf operErr { + leaf snmpIndex { config "false"; - description "Operation Error Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - // Region name - // Type is an MO-Defined-Type - leaf regName { - description "Region Name"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type stp_RegName; + type nw_IfId; + description "Source Interface"; } - // Region revision - // Type is an MO-Defined-Type - leaf rev { - description "Region Revision"; + leaf vrf { - // Type is an MO-Defined-Type - type stp_RegRev; + type l3_VrfName; + description "VRF"; } - // spanning tree state: enabled or disabled - // Inherited From stp:StEntity - // Modified by Override: stp:MstEntity->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { + key "name"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; + } + description "Provider Group Member"; } + } - // spanning tree forward delay - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf fwdTime { - description "STP forward delay"; - - // Type is an MO-Defined-Type - type stp_FwdTime; - } + grouping aaa_ProviderRef-group { + description "Provider Group Member"; - // spanning tree hello interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf helloTime { - description "STP Hello interval"; + // This property dicates the order in which the Provider + // referred by this MO will be tried within the ProviderGroup + leaf order { - // Type is an MO-Defined-Type - type stp_HelloTime; + type aaa_Order; + description "Order in which Providers are Tried"; } - // spanning tree max age interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf maxAge { - description "STP max age interval"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type stp_MaxAge; + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } - // This objects describes an mst instance - container mst-items { - list MstDom-list { - key "id"; + leaf name { - // Added containment: Prefix=mst - // Acquired From Package stp - uses stp_MstDom-group; + type pol_ObjName { + + // Copied from "ProviderName" type + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - } - - grouping stp_MstDom-group { - // MST config state - // Type is an MO-Defined-Type - leaf cfgSt { - description "Instance config State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_AdminSt; + type naming_Descr; + description "TBD"; } - // Id - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description "ID Property has READ-Create access."; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_MstId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // root type - // Type is an MO-Defined-Type - leaf root { - description "Root Options"; + leaf descr { - // Type is an MO-Defined-Type - type stp_Root; + type naming_Descr; + description "Description of the specified attribute"; } + } - // network diameter - // Type is an MO-Defined-Type - leaf diameter { - description "Network Diameter"; + grouping aaa_RadiusServerMonitor-group { + description "Periodic server monitoring for Radius"; - // Type is an MO-Defined-Type - type stp_Diameter; + leaf pwd { + + type aaa_MonitoringPasswordType; + description "Password"; } - // hello interval - // Type is an MO-Defined-Type - leaf helloTime { - description "Hello interval"; + leaf passwordType { - // Type is an MO-Defined-Type - type stp_HelloTime; + type aaa_LdapPwdEnc; + description "Radius Server Monitor Password type"; } - // priority - // Type is an MO-Defined-Type - leaf priority { - description "Bridge Priority"; + leaf idleTime { - // Type is an MO-Defined-Type - type stp_BridgePriority; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs/radius server"; } - // VlanRange - // Type is an MO-Defined-Type - leaf vlanRange { - description "Vlan Range Bitmap"; + leaf name { - // Type is an MO-Defined-Type - type stp_VlanBitmap; - } - leaf bridgePriority { - config "false"; - type uint16; + type pol_ObjName { + + // Copied from "aaa:User" type + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - leaf bridgeAddress { - config "false"; - type address_Mac; + + // Clients can add their own data for entity correlation + leaf ownerKey { + + type naming_Descr; + description "TBD"; } - leaf rootPriority { - config "false"; - type uint16; + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf rootAddress { - config "false"; - type address_Mac; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rootPortPriority { - config "false"; - type uint16; + } + + grouping aaa_DynamicRadiusAuthServer-group { + description "dynamic authorization local server configuration object"; + leaf port { + type uint32 { + range "0..65535"; + } + default "1700"; + description "Configuration for port number"; } - leaf rootPortNumber { - config "false"; - type uint16; + leaf key { + type string { + length "0..63"; + } + description "Configuration for server key"; } - // Root port name. The interface name that corresponds to the - // root port. E.g. eth1/1. - // From Interface stp:RootPort - // Type is an MO-Defined-Type - leaf rootPort { - config "false"; - description "Root port name"; + leaf keyEnc { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf rootPathCost { - config "false"; - type uint32; + type aaa_KeyEnc; + description "server key Encription type"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This objects describes a vlan range - container vlan-items { - list VlanRange-list { - config "false"; - key "start end"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_VlanRange-group; - } + type naming_Descr; + description "TBD"; } - // This object holds STP MST interface operational - // information. - container if-items { - list MstIf-list { - config "false"; - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_MstIf-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - - grouping stp_VlanRange-group { - // Start of the range - // Type is an MO-Defined-Type - leaf start { - config "false"; - description "Start"; + leaf descr { - // Type is an MO-Defined-Type - type stp_VlanId; + type naming_Descr; + description "Description of the specified attribute"; } + container dynamicauthclient-items { + list DynamicAuthClient-list { + key "name"; - // End of the range - // Type is an MO-Defined-Type - leaf end { - config "false"; - description "End"; - - // Type is an MO-Defined-Type - type stp_VlanId; + uses aaa_DynamicAuthClient-group; + description "dynamic authorization local client configuration object list"; + } + description "dynamic authorization local client configuration object"; } } - grouping stp_MstIf-group { + grouping aaa_DynamicAuthClient-group { + description "dynamic authorization local client configuration object"; + leaf key { + type string { + length "0..63"; + } + description "serverkey for dynamic-author client"; + } - // Interface ID. - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf keyEnc { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf designatedRootPriority { - config "false"; - type uint16; - } - leaf designatedRootAddress { - config "false"; - type address_Mac; - } - leaf designatedRootCost { - config "false"; - type uint32; - } - leaf designatedBridgePriority { - config "false"; - type uint16; - } - leaf designatedBridgeAddress { - config "false"; - type address_Mac; - } - leaf designatedPortPriority { - config "false"; - type uint16; - } - leaf designatedPortNumber { - config "false"; - type uint16; - } - leaf portPriority { - config "false"; - type uint16; - } - leaf portNumber { - config "false"; - type uint16; - } - leaf portPathCost { - config "false"; - type uint32; + type aaa_KeyEnc; + description "Default key encryption type"; } - // Port role - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portRole { - config "false"; - description "Port role"; + leaf vrf { - // Type is an MO-Defined-Type - type stp_PortRole; + type l3_VrfName; + description "vrf name for dynamic-author client"; } - // Port state - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portState { - config "false"; - description "Port state"; + leaf name { - // Type is an MO-Defined-Type - type stp_PortState; - } - leaf p2p { - config "false"; - type boolean; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "just for verifying purpose overriding this"; } - // VpcState - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf vpcState { - config "false"; - description "vPC State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_VpcState; + type naming_Descr; + description "TBD"; } - // Port mode - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "mode"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_ModeType; - } - leaf dispute { - config "false"; - type boolean; - } - leaf peer { - config "false"; - type boolean; - } - leaf bound { - config "false"; - type boolean; - } - leaf inconsistent { - config "false"; - type boolean; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf prestd { - config "false"; - type boolean; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping stp_Vlan-group { + grouping aaa_LdapEp-group { + description "Default LDAP Authentication Settings"; - // vlan id - // Type is an MO-Defined-Type - leaf id { - description "Access Encapsulation"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_VlanId; + type aaa_TimeMin { + range "0..60"; + } + description "LDAP Global Deadtime"; } - // bridge priority - // Type is an MO-Defined-Type - leaf priority { - description "Bridge Priority"; + leaf port { - // Type is an MO-Defined-Type - type stp_Priority; + type aaa_Port; + description "Port"; } - // network diameter of spanning tree - // Type is an MO-Defined-Type - leaf diameter { - description "network diameter"; + leaf attribute { - // Type is an MO-Defined-Type - type stp_Diameter; + type aaa_LdapAttribute; + description "LDAP Attribute"; } - // Spanning tree protocol - // Type is an MO-Defined-Type - leaf protocol { - config "false"; - description "Spanning tree protocol"; + leaf basedn { - // Type is an MO-Defined-Type - type stp_Protocol; - } - leaf bridgePriority { - config "false"; - type uint16; - } - leaf bridgeAddress { - config "false"; - type address_Mac; - } - leaf rootPriority { - config "false"; - type uint16; - } - leaf rootAddress { - config "false"; - type address_Mac; - } - leaf rootPortPriority { - config "false"; - type uint16; - } - leaf rootPortNumber { - config "false"; - type uint16; + type aaa_LdapDn; + description "LDAP Base DN"; } - // Root port name. The interface name that corresponds to the - // root port. E.g. eth1/1. - // From Interface stp:RootPort - // Type is an MO-Defined-Type - leaf rootPort { - config "false"; - description "Root port name"; + leaf filter { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_LdapFilter; + description "LDAP Filter"; } - leaf rootPathCost { - config "false"; - type uint32; + + leaf loggingLevel { + + type aaa_LdapLogLevel; + description "LDAP Logging level"; } - // spanning tree state: enabled or disabled - // Inherited From stp:StEntity - // Modified by Override: stp:Vlan->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // spanning tree forward delay - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf fwdTime { - description "STP forward delay"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_FwdTime; + type naming_Descr; + description "TBD"; } - // spanning tree hello interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf helloTime { - description "STP Hello interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_HelloTime; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // spanning tree max age interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf maxAge { - description "STP max age interval"; + leaf descr { - // Type is an MO-Defined-Type - type stp_MaxAge; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds STP VLAN interface operational - // information. - container if-items { - list VlanIf-list { - config "false"; - key "id"; + // add units for timeout. This helps display in CLI + leaf timeout { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_VlanIf-group; - } + type aaa_TimeSec; + description "Timeout in Seconds"; } - } - grouping stp_VlanIf-group { + leaf retries { - // Interface ID. - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + type aaa_Retries; + description "Retries"; + } + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; - } - leaf designatedRootPriority { - config "false"; - type uint16; - } - leaf designatedRootAddress { - config "false"; - type address_Mac; - } - leaf designatedRootCost { - config "false"; - type uint32; - } - leaf designatedBridgePriority { - config "false"; - type uint16; - } - leaf designatedBridgeAddress { - config "false"; - type address_Mac; - } - leaf designatedPortPriority { - config "false"; - type uint16; - } - leaf designatedPortNumber { - config "false"; - type uint16; - } - leaf portPriority { - config "false"; - type uint16; - } - leaf portNumber { - config "false"; - type uint16; - } - leaf portPathCost { - config "false"; - type uint32; + description "Source Interface"; } - // Port role - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portRole { - config "false"; - description "Port role"; + // This MO represents a group of AAA LDAP servers. + // A member of this group is represented by ProviderRef MO + container ldapprovidergroup-items { + list LdapProviderGroup-list { + key "name"; - // Type is an MO-Defined-Type - type stp_PortRole; + uses aaa_LdapProviderGroup-group; + description "LDAP Provider Group list"; + } + description "LDAP Provider Group "; } + container ldapprovider-items { + list LdapProvider-list { + key "name"; - // Port state - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portState { - config "false"; - description "Port state"; - - // Type is an MO-Defined-Type - type stp_PortState; + uses aaa_LdapProvider-group; + description "LDAP Provider list"; + } + description "LDAP Provider"; } - leaf p2p { - config "false"; - type boolean; + container searchmap-items { + list LdapSearchMap-list { + key "name"; + + uses aaa_LdapSearchMap-group; + description "Search Map list"; + } + description "Search Map"; } - // VpcState - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf vpcState { - config "false"; - description "vPC State"; + container rtfabricResLdapEp-items { - // Type is an MO-Defined-Type - type stp_VpcState; + list RtFabricResLdapEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResLdapEp_target-group; + } } + } - // Port mode - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "mode"; + grouping aaa_LdapProviderGroup-group { + description "LDAP Provider Group "; - // Type is an MO-Defined-Type - type stp_ModeType; + leaf deadtime { + + type aaa_ProviderGroupDeadtime; + description "LDAP Provider Group Deadtime"; } - leaf dispute { - config "false"; + leaf enAuthCompare { type boolean; + default "true"; + description "Enable LDAP Compare Operation"; } - leaf peer { - config "false"; + leaf enCertDnMatch { type boolean; + default "true"; + description "Enable Cert-DN matching"; } - leaf bound { - config "false"; + leaf enUserServerGroup { type boolean; + default "true"; + description "Enable Group Validation"; } - leaf inconsistent { - config "false"; + leaf enAuthBindFirst { type boolean; + default "true"; + description "Enable Authentication Bind First"; } - leaf prestd { - config "false"; - type boolean; + leaf authBaseDnAppendStr { + type string { + length "0..63"; + } + description "LDAP Append with Base DN String"; } - } - - grouping aggregate_BdTable-group { - - // Aggregate BdEntry - container vlan-items { - list BdEntry-list { - key "vlan"; - - // Added containment: Prefix=vlan - // Acquired From Package aggregate - uses aggregate_BdEntry-group; + leaf authComparePasswdAttribute { + type string { + length "1..63"; } + default "userPassword"; + description "LDAP password attribute"; } - } - grouping aggregate_BdEntry-group { - leaf vlan { - type string; - } - leaf bd { - type uint32; + leaf authMechanism { + + type aaa_AuthMechanism; + description "Authentication Mechanism"; } - leaf vnid { - type string; + leaf searchMap { + type string { + length "0..127"; + } + description "Ldap Search Map"; } - // Type is an MO-Defined-Type - leaf replicationMode { - description "The mode of replication for BUM data packets"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_ReplicationModeType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf ingressRepProtocol { - description "The protocol type used to get the list of replication nodes"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IngressRepProtocolType; - } - leaf gipo { - type address_Ip; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf suppressArp { - description "Flag to enable or disable the ARP suppression"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf resourceStatus { - description "Backend Resource Status"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf isL3 { - description "Is L3 Vlan"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; - } - leaf description { - type string; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - container floodList-items { + // Source interface + leaf srcIf { - // Added containment as a singleton: Prefix=floodList - // Acquired From Package aggregate - uses aggregate_FloodList-group; + type nw_IfId; + description "Source Interface"; } - // Domain (vrf) information - // - // - // - // - // - // - // - // - // - // List of route types - container af-items { - list DomainAf-list { - key "type"; + leaf vrf { - // Added containment: Prefix=af - // Acquired From Package aggregate - uses aggregate_DomainAf-group; - } + type l3_VrfName; + description "VRF"; } - // Rel-def target from vlanMemberAtt - // Inherited From aggregate:BdEntry - container rtaggregateVlanMemberAtt-items { - - // Abstract containment of rtaggregateVlanMemberAtt derived from aggregate:BdEntry - list RtAggregateVlanMemberAtt-list { - config "false"; - key "tDn"; + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { + key "name"; - // Added containment: Prefix=rtaggregateVlanMemberAtt - // Acquired From Package aggregate - uses aggregate_RtAggregateVlanMemberAtt_target-group; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; } + description "Provider Group Member"; } } - grouping aggregate_FloodList-group { + grouping aaa_LdapProvider-group { + description "LDAP Provider"; - container localFloodList-items { + leaf rootdn { - // Added containment as a singleton: Prefix=localFloodList - // Acquired From Package aggregate - uses aggregate_LocalFloodList-group; + type aaa_LdapDn; + description "Root DN"; } - container remoteFloodList-items { + leaf rootdnPwd { - // Added containment as a singleton: Prefix=remoteFloodList - // Acquired From Package aggregate - uses aggregate_RemoteFloodList-group; + type aaa_EncKey { + length "0..64"; + pattern ".*"; + } + description "Root DN Password"; } - } - grouping aggregate_LocalFloodList-group { - container intf-items { - list LocalFloodListEntry-list { - key "intf"; + leaf pwdEncryptType { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_LocalFloodListEntry-group; - } + type aaa_LdapPwdEnc; + default "0"; + description "Password Encryption Type"; } - } - - grouping aggregate_LocalFloodListEntry-group { - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + leaf port { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_Port; + description "Port"; + } + leaf enableSSL { + type boolean; + default "true"; + description "Enable SSL"; + } + leaf disableReferral { + type boolean; + default "true"; + description "LDAP Server Disable Referrals"; } - } - grouping aggregate_RemoteFloodList-group { - container vtep-items { - list RemoteFloodListEntry-list { - key "vtep"; + leaf SSLValidationLevel { - // Added containment: Prefix=vtep - // Acquired From Package aggregate - uses aggregate_RemoteFloodListEntry-group; - } + type aaa_LdapSSLStrictnessLevel; + description "SSL certificate validation level"; } - } - grouping aggregate_RemoteFloodListEntry-group { - leaf vtep { - type address_Ip; - } + // This property names the attribute to be downloaded + // which has user's roles and domains information. + // The value of this property takes precendence over the + // value of 'attribute' property in LdapEp MO + leaf attribute { - // Rel-def from vtepAtt - container rsvtepAtt-items { + type aaa_LdapAttribute; + description "LDAP Attribute"; + } - // Abstract containment of rsvtepAtt derived from aggregate:RemoteFloodListEntry - list RsVtepAtt-list { - config "false"; - key "tDn"; + // LDAP Base DN to be used while searching for the user. + // The value of this property takes precendence over the value + // of 'basedn' property in LdapEp MO + leaf basedn { - // Added containment: Prefix=rsvtepAtt - // Acquired From Package aggregate - uses aggregate_RsVtepAtt_source-group; - } + type aaa_LdapDn; + description "LDAP Base DN"; } - } - grouping aggregate_DomainAf-group { + // Ldap filter to be used while searching for the user. + // The value of this property takes precendence over the + // value of 'filter' property in LdapEp MO + leaf filter { - // Type is an MO-Defined-Type - leaf type { - description "Type"; + type aaa_LdapFilter; + description "LDAP Filter"; + } - // Type is an MO-Defined-Type - type aggregate_AfT; + leaf monitoringPasswordType { + + type aaa_LdapPwdEnc; + description "Monitoring password encryption type"; } - leaf vrf { - type string; + + leaf monitoringIdleTime { + + type aaa_IdleTimer; + description "Idle timer to monitor ldap server"; } - leaf rd { - type mtx_array_community; + + leaf monitoringRootdn { + + type aaa_LdapDn; + description "Root DN"; } - // Route target policy - container rttp-items { - list RttP-list { - key "type"; + leaf name { - // Added containment: Prefix=rttp - // Acquired From Package aggregate - uses aggregate_RttP-group; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - // - // - // - // - // - // - // - // - // - // - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list AfCtrl-list { - key "type"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=ctrl - // Acquired From Package aggregate - uses aggregate_AfCtrl-group; + type naming_Descr; + description "TBD"; + } + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping aggregate_RttP-group { + leaf descr { - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + type naming_Descr; + description "Description of the specified attribute"; + } - // Type is an MO-Defined-Type - type aggregate_RttPType; + leaf key { + + type aaa_EncKey; + description "Key"; + } + leaf keySet { + config "false"; + type boolean; + description "Key Set"; } - // isL3 VRF - // Type is an MO-Defined-Type - leaf isL3 { - description "IsL3"; + // Default value handled in local MO type + leaf keyEnc { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_LdapProvider_keyEnc; + description "Default key encryption"; } - // List of route types - container ent-items { - list RttEntry-list { - key "rtt"; + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Added containment: Prefix=ent - // Acquired From Package aggregate - uses aggregate_RttEntry-group; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_LdapProvider_timeout { + range "0..60"; } + description "Timeout in Seconds"; } - } - grouping aggregate_RttEntry-group { - leaf rtt { - type mtx_array_community; - } - } + // Default value handled in local MO type + leaf retries { - grouping aggregate_AfCtrl-group { + // Type is a Local-MO-Defined-Type + type aaa_Retries_LdapProvider_retries; + description "Retries"; + } - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf operState { + config "false"; - // Type is an MO-Defined-Type - type aggregate_AfT; + type aaa_ProviderState; + description "Provider Operational State"; } - // Route target policy - container rttp-items { - list RttP-list { - key "type"; + leaf monitoringUser { - // Added containment: Prefix=rttp - // Acquired From Package aggregate - uses aggregate_RttP-group; + type aaa_MonitoringUserType { + length "1..32"; } + description "Periodic Server Monitoring Username"; } - } - - grouping aggregate_GlobalConfTable-group { - // Type is an MO-Defined-Type - leaf vxLanMC { - description "VxLan Multicast Flag"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; } - leaf agMac { - type address_Mac; + leaf epgDn { + config "false"; + type string; + description "Reachability EpG"; } - } - grouping aggregate_IntfTable-group { - container intf-items { - list IntfEntry-list { - key "name"; + // The vrf that this client group belongs to + leaf vrfName { + config "false"; - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_IntfEntry-group; - } + type l3_VrfName; + description "Vrf Name"; } - container svi-items { - list Svi-list { - key "intf"; - // Added containment: Prefix=svi - // Acquired From Package aggregate - uses aggregate_Svi-group; - } + leaf snmpIndex { + config "false"; + + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping aggregate_IntfEntry-group { + grouping aaa_LdapSearchMap-group { + description "Search Map"; - // Type is an MO-Defined-Type leaf name { - description "Name of the interface entry"; - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf type { - description "Indicates the type of the interface"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IntfType; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf adminState { - description "Indicates the adminstration state of interface whether interface is up or down"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf operState { - description "Indicates the operational state of the interface whether up or down"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_OperState; + type naming_Descr; + description "Description of the specified attribute"; } + container entry-items { + list LdapSearchMapEntry-list { + key "type"; - // Type is an MO-Defined-Type - leaf trunkVlans { - description "List of vlans allowed on this interface"; - - // Type is an MO-Defined-Type - type aggregate_IntfTrunkVlans; - } - leaf isControllerOwnedIntf { - config "false"; - type boolean; + uses aaa_LdapSearchMapEntry-group; + description "Search Map Entry list"; + } + description "Search Map Entry"; } + } - // Type is an MO-Defined-Type - leaf ownerControllersIdList { - config "false"; - description "List of the controller owning this interface"; + grouping aaa_LdapSearchMapEntry-group { + description "Search Map Entry"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; - } - leaf untaggedVlan { - type string; - } - leaf untaggedVlanCtrlUse { - type boolean; + leaf type { + + type aaa_SearchMapEntryType; + description "Search Map Filter type"; } - leaf untaggedVlanExplicitMap { - type boolean; + + leaf baseDn { + + type aaa_LdapDn; + description "LDAP Base DN"; } - container vlanMemberTable-items { + leaf attribute { - // Added containment as a singleton: Prefix=vlanMemberTable - // Acquired From Package aggregate - uses aggregate_VlanMemberTable-group; + type aaa_LdapAttribute; + description "LDAP Attribute"; } - // Rel-def target from vpcIntfEntryAtt - // Inherited From aggregate:IntfEntry - container rtvpcIntfEntryAtt-items { + leaf searchFilter { - // Added containment as a singleton: Prefix=rtvpcIntfEntryAtt - // Acquired From Package aggregate - uses aggregate_RtVpcIntfEntryAtt_target-group; + type aaa_LdapFilter; + description "LDAP Filter"; } - } - grouping aggregate_VlanMemberTable-group { - container member-items { - list VlanMemberEntry-list { - key "vlan"; + leaf name { - // Added containment: Prefix=member - // Acquired From Package aggregate - uses aggregate_VlanMemberEntry-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from vlanMemberAtt - container rsvlanMemberAtt-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Abstract containment of rsvlanMemberAtt derived from aggregate:VlanMemberTable - list RsVlanMemberAtt-list { - config "false"; - key "tDn"; + type naming_Descr; + description "TBD"; + } - // Added containment: Prefix=rsvlanMemberAtt - // Acquired From Package aggregate - uses aggregate_RsVlanMemberAtt_source-group; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping aggregate_VlanMemberEntry-group { - leaf vlan { - type string; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping aggregate_Svi-group { - leaf intf { - type string; - } + grouping aaa_TacacsPlusEp-group { + description "Default TACACS+ Authentication Settings"; - // Type is an MO-Defined-Type - leaf adminState { - description "Admin state of the interface whether up or down"; + leaf deadtime { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type aaa_TimeMin; + description "Duration for which non-reachable server is skipped"; } - // Type is an MO-Defined-Type - leaf operState { - description "Operational state of the interface whether up or down"; + leaf key { - // Type is an MO-Defined-Type - type aggregate_OperState; - } - leaf ip { - type address_Ip; + type aaa_EncKey; + description "Global TACACS+ server shared secret"; } - // Type is an MO-Defined-Type - leaf ownerCtrlrsIdList { - config "false"; - description "List of the controller Ids owning this interface"; + leaf keyEnc { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type aaa_KeyEnc; + description "Default key encryption"; } - // Type is an MO-Defined-Type - leaf mtu { - description "Size of the MTU this interface is able to transmit"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type aggregate_MTU; + type aaa_LoggingLevel; + description "Tacacs Logging level"; } - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth Of SVI"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_Bw; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf fwdMode { - description "Fabric Forwarding Mode"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_fabFwdMode; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf vrf { - description "VRF context"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type l3_VrfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_MacTable-group { + leaf descr { - container dynamic-items { + type naming_Descr; + description "Description of the specified attribute"; + } - // Added containment as a singleton: Prefix=dynamic - // Acquired From Package aggregate - uses aggregate_DynamicMac-group; + // add units for timeout. This helps display in CLI + leaf timeout { + + type aaa_TimeSec; + description "Timeout in Seconds"; } - container static-items { + leaf retries { - // Added containment as a singleton: Prefix=static - // Acquired From Package aggregate - uses aggregate_StaticMac-group; + type aaa_Retries; + description "Retries"; } - } - grouping aggregate_DynamicMac-group { + // Source interface + leaf srcIf { - // Aggregate MacEntry - container mac-items { - list MacEntry-list { - key "mac vlan"; + type nw_IfId; + description "Source Interface"; + } + container tacacsplusprovider-items { + list TacacsPlusProvider-list { + key "name"; - // Added containment: Prefix=mac - // Acquired From Package aggregate - uses aggregate_MacEntry-group; + uses aaa_TacacsPlusProvider-group; + description "TACACS+ Provider list"; } + description "TACACS+ Provider"; } - } - grouping aggregate_MacEntry-group { - leaf mac { - type address_Mac; - } - leaf vlan { - type string; - } - - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf tunnelDstIp { - type address_Ip; - } - leaf isIntf { - type boolean; - } - - // Type is an MO-Defined-Type - leaf type { - description "MacType"; + // This MO represents a group of AAA TACACS+ servers. + container tacacsplusprovidergroup-items { + list TacacsPlusProviderGroup-list { + key "name"; - // Type is an MO-Defined-Type - type aggregate_MacType; - } - leaf pushedMacToBackEnd { - type boolean; - default "true"; + uses aaa_TacacsPlusProviderGroup-group; + description "TACACS+ Provider Group list"; + } + description "TACACS+ Provider Group"; } - // Rel-def target from mac - // Inherited From aggregate:MacEntry - container rtmac-items { + container tacacsservermonitor-items { - // Added containment as a singleton: Prefix=rtmac - // Acquired From Package aggregate - uses aggregate_RtMac_target-group; + uses aaa_TacacsServerMonitor-group; + description "Periodic server monitoring for Radius/tacacs"; } - } - grouping aggregate_StaticMac-group { + container rtfabricResTacacsPlusEp-items { - // Aggregate MacEntry - container mac-items { - list MacEntry-list { - key "mac vlan"; + list RtFabricResTacacsPlusEp-list { + config "false"; + key "tDn"; - // Added containment: Prefix=mac - // Acquired From Package aggregate - uses aggregate_MacEntry-group; + uses fabric_RtFabricResTacacsPlusEp_target-group; } } } - grouping aggregate_SystemTable-group { + grouping aaa_TacacsPlusProvider-group { + description "TACACS+ Provider"; - // Type is an MO-Defined-Type - leaf stTime { - description "System Start Time"; + leaf port { - // Type is an MO-Defined-Type - type mo_TStamp; - } - leaf mgmtIp { - config "false"; - type address_Ip; - } - leaf switchType { - type string; + type aaa_Port; + description "Port"; } - // Type is an MO-Defined-Type - leaf purgeDBRequest { - description "Client DB Purge Request"; + leaf authProtocol { - // Type is an MO-Defined-Type - type mo_TStamp; - } - leaf isControllerConfigured { - type boolean; - } - leaf nxdbEnabled { - config "false"; - type boolean; + type aaa_authenticationProtocol; + default "pap"; + description "TACACS+ Authentication Protocol"; } - container controllerTable-items { + leaf singleConnection { - // Added containment as a singleton: Prefix=controllerTable - // Acquired From Package aggregate - uses aggregate_ControllerTable-group; + type aaa_Boolean; + default "no"; + description "TACACS+ single connection mode enabled"; } - container cpuTable-items { + leaf monitoringIdleTime { - // Added containment as a singleton: Prefix=cpuTable - // Acquired From Package aggregate - uses aggregate_CPUTable-group; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs server"; } - container moduleTable-items { + leaf monitoringPasswordType { - // Added containment as a singleton: Prefix=moduleTable - // Acquired From Package aggregate - uses aggregate_ModuleTable-group; + type aaa_LdapPwdEnc; + description "Monitoring password type"; } - container vxlanTable-items { + leaf name { - // Added containment as a singleton: Prefix=vxlanTable - // Acquired From Package aggregate - uses aggregate_VxlanTable-group; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; + } + description "Name of the given attribute"; } - container shadowVxlanTable-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=shadowVxlanTable - // Acquired From Package aggregate - uses aggregate_ShadowVxlanTable-group; + type naming_Descr; + description "TBD"; } - } - grouping aggregate_ControllerTable-group { - container controller-items { - list ControllerEntry-list { - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=controller - // Acquired From Package aggregate - uses aggregate_ControllerEntry-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } - } - } - - grouping aggregate_ControllerEntry-group { - leaf id { - type uint32; - } - leaf readRole { - type string; - } - leaf writeRole { - type string; - } - leaf controllerType { - type string; + description "TBD"; } - // Type is an MO-Defined-Type - leaf configuredVlans { - config "false"; - description "Vlans that are assigned under this controller"; + leaf descr { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf dedicatedVlans { - config "false"; - description "Dedicated Vlans"; + leaf key { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type aaa_EncKey; + description "Key"; } - // Type is an MO-Defined-Type - leaf publishedVlans { - config "false"; - description "Vlans that are published to the controller after VPC consistency checks are completed"; + // Default value handled in local MO type + leaf keyEnc { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_TacacsPlusProvider_keyEnc; + description "Default key encryption"; } - // Type is an MO-Defined-Type - leaf vlanResourceStatus { - config "false"; - description "Indicate that at least one Vlan is assigned to the controller"; + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_TacacsPlusProvider_timeout { + range "0..60"; + } + description "Timeout in Seconds"; } - // Type is an MO-Defined-Type - leaf intfResourceStatus { - config "false"; - description "Indicate that at least one interface is assigned to the controller"; + // Default value handled in local MO type + leaf retries { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + // Type is a Local-MO-Defined-Type + type aaa_Retries_TacacsPlusProvider_retries; + description "Retries"; } - // Type is an MO-Defined-Type - leaf isSystemReadyForController { - description "Indicate that switch is now ready to acccept the NXAPI requests from the controller"; + leaf monitoringUser { - // Type is an MO-Defined-Type - type aggregate_ConfigStatus; + type aaa_MonitoringUserType { + length "1..32"; + } + description "Periodic Server Monitoring Username"; } - // Type is an MO-Defined-Type - leaf type { - description "Type of the Vxlan the controller is controlling"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type aggregate_CtrlrType; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; } - leaf vrfPrefix { + leaf epgDn { + config "false"; type string; + description "Reachability EpG"; } - leaf numVrf { - type uint32; - } - leaf publishVrf { - type boolean; - } - leaf publishNumVrf { - type uint32; - } - - container controllerAssignedIntfTable-items { - - // Added containment as a singleton: Prefix=controllerAssignedIntfTable - // Acquired From Package aggregate - uses aggregate_ControllerAssignedIntfTable-group; - } - } - grouping aggregate_ControllerAssignedIntfTable-group { - container controllerAssignedIntfEntry-items { - list ControllerAssignedIntfEntry-list { - key "intfName"; + leaf snmpIndex { + config "false"; - // Added containment: Prefix=controllerAssignedIntfEntry - // Acquired From Package aggregate - uses aggregate_ControllerAssignedIntfEntry-group; - } + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping aggregate_ControllerAssignedIntfEntry-group { + grouping aaa_TacacsPlusProviderGroup-group { + description "TACACS+ Provider Group"; - // Type is an MO-Defined-Type - leaf intfName { - description "IntfName"; + leaf deadtime { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_ProviderGroupDeadtime; + description "Duration for which non-reachable server is skipped"; } - // Port channel id - // Type is an MO-Defined-Type - leaf pcId { - description "Identity of the Port channel"; + leaf name { - // Type is an MO-Defined-Type - type pc_PcId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf type { - description "Type of the interface"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IntfType; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf mode { - description "Suggest if interface is dedicated to controller or shared between CLI"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_IntfAssignMode; - } - leaf published { - type boolean; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_CPUTable-group { - container cpuEntry-items { - list CPUEntry-list { - key "type"; + leaf descr { - // Added containment: Prefix=cpuEntry - // Acquired From Package aggregate - uses aggregate_CPUEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping aggregate_CPUEntry-group { - // Type is an MO-Defined-Type - leaf type { - description "CPU Type"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type aggregate_CpuType; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - } - grouping aggregate_ModuleTable-group { - container moduleEntry-items { - list ModuleEntry-list { - key "type"; + // Source interface + leaf srcIf { - // Added containment: Prefix=moduleEntry - // Acquired From Package aggregate - uses aggregate_ModuleEntry-group; - } + type nw_IfId; + description "Source Interface"; } - } - - grouping aggregate_ModuleEntry-group { - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf vrf { - // Type is an MO-Defined-Type - type aggregate_ModuleType; + type l3_VrfName; + description "VRF"; } - } - grouping aggregate_VxlanTable-group { - container intf-items { - list VxlanInterfaceEntry-list { + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { key "name"; - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_VxlanInterfaceEntry-group; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; } + description "Provider Group Member"; } } - grouping aggregate_VxlanInterfaceEntry-group { - leaf name { - type string; - } + grouping aaa_TacacsServerMonitor-group { + description "Periodic server monitoring for Radius/tacacs"; - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:VxlanInterfaceEntry->myTepStatus - // Type is an MO-Defined-Type - leaf myTepStatus { - config "false"; - description "MyTepStatus"; + leaf pwd { - // Type is an MO-Defined-Type - type aggregate_OperState; + type aaa_MonitoringPasswordType; + description "Password"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:VxlanInterfaceEntry->hostReachability - // Type is an MO-Defined-Type - leaf hostReachability { - config "false"; - description "HostReachability"; + leaf passwordType { - // Type is an MO-Defined-Type - type aggregate_HostReachabilityMode; - } - leaf controllerId { - type uint32; + type aaa_LdapPwdEnc; + description "Tacacs Server Monitor Password type"; } - // Inherited From aggregate:NveIntf - // Type is an MO-Defined-Type - leaf configSource { - config "false"; - description "configSource"; + leaf idleTime { - // Type is an MO-Defined-Type - type aggregate_ConfigSourceType; - } - leaf primaryTunnelIp { - config "false"; - type address_Ip; - } - leaf secondaryTunnelIp { - config "false"; - type address_Ip; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs/radius server"; } - container localBfd-items { + leaf name { - // Added containment as a singleton: Prefix=localBfd - // Acquired From Package aggregate - uses aggregate_LocalBfd-group; - } - } + type pol_ObjName { - grouping aggregate_LocalBfd-group { - leaf mac { - config "false"; - type address_Mac; - } - leaf ip { - config "false"; - type address_Ip; + // Copied from "aaa:User" type + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minTxIntvl { - config "false"; - description "Desired Minimum TX Interval"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_MinTxIntvl; + type naming_Descr; + description "TBD"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minRxIntvl { - config "false"; - description "Desired Minimum RX Interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_MinRxIntvl; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_ShadowVxlanTable-group { - container intf-items { - list ShadowVxlanInterfaceEntry-list { - key "name"; + leaf descr { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_ShadowVxlanInterfaceEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping aggregate_ShadowVxlanInterfaceEntry-group { - leaf name { - type string; - } + grouping aaa_AuthRealm-group { + description "AAA Authentication"; - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->myTepStatus - // Type is an MO-Defined-Type - leaf myTepStatus { - config "false"; - description "MyTepStatus"; + // default role policy for remote user + leaf defRolePolicy { - // Type is an MO-Defined-Type - type aggregate_OperState; + type aaa_NoRolePolicy; + default "assign-default-role"; + description "Default Role Policy"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->hostReachability - // Type is an MO-Defined-Type - leaf hostReachability { - config "false"; - description "HostReachability"; + leaf radDirectedReq { - // Type is an MO-Defined-Type - type aggregate_HostReachabilityMode; - } - leaf controllerId { - type uint32; + type aaa_Boolean; + default "no"; + description "Enable direct authentication requests to server"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->configSource - // Type is an MO-Defined-Type - leaf configSource { - config "false"; - description "configSource"; + leaf tacDirectedReq { - // Type is an MO-Defined-Type - type aggregate_ConfigSourceType; - } - leaf primaryTunnelIp { - config "false"; - type address_Ip; + type aaa_Boolean; + default "no"; + description "Enable direct authentication requests to server"; } - leaf secondaryTunnelIp { - config "false"; - type address_Ip; + + // for aaa logging level + leaf loggingLevel { + + type aaa_LoggingLevel; + description "AAA Logging level"; } - } - grouping aggregate_TunnelIntfTable-group { - container intf-items { - list TunnelIntfEntry-list { - key "destIp"; + leaf name { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_TunnelIntfEntry-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping aggregate_TunnelIntfEntry-group { - leaf description { - type string; + // Clients can add their own data for entity correlation + leaf ownerKey { + + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf ifId { - description "Unique tunnel interface Id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf type { - description "Indicate if the tunnel is of IPv4 or IPv6 type"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_TunnelType; - } - leaf srcIp { - type address_Ip; - } - leaf destIp { - type address_Ip; + type naming_Descr; + description "Description of the specified attribute"; } + container aaagroup-items { + list AaaServerGroup-list { + config "false"; + key "name"; - // Type is an MO-Defined-Type - leaf mtu { - description "Size of MTU on the tunnel interface"; - - // Type is an MO-Defined-Type - type aggregate_MTU; + uses aaa_AaaServerGroup-group; + description "Server groups list"; + } + description "Server groups"; } - // Type is an MO-Defined-Type - leaf state { - description "Operational state of the tunnel interface"; + // MO representing the Default Authentication configuration for + // all logins + container defaultauth-items { - // Type is an MO-Defined-Type - type aggregate_OperState; + uses aaa_DefaultAuth-group; + description "Default Authentication Method for all Logins"; } + container defaultauthor-items { + list DefaultAuthor-list { + key "cmdType"; - // Type is an MO-Defined-Type - leaf vrf { - description "The name of the VRF that is supported by this tunnel"; + uses aaa_DefaultAuthor-group; + description "Authorization Method for the domain list"; + } + description "Authorization Method for the domain"; + } + container consoleauthor-items { + list ConsoleAuthor-list { + key "cmdType"; - // Type is an MO-Defined-Type - type l3_VrfName; + uses aaa_ConsoleAuthor-group; + description "Console Authorization Method for the domain list"; + } + description "Console Authorization Method for the domain"; } - // Type is an MO-Defined-Type - leaf ipVnidBinding { - description "Indicates if the L3 VNID binding is established or not"; + container defaultacc-items { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; - } - leaf isTunnelCreated { - config "false"; - type boolean; - default "true"; - } - leaf isTunnelCreatedByController { - config "false"; - type boolean; - default "true"; - } - leaf noOfMacsSeenBeforeTunnelCreatedbyController { - config "false"; - type uint32; + uses aaa_DefaultAcc-group; + description "Accounting Method for the domain"; } - // Type is an MO-Defined-Type - leaf epType { - description "The type of the tunnel endpoint"; + container pkisshcert-items { - // Type is an MO-Defined-Type - type aggregate_EpType; + uses aaa_PkiSSHCertificate-group; + description "Authorization Method for the application"; } - container tunMacTable-items { + container pkisshpubkey-items { - // Added containment as a singleton: Prefix=tunMacTable - // Acquired From Package aggregate - uses aggregate_TunMacTable-group; + uses aaa_PkiSSHPublicKey-group; + description "Authorization Method for the application"; } - container vnidTable-items { + container loginstatuslogging-items { - // Added containment as a singleton: Prefix=vnidTable - // Acquired From Package aggregate - uses aggregate_VnidTable-group; + uses aaa_LoginStatusLogging-group; + description "Logging options for failed and successful login attempts"; } - container remoteBfd-items { + container authreject-items { - // Added containment as a singleton: Prefix=remoteBfd - // Acquired From Package aggregate - uses aggregate_RemoteBfd-group; + uses aaa_AuthReject-group; + description "Maximum number of rejected authentication attempts"; } + container bypassuser-items { + list ByPassUser-list { + key "userName"; - // Rel-def target from vtepAtt - // Inherited From aggregate:TunnelIntfEntry - container rtaggregateVtepAtt-items { + uses aaa_ByPassUser-group; + description "Option to bypass AAA for user list"; + } + description "Option to bypass AAA for user"; + } - // Abstract containment of rtaggregateVtepAtt derived from aggregate:TunnelIntfEntry - list RtAggregateVtepAtt-list { - config "false"; - key "tDn"; + // MO representing the Authentication configuration for Console + // Login + container consoleauth-items { - // Added containment: Prefix=rtaggregateVtepAtt - // Acquired From Package aggregate - uses aggregate_RtAggregateVtepAtt_target-group; - } + uses aaa_ConsoleAuth-group; + description "Console Authentication Method"; } - } - - grouping aggregate_TunMacTable-group { - // Rel-def from mac - container rsmac-items { + container rtfabricResAuthRealm-items { - // Abstract containment of rsmac derived from aggregate:TunMacTable - list RsMac-list { + list RtFabricResAuthRealm-list { config "false"; key "tDn"; - // Added containment: Prefix=rsmac - // Acquired From Package aggregate - uses aggregate_RsMac_source-group; + uses fabric_RtFabricResAuthRealm_target-group; } } } - grouping aggregate_VnidTable-group { - container vnid-items { - list VnidEntry-list { - key "vnid"; + grouping aaa_AaaServerGroup-group { + description "Server groups"; - // Added containment: Prefix=vnid - // Acquired From Package aggregate - uses aggregate_VnidEntry-group; - } - } - } + leaf name { + config "false"; - grouping aggregate_VnidEntry-group { - leaf vnid { - type string; + type aaa_ProviderGroupName; + description "server Group"; } - // Type is an MO-Defined-Type - leaf groupAddr { - description "GroupAddr"; + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type aggregate_GroupAddr; + type aaa_ProviderGroupProtocol; + description "server Group protocol"; } } - grouping aggregate_RemoteBfd-group { + grouping aaa_DefaultAuth-group { + description "Default Authentication Method for all Logins"; - // Type is an MO-Defined-Type - leaf bfdStatus { - description "Vnid"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_BfdStatus; - } - leaf mac { - type address_Mac; - } - leaf ip { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_MinTxIntvl; + type naming_Descr; + description "TBD"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Desired Minimum RX Interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_MinRxIntvl; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_VlanTable-group { - - // Aggregate VlanEntry - container vlan-items { - list VlanEntry-list { - key "id"; + leaf descr { - // Added containment: Prefix=vlan - // Acquired From Package aggregate - uses aggregate_VlanEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping aggregate_VlanEntry-group { - leaf id { - type string; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { + + type aaa_Realm; + description "Realm"; } - // Type is an MO-Defined-Type - leaf adminState { - description "AdminState"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping aggregate_VpcDomTable-group { - container vpcDom-items { - list VpcDomEntry-list { - key "domainId"; + leaf providerGroup2 { - // Added containment: Prefix=vpcDom - // Acquired From Package aggregate - uses aggregate_VpcDomEntry-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VpcDomEntry-group { - // Type is an MO-Defined-Type - leaf domainId { - description "The unique VPC domain Id"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type vpc_DomId; - } - leaf keepaliveDestIp { - type address_Ip; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf keepaliveSrcIp { - type address_Ip; + + leaf providerGroup4 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf virtualIp { - type address_Ip; + + leaf providerGroup5 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf keepaliveSts { - config "false"; - description "Keep alive status between the VPC pair switches"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type aggregate_VpcKeepaliveStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf peerLinkSts { - config "false"; - description "Peer Link Status between the VPC pair switches"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type aggregate_VpcPeerLinkStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf vpcRole { - config "false"; - description "Indicates if the switch is primary or secondary in the VPC pair"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type vpc_Role; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf peerGW { + leaf invalidUserLog { type boolean; + default "true"; + description "Enable logging for invalid users"; } - leaf dualActive { + leaf errEn { type boolean; + default "true"; + description "Enable display of error message on login failures"; } - // Type is an MO-Defined-Type - leaf peerLinkIf { - description "Port channel interface of the peer link"; + leaf authProtocol { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // VPCTAB - container vpcTable-items { + leaf fallback { - // Added containment as a singleton: Prefix=vpcTable - // Acquired From Package aggregate - uses aggregate_VpcTable-group; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; } - } - grouping aggregate_VpcTable-group { - container vpc-items { - list VpcEntry-list { - key "vpcnum"; + leaf local { - // Added containment: Prefix=vpc - // Acquired From Package aggregate - uses aggregate_VpcEntry-group; - } + type aaa_Boolean; + description "Use local username authentication"; + } + + leaf none { + + type aaa_Boolean; + default "no"; + description "No authentication"; } } - grouping aggregate_VpcEntry-group { + grouping aaa_DefaultAuthor-group { + description "Authorization Method for the domain"; - // Type is an MO-Defined-Type - leaf vpcnum { - description "Unique number identifying this Vpc pair"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type vpc_Id; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf ifId { - description "VPC port channel number"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf operState { - description "Operationsl status of the VPC port channel"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_VpcOperStatus; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf consCheckSts { - config "false"; - description "Indication of whether consistency checks have passed or failed"; + leaf descr { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf consCheckReason { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { config "false"; - description "Provides a reason why consistency check have failed"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type aaa_Realm; + default "tacacs"; + description "Realm"; } - container vpcintf-items { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Added containment as a singleton: Prefix=vpcintf - // Acquired From Package aggregate - uses aggregate_VpcIntfEntry-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VpcIntfEntry-group { - // Rel-def from vpcIntfEntryAtt - container rsvpcIntfEntryAtt-items { + leaf providerGroup2 { - // Added containment as a singleton: Prefix=rsvpcIntfEntryAtt - // Acquired From Package aggregate - uses aggregate_RsVpcIntfEntryAtt_source-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping aggregate_VrfTable-group { - container vrf-items { - list VrfEntry-list { - key "name"; + leaf providerGroup3 { - // Added containment: Prefix=vrf - // Acquired From Package aggregate - uses aggregate_VrfEntry-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VrfEntry-group { - // Type is an MO-Defined-Type - leaf name { - description "Name of the VRF instance"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type l3_VrfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf genName { - description "Generic name of the VRF instance"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type l3_VrfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Id of the controller this VRF is assigned to"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type aggregate_ControllerID; - } - leaf vnid { - type string; - } - leaf rd { - type mtx_array_community; - } - leaf genExtraRt { - type boolean; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf templateName { - type string; + + leaf providerGroup7 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf templateStatus { - config "false"; - description "Indicates the execution status of the config template"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type aggregate_ConfTmplStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf shdwTemplateName { - config "false"; - type string; + leaf authorMethodNone { + type boolean; + description "No authorization"; } - leaf shdwVrfGenName { - config "false"; - type string; + leaf localRbac { + type boolean; + default "true"; + description "Use Local RBAC based Authorization"; } - // Domain (vrf) information - // - // - // - // - // - // - // - // - // - // List of route types - container af-items { - list DomainAf-list { - key "type"; + leaf cmdType { - // Added containment: Prefix=af - // Acquired From Package aggregate - uses aggregate_DomainAf-group; - } + type aaa_CmdType; + description "Type of command for authorization"; } } - grouping acl_Entity-group { + grouping aaa_ConsoleAuthor-group { + description "Console Authorization Method for the domain"; - // IPv4 and IPv6 port object-group - container oName-items { - list PortGroup-list { - key "name"; + leaf name { + config "false"; - // Added containment: Prefix=oName - // Acquired From Package acl - uses acl_PortGroup-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // MO: VLAN ACL - container vlan-items { - list VLANACL-list { - key "name"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=vlan - // Acquired From Package acl - uses acl_VLANACL-group; - } + type naming_Descr; + description "TBD"; } - // IPv4 - container mac-items { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment as a singleton: Prefix=mac - // Acquired From Package macacl - uses macacl_AF-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // IPv4 - container ipv4-items { + leaf descr { - // Added containment as a singleton: Prefix=ipv4 - // Acquired From Package ipv4acl - uses ipv4acl_AF-group; + type naming_Descr; + description "Description of the specified attribute"; } - // IPv6 - container ipv6-items { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { + config "false"; - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package ipv6acl - uses ipv6acl_AF-group; + type aaa_Realm; + default "tacacs"; + description "Realm"; } - } - grouping acl_PortGroup-group { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type - leaf name { - description "Object-group Name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Name; + leaf providerGroup2 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // IPv4 and IPv6 Port Object Group member - container seq-items { - list PortMember-list { - key "seqNum"; + leaf providerGroup3 { - // Added containment: Prefix=seq - // Acquired From Package acl - uses acl_PortMember-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_PortMember-group { + leaf providerGroup4 { - // port operator - // Type is an MO-Defined-Type - leaf portOp { - description "Source port operator"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Operator; + leaf providerGroup5 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // first port - // Type is an MO-Defined-Type - leaf port1 { - description "First source port"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_ProviderGroupName; + description "Provider Group"; } - // second port - // Type is an MO-Defined-Type - leaf port2 { - description "Second source port"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_ProviderGroupName; + description "Provider Group"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - description "config status"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_ProviderGroupName; + description "Provider Group"; + } + leaf authorMethodNone { + type boolean; + description "No authorization"; + } + leaf localRbac { + type boolean; + default "true"; + description "Use Local RBAC based Authorization"; } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf cmdType { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_CmdType; + description "Type of command for authorization"; } } - grouping acl_VLANACL-group { + grouping aaa_DefaultAcc-group { + description "Accounting Method for the domain"; - // VLAN ACL name - // Type is an MO-Defined-Type leaf name { - description "Vacl name"; - - // Type is an MO-Defined-Type - type acl_Name; - } - leaf maxseq { config "false"; - type uint32; - } - - // MO: VLAN sequence number - container seq-items { - list VLANSeq-list { - key "seqNum"; - // Added containment: Prefix=seq - // Acquired From Package acl - uses acl_VLANSeq-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // ==== MO: VLAN list ==== - // VLANList: - // /sys/acl/vlan-[foo]/vlanlist - // list: given arguments for vlan-list - // operation: indicate apply/remove - // listoper: vlan-list actual in effect. - // listerr: erroneous vlan-list, for fault purpose, updated via - // second trunk by aclmgr. - container vlanlist-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=vlanlist - // Acquired From Package acl - uses acl_VLANList-group; + type naming_Descr; + description "TBD"; } - } - grouping acl_VLANSeq-group { - leaf seqNum { - type uint32; - } - - // toggle per-entry statistics - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; - - // Type is an MO-Defined-Type - type acl_ACEStats; - } - - // MO: VLAN ACL match - // /sys/acl/vlan-[foo]/seq-30/match-[ip_ipv6_mac]-address-[acl1]/ - container match-items { - list VLANACLMatch-list { - key "acltype aclname"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=match - // Acquired From Package acl - uses acl_VLANACLMatch-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // MO: VLAN ACL action - // /sys/acl/vlan-[foo]/seq-30/action.log=[yes_no]/ - // /sys/acl/vlan-[foo]/seq-30/action.actiontype=[forward_redirect_drop]/ - // /sys/acl/vlan-[foo]/seq-30/action.redirectintf=[eth1/31_po1]/ - container action-items { + leaf descr { - // Added containment as a singleton: Prefix=action - // Acquired From Package acl - uses acl_VLANACLAction-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping acl_VLANACLMatch-group { - // Match ACL type: ip_ipv4_mac - // Type is an MO-Defined-Type - leaf acltype { - description "match acl type"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type acl_VAclMatchType; + type aaa_Realm; + description "Realm"; } - // Match ACL name - // Type is an MO-Defined-Type - leaf aclname { - description "match acl name"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type acl_Name; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_VLANACLAction-group { - - // forward_drop_redirect - // Type is an MO-Defined-Type - leaf actiontype { - description "VLAN ACL action forward or drop or redirect"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type acl_VAclActionType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // toggle log options - // Type is an MO-Defined-Type - leaf log { - description "Log option"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type acl_VAclLog; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf redirectintf { - description "Redirect Interfaces example, eth1/11 or po1"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type acl_IfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping acl_VLANList-group { - // Type is an MO-Defined-Type - leaf list { - description "VLAN or a list of VLANS example 1,2 or 2-4"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf operation { - description "Vlan Filter Operation apply or remove"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_operation; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf listoper { - description "Vlan List String oper after apply or remove"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf listerr { - config "false"; - description "Vlan List String error"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf timeStamp { - type string; + leaf accMethodNone { + type boolean; + default "true"; + description "No accounting"; + } + leaf localRbac { + type boolean; + default "true"; + description "Use Local"; } } - grouping macacl_AF-group { + grouping aaa_PkiSSHCertificate-group { + description "Authorization Method for the application"; + leaf local { + type boolean; + description "Use Local RBAC based Authorization"; + } - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; + type naming_Descr; + description "TBD"; } - // IPv4 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=name - // Acquired From Package macacl - uses macacl_ACL-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - - grouping acl_StatClear-group { - // StatClear ACL name - // Type is an MO-Defined-Type - leaf name { - description "ACL Name to clear the statistics"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf timeStamp { - type string; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping acl_Policy-group { - // Ingress directions - container ingress-items { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Added containment as a singleton: Prefix=ingress - // Acquired From Package acl - uses acl_Ingress-group; + type aaa_Realm; + description "Realm"; } - // Egress directions - container egress-items { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Added containment as a singleton: Prefix=egress - // Acquired From Package acl - uses acl_Egress-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_Ingress-group { + leaf providerGroup2 { - // Target interface - container intf-items { - list If-list { - key "name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Added containment: Prefix=intf - // Acquired From Package acl - uses acl_If-group; - } + leaf providerGroup3 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - container vty-items { + leaf providerGroup4 { - // Added containment as a singleton: Prefix=vty - // Acquired From Package acl - uses acl_Vty-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_If-group { + leaf providerGroup5 { - // interface name string - // Type is an MO-Defined-Type - leaf name { - description "Interface to which ACL is applied"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_IfName; + leaf providerGroup6 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // ACL instance - container acl-items { + leaf providerGroup7 { - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl - uses acl_Inst-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - // port ACL instance - container portacl-items { + leaf providerGroup8 { - // Added containment as a singleton: Prefix=portacl - // Acquired From Package acl - uses acl_PortInst-group; + type aaa_ProviderGroupName; + description "Provider Group"; } } - grouping acl_Inst-group { + grouping aaa_PkiSSHPublicKey-group { + description "Authorization Method for the application"; + leaf local { + type boolean; + description "Use Local RBAC based Authorization"; + } - // Type is an MO-Defined-Type leaf name { - description "ACL name"; - // Type is an MO-Defined-Type - type acl_Name; - } - leaf configStatus { - config "false"; - type uint32; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - } - grouping acl_PortInst-group { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + type naming_Descr; + description "TBD"; + } - // Type is an MO-Defined-Type - type acl_Name; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf configStatus { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping acl_Vty-group { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // ACL instance - container acl-items { + type aaa_Realm; + description "Realm"; + } - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl - uses acl_Inst-group; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_Egress-group { + leaf providerGroup2 { - // Target interface - container intf-items { - list If-list { - key "name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Added containment: Prefix=intf - // Acquired From Package acl - uses acl_If-group; - } + leaf providerGroup3 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - container vty-items { + leaf providerGroup4 { - // Added containment as a singleton: Prefix=vty - // Acquired From Package acl - uses acl_Vty-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping macacl_ACL-group { + leaf providerGroup5 { - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Name; + leaf providerGroup6 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_ACEStats; + type aaa_ProviderGroupName; + description "Provider Group"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { + leaf providerGroup8 { - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; + type aaa_ProviderGroupName; + description "Provider Group"; } + } - // IPv4 ACE - container seq-items { - list SEQ-list { - key "seqNum"; + grouping aaa_LoginStatusLogging-group { + description "Logging options for failed and successful login attempts"; + leaf enableLoginFailureLogging { + type boolean; + description "Syslog message on failed login attempt"; + } + leaf enableLoginSuccessLogging { + type boolean; + description "Syslog message on successful login attempt"; + } + } - // Added containment: Prefix=seq - // Acquired From Package macacl - uses macacl_SEQ-group; + grouping aaa_AuthReject-group { + description "Maximum number of rejected authentication attempts"; + leaf failAttempt { + type uint16 { + range "0..65535"; + } + description "Maximum number of failed attempts"; + } + leaf timeIntervel { + type uint16 { + range "0..65535"; + } + description "Time period for failed attempts"; + } + leaf blockTime { + type uint16 { + range "0..65535"; } + description "Block time period in seconds"; } } - grouping acl_Resequence-group { - leaf start { - type uint32; + grouping aaa_ByPassUser-group { + description "Option to bypass AAA for user"; + leaf userName { + type string { + length "1..28"; + } + description "Username to include for bypassing AAA"; } - leaf step { - type uint32; + leaf accounting { + type boolean; + description "By pass aaa accounting"; + } + leaf authorization { + type boolean; + description "By pass aaa authorization"; } } - grouping macacl_SEQ-group { + grouping aaa_ConsoleAuth-group { + description "Console Authentication Method"; - // ACE sequence number - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf name { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MAC ACE - container ace-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=ace - // Acquired From Package macacl - uses macacl_ACE-group; + type naming_Descr; + description "TBD"; } - // Remark ACE - container remark-items { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment as a singleton: Prefix=remark - // Acquired From Package macacl - uses macacl_Remark-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - - grouping macacl_ACE-group { - // protocol number - // Type is an MO-Defined-Type - leaf protocol { - description "protocol number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_MACProtocol; + type naming_Descr; + description "Description of the specified attribute"; } - // cos number - // Type is an MO-Defined-Type - leaf cos { - description "Cos number"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type acl_cosType; + type aaa_Realm; + description "Realm"; } - leaf redirect { - type string; + + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // time-range - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type acl_TimeRangeName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // vlan number - // Type is an MO-Defined-Type - leaf vlan { - description "vlan number"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type acl_VlanType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // set-erspan-dscp- - // Type is an MO-Defined-Type - leaf erspanDscp { - description "dscp value"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type acl_erspanDscpType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // erspan gre proto - // Type is an MO-Defined-Type - leaf erspanGre { - description "dscp gre protocol"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type acl_erspanGreType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ACE filtering action - // Inherited From acl:L2ACE - // Type is an MO-Defined-Type - leaf action { - description "ACE action, permit or deny"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_ActionType; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf srcPrefix { - type address_Mac; + + leaf providerGroup7 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf srcPrefixMask { - type address_Mac; + + leaf providerGroup8 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf dstPrefix { - type address_Mac; + leaf invalidUserLog { + type boolean; + default "true"; + description "Enable logging for invalid users"; } - leaf dstPrefixMask { - type address_Mac; + leaf errEn { + type boolean; + default "true"; + description "Enable display of error message on login failures"; } - leaf packets { - config "false"; - type uint64; + + leaf authProtocol { + + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - } - grouping macacl_Remark-group { + leaf fallback { - // ACE sequence number - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + } - // Type is an MO-Defined-Type - type acl_SequenceNumber; + leaf local { + + type aaa_Boolean; + default "no"; + description "Use local username authentication"; } - // remark - // Type is an MO-Defined-Type - leaf remark { - description "ACL entry commment"; + leaf none { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aaa_Boolean; + default "no"; + description "No authentication"; } } - grouping ipv4acl_AF-group { + grouping aaa_LoginDomain-group { + description "Login Domain"; - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_]{0,63}.*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { - - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; - } - - // IPv4 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=name - // Acquired From Package ipv4acl - uses ipv4acl_ACL-group; - } + type naming_Descr; + description "TBD"; } - // IPv4 address object-group - container oName-items { - list AddrGroup-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=oName - // Acquired From Package ipv4acl - uses ipv4acl_AddrGroup-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping ipv4acl_ACL-group { - - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "Description of the specified attribute"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + // MO representing the Authentication configuration for + // a domain login - this is always a child of a LoginDomain object + container domainauth-items { - // Type is an MO-Defined-Type - type acl_ACEStats; - } - leaf configStatus { - config "false"; - type uint32; + uses aaa_DomainAuth-group; + description "Authentication Method for the Domain"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { - - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; - } + container rtaaaLoginDomain-items { - // IPv4 ACE - container seq-items { - list ACE-list { - key "seqNum"; + list RtAaaLoginDomain-list { + config "false"; + key "tDn"; - // Added containment: Prefix=seq - // Acquired From Package ipv4acl - uses ipv4acl_ACE-group; + uses aaa_RtAaaLoginDomain_target-group; } } } - grouping ipv4acl_ACE-group { + grouping aaa_DomainAuth-group { + description "Authentication Method for the Domain"; - // protocol to match - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf name { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Protocol Mask - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type naming_Descr; + description "TBD"; } - // source prefix - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // source prefix wildcard mask - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + leaf descr { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type naming_Descr; + description "Description of the specified attribute"; } - // source prefix length - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + // Type is a Local-MO-Defined-Type + type aaa_Realm_DomainAuth_realm; + description "Realm"; } - // destination prefix - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type aaa_ProviderGroupName; + description "Provider Group"; } - // destination prefix wildcard mask - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type aaa_ProviderGroupName; + description "Provider Group"; } - // destination prefix length - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type aaa_ProviderGroupName; + description "Provider Group"; } - // precedence - // Type is an MO-Defined-Type - leaf precedence { - description "IPv4 precedence"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type ipv4acl_Precedence; - } - leaf ttl { - type uint8; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP Str - // Type is an MO-Defined-Type - leaf icmpStr { - description "ICMP type"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPEnum; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP type - // Type is an MO-Defined-Type - leaf icmpType { - description "ICMP type"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP code - // Type is an MO-Defined-Type - leaf icmpCode { - description "ICMP code"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPCode; + type aaa_ProviderGroupName; + description "Provider Group"; } - // tos - // Type is an MO-Defined-Type - leaf tos { - description "capture session"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type ipv4acl_Tos; + type aaa_ProviderGroupName; + description "Provider Group"; + } + leaf invalidUserLog { + type boolean; + default "true"; + description "Enable logging for invalid users"; + } + leaf errEn { + type boolean; + default "true"; + description "Enable display of error message on login failures"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - description "config status"; + leaf authProtocol { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf fallback { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf local { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_Boolean; + description "Use local username authentication"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf none { - // Type is an MO-Defined-Type - type acl_ActionType; + type aaa_Boolean; + default "no"; + description "No authentication"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + // MO representing the Default Authentication configuration for + // all logins + container defaultauth-items { - // Type is an MO-Defined-Type - type acl_Operator; + uses aaa_DefaultAuth-group; + description "Default Authentication Method for all Logins"; } - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + // MO representing the Authentication configuration for Console + // Login + container consoleauth-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aaa_ConsoleAuth-group; + description "Console Authentication Method"; } + } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + grouping aaa_LoginProtection-group { + description "Specifies the System login block for attempts and within"; + leaf loginBlockTimeOnDoSAttack { + type uint32 { + range "0..65535"; + } + description "system login block time in seconds"; + } + leaf loginAttempts { + type uint32 { + range "0..65535"; + } + description "system login fail attempts value"; + } + leaf loginAttemptsFailureThreshold { + type uint32 { + range "0..65535"; + } + description "system login watch period for fail attempts"; + } + leaf loginAccessList { + type string { + length "0..64"; + } + description "configuration for system login access list name"; } + } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + grouping aaa_PostLoginBanner-group { + description "Post Login Banner"; - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Operator; + type naming_Descr; + description "TBD"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_PortNumber; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_PortNumber; + type naming_Descr; + description "Description of the specified attribute"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf message { - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; - } + type aaa_BannerMsg; + description "Login Banner Message"; } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + leaf guiMessage { - // Type is an MO-Defined-Type - type acl_Operator; + type aaa_BannerMsg; + description "Login GUI Message"; } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + leaf delimiter { - // Type is an MO-Defined-Type - type acl_PktLen; + type aaa_Delimiter; + description "Delimiter character"; } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aaa_PreLoginBanner-group { + description "Pre Login Banner"; - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; - } - leaf rev { - type boolean; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; - } - leaf packets { - config "false"; - type uint64; - } - leaf fragment { - type boolean; + type naming_Descr; + description "TBD"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_CaptureSes; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf descr { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type naming_Descr; + description "Description of the specified attribute"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + leaf message { - // Type is an MO-Defined-Type - type acl_VniType; + type aaa_BannerMsg; + description "Login Banner Message"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + leaf guiMessage { - // Type is an MO-Defined-Type - type acl_VlanType; + type aaa_BannerMsg; + description "Login GUI Message"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf delimiter { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type aaa_Delimiter; + description "Delimiter character"; } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + container rtpreLoginBanner-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aaa_RtPreLoginBanner_target-group; } + } - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + grouping aaa_RemoteUser-group { + description "Remote User"; - // Type is an MO-Defined-Type - type acl_Name; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_][a-zA-Z0-9_\\.@-]{0,31}.*"; + } + description "Name of the given attribute"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "TBD"; } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type naming_Descr; + description "Description of the specified attribute"; } + container userdomain-items { + list RemoteUserDomain-list { + config "false"; + key "name"; - // UDF - container udf-items { - - // Added containment as a singleton: Prefix=udf - // Acquired From Package ipv4acl - uses ipv4acl_UDF-group; + uses aaa_RemoteUserDomain-group; + description "Remote User Domain list"; + } + description "Remote User Domain"; } } - grouping ipv4acl_UDF-group { + grouping aaa_RemoteUserDomain-group { + description "Remote User Domain"; - // supports at most 18 UDF udf1 Name - // Type is an MO-Defined-Type - leaf udf1Name { - description "User-defined field match 1"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf1 Value - // Type is an MO-Defined-Type - leaf udf1Val { - description "UDF1 value to match"; + // Clients can add their own data for entity correlation + leaf ownerKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "TBD"; } - // udf1 Mask - // Type is an MO-Defined-Type - leaf udf1Mask { - description "Mask to apply to UDF1 value"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf2 Name - // Type is an MO-Defined-Type - leaf udf2Name { - description "User-defined field match 2"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "Description of the specified attribute"; } + container role-items { + list RemoteUserRole-list { + config "false"; + key "name"; - // udf2 Value - // Type is an MO-Defined-Type - leaf udf2Val { - description "UDF2 value to match"; - - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_RemoteUserRole-group; + description "Remote User Role list"; + } + description "Remote User Role"; } + } - // udf2 Mask - // Type is an MO-Defined-Type - leaf udf2Mask { - description "Mask to apply to UDF2 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + grouping aaa_RemoteUserRole-group { + description "Remote User Role"; - // udf3 Name - // Type is an MO-Defined-Type - leaf udf3Name { - description "User-defined field match 3"; + leaf privType { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UserRolePrivType; + description "Privilege Type"; } - // udf3 Value - // Type is an MO-Defined-Type - leaf udf3Val { - description "UDF3 value to match"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf3 Mask - // Type is an MO-Defined-Type - leaf udf3Mask { - description "Mask to apply to UDF3 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf4 Name - // Type is an MO-Defined-Type - leaf udf4Name { - description "User-defined field match 4"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf4 Value - // Type is an MO-Defined-Type - leaf udf4Val { - description "UDF4 value to match"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf4 Mask - // Type is an MO-Defined-Type - leaf udf4Mask { - description "Mask to apply to UDF4 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + grouping aaa_User-group { + description "Local User"; - // udf5 Name - // Type is an MO-Defined-Type - leaf udf5Name { - description "User-defined field match 5"; + // The user's first name + leaf firstName { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Name256 { + length "0..32"; + } + description "First Name"; } - // udf5 Value - // Type is an MO-Defined-Type - leaf udf5Val { - description "UDF5 value to match"; + // The user's last name + leaf lastName { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Name256 { + length "0..32"; + } + description "Last Name"; } - // udf5 Mask - // Type is an MO-Defined-Type - leaf udf5Mask { - description "Mask to apply to UDF5 value"; + // The user's e-mail address + leaf email { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Email; + description "Email Address"; } - // udf6 Name - // Type is an MO-Defined-Type - leaf udf6Name { - description "User-defined field match 6"; + // The user's phone number + leaf phone { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_Phone; + description "Phone Number"; } - // udf6 Value - // Type is an MO-Defined-Type - leaf udf6Val { - description "UDF6 value to match"; + // The expiration date of this account + // Default value handled in local MO type + leaf expiration { - // Type is an MO-Defined-Type - type acl_UdfVal; + // Type is a Local-MO-Defined-Type + type aaa_Date_User_expiration; + description "Account Expiration Date"; } - // udf6 Mask - // Type is an MO-Defined-Type - leaf udf6Mask { - description "Mask to apply to UDF6 value"; + // A boolean value indicating whether this account has an expiration date or not + leaf expires { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Boolean; + default "no"; + description "Expiration Set Status"; } - // udf7 Name - // Type is an MO-Defined-Type - leaf udf7Name { - description "User-defined field match 7"; + leaf allowExpired { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_Boolean; + default "no"; + description "Allow expired user to be configured"; } - // udf7 Value - // Type is an MO-Defined-Type - leaf udf7Val { - description "UDF7 value to match"; + leaf accountStatus { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_AccountStatus; + description "Account Status"; } - // udf7 Mask - // Type is an MO-Defined-Type - leaf udf7Mask { - description "Mask to apply to UDF7 value"; + leaf pwd { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Passwd; + description "Password"; } - // udf8 Name - // Type is an MO-Defined-Type - leaf udf8Name { - description "User-defined field match 8"; + leaf pwdEncryptType { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_KeyEncUserPass; + default "Encrypt"; + description "Password Encryption Type"; } - // udf8 Value - // Type is an MO-Defined-Type - leaf udf8Val { - description "UDF8 value to match"; + leaf pwdLifeTime { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_PwdLifeTime; + description "Password Life Time"; } - // udf8 Mask - // Type is an MO-Defined-Type - leaf udf8Mask { - description "Mask to apply to UDF8 value"; + // This is to allow the admin/aaa users to clear + // locally-authenticated users's password history + leaf clearPwdHistory { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Clear; + description "Clear Password History"; } - // udf9 Name - // Type is an MO-Defined-Type - leaf udf9Name { - description "User-defined field match 9"; + leaf unixUserId { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UnixUID; + description "TBD"; } - // udf9 Value - // Type is an MO-Defined-Type - leaf udf9Val { - description "UDF9 value to match"; + leaf shelltype { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_loginShellType; + description "User Shelltype Access"; } - // udf9 Mask - // Type is an MO-Defined-Type - leaf udf9Mask { - description "Mask to apply to UDF9 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + leaf name { - // udf10 Name - // Type is an MO-Defined-Type - leaf udf10Name { - description "User-defined field match 10"; + type pol_ObjName { - // Type is an MO-Defined-Type - type acl_UdfName; + // Copied from "aaa:UserName" type + length "0..64"; + pattern ".*[a-zA-Z0-9_][a-zA-Z0-9_\\.'-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf10 Value - // Type is an MO-Defined-Type - leaf udf10Val { - description "UDF10 value to match"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "TBD"; } - // udf10 Mask - // Type is an MO-Defined-Type - leaf udf10Mask { - description "Mask to apply to UDF10 value"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf11 Name - // Type is an MO-Defined-Type - leaf udf11Name { - description "User-defined field match 11"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "Description of the specified attribute"; } - // udf11 Value - // Type is an MO-Defined-Type - leaf udf11Val { - description "UDF11 value to match"; + container sshcertauth-items { - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_SshCertAuth-group; + description "Certificate Based User Authentication"; } + container userkey-items { + list UserSshKey-list { + key "type"; - // udf11 Mask - // Type is an MO-Defined-Type - leaf udf11Mask { - description "Mask to apply to UDF11 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; + uses aaa_UserSshKey-group; + description "Ssh Keys list"; + } + description "Ssh Keys"; } - // udf12 Name - // Type is an MO-Defined-Type - leaf udf12Name { - description "User-defined field match 12"; + container sshauth-items { - // Type is an MO-Defined-Type - type acl_UdfName; + uses aaa_SshAuth-group; + description "SSH Authorization"; } + container usercert-items { + list UserCert-list { + key "name"; - // udf12 Value - // Type is an MO-Defined-Type - leaf udf12Val { - description "UDF12 value to match"; + uses aaa_UserCert-group; + description "X509 Certificate list"; + } + description "X509 Certificate"; + } + container userdomain-items { + list UserDomain-list { + key "name"; - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_UserDomain-group; + description "User Domain list"; + } + description "User Domain"; } - // udf12 Mask - // Type is an MO-Defined-Type - leaf udf12Mask { - description "Mask to apply to UDF12 value"; + // Do not taking backup of this MO, this user data become invalid + // with time + container userdata-items { - // Type is an MO-Defined-Type - type acl_UdfMask; + uses aaa_UserData-group; + description "User Password Change History"; } + } - // udf13 Name - // Type is an MO-Defined-Type - leaf udf13Name { - description "User-defined field match 13"; - - // Type is an MO-Defined-Type - type acl_UdfName; + grouping aaa_SshCertAuth-group { + description "Certificate Based User Authentication"; + leaf certDn { + type string { + length "0..512"; + } + description "Distinguished Name For SSH X.509 Certificate"; + } + leaf algorithm { + type string { + length "0..4"; + } + description "DSA Or RSA Algorithm"; } - // udf13 Value - // Type is an MO-Defined-Type - leaf udf13Val { - description "UDF13 value to match"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf13 Mask - // Type is an MO-Defined-Type - leaf udf13Mask { - description "Mask to apply to UDF13 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf14 Name - // Type is an MO-Defined-Type - leaf udf14Name { - description "User-defined field match 14"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf14 Value - // Type is an MO-Defined-Type - leaf udf14Val { - description "UDF14 value to match"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf14 Mask - // Type is an MO-Defined-Type - leaf udf14Mask { - description "Mask to apply to UDF14 value"; + grouping aaa_UserSshKey-group { + description "Ssh Keys"; - // Type is an MO-Defined-Type - type acl_UdfMask; + leaf type { + + type comm_SshKeyType; + description "SSH server key type"; + } + leaf keyLen { + type uint32 { + range "0..4096"; + } + default "1024"; + description "Length of the key in bytes"; } + } - // udf15 Name - // Type is an MO-Defined-Type - leaf udf15Name { - description "User-defined field match 15"; + grouping aaa_SshAuth-group { + description "SSH Authorization"; - // Type is an MO-Defined-Type - type acl_UdfName; + leaf data { + + type aaa_SshData; + description "Ssh Authorization Data"; } - // udf15 Value - // Type is an MO-Defined-Type - leaf udf15Val { - description "UDF15 value to match"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf15 Mask - // Type is an MO-Defined-Type - leaf udf15Mask { - description "Mask to apply to UDF15 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf16 Name - // Type is an MO-Defined-Type - leaf udf16Name { - description "User-defined field match 16"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf16 Value - // Type is an MO-Defined-Type - leaf udf16Val { - description "UDF16 value to match"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf16 Mask - // Type is an MO-Defined-Type - leaf udf16Mask { - description "Mask to apply to UDF16 value"; + grouping aaa_UserCert-group { + description "X509 Certificate"; - // Type is an MO-Defined-Type - type acl_UdfMask; + leaf data { + + type aaa_UserCertDataType; + description "User X509 Certificate"; + } + leaf fingerprint { + config "false"; + type string; } - // udf17 Name - // Type is an MO-Defined-Type - leaf udf17Name { - description "User-defined field match 17"; + // Populated with the output of openssl output of the x509 certificate analysis + leaf certificateDecodeInformation { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UserCertDataType; + description "TBD"; } - // udf17 Value - // Type is an MO-Defined-Type - leaf udf17Val { - description "UDF17 value to match"; + // Populated with the PEM format public key extracted from the x509 certificate + leaf publicKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_UserCertDataType; + description "TBD"; } - // udf17 Mask - // Type is an MO-Defined-Type - leaf udf17Mask { - description "Mask to apply to UDF17 value"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfMask; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf18 Name - // Type is an MO-Defined-Type - leaf udf18Name { - description "User-defined field match 18"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "TBD"; } - // udf18 Value - // Type is an MO-Defined-Type - leaf udf18Val { - description "UDF18 value to match"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf18 Mask - // Type is an MO-Defined-Type - leaf udf18Mask { - description "Mask to apply to UDF18 value"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv4acl_AddrGroup-group { + grouping aaa_UserDomain-group { + description "User Domain"; - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type leaf name { - description "Object-group Name"; - - // Type is an MO-Defined-Type - type acl_Name; - } - // IPv4 Address Object Group member - container seq-items { - list AddrMember-list { - key "seqNum"; - - // Added containment: Prefix=seq - // Acquired From Package ipv4acl - uses ipv4acl_AddrMember-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; } + description "Name of the given attribute"; } - } - grouping ipv4acl_AddrMember-group { - - // prefix - // Type is an MO-Defined-Type - leaf prefix { - description "IPv4 prefix"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type naming_Descr; + description "TBD"; } - // prefix wildcard mask - // Type is an MO-Defined-Type - leaf prefixMask { - description "IPv4 prefix mask"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // prefix length - // Type is an MO-Defined-Type - leaf prefixLength { - description "IPv4 prefix length"; + leaf descr { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type naming_Descr; + description "Description of the specified attribute"; } + container role-items { + list UserRole-list { + key "name"; - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; - - // Type is an MO-Defined-Type - type acl_ConfigState; + uses aaa_UserRole-group; + description "User Role list"; + } + description "User Role"; } + } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + grouping aaa_UserRole-group { + description "User Role"; - // Type is an MO-Defined-Type - type acl_SequenceNumber; - } - } + leaf privType { - grouping ipv6acl_AF-group { + type aaa_UserRolePrivType; + description "Privilege Type"; + } - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; + type naming_Descr; + description "TBD"; } - // IPv6 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=name - // Acquired From Package ipv6acl - uses ipv6acl_ACL-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // IPv6 address object-group - container oName-items { - list AddrGroup-list { - key "name"; + leaf descr { - // Added containment: Prefix=oName - // Acquired From Package ipv6acl - uses ipv6acl_AddrGroup-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv6acl_ACL-group { + grouping aaa_UserData-group { + description "User Password Change History"; + leaf pwdChangedDate { + config "false"; + type union { + type string; + type uint64; + } + description "Password Change Date"; + } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + // User password history, stores encrypted passwords + // max of PwdProfile.historyCount recent passwords are stored + leaf pwdHistory { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aaa_PwdHistory; + description "Password History"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + // How many times user has changed the password within + // the given time interval + // (pwdChangeIntervalBegin + PwdProfile.changeInterval) + leaf pwdChangeCount { + config "false"; - // Type is an MO-Defined-Type - type acl_ACEStats; + type aaa_PwdChangeCount; + description "Password Change Count"; } - leaf configStatus { + leaf pwdChangeIntervalBegin { config "false"; - type uint32; + type union { + type string; + type uint64; + } + description "Password Change Interval Begin Date"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { + leaf name { - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // IPv6 ACE - container seq-items { - list ACE-list { - key "seqNum"; - - // Added containment: Prefix=seq - // Acquired From Package ipv6acl - uses ipv6acl_ACE-group; - } - } - } - - grouping ipv6acl_ACE-group { - - // protocol to match - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv6acl_Protocol; + type naming_Descr; + description "TBD"; } - // Protocol Mask - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv6acl_Protocol; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // source prefix - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv6 prefix"; + leaf descr { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type naming_Descr; + description "Description of the specified attribute"; } + } - // source prefix wildcard mask - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv6 prefix mask"; - - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; - } + grouping aaa_Role-group { + description "Role"; - // source prefix length - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv6 prefix length"; + leaf denyVRF { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_Boolean; + default "no"; + description "Deny all VRF except allowed ones"; } - // destination prefix - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv6 prefix"; + leaf allowedVRF { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type aaa_RuleEntityType; + description "mention the allowed VRF if denyVRF is set to yes"; } - // destination prefix wildcard mask - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv6 prefix mask"; + leaf denyVLAN { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; + type aaa_Boolean; + default "no"; + description "Deny all VLAN except allowed ones"; } - // destination prefix length - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv6 prefix length"; + leaf allowedVLAN { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_RuleEntityType; + description "mention the allowed VLAN if denyVLAN is set to yes"; } - // flow-label - // Type is an MO-Defined-Type - leaf flowLabel { - description "Flow label"; + leaf denyIntf { - // Type is an MO-Defined-Type - type ipv6acl_FlowLabel; + type aaa_Boolean; + default "no"; + description "Deny all interfaces except allowed ones"; + } + leaf priv { + type string; + description "Privilege"; } - // ICMP Str - // Type is an MO-Defined-Type - leaf icmpStr { - description "ICMPv6 Str"; + leaf rolePrivType { - // Type is an MO-Defined-Type - type ipv6acl_ICMPEnum; + type aaa_UserRolePrivType; + description "Privilege Type"; } - // ICMP type - // Type is an MO-Defined-Type - leaf icmpType { - description "ICMPv6 type"; + leaf resetToFactory { - // Type is an MO-Defined-Type - type ipv6acl_ICMPType; + type aaa_Boolean; + default "no"; + description "Trigger Reset to Factory settings"; } - // ICMP code - // Type is an MO-Defined-Type - leaf icmpCode { - description "ICMPv6 code"; + leaf name { - // Type is an MO-Defined-Type - type ipv6acl_ICMPCode; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_ConfigState; + type naming_Descr; + description "TBD"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type naming_Descr { + length "0..128"; + pattern ".*"; + } + description "Description of the specified attribute"; } + container rule-items { + list RoleRule-list { + key "ruleNumber"; - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; - - // Type is an MO-Defined-Type - type acl_ActionType; + uses aaa_RoleRule-group; + description "Rules for role list"; + } + description "Rules for role"; } + container intf-items { + list RoleIntf-list { + key "intfName"; - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + uses aaa_RoleIntf-group; + description "Permit specific interface name and deny rest list"; + } + description "Permit specific interface name and deny rest"; + } + container permitintf-items { + list PermitIntf-list { + key "ifName"; - // Type is an MO-Defined-Type - type acl_Operator; + uses aaa_PermitIntf-group; + description "Enter the range of interfaces accessible the role list"; + } + description "Enter the range of interfaces accessible the role"; } + container permitvlan-items { + list PermitVlan-list { + key "vlanRange"; - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + uses aaa_PermitVlan-group; + description "Enter the range of vlans accessible the role list"; + } + description "Enter the range of vlans accessible the role"; + } + container permitvrf-items { + list PermitVrf-list { + key "vrfName"; - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aaa_PermitVrf-group; + description "Enter the range of vrf accessible the role list"; + } + description "Enter the range of vrf accessible the role"; } + } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; + grouping aaa_RoleRule-group { + description "Rules for role"; - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf ruleNumber { + + type aaa_RuleNumberType; + description "Role Rule number"; } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + leaf permission { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RulePermissionType; + description "Permission type permit or deny"; } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + leaf ruleAccess { - // Type is an MO-Defined-Type - type acl_Operator; + type aaa_RuleAccessType; + description "Rule access type command or read or read-write"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + leaf ruleScope { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RuleScopeType; + description "Role Rule scope feature or feature-group or OID"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf cmdStr { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RuleCmdStrType; + description "Allowed command string pattern"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf scopeEntity { - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; - } + type aaa_RuleEntityType; + description "Allowed scope string"; } + } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; - - // Type is an MO-Defined-Type - type acl_Operator; + grouping aaa_RoleIntf-group { + description "Permit specific interface name and deny rest"; + leaf intfName { + type string; + description "interface name which can be allowed and deny rest"; } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + leaf allowInst { - // Type is an MO-Defined-Type - type acl_PktLen; + type aaa_RuleEntityType; + description "interface instances which can be allowed and deny rest"; } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aaa_PermitIntf-group { + description "Enter the range of interfaces accessible the role"; - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; + leaf ifName { + + type nw_IfId; + description "Enter the interface range"; } - leaf rev { - type boolean; + } + + grouping aaa_PermitVlan-group { + description "Enter the range of vlans accessible the role"; + leaf vlanRange { + type string; + description "Enter the vlan range"; } + } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + grouping aaa_PermitVrf-group { + description "Enter the range of vrf accessible the role"; - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; + leaf vrfName { + + type aaa_RuleEntityType { + pattern ".*[-a-zA-Z0-9_:;!@#$\\^\\*=\\+\\{\\}\\.]{1,32}.*"; + } + description "Enter the vrf name to access the role"; } - leaf packets { + } + + grouping aaa_FactoryRole-group { + description "Role"; + leaf priv { config "false"; - type uint64; - } - leaf fragment { - type boolean; + type string; + description "Privilege"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf resetToFactory { - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aaa_Boolean; + default "no"; + description "Trigger Reset to Factory settings"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf name { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_VniType; + type naming_Descr; + description "TBD"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_VlanType; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf descr { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type naming_Descr; + description "Description of the specified attribute"; } + } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; - - // Type is an MO-Defined-Type - type acl_Name; - } + grouping aaa_Domain-group { + description "Security Domain"; - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + leaf name { - // Type is an MO-Defined-Type - type acl_Name; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "TBD"; } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv6acl_AddrGroup-group { + grouping aaa_PrivSecret-group { + description "Enable user to a higher privilege after prompting for secret password"; - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type - leaf name { - description "Object-group Name"; + leaf pwd { - // Type is an MO-Defined-Type - type acl_Name; + type aaa_Passwd; + description "Password for user privilege escalation"; } - // IPv6 Address Object Group member - container seq-items { - list AddrMember-list { - key "seqNum"; + leaf encType { - // Added containment: Prefix=seq - // Acquired From Package ipv6acl - uses ipv6acl_AddrMember-group; - } + type aaa_SecretEncType; + description "Type of encryption specified"; + } + + leaf privLvl { + + type aaa_PrivLvlType; + description "Privilege level to which the password is set"; } } - grouping ipv6acl_AddrMember-group { + grouping aaa_PwdProfile-group { + description "Password Change/Expiration Policy"; - // prefix - // Type is an MO-Defined-Type - leaf prefix { - description "IPv6 prefix"; + // Interval used to warn the users whose password is closed + // to expiry date. warn the user before expirationWarnTime + // days of actual password expiration. + leaf expirationWarnTime { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type aaa_PwdExpWarnTime; + description "Password Expiration Warn Time in Days"; } - // prefix wildcard mask - // Type is an MO-Defined-Type - leaf prefixMask { - description "IPv6 prefix mask"; + // How many recent user passwords should be stored in user + // password history. + leaf historyCount { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; + type aaa_HistoryDepth; + description "Password History Count"; } - // prefix length - // Type is an MO-Defined-Type - leaf prefixLength { - description "IPv6 prefix length"; + // There are two ways of restricting the user from changing + // the password frequently. + // 1. allow no passwd changes within given time interval. + // 2. allow max of n psswd changes within give time interval. + // noChangeInterval holds the 1st policy mentioned above + leaf noChangeInterval { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_PwdChangeInterval; + description "No Password Change Interval in Hours"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; + // ChangeInterval holds the 2nd policy mentioned above + leaf changeInterval { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_PwdChangeInterval; + description "Change Interval in Hours"; } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + // stores which one of the above two policies is active now + leaf changeDuringInterval { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_PwdPolicy; + description "Password Policy"; } - } - grouping actrl_Entity-group { + // How many password changes allowed within changeInterval + leaf changeCount { + + type aaa_PwdChangeCount; + description "Number of Password Changes in Interval"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "TBD"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // The object contains the auxillary state of the process, used - // for internal information - container aux-items { + leaf descr { - // Added containment as a singleton: Prefix=aux - // Acquired From Package actrl - uses actrl_AuxSt-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Filter rules identifying a group of filter entries - container filt-items { - list Flt-list { - config "false"; - key "id"; - - // Added containment: Prefix=filt - // Acquired From Package actrl - uses actrl_Flt-group; + grouping aaa_RoleFeatureGroup-group { + description "Create or Modify role feature group"; + leaf groupName { + type string { + length "1..32"; } + description "Enter feature-group name"; } - // Holds actrl instance information - container inst-items { + // Feature name configuration + container featurename-items { + list FeatureName-list { + key "name"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package actrl - uses actrl_Inst-group; + uses aaa_FeatureName-group; + description "Add features to the Feature-group list"; + } + description "Add features to the Feature-group"; } + } - // Holds the scope of the zoning rules - container scope-items { - list Scope-list { - config "false"; - key "id"; - - // Added containment: Prefix=scope - // Acquired From Package actrl - uses actrl_Scope-group; + grouping aaa_FeatureName-group { + description "Add features to the Feature-group"; + leaf name { + type string { + length "1..32"; } + description "Enter the feature name"; } } - grouping actrl_AuxSt-group { + grouping pki_Ep-group { + description "Public Key Management"; - // Inherited From nw:CpSt - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Scope auxillary information - container scope-items { - list AuxScope-list { - config "false"; - key "id"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=scope - // Acquired From Package actrl - uses actrl_AuxScope-group; - } + type naming_Descr; + description "TBD"; } - // Rule auxillary information - container rule-items { - list AuxRule-list { - config "false"; - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rule - // Acquired From Package actrl - uses actrl_AuxRule-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Filter auxillary information - container flt-items { - list AuxFlt-list { - config "false"; - key "id"; + leaf descr { - // Added containment: Prefix=flt - // Acquired From Package actrl - uses actrl_AuxFlt-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // MgmtRule auxillary information - container mgmtrule-items { - list MgmtAuxRule-list { - config "false"; - key "id"; + container webtokendata-items { - // Added containment: Prefix=mgmtrule - // Acquired From Package actrl - uses actrl_MgmtAuxRule-group; - } + uses pki_WebTokenData-group; + description "Web Token Data"; } - // Filter auxillary information - container mgmtauxflt-items { - list MgmtAuxFlt-list { - config "false"; - key "id"; + // Csync2 Pre Shared Key - used to distribute the key to all IFC nodes + container csyncsharedkey-items { - // Added containment: Prefix=mgmtauxflt - // Acquired From Package actrl - uses actrl_MgmtAuxFlt-group; - } + uses pki_CsyncSharedKey-group; + description "Csync Shared Key"; } - } - grouping actrl_AuxScope-group { + // Csync2 Policy - used to control csync timeout and enable/disable + container csyncpolicy-items { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type actrl_ScopeId; + uses pki_CsyncPolicy-group; + description "File Synchronization Policy"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container dbgplgch-items { - // Type is an MO-Defined-Type - type naming_Name256; + uses pki_DebugPluginChallenge-group; + description "Debug Plugin Challenge Values"; } - } - - grouping actrl_AuxRule-group { - - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + container keyring-items { + list KeyRing-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_RuleId; + uses pki_KeyRing-group; + description "Key Ring list"; + } + description "Key Ring"; } - // Filter Id - // Type is an MO-Defined-Type - leaf fltid { - config "false"; - description "Filter ID"; + // CertificateAuthority object, also called Trust Points in DCOS + container tp-items { + list TP-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_FltId; + uses pki_TP-group; + description "Certificate Authority list"; + } + description "Certificate Authority"; } - // Priority - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + container calookup-items { - // Type is an MO-Defined-Type - type actrl_RulePrio; + uses pki_CertstoreLookup-group; + description "Certstore Lookup Configuration for Authentication"; } + container certificatemap-items { + list CertificateMap-list { + key "name"; - // scope ID - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + uses pki_CertificateMap-group; + description "Crypto CertificateMap Filters list"; + } + description "Crypto CertificateMap Filters"; + } + container sshauthcert-items { + list SshAuth-list { + key "certIssuerName"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + uses pki_SshAuth-group; + description "Configure Mapping Filter for Ssh list"; + } + description "Configure Mapping Filter for Ssh"; } - // Direction - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + container remotecert-items { - // Type is an MO-Defined-Type - type actrl_Direction; + uses pki_RemoteCertstore-group; + description "Remote CA Certstore Configuration"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container trustpool-items { - // Type is an MO-Defined-Type - type naming_Name256; + uses pki_TrustPool-group; + description "CA Trustpool Policy Configuration"; } - } - grouping actrl_AuxFlt-group { + container rtfabricResPkiEp-items { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + list RtFabricResPkiEp-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type actrl_FltId; + uses fabric_RtFabricResPkiEp_target-group; + } } + } - // Rule Id array - // Type is an MO-Defined-Type - leaf ruleidArr { - config "false"; - description "Rule ID"; - - // Type is an MO-Defined-Type - type actrl_RuleIdArray; - } + grouping pki_WebTokenData-group { + description "Web Token Data"; - // Rule array index - // Type is an MO-Defined-Type - leaf ruleIndex { + // The encryption parameters cannot be modified by a client request + leaf key { config "false"; - description "Rule Index"; - // Type is an MO-Defined-Type - type actrl_RuleIndex; + type pki_AES128Key { + length "24"; + } + description "TBD"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf initializationVector { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type pki_AES128IV { + length "24"; + } + description "TBD"; } - // FilterEntry auxillary information - container ent-items { - list AuxEntry-list { - config "false"; - key "name"; + leaf hashSecret { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package actrl - uses actrl_AuxEntry-group; + type pki_SHA256_SharedSecret16 { + length "24"; } + description "TBD"; } - } - grouping actrl_AuxEntry-group { - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Token timeout modifications are allowed + leaf webtokenTimeoutSeconds { - // Type is an MO-Defined-Type - type naming_Name256; + type pki_WebTokenTimeoutType; + description "Timeout in Seconds"; } - } - grouping actrl_MgmtAuxRule-group { - - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Knob to control absolute maximum validity period for a webtoken beyond which it cannot be refreshed Units are in hours - minimum 4 hours, maximum 24 hours + leaf maximumValidityPeriod { - // Type is an MO-Defined-Type - type actrl_RuleId; - } - leaf ctx_id { - config "false"; - type uint32; + type pki_WebTokenValidityPeriodType; + description "Maximum Validity Period in hours"; } - // Scope Id - // Type is an MO-Defined-Type - leaf scope_id { - config "false"; - description "Scope ID"; + leaf uiIdleTimeoutSeconds { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type pki_GuiIdleTimeoutType; + description "GUI Idle Timeout in Seconds"; } - // Filter Id - // Type is an MO-Defined-Type - leaf fltid { - config "false"; - description "Filter ID"; + leaf sessionRecordFlags { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_SessionRecordFlags; + description "Session Recording Options"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf siteFingerprint { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type string; + description "Issuing Site Fingerprint"; } - } - - grouping actrl_MgmtAuxFlt-group { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf name { - // Type is an MO-Defined-Type - type actrl_FltId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MgmtRule Id array - // Type is an MO-Defined-Type - leaf mgmtruleidArr { - config "false"; - description "Rule ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type actrl_RuleIdArray; + type naming_Descr; + description "TBD"; } - // Rule array index - // Type is an MO-Defined-Type - leaf mgmtruleIndex { - config "false"; - description "Rule Index"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleIndex; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping actrl_Flt-group { + grouping pki_CsyncSharedKey-group { + description "Csync Shared Key"; - // Id - // Type is an MO-Defined-Type - leaf id { + // The encryption parameters cannot be modified by any client requests + leaf key { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_Csync2KeyType; + description "TBD"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Filter entry, unique set of classification filters identified - // by various l4 parameters - container ent-items { - list Entry-list { - config "false"; - key "name"; + grouping pki_CsyncPolicy-group { + description "File Synchronization Policy"; - // Added containment: Prefix=ent - // Acquired From Package actrl - uses actrl_Entry-group; - } - } + leaf state { - // Rel-def target from toRemoteRFltP - // Inherited From actrl:Flt - container rtfvToRemoteRFltP-items { + type pki_CsyncActivationStateType; + description "TBD"; + } - // Abstract containment of rtfvToRemoteRFltP derived from vz:AFilterableUnit - list RtFvToRemoteRFltP-list { - config "false"; - key "tDn"; + leaf interval { - // Added containment: Prefix=rtfvToRemoteRFltP - // Acquired From Package fv - uses fv_RtFvToRemoteRFltP_target-group; - } + type pki_CsyncRefreshIntervalType; + description "TBD"; } - // Rel-def target from toRemoteRFltAtt - // Inherited From actrl:Flt - container rtfvToRemoteRFltAtt-items { - - // Abstract containment of rtfvToRemoteRFltAtt derived from vz:AFilterableUnit - list RtFvToRemoteRFltAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtfvToRemoteRFltAtt - // Acquired From Package fv - uses fv_RtFvToRemoteRFltAtt_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from rfltpConn - container rsrfltpConn-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=rsrfltpConn - // Acquired From Package actrl - uses actrl_RsRfltpConn_source-group; + type naming_Descr; + description "TBD"; } - // Rel-def target from ConnToFltInst - // Inherited From actrl:Flt - container rtvnsConnToFltInst-items { - - // Abstract containment of rtvnsConnToFltInst derived from vz:AFilterable - list RtVnsConnToFltInst-list { - config "false"; - key "tDn"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rtvnsConnToFltInst - // Acquired From Package vns - uses vns_RtVnsConnToFltInst_target-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Rel-def target from FwdRFltPAtt - // Inherited From actrl:Flt - container rtvzFwdRFltPAtt-items { - - // Abstract containment of rtvzFwdRFltPAtt derived from vz:AFilterableUnit - list RtVzFwdRFltPAtt-list { - config "false"; - key "tDn"; + leaf descr { - // Added containment: Prefix=rtvzFwdRFltPAtt - // Acquired From Package vz - uses vz_RtVzFwdRFltPAtt_target-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from RevRFltPAtt - // Inherited From actrl:Flt - container rtvzRevRFltPAtt-items { - - // Abstract containment of rtvzRevRFltPAtt derived from vz:AFilterableUnit - list RtVzRevRFltPAtt-list { - config "false"; - key "tDn"; + // Csync2 Element - contains + // a) file pattern + // b) type of pattern (include or exclude) + // c) symbolic name of the pattern + container csyncelem-items { + list CsyncElement-list { + key "name"; - // Added containment: Prefix=rtvzRevRFltPAtt - // Acquired From Package vz - uses vz_RtVzRevRFltPAtt_target-group; + uses pki_CsyncElement-group; + description "File Pattern for Synchronization list"; } + description "File Pattern for Synchronization"; } + } - // Rel-def target from tabooRFltAtt - // Inherited From actrl:Flt - container rtvzTabooRFltAtt-items { + grouping pki_CsyncElement-group { + description "File Pattern for Synchronization"; + leaf pattern { + type string; + } - // Abstract containment of rtvzTabooRFltAtt derived from vz:AFilterableUnit - list RtVzTabooRFltAtt-list { - config "false"; - key "tDn"; + leaf type { - // Added containment: Prefix=rtvzTabooRFltAtt - // Acquired From Package vz - uses vz_RtVzTabooRFltAtt_target-group; - } + type pki_CsyncElementType; + description "TBD"; } - // Rel-def target from rFltAtt - // Inherited From actrl:Flt - container rtvzRFltAtt-items { - - // Abstract containment of rtvzRFltAtt derived from vz:AFilterableUnit - list RtVzRFltAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtvzRFltAtt - // Acquired From Package vz - uses vz_RtVzRFltAtt_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping actrl_Entry-group { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type naming_Descr; + description "TBD"; + } - // Type is an MO-Defined-Type - type naming_Name256 { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf applyToFrag { - config "false"; - type boolean; - default "true"; - } + } - // Ether type - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf etherT { - config "false"; - description "Ethernet Type"; + grouping pki_DebugPluginChallenge-group { + description "Debug Plugin Challenge Values"; + + leaf name { - // Type is an MO-Defined-Type - type l2_EtherType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ARP opcodes - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf arpOpc { - config "false"; - description "ARP Opcodes"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type arp_Opcode; + type naming_Descr; + description "TBD"; } - // ICMPv4 types - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf icmpv4T { - config "false"; - description "ICMPv4 Type"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type icmpv4_Type; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // ICMPv6 types - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf icmpv6T { - config "false"; - description "ICMPv6 Type"; + leaf descr { - // Type is an MO-Defined-Type - type icmpv6_Type; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping actrl_Inst-group { + grouping pki_KeyRing-group { + description "Key Ring"; - // Global access controls - // Type is an MO-Defined-Type - leaf accCtrl { - config "false"; - description "Access Controls"; + leaf adminState { - // Type is an MO-Defined-Type - type actrl_AccControl; + type pki_KeyringState; + description "TBD"; + } + leaf regen { + type boolean; + default "false"; + description "Regenerate"; } - // Timer interval to clear security group log - // Type is an MO-Defined-Type - leaf logClrIntvl { - config "false"; - description "Log Clear Interval"; + leaf key { - // Type is an MO-Defined-Type - type actrl_LogClrIntvl; + type pki_PrivateKey; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf modulus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type pki_Modulus; + description "Modulus"; + } + leaf exportable { + type boolean; + description "Enable to Make the Keypair Exportable"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf cert { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pki_Cert; + description "Certificate"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + leaf certValidUntil { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type pki_CertValidity; + description "Certificate Validity"; } - } - grouping actrl_Scope-group { - - // Id - // Type is an MO-Defined-Type - leaf id { + // Populated with the output of openssl output of the x509 certificate analysis + leaf certificateDecodeInformation { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + type pki_Cert; + description "Certificate Decode Information"; } - // SecurityLabel, this must be in sync with l3Ctx:SecLbl - // Type is an MO-Defined-Type - leaf secLbl { - config "false"; - description "Security Label"; + // trust point (CA) reference + // DN IS IMPLIED AND RESOLVED PROGRAMATICALLY + // refers="pki:TP" + leaf tp { - // Type is an MO-Defined-Type - type actrl_SecLbl; + type naming_Name; + description "Certificate Authority"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Zoning rules for tenant epgs - container rule-items { - list Rule-list { - config "false"; - key "scopeId sPcTag dPcTag fltId"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rule - // Acquired From Package actrl - uses actrl_Rule-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Zoning rules for management epgs - container mr-items { - list MgmtRule-list { - config "false"; - key "scopeId sPcTag dPcTag fltId"; + leaf descr { - // Added containment: Prefix=mr - // Acquired From Package actrl - uses actrl_MgmtRule-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + + container certreq-items { + + uses pki_CertReq-group; + description "Certificate Request"; } - // Zoning rules for snmp epgs - container sr-items { - list SnmpRule-list { + container rtcommKeyRing-items { + + list RtCommKeyRing-list { config "false"; - key "scopeId sPcTag dPcTag fltId"; + key "tDn"; - // Added containment: Prefix=sr - // Acquired From Package actrl - uses actrl_SnmpRule-group; + uses comm_RtCommKeyRing_target-group; + description "Key Ring list"; } + description "Key Ring"; } - // Rel-def from tenConn - container rstenConn-items { + container rtaaaKeyringRef-items { - // Abstract containment of rstenConn derived from actrl:Scope - list RsTenConn-list { + list RtAaaKeyringRef-list { config "false"; key "tDn"; - // Added containment: Prefix=rstenConn - // Acquired From Package actrl - uses actrl_RsTenConn_source-group; + uses aaa_RtAaaKeyringRef_target-group; } } } - grouping actrl_Rule-group { + grouping pki_CertReq-group { + description "Certificate Request"; + leaf pwd { + type string; + description "Password"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // TODO how to set this value to hostname by default + leaf subjName { - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Subject Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf email { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name256 { + length "0..40"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Email Address"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf country { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Name { + pattern ".*[A-Z][A-Z].*"; + } + description "Country"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf state { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "State"; } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + leaf locality { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Locality"; } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + leaf orgUnitName { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Organization Unit Name"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + leaf orgName { - // Type is an MO-Defined-Type - type actrl_PcTag; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Organization Name"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { + // PEM encoded certificate request + leaf req { config "false"; - description "Destination PC Tag"; - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_Cert; + description "TBD"; } + } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + grouping pki_TP-group { + description "Certificate Authority"; + + leaf certChain { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_Cert; + description "Certificate Chain"; } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { + // Certificate Fingerprint populated by backend + leaf fp { config "false"; - description "Direction"; - // Type is an MO-Defined-Type - type actrl_Direction; + type pki_FP; + description "TBD"; } - - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { + leaf numCerts { config "false"; - description "Action"; - - // Type is an MO-Defined-Type - type actrl_Action; + type uint32; + default "0"; } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + leaf enrollmentType { - // Type is an MO-Defined-Type - type qos_Prio; + type pki_CertEnrollType; + description "Configure Trustpoint Enrollment"; } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "Dscp"; + leaf revokeCheckConf { - // Type is an MO-Defined-Type - type qosp_Dscp; + type pki_CertRevokeCheck; + description "Configure Trustpoint Revocation Check Methods"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf keyLabel { - // Type is an MO-Defined-Type - type actrl_OperSt; + type pki_KeyLabel; + description "Trustpoint RSA Key-pair Label"; } - } - grouping actrl_MgmtRule-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping pki_CertstoreLookup-group { + description "Certstore Lookup Configuration for Authentication"; + + leaf type { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type pki_CertLookupType; + description "Certstore Type for Lookup"; } + } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + grouping pki_CertificateMap-group { + description "Crypto CertificateMap Filters"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + leaf name { + + type pki_FilterName; + description "CertificateMap Filter Name"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + leaf subjectName { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_FilterName; + description "Subject Name of the Certificate"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { - config "false"; - description "Destination PC Tag"; + leaf altnameEmail { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_FilterName; + description "Email Id as an Alternate Name"; } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + leaf altnameUpn { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_FilterName; + description "User Principal Name as an Alternate Name"; } + } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + grouping pki_SshAuth-group { + description "Configure Mapping Filter for Ssh"; - // Type is an MO-Defined-Type - type actrl_Direction; + leaf certIssuerName { + + type pki_FilterName; + description "Issuer Name of the Certificate"; } - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { - config "false"; - description "Action"; + leaf mapFilter1 { - // Type is an MO-Defined-Type - type actrl_Action; + type pki_FilterName; + description "Mapping Filter to be Applied"; } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + leaf mapFilter2 { - // Type is an MO-Defined-Type - type qos_Prio; + type pki_FilterName; + description "Mapping Filter to be Applied"; } + } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "Dscp"; + grouping pki_RemoteCertstore-group { + description "Remote CA Certstore Configuration"; - // Type is an MO-Defined-Type - type qosp_Dscp; + leaf ldapGroupName { + + type pki_ProviderGroupName; + description "Ldap Server Group Containing Remote CA"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf crlTimer { - // Type is an MO-Defined-Type - type actrl_OperSt; + type pki_CrlRefreshTime; + description "Refresh Time to Fetch Crl from Remote Certstore"; } } - grouping actrl_SnmpRule-group { + grouping pki_TrustPool-group { + description "CA Trustpool Policy Configuration"; + leaf sourceUrl { + type string; + description "Configure Cabundle Source HTTP Url"; + } + + leaf vrf { + + type l3_VrfName; + description "Vrf to be Used to Contact HTTP Server"; + } + + leaf srcIf { + + type nw_IfId; + description "Source Interface to Reach HTTP Server"; + } + + container proxyserver-items { + + uses pki_HttpProxy-group; + description "Http Proxy Server Related Parameters"; + } + } + + grouping pki_HttpProxy-group { + description "Http Proxy Server Related Parameters"; + + leaf port { + + type pki_Port; + description "HTTP Proxy Server Port"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "IPV4/IPV6 Address or DNS Name of Proxy Server"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping security_Security-group { + description "Security Rules For User And Fips"; + + leaf commonCriteria { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type aaa_Boolean; + default "no"; + description "Enable or Disable Common Criteria"; } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + leaf enFipsMode { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type aaa_Boolean; + default "no"; + description " Enable/Disable FIPS Mode"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + // for security logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type actrl_PcTag; + type arp_LoggingLevel; + description "Security Logging Level"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { - config "false"; - description "Destination PC Tag"; + leaf name { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type actrl_FltId; + type naming_Descr; + description "TBD"; } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_Direction; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { - config "false"; - description "Action"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_Action; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + grouping smartcard_PasswdEncrypt-group { + description "password encryption aes feature"; - // Type is an MO-Defined-Type - type qos_Prio; + leaf adminSt { + + type smartcard_AdminState; + description "TBD"; } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { + // Operational properties + leaf configErrMasterKey { config "false"; - description "Dscp"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type smartcard_SksdmasterkeyfaultBitmapT; + default "noerror"; + description "Error for master key unconfigured"; + } + } + + grouping stp_Entity-group { + description "STP Entity"; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; + + type nw_EntOperSt; description "Operational State"; + } - // Type is an MO-Defined-Type - type actrl_OperSt; + // This objects hold per stp instance information. There is + // only one instance of stp running in the system today + container inst-items { + + uses stp_Inst-group; + description "STP Instance"; } } - grouping actrlcap_Prov-group { + grouping stp_Inst-group { + description "STP Instance"; - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // Spanning Tree operating mode + leaf mode { - // Type is an MO-Defined-Type - type actrlcap_Subj; + type stp_Mode; + description "Protocol Mode"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { - config "false"; - description "TBD"; + // Linecard ISSU type + leaf lcIssu { - // Type is an MO-Defined-Type - type cap_Counter; + type stp_LcIssu; + description "Linecard ISSU type"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { - config "false"; - description "TBD"; + // pathcost options + leaf pathcostOp { - // Type is an MO-Defined-Type - type cap_Counter; + type stp_PathcostOp; + description "Spanning tree pathcost options"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { - config "false"; - description "TBD"; + // Enable STP for FCoE VLANs + leaf fcoe { - // Type is an MO-Defined-Type - type cap_StorageHint; + type stp_AdminSt; + description "enable spanning tree for fcoe vlan"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Enable spanning tree bridge assurance + leaf bridge { - // Type is an MO-Defined-Type - type cap_RuleT; + type stp_AdminSt; + description "enable spanning-tree bridge assurance on all ports"; } - } - - grouping analytics_Entity-group { - // Holds netflow and analytics instance information - container inst-items { - list Inst-list { - key "mode"; + // spanning tree loopguard options + leaf loopguard { - // Added containment: Prefix=inst - // Acquired From Package analytics - uses analytics_Inst-group; - } + type stp_AdminSt; + default "disabled"; + description "enable loop guard on all ports"; } - } - - grouping analytics_Inst-group { - // analytics/netflow mode - // Type is an MO-Defined-Type - leaf mode { - description "Mode Select"; + // spanning tree L2 Gateway domain ID + leaf l2GStpDomId { - // Type is an MO-Defined-Type - type analytics_ModeT; + type stp_L2GStpDomId; + description "spanning tree L2 Gateway Domain Id"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Default value handled in local MO type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Type is a Local-MO-Defined-Type + type nw_InstCtrl_Inst_ctrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Platform capability informations - container capability-items { + // This object holds mcp information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Added containment as a singleton: Prefix=capability - // Acquired From Package analytics - uses analytics_Capability-group; + uses stp_If-group; + description "STP Interface list"; + } + description "STP Interface"; } - // Controller information for bootstrapping the analytics agent - container controller-items { - list Controller-list { - key "name"; + // Holds mst informaton at switch level + container mstent-items { - // Added containment: Prefix=controller - // Acquired From Package analytics - uses analytics_Controller-group; - } + uses stp_MstEntity-group; + description "STP MST Entity"; } - // Flow Record - container recordp-items { - list RecordP-list { - key "name"; + // stp pseudo-information, placeholder for future implementation + container pseudo-items { - // Added containment: Prefix=recordp - // Acquired From Package analytics - uses analytics_RecordP-group; - } + uses stp_PseudoInfo-group; + description "STP pseudo information"; } - // Flow Collector - container collector-items { - list Collector-list { - key "name"; + // This object holds stp information that is operated at + // vlan level + container vlan-items { + list Vlan-list { + key "id"; - // Added containment: Prefix=collector - // Acquired From Package analytics - uses analytics_Collector-group; + uses stp_Vlan-group; + description "Vlan list"; } + description "Vlan"; } + } - // Flow Monitor one monitor can be attached to n records - container monitor-items { - list Monitor-list { - key "name"; + grouping stp_If-group { + description "STP Interface"; - // Added containment: Prefix=monitor - // Acquired From Package analytics - uses analytics_Monitor-group; - } + // Port mode + leaf mode { + + type stp_IfMode; + description "Port Mode"; } - // Analytics profile - container prof-items { - list Profile-list { - key "name"; + // Interface controls + leaf ctrl { - // Added containment: Prefix=prof - // Acquired From Package analytics - uses analytics_Profile-group; - } + type stp_IfControl; + description "Controls"; } - // Forwarding instance based target - container fwdinst-items { - list FwdInstTarget-list { - key "id"; + // guard mode + leaf guard { - // Added containment: Prefix=fwdinst - // Acquired From Package analytics - uses analytics_FwdInstTarget-group; - } + type stp_Guard; + description "Guard Mode"; } - // Physical interface target - container if-items { - list PhysIfTarget-list { - key "id fltType"; + // bpdufilter mode + leaf bpdufilter { - // Added containment: Prefix=if - // Acquired From Package analytics - uses analytics_PhysIfTarget-group; - } + type stp_Bpdufilter; + description "bpdufilter mode"; } - // Bridge Domain target - container bd-items { - list BDTarget-list { - key "id"; + // bpduguard mode + leaf bpduguard { - // Added containment: Prefix=bd - // Acquired From Package analytics - uses analytics_BDTarget-group; - } + type stp_BPDUGuard; + description "Guard Mode"; } - // Policy Container for ACLs - container policy-items { - list Policy-list { - key "name"; + // Link Type + leaf linkType { - // Added containment: Prefix=policy - // Acquired From Package analytics - uses analytics_Policy-group; - } + type stp_LinkType; + description "Link Type"; } - } - - grouping analytics_Capability-group { - // Mode - // Type is an MO-Defined-Type - leaf fabricMode { - config "false"; - description "Mode to Indicate Platform Type"; + // Port Priority + leaf priority { - // Type is an MO-Defined-Type - type analytics_CModeT; + type stp_PortPriority; + description "Port Priority"; } - // Collector Bucket Hash Width - // Type is an MO-Defined-Type - leaf bucketHashWidth { - config "false"; - description "Bit Width of the Collector Bucket Hash"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type analytics_HashWidthT; + type stp_Cost; + description "Port Path Cost"; } - // Number of TCAM entries - // Type is an MO-Defined-Type - leaf numTcamEnt { - config "false"; - description "Number of TCAM Entries"; + // Port simulate pvst + leaf simulatePvst { - // Type is an MO-Defined-Type - type analytics_numTcamEntT; + type stp_SimulateIf; + description "Port simulate pvst"; } - // Number of TCAM entries per V4 type - // Type is an MO-Defined-Type - leaf numTcamEntPerV4 { - config "false"; - description "Number of TCAM Entries per V4 type"; + // Port lc issu + leaf lcIssu { - // Type is an MO-Defined-Type - type analytics_numTcamEntV4T; + type stp_LcIssu; + description "Port lc issu"; } - // Number of TCAM entries per V6 type - // Type is an MO-Defined-Type - leaf numTcamEntPerV6 { - config "false"; - description "Number of TCAM Entries per V6 type"; + // Port mst prestd + leaf prestdCfg { - // Type is an MO-Defined-Type - type analytics_numTcamEntV6T; + type stp_AdminSt; + default "disabled"; + description "Port mst prestd"; } - } - grouping analytics_Controller-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Descr1024; + description "Description"; } - // Remote node VRF - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Remote node destination port - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l4_Port; + type nw_IfAdminSt; + description "Admin State"; } - // IP dscp value - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + // This object describes interface level config per vlan + container vlan-items { + list VlanCfg-list { + key "vlanId"; - // Type is an MO-Defined-Type - type qosp_DscpCP; + uses stp_VlanCfg-group; + description "Interface Level Configure per Vlan list"; + } + description "Interface Level Configure per Vlan"; } - // Source interface - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // This object describes interface level config per mst instance + container mst-items { + list MstCfg-list { + key "mstId"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf srcAddr { - type address_Ip; + uses stp_MstCfg-group; + description "Interface Level Configure per MST list"; + } + description "Interface Level Configure per MST"; } - } - - grouping analytics_RecordP-group { - // Match parameters for the flow record - // Type is an MO-Defined-Type - leaf match { - description "Match Params"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type analytics_MatchParams; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Collect parameters for the flow record - // Type is an MO-Defined-Type - leaf collect { - description "Collect Params"; + grouping stp_VlanCfg-group { + description "Interface Level Configure per Vlan"; - // Type is an MO-Defined-Type - type analytics_CollectParams; + // Vlan Id + leaf vlanId { + + type stp_VlanId; + description "Vlan Id"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port Priority in increments of 32 + leaf priority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_PortPriority; + description "Port Priority"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_Cost; + description "Port Path Cost"; } } - grouping analytics_Collector-group { + grouping stp_MstCfg-group { + description "Interface Level Configure per MST"; - // Collector version - // Type is an MO-Defined-Type - leaf ver { - description "Collector Version Format"; + // MST Id + leaf mstId { - // Type is an MO-Defined-Type - type analytics_CollVersion; + type stp_MstId; + description "Mst Instance Id"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port Priority in increments of 32 + leaf priority { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_PortPriority; + description "Port Priority"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_Cost; + description "Port Path Cost"; } + } - // Remote node VRF - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + grouping stp_MstEntity-group { + description "STP MST Entity"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + // spanning tree max hops + leaf maxHops { + + type stp_MaxHops; + description "STP mst max hops"; } - // Remote node destination port - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + // enable spanning tree simulation + leaf simulate { - // Type is an MO-Defined-Type - type l4_Port; + type stp_Simulate; + description "spanning tree simulation"; } - // IP dscp value - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + // operation error + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type qosp_DscpCP; + type nw_OperErrQual; + description "Operation Error Qualifier"; } - // Source interface - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Region name + leaf regName { - // Type is an MO-Defined-Type - type nw_IfId; + type stp_RegName; + description "Region Name"; } - leaf srcAddr { - type address_Ip; + + // Region revision + leaf rev { + + type stp_RegRev; + description "Region Revision"; } - } - grouping analytics_Monitor-group { + // spanning tree forward delay + leaf fwdTime { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + type stp_FwdTime; + description "STP forward delay"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // spanning tree hello interval + leaf helloTime { + + type stp_HelloTime; + description "STP Hello interval"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // spanning tree max age interval + leaf maxAge { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_MaxAge; + description "STP max age interval"; } - // Collector bucket info - container collectorbucket-items { - list CollectorBucket-list { + // This objects describes an mst instance + container mst-items { + list MstDom-list { key "id"; - // Added containment: Prefix=collectorbucket - // Acquired From Package analytics - uses analytics_CollectorBucket-group; + uses stp_MstDom-group; + description "MST Domain list"; } + description "MST Domain"; } + } - // Rel-def from recordPAtt - container rsrecordPAtt-items { + grouping stp_MstDom-group { + description "MST Domain"; - // Added containment as a singleton: Prefix=rsrecordPAtt - // Acquired From Package analytics - uses analytics_RsRecordPAtt_source-group; - } - } + // MST config state + leaf cfgSt { - grouping analytics_CollectorBucket-group { + type stp_AdminSt; + default "disabled"; + description "Instance config State"; + } - // Collector bucket identifier - // Type is an MO-Defined-Type + // Id leaf id { - description "Flow Collector Bucket Id"; - // Type is an MO-Defined-Type - type analytics_CollBucketId; + type stp_MstId; + description "ID Property has READ-Create access."; } - // HashLo value for this collector bucket - // Type is an MO-Defined-Type - leaf hashLo { - description "Hash Low Value"; + // root type + leaf root { - // Type is an MO-Defined-Type - type analytics_HashT; + type stp_Root; + description "Root Options"; } - // HashHi value for this collector bucket - // Type is an MO-Defined-Type - leaf hashHi { - description "Hash High Value"; + // network diameter + leaf diameter { - // Type is an MO-Defined-Type - type analytics_HashT; + type stp_Diameter; + description "Network Diameter"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // priority + leaf priority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_BridgePriority; + description "Bridge Priority"; } - // Rel-def from collectorAtt - container rscollectorAtt-items { + // VlanRange + leaf vlanRange { - // Abstract containment of rscollectorAtt derived from analytics:CollectorBucket - list RsCollectorAtt-list { - key "tDn"; + type stp_VlanBitmap; + description "Vlan Range Bitmap"; + } - // Added containment: Prefix=rscollectorAtt - // Acquired From Package analytics - uses analytics_RsCollectorAtt_source-group; - } + // Root type for bridge + leaf rootType { + + type stp_RootType; + description "Bridge Root Type"; } - } - grouping analytics_Profile-group { + // Root Mode added for root bridge cli, since the cli accepts hello time and updates forward_delay + // and max_Age based on hello time and diameter entered. If hello time is entered in normal mode for + // spanning tree using "spanning tree vlan ", this should not update the values + // of forward_delay and max_age. To differentiate this property has been added. When is + // used with the root mode cli, values will be updated depending on if this property is set or not + leaf rootMode { - // Collect interval - // Type is an MO-Defined-Type - leaf collectIntvl { - description "Collect Interval in Milliseconds"; + type stp_RootMode; + description "Bridge Root Config mode"; + } + leaf bridgePriority { + config "false"; + type uint16; + description "Bridge ID: Priority with extended system ID"; + } + leaf bridgeAddress { + config "false"; + type address_Mac; + description "Bridge ID: MAC address"; + } + leaf rootPriority { + config "false"; + type uint16; + description "Root ID: Priority"; + } + leaf rootAddress { + config "false"; + type address_Mac; + description "Root ID: MAC address"; + } + leaf rootPortPriority { + config "false"; + type uint16; + description "Root port ID: Priority"; + } + leaf rootPortNumber { + config "false"; + type uint16; + description "Root port ID: Port number"; + } - // Type is an MO-Defined-Type - type analytics_CollIntvl; + // Root port name. The interface name that corresponds to the + // root port. E.g. eth1/1. + leaf rootPort { + config "false"; + + type nw_IfId; + description "Root port name"; + } + leaf rootPathCost { + config "false"; + type uint32; + description "Root path cost"; } - // Source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source L4 Port"; + // This objects describes a vlan range + container vlan-items { + list VlanRange-list { + config "false"; + key "start end"; - // Type is an MO-Defined-Type - type analytics_L4Port; + uses stp_VlanRange-group; + description "Vlan Range list"; + } + description "Vlan Range"; } - // IP packet id shift - // Type is an MO-Defined-Type - leaf ipPktIdShift { - description "IP Packet Id Shift"; + // This object holds STP MST interface operational + // information. + container if-items { + list MstIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type analytics_IpPktIdShift; + uses stp_MstIf-group; + description "STP MST interface operational list"; + } + description "STP MST interface operational"; } + } - // Burst interval shift - // Type is an MO-Defined-Type - leaf burstIntvlShift { - description "Timestamp Shift Value for Burst Interval"; + grouping stp_VlanRange-group { + description "Vlan Range"; - // Type is an MO-Defined-Type - type analytics_BurstIntvlShift; + // Start of the range + leaf start { + config "false"; + + type stp_VlanId; + description "Start"; } - // Collector export packet MTU - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + // End of the range + leaf end { + config "false"; - // Type is an MO-Defined-Type - type analytics_Mtu; + type stp_VlanId; + description "End"; } + } - // Sequence number guess threshold low - // Type is an MO-Defined-Type - leaf seqNumGuessThreshLo { - description "Sequence Number Guess Threshold Low"; + grouping stp_MstIf-group { + description "STP MST interface operational"; - // Type is an MO-Defined-Type - type analytics_ThresholdT; + // Interface ID. + leaf id { + config "false"; + + type nw_IfId; + description "Interface ID"; + } + leaf designatedRootPriority { + config "false"; + type uint16; + description "Designated root priority"; + } + leaf designatedRootAddress { + config "false"; + type address_Mac; + description "Designated root MAC address"; + } + leaf designatedRootCost { + config "false"; + type uint32; + description "Designated root cost"; + } + leaf designatedBridgePriority { + config "false"; + type uint16; + description "Designated bridge priority"; + } + leaf designatedBridgeAddress { + config "false"; + type address_Mac; + description "Designated bridge MAC address"; + } + leaf designatedPortPriority { + config "false"; + type uint16; + description "Designated Port ID: Priority"; + } + leaf designatedPortNumber { + config "false"; + type uint16; + description "Designated Port ID: Port number"; + } + leaf portPriority { + config "false"; + type uint16; + description "Port ID: Priority"; + } + leaf portNumber { + config "false"; + type uint16; + description "Port ID: Port number"; + } + leaf portPathCost { + config "false"; + type uint32; + description "Port path cost"; } - // Sequence number guess threshold high - // Type is an MO-Defined-Type - leaf seqNumGuessThreshHi { - description "Sequence Number Guess Threshold High"; + // Port role + leaf portRole { + config "false"; - // Type is an MO-Defined-Type - type analytics_ThresholdT; + type stp_PortRole; + description "Port role"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port state + leaf portState { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type stp_PortState; + description "Port state"; + } + leaf p2p { + config "false"; + type boolean; + description "Is the oper link-type p2p"; + } + leaf operBpduguard { + config "false"; + type boolean; + description "Is the oper bpduguard"; + } + leaf operBpdufilter { + config "false"; + type boolean; + description "Is the oper bpdufilter"; + } + leaf operPortfast { + config "false"; + type boolean; + description "Is the oper portfast"; + } + leaf operLoopguard { + config "false"; + type boolean; + description "Is the oper loopguard"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // VpcState + leaf vpcState { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_VpcState; + description "vPC State"; } - // Payload length bin - container payloadlenbin-items { - list PayloadLenBin-list { - key "id"; + // Port mode + leaf mode { + config "false"; - // Added containment: Prefix=payloadlenbin - // Acquired From Package analytics - uses analytics_PayloadLenBin-group; + type stp_ModeType; + description "mode"; + } + leaf dispute { + config "false"; + type boolean; + description "Is the port dispute"; + } + leaf peer { + config "false"; + type boolean; + description "Is the port peer type"; + } + leaf bound { + config "false"; + type boolean; + description "Is the port bound"; + } + leaf inconsistent { + config "false"; + type boolean; + description "Is the port inconsistent"; + } + leaf prestd { + config "false"; + type boolean; + description "Is the port mst prestd"; + } + } + + grouping stp_PseudoInfo-group { + description "STP pseudo information"; + leaf start { + type uint16 { + range "1..2"; } + default "1"; + description "start pseudo cfg"; } - // TCP options header length bin - container tcpopthdrlenbin-items { - list TCPOptHdrLenBin-list { + // stp pseudo-information, mst domain designated and root priority + container mstinst-items { + list MstInst-list { key "id"; - // Added containment: Prefix=tcpopthdrlenbin - // Acquired From Package analytics - uses analytics_TCPOptHdrLenBin-group; + uses stp_MstInst-group; + description "MST Domain ID list"; } + description "MST Domain ID"; } - // Receive window size bin - container rcvwindowszbin-items { - list RcvWindowSzBin-list { + // This object holds stp information that is operated at + // vlan level in pseudo information mode + container vlan-items { + list VlanInst-list { key "id"; - // Added containment: Prefix=rcvwindowszbin - // Acquired From Package analytics - uses analytics_RcvWindowSzBin-group; + uses stp_VlanInst-group; + description "Vlan list"; } + description "Vlan"; } } - grouping analytics_PayloadLenBin-group { + grouping stp_MstInst-group { + description "MST Domain ID"; - // Identifier - // Type is an MO-Defined-Type leaf id { - description "Payload Length Bin Id"; - - // Type is an MO-Defined-Type - type analytics_PayloadLenIdT; - } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; - - // Type is an MO-Defined-Type - type analytics_PayloadLenT; + type stp_MstId; + description "Mst Instance Id"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // Pseudo mst designated Priority + leaf designatedPriority { - // Type is an MO-Defined-Type - type analytics_PayloadLenT; + type stp_BridgePriority; + description "Designated Priority"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Pseudo mst root Priority + leaf rootPriority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_BridgePriority; + description "Root Priority"; } } - grouping analytics_TCPOptHdrLenBin-group { + grouping stp_VlanInst-group { + description "Vlan"; - // Identifier - // Type is an MO-Defined-Type + // vlan id leaf id { - description "TCP option header length bin ID"; - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenIdT; + type stp_VlanId; + description "Access Encapsulation"; } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; + // designated bridge priority + leaf designatedBridgePriority { - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenT; + type stp_Priority; + description "Designated Bridge Priority"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // root bridge priority + leaf rootBridgePriority { - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenT; + type stp_Priority; + description "Root Bridge Priority"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Spanning tree protocol + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type stp_Protocol; + description "Spanning tree protocol"; } - } - grouping analytics_RcvWindowSzBin-group { - - // Identifier - // Type is an MO-Defined-Type - leaf id { - description "Receive window size bin ID"; + // spanning tree state: enabled or disabled + leaf adminSt { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzIdT; + type nw_AdminSt; + description "Admin State"; } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; + // spanning tree forward delay + leaf fwdTime { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzT; + type stp_FwdTime; + description "STP forward delay"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // spanning tree hello interval + leaf helloTime { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzT; + type stp_HelloTime; + description "STP Hello interval"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // spanning tree max age interval + leaf maxAge { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_MaxAge; + description "STP max age interval"; } } - grouping analytics_FwdInstTarget-group { + grouping stp_Vlan-group { + description "Vlan"; - // Identifier - // Type is an MO-Defined-Type + // vlan id leaf id { - description "Identifier"; - // Type is an MO-Defined-Type - type analytics_FwdInstTargetId; + type stp_VlanId; + description "Access Encapsulation"; } - // Collector identifier provided by the analytics controller - // Type is an MO-Defined-Type - leaf collectorId { - description "Collector Id"; + // bridge priority + leaf priority { - // Type is an MO-Defined-Type - type analytics_CollectorId; + type stp_Priority; + description "Bridge Priority"; } - // Default filtering policy - // Type is an MO-Defined-Type - leaf DefPolicy { - description "Default Filtering Policy"; + // network diameter of spanning tree + leaf diameter { - // Type is an MO-Defined-Type - type analytics_DefPolicyT; + type stp_Diameter; + description "network diameter"; } - // IPv4 Hit Count - // Type is an MO-Defined-Type - leaf ipv4Hit { - description "IPv4 Hit Count"; + // Spanning tree protocol + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_Protocol; + description "Spanning tree protocol"; } - // IPv6 Hit Count - // Type is an MO-Defined-Type - leaf ipv6Hit { - description "IPv6 Hit Count"; + // Root type for bridge + leaf rootType { - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_RootType; + description "Bridge Root Type"; } - // CE Hit Count - // Type is an MO-Defined-Type - leaf ceHit { - description "CE Hit Count"; + // Root Mode added for root bridge cli, since the cli accepts hello time and updates forward_delay + // and max_Age based on hello time and diameter entered. If hello time is entered in normal mode for + // spanning tree using "spanning tree vlan ", this should not update the values + // of forward_delay and max_age. To differentiate this property has been added. When is + // used with the root mode cli, values will be updated depending on if this property is set or not + leaf rootMode { - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_RootMode; + description "Bridge Root Config mode"; } - - // IPv4 Create Count - // Type is an MO-Defined-Type - leaf ipv4Create { - description "IPv4 Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf bridgePriority { + config "false"; + type uint16; + description "Bridge ID: Priority with extended system ID"; } - - // IPv6 Create Count - // Type is an MO-Defined-Type - leaf ipv6Create { - description "IPv6 Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf bridgeAddress { + config "false"; + type address_Mac; + description "Bridge ID: MAC address"; } - - // CE Create Count - // Type is an MO-Defined-Type - leaf ceCreate { - description "CE Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf rootPriority { + config "false"; + type uint16; + description "Root ID: Priority"; } - leaf exportCount { - type uint32; + leaf rootAddress { + config "false"; + type address_Mac; + description "Root ID: MAC address"; } - leaf skipCount { - type uint32; + leaf rootPortPriority { + config "false"; + type uint16; + description "Root port ID: Priority"; + } + leaf rootPortNumber { + config "false"; + type uint16; + description "Root port ID: Port number"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Root port name. The interface name that corresponds to the + // root port. E.g. eth1/1. + leaf rootPort { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type nw_IfId; + description "Root port name"; + } + leaf rootPathCost { + config "false"; + type uint32; + description "Root path cost"; } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + // spanning tree state: enabled or disabled + leaf adminSt { - // Type is an MO-Defined-Type - type analytics_DirectionT; + type nw_AdminSt; + description "Admin State"; } - // Rel-def from profAtt - container rsprofAtt-items { + // spanning tree forward delay + leaf fwdTime { - // Added containment as a singleton: Prefix=rsprofAtt - // Acquired From Package analytics - uses analytics_RsProfAtt_source-group; + type stp_FwdTime; + description "STP forward delay"; } - // Rel-def from policyAtt - container rspolicyAtt-items { + // spanning tree hello interval + leaf helloTime { - // Added containment as a singleton: Prefix=rspolicyAtt - // Acquired From Package analytics - uses analytics_RsPolicyAtt_source-group; + type stp_HelloTime; + description "STP Hello interval"; } - container dbgStatistics-items { + // spanning tree max age interval + leaf maxAge { - // Added containment as a singleton: Prefix=dbgStatistics - // Acquired From Package analytics - uses analytics_Statistics-group; + type stp_MaxAge; + description "STP max age interval"; } - } - grouping analytics_PhysIfTarget-group { - - // Identifier - // Type is an MO-Defined-Type - leaf id { - description "Interface Id"; + // This object holds STP VLAN interface operational + // information. + container if-items { + list VlanIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_IfId; + uses stp_VlanIf-group; + description "STP VLAN interface operational list"; + } + description "STP VLAN interface operational"; } + } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + grouping stp_VlanIf-group { + description "STP VLAN interface operational"; + + // Interface ID. + leaf id { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type analytics_OperSt; + type nw_IfId; + description "Interface ID"; + } + leaf designatedRootPriority { + config "false"; + type uint16; + description "Designated root priority"; + } + leaf designatedRootAddress { + config "false"; + type address_Mac; + description "Designated root MAC address"; + } + leaf designatedRootCost { + config "false"; + type uint32; + description "Designated root cost"; + } + leaf designatedBridgePriority { + config "false"; + type uint16; + description "Designated bridge priority"; + } + leaf designatedBridgeAddress { + config "false"; + type address_Mac; + description "Designated bridge MAC address"; + } + leaf designatedPortPriority { + config "false"; + type uint16; + description "Designated Port ID: Priority"; + } + leaf designatedPortNumber { + config "false"; + type uint16; + description "Designated Port ID: Port number"; + } + leaf portPriority { + config "false"; + type uint16; + description "Port ID: Priority"; + } + leaf portNumber { + config "false"; + type uint16; + description "Port ID: Port number"; + } + leaf portPathCost { + config "false"; + type uint32; + description "Port path cost"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Port role + leaf portRole { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type stp_PortRole; + description "Port role"; } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + // Port state + leaf portState { + config "false"; - // Type is an MO-Defined-Type - type analytics_DirectionT; + type stp_PortState; + description "Port state"; } - } - - grouping analytics_BDTarget-group { - leaf id { - type string; + leaf p2p { + config "false"; + type boolean; + description "Is the oper link-type p2p"; } - leaf ctxEncap { - type string; + leaf operBpduguard { + config "false"; + type boolean; + description "Is the oper bpduguard"; + } + leaf operBpdufilter { + config "false"; + type boolean; + description "Is the oper bpdufilter"; + } + leaf operPortfast { + config "false"; + type boolean; + description "Is the oper portfast"; + } + leaf operLoopguard { + config "false"; + type boolean; + description "Is the oper loopguard"; } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + // VpcState + leaf vpcState { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type analytics_OperSt; + type stp_VpcState; + description "vPC State"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Port mode + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type stp_ModeType; + description "mode"; + } + leaf dispute { + config "false"; + type boolean; + description "Is the port dispute"; + } + leaf peer { + config "false"; + type boolean; + description "Is the port peer type"; + } + leaf bound { + config "false"; + type boolean; + description "Is the port bound"; + } + leaf inconsistent { + config "false"; + type boolean; + description "Is the port inconsistent"; } + leaf prestd { + config "false"; + type boolean; + description "Is the port mst prestd"; + } + } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + grouping aggregate_BdTable-group { + description "Bd Table"; - // Type is an MO-Defined-Type - type analytics_DirectionT; + // Aggregate BdEntry + container vlan-items { + list BdEntry-list { + key "vlan"; + + uses aggregate_BdEntry-group; + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network list"; + } + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network"; } } - grouping analytics_Policy-group { + grouping aggregate_BdEntry-group { + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network"; + leaf vlan { + type string; + description "Identity of the Vlan in the bridged domain"; + } + leaf bd { + type uint32; + description "Access Encapsulation"; + } + leaf vnid { + type string; + description "Identity of the Vnid in the bridged domain"; + } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf replicationMode { - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_ReplicationModeType; + description "The mode of replication for BUM data packets"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ingressRepProtocol { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type aggregate_IngressRepProtocolType; + description "The protocol type used to get the list of replication nodes"; + } + leaf gipo { + type address_Ip; + description "Multicast Address for Replication"; } - // Match ACL - container acl-items { - list MatchAcl-list { - key "name"; + leaf suppressArp { - // Added containment: Prefix=acl - // Acquired From Package analytics - uses analytics_MatchAcl-group; - } + type aggregate_BooleanFlag; + description "Flag to enable or disable the ARP suppression"; } - } - grouping analytics_MatchAcl-group { - leaf aclName { - type string; + leaf resourceStatus { + + type aggregate_ResourceStatus; + description "Backend Resource Status"; } - // Filter type - // Type is an MO-Defined-Type - leaf fltType { - description "ACL Filter Type"; + leaf isL3 { - // Type is an MO-Defined-Type - type analytics_FltType; + type aggregate_BooleanFlag; + description "Is L3 Vlan"; + } + leaf description { + type string; + description "description"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container floodList-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_FloodList-group; + description "Bd Member Entry"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Domain (vrf) information + // + // + // + // + // + // + // + // + // + // List of route types + container af-items { + list DomainAf-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_DomainAf-group; + description "Domain Address Family list"; } + description "Domain Address Family"; } - } - grouping analytics_HwTelemetry-group { + container rtaggregateVlanMemberAtt-items { - container fte-items { + list RtAggregateVlanMemberAtt-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=fte - // Acquired From Package fte - uses fte_Fte-group; + uses aggregate_RtAggregateVlanMemberAtt_target-group; + description "Vlan Membership Attachment list"; + } + description "Vlan Membership Attachment"; } + } - container inbandtelemetry-items { + grouping aggregate_FloodList-group { + description "Bd Member Entry"; - // Added containment as a singleton: Prefix=inbandtelemetry - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Int-group; + container localFloodList-items { + + uses aggregate_LocalFloodList-group; + description "List of local ports configured under the bridged domain"; } - } - grouping fte_Fte-group { - leaf enable { - type boolean; + container remoteFloodList-items { + + uses aggregate_RemoteFloodList-group; + description "VTEP IP address list of the remote VTEPs within the VNI"; } } - grouping inbandTelemetry_Int-group { - - // Holds int instance information - container inst-items { - list Inst-list { - key "mode"; + grouping aggregate_LocalFloodList-group { + description "List of local ports configured under the bridged domain"; + container intf-items { + list LocalFloodListEntry-list { + key "intf"; - // Added containment: Prefix=inst - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Inst-group; + uses aggregate_LocalFloodListEntry-group; + description "Interface info of LocalFloodListEntry list"; } + description "Interface info of LocalFloodListEntry"; } } - grouping inbandTelemetry_Inst-group { + grouping aggregate_LocalFloodListEntry-group { + description "Interface info of LocalFloodListEntry"; - // int mode - // Type is an MO-Defined-Type - leaf mode { - description "Mode Select"; + leaf intf { - // Type is an MO-Defined-Type - type inbandTelemetry_ModeT; + type nw_IfId; + description "Interface"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping aggregate_RemoteFloodList-group { + description "VTEP IP address list of the remote VTEPs within the VNI"; + container vtep-items { + list RemoteFloodListEntry-list { + key "vtep"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses aggregate_RemoteFloodListEntry-group; + description "VTEP IP address in the list of the remote VTEPs within the VNI list"; } + description "VTEP IP address in the list of the remote VTEPs within the VNI"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping aggregate_RemoteFloodListEntry-group { + description "VTEP IP address in the list of the remote VTEPs within the VNI"; + leaf vtep { + type address_Ip; + description "VTEP IP address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rsvtepAtt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + list RsVtepAtt-list { + config "false"; + key "tDn"; + + uses aggregate_RsVtepAtt_source-group; + description "Link To Tunnel Intf Entry list"; + } + description "Link To Tunnel Intf Entry"; } + } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + grouping aggregate_DomainAf-group { + description "Domain Address Family"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + leaf type { + + type aggregate_AfT; + description "Type"; + } + leaf vrf { + type string; + description "VRF"; + } + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; } - // INT Watchlist Acl - container watchlist-items { - list WatchlistAcl-list { - key "name"; + // Route target policy + container rttp-items { + list RttP-list { + key "type"; - // Added containment: Prefix=watchlist - // Acquired From Package inbandTelemetry - uses inbandTelemetry_WatchlistAcl-group; + uses aggregate_RttP-group; + description "Route Target Policy list"; } + description "Route Target Policy"; } - // INT Droplist Acl - container droplist-items { - list DroplistAcl-list { - key "name"; + // + // + // + // + // + // + // + // + // + // + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list AfCtrl-list { + key "type"; - // Added containment: Prefix=droplist - // Acquired From Package inbandTelemetry - uses inbandTelemetry_DroplistAcl-group; + uses aggregate_AfCtrl-group; + description "Virtual Private Network Control Policy list"; } + description "Virtual Private Network Control Policy"; } + } - // int Record - container recordp-items { - list RecordP-list { - key "name"; + grouping aggregate_RttP-group { + description "Route Target Policy"; - // Added containment: Prefix=recordp - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RecordP-group; - } + // Type + leaf type { + + type aggregate_RttPType; + description "Type"; } - // int Collector - container collector-items { - list Collector-list { - key "name"; + // isL3 VRF + leaf isL3 { - // Added containment: Prefix=collector - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Collector-group; - } + type aggregate_BooleanFlag; + description "IsL3"; } - // INT Monitor one monitor can be attached to n records - container monitor-items { - list Monitor-list { - config "false"; - key "name"; + // List of route types + container ent-items { + list RttEntry-list { + key "rtt"; - // Added containment: Prefix=monitor - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Monitor-group; + uses aggregate_RttEntry-group; + description "Route Target Entry list"; } + description "Route Target Entry"; } + } - // Forwarding instance based target - container fwdinst-items { - list FwdInstTarget-list { - config "false"; - key "id"; - - // Added containment: Prefix=fwdinst - // Acquired From Package inbandTelemetry - uses inbandTelemetry_FwdInstTarget-group; - } + grouping aggregate_RttEntry-group { + description "Route Target Entry"; + leaf rtt { + type mtx_array_community; + description "Route Target"; } } - grouping inbandTelemetry_WatchlistAcl-group { + grouping aggregate_AfCtrl-group { + description "Virtual Private Network Control Policy"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_AfT; + description "Type"; } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + // Route target policy + container rttp-items { + list RttP-list { + key "type"; - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_RttP-group; + description "Route Target Policy list"; + } + description "Route Target Policy"; } + } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + grouping aggregate_GlobalConfTable-group { + description "Global Configuration Table"; - // Type is an MO-Defined-Type - type acl_ACEStats; + leaf vxLanMC { + + type aggregate_BooleanFlag; + description "VxLan Multicast Flag"; } - leaf configStatus { - config "false"; - type uint32; + leaf agMac { + type address_Mac; + description "Anycast Gateway mac"; } + } - // INT Watchlist Ace - container ace-items { - list WatchlistAce-list { - key "seqNum"; + grouping aggregate_IntfTable-group { + description "Interface Table"; + container intf-items { + list IntfEntry-list { + key "name"; - // Added containment: Prefix=ace - // Acquired From Package inbandTelemetry - uses inbandTelemetry_WatchlistAce-group; + uses aggregate_IntfEntry-group; + description "Interface Entry list"; + } + description "Interface Entry"; + } + container svi-items { + list Svi-list { + key "intf"; + + uses aggregate_Svi-group; + description "SVI Interface Entry list"; } + description "SVI Interface Entry"; } } - grouping inbandTelemetry_WatchlistAce-group { + grouping aggregate_IntfEntry-group { + description "Interface Entry"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Name of the interface entry"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf type { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aggregate_IntfType; + description "Indicates the type of the interface"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf adminState { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aggregate_AdminState; + description "Indicates the adminstration state of interface whether interface is up or down"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf operState { - // Type is an MO-Defined-Type - type acl_ActionType; + type aggregate_OperState; + description "Indicates the operational state of the interface whether up or down"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + leaf trunkVlans { - // Type is an MO-Defined-Type - type acl_Operator; - } - - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfTrunkVlans; + description "List of vlans allowed on this interface"; } - - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf isControllerOwnedIntf { + config "false"; + type boolean; + description "Indicates whether interface is assigned to the controller"; } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + leaf ownerControllersIdList { + config "false"; - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_ControllerIdBitmap; + description "List of the controller owning this interface"; } - - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; - - // Type is an MO-Defined-Type - type acl_Operator; + leaf untaggedVlan { + type string; + description "port-acccess-VLAN or native-VLAN for untagged traffic"; + } + leaf untaggedVlanCtrlUse { + type boolean; + description "untagged VLAN is used by Controller"; + } + leaf untaggedVlanExplicitMap { + type boolean; + description "untagged VLAN is also explicitly mapped by Controller"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + container vlanMemberTable-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_VlanMemberTable-group; + description "Vlan Member Table"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + container rtvpcIntfEntryAtt-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_RtVpcIntfEntryAtt_target-group; + description "Vpc Interface Entry Attachment"; } + } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + grouping aggregate_VlanMemberTable-group { + description "Vlan Member Table"; + container member-items { + list VlanMemberEntry-list { + key "vlan"; - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; + uses aggregate_VlanMemberEntry-group; + description "Vlan Member Entry list"; } + description "Vlan Member Entry"; } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + container rsvlanMemberAtt-items { - // Type is an MO-Defined-Type - type acl_Operator; + list RsVlanMemberAtt-list { + config "false"; + key "tDn"; + + uses aggregate_RsVlanMemberAtt_source-group; + description "Vlan Membership Attachment list"; + } + description "Vlan Membership Attachment"; } + } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + grouping aggregate_VlanMemberEntry-group { + description "Vlan Member Entry"; + leaf vlan { + type string; + description "Vlan id of the vlan member entry"; + } + } - // Type is an MO-Defined-Type - type acl_PktLen; + grouping aggregate_Svi-group { + description "SVI Interface Entry"; + leaf intf { + type string; + description "Interface id of the switch virtual interface"; } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + leaf adminState { - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; - } - leaf rev { - type boolean; + type aggregate_AdminState; + description "Admin state of the interface whether up or down"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + leaf operState { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; - } - leaf packets { - config "false"; - type uint64; + type aggregate_OperState; + description "Operational state of the interface whether up or down"; } - leaf fragment { - type boolean; + leaf ip { + type address_Ip; + description "IP addr address assigned to this interface"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf ownerCtrlrsIdList { + config "false"; - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aggregate_ControllerIdBitmap; + description "List of the controller Ids owning this interface"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf mtu { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type aggregate_MTU; + description "Size of the MTU this interface is able to transmit"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + leaf bw { - // Type is an MO-Defined-Type - type acl_VniType; + type aggregate_Bw; + description "Bandwidth Of SVI"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + leaf fwdMode { - // Type is an MO-Defined-Type - type acl_VlanType; + type aggregate_fabFwdMode; + description "Fabric Forwarding Mode"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf vrf { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type l3_VrfName; + description "VRF context"; } + } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; - - // Type is an MO-Defined-Type - type acl_Name; - } + grouping aggregate_MacTable-group { + description "MAC Table"; - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + container dynamic-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_DynamicMac-group; + description "Dynamic MAC Table"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + container static-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_StaticMac-group; + description "Static MAC Table"; } + } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + grouping aggregate_DynamicMac-group { + description "Dynamic MAC Table"; - // Type is an MO-Defined-Type - type acl_Name; - } + // Aggregate MacEntry + container mac-items { + list MacEntry-list { + key "mac vlan"; - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + uses aggregate_MacEntry-group; + description "MAC Entry list"; + } + description "MAC Entry"; + } + } - // Type is an MO-Defined-Type - type acl_Name; + grouping aggregate_MacEntry-group { + description "MAC Entry"; + leaf mac { + type address_Mac; + description "MAC"; } - leaf redirect { + leaf vlan { type string; + description "Vlan"; } - // Filter type - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf fltType { - description "Acl Filter Type"; + leaf intf { - // Type is an MO-Defined-Type - type inbandTelemetry_FltType; + type nw_IfId; + description "Interface"; + } + leaf tunnelDstIp { + type address_Ip; + description "TunnelDstIp"; + } + leaf isIntf { + type boolean; + description "isIf"; } - // protocol to match - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf type { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_MacType; + description "MacType"; + } + leaf pushedMacToBackEnd { + type boolean; + default "false"; + description "pushedMacToBackEnd"; } - // Protocol Mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + container rtmac-items { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + uses aggregate_RtMac_target-group; + description "Tunnel Mac Entry"; } + } - // source prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + grouping aggregate_StaticMac-group { + description "Static MAC Table"; - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + // Aggregate MacEntry + container mac-items { + list MacEntry-list { + key "mac vlan"; + + uses aggregate_MacEntry-group; + description "MAC Entry list"; + } + description "MAC Entry"; } + } - // source prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + grouping aggregate_SystemTable-group { + description "System or switch level properties for SDN controller interface."; - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + leaf stTime { + + type mo_TStamp; + description "System Start Time"; + } + leaf mgmtIp { + config "false"; + type address_Ip; + description "Management IP address of the switch"; + } + leaf switchType { + type string; + description "Switch Type"; } - // source prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + leaf purgeDBRequest { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type mo_TStamp; + description "Client DB Purge Request"; + } + leaf isControllerConfigured { + type boolean; + description "IsControllerConfigured"; + } + leaf nxdbEnabled { + config "false"; + type boolean; + description "nxdbEnabled"; } - // destination prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + container controllerTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + uses aggregate_ControllerTable-group; + description "Controller Table"; } - // destination prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + container cpuTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + uses aggregate_CPUTable-group; + description "CPU Table"; } - // destination prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + container moduleTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + uses aggregate_ModuleTable-group; } - } - - grouping inbandTelemetry_DroplistAcl-group { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container vxlanTable-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_VxlanTable-group; + description "Vxlan Table"; } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + container shadowVxlanTable-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_ShadowVxlanTable-group; + description "Shadow Vxlan Table"; } + } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + grouping aggregate_ControllerTable-group { + description "Controller Table"; + container controller-items { + list ControllerEntry-list { + key "id"; - // Type is an MO-Defined-Type - type acl_ACEStats; + uses aggregate_ControllerEntry-group; + description "Configuration properties of the controller instance controlling this switch list"; + } + description "Configuration properties of the controller instance controlling this switch"; } - leaf configStatus { - config "false"; + } + + grouping aggregate_ControllerEntry-group { + description "Configuration properties of the controller instance controlling this switch"; + leaf id { type uint32; + description "Unique identity of the controller instance"; + } + leaf readRole { + type string; + description "Name of the read role for get APIs"; + } + leaf writeRole { + type string; + description "Name of the write role for get and set APIs"; + } + leaf controllerType { + type string; + description "Type of the vxlan overlay this controller is controlling"; } - // INT Droplist ACE - container ace-items { - list DroplistAce-list { - key "seqNum"; + leaf configuredVlans { + config "false"; - // Added containment: Prefix=ace - // Acquired From Package inbandTelemetry - uses inbandTelemetry_DroplistAce-group; - } + type l2_VlanBitmap; + description "Vlans that are assigned under this controller"; } - } - - grouping inbandTelemetry_DroplistAce-group { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf dedicatedVlans { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type l2_VlanBitmap; + description "Dedicated Vlans"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf publishedVlans { + config "false"; - // Type is an MO-Defined-Type - type acl_RemarkStr; + type l2_VlanBitmap; + description "Vlans that are published to the controller after VPC consistency checks are completed"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf vlanResourceStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aggregate_ResourceStatus; + description "Indicate that at least one Vlan is assigned to the controller"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf intfResourceStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_ActionType; + type aggregate_ResourceStatus; + description "Indicate that at least one interface is assigned to the controller"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + leaf isSystemReadyForController { - // Type is an MO-Defined-Type - type acl_Operator; + type aggregate_ConfigStatus; + description "Indicate that switch is now ready to acccept the NXAPI requests from the controller"; } - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + leaf type { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_CtrlrType; + description "Type of the Vxlan the controller is controlling"; + } + leaf vrfPrefix { + type string; + description "The string prefix that will be prefixed to all VRFs created by this controller"; + } + leaf numVrf { + type uint32; + description "Maximum number of VRFs that this controller can create on the switch"; + } + leaf publishVrf { + type boolean; + description "Flag indicate if vrfs are tobe published to the controller not not"; + } + leaf publishNumVrf { + type uint32; + description "Numumber of vrfs published to controller after VPC consistency checks are completed"; } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; + container controllerAssignedIntfTable-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_ControllerAssignedIntfTable-group; + description "Controller Assigned Interface Table"; } + } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + grouping aggregate_ControllerAssignedIntfTable-group { + description "Controller Assigned Interface Table"; + container controllerAssignedIntfEntry-items { + list ControllerAssignedIntfEntry-list { + key "intfName"; - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_ControllerAssignedIntfEntry-group; + description "Properties of an interface assigned to the controller list"; + } + description "Properties of an interface assigned to the controller"; } + } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + grouping aggregate_ControllerAssignedIntfEntry-group { + description "Properties of an interface assigned to the controller"; - // Type is an MO-Defined-Type - type acl_Operator; + leaf intfName { + + type nw_IfId; + description "IntfName"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + // Port channel id + leaf pcId { - // Type is an MO-Defined-Type - type acl_PortNumber; + type pc_PcId; + description "Identity of the Port channel"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf type { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfType; + description "Type of the interface"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf mode { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfAssignMode; + description "Suggest if interface is dedicated to controller or shared between CLI"; } - leaf logging { + leaf published { type boolean; - default "true"; + description "Indicates whether interface is published to the controller or not"; } - leaf dscp { - type uint8 { - range "0..63"; + } + + grouping aggregate_CPUTable-group { + description "CPU Table"; + container cpuEntry-items { + list CPUEntry-list { + key "type"; + + uses aggregate_CPUEntry-group; + description "CPU Entry list"; } + description "CPU Entry"; } + } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + grouping aggregate_CPUEntry-group { + description "CPU Entry"; - // Type is an MO-Defined-Type - type acl_Operator; + leaf type { + + type aggregate_CpuType; + description "CPU Type"; } + } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + grouping aggregate_ModuleTable-group { + container moduleEntry-items { + list ModuleEntry-list { + key "type"; - // Type is an MO-Defined-Type - type acl_PktLen; + uses aggregate_ModuleEntry-group; + } } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aggregate_ModuleEntry-group { - // Type is an MO-Defined-Type - type acl_PktLen; + leaf type { + + type aggregate_ModuleType; + description "Type"; } - leaf urg { - type boolean; + } + + grouping aggregate_VxlanTable-group { + description "Vxlan Table"; + container intf-items { + list VxlanInterfaceEntry-list { + key "name"; + + uses aggregate_VxlanInterfaceEntry-group; + description "Vxlan interface entry represents the properties of the VTEP list"; + } + description "Vxlan interface entry represents the properties of the VTEP"; } - leaf ack { - type boolean; + } + + grouping aggregate_VxlanInterfaceEntry-group { + description "Vxlan interface entry represents the properties of the VTEP"; + leaf name { + type string; + description "Name"; } - leaf psh { - type boolean; + + leaf myTepStatus { + config "false"; + + type aggregate_OperState; + description "MyTepStatus"; } - leaf rst { - type boolean; + + leaf hostReachability { + config "false"; + + type aggregate_HostReachabilityMode; + description "HostReachability"; } - leaf syn { - type boolean; + leaf controllerId { + type uint32; + description "Controller ID"; } - leaf fin { - type boolean; + + leaf configSource { + config "false"; + + type aggregate_ConfigSourceType; + description "configSource"; } - leaf est { - type boolean; + leaf primaryTunnelIp { + config "false"; + type address_Ip; + description "PrimaryTunnelIp"; } - leaf rev { - type boolean; + leaf secondaryTunnelIp { + config "false"; + type address_Ip; + description "SecondaryTunnelIp"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + container localBfd-items { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; + uses aggregate_LocalBfd-group; + description "Configuration properties of the local BFD endpoint of VTEP"; } - leaf packets { + } + + grouping aggregate_LocalBfd-group { + description "Configuration properties of the local BFD endpoint of VTEP"; + leaf mac { config "false"; - type uint64; + type address_Mac; + description "BFD DMAC"; } - leaf fragment { - type boolean; + leaf ip { + config "false"; + type address_Ip; + description "BFD IP"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf minTxIntvl { + config "false"; - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aggregate_MinTxIntvl; + description "Desired Minimum TX Interval"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf minRxIntvl { + config "false"; - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type aggregate_MinRxIntvl; + description "Desired Minimum RX Interval"; } + } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + grouping aggregate_ShadowVxlanTable-group { + description "Shadow Vxlan Table"; + container intf-items { + list ShadowVxlanInterfaceEntry-list { + key "name"; - // Type is an MO-Defined-Type - type acl_VniType; + uses aggregate_ShadowVxlanInterfaceEntry-group; + description "Vxlan Interface Entry list"; + } + description "Vxlan Interface Entry"; } + } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; - - // Type is an MO-Defined-Type - type acl_VlanType; + grouping aggregate_ShadowVxlanInterfaceEntry-group { + description "Vxlan Interface Entry"; + leaf name { + type string; + description "Name"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf myTepStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type aggregate_OperState; + description "MyTepStatus"; } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + leaf hostReachability { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aggregate_HostReachabilityMode; + description "HostReachability"; + } + leaf controllerId { + type uint32; + description "Controller ID"; } - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + leaf configSource { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aggregate_ConfigSourceType; + description "configSource"; + } + leaf primaryTunnelIp { + config "false"; + type address_Ip; + description "PrimaryTunnelIp"; + } + leaf secondaryTunnelIp { + config "false"; + type address_Ip; + description "SecondaryTunnelIp"; } + } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + grouping aggregate_TunnelIntfTable-group { + description "Tunnel Interface Table"; + container intf-items { + list TunnelIntfEntry-list { + key "destIp"; - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_TunnelIntfEntry-group; + description "Properties of the remote VTEP tunnel endpoint list"; + } + description "Properties of the remote VTEP tunnel endpoint"; } + } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; - - // Type is an MO-Defined-Type - type acl_Name; + grouping aggregate_TunnelIntfEntry-group { + description "Properties of the remote VTEP tunnel endpoint"; + leaf description { + type string; + description "description"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf ifId { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type nw_IfId; + description "Unique tunnel interface Id"; } - // Filter type - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf fltType { - description "Acl Filter Type"; + leaf type { - // Type is an MO-Defined-Type - type inbandTelemetry_FltType; + type aggregate_TunnelType; + description "Indicate if the tunnel is of IPv4 or IPv6 type"; + } + leaf srcIp { + type address_Ip; + description "Source IP address of the tunnel interface"; + } + leaf destIp { + type address_Ip; + description "Destination IP address of the tunnel interface"; } - // protocol to match - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf mtu { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_MTU; + description "Size of MTU on the tunnel interface"; } - // Protocol Mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + leaf state { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_OperState; + description "Operational state of the tunnel interface"; } - // source prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + leaf vrf { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type l3_VrfName; + description "The name of the VRF that is supported by this tunnel"; } - // source prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + leaf ipVnidBinding { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type aggregate_BooleanFlag; + description "Indicates if the L3 VNID binding is established or not"; + } + leaf isTunnelCreated { + config "false"; + type boolean; + default "false"; + description "Indicates if the tunnel is created and initialized for transport of the VTEP traffic"; + } + leaf isTunnelCreatedByController { + config "false"; + type boolean; + default "true"; + description "Indicates if the tunnel is created by the controller"; + } + leaf noOfMacsSeenBeforeTunnelCreatedbyController { + config "false"; + type uint32; + description "The number of MACs that are learned locally before tunnel interface is created by the controller"; } - // source prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + leaf epType { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type aggregate_EpType; + description "The type of the tunnel endpoint"; } - // destination prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + container tunMacTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + uses aggregate_TunMacTable-group; + description "Tunnel Mac Table"; } - // destination prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + container vnidTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + uses aggregate_VnidTable-group; + description "Vnid Table"; } - // destination prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + container remoteBfd-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + uses aggregate_RemoteBfd-group; + description "Managed object for configuration properties of the remote BFD endpoint of VTEP"; } - } - grouping inbandTelemetry_RecordP-group { + container rtaggregateVtepAtt-items { - // Collect parameters for the int record - // Type is an MO-Defined-Type - leaf collect0 { - description "Collect Params Set0"; + list RtAggregateVtepAtt-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type inbandTelemetry_CollectParams0; + uses aggregate_RtAggregateVtepAtt_target-group; + description "Link To Tunnel Intf Entry list"; + } + description "Link To Tunnel Intf Entry"; } + } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping aggregate_TunMacTable-group { + description "Tunnel Mac Table"; - // Type is an MO-Defined-Type - type naming_Descr; - } + container rsmac-items { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + list RsMac-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_RsMac_source-group; + description "Tunnel Mac Entry list"; } + description "Tunnel Mac Entry"; } } - grouping inbandTelemetry_Collector-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping aggregate_VnidTable-group { + description "Vnid Table"; + container vnid-items { + list VnidEntry-list { + key "vnid"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_VnidEntry-group; + description "A specific vnid Entry in the Vnid table list"; } + description "A specific vnid Entry in the Vnid table"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping aggregate_VnidEntry-group { + description "A specific vnid Entry in the Vnid table"; + leaf vnid { + type string; + description "Vnid"; } - // Remote node VRF - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + leaf groupAddr { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + type aggregate_GroupAddr; + description "GroupAddr"; } + } - // Remote node destination port - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + grouping aggregate_RemoteBfd-group { + description "Managed object for configuration properties of the remote BFD endpoint of VTEP"; - // Type is an MO-Defined-Type - type l4_Port; + leaf bfdStatus { + + type aggregate_BfdStatus; + description "Vnid"; + } + leaf mac { + type address_Mac; + description "BFD DMAC"; + } + leaf ip { + type address_Ip; + description "BFD IP"; } - // IP dscp value - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + leaf minTxIntvl { - // Type is an MO-Defined-Type - type qosp_DscpCP; + type aggregate_MinTxIntvl; + description "Desired Minimum TX Interval"; } - // Source interface - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + leaf minRxIntvl { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf srcAddr { - type address_Ip; + type aggregate_MinRxIntvl; + description "Desired Minimum RX Interval"; } } - grouping inbandTelemetry_Monitor-group { + grouping aggregate_VlanTable-group { + description "Vlan Table"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Aggregate VlanEntry + container vlan-items { + list VlanEntry-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_VlanEntry-group; + description "Vlan Entry list"; + } + description "Vlan Entry"; } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; + grouping aggregate_VlanEntry-group { + description "Vlan Entry"; + leaf id { + type string; description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } } - // Rel-def from recordPAtt - container rsrecordPAtt-items { + leaf adminState { - // Added containment as a singleton: Prefix=rsrecordPAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsRecordPAtt_source-group; + type aggregate_AdminState; + description "AdminState"; } + } - // Rel-def from collectorAtt - container rscollectorAtt-items { - - // Abstract containment of rscollectorAtt derived from inbandTelemetry:Monitor - list RsCollectorAtt-list { - config "false"; - key "tDn"; + grouping aggregate_VpcDomTable-group { + description "Vpc Domain Table"; + container vpcDom-items { + list VpcDomEntry-list { + key "domainId"; - // Added containment: Prefix=rscollectorAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsCollectorAtt_source-group; + uses aggregate_VpcDomEntry-group; + description "List of properties of a specific VPC domain entry list"; } + description "List of properties of a specific VPC domain entry"; } + } - // Rel-def from watchlistAtt - container rswatchlistAtt-items { + grouping aggregate_VpcDomEntry-group { + description "List of properties of a specific VPC domain entry"; - // Added containment as a singleton: Prefix=rswatchlistAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsWatchlistAtt_source-group; + leaf domainId { + + type vpc_DomId; + description "The unique VPC domain Id"; + } + leaf keepaliveDestIp { + type address_Ip; + description "The destination IP address of the keep alive link between VPC pair"; + } + leaf keepaliveSrcIp { + type address_Ip; + description "The source IP address of the keep alive link between VPC pair"; + } + leaf virtualIp { + type address_Ip; + description "The IP address that represent the VPC tunnel endpoint"; + } + leaf peerIp { + type address_Ip; + description "Peer IP"; } - // Rel-def from droplistAtt - container rsdroplistAtt-items { + leaf keepaliveSts { + config "false"; - // Added containment as a singleton: Prefix=rsdroplistAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsDroplistAtt_source-group; + type aggregate_VpcKeepaliveStatus; + description "Keep alive status between the VPC pair switches"; } - } - - grouping inbandTelemetry_FwdInstTarget-group { - // Identifier - // Type is an MO-Defined-Type - leaf id { + leaf peerLinkSts { config "false"; - description "Identifier"; - // Type is an MO-Defined-Type - type inbandTelemetry_FwdInstTargetId; + type aggregate_VpcPeerLinkStatus; + description "Peer Link Status between the VPC pair switches"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf vpcRole { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type vpc_Role; + description "Indicates if the switch is primary or secondary in the VPC pair"; + } + leaf peerGW { + type boolean; + description "Gateway where the non-standard layer 2 packets are forwarded in a vPC environment"; + } + leaf dualActive { + type boolean; + description "Indication that both the peer link and the peer keep alive link are disconnected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf peerLinkIf { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Port channel interface of the peer link"; } - // Rel-def from monitorAtt - container rsmonitorAtt-items { + // VPCTAB + container vpcTable-items { - // Abstract containment of rsmonitorAtt derived from inbandTelemetry:FwdInstTarget - list RsMonitorAtt-list { - config "false"; - key "tDn"; + uses aggregate_VpcTable-group; + description "Vpc Table"; + } + } - // Added containment: Prefix=rsmonitorAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsMonitorAtt_source-group; + grouping aggregate_VpcTable-group { + description "Vpc Table"; + container vpc-items { + list VpcEntry-list { + key "vpcnum"; + + uses aggregate_VpcEntry-group; + description "vpc Entry list"; } + description "vpc Entry"; } } - grouping copp_Entity-group { - leaf error { - config "false"; - type uint64; - default "0"; + grouping aggregate_VpcEntry-group { + description "vpc Entry"; + + leaf vpcnum { + + type vpc_Id; + description "Unique number identifying this Vpc pair"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ifId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_IfId; + description "VPC port channel number"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf operState { - // Type is an MO-Defined-Type - type nw_AdminSt; + type aggregate_VpcOperStatus; + description "Operationsl status of the VPC port channel"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf consCheckSts { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type vpc_CompatSt; + description "Indication of whether consistency checks have passed or failed"; } - // Holder for copp class policy, each class describes a - // set of rules describing the policer rates - container classp-items { - list Class-list { - key "cName"; + leaf consCheckReason { + config "false"; - // Added containment: Prefix=classp - // Acquired From Package copp - uses copp_Class-group; - } + type vpc_CompatQual; + description "Provides a reason why consistency check have failed"; } - // Holder for copp class policy, each class describes a - // set of rules describing the policer rates - container policy-items { - list Policy-list { - key "name"; + container vpcintf-items { - // Added containment: Prefix=policy - // Acquired From Package copp - uses copp_Policy-group; - } + uses aggregate_VpcIntfEntry-group; + description "VPC Interface Entry"; } + } - // Model for COPP profile - container profile-items { + grouping aggregate_VpcIntfEntry-group { + description "VPC Interface Entry"; - // Added containment as a singleton: Prefix=profile - // Acquired From Package copp - uses copp_Profile-group; + container rsvpcIntfEntryAtt-items { + + uses aggregate_RsVpcIntfEntryAtt_source-group; + description "Vpc Interface Entry Attachment"; } + } - // Model for Copp Copy profile - container name-items { - list CopyProfile-list { - key "affixName"; + grouping aggregate_VrfTable-group { + container vrf-items { + list VrfEntry-list { + key "name"; - // Added containment: Prefix=name - // Acquired From Package copp - uses copp_CopyProfile-group; + uses aggregate_VrfEntry-group; } } + } - // Scale factor - container scale-items { - list Scale-list { - key "module"; + grouping aggregate_VrfEntry-group { - // Added containment: Prefix=scale - // Acquired From Package copp - uses copp_Scale-group; - } + leaf name { + + type l3_VrfName; + description "Name of the VRF instance"; } - // Service-Policy - container service-items { - list Service-list { - key "name"; + leaf genName { - // Added containment: Prefix=service - // Acquired From Package copp - uses copp_Service-group; - } + type l3_VrfName; + description "Generic name of the VRF instance"; } - } - grouping copp_Class-group { - leaf cName { + leaf ctrlrId { + + type aggregate_ControllerID; + description "Id of the controller this VRF is assigned to"; + } + leaf vnid { type string; + description "Virtual network id this VRF is associated with"; } - - // Match any/all - // Type is an MO-Defined-Type - leaf matchOption { - description "Match Option"; - - // Type is an MO-Defined-Type - type copp_MatchOption; + leaf rd { + type mtx_array_community; + description "A unique number prepended to route in VRF to distinguish its belonging to a particular VRF"; } - leaf flag { + leaf genExtraRt { type boolean; + description "A flag to indicate whether to generate extra route target for VRF"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf templateName { + type string; + description "Name of the config template which is executed upon creation of this VRF"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf templateStatus { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_ConfTmplStatus; + description "Indicates the execution status of the config template"; } - - // Allowed rate, committed rate at which the packets - // are allowed into the system - // Inherited From policer:Class - // Type is an MO-Defined-Type - leaf rate { + leaf shdwTemplateName { config "false"; - description "Rate"; - - // Type is an MO-Defined-Type - type policer_Rate; + type string; + description "Name of the shadow template name the config template is associated"; } - - // Committed burst size, number of packets to absorb during - // a burst - // Inherited From policer:Class - // Type is an MO-Defined-Type - leaf burst { + leaf shdwVrfGenName { config "false"; - description "Burst"; - - // Type is an MO-Defined-Type - type policer_Burst; + type string; + description "Shadow VRF-controller-prefix Name"; } - // Set of match conditions for this copp policer - container match-items { - list Match-list { + // Domain (vrf) information + // + // + // + // + // + // + // + // + // + // List of route types + container af-items { + list DomainAf-list { key "type"; - // Added containment: Prefix=match - // Acquired From Package copp - uses copp_Match-group; - } - } - - // Match access-group - container acl-items { - list Acl-list { - key "name"; - - // Added containment: Prefix=acl - // Acquired From Package copp - uses copp_Acl-group; + uses aggregate_DomainAf-group; + description "Domain Address Family list"; } + description "Domain Address Family"; } + } - // Match redirect - container rdirect-items { - - // Added containment as a singleton: Prefix=rdirect - // Acquired From Package copp - uses copp_Rdirect-group; - } + grouping acl_Entity-group { + description "Entity of the Access Control List"; - // Match exception fcoe-fib-miss - container fcoe-items { + container systemacl-items { - // Added containment as a singleton: Prefix=fcoe - // Acquired From Package copp - uses copp_Fcoe-group; + uses acl_SystemAcl-group; + description "System Acl Management Command"; } - // Match exception multicast - container mcast-items { - list Multicast-list { - key "mcastOption"; + // IPv4 and IPv6 port object-group + container oName-items { + list PortGroup-list { + key "name"; - // Added containment: Prefix=mcast - // Acquired From Package copp - uses copp_Multicast-group; + uses acl_PortGroup-group; + description "IPv4 and IPv6 port object group list"; } + description "IPv4 and IPv6 port object group"; } - // Match exception - container excep-items { - list ExeOptions-list { - key "option"; + // MO: VLAN ACL + container vlan-items { + list VLANACL-list { + key "name"; - // Added containment: Prefix=excep - // Acquired From Package copp - uses copp_ExeOptions-group; + uses acl_VLANACL-group; + description "Defines the VLAN Access Control Lists list"; } + description "Defines the VLAN Access Control Lists"; } - // Match exception ip - container ip-items { + // IPv4 + container mac-items { - // Added containment as a singleton: Prefix=ip - // Acquired From Package copp - uses copp_Ip-group; + uses macacl_AF-group; + description "mac access control list configuration space"; } - // Match exception ip icmp - container icmp-items { - list IpIcmp-list { - key "option"; + // MPLS + container mpls-items { - // Added containment: Prefix=icmp - // Acquired From Package copp - uses copp_IpIcmp-group; - } + uses mplsacl_AF-group; + description "MPLS access control list configuration space"; } - // Match exception ipv6 - container ipv6-items { + // Time Range + container timerange-items { - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package copp - uses copp_Ipv6-group; + uses timerange_Timerange-group; + description "Time-Range configuration space"; } - // Match exception ipv6 icmp - container icmpv6-items { - list Ipv6Icmp-list { - key "option"; + // IPv4 + container ipv4-items { - // Added containment: Prefix=icmpv6 - // Acquired From Package copp - uses copp_Ipv6Icmp-group; - } + uses ipv4acl_AF-group; + description "IPv4 access control list configuration space"; } - // Match Protocol - container prot-items { - list Protocol-list { - key "type"; + // IPv6 + container ipv6-items { - // Added containment: Prefix=prot - // Acquired From Package copp - uses copp_Protocol-group; - } + uses ipv6acl_AF-group; + description "IPv6 access control list configuration space"; } } - grouping copp_Match-group { - - // Match type - // Type is an MO-Defined-Type - leaf type { - description "Match type"; - - // Type is an MO-Defined-Type - type copp_MatchT; + grouping acl_SystemAcl-group { + description "System Acl Management Command"; + leaf state { + type boolean; + description "Check the status of System ACL"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type + // Name of Access-Lists leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type acl_AclName; + description "Name of Access-Lists"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ingress or Egress direction + leaf inout { - // Type is an MO-Defined-Type - type naming_Descr; + type acl_Direction; + description "Ingress or Egress direction"; } } - grouping copp_Acl-group { + grouping acl_PortGroup-group { + description "IPv4 and IPv6 port object group"; + + // object-group name leaf name { - type string; + + type acl_Name; + description "Object-group Name in ACL"; } - leaf flag { - type boolean; + + // IPv4 and IPv6 Port Object Group member + container seq-items { + list PortMember-list { + key "seqNum"; + + uses acl_PortMember-group; + description "IPv4 and IPv6 Port Object Group member list"; + } + description "IPv4 and IPv6 Port Object Group member"; } } - grouping copp_Rdirect-group { + grouping acl_PortMember-group { + description "IPv4 and IPv6 Port Object Group member"; - // Redirect options - // Type is an MO-Defined-Type - leaf rdrct { - description "Match redirect options"; + // port operator + leaf portOp { - // Type is an MO-Defined-Type - type copp_Rdrct; + type acl_Operator; + description "Source port operator"; } - } - - grouping copp_Fcoe-group { - // Fcoe option - // Type is an MO-Defined-Type - leaf option { - description "fcoe-fib-miss"; + // first port + leaf port1 { - // Type is an MO-Defined-Type - type copp_Fcoe; + type acl_PortNumber; + description "First source port"; } - } - grouping copp_Multicast-group { + // second port + leaf port2 { - // Type is an MO-Defined-Type - leaf mcastOption { - description "Multicast options"; + type acl_PortNumber; + description "Second source port"; + } - // Type is an MO-Defined-Type - type copp_Mcast; + // configState + leaf configStatus { + + type acl_ConfigState; + description "config status"; } - leaf flag { - type boolean; + + // Object Group Member sequence number + leaf seqNum { + + type acl_SequenceNumber; + description "Sequence number"; } } - grouping copp_ExeOptions-group { + grouping acl_VLANACL-group { + description "Defines the VLAN Access Control Lists"; - // Type is an MO-Defined-Type - leaf option { - description "Match options"; + // VLAN ACL name + leaf name { - // Type is an MO-Defined-Type - type copp_Excep; + type acl_Name; + description "Defines the VLAN acl name"; } - leaf flag { - type boolean; + leaf maxseq { + config "false"; + type uint32; + description "Defines the Max sequence number"; } - } - grouping copp_Ip-group { - leaf options { - type boolean; + // MO: VLAN sequence number + container seq-items { + list VLANSeq-list { + key "seqNum"; + + uses acl_VLANSeq-group; + description "VLAN ACL sequence number list"; + } + description "VLAN ACL sequence number"; } - leaf flag { - type boolean; + + // ==== MO: VLAN list ==== + // VLANList: + // /sys/acl/vlan-[foo]/vlanlist + // list: given arguments for vlan-list + // operation: indicate apply/remove + // listoper: vlan-list actual in effect. + // listerr: erroneous vlan-list, for fault purpose, updated via + // second trunk by aclmgr. + container vlanlist-items { + + uses acl_VLANList-group; + description "Defines the VLAN list"; } } - grouping copp_IpIcmp-group { + grouping acl_VLANSeq-group { + description "VLAN ACL sequence number"; + leaf seqNum { + type uint32; + description "Defines the Sequence number"; + } - // ICMP options - // Type is an MO-Defined-Type - leaf option { - description "icmp options"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type copp_Icmp; - } - leaf flag { - type boolean; + type acl_ACEStats; + description "Per Access Control Entry statistics"; } - } - grouping copp_Ipv6-group { - leaf options { - type boolean; + // MO: VLAN ACL match + // /sys/acl/vlan-[foo]/seq-30/match-[ip_ipv6_mac]-address-[acl1]/ + container match-items { + list VLANACLMatch-list { + key "acltype aclname"; + + uses acl_VLANACLMatch-group; + description "VLAN Access Control List match list"; + } + description "VLAN Access Control List match"; } - leaf flag { - type boolean; + + // MO: VLAN ACL action + // /sys/acl/vlan-[foo]/seq-30/action.log=[yes_no]/ + // /sys/acl/vlan-[foo]/seq-30/action.actiontype=[forward_redirect_drop]/ + // /sys/acl/vlan-[foo]/seq-30/action.redirectintf=[eth1/31_po1]/ + container action-items { + + uses acl_VLANACLAction-group; + description "VLAN Access Control List Action"; } } - grouping copp_Ipv6Icmp-group { + grouping acl_VLANACLMatch-group { + description "VLAN Access Control List match"; - // ICMP options - // Type is an MO-Defined-Type - leaf option { - description "icmp options"; + // Match ACL type: ip_ipv4_mac + leaf acltype { - // Type is an MO-Defined-Type - type copp_Icmp; + type acl_VAclMatchType; + description "match access control list type"; } - leaf flag { - type boolean; + + // Match ACL name + leaf aclname { + + type acl_Name; + description "match access control list name"; } } - grouping copp_Protocol-group { + grouping acl_VLANACLAction-group { + description "VLAN Access Control List Action"; - // Type is an MO-Defined-Type - leaf type { - description "Protocol List"; + // forward_drop_redirect + leaf actiontype { - // Type is an MO-Defined-Type - type copp_Proto; + type acl_VAclActionType; + description "VLAN ACL action forward or drop or redirect"; } - leaf flag { - type boolean; + + // toggle log options + leaf log { + + type acl_VAclLog; + description "Defines the Log option"; } - // Match protocol mpls - container mpls-items { + leaf redirectintf { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package copp - uses copp_MPLSoption-group; + type acl_IfName; + description "Redirect Interfaces example, eth1/11 or po1"; } } - grouping copp_MPLSoption-group { + grouping acl_VLANList-group { + description "Defines the VLAN list"; - // Type is an MO-Defined-Type - leaf exp { - description "Experimental value"; + leaf list { - // Type is an MO-Defined-Type - type copp_ExpVal; + type acl_VlanListStr; + description "VLAN or a list of VLANS example 1,2 or 2-4"; } - // Type is an MO-Defined-Type - leaf routerAlert { - description "router-alert"; + leaf operation { - // Type is an MO-Defined-Type - type copp_Ralert; + type acl_operation; + description "Vlan Filter Operation apply or remove"; } - } - grouping copp_Policy-group { - leaf name { - type string; - } - leaf flag { - type boolean; + leaf listoper { + + type acl_VlanListStr; + description "Vlan List String oper after apply or remove"; } - // Class included in Policy-map - container classp-items { - list Classp-list { - key "name"; + leaf listerr { + config "false"; - // Added containment: Prefix=classp - // Acquired From Package copp - uses copp_Classp-group; + type acl_VlanListStr; + description "Vlan List String error"; + } + leaf timeStamp { + type union { + type string; + type uint64; } + description "INTERNAL: time stamp"; } } - grouping copp_Classp-group { - leaf name { - type string; - } - leaf insertBeforeName { - type string; - } - leaf flag { - type boolean; - } + grouping macacl_AF-group { + description "mac access control list configuration space"; - // Set policer action - container cir-items { - list PolicerAction-list { - key "cirVal cirUnit burstC burstUnit"; + container statClear-items { - // Added containment: Prefix=cir - // Acquired From Package copp - uses copp_PolicerAction-group; - } + uses acl_StatClear-group; + description "clear acl statistics"; } - // Set policer action with pir rate - container policeActionE-items { + // ACL policies + container policy-items { - // Added containment as a singleton: Prefix=policeActionE - // Acquired From Package copp - uses copp_PolicerActionExc-group; + uses acl_Policy-group; + description "Access Control List policy"; } - // Logging Action - container logging-items { - list Logging-list { - key "threshold levelRange"; + // IPv4 ACL + container name-items { + list ACL-list { + key "name"; - // Added containment: Prefix=logging - // Acquired From Package copp - uses copp_Logging-group; + uses macacl_ACL-group; + description "IPv4 access control list list"; } + description "IPv4 access control list"; } + } - // Set cos action - container setCos-items { - list SetCos-list { - key "cosVal"; - - // Added containment: Prefix=setCos - // Acquired From Package copp - uses copp_SetCos-group; - } - } + grouping acl_StatClear-group { + description "clear acl statistics"; - container setDscp-items { + // StatClear ACL name + leaf name { - // Added containment as a singleton: Prefix=setDscp - // Acquired From Package copp - uses copp_SetDscp-group; + type acl_Name; + description "ACL Name to clear the statistics"; + } + leaf timeStamp { + type union { + type string; + type uint64; + } + description "Clear ACL statistics time stamp"; } } - grouping copp_PolicerAction-group { + grouping acl_Policy-group { + description "Access Control List policy"; - // Type is an MO-Defined-Type - leaf cirVal { - description "Cir value"; + // Ingress directions + container ingress-items { - // Type is an MO-Defined-Type - type copp_IrVal; + uses acl_Ingress-group; + description "Ingress direction of packets"; } - // Type is an MO-Defined-Type - leaf cirUnit { - description "Cir rate"; + // Egress directions + container egress-items { - // Type is an MO-Defined-Type - type copp_IrUnit; + uses acl_Egress-group; + description "Egress direction of packets"; } + } - // Type is an MO-Defined-Type - leaf burstC { - description "Burst count"; + grouping acl_Ingress-group { + description "Ingress direction of packets"; - // Type is an MO-Defined-Type - type copp_BurstVal; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses acl_If-group; + description "Interface to which ACL is applied list"; + } + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf burstUnit { - description "BC unit"; + container vty-items { - // Type is an MO-Defined-Type - type copp_BurstUnit; + uses acl_Vty-group; + description "Defines the virtual terminal lines (Vty)"; } + } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform Action"; + grouping acl_If-group { + description "Interface to which ACL is applied"; - // Type is an MO-Defined-Type - type copp_ConformAction; + // interface name string + leaf name { + + type nw_IfId; + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; + // ACL instance + container acl-items { - // Type is an MO-Defined-Type - type copp_ViolateAction; + uses acl_Inst-group; + description "Access Control List instance"; } - leaf flag { - type boolean; + + // port ACL instance + container portacl-items { + + uses acl_PortInst-group; + description "Port Access Control List instance"; + } + + // ACL instance + container macif-items { + + uses macacl_MacIf-group; + description "Mac packet-classify container"; } } - grouping copp_PolicerActionExc-group { + grouping acl_Inst-group { + description "Access Control List instance"; - // Type is an MO-Defined-Type - leaf cirVal { - description "Cir value"; + leaf name { - // Type is an MO-Defined-Type - type copp_IrVal; + type acl_Name; + description "Access Control List name"; + } + leaf configStatus { + config "false"; + type uint32; + description "config status indicator"; } + } - // Type is an MO-Defined-Type - leaf cirUnit { - description "Cir rate"; + grouping acl_PortInst-group { + description "Port Access Control List instance"; - // Type is an MO-Defined-Type - type copp_IrUnit; - } + leaf name { - // Type is an MO-Defined-Type - leaf burstC { - description "Burst count"; + type acl_Name; + description "Access Control List Name"; + } + leaf configStatus { + config "false"; + type uint32; + description "config status indicator"; + } + } - // Type is an MO-Defined-Type - type copp_BurstVal; + grouping macacl_MacIf-group { + description "Mac packet-classify container"; + leaf macPacketClassify { + type boolean; + description "Flag for mac packet-classify on L2"; } + } - // Type is an MO-Defined-Type - leaf burstUnit { - description "BC unit"; + grouping acl_Vty-group { + description "Defines the virtual terminal lines (Vty)"; - // Type is an MO-Defined-Type - type copp_BurstUnit; + // ACL instance + container acl-items { + + uses acl_Inst-group; + description "Access Control List instance"; } + } - // Type is an MO-Defined-Type - leaf pirVal { - description "Pir value"; + grouping acl_Egress-group { + description "Egress direction of packets"; - // Type is an MO-Defined-Type - type copp_IrVal; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses acl_If-group; + description "Interface to which ACL is applied list"; + } + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf pirUnit { - description "Pir rate"; + container vty-items { - // Type is an MO-Defined-Type - type copp_IrUnit; + uses acl_Vty-group; + description "Defines the virtual terminal lines (Vty)"; } + } - // Type is an MO-Defined-Type - leaf burstE { - description "Burst exceed "; + grouping macacl_ACL-group { + description "IPv4 access control list"; - // Type is an MO-Defined-Type - type copp_BurstVal; + // ACL name + leaf name { + + type acl_Name; + description "Name of Access lists"; } - // Type is an MO-Defined-Type - leaf burstEUnit { - description "BE unit"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type copp_BurstUnit; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform Action"; + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Type is an MO-Defined-Type - type copp_ConformAction; + uses acl_Resequence-group; + description "resequence access-list"; } - // Type is an MO-Defined-Type - leaf exceedAction { - description "Exceed Action"; + // IPv4 ACE + container seq-items { + list SEQ-list { + key "seqNum"; - // Type is an MO-Defined-Type - type copp_ExceedAction; + uses macacl_SEQ-group; + description "sequence number of MO list"; + } + description "sequence number of MO"; } + } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; - - // Type is an MO-Defined-Type - type copp_ViolateAction; + grouping acl_Resequence-group { + description "resequence access-list"; + leaf start { + type uint32; + description "starting sequence number"; + } + leaf step { + type uint32; + description "step to increase the sequence number"; } } - grouping copp_Logging-group { + grouping macacl_SEQ-group { + description "sequence number of MO"; - // Type is an MO-Defined-Type - leaf threshold { - description "Logging Threshold"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type copp_IrVal; + type acl_SequenceNumber; + description "Sequence number of ACE"; } - // Type is an MO-Defined-Type - leaf levelRange { - description "logging range"; + // MAC ACE + container ace-items { - // Type is an MO-Defined-Type - type copp_LevelRange; + uses macacl_ACE-group; + description "mac access-list entry"; + } + + // Remark ACE + container remark-items { + + uses macacl_Remark-group; + description "Defines the Mac remark entry"; } } - grouping copp_SetCos-group { - leaf inner { - type boolean; + grouping macacl_ACE-group { + description "mac access-list entry"; + + // protocol number + leaf protocol { + + type acl_MACProtocol; + description "protocol number of ACE"; } - // Cos value - // Type is an MO-Defined-Type - leaf cosVal { - description "Cos Value"; + // cos number + leaf cos { - // Type is an MO-Defined-Type - type copp_CosVal; + type acl_cosType; + description "Cos number of Access Control Entry"; } - leaf flag { - type boolean; + leaf redirect { + type string; + description "redirect to interface"; } - } - grouping copp_SetDscp-group { - leaf tunnel { - type boolean; + // time-range + leaf timeRange { + + type acl_TimeRangeName; + description "Defines the time range name"; } - // Type is an MO-Defined-Type - leaf dscpVal { - description "Dscp Value"; + // vlan number + leaf vlan { - // Type is an MO-Defined-Type - type copp_DscpVal; + type acl_VlanType; + description "Defines the vlan number"; } - } - - grouping copp_Profile-group { - // Profile type - // Type is an MO-Defined-Type - leaf prof { - description "Profile type "; + // set-erspan-dscp- + leaf erspanDscp { - // Type is an MO-Defined-Type - type copp_ProfT; + type acl_erspanDscpType; + description "Defines the dscp value"; } - } - grouping copp_CopyProfile-group { - - // Profile type - // Type is an MO-Defined-Type - leaf profile { - description "Profile type "; + // erspan gre proto + leaf erspanGre { - // Type is an MO-Defined-Type - type copp_ProfT; + type acl_erspanGreType; + description "Defines the dscp gre protocol"; } - // affix type - // Type is an MO-Defined-Type - leaf affix { - description "Affix type"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type copp_Affix; - } - leaf affixName { - type string; + type acl_ActionType; + description "ACE action, permit or deny"; } - leaf copyNum { - type uint32; + leaf srcPrefix { + type address_Mac; + description "Defines the Source MAC Address"; } - } - - grouping copp_Scale-group { - leaf scaleVal { - type decimal64 { - fraction-digits 2; - } + leaf srcPrefixMask { + type address_Mac; + description "Defines the Source prefix mask"; } - leaf module { - type uint16; + leaf dstPrefix { + type address_Mac; + description "destination MAC Address"; } - } - - grouping copp_Service-group { - leaf name { - type string; + leaf dstPrefixMask { + type address_Mac; + description "destination MAC address mask"; } - leaf error { + leaf packets { config "false"; type uint64; - default "0"; + description "Number of packets hitting ACE"; + } + + // UDF + container udf-items { + + uses macacl_UDF-group; + description "Defines the MAC UDFs"; } } - grouping glean_Entity-group { + grouping macacl_UDF-group { + description "Defines the MAC UDFs"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // supports at most 18 UDF udf1 Name + leaf udf1Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 1"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // udf1 Value + leaf udf1Val { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfVal; + description "UDF1 value to match"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // udf1 Mask + leaf udf1Mask { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_UdfMask; + description "Mask to apply to UDF1 value"; } - // Holds glean instance information - container inst-items { + // udf2 Name + leaf udf2Name { - // Added containment as a singleton: Prefix=inst - // Acquired From Package glean - uses glean_Inst-group; + type acl_UdfName; + description "User-defined field match 2"; } - } - - grouping glean_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf2 Value + leaf udf2Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF2 value to match"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // udf2 Mask + leaf udf2Mask { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfMask; + description "Mask to apply to UDF2 value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + // udf3 Name + leaf udf3Name { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfName; + description "User-defined field match 3"; } - // This objects hold per glean domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "encap"; + // udf3 Value + leaf udf3Val { - // Added containment: Prefix=dom - // Acquired From Package glean - uses glean_Dom-group; - } + type acl_UdfVal; + description "UDF3 value to match"; } - } - grouping glean_Dom-group { - leaf encap { - config "false"; - type string; + // udf3 Mask + leaf udf3Mask { + + type acl_UdfMask; + description "Mask to apply to UDF3 value"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf4 Name + leaf udf4Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 4"; } - // This objects hold per glean l2 domain (BD) information - container bd-items { - list BD-list { - config "false"; - key "encap"; + // udf4 Value + leaf udf4Val { - // Added containment: Prefix=bd - // Acquired From Package glean - uses glean_BD-group; - } + type acl_UdfVal; + description "UDF4 value to match"; } - } - grouping glean_BD-group { - leaf encap { - config "false"; - type string; + // udf4 Mask + leaf udf4Mask { + + type acl_UdfMask; + description "Mask to apply to UDF4 value"; } - // Gateway mac - // Type is an MO-Defined-Type - leaf gwMac { - config "false"; - description "Gateway MAC"; + // udf5 Name + leaf udf5Name { - // Type is an MO-Defined-Type - type glean_GwMac; + type acl_UdfName; + description "User-defined field match 5"; } - // Fabric multicast group - // Type is an MO-Defined-Type - leaf fmcastGrp { - config "false"; - description "Fabric Multicast Group"; + // udf5 Value + leaf udf5Val { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type acl_UdfVal; + description "UDF5 value to match"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf5 Mask + leaf udf5Mask { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfMask; + description "Mask to apply to UDF5 value"; } - // This objects holds gateway information. For a given BD, - // there could be multiple gateways - container gw-items { - list Gateway-list { - config "false"; - key "ip"; + // udf6 Name + leaf udf6Name { - // Added containment: Prefix=gw - // Acquired From Package glean - uses glean_Gateway-group; - } + type acl_UdfName; + description "User-defined field match 6"; } - } - - grouping glean_Gateway-group { - // Gateway ip address - // Type is an MO-Defined-Type - leaf ip { - config "false"; - description "Gateway IP Address"; + // udf6 Value + leaf udf6Val { - // Type is an MO-Defined-Type - type glean_GwIp; + type acl_UdfVal; + description "UDF6 value to match"; } - } - - grouping hmm_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf6 Mask + leaf udf6Mask { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfMask; + description "Mask to apply to UDF6 value"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf7 Name + leaf udf7Name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfName; + description "User-defined field match 7"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // udf7 Value + leaf udf7Val { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_UdfVal; + description "UDF7 value to match"; } - // Fabric Forwarding Object - container fwdinst-items { + // udf7 Mask + leaf udf7Mask { - // Added containment as a singleton: Prefix=fwdinst - // Acquired From Package hmm - uses hmm_FwdInst-group; + type acl_UdfMask; + description "Mask to apply to UDF7 value"; } - } - grouping hmm_FwdInst-group { - leaf amac { - type address_Mac; + // udf8 Name + leaf udf8Name { + + type acl_UdfName; + description "User-defined field match 8"; } - leaf limitVlanMac { - type uint16 { - range "5..2048"; - } - default "2048"; + + // udf8 Value + leaf udf8Val { + + type acl_UdfVal; + description "UDF8 value to match"; } - // selective-host-probe - // Type is an MO-Defined-Type - leaf selHostProbe { - description "When set to True, host mobility will be triggered when a remote host route exists irrespective of the sequence id."; + // udf8 Mask + leaf udf8Mask { - // Type is an MO-Defined-Type - type hmm_Boolean; + type acl_UdfMask; + description "Mask to apply to UDF8 value"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf9 Name + leaf udf9Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 9"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf9 Value + leaf udf9Val { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfVal; + description "UDF9 value to match"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // udf9 Mask + leaf udf9Mask { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfMask; + description "Mask to apply to UDF9 value"; } - // Fabric Forwarding Interface Object - container if-items { - list FwdIf-list { - key "id"; + // udf10 Name + leaf udf10Name { - // Added containment: Prefix=if - // Acquired From Package hmm - uses hmm_FwdIf-group; - } + type acl_UdfName; + description "User-defined field match 10"; } - // Fabric Forwarding EVPN Object - container evpn-items { + // udf10 Value + leaf udf10Val { - // Added containment as a singleton: Prefix=evpn - // Acquired From Package hmm - uses hmm_FwdEvpn-group; + type acl_UdfVal; + description "UDF10 value to match"; } - // Holds HMM vrf information - container tenant-items { - list TenantDb-list { - config "false"; - key "vrfName"; + // udf10 Mask + leaf udf10Mask { - // Added containment: Prefix=tenant - // Acquired From Package hmm - uses hmm_TenantDb-group; - } + type acl_UdfMask; + description "Mask to apply to UDF10 value"; } - } - - grouping hmm_FwdIf-group { - // Forwarding mode - // Type is an MO-Defined-Type - leaf mode { - description "HMM Fabric Forwarding mode information for the interface."; + // udf11 Name + leaf udf11Name { - // Type is an MO-Defined-Type - type hmm_FwdMode; - } - leaf VrfName { - config "false"; - type string; + type acl_UdfName; + description "User-defined field match 11"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf11 Value + leaf udf11Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF11 value to match"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // udf11 Mask + leaf udf11Mask { - // Type is an MO-Defined-Type - type naming_Descr1024; + type acl_UdfMask; + description "Mask to apply to UDF11 value"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // udf12 Name + leaf udf12Name { - // Type is an MO-Defined-Type - type nw_IfId; + type acl_UdfName; + description "User-defined field match 12"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf12 Value + leaf udf12Val { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type acl_UdfVal; + description "UDF12 value to match"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - container rtvrfMbr-items { + // udf12 Mask + leaf udf12Mask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type acl_UdfMask; + description "Mask to apply to UDF12 value"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // udf13 Name + leaf udf13Name { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type acl_UdfName; + description "User-defined field match 13"; } - } - grouping hmm_FwdEvpn-group { - leaf ddHmmoves { - type uint16 { - range "1..1000"; - } - default "5"; - } - leaf ddHnsecs { - type uint16 { - range "2..36000"; - } - default "180"; + // udf13 Value + leaf udf13Val { + + type acl_UdfVal; + description "UDF13 value to match"; } - leaf dhrtimeout { - type uint16 { - range "30..36000"; - } - default "30"; + + // udf13 Mask + leaf udf13Mask { + + type acl_UdfMask; + description "Mask to apply to UDF13 value"; } - leaf dhrcount { - type uint16 { - range "1..3000"; - } - default "5"; + + // udf14 Name + leaf udf14Name { + + type acl_UdfName; + description "User-defined field match 14"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf14 Value + leaf udf14Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF14 value to match"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf14 Mask + leaf udf14Mask { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfMask; + description "Mask to apply to UDF14 value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // udf15 Name + leaf udf15Name { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfName; + description "User-defined field match 15"; } - } - grouping hmm_TenantDb-group { - leaf vrfName { - config "false"; - type string; + // udf15 Value + leaf udf15Val { + + type acl_UdfVal; + description "UDF15 value to match"; } - leaf vrfState { - config "false"; - type string; + + // udf15 Mask + leaf udf15Mask { + + type acl_UdfMask; + description "Mask to apply to UDF15 value"; } - leaf vniId { - config "false"; - type uint32; + + // udf16 Name + leaf udf16Name { + + type acl_UdfName; + description "User-defined field match 16"; } - leaf refCount { - config "false"; - type uint32; + + // udf16 Value + leaf udf16Val { + + type acl_UdfVal; + description "UDF16 value to match"; } - // Holds Address family information - container af-items { - list TenantDBAf-list { - config "false"; - key "type"; + // udf16 Mask + leaf udf16Mask { - // Added containment: Prefix=af - // Acquired From Package hmm - uses hmm_TenantDBAf-group; - } + type acl_UdfMask; + description "Mask to apply to UDF16 value"; } - } - grouping hmm_TenantDBAf-group { + // udf17 Name + leaf udf17Name { - // Address family type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Tenant Address Family type (IPv4/IPv6)."; + type acl_UdfName; + description "User-defined field match 17"; + } - // Type is an MO-Defined-Type - type bgp_AfT; + // udf17 Value + leaf udf17Val { + + type acl_UdfVal; + description "UDF17 value to match"; } - leaf tblState { - config "false"; - type string; + + // udf17 Mask + leaf udf17Mask { + + type acl_UdfMask; + description "Mask to apply to UDF17 value"; } - leaf localHosts { - config "false"; - type uint32; + + // udf18 Name + leaf udf18Name { + + type acl_UdfName; + description "User-defined field match 18"; } - leaf remoteHosts { - config "false"; - type uint32; + + // udf18 Value + leaf udf18Val { + + type acl_UdfVal; + description "UDF18 value to match"; } - leaf aggregates { - config "false"; - type uint32; + + // udf18 Mask + leaf udf18Mask { + + type acl_UdfMask; + description "Mask to apply to UDF18 value"; } } - grouping icam_Entity-group { + grouping macacl_Remark-group { + description "Defines the Mac remark entry"; - // This objects hold per mrib Inst information - container inst-items { + // ACE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=inst - // Acquired From Package icam - uses icam_Inst-group; + type acl_SequenceNumber; + description "Sequence number"; + } + + // remark + leaf remark { + + type acl_RemarkStr; + description "ACL entry commment"; } } - grouping icam_Inst-group { - container mod-items { - list MonACLEntries-list { - config "false"; - key "module inst feature value_mask"; + grouping mplsacl_AF-group { + description "MPLS access control list configuration space"; - // Added containment: Prefix=mod - // Acquired From Package icam - uses icam_MonACLEntries-group; - } + // ACL policies + container policy-items { + + uses acl_Policy-group; + description "Access Control List policy"; } - container aclresmod-items { - list AclResEntries-list { - config "false"; - key "module inst tcam_no bank_no"; - // Added containment: Prefix=aclresmod - // Acquired From Package icam - uses icam_AclResEntries-group; + // MPLS ACL + container name-items { + list ACL-list { + key "name"; + + uses mplsacl_ACL-group; + description "MPLS access control list list"; } + description "MPLS access control list"; } } - grouping icam_MonACLEntries-group { - leaf feature { - config "false"; - type string; - } - leaf class_type { - config "false"; - type string; - } - leaf value_mask { - config "false"; - type string; - } - leaf action { - config "false"; - type string; - } + grouping mplsacl_ACL-group { + description "MPLS access control list"; - // Type is an MO-Defined-Type - leaf ifindex { - config "false"; - description "Interface ifindex"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type icam_Index; - } - leaf cum_stats { - config "false"; - type uint64; - } - leaf module { - config "false"; - type uint32; - } - leaf inst { - config "false"; - type uint32; + type acl_Name; + description "Name of Access lists"; } - } - grouping icam_AclResEntries-group { - leaf tcam_no { - config "false"; - type uint32; - } - leaf bank_no { - config "false"; - type uint32; - } - leaf used { - config "false"; - type uint32; - } - leaf free { - config "false"; - type uint32; + // toggle per-entry statistics + leaf perACEStatistics { + + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - leaf percent_util { - config "false"; - type decimal64 { - fraction-digits 2; + + // SEQ Number + container seq-items { + list SEQ-list { + key "seqNum"; + + uses mplsacl_SEQ-group; + description "Defines the sequence number list"; } - } - leaf timestamp { - config "false"; - type uint64; - } - leaf module { - config "false"; - type uint32; - } - leaf inst { - config "false"; - type uint32; + description "Defines the sequence number"; } } - grouping ipqos_Entity-group { + grouping mplsacl_SEQ-group { + description "Defines the sequence number"; - // Type is an MO-Defined-Type - leaf statsState { - description "Globally enable/disable QoS statistics"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type ipqos_statsState; + type acl_SequenceNumber; + description "Defines the Sequence number"; } - container statClear-items { + // MPLS ACE + container ace-items { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package ipqos - uses ipqos_StatClear-group; + uses mplsacl_ACE-group; + description "MPLS access-list entry"; } + } - // Queuing QoS - container queuing-items { + grouping mplsacl_ACE-group { + description "MPLS access-list entry"; - // Added containment as a singleton: Prefix=queuing - // Acquired From Package ipqos - uses ipqos_Queuing-group; + // Action permit or deny + leaf action { + + type acl_ActionType; + description "Specify packets to forward or reject"; } - // Network QoS - container nw-items { + // Label 1 + leaf labelOne { - // Added containment as a singleton: Prefix=nw - // Acquired From Package ipqos - uses ipqos_NwQoS-group; + type acl_LabelRange; + description "Defines Mpls Label One"; } - // Default QoS - container dflt-items { + // Label 2 + leaf labelTwo { - // Added containment as a singleton: Prefix=dflt - // Acquired From Package ipqos - uses ipqos_DefaultQoS-group; + type acl_LabelRange; + description "Defines Mpls Label Two"; } - } - grouping ipqos_StatClear-group { + // Label 3 + leaf labelThree { - // StatClear pmap type - // Type is an MO-Defined-Type - leaf pmapType { - description "policy-map type"; + type acl_LabelRange; + description "Defines Mpls Label Three"; + } - // Type is an MO-Defined-Type - type ipqos_policyType; + // Label 4 + leaf labelFour { + + type acl_LabelRange; + description "Defines Mpls Label Four"; } - // StatClear pmap diretion - // Type is an MO-Defined-Type - leaf direction { - description "policy-map direction input or output"; + // Label 1 Mask + leaf labelOneMask { - // Type is an MO-Defined-Type - type ipqos_policyDirection; + type acl_LabelMaskRange; + description "Defines Mpls Label One Mask"; } - // StatClear ethernet list - // Type is an MO-Defined-Type - leaf ethernet { - description "list of ethernet interfaces"; + // Label 2 Mask + leaf labelTwoMask { - // Type is an MO-Defined-Type - type ipqos_ethernetList; + type acl_LabelMaskRange; + description "Defines Mpls Label Two Mask"; } - // StatClear vlan list - // Type is an MO-Defined-Type - leaf vlan { - description "list of vlan interfaces"; + // Label 3 Mask + leaf labelThreeMask { - // Type is an MO-Defined-Type - type ipqos_vlanList; + type acl_LabelMaskRange; + description "Mpls Label Three Mask"; } - // StatClear portChan list - // Type is an MO-Defined-Type - leaf portChan { - description "list of port-channel interfaces"; + // Label 4 Mask + leaf labelFourMask { - // Type is an MO-Defined-Type - type ipqos_portChanList; + type acl_LabelMaskRange; + description "Mpls Label Four Mask"; } - leaf timeStamp { + leaf redirect { type string; + description "redirect to interface"; } } - grouping ipqos_Queuing-group { + grouping timerange_Timerange-group { + description "Time-Range configuration space"; - // service policy applied on target - container policy-items { + // Time Range specific + container tr-items { + list Tr-list { + key "name"; - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + uses timerange_Tr-group; + description "Specifies the time-range list"; + } + description "Specifies the time-range"; } + } - // class-map - container c-items { - - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; - } + grouping timerange_Tr-group { + description "Specifies the time-range"; - // policy-map - container p-items { + // Time-Range name + leaf name { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type timerange_Name; + description "Timerange Name configuration"; } - container copyPMap-items { + // TRE + container seq-items { + list SEQ-list { + key "seqNum"; - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + uses timerange_SEQ-group; + description "Defines the time range entry list"; + } + description "Defines the time range entry"; } } - grouping ipqos_ServPol-group { + grouping timerange_SEQ-group { + description "Defines the time range entry"; - // Ingress direction - container in-items { + // TRE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=in - // Acquired From Package ipqos - uses ipqos_Ingress-group; + type timerange_SequenceNumber; + description "Sequence number for timerange rule"; } - // Ingress direction - container out-items { + // TRE Absolute + container absolute-items { - // Added containment as a singleton: Prefix=out - // Acquired From Package ipqos - uses ipqos_Egress-group; + uses timerange_TreAbsolute-group; + description "time range absolute entry"; + } + + // TRE Periodic + container periodic-items { + + uses timerange_TrePeriodic-group; + description "time range periodic entry"; } } - grouping ipqos_Ingress-group { + grouping timerange_TreAbsolute-group { + description "time range absolute entry"; - // Target interface - container intf-items { - list If-list { - key "name"; + // start time + leaf startTime { - // Added containment: Prefix=intf - // Acquired From Package ipqos - uses ipqos_If-group; - } + type timerange_HourMinSec; + description "Start Time (hh:mm:ss) for absolute rule of timerange"; } - // system qos - container sys-items { + // start day + leaf startDay { - // Added containment as a singleton: Prefix=sys - // Acquired From Package ipqos - uses ipqos_System-group; + type timerange_Day; + description "Start Day of the Month (1-31) for absolute rule of timerange"; } - // Service policy instance - container pmap-items { + // start month + leaf startMonth { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type timerange_Month; + description "Start Month for absolute rule of timerange"; } - } - - grouping ipqos_If-group { - // interface name string - // Type is an MO-Defined-Type - leaf name { - description "Interface name in a short form. eth1/1 or pc1"; + // start year + leaf startYear { - // Type is an MO-Defined-Type - type ipqos_IfName; + type timerange_Year; + description "Start Year (2000-2037) for absolute rule of timerange"; } - leaf delIntfBit { - type boolean; - default "false"; + + // end time + leaf endTime { + + type timerange_HourMinSec; + description "End Time (hh:mm:ss) for absolute rule of timerange"; } - // Service policy instance - container pmap-items { + // end day + leaf endDay { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type timerange_Day; + description "End Day of the Month (1-31) for absolute rule of timerange"; } - container cmap-items { - list Stats-list { - config "false"; - key "cmapName statType"; - // Added containment: Prefix=cmap - // Acquired From Package ipqos - uses ipqos_Stats-group; - } + // end month + leaf endMonth { + + type timerange_Month; + description "End Month for absolute rule of timerange"; } - container queCmap-items { - list QueuingStats-list { - config "false"; - key "cmapName statType"; - // Added containment: Prefix=queCmap - // Acquired From Package ipqos - uses ipqos_QueuingStats-group; - } + // end year + leaf endYear { + + type timerange_Year; + description "End Year (2000-2037) for absolute rule of timerange"; } } - grouping ipqos_Inst-group { + grouping timerange_TrePeriodic-group { + description "time range periodic entry"; - // name of policy map - // Type is an MO-Defined-Type - leaf name { - description "Policy-map Name"; + // period of weekday/weekend/daily + leaf period { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type timerange_period; + description "Period for periodic rule of timerange"; } - leaf stats { - type boolean; - default "true"; + + // period of strt day + leaf startPeriod { + + type timerange_period; + description "Start Period for periodic rule of timerange"; } - leaf configStatus { - config "false"; - type uint32; + + // period of end day + leaf endPeriod { + + type timerange_period; + description "End Period for periodic rule of timerange"; } - // Rel-def from PolicyInstToPMap - container rspolicyInstToPMap-items { + // start time + leaf startTime { - // Added containment as a singleton: Prefix=rspolicyInstToPMap - // Acquired From Package ipqos - uses ipqos_RsPolicyInstToPMap_source-group; + type timerange_HourMinSec; + description "Start Time for periodic rule of timerange"; + } + + // end time + leaf endTime { + + type timerange_HourMinSec; + description "End Time for periodic rule of timerange"; } } - grouping ipqos_Stats-group { + grouping ipv4acl_AF-group { + description "IPv4 access control list configuration space"; - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf cmapName { - config "false"; - description "Class map name"; + container statClear-items { - // Type is an MO-Defined-Type - type ipqos_CMapName; + uses acl_StatClear-group; + description "clear acl statistics"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf statType { - config "false"; - description "QoS statistics type"; + // ACL policies + container policy-items { - // Type is an MO-Defined-Type - type ipqos_StatsType; + uses acl_Policy-group; + description "Access Control List policy"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf pmapName { - config "false"; - description "Policy map name"; + // IPv4 ACL + container name-items { + list ACL-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_PMapName; - } - leaf dropPackets { - config "false"; - type uint64; - } - leaf dropBytes { - config "false"; - type uint64; - } - leaf txPackets { - config "false"; - type uint64; - } - leaf txBytes { - config "false"; - type uint64; - } - leaf conformBytes { - config "false"; - type uint64; - } - leaf exceedBytes { - config "false"; - type uint64; + uses ipv4acl_ACL-group; + description "IPv4 access control list list"; + } + description "IPv4 access control list"; } - leaf violateBytes { - config "false"; - type uint64; + + // IPv4 address object-group + container oName-items { + list AddrGroup-list { + key "name"; + + uses ipv4acl_AddrGroup-group; + description "IPv4 ACL address object group list"; + } + description "IPv4 ACL address object group"; } } - grouping ipqos_QueuingStats-group { + grouping ipv4acl_ACL-group { + description "IPv4 access control list"; - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf cmapName { - config "false"; - description "Class map name"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type acl_Name; + description "Name of Access lists"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf statType { - config "false"; - description "QoS statistics type"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type ipqos_StatsType; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf pmapName { - config "false"; - description "Policy map name"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type ipqos_PMapName; - } - leaf dropPackets { - config "false"; - type uint64; - } - leaf dropBytes { - config "false"; - type uint64; - } - leaf txPackets { - config "false"; - type uint64; - } - leaf txBytes { - config "false"; - type uint64; - } - leaf currQueueDepth { - config "false"; - type uint64; - } - leaf maxQueueDepth { - config "false"; - type uint64; - } - leaf ingQDropPackets { - config "false"; - type uint64; - } - leaf ingQDepthBytes { - config "false"; - type uint64; - } - leaf randDropBytes { - config "false"; - type uint64; - } - leaf randDropPackets { - config "false"; - type uint64; - } - leaf randEcnMarkedPackets { - config "false"; - type uint64; - } - leaf pfcTxPpp { - config "false"; - type uint64; - } - leaf pfcRxPpp { - config "false"; - type uint64; - } - leaf pfcwdShutdownCount { - config "false"; - type uint64; - } - leaf pfcwdRestoredCount { - config "false"; - type uint64; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - leaf pfcwdFlushedPackets { + leaf configStatus { config "false"; - type uint64; + type uint32; + description "config success indicator"; } - } - grouping ipqos_System-group { + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Service policy instance - container pmap-items { + uses acl_Resequence-group; + description "resequence access-list"; + } - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + // IPv4 ACE + container seq-items { + list ACE-list { + key "seqNum"; + + uses ipv4acl_ACE-group; + description "IPv4 access-list entry list"; + } + description "IPv4 access-list entry"; } } - grouping ipqos_Egress-group { + grouping ipv4acl_ACE-group { + description "IPv4 access-list entry"; - // Target interface - container intf-items { - list If-list { - key "name"; + // protocol to match + leaf protocol { - // Added containment: Prefix=intf - // Acquired From Package ipqos - uses ipqos_If-group; - } + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // system qos - container sys-items { + // Protocol Mask + leaf protocolMask { - // Added containment as a singleton: Prefix=sys - // Acquired From Package ipqos - uses ipqos_System-group; + type ipv4acl_Protocol; + description "Defines the Protocol Mask"; } - // Service policy instance - container pmap-items { + // source prefix + leaf srcPrefix { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - } - grouping ipqos_CMapEntity-group { - container name-items { - list CMapInst-list { - key "name"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Added containment: Prefix=name - // Acquired From Package ipqos - uses ipqos_CMapInst-group; - } + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - } - - grouping ipqos_CMapInst-group { - // name of class map - // Type is an MO-Defined-Type - leaf name { - description "Name of class-map"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - // type of matching - // Type is an MO-Defined-Type - leaf matchType { - description "Match-any, match-all or match-first"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type ipqos_QoSMatchType; - } - leaf configStatus { - config "false"; - type uint32; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - // access-group - container acl-items { - list Acl-list { - key "name"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Added containment: Prefix=acl - // Acquired From Package ipqos - uses ipqos_Acl-group; - } + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // dscp matching - container dscp-items { - list Dscp-list { - key "val"; + // destination prefix length + leaf dstPrefixLength { - // Added containment: Prefix=dscp - // Acquired From Package ipqos - uses ipqos_Dscp-group; - } + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } - // ip rtp matching - container ipRtp-items { + // precedence + leaf precedence { - // Added containment as a singleton: Prefix=ipRtp - // Acquired From Package ipqos - uses ipqos_IpRtp-group; + type ipv4acl_Precedence; + description "IPv4 precedence"; + } + leaf ttl { + type uint8; + description "TTL Operator"; } - // packet length matching - container packetLength-items { + // ICMP Str + leaf icmpStr { - // Added containment as a singleton: Prefix=packetLength - // Acquired From Package ipqos - uses ipqos_PacketLength-group; + type ipv4acl_ICMPEnum; + description "ICMP type"; } - // cos marking - container cos-items { - list Cos-list { - key "val"; + // ICMP type + leaf icmpType { - // Added containment: Prefix=cos - // Acquired From Package ipqos - uses ipqos_Cos-group; - } + type ipv4acl_ICMPType; + description "ICMP type"; } - // mpls experimental matching - container mplsExperimental-items { - list MPLSExperimental-list { - key "val"; + // ICMP code + leaf icmpCode { - // Added containment: Prefix=mplsExperimental - // Acquired From Package ipqos - uses ipqos_MPLSExperimental-group; - } + type ipv4acl_ICMPCode; + description "ICMP code"; } - // precedence matching - container precedence-items { - list Precedence-list { - key "val"; + // tos + leaf tos { - // Added containment: Prefix=precedence - // Acquired From Package ipqos - uses ipqos_Precedence-group; - } + type ipv4acl_Tos; + description "capture session"; } - // protocol matching - container protocol-items { - list Protocol-list { - key "val"; + // configState + leaf configStatus { + config "false"; - // Added containment: Prefix=protocol - // Acquired From Package ipqos - uses ipqos_Protocol-group; - } + type acl_ConfigState; + description "config status"; } - // description - container Description-items { + // remark + leaf remark { - // Added containment as a singleton: Prefix=Description - // Acquired From Package ipqos - uses ipqos_Description-group; + type acl_RemarkStr; + description "Access-list entry comment"; } - // NOT dscp matching - container dscpNot-items { - list NotDscp-list { - key "val"; + // ACE sequence number + leaf seqNum { - // Added containment: Prefix=dscpNot - // Acquired From Package ipqos - uses ipqos_NotDscp-group; - } + type acl_SequenceNumber; + description "Sequence number"; } - // NOT cos matching - container cosNot-items { - list NotCos-list { - key "val"; + // ACE filtering action + leaf action { - // Added containment: Prefix=cosNot - // Acquired From Package ipqos - uses ipqos_NotCos-group; - } + type acl_ActionType; + description "Specify packets to forward or reject"; } - // NOT mpls experimental matching - container mplsExperimentalNot-items { - list NotMPLSExperimental-list { - key "val"; + // source port operator + leaf srcPortOp { - // Added containment: Prefix=mplsExperimentalNot - // Acquired From Package ipqos - uses ipqos_NotMPLSExperimental-group; - } + type acl_Operator; + description "Source port operator"; } - // NOT precedence matching - container precedenceNot-items { - list NotPrecedence-list { - key "val"; + // first source port + leaf srcPort1 { - // Added containment: Prefix=precedenceNot - // Acquired From Package ipqos - uses ipqos_NotPrecedence-group; - } + type acl_PortNumber; + description "First source port"; } - // NOT protocol matching - container protocolNot-items { - list NotProtocol-list { - key "val"; + // second source port + leaf srcPort2 { - // Added containment: Prefix=protocolNot - // Acquired From Package ipqos - uses ipqos_NotProtocol-group; - } + type acl_PortNumber; + description "Second source port"; } - // NOT ip rtp matching - container ipRtpNot-items { + // Source Port Mask + leaf srcPortMask { - // Added containment as a singleton: Prefix=ipRtpNot - // Acquired From Package ipqos - uses ipqos_NotIpRtp-group; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // packet length matching - container packetLengthNot-items { + // destination port operator + leaf dstPortOp { - // Added containment as a singleton: Prefix=packetLengthNot - // Acquired From Package ipqos - uses ipqos_NotPacketLength-group; + type acl_Operator; + description "Destination port operator"; } - // match qos-group - container grp-items { - list QoSGrp-list { - key "id"; + // first destination port + leaf dstPort1 { - // Added containment: Prefix=grp - // Acquired From Package ipqos - uses ipqos_QoSGrp-group; - } + type acl_PortNumber; + description "First destination port number"; } - // Rel-def from classMapToPolicyMap - container rsclassMapToPolicyMap-items { + // second destination port + leaf dstPort2 { - // Abstract containment of rsclassMapToPolicyMap derived from ipqos:CMapInst - list RsClassMapToPolicyMap-list { - key "tDn"; + type acl_PortNumber; + description "Second destination port number"; + } - // Added containment: Prefix=rsclassMapToPolicyMap - // Acquired From Package ipqos - uses ipqos_RsClassMapToPolicyMap_source-group; + // Destination Port Mask + leaf dstPortMask { + + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - } - - grouping ipqos_Acl-group { - // ACL to match - // Type is an MO-Defined-Type - leaf name { - description "Match using ACL"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Operator; + description "packet length operator"; } - } - grouping ipqos_Dscp-group { + // First packet-length + leaf pktLen1 { - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Dscp value"; + type acl_PktLen; + description "first packet length"; + } - // Type is an MO-Defined-Type - type ipqos_Dscp; + // second packet-length + leaf pktLen2 { + + type acl_PktLen; + description "second packet length"; } - leaf configStatus { - config "false"; - type uint32; + leaf urg { + type boolean; + description "tcp urg"; } - } - - grouping ipqos_IpRtp-group { - leaf configStatus { - config "false"; - type uint32; + leaf ack { + type boolean; + description "tcp ack"; } - leaf range { - type string; + leaf psh { + type boolean; + description "tcp psh"; } - } - - grouping ipqos_PacketLength-group { - leaf configStatus { - config "false"; - type uint32; + leaf rst { + type boolean; + description "tcp rst"; } - leaf range { - type string; + leaf syn { + type boolean; + description "tcp syn"; } - } - - grouping ipqos_Cos-group { - - // cos value - // Type is an MO-Defined-Type - leaf val { - description "Cos value"; - - // Type is an MO-Defined-Type - type ipqos_Cos; + leaf fin { + type boolean; + description "tcp fin"; } - leaf configStatus { - config "false"; - type uint32; + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - } - - grouping ipqos_MPLSExperimental-group { - // mpls experimental value - // Type is an MO-Defined-Type - leaf val { - description "MPLS experimental value"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type ipqos_MPLSExperimental; + type acl_TcpFlagsMask; + description "tcp flags mask"; } - leaf configStatus { + leaf packets { config "false"; - type uint32; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - } - - grouping ipqos_Precedence-group { - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Precedence value"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf configStatus { - config "false"; - type uint32; + type acl_CaptureSes; + description "capture session"; } - } - grouping ipqos_Protocol-group { - - // protocol value - // Type is an MO-Defined-Type - leaf val { - description "Protocol value"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type ipqos_Protocol; - } - leaf configStatus { - config "false"; - type uint32; + type acl_HttpOptionType; + description "http option http-method"; } - } - grouping ipqos_Description-group { + // nve vni ID + leaf vni { - // description value - // Type is an MO-Defined-Type - leaf val { - description "Description string"; + type acl_VniType; + description "nve vni ID"; + } - // Type is an MO-Defined-Type - type ipqos_DescStr; - } - } + // vlan + leaf vlan { - grouping ipqos_NotDscp-group { + type acl_VlanType; + description "vlan"; + } - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Not dscp value"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type ipqos_Dscp; - } - leaf configStatus { - config "false"; - type uint32; + type acl_TcpOptionLengthType; + description "TCP options length"; } - } - - grouping ipqos_NotCos-group { - // cos value - // Type is an MO-Defined-Type - leaf val { - description "Not cos value"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type ipqos_Cos; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "time range name"; } - } - - grouping ipqos_NotMPLSExperimental-group { - // mpls experimental value - // Type is an MO-Defined-Type - leaf val { - description "Not mpls experimental value"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type ipqos_MPLSExperimental; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Source address group"; } - } - grouping ipqos_NotPrecedence-group { - - // precedence value - // Type is an MO-Defined-Type - leaf val { - description "Not precedence value"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Destination address group"; } - } - - grouping ipqos_NotProtocol-group { - // protocol value - // Type is an MO-Defined-Type - leaf val { - description "Not protocol value"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type ipqos_Protocol; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Source port group"; } - } - grouping ipqos_NotIpRtp-group { - leaf configStatus { - config "false"; - type uint32; - } - leaf range { - type string; - } - } + // destination port group + leaf dstPortGroup { - grouping ipqos_NotPacketLength-group { - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Destination port group"; } - leaf range { + leaf redirect { type string; + description "Redirect action"; } - } - - grouping ipqos_QoSGrp-group { - // QoS-Group ID - // Type is an MO-Defined-Type - leaf id { - description "QoS group ID"; + // UDF + container udf-items { - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; - } - leaf configStatus { - config "false"; - type uint32; + uses ipv4acl_UDF-group; + description "Internet Protocol version4 UDF"; } } - grouping ipqos_PMapEntity-group { + grouping ipv4acl_UDF-group { + description "Internet Protocol version4 UDF"; - // policy map instance - container name-items { - list PMapInst-list { - key "name"; + // supports at most 18 UDF udf1 Name + leaf udf1Name { - // Added containment: Prefix=name - // Acquired From Package ipqos - uses ipqos_PMapInst-group; - } + type acl_UdfName; + description "User-defined field match 1"; } - } - grouping ipqos_PMapInst-group { - - // policy map name - // Type is an MO-Defined-Type - leaf name { - description "Name of policy-map"; + // udf1 Value + leaf udf1Val { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_UdfVal; + description "UDF1 value to match"; } - // type of matching - // Type is an MO-Defined-Type - leaf matchType { - description "Match-any, match-all or match-first"; + // udf1 Mask + leaf udf1Mask { - // Type is an MO-Defined-Type - type ipqos_QoSMatchType; - } - leaf refCount { - config "false"; - type uint32; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfMask; + description "Mask to apply to UDF1 value"; } - // match a class-map - container cmap-items { - list MatchCMap-list { - key "name"; + // udf2 Name + leaf udf2Name { - // Added containment: Prefix=cmap - // Acquired From Package ipqos - uses ipqos_MatchCMap-group; - } + type acl_UdfName; + description "User-defined field match 2"; } - // description - container Description-items { + // udf2 Value + leaf udf2Val { - // Added containment as a singleton: Prefix=Description - // Acquired From Package ipqos - uses ipqos_Description-group; + type acl_UdfVal; + description "UDF2 value to match"; } - // Rel-def target from PolicyInstToPMap - // Inherited From ipqos:PMapInst - container rtipqosPolicyInstToPMap-items { - - // Abstract containment of rtipqosPolicyInstToPMap derived from ipqos:PMapInst - list RtIpqosPolicyInstToPMap-list { - config "false"; - key "tDn"; + // udf2 Mask + leaf udf2Mask { - // Added containment: Prefix=rtipqosPolicyInstToPMap - // Acquired From Package ipqos - uses ipqos_RtIpqosPolicyInstToPMap_target-group; - } + type acl_UdfMask; + description "Mask to apply to UDF2 value"; } - // Rel-def target from classMapToPolicyMap - // Inherited From ipqos:PMapInst - container rtclassMapToPolicyMap-items { + // udf3 Name + leaf udf3Name { - // Added containment as a singleton: Prefix=rtclassMapToPolicyMap - // Acquired From Package ipqos - uses ipqos_RtClassMapToPolicyMap_target-group; + type acl_UdfName; + description "User-defined field match 3"; } - } - - grouping ipqos_MatchCMap-group { - // use class-map with this name - // Type is an MO-Defined-Type - leaf name { - description "Match using class-map"; + // udf3 Value + leaf udf3Val { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type acl_UdfVal; + description "UDF3 value to match"; } - // Type is an MO-Defined-Type - leaf prevCMap { - description "Insert after the given class-map"; + // udf3 Mask + leaf udf3Mask { - // Type is an MO-Defined-Type - type ipqos_MatchCMapName; + type acl_UdfMask; + description "Mask to apply to UDF3 value"; } - // Type is an MO-Defined-Type - leaf nextCMap { - description "Insert before the given class-map"; + // udf4 Name + leaf udf4Name { - // Type is an MO-Defined-Type - type ipqos_MatchCMapName; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 4"; } - container setCos-items { + // udf4 Value + leaf udf4Val { - // Added containment as a singleton: Prefix=setCos - // Acquired From Package ipqos - uses ipqos_SetCos-group; + type acl_UdfVal; + description "UDF4 value to match"; } - // set MTU - container mtu-items { + // udf4 Mask + leaf udf4Mask { - // Added containment as a singleton: Prefix=mtu - // Acquired From Package ipqos - uses ipqos_SetMTU-group; + type acl_UdfMask; + description "Mask to apply to UDF4 value"; } - // set precedence - container setPrecedence-items { + // udf5 Name + leaf udf5Name { - // Added containment as a singleton: Prefix=setPrecedence - // Acquired From Package ipqos - uses ipqos_SetPrecedence-group; + type acl_UdfName; + description "User-defined field match 5"; } - // set dscp - container setDscp-items { + // udf5 Value + leaf udf5Val { - // Added containment as a singleton: Prefix=setDscp - // Acquired From Package ipqos - uses ipqos_SetDscp-group; + type acl_UdfVal; + description "UDF5 value to match"; } - // set qos-group - container setGrp-items { + // udf5 Mask + leaf udf5Mask { - // Added containment as a singleton: Prefix=setGrp - // Acquired From Package ipqos - uses ipqos_SetQoSGrp-group; + type acl_UdfMask; + description "Mask to apply to UDF5 value"; } - // set dlb-disable - container setDlbDisable-items { + // udf6 Name + leaf udf6Name { - // Added containment as a singleton: Prefix=setDlbDisable - // Acquired From Package ipqos - uses ipqos_SetDlbDisable-group; + type acl_UdfName; + description "User-defined field match 6"; } - // queue-limit - container QueueLimit-items { + // udf6 Value + leaf udf6Val { - // Added containment as a singleton: Prefix=QueueLimit - // Acquired From Package ipqos - uses ipqos_QueueLimit-group; + type acl_UdfVal; + description "UDF6 value to match"; } - // pause - container pause-items { + // udf6 Mask + leaf udf6Mask { - // Added containment as a singleton: Prefix=pause - // Acquired From Package ipqos - uses ipqos_Pause-group; + type acl_UdfMask; + description "Mask to apply to UDF6 value"; } - // dpp - container dpp-items { + // udf7 Name + leaf udf7Name { - // Added containment as a singleton: Prefix=dpp - // Acquired From Package ipqos - uses ipqos_Dpp-group; + type acl_UdfName; + description "User-defined field match 7"; } - // bandwidth - container setBW-items { + // udf7 Value + leaf udf7Val { - // Added containment as a singleton: Prefix=setBW - // Acquired From Package ipqos - uses ipqos_SetBW-group; + type acl_UdfVal; + description "UDF7 value to match"; } - // bandwidth - container setRemBW-items { + // udf7 Mask + leaf udf7Mask { - // Added containment as a singleton: Prefix=setRemBW - // Acquired From Package ipqos - uses ipqos_SetRemBW-group; + type acl_UdfMask; + description "Mask to apply to UDF7 value"; } - // shape traffic - container shape-items { + // udf8 Name + leaf udf8Name { - // Added containment as a singleton: Prefix=shape - // Acquired From Package ipqos - uses ipqos_Shape-group; + type acl_UdfName; + description "User-defined field match 8"; } - // police - container police-items { + // udf8 Value + leaf udf8Val { - // Added containment as a singleton: Prefix=police - // Acquired From Package ipqos - uses ipqos_Police-group; + type acl_UdfVal; + description "UDF8 value to match"; } - // priority - container prio-items { + // udf8 Mask + leaf udf8Mask { - // Added containment as a singleton: Prefix=prio - // Acquired From Package ipqos - uses ipqos_Priority-group; + type acl_UdfMask; + description "Mask to apply to UDF8 value"; } - container RandDet-items { + // udf9 Name + leaf udf9Name { - // Added containment as a singleton: Prefix=RandDet - // Acquired From Package ipqos - uses ipqos_RandomDetect-group; + type acl_UdfName; + description "User-defined field match 9"; } - container RandDetNonEcn-items { + // udf9 Value + leaf udf9Val { - // Added containment as a singleton: Prefix=RandDetNonEcn - // Acquired From Package ipqos - uses ipqos_RandomDetectNonEcn-group; + type acl_UdfVal; + description "UDF9 value to match"; } - } - - grouping ipqos_SetCos-group { - // Cos value - // Type is an MO-Defined-Type - leaf val { - description "Cos value"; + // udf9 Mask + leaf udf9Mask { - // Type is an MO-Defined-Type - type ipqos_Cos; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfMask; + description "Mask to apply to UDF9 value"; } - } - - grouping ipqos_SetMTU-group { - // MTU value - // Type is an MO-Defined-Type - leaf value { - description "Set MTU value"; + // udf10 Name + leaf udf10Name { - // Type is an MO-Defined-Type - type ipqos_MTU; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 10"; } - } - - grouping ipqos_SetPrecedence-group { - // Precedence value - // Type is an MO-Defined-Type - leaf val { - description "Precedence value"; + // udf10 Value + leaf udf10Val { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf tunnel { - type boolean; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfVal; + description "UDF10 value to match"; } - } - - grouping ipqos_SetDscp-group { - // Dscp value - // Type is an MO-Defined-Type - leaf val { - description "Dscp value"; + // udf10 Mask + leaf udf10Mask { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type acl_UdfMask; + description "Mask to apply to UDF10 value"; } - leaf tunnel { - type boolean; + + // udf11 Name + leaf udf11Name { + + type acl_UdfName; + description "User-defined field match 11"; } - leaf configStatus { - config "false"; - type uint32; + + // udf11 Value + leaf udf11Val { + + type acl_UdfVal; + description "UDF11 value to match"; } - } - grouping ipqos_SetQoSGrp-group { + // udf11 Mask + leaf udf11Mask { - // QoS-Group ID - // Type is an MO-Defined-Type - leaf id { - description "QoS group ID"; + type acl_UdfMask; + description "Mask to apply to UDF11 value"; + } - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + // udf12 Name + leaf udf12Name { + + type acl_UdfName; + description "User-defined field match 12"; } - leaf configStatus { - config "false"; - type uint32; + + // udf12 Value + leaf udf12Val { + + type acl_UdfVal; + description "UDF12 value to match"; } - } - grouping ipqos_SetDlbDisable-group { - leaf configStatus { - config "false"; - type uint32; + // udf12 Mask + leaf udf12Mask { + + type acl_UdfMask; + description "Mask to apply to UDF12 value"; } - } - grouping ipqos_QueueLimit-group { + // udf13 Name + leaf udf13Name { - // queue-limit - // Type is an MO-Defined-Type - leaf QueueLimitVal { - description "Value in bytes/kbytes/mbytes"; + type acl_UdfName; + description "User-defined field match 13"; + } - // Type is an MO-Defined-Type - type ipqos_QueueLimit; + // udf13 Value + leaf udf13Val { + + type acl_UdfVal; + description "UDF13 value to match"; } - // queue-limit unit - // Type is an MO-Defined-Type - leaf QueueLimitUnit { - description "Bytes/kbytes/mbytes"; + // udf13 Mask + leaf udf13Mask { - // Type is an MO-Defined-Type - type ipqos_QueueLimitUnit; + type acl_UdfMask; + description "Mask to apply to UDF13 value"; } - // queue-limit dynamic - // Type is an MO-Defined-Type - leaf dynamic { - description "Queue-limit dynamic value"; + // udf14 Name + leaf udf14Name { - // Type is an MO-Defined-Type - type ipqos_QueueLimitDynamic; + type acl_UdfName; + description "User-defined field match 14"; } - leaf configStatus { - config "false"; - type uint32; + + // udf14 Value + leaf udf14Val { + + type acl_UdfVal; + description "UDF14 value to match"; } - } - grouping ipqos_Pause-group { + // udf14 Mask + leaf udf14Mask { - // buffer-size - // Type is an MO-Defined-Type - leaf bufferSize { - description "size in bytes"; + type acl_UdfMask; + description "Mask to apply to UDF14 value"; + } - // Type is an MO-Defined-Type - type ipqos_BuffSize; + // udf15 Name + leaf udf15Name { + + type acl_UdfName; + description "User-defined field match 15"; } - // pause-threshold - // Type is an MO-Defined-Type - leaf pauseThreshold { - description "xoff bytes"; + // udf15 Value + leaf udf15Val { - // Type is an MO-Defined-Type - type ipqos_XoffBytes; + type acl_UdfVal; + description "UDF15 value to match"; } - // resume-threshold - // Type is an MO-Defined-Type - leaf resumeThreshold { - description "xon bytes"; + // udf15 Mask + leaf udf15Mask { - // Type is an MO-Defined-Type - type ipqos_XonBytes; + type acl_UdfMask; + description "Mask to apply to UDF15 value"; } - leaf pfcCos0 { - type boolean; - } - leaf pfcCos1 { - type boolean; - } - leaf pfcCos2 { - type boolean; - } - leaf pfcCos3 { - type boolean; - } - leaf pfcCos4 { - type boolean; - } - leaf pfcCos5 { - type boolean; - } - leaf pfcCos6 { - type boolean; - } - leaf pfcCos7 { - type boolean; - } - leaf receive { - type boolean; - } - leaf configStatus { - config "false"; - type uint32; - } - } - - grouping ipqos_Dpp-group { - - // set-qos-group - // Type is an MO-Defined-Type - leaf setQosGroup { - description "QoS Group Value"; - - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; - } - } - - grouping ipqos_SetBW-group { - - // Percent of available bandwidth - // Type is an MO-Defined-Type - leaf val { - description "Available bandwidth"; - - // Type is an MO-Defined-Type - type ipqos_Percent; - } - leaf configStatus { - config "false"; - type uint32; - } - } - - grouping ipqos_SetRemBW-group { - - // Percent of available bandwidth - // Type is an MO-Defined-Type - leaf val { - description "Remaining bandwidth"; - - // Type is an MO-Defined-Type - type ipqos_Percent; - } - leaf configStatus { - config "false"; - type uint32; - } - } - grouping ipqos_Shape-group { - - // Type is an MO-Defined-Type - leaf min { - description "Minimum shape rate"; + // udf16 Name + leaf udf16Name { - // Type is an MO-Defined-Type - type ipqos_ShapeRate; + type acl_UdfName; + description "User-defined field match 16"; } - // Type is an MO-Defined-Type - leaf minRateUnit { - description "Minimum shape rate unit"; + // udf16 Value + leaf udf16Val { - // Type is an MO-Defined-Type - type ipqos_RateUnit; + type acl_UdfVal; + description "UDF16 value to match"; } - // Type is an MO-Defined-Type - leaf max { - description "Maximum shape rate"; + // udf16 Mask + leaf udf16Mask { - // Type is an MO-Defined-Type - type ipqos_ShapeRate; + type acl_UdfMask; + description "Mask to apply to UDF16 value"; } - // Type is an MO-Defined-Type - leaf maxRateUnit { - description "Maximum shape rate unit"; + // udf17 Name + leaf udf17Name { - // Type is an MO-Defined-Type - type ipqos_RateUnit; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 17"; } - } - - grouping ipqos_Police-group { - // Type is an MO-Defined-Type - leaf cirRate { - description "CIR"; + // udf17 Value + leaf udf17Val { - // Type is an MO-Defined-Type - type ipqos_PoliceRate; + type acl_UdfVal; + description "UDF17 value to match"; } - // Type is an MO-Defined-Type - leaf cirUnit { - description "CIR unit"; + // udf17 Mask + leaf udf17Mask { - // Type is an MO-Defined-Type - type ipqos_RateUnit; + type acl_UdfMask; + description "Mask to apply to UDF17 value"; } - // Type is an MO-Defined-Type - leaf bcRate { - description "CIR burst"; + // udf18 Name + leaf udf18Name { - // Type is an MO-Defined-Type - type ipqos_BurstRate; + type acl_UdfName; + description "User-defined field match 18"; } - // Type is an MO-Defined-Type - leaf bcUnit { - description "CIR burst unit"; + // udf18 Value + leaf udf18Val { - // Type is an MO-Defined-Type - type ipqos_BurstRateUnit; + type acl_UdfVal; + description "UDF18 value to match"; } - // Type is an MO-Defined-Type - leaf pirRate { - description "PIR"; + // udf18 Mask + leaf udf18Mask { - // Type is an MO-Defined-Type - type ipqos_PoliceRate; + type acl_UdfMask; + description "Mask to apply to UDF18 value"; } + } - // Type is an MO-Defined-Type - leaf pirUnit { - description "PIR unit"; - - // Type is an MO-Defined-Type - type ipqos_RateUnit; - } + grouping ipv4acl_AddrGroup-group { + description "IPv4 ACL address object group"; - // Type is an MO-Defined-Type - leaf beRate { - description "PIR burst"; + // object-group name + leaf name { - // Type is an MO-Defined-Type - type ipqos_BurstRate; + type acl_Name; + description "Object-group Name in ACL"; } - // Type is an MO-Defined-Type - leaf beUnit { - description "PIR burst unit"; + // IPv4 Address Object Group member + container seq-items { + list AddrMember-list { + key "seqNum"; - // Type is an MO-Defined-Type - type ipqos_BurstRateUnit; + uses ipv4acl_AddrMember-group; + description "IPv4 Address Object Group member list"; + } + description "IPv4 Address Object Group member"; } + } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform action"; - - // Type is an MO-Defined-Type - type ipqos_PoliceAction; - } + grouping ipv4acl_AddrMember-group { + description "IPv4 Address Object Group member"; - // Type is an MO-Defined-Type - leaf conformSetCosTransmit { - description "set cos for conforming traffic"; + // prefix + leaf prefix { - // Type is an MO-Defined-Type - type ipqos_Cos; + type ipv4acl_IPv4Prefix; + description "IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf conformSetDscpTransmit { - description "set dscp for conforming traffic"; + // prefix wildcard mask + leaf prefixMask { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type ipv4acl_IPv4PrefixMask; + description "IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf conformSetPrecTransmit { - description "set precedence for conforming traffic"; + // prefix length + leaf prefixLength { - // Type is an MO-Defined-Type - type ipqos_Prec; + type ipv4acl_IPv4PrefixLen; + description "IPv4 prefix length"; } - // Type is an MO-Defined-Type - leaf conformSetQosGrpTransmit { - description "set qos-group for conforming traffic"; + // configState + leaf configStatus { + config "false"; - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + type acl_ConfigState; + description "config status"; } - // Type is an MO-Defined-Type - leaf exceedAction { - description "Exceed action"; + // Object Group Member sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type ipqos_PoliceAction; + type acl_SequenceNumber; + description "Sequence number"; } + } - // Type is an MO-Defined-Type - leaf exceedSetCosTransmit { - description "set cos for exceeding traffic"; - - // Type is an MO-Defined-Type - type ipqos_Cos; - } + grouping ipv6acl_AF-group { + description "IPv6 access control list configuration space"; - // Type is an MO-Defined-Type - leaf exceedSetDscpTransmit { - description "set dscp for exceeding traffic"; + container statClear-items { - // Type is an MO-Defined-Type - type ipqos_Dscp; + uses acl_StatClear-group; + description "clear acl statistics"; } - // Type is an MO-Defined-Type - leaf exceedSetPrecTransmit { - description "set precedence for exceeding traffic"; + // ACL policies + container policy-items { - // Type is an MO-Defined-Type - type ipqos_Prec; + uses acl_Policy-group; + description "Access Control List policy"; } - // Type is an MO-Defined-Type - leaf exceedSetQosGrpTransmit { - description "set qos-group for exceeding traffic"; + // IPv6 ACL + container name-items { + list ACL-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + uses ipv6acl_ACL-group; + description "IPv6 access control list list"; + } + description "IPv6 access control list"; } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; + // IPv6 address object-group + container oName-items { + list AddrGroup-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_PoliceAction; + uses ipv6acl_AddrGroup-group; + description "IPv6 address object group list"; + } + description "IPv6 address object group"; } + } - // Type is an MO-Defined-Type - leaf violateSetCosTransmit { - description "set cos for violating traffic"; - - // Type is an MO-Defined-Type - type ipqos_Cos; - } + grouping ipv6acl_ACL-group { + description "IPv6 access control list"; - // Type is an MO-Defined-Type - leaf violateSetDscpTransmit { - description "set dscp for violating traffic"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type acl_Name; + description "Name of Access lists"; } - // Type is an MO-Defined-Type - leaf violateSetPrecTransmit { - description "set precedence for violating traffic"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type ipqos_Prec; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // Type is an MO-Defined-Type - leaf violateSetQosGrpTransmit { - description "set qos-group for violating traffic"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } leaf configStatus { config "false"; type uint32; + description "config success indicator"; } - } - - grouping ipqos_Priority-group { - // Type is an MO-Defined-Type - leaf level { - description "Optional priority level"; + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Type is an MO-Defined-Type - type ipqos_PriorityLevel; + uses acl_Resequence-group; + description "resequence access-list"; } - leaf configStatus { - config "false"; - type uint32; + + // IPv6 ACE + container seq-items { + list ACE-list { + key "seqNum"; + + uses ipv6acl_ACE-group; + description "IPv6 access-list entry list"; + } + description "IPv6 access-list entry"; } } - grouping ipqos_RandomDetect-group { + grouping ipv6acl_ACE-group { + description "IPv6 access-list entry"; - // minimun thresold - // Type is an MO-Defined-Type - leaf minThreshold { - description "min threshold"; + // protocol to match + leaf protocol { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_Protocol; + description "Protocol for access-list entry"; } - // minimun thresold unit - // Type is an MO-Defined-Type - leaf minThresholdUnit { - description "min threshold"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_Protocol; + description "Defines the Protocol Mask"; } - // max threshold - // Type is an MO-Defined-Type - leaf maxThreshold { - description "max threshold"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_IPv6Prefix; + description "Source IPv6 prefix"; } - // max thresold unit - // Type is an MO-Defined-Type - leaf maxThresholdUnit { - description "max threshold"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_IPv6PrefixMask; + description "Source IPv6 prefix mask"; } - // drop availability - // Type is an MO-Defined-Type - leaf dropAvail { - description "drop availability range"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type ipqos_DropAvailRange; + type ipv6acl_IPv6PrefixLen; + description "Source IPv6 prefix length"; } - // threshold weight - // Type is an MO-Defined-Type - leaf weight { - description "weight range"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type ipqos_Weight; - } - leaf capAverage { - type boolean; + type ipv6acl_IPv6Prefix; + description "Destination IPv6 prefix"; } - // mesh or burst optimization - // Type is an MO-Defined-Type - leaf optimization { - description "random optimization type"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type ipqos_RandOptType; - } - leaf ecn { - type boolean; + type ipv6acl_IPv6PrefixMask; + description "Destination IPv6 prefix mask"; } - } - grouping ipqos_RandomDetectNonEcn-group { - - // minimun thresold - // Type is an MO-Defined-Type - leaf minThresholdNonEcn { - description "non ecn min threshold"; + // destination prefix length + leaf dstPrefixLength { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_IPv6PrefixLen; + description "Destination IPv6 prefix length"; } - // minimun thresold unit - // Type is an MO-Defined-Type - leaf minThresholdUnitNonEcn { - description "non ecn min threshold"; + // flow-label + leaf flowLabel { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_FlowLabel; + description "Flow label"; } - // max threshold - // Type is an MO-Defined-Type - leaf maxThresholdNonEcn { - description "non ecn max threshold"; + // ICMP Str + leaf icmpStr { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_ICMPEnum; + description "ICMPv6 Str"; } - // max thresold unit - // Type is an MO-Defined-Type - leaf maxThresholdUnitNonEcn { - description "non ecn max threshold"; + // ICMP type + leaf icmpType { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_ICMPType; + description "ICMPv6 type"; } - // drop availability - // Type is an MO-Defined-Type - leaf dropAvailNonEcn { - description "drop availability range"; + // ICMP code + leaf icmpCode { - // Type is an MO-Defined-Type - type ipqos_DropAvailRange; + type ipv6acl_ICMPCode; + description "ICMPv6 code"; } - } - - grouping ipqos_CopyPMap-group { - // Type is an MO-Defined-Type - leaf lastFrom { + // configState + leaf configStatus { config "false"; - description "Name of source policy-map to copy from"; - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_ConfigState; + description "config status"; } - // Type is an MO-Defined-Type - leaf lastTo { - config "false"; - description "Name of policy-map resulting from copying"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_RemarkStr; + description "Access-list entry comment"; } - } - - grouping ipqos_NwQoS-group { - // service policy applied on target - container policy-items { + // ACE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + type acl_SequenceNumber; + description "Sequence number"; } - // class-map - container c-items { + // ACE filtering action + leaf action { - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; + type acl_ActionType; + description "Specify packets to forward or reject"; } - // policy-map - container p-items { + // source port operator + leaf srcPortOp { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type acl_Operator; + description "Source port operator"; } - container copyPMap-items { + // first source port + leaf srcPort1 { - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + type acl_PortNumber; + description "First source port"; } - } - - grouping ipqos_DefaultQoS-group { - // service policy applied on target - container policy-items { + // second source port + leaf srcPort2 { - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + type acl_PortNumber; + description "Second source port"; } - // class-map - container c-items { + // Source Port Mask + leaf srcPortMask { - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // policy-map - container p-items { + // destination port operator + leaf dstPortOp { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type acl_Operator; + description "Destination port operator"; } - container copyPMap-items { + // first destination port + leaf dstPort1 { - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + type acl_PortNumber; + description "First destination port number"; } - } - grouping monitor_Entity-group { + // second destination port + leaf dstPort2 { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type acl_PortNumber; + description "Second destination port number"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Destination Port Mask + leaf dstPortMask { + + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Operator; + description "packet length operator"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // First packet-length + leaf pktLen1 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_PktLen; + description "first packet length"; } - // Abstraction of coop database (repository) - container db-items { - list Db-list { - config "false"; - key "type"; + // second packet-length + leaf pktLen2 { - // Added containment: Prefix=db - // Acquired From Package monitor - uses monitor_Db-group; - } + type acl_PktLen; + description "second packet length"; } - - // Monitor session definition. there could be only few sessions - // active at a given time (max 4) - container session-items { - list Session-list { - config "false"; - key "name"; - - // Added containment: Prefix=session - // Acquired From Package monitor - uses monitor_Session-group; - } + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - } - grouping monitor_Db-group { + leaf tcpFlagsMask { - // Type of the database - // Type is an MO-Defined-Type - leaf type { + type acl_TcpFlagsMask; + description "tcp flags mask"; + } + leaf packets { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type monitor_DbT; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_CaptureSes; + description "capture session"; } - // Ep records - container epr-items { - list EpRec-list { - config "false"; - key "vnid ip"; + // http option (http-method) + leaf httpOption { - // Added containment: Prefix=epr - // Acquired From Package monitor - uses monitor_EpRec-group; - } + type acl_HttpOptionType; + description "http option http-method"; } - } - grouping monitor_EpRec-group { - leaf vnid { - config "false"; - type string; - } - leaf ip { - config "false"; - type address_Ip; + // nve vni ID + leaf vni { + + type acl_VniType; + description "nve vni ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_VlanType; + description "vlan"; } - } - grouping monitor_Session-group { - - // Identifier of the session - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type monitor_SessionId; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Administrative state of the session - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "time range name"; } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type monitor_OperSt; + type acl_Name; + description "Source address group"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type acl_Name; + description "Destination address group"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type naming_Descr; + type acl_Name; + description "Source port group"; } - // Monitor sources. The sources which we want to monitor - container src-items { - list Source-list { - config "false"; - key "type mode dir from to port"; + // destination port group + leaf dstPortGroup { - // Added containment: Prefix=src - // Acquired From Package monitor - uses monitor_Source-group; - } + type acl_Name; + description "Destination port group"; + } + leaf redirect { + type string; + description "Redirect action"; } + } - // ERSpan destination information - container erdst-items { + grouping ipv6acl_AddrGroup-group { + description "IPv6 address object group"; - // Added containment as a singleton: Prefix=erdst - // Acquired From Package monitor - uses monitor_ERDest-group; + // object-group name + leaf name { + + type acl_Name; + description "Object-group Name in ACL"; } - // Local span destination information - container ldst-items { + // IPv6 Address Object Group member + container seq-items { + list AddrMember-list { + key "seqNum"; - // Added containment as a singleton: Prefix=ldst - // Acquired From Package monitor - uses monitor_LocalDest-group; + uses ipv6acl_AddrMember-group; + description "IPv6 Address Object Group member list"; + } + description "IPv6 Address Object Group member"; } } - grouping monitor_Source-group { + grouping ipv6acl_AddrMember-group { + description "IPv6 Address Object Group member"; - // Source id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // prefix + leaf prefix { - // Type is an MO-Defined-Type - type monitor_SrcId; + type ipv6acl_IPv6Prefix; + description "IPv6 prefix"; } - // Type of the source - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // prefix wildcard mask + leaf prefixMask { - // Type is an MO-Defined-Type - type monitor_SrcT; + type ipv6acl_IPv6PrefixMask; + description "IPv6 prefix mask"; } - // The direction of the packets to monitor - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Direction"; + // prefix length + leaf prefixLength { - // Type is an MO-Defined-Type - type monitor_Direction; - } - leaf from { - config "false"; - type string; + type ipv6acl_IPv6PrefixLen; + description "IPv6 prefix length"; } - leaf to { + + // configState + leaf configStatus { config "false"; - type string; + + type acl_ConfigState; + description "config status"; } - // Port to monitor - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; + // Object Group Member sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type nw_IfId; + type acl_SequenceNumber; + description "Sequence number"; } + } - // Mode of the source (access side or fabric side) - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + grouping analytics_Entity-group { + description "Entity"; - // Type is an MO-Defined-Type - type monitor_Mode; + // Holds netflow and analytics instance information + container inst-items { + list Inst-list { + key "mode"; + + uses analytics_Inst-group; + description "Holds the Analytics instance information list"; + } + description "Holds the Analytics instance information"; } + } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping analytics_Inst-group { + description "Holds the Analytics instance information"; - // Type is an MO-Defined-Type - type monitor_OperSt; + // analytics/netflow mode + leaf mode { + + type analytics_ModeT; + description "Mode Select to represent the feature"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - } - grouping monitor_ERDest-group { + // Instance controls + leaf ctrl { - // Encapsulation type, the encapsulation of the monitored - // packet sent to the destination - // Type is an MO-Defined-Type - leaf type { + type nw_InstCtrl; + description "Controls"; + } + + // Operational errors qualifier + leaf operErr { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type monitor_DestEncapT; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf srcIp { - config "false"; - type address_Ip; + + // Platform capability informations + container capability-items { + + uses analytics_Capability-group; + description "Platform Capability Information"; } - leaf dstIp { - config "false"; - type address_Ip; + + // Slot info + container slot-items { + list Slot-list { + config "false"; + key "slotid"; + + uses analytics_Slot-group; + description "Module Number for this Capability list"; + } + description "Module Number for this Capability"; } - // Erspan version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Controller information for bootstrapping the analytics agent + container controller-items { + list Controller-list { + key "name"; - // Type is an MO-Defined-Type - type monitor_ErSpanVer; + uses analytics_Controller-group; + description "Controller Reachability list"; + } + description "Controller Reachability"; } - // Flow id of the erspan packet - // Type is an MO-Defined-Type - leaf flowId { - config "false"; - description "Flow ID"; + // Flow Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type monitor_FlowId; + uses analytics_RecordP-group; + description "Flow Record list"; + } + description "Flow Record"; } - // Ttl used in the erspan packet - // Type is an MO-Defined-Type - leaf ttl { - config "false"; - description "TTL"; + // Flow Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type l3_Ttl; + uses analytics_Collector-group; + description "Collector entry list"; + } + description "Collector entry"; } - // the vrf on which the erspan packet is sent - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "VRF"; + // Flow Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type l3_VrfName; + uses analytics_Monitor-group; + description "Flow Monitor list"; + } + description "Flow Monitor"; } - leaf vnid { - config "false"; - type string; + + // Analytics profile + container prof-items { + list Profile-list { + key "name"; + + uses analytics_Profile-group; + description "Profile list"; + } + description "Profile"; } - // dscp value to be used when sending the monitored - // packets using ERSpan - // Type is an MO-Defined-Type - leaf dscp { - config "false"; - description "Dscp"; + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { + key "id"; - // Type is an MO-Defined-Type - type qosp_Dscp; + uses analytics_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Policy Container for ACLs + container policy-items { + list Policy-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses analytics_Policy-group; + description "Policy list"; } + description "Policy"; } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + grouping analytics_Capability-group { + description "Platform Capability Information"; + + // Mode + leaf fabricMode { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type analytics_CModeT; + description "Mode to Indicate Platform Type"; } - // mtu truncation size for the packets - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf mtu { + // Collector Bucket Hash Width + leaf bucketHashWidth { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type monitor_Mtu; + type analytics_HashWidthT; + description "Bit Width of the Collector Bucket Hash"; } - // Operational state of the session - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf operSt { + // Number of TCAM entries + leaf numTcamEnt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type monitor_OperSt; + type analytics_numTcamEntT; + description "Number of TCAM Entries"; } - } - grouping monitor_LocalDest-group { - - // Port - // Type is an MO-Defined-Type - leaf port { + // Number of TCAM entries per V4 type + leaf numTcamEntPerV4 { config "false"; - description "Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type analytics_numTcamEntV4T; + description "Number of TCAM Entries per V4 type"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Number of TCAM entries per V6 type + leaf numTcamEntPerV6 { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type analytics_numTcamEntV6T; + description "Number of TCAM Entries per V6 type"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + // Latency Resolution Factor + leaf configLatencyResFactor { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type analytics_configLatencyResFactorT; + description "Ability to Configure Resolution Factor"; } - // mtu truncation size for the packets - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf mtu { + // Oport support + leaf oportSupport { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type monitor_Mtu; + type analytics_oportSupportT; + description "Ability to expose Oport information"; } - // Operational state of the session - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf operSt { + // Oclass support + leaf oclassSupport { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type monitor_OperSt; + type analytics_oportSupportT; + description "Ability to expose Oclass information"; } } - grouping flow_Entity-group { + grouping analytics_Slot-group { + description "Module Number for this Capability"; - // Flow Record - container fr-items { - list Record-list { - key "name"; + // Slot identifier + leaf slotid { + config "false"; - // Added containment: Prefix=fr - // Acquired From Package flow - uses flow_Record-group; - } + type analytics_OclassId; + description "Module Number for this Capability"; } - // Flow Exporter - container fe-items { - list Exporter-list { - key "name"; + // Oclass info + container oclass-items { + list Oclass-list { + config "false"; + key "id"; - // Added containment: Prefix=fe - // Acquired From Package flow - uses flow_Exporter-group; + uses analytics_Oclass-group; + description "Oclass to Priority Mapping list"; } + description "Oclass to Priority Mapping"; } + } - // Flow Monitor - container fm-items { - list Monitor-list { - key "name"; + grouping analytics_Oclass-group { + description "Oclass to Priority Mapping"; - // Added containment: Prefix=fm - // Acquired From Package flow - uses flow_Monitor-group; - } + // Oclass identifier + leaf id { + config "false"; + + type analytics_OclassId; + description "Egress Port Class ID"; + } + leaf priorityMapping { + config "false"; + type string; + description "Egree Port Priority Mapping"; } + } - // Sampler - container s-items { - list Sampler-list { - key "name"; + grouping analytics_Controller-group { + description "Controller Reachability"; - // Added containment: Prefix=s - // Acquired From Package flow - uses flow_Sampler-group; - } - } - container cmap-items { - list ClassMap-list { - key "name"; + leaf name { - // Added containment: Prefix=cmap - // Acquired From Package flow - uses flow_ClassMap-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container pmap-items { - list PolicyMap-list { - key "name"; - // Added containment: Prefix=pmap - // Acquired From Package flow - uses flow_PolicyMap-group; - } + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Hardware profile - container hp-items { - list HwProfile-list { - key "name"; + // Remote node VRF + leaf vrfName { - // Added containment: Prefix=hp - // Acquired From Package flow - uses flow_HwProfile-group; - } + type l3_VrfName; + description "VRF to connect to the Remote Collector"; + } + leaf dstAddr { + type address_Ip; + description "Destination IP of the Remote Collector"; } - // Forwarding instance based target - container fit-items { - list FwdInstTarget-list { - key "slot asic slice"; + // Remote node destination port + leaf dstPort { - // Added containment: Prefix=fit - // Acquired From Package flow - uses flow_FwdInstTarget-group; - } + type l4_Port; + description "L4 Port of the Remote Collector"; } - } - grouping flow_Record-group { - leaf name { - type string; + // IP dscp value + leaf dscp { + + type qosp_DscpCP; + description "DSCP value of the Remote Collector"; } - leaf description { - type string; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source Interface that contains the Source IP for Analytics packets"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address for Analytics packets"; } + } - // Type is an MO-Defined-Type - leaf matchParams { - description "Match Params"; + grouping analytics_RecordP-group { + description "Flow Record"; - // Type is an MO-Defined-Type - type flow_MatchParams; + // Match parameters for the flow record + leaf match { + + type analytics_MatchParams; + description "Analytics Record profile parameters to match flows on."; } - // Type is an MO-Defined-Type - leaf collectParams { - description "Collect Params"; + // Collect parameters for the flow record + leaf collect { - // Type is an MO-Defined-Type - type flow_CollectParams; + type analytics_CollectParams; + description "Analytics Record parameters to collect in the flows."; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping flow_Exporter-group { + grouping analytics_Collector-group { + description "Collector entry"; + + // Collector version + leaf ver { + + type analytics_CollVersion; + description "Collector Version Format"; + } + leaf name { - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf description { - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type + // Remote node VRF leaf vrfName { - description "Collector VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF to connect to the Remote Collector"; } - leaf destinationIp { + leaf dstAddr { type address_Ip; + description "Destination IP of the Remote Collector"; } - // Type is an MO-Defined-Type - leaf destinationPort { - description "Collector L4 Port"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type flow_L4Port; + type l4_Port; + description "L4 Port of the Remote Collector"; } - // Type is an MO-Defined-Type + // IP dscp value leaf dscp { - description "DSCP value"; - // Type is an MO-Defined-Type - type ipqos_Dscp; + type qosp_DscpCP; + description "DSCP value of the Remote Collector"; } - // check - // Type is an MO-Defined-Type - leaf sourceInterface { - description "Source Interface"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface that contains the Source IP for Analytics packets"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address for Analytics packets"; } + } - // Type is an MO-Defined-Type - leaf version { - description "Export version format"; + grouping analytics_Monitor-group { + description "Flow Monitor"; - // Type is an MO-Defined-Type - type flow_ExportVersion; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping flow_Monitor-group { leaf name { - type string; - } - leaf description { - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container feb-items { - list ExporterBucket-list { + + // Collector bucket info + container collectorbucket-items { + list CollectorBucket-list { key "id"; - // Added containment: Prefix=feb - // Acquired From Package flow - uses flow_ExporterBucket-group; + uses analytics_CollectorBucket-group; + description "Flow Collector Bucket Entry list"; } + description "Flow Collector Bucket Entry"; } - // Rel-def from record - container rsrecord-items { + container rsrecordPAtt-items { - // Added containment as a singleton: Prefix=rsrecord - // Acquired From Package flow - uses flow_RsRecord_source-group; + uses analytics_RsRecordPAtt_source-group; + description "Record Policy Attachment"; } - } - grouping flow_ExporterBucket-group { - leaf id { - type uint8; - } - leaf description { - type string; - } - leaf hashLo { - type uint32; - } - leaf hashHi { - type uint32; - } + container rtl3VrfMonitorAtt-items { - // Rel-def from exporter1 - container rsexporter1-items { + list RtL3VrfMonitorAtt-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=rsexporter1 - // Acquired From Package flow - uses flow_RsExporter1_source-group; + uses l3_RtL3VrfMonitorAtt_target-group; + description "Vrf Reference to Analytics monitor. list"; + } + description "Vrf Reference to Analytics monitor."; } + } - // Rel-def from exporter2 - container rsexporter2-items { + grouping analytics_CollectorBucket-group { + description "Flow Collector Bucket Entry"; - // Added containment as a singleton: Prefix=rsexporter2 - // Acquired From Package flow - uses flow_RsExporter2_source-group; - } - } + // Collector bucket identifier + leaf id { - grouping flow_Sampler-group { - leaf name { - type string; - } - leaf description { - type string; + type analytics_CollBucketId; + description "Flow Collector Bucket Id"; } - // Type is an MO-Defined-Type - leaf mode { - description "Sampler mode"; + // HashLo value for this collector bucket + leaf hashLo { - // Type is an MO-Defined-Type - type flow_SamplerMode; - } - leaf param1 { - type uint32; - } - leaf param2 { - type uint32; + type analytics_HashT; + description "Collector Bucket Hash Low Value"; } - } - - grouping flow_ClassMap-group { - // class map name - // Type is an MO-Defined-Type - leaf name { - description "Name of class-map"; + // HashHi value for this collector bucket + leaf hashHi { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type analytics_HashT; + description "Collector Bucket Hash High Value"; } - // match access-group - container acl-items { - list MatchAcl-list { - key "name"; + leaf descr { - // Added containment: Prefix=acl - // Acquired From Package flow - uses flow_MatchAcl-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping flow_MatchAcl-group { + container rscollectorAtt-items { - // ACL to match - // Type is an MO-Defined-Type - leaf name { - description "Match using ACL"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type acl_Name; + uses analytics_RsCollectorAtt_source-group; + description "Reference to Collector list"; + } + description "Reference to Collector"; } } - grouping flow_PolicyMap-group { + grouping analytics_Profile-group { + description "Profile"; - // policy map name - // Type is an MO-Defined-Type - leaf name { - description "Name of policy-map"; + // Collect interval + leaf collectIntvl { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type analytics_CollIntvl; + description "Collect Interval in Milliseconds"; } - // match a class-map - container cmap-items { - list MatchClassMap-list { - key "name"; + // Source port + leaf srcPort { - // Added containment: Prefix=cmap - // Acquired From Package flow - uses flow_MatchClassMap-group; - } + type analytics_L4Port; + description "Source L4 Port for the Analytics packets"; } - } - - grouping flow_MatchClassMap-group { - // use class-map with this name - // Type is an MO-Defined-Type - leaf name { - description "Match using class-map"; + // IP packet id shift + leaf ipPktIdShift { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type analytics_IpPktIdShift; + description "Analytics IP Packet Id Shift"; } - // set Flow Monitor - container fm-items { + // Burst interval shift + leaf burstIntvlShift { - // Added containment as a singleton: Prefix=fm - // Acquired From Package flow - uses flow_SetMonitor-group; + type analytics_BurstIntvlShift; + description "Timestamp Shift Value for Burst Interval"; } - } - - grouping flow_SetMonitor-group { - // Rel-def from monitor - container rsmonitor-items { + // Collector export packet MTU + leaf mtu { - // Added containment as a singleton: Prefix=rsmonitor - // Acquired From Package flow - uses flow_RsMonitor_source-group; + type analytics_Mtu; + description "MTU for the Analytics flow record packets."; } - } - grouping flow_HwProfile-group { - leaf name { - type string; - } - leaf description { - type string; - } - leaf exportInterval { - type uint32; - default "100"; + // Sequence number guess threshold low + leaf seqNumGuessThreshLo { + + type analytics_ThresholdT; + description "Sequence Number Guess Threshold Low"; } - // Type is an MO-Defined-Type - leaf sourcePort { - description "Source L4 Port"; + // Sequence number guess threshold high + leaf seqNumGuessThreshHi { - // Type is an MO-Defined-Type - type flow_L4Port; - } - leaf ipPacketIdShift { - type uint8; - } - leaf burstIntervalShift { - type uint8; + type analytics_ThresholdT; + description "Sequence Number Guess Threshold High"; } - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + leaf descr { - // Type is an MO-Defined-Type - type flow_Mtu; + type naming_Descr; + description "Description of the specified attribute"; } - container sngt-items { + leaf name { - // Added containment as a singleton: Prefix=sngt - // Acquired From Package flow - uses flow_SeqNumGuessThreshold-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container plb-items { + + // Payload length bin + container payloadlenbin-items { list PayloadLenBin-list { key "id"; - // Added containment: Prefix=plb - // Acquired From Package flow - uses flow_PayloadLenBin-group; + uses analytics_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - container tohlb-items { + + // TCP options header length bin + container tcpopthdrlenbin-items { list TCPOptHdrLenBin-list { key "id"; - // Added containment: Prefix=tohlb - // Acquired From Package flow - uses flow_TCPOptHdrLenBin-group; + uses analytics_TCPOptHdrLenBin-group; + description "TCP optional header length bin entry list"; } + description "TCP optional header length bin entry"; } - container rwsb-items { - list ReceiveWindowSizeBin-list { + + // Receive window size bin + container rcvwindowszbin-items { + list RcvWindowSzBin-list { key "id"; - // Added containment: Prefix=rwsb - // Acquired From Package flow - uses flow_ReceiveWindowSizeBin-group; + uses analytics_RcvWindowSzBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping flow_SeqNumGuessThreshold-group { - leaf lo { - type uint32; - } - leaf hi { - type uint32; - } - } + grouping analytics_PayloadLenBin-group { + description "Payload length bin entry"; - grouping flow_PayloadLenBin-group { + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_PayloadLenIdT; + description "Payload Length Bin Id"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_PayloadLen; + type analytics_PayloadLenT; + description "Analytics payload bin low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_PayloadLen; + type analytics_PayloadLenT; + description "Analytics payload bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_TCPOptHdrLenBin-group { + grouping analytics_TCPOptHdrLenBin-group { + description "TCP optional header length bin entry"; + + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_TCPOptHdrLenIdT; + description "TCP option header length bin ID"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_TCPOptHdrLen; + type analytics_TCPOptHdrLenT; + description "Analytics TCP option header bin Low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_TCPOptHdrLen; + type analytics_TCPOptHdrLenT; + description "Analytics TCP option header bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_ReceiveWindowSizeBin-group { + grouping analytics_RcvWindowSzBin-group { + description "Receive window size bin entry"; + + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_RcvWindowSzIdT; + description "Receive window size bin ID"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_ReceiveWindowSize; + type analytics_RcvWindowSzT; + description "Analytics Receive Window Size header bin low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_ReceiveWindowSize; + type analytics_RcvWindowSzT; + description "Analytics Receive Window Size header bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_FwdInstTarget-group { - leaf slot { - type uint8 { - range "1..64"; - } + grouping analytics_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier + leaf id { + + type analytics_FwdInstTargetId; + description "Analytics Target identifier"; } - leaf asic { - type uint8 { - range "1..10"; - } + + // Collector identifier provided by the analytics controller + leaf collectorId { + + type analytics_CollectorId; + description "Analytics exporter Id to identify the exporting hardware instance."; } - leaf slice { - type uint8 { - range "1..10"; - } + + // Default filtering policy + leaf DefPolicy { + + type analytics_DefPolicyT; + description "Default Filtering Policy"; } - leaf exporterId { - type uint32; + + // IPv4 Hit Count + leaf ipv4Hit { + + type analytics_hitCount; + description "Analytics IPv4 Flow Hit Count"; } - // Service Policy - container sp-items { - list ServicePolicy-list { - key "direction"; + // IPv6 Hit Count + leaf ipv6Hit { - // Added containment: Prefix=sp - // Acquired From Package flow - uses flow_ServicePolicy-group; - } + type analytics_hitCount; + description "Analytics IPv6 Flow Hit Count"; } - // Rel-def from hwProfile - container rshwProfile-items { + // CE Hit Count + leaf ceHit { - // Added containment as a singleton: Prefix=rshwProfile - // Acquired From Package flow - uses flow_RsHwProfile_source-group; + type analytics_hitCount; + description "Analytics CE Flow Hit Count"; } - } - grouping flow_ServicePolicy-group { + // IPv4 Create Count + leaf ipv4Create { - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; + type analytics_createCount; + description "Analytics IPv4 Flow Create Count"; + } - // Type is an MO-Defined-Type - type flow_Direction; + // IPv6 Create Count + leaf ipv6Create { + + type analytics_createCount; + description "Analytics IPv6 Flow Create Count"; } - // Rel-def from pmap - container rspmap-items { + // CE Create Count + leaf ceCreate { - // Added containment as a singleton: Prefix=rspmap - // Acquired From Package flow - uses flow_RsPmap_source-group; + type analytics_createCount; + description "Analytics CE Flow Create Count"; + } + leaf exportCount { + type uint32; + description "Analytics Flow Export Count"; + } + leaf skipCount { + type uint32; + description "Analytics Flow Skip Count"; } - } - grouping ngoam_Entity-group { + // IP filter type + leaf fltType { - // Holds NGOAM entity information - container xcon-items { + type analytics_FltType; + description "Analytics Target filter type"; + } - // Added containment as a singleton: Prefix=xcon - // Acquired From Package ngoam - uses ngoam_Xcon-group; + // Direction + leaf dir { + + type analytics_DirectionT; + description "Analytics profile direction"; } - // NGOAM Profile Object - container profile-items { - list Profile-list { - key "profId"; + container rsprofAtt-items { - // Added containment: Prefix=profile - // Acquired From Package ngoam - uses ngoam_Profile-group; - } + uses analytics_RsProfAtt_source-group; + description "Reference to profile."; } - // NGOAM InstallACL Object - container installacl-items { + container rspolicyAtt-items { - // Added containment as a singleton: Prefix=installacl - // Acquired From Package ngoam - uses ngoam_InstallAcl-group; + uses analytics_RsPolicyAtt_source-group; + description "Reference to policy."; } - // NGOAM Authentication Object - container authentication-items { + container dbgStatistics-items { - // Added containment as a singleton: Prefix=authentication - // Acquired From Package ngoam - uses ngoam_Authentication-group; + uses analytics_Statistics-group; + description "Analytics Statistics"; } + } - // NGOAM Connectivity Check Object - container cc-items { - list ConnectCheck-list { - key "ccId"; + grouping analytics_Policy-group { + description "Policy"; - // Added containment: Prefix=cc - // Acquired From Package ngoam - uses ngoam_ConnectCheck-group; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // NGOAM Xconnect config Object - container xconnect-items { + // Match ACL + container acl-items { + list MatchAcl-list { + key "name"; - // Added containment as a singleton: Prefix=xconnect - // Acquired From Package ngoam - uses ngoam_XconCfg-group; + uses analytics_MatchAcl-group; + description "Match ACL list"; + } + description "Match ACL"; } - } - grouping ngoam_Xcon-group { + container rtl3VrfPolicyAtt-items { - // Interface name for list of all egress interfaces - container bd-items { - list XConnect-list { + list RtL3VrfPolicyAtt-list { config "false"; - key "swBd"; + key "tDn"; - // Added containment: Prefix=bd - // Acquired From Package ngoam - uses ngoam_XConnect-group; + uses l3_RtL3VrfPolicyAtt_target-group; + description "Vrf Reference to Analytics policy. list"; } + description "Vrf Reference to Analytics policy."; } } - grouping ngoam_XConnect-group { - leaf swBd { - config "false"; - type uint16; + grouping analytics_MatchAcl-group { + description "Match ACL"; + leaf aclName { + type string; + description "Match using ACL"; } - // Xc state - // Type is an MO-Defined-Type - leaf xcState { - config "false"; - description "xconnect state - could have multiple states at the same time"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type ngoam_xcState; + type analytics_FltType; + description "ACL Filter Type"; } - leaf peerIp { - config "false"; - type address_Ipv4; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf vni { - config "false"; - type uint32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf localPort { - config "false"; - type string; + } + + grouping analytics_HwTelemetry-group { + description "Entity for all Hardware Telemetry features"; + + container fte-items { + + uses fte_Fte-group; + description "Configure Flow Table Events"; } - // Local port state - // Type is an MO-Defined-Type - leaf localPortState { - config "false"; - description "Local Port State"; + // Contains BDC instance info + container visibility-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses visibility_Visibility-group; + description "Entity MO for all Visibility Features"; } - leaf localVpcPort { - config "false"; - type string; + + container inbandtelemetry-items { + + uses inbandTelemetry_Int-group; + description "int"; } - // Local Vpc port state - // Type is an MO-Defined-Type - leaf localVpcPortState { - config "false"; - description "Local Vpc Port State"; + container netflow-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses netflow_Netflow-group; + description "Netflow entity"; } - leaf remotePort { - config "false"; - type string; + + container sflow-items { + + uses sflow_Sflow-group; + description "Sflow entity"; } - // Remote port state - // Type is an MO-Defined-Type - leaf remotePortState { - config "false"; - description "Remote Port State"; + container ssx-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses ssx_Ssx-group; + description "ssx"; } - leaf remoteVpcPort { - config "false"; - type string; + } + + grouping fte_Fte-group { + description "Configure Flow Table Events"; + leaf enable { + type boolean; + description "Enable FTE instance"; } - // Remote Vpc port state - // Type is an MO-Defined-Type - leaf remoteVpcPortState { - config "false"; - description "Remote Vpc Port State"; + // Holds FTE instance information + container inst-items { + list Inst-list { + key "mode"; - // Type is an MO-Defined-Type - type ngoam_xcPortState; - } - leaf lastChgTs { - config "false"; - type string; + uses fte_Inst-group; + description "Configure FTE Instance list"; + } + description "Configure FTE Instance"; } } - grouping ngoam_Profile-group { + grouping fte_Inst-group { + description "Configure FTE Instance"; - // Prof. ID - // Type is an MO-Defined-Type - leaf profId { - description "Profile ID"; + // FTE mode + leaf mode { - // Type is an MO-Defined-Type - type ngoam_ProfId; + type fte_ModeT; + description "Configure the type of FTE instance"; } - // Description - // Type is an MO-Defined-Type - leaf desc { - description "Description"; + // FTE Collector info + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Desc; + uses fte_Collector-group; + description "Configure the FTE Collector Information list"; + } + description "Configure the FTE Collector Information"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // FTE Record + container record-items { + list Record-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; + uses fte_Record-group; + description "Configure FTE Record Information list"; + } + description "Configure FTE Record Information"; } - // dot1q interface - // Type is an MO-Defined-Type - leaf dot1qIf { - description "dot1q"; + // FTE Events + container events-items { + list Events-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; + uses fte_Events-group; + description "Configure FTE Events Information list"; + } + description "Configure FTE Events Information"; } - // hop - // Type is an MO-Defined-Type - leaf hop { - description "hop count"; + // FTE Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Hop; + uses fte_Monitor-group; + description "Configure FTE Monitor Information list"; + } + description "Configure FTE Monitor Information"; } - // Egress Interface - // Type is an MO-Defined-Type - leaf interface { - description "Interface"; + // System FTE + container sysfte-items { + list SysFte-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Interface; + uses fte_SysFte-group; + description "Configure System Flow Table Events list"; + } + description "Configure System Flow Table Events"; } + } - // Oam Channel - // Type is an MO-Defined-Type - leaf oamChannel { - description "OAM channel type"; + grouping fte_Collector-group { + description "Configure the FTE Collector Information"; - // Type is an MO-Defined-Type - type ngoam_OamChannel; + // Collector node VRF + leaf vrfName { + + type fte_VrfName; + description "Configure Collector Entity VRF"; + } + leaf dstAddr { + type address_Ip; + description "Configure Collector Entity IP"; } - // Payload Pad - // Type is an MO-Defined-Type - leaf payloadPad { - description "Payload padding pattern"; + // Source UDP Port + leaf srcPort { - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type l4_Port; + description "Configure Collector Entity Source L4 Port"; + } + leaf srcAddr { + type address_Ip; + description "Configure Collector Entity Source IP Address"; + } + leaf id { + type uint32; + description "Configure Collector Entity id Value"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port Range"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_Sport; + type naming_Descr; + description "Description of the specified attribute"; } - // NGOAM FlowFwd Object - container flowfwd-items { + leaf name { - // Added containment as a singleton: Prefix=flowfwd - // Acquired From Package ngoam - uses ngoam_FlowFwd-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping ngoam_FlowFwd-group { - leaf forward { + grouping fte_Record-group { + description "Configure FTE Record Information"; + leaf dstIpv4 { type boolean; + description "Configure the Match ipv4 destination address for FTE Record"; } - - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; - - // Type is an MO-Defined-Type - type ngoam_Dot1qFlow; + leaf dstIpv6 { + type boolean; + description "Configure the Match ipv6 destination address for FTE Record"; } - leaf ipDest { - type address_Ipv4; + leaf dstMac { + type boolean; + description "Configure the Match datalink mac destination address for FTE Record"; } - leaf ipSrc { - type address_Ipv4; + leaf dstPortIpv4 { + type boolean; + description "Configure the Match ipv4 transport destination port for FTE Record"; } - leaf ipv6Dest { - type address_Ipv6; + leaf dstPortIpv6 { + type boolean; + description "Configure the Match ipv6 transport destination port for FTE Record"; } - leaf ipv6Src { - type address_Ipv6; + leaf etherType { + type boolean; + description "Configure the Match datalink ethertype for FTE Record"; } - leaf macDest { - type address_Mac; + leaf flowLabel { + type boolean; + description "Configure the Match ipv6 flow-label for FTE Record"; } - leaf macSrc { - type address_Mac; + leaf protoIpv4 { + type boolean; + description "Configure the Match ipv4 protocol for FTE Record"; } - - // port destination - // Type is an MO-Defined-Type - leaf portDest { - description "TCP or UDP port destination"; - - // Type is an MO-Defined-Type - type ngoam_DestPort; + leaf protoIpv6 { + type boolean; + description "Configure the Match ipv6 protocol for FTE Record"; } - - // port source - // Type is an MO-Defined-Type - leaf portSrc { - description "TCP or UDP port source"; - - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf srcIpv4 { + type boolean; + description "Configure the Match ipv4 source address for FTE Record"; } - - // Flow protocol number - // Type is an MO-Defined-Type - leaf protocol { - description "Flow protocol number"; - - // Type is an MO-Defined-Type - type ngoam_Protocol; + leaf srcIpv6 { + type boolean; + description "Configure the Match ipv6 source address for FTE Record"; } - leaf packet { - type string; + leaf srcMac { + type boolean; + description "Configure the Match datalink mac source address for FTE Record"; } - } - - grouping ngoam_InstallAcl-group { - leaf enabled { + leaf srcPortIpv4 { type boolean; + description "Configure the Match ipv4 transport source-port for FTE Record"; } - } - - grouping ngoam_Authentication-group { - - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "Authentication key"; - - // Type is an MO-Defined-Type - type ngoam_AuthKey; + leaf srcPortIpv6 { + type boolean; + description "Configure the Match ipv6 transport source-port for FTE Record"; + } + leaf tosIpv4 { + type boolean; + description "Configure the Match ipv4 tos for FTE Record"; + } + leaf tosIpv6 { + type boolean; + description "Configure the Match ipv6 tos for FTE Record"; } - } - - grouping ngoam_ConnectCheck-group { - // Connectivity check id - // Type is an MO-Defined-Type - leaf ccId { - description "Ngoam Connectivity check ID"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_ProfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Prof. id - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_ProfIdCC; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf dstIp { - type address_Ipv4; + } + + grouping fte_Events-group { + description "Configure FTE Events Information"; + leaf groupDropEvents { + type boolean; + description "Configure the group drop events for FTE Event"; } - leaf dstIpv6 { - type address_Ipv6; + leaf groupLatencyEvents { + type boolean; + description "Configure the group latency events for FTE Event"; } - leaf dstMAC { - type address_Mac; + leaf aclDrops { + type boolean; + description "Configure the capture acl-drops in fte-event-drop-events mode for FTE Event"; } - leaf dstUnknown { + leaf bufferDrops { type boolean; + description "Configure the capture buffer-drops in fte-event-drop-events mode for FTE Record"; } - leaf srcIp { - type address_Ipv4; + leaf fwdDrops { + type boolean; + description "Configure the capture forward-drops in fte-event-drop-events mode for FTE Record"; } - leaf srcIpv6 { - type address_Ipv6; + leaf blackHole { + type boolean; + description "Configure the capture blackhole in fte-event-drop-events mode for FTE Record"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // Latency under FTE + leaf latencyThreshold { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type fte_LatencyValue; + description "Configure FTE Latency Threshold limit"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + // Latency Unit under FTE + leaf latencyThresholdUnit { - // Type is an MO-Defined-Type - type ngoam_Sport; + type fte_LatencyUnit; + description "Configure FTE Latency Threshold Unit"; } - // count - // Type is an MO-Defined-Type - leaf count { - description "Number of packets"; + // Latency events flow count under FTE + leaf latencyFlowCount { - // Type is an MO-Defined-Type - type ngoam_NumPkt; + type fte_FlowCountValue; + description "Configure FTE Latency events flow count"; } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Drop events flow count under FTE + leaf dropFlowCount { - // Type is an MO-Defined-Type - type ngoam_Timeout; + type fte_FlowCountValue; + description "Configure FTE drop events flow count"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Event Export max + leaf eventExportMax { - // Type is an MO-Defined-Type - type ngoam_SendIntvlCC; + type fte_EventExportMax; + description "Configure FTE Event Export Max Value"; } - // Type is an MO-Defined-Type - leaf dataPattern { - description "data pattern"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type naming_Descr; + description "Description of the specified attribute"; } - // packet size - // Type is an MO-Defined-Type - leaf packetSz { - description "Payload Size"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_PktSz; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } + } - // The vrf in which it is running - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; - - // Type is an MO-Defined-Type - type ngoam_Vrf; - } + grouping fte_Monitor-group { + description "Configure FTE Monitor Information"; - // The VxLAN vni - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_VnidCC; + type naming_Descr; + description "Description of the specified attribute"; } - // Egress Interface id - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + leaf name { - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MAC Interface - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; - } + container rsrecordAtt-items { - // dot1q - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + list RsRecordAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; - } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; - } - leaf payload_srcport { - type uint16; - } - leaf payload_dstport { - type uint16; + uses fte_RsRecordAtt_source-group; + description "Attach FTE Record to FTE Monitor list"; + } + description "Attach FTE Record to FTE Monitor"; } - // protocol - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; - - // Type is an MO-Defined-Type - type ngoam_Protocol; - } + container rscollectorAtt-items { - // Source Interface - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type nw_IfId; + uses fte_RsCollectorAtt_source-group; + description "Attach FTE Collector to FTE Monitor list"; + } + description "Attach FTE Collector to FTE Monitor"; } - // Result for fabric ping - container pingnverslt-items { - list PingNveRslt-list { - config "false"; - key "sessionId"; + container rseventsAtt-items { - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; + list RsEventsAtt-list { + key "tDn"; + + uses fte_RsEventsAtt_source-group; + description "Attach FTE Events to FTE Monitor list"; } + description "Attach FTE Events to FTE Monitor"; } } - grouping ngoam_PingNveRslt-group { + grouping fte_SysFte-group { + description "Configure System Flow Table Events"; - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_SessionId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type - type action_Descr; + type naming_Descr; + description "Description of the specified attribute"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; - } + container rsmonitorAtt-items { - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + list RsMonitorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type action_Type; + uses fte_RsMonitorAtt_source-group; + description "Attach FTE Monitor to System FTE list"; + } + description "Attach FTE Monitor to System FTE"; } + } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + grouping visibility_Visibility-group { + description "Entity MO for all Visibility Features"; - // Type is an MO-Defined-Type - type action_RetentionSize; + // Contains Buffer Drop instance info + container bufferdrop-items { + + uses bd_BufferDropInst-group; + description "Instance MO for Buffer Drop"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Contains Buffer Latency instance info + container bufferlatency-items { - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + uses bl_BufferLatencyInst-group; + description "Instance MO for Buffer Latency"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Contains INT Clone MD instance info + container intclonemd-items { - // Type is an MO-Defined-Type - type action_Qual; + uses ipt_IntCloneMdInst-group; + description "Instance MO for INT Clone MD"; } - leaf ack { - config "false"; + } + + grouping bd_BufferDropInst-group { + description "Instance MO for Buffer Drop"; + leaf isEnabled { type boolean; + default "false"; + description "Denotes whether Buffer Drop feature is enabled"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; + // Contains Buffer Drop Monitor info + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type mo_TStamp; + uses bd_Monitor-group; + description "Monitor MO for Buffer Drop Capture list"; + } + description "Monitor MO for Buffer Drop Capture"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Buffer Drop Collector info + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type action_OperSt; - } - leaf replyIp { - config "false"; - type address_Ipv4; - } - leaf replyIpv6 { - config "false"; - type address_Ipv6; - } - leaf nodeName { - config "false"; - type string; - } - leaf errorCode { - config "false"; - type string; + uses bd_Collector-group; + description "Configure the Buffer Drop Collector Information list"; + } + description "Configure the Buffer Drop Collector Information"; } - leaf failReason { - config "false"; - type string; + + // System for Buffer Drop + container system-items { + + uses bd_System-group; + description "Configure System for Buffer Drop Capture"; } + } - // Source port - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf sPort { - config "false"; - description "Source Port"; + grouping bd_Monitor-group { + description "Monitor MO for Buffer Drop Capture"; - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf name { + + type bd_MonitorName; + description "Identifying name of the monitor"; } - // packet size - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf packetSz { - config "false"; - description "Packet Size"; + leaf description { - // Type is an MO-Defined-Type - type ngoam_PktSz; + type bd_Description; + description "Description of the specified monitor"; } - // Number of packets sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf sentPkts { - config "false"; - description "Sent Packets"; + leaf aclName { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Number of packets not sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf notSentPkts { - config "false"; - description "Not Sent Packets"; + leaf v6AclName { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Number of packets received - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf rcvdPkts { - config "false"; - description "Received Packets"; + // SAMPLING PROPERTIES Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_SamplingRate; + description "Value of the sampling rate for the given queues"; } - // Minimum round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf minRtt { - config "false"; - description "Minimum Round Trip Time"; + // Following 2 properties are only for MB Sampling Time intervals + leaf samplingMbRate { - // Type is an MO-Defined-Type - type ngoam_Rtt; + type bd_SamplingMbRate; + description "Sampling time intervals for the given range of queues"; } - // Average round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf avgRtt { - config "false"; - description "Average Round Trip Time"; + // Sampling Packets intervals + leaf samplingMbPackets { - // Type is an MO-Defined-Type - type ngoam_Rtt; + type bd_SamplingMbPackets; + description "Sampling packet count for the given range of queues"; } + container queue-items { + list Queue-list { + key "id"; - // Maximum round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf maxRtt { - config "false"; - description "Maximum Round Trip Time"; - - // Type is an MO-Defined-Type - type ngoam_Rtt; + uses bd_Queue-group; + description "Queue MOs for Buffer Drop Capture. list"; + } + description "Queue MOs for Buffer Drop Capture."; } - // Total Rtt of all the packets sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf totalRtt { - config "false"; - description "Total Round Trip Time"; + container rscollectorAtt-items { - // Type is an MO-Defined-Type - type ngoam_Rtt; + list RsCollectorAtt-list { + key "tDn"; + + uses bd_RsCollectorAtt_source-group; + description "Attach Buffer Drop Collector to Buffer Drop Monitor list"; + } + description "Attach Buffer Drop Collector to Buffer Drop Monitor"; } } - grouping ngoam_XconCfg-group { + grouping bd_Queue-group { + description "Queue MOs for Buffer Drop Capture."; - // xconnect_hb_interval - // Type is an MO-Defined-Type - leaf hbinterval { - description "Heartbeat interval"; + leaf id { - // Type is an MO-Defined-Type - type ngoam_HbInterval; + type bd_QueueId; + description "Identifying number for the queue (0-7)"; } } - grouping nxapi_Inst-group { + grouping bd_Collector-group { + description "Configure the Buffer Drop Collector Information"; - // Type is an MO-Defined-Type - leaf httpPort { - description "HTTP Port"; + leaf description { - // Type is an MO-Defined-Type - type nxapi_port; + type bd_Description; + description "Description of the specified collector"; } - // Type is an MO-Defined-Type - leaf httpsPort { - description "HTTPS Port"; + leaf destination { - // Type is an MO-Defined-Type - type nxapi_port; + type nw_IfId; + description "Destination config under the current collector"; } - // Type is an MO-Defined-Type - leaf useVrf { - description "Vrf for NX-API"; + leaf descr { - // Type is an MO-Defined-Type - type os_OsString; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf certFile { - description "Certificate file for NX-API"; + leaf name { - // Type is an MO-Defined-Type - type os_OsString; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } + } - // Type is an MO-Defined-Type - leaf keyFile { - description "Key file for NX-API"; + grouping bd_System-group { + description "Configure System for Buffer Drop Capture"; - // Type is an MO-Defined-Type - type os_OsString; - } - leaf certEnable { - type boolean; + container rsmonitorAttch-items { + + list RsMonitorAttch-list { + key "tDn"; + + uses bd_RsMonitorAttch_source-group; + description "Monitor Attachment to System Buffer Drop list"; + } + description "Monitor Attachment to System Buffer Drop"; } - leaf sslCiphersWeak { + } + + grouping bl_BufferLatencyInst-group { + description "Instance MO for Buffer Latency"; + leaf isEnabled { type boolean; default "false"; + description "Denotes whether Buffer Latency feature is enabled"; } + container record-items { + list Record-list { + key "name"; - // Type is an MO-Defined-Type - leaf sslProtocols { - description "String of space separated SSL protocols to be supported"; + uses bl_Record-group; + description "Configure Buffer Latency Record Information list"; + } + description "Configure Buffer Latency Record Information"; + } - // Type is an MO-Defined-Type - type os_OsString; + // Contains Buffer Latency Monitor info + container monitor-items { + list Monitor-list { + key "name"; + + uses bl_Monitor-group; + description "Monitor MO for Buffer Latency list"; + } + description "Monitor MO for Buffer Latency"; } - } - grouping poe_Entity-group { + // Buffer Latency Collector info + container collector-items { + list Collector-list { + key "name"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses bl_Collector-group; + description "Configure the Buffer Latency Collector Information list"; + } + description "Configure the Buffer Latency Collector Information"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Contains Buffer Latency Queue Threshold info + container threshold-items { + list Threshold-list { + key "name"; + + uses bl_Threshold-group; + description "Threshold MO for Buffer Latency Queues list"; } + description "Threshold MO for Buffer Latency Queues"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // System Buffer Latency + container system-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses bl_System-group; + description "Configure System for Buffer Latency"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping bl_Record-group { + description "Configure Buffer Latency Record Information"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + leaf description { + + type bl_Description; + description "Description of the specified record"; } - // This class shall store the global configuration - // for a running poe instance - container inst-items { + leaf descr { - // Added containment as a singleton: Prefix=inst - // Acquired From Package poe - uses poe_Inst-group; + type naming_Descr; + description "Description of the specified attribute"; } - container physif-items { - list PhysIf-list { + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + container interface-items { + list Interface-list { key "id"; - // Added containment: Prefix=physif - // Acquired From Package poe - uses poe_PhysIf-group; + uses bl_Interface-group; + description "Interface configuration MO for Buffer Latency. list"; } + description "Interface configuration MO for Buffer Latency."; } } - grouping poe_Inst-group { + grouping bl_Interface-group { + description "Interface configuration MO for Buffer Latency."; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type nw_IfId; + description "The interface id for the session"; + } + container queue-items { + list Queue-list { + key "id"; + + uses bl_Queue-group; + description "Queue Config MO for Buffer Latency list"; } + description "Queue Config MO for Buffer Latency"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping bl_Queue-group { + description "Queue Config MO for Buffer Latency"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf id { + + type bl_QueueId; + description "Identifying Queue number for Buffer Latency"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rsthresholdAtt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses bl_RsThresholdAtt_source-group; + description "Queue Config Attachment to Threshold Values"; } } - grouping poe_PhysIf-group { + grouping bl_Monitor-group { + description "Monitor MO for Buffer Latency"; - // Type is an MO-Defined-Type - leaf portMode { - description "POE interface's current port mode "; + leaf name { - // Type is an MO-Defined-Type - type poe_poePortmode; - } - leaf maxConsumption { - type uint64; + type bl_Name; + description "Identifying name of the monitor"; } - // Type is an MO-Defined-Type - leaf portPriority { - description "POE interface's current port Priority "; + leaf description { - // Type is an MO-Defined-Type - type poe_poePriority; + type bl_Description; + description "Description of the specified monitor"; } - // Type is an MO-Defined-Type - leaf portPolice { - description "POE interface's current port police action "; + leaf aclName { - // Type is an MO-Defined-Type - type poe_poePolice; + type bl_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - leaf portDefaultConsumption { - type uint64; + + leaf v6AclName { + + type bl_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bl_SamplingRate; + description "Value of the sampling rate for the given queues"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sampling Time intervals + leaf samplingMbRate { - // Type is an MO-Defined-Type - type naming_Descr1024; + type bl_SamplingMbRate; + description "Sampling time intervals for the given range of queues"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Sampling Packets intervals + leaf samplingMbPackets { - // Type is an MO-Defined-Type - type nw_IfId; + type bl_SamplingMbPackets; + description "Sampling packet count for the given range of queues"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - container rtvrfMbr-items { + container rsrecordAtt-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + list RsRecordAtt-list { + key "tDn"; + + uses bl_RsRecordAtt_source-group; + description "Attach Buffer Latency Record to Buffer Latency Monitor list"; + } + description "Attach Buffer Latency Record to Buffer Latency Monitor"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; + container rscollectorAtt-items { + + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses bl_RsCollectorAtt_source-group; + description "Attach Buffer Latency Collector to Buffer Latency Monitor list"; } + description "Attach Buffer Latency Collector to Buffer Latency Monitor"; } } - grouping qosm_Entity-group { + grouping bl_Collector-group { + description "Configure the Buffer Latency Collector Information"; + + leaf description { + + type bl_Description; + description "Description of the specified collector"; + } + + leaf destination { + + type nw_IfId; + description "Destination config under the current collector"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + grouping bl_Threshold-group { + description "Threshold MO for Buffer Latency Queues"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf name { + + type bl_Name; + description "Name of the threshold for Buffer Latency Queues"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf value { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type bl_ThresholdValue; + description "Value of the threshold for Buffer Latency queues"; } + } - // Qos interface defintion. Holds information about qos - // operated at a class level - container class-items { - list Class-list { - config "false"; - key "qosGrp"; + grouping bl_System-group { + description "Configure System for Buffer Latency"; - // Added containment: Prefix=class - // Acquired From Package qosm - uses qosm_Class-group; + container rsmonitorAttch-items { + + list RsMonitorAttch-list { + key "tDn"; + + uses bl_RsMonitorAttch_source-group; + description "Monitor Attachment to System Buffer Latency list"; } + description "Monitor Attachment to System Buffer Latency"; } + } - // Qos interface defintion. Holds information about qos - // operated at a interface level - container if-items { - list If-list { - config "false"; - key "id"; + grouping ipt_IntCloneMdInst-group { + description "Instance MO for INT Clone MD"; + leaf isEnabled { + type boolean; + default "false"; + description "Denotes whether INT Clone MD feature is enabled"; + } - // Added containment: Prefix=if - // Acquired From Package qosm - uses qosm_If-group; + // Source Record + container sourcerecord-items { + list SourceRecord-list { + key "name"; + + uses ipt_SourceRecord-group; + description "Configure INT Clone MD Source Record Information list"; } + description "Configure INT Clone MD Source Record Information"; } - // Holder for qos fabric class policy, each class describes - // qos attributes like mtu, etc - container classp-items { - list Class-list { - config "false"; - key "qosGrp"; + // Contains Source Monitor info + container sourcemonitor-items { + list SourceMonitor-list { + key "name"; - // Added containment: Prefix=classp - // Acquired From Package qosp - uses qosp_Class-group; + uses ipt_SourceMonitor-group; + description "Source Monitor MO for INT Clone MD list"; } + description "Source Monitor MO for INT Clone MD"; } - // Qos classification rules based on dscp values - container dscp-items { - list DscpRule-list { - config "false"; - key "from to qosGrp markDscp"; + // INT Clone MD Sink Collector info + container sinkcollector-items { + list SinkCollector-list { + key "name"; - // Added containment: Prefix=dscp - // Acquired From Package qosp - uses qosp_DscpRule-group; + uses ipt_SinkCollector-group; + description "Configure the INT Clone MD Collector Information list"; } + description "Configure the INT Clone MD Collector Information"; } - // Qos classification rules based on dot1p values - container dot1p-items { - list Dot1pRule-list { - config "false"; - key "from to qosGrp markDscp"; + // Sink Record + container sinkrecord-items { + list SinkRecord-list { + key "name"; - // Added containment: Prefix=dot1p - // Acquired From Package qosp - uses qosp_Dot1pRule-group; + uses ipt_SinkRecord-group; + description "Configure INT Clone MD Sink Record Information list"; } + description "Configure INT Clone MD Sink Record Information"; } - // Qos classification rules based on IP values - container ip-items { - list IpRule-list { - config "false"; - key "addr"; + // Sink Monitor + container sinkmonitor-items { + list SinkMonitor-list { + key "name"; - // Added containment: Prefix=ip - // Acquired From Package qosp - uses qosp_IpRule-group; + uses ipt_SinkMonitor-group; + description "Configure System Sink Monitor for INT Clone MD list"; } + description "Configure System Sink Monitor for INT Clone MD"; } - } - grouping qosm_Class-group { + // ProbeMarker INT Clone MD + container probemarker-items { + list ProbeMarker-list { + key "value"; - // QoS Group - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "ID"; + uses ipt_ProbeMarker-group; + description "Configure ProbeMarker for INT Clone MD list"; + } + description "Configure ProbeMarker for INT Clone MD"; + } - // Type is an MO-Defined-Type - type qos_Prio; + // System for Source and Sink Monitor + container intclonemdsystem-items { + + uses ipt_IntCloneMdSystem-group; + description "Configure System for Source and Sink Monitor"; } } - grouping qosm_If-group { + grouping ipt_SourceRecord-group { + description "Configure INT Clone MD Source Record Information"; - // Interface ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // IfClass information. Holds information about qos operated - // at a per port per class level - container class-items { - list IfClass-list { - config "false"; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + // Source Interface + container sourceinterface-items { + list SourceInterface-list { key "id"; - // Added containment: Prefix=class - // Acquired From Package qosm - uses qosm_IfClass-group; + uses ipt_SourceInterface-group; + description "Ingress interface configuration MO for INT Clone MD. list"; } + description "Ingress interface configuration MO for INT Clone MD."; } } - grouping qosm_IfClass-group { + grouping ipt_SourceInterface-group { + description "Ingress interface configuration MO for INT Clone MD."; - // Class id - // Type is an MO-Defined-Type leaf id { - config "false"; - description "ID"; - // Type is an MO-Defined-Type - type qos_Prio; + type nw_IfId; + description "The interface id for the session"; } } - grouping qosp_Class-group { + grouping ipt_SourceMonitor-group { + description "Source Monitor MO for INT Clone MD"; - // Administrative state - // Type is an MO-Defined-Type - leaf admin { - config "false"; - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipt_Name; + description "Identifying name of the source monitor"; } - // mtu - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; + // ACL filter + leaf aclName { - // Type is an MO-Defined-Type - type qosp_MTU; + type ipt_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Class id - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Priority"; + leaf v6AclName { - // Type is an MO-Defined-Type - type qos_Prio; + type ipt_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Qos Class operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type qosp_OperSt; + type ipt_SamplingRate; + description "Value of the sampling rate for the given interfaces"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container rssourcerecordAtt-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + list RsSourcerecordAtt-list { + key "tDn"; + + uses ipt_RsSourcerecordAtt_source-group; + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor list"; } + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping ipt_SinkCollector-group { + description "Configure the INT Clone MD Collector Information"; + leaf dstAddr { + type address_Ip; + description "Remote Entity IP address for INT Clone MD Collector"; + } + leaf srcAddr { + type address_Ip; + description "Source IP address for INT Clone MD Collector"; } - // Congestion policy holder, describes the congestion - // parameters like congestion algo, ecn etc. These are - // applied at a per class today in the system - container cong-items { + // IPT TTL value + leaf ttl { - // Added containment as a singleton: Prefix=cong - // Acquired From Package qosp - uses qosp_Cong-group; + type ipt_Ttl; + description "IPT header TTL value for INT Clone MD Collector"; } - // Queue management policy holder, describes the queue - // threshold parameters like management method, limts, - // etc. These are applied at a per class today in the - // system - container queue-items { + // IP dscp value + leaf dscp { - // Added containment as a singleton: Prefix=queue - // Acquired From Package qosp - uses qosp_Queue-group; + type ipt_Dscp; + description "IPT header DSCP Value for INT Clone MD Collector"; } - // Buffer policy holder, describes the minimum - // guaranteed packet buffer reservations. These are - // applied at a per class today in the system - container buffer-items { + // Destination interface + leaf destination { - // Added containment as a singleton: Prefix=buffer - // Acquired From Package qosp - uses qosp_Buffer-group; + type nw_IfId; + description "Destination interface for INT Clone MD collector"; } - // Schedule policy holder, describes the minimum - // guaranteed packet buffer reservations. These are - // applied at a per class today in the system - container sched-items { + leaf descr { - // Added containment as a singleton: Prefix=sched - // Acquired From Package qosp - uses qosp_Sched-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping qosp_Cong-group { - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } + } + + grouping ipt_SinkRecord-group { + description "Configure INT Clone MD Sink Record Information"; - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // What algorithm to use when congestion happens - // Inherited From qos:ACong - // Type is an MO-Defined-Type - leaf algo { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_CongAlgo; - } - - // Explicit congestion notification (ecn) ECN is disabled for FCS, thus this is implicit - // Inherited From qos:ACong - // Type is an MO-Defined-Type - leaf ecn { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_ECN; - } - } - - grouping qosp_Queue-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Sink Interface + container sinkinterface-items { + list SinkInterface-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ipt_SinkInterface-group; + description "Sink interface configuration MO for INT Clone MD. list"; + } + description "Sink interface configuration MO for INT Clone MD."; } + } - // Queue control method (static/dynamic) - // Inherited From qos:AQueue - // Type is an MO-Defined-Type - leaf meth { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_CtrlMeth; - } + grouping ipt_SinkInterface-group { + description "Sink interface configuration MO for INT Clone MD."; - // queue limit, only applicable with static control - // method - // Inherited From qos:AQueue - // Type is an MO-Defined-Type - leaf limit { - config "false"; - description "TBD"; + leaf id { - // Type is an MO-Defined-Type - type qosp_QueueLimit; + type nw_IfId; + description "The interface id for the data egress path"; } } - grouping qosp_Buffer-group { + grouping ipt_SinkMonitor-group { + description "Configure System Sink Monitor for INT Clone MD"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ipt_Name; + description "Identifying name of the sink monitor"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + container rssinkcollectorAtt-items { - // Type is an MO-Defined-Type - type naming_Descr; + list RsSinkcollectorAtt-list { + key "tDn"; + + uses ipt_RsSinkcollectorAtt_source-group; + description "Collector Attachment to System Sink Monitor INT Clone MD list"; + } + description "Collector Attachment to System Sink Monitor INT Clone MD"; } - // Minimum buffers reserved in units of MTU - // Inherited From qos:ABuffer - // Type is an MO-Defined-Type - leaf min { - config "false"; - description "TBD"; + container rssinkrecordAtt-items { - // Type is an MO-Defined-Type - type qosp_MinBuf; + list RsSinkrecordAtt-list { + key "tDn"; + + uses ipt_RsSinkrecordAtt_source-group; + description "Sink Record Attachment to System Sink Monitor INT Clone MD list"; + } + description "Sink Record Attachment to System Sink Monitor INT Clone MD"; } } - grouping qosp_Sched-group { + grouping ipt_ProbeMarker-group { + description "Configure ProbeMarker for INT Clone MD"; + leaf value { + type uint64; + description "Denotes the probe marker value to be used for INT Clone MD feature"; + } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping ipt_IntCloneMdSystem-group { + description "Configure System for Source and Sink Monitor"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } + container rssourcemonitorAtt-items { - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + list RsSourcemonitorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ipt_RsSourcemonitorAtt_source-group; + description "Source Monitor Attachment to System list"; + } + description "Source Monitor Attachment to System"; } - // Scheduling algorithm - // Inherited From qos:ASched - // Type is an MO-Defined-Type - leaf meth { - config "false"; - description "TBD"; + container rssinkmonitorAtt-items { - // Type is an MO-Defined-Type - type qosp_SchedAlgo; + list RsSinkmonitorAtt-list { + key "tDn"; + + uses ipt_RsSinkmonitorAtt_source-group; + description "Sink Monitor Attachment to System list"; + } + description "Sink Monitor Attachment to System"; } + } - // If wrr, what is the bandwidth allocated (in %) - // Inherited From qos:ASched - // Type is an MO-Defined-Type - leaf bw { - config "false"; - description "TBD"; + grouping inbandTelemetry_Int-group { + description "int"; - // Type is an MO-Defined-Type - type qosp_BwPercent; + // Holds int instance information + container inst-items { + list Inst-list { + key "mode"; + + uses inbandTelemetry_Inst-group; + description "int Instance list"; + } + description "int Instance"; } } - grouping qosp_DscpRule-group { + grouping inbandTelemetry_Inst-group { + description "int Instance"; - // Range from - // Type is an MO-Defined-Type - leaf from { - config "false"; - description "From"; + // int mode + leaf mode { - // Type is an MO-Defined-Type - type qosp_Dscp; + type inbandTelemetry_ModeT; + description "Mode Select"; } - // Range to - // Type is an MO-Defined-Type - leaf to { + // switch profile + leaf profile { config "false"; - description "To"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type inbandTelemetry_Profile; + description "Switch Profile - Transit or End Point"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type qos_Prio; + type nw_InstCtrl; + description "Controls"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { + // Operational errors qualifier + leaf operErr { config "false"; - description "DSCP"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // INT Watchlist Acl + container watchlist-items { + list WatchlistAcl-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_OperSt; + uses inbandTelemetry_WatchlistAcl-group; + description "Watchlist Acl list"; + } + description "Watchlist Acl"; } - } - - grouping qosp_Dot1pRule-group { - // Range from - // Type is an MO-Defined-Type - leaf from { - config "false"; - description "From"; + // INT Droplist Acl + container droplist-items { + list DroplistAcl-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dot1P; + uses inbandTelemetry_DroplistAcl-group; + description "Droplist Acl list"; + } + description "Droplist Acl"; } - // Range to - // Type is an MO-Defined-Type - leaf to { - config "false"; - description "To"; + // int Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dot1P; + uses inbandTelemetry_RecordP-group; + description "int Record list"; + } + description "int Record"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // int Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses inbandTelemetry_Collector-group; + description "Collector entry list"; } + description "Collector entry"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // INT Flow Profile + container flowprof-items { + list FlowProfile-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr; + uses inbandTelemetry_FlowProfile-group; + description "Inband Telemetry Flow Profile list"; + } + description "Inband Telemetry Flow Profile"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // INT Queue Profile + container queueprof-items { + list QueueProfile-list { + key "name"; - // Type is an MO-Defined-Type - type qos_Prio; + uses inbandTelemetry_QueueProfile-group; + description "Inband Telemetry Queue Profile list"; + } + description "Inband Telemetry Queue Profile"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "DSCP"; + // INT Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dscp; + uses inbandTelemetry_Monitor-group; + description "int Monitor list"; + } + description "int Monitor"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { + key "id"; - // Type is an MO-Defined-Type - type qosp_OperSt; + uses inbandTelemetry_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; } } - grouping qosp_IpRule-group { - leaf addr { - config "false"; - type address_Ip; + grouping inbandTelemetry_WatchlistAcl-group { + description "Watchlist Acl"; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type + // ACL name leaf name { + + type acl_Name; + description "Name of Access lists"; + } + + // fragments + leaf fragments { + + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; + } + + // toggle per-entry statistics + leaf perACEStatistics { + + type acl_ACEStats; + description "Per Access Control Entries statistics"; + } + leaf configStatus { config "false"; - description "Name"; + type uint32; + description "config success indicator"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // INT Watchlist Ace + container ace-items { + list WatchlistAce-list { + key "seqNum"; + + uses inbandTelemetry_WatchlistAce-group; + description "Watchlist Ace list"; } + description "Watchlist Ace"; } + } + + grouping inbandTelemetry_WatchlistAce-group { + description "Watchlist Ace"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type qos_Prio; + type acl_RemarkStr; + description "Access-list entry comment"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "DSCP"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type qosp_Dscp; + type acl_SequenceNumber; + description "Sequence number"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type qosp_OperSt; + type acl_ActionType; + description "Specify packets to forward or reject"; } - } - - grouping sisf_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // source port operator + leaf srcPortOp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Operator; + description "Source port operator"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // first source port + leaf srcPort1 { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_PortNumber; + description "First source port"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // second source port + leaf srcPort2 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_PortNumber; + description "Second source port"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Source Port Mask + leaf srcPortMask { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // This objects hold per sisf instance information. There is only - // one instance of dhcp running in the system today - container snooping-items { - list InstSnooping-list { - key "policyName"; + // destination port operator + leaf dstPortOp { - // Added containment: Prefix=snooping - // Acquired From Package sisf - uses sisf_InstSnooping-group; - } + type acl_Operator; + description "Destination port operator"; } - // Ipv6 Neighbor Binding Global Configuration - container neighborbinding-items { + // first destination port + leaf dstPort1 { - // Added containment as a singleton: Prefix=neighborbinding - // Acquired From Package sisf - uses sisf_InstBinding-group; + type acl_PortNumber; + description "First destination port number"; } - // Ipv6 DHCP Guard Configure - container dhcpguard-items { - list InstDhcpGuard-list { - key "policyName"; + // second destination port + leaf dstPort2 { - // Added containment: Prefix=dhcpguard - // Acquired From Package sisf - uses sisf_InstDhcpGuard-group; - } + type acl_PortNumber; + description "Second destination port number"; } - // Ipv6 RA Guard Configure - container raguard-items { - list InstRaGuard-list { - key "policyName"; + // Destination Port Mask + leaf dstPortMask { - // Added containment: Prefix=raguard - // Acquired From Package sisf - uses sisf_InstRaGuard-group; + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // This object holds bfd interface information - container fhsif-items { - list FhsIf-list { - key "id"; + // packet-length operator + leaf pktLenOp { - // Added containment: Prefix=fhsif - // Acquired From Package sisf - uses sisf_FhsIf-group; - } + type acl_Operator; + description "packet length operator"; } - container fhsvlan-items { - list FhsVlan-list { - key "vlanID"; - // Added containment: Prefix=fhsvlan - // Acquired From Package sisf - uses sisf_FhsVlan-group; - } + // First packet-length + leaf pktLen1 { + + type acl_PktLen; + description "first packet length"; } - } - grouping sisf_InstSnooping-group { - leaf policyName { - type string; + // second packet-length + leaf pktLen2 { + + type acl_PktLen; + description "second packet length"; } - leaf trustedPortEnabled { + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { type boolean; + description "tcp reversed"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Sets the role of the device attached to the port"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type sisf_deviceRole; + type acl_TcpFlagsMask; + description "tcp flags mask"; + } + leaf packets { + config "false"; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - // Type is an MO-Defined-Type - leaf ndpProtocol { - description "Glean addresses in NDP packets"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type sisf_ndpflag; + type acl_CaptureSes; + description "capture session"; } - // Type is an MO-Defined-Type - leaf dhcpProtocol { - description "Glean addresses in DHCP packets"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type sisf_dhcpflag; + type acl_HttpOptionType; + description "http option http-method"; } - // Type is an MO-Defined-Type - leaf securityLevel { - description "Setup security level of snoopiong policy"; + // nve vni ID + leaf vni { - // Type is an MO-Defined-Type - type sisf_securityLevel; + type acl_VniType; + description "nve vni ID"; } - // Type is an MO-Defined-Type - leaf limitAddressCount { - description "Configure maximum address per port"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type sisf_limitAddressCount; + type acl_VlanType; + description "vlan"; } - // Type is an MO-Defined-Type - leaf tracking { - description "Override default tracking behavior"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type sisf_NonGlobalTracking; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "TBD"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type sisf_reachableLifetimerSnoopingPolicy; + type acl_Name; + description "time range name"; } - // Type is an MO-Defined-Type - leaf staleLifetimer { - description "TBD"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type sisf_staleLifetimerSnoopingPolicy; + type acl_Name; + description "Source address group"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "Destination address group"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "Source port group"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // destination port group + leaf dstPortGroup { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_Name; + description "Destination port group"; + } + leaf redirect { + type string; + description "Redirect action"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type inbandTelemetry_FltType; + description "Acl Filter Type"; } - } - grouping sisf_InstBinding-group { - leaf logging { - type boolean; + // protocol to match + leaf protocol { + + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // Type is an MO-Defined-Type - leaf maxEntries { - description "Define maximum number of entries in the IPv6 snoopiong binding table"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type sisf_maxEntries; + type ipv4acl_Protocol; + description "Protocol Mask"; } - // Type is an MO-Defined-Type - leaf vlanLimit { - description "Define maximum number of entries allowed per vlan"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type sisf_vlanLimit; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf macLimit { - description "Define maximum number of entries allowed per mac"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Type is an MO-Defined-Type - type sisf_macLimit; + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf portLimit { - description "Define maximum number of entries allowed per port"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type sisf_portLimit; + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "Set reachable-lifetimer of IPv6 snooping binding table"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type sisf_reachableLifetimer; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf staleLifetimer { - description "Set stale-lifetimer of IPv6 snooping binding table"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type sisf_staleLifetimer; + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf downLifetimer { - description "Set down-lifetimer of IPv6 snooping binding table"; + // destination prefix length + leaf dstPrefixLength { - // Type is an MO-Defined-Type - type sisf_downLifetimer; - } - leaf tracking { - type boolean; - default "false"; + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } + } - // Type is an MO-Defined-Type - leaf retryInterval { - description "Configure interval time between two probings"; + grouping inbandTelemetry_DroplistAcl-group { + description "Droplist Acl"; - // Type is an MO-Defined-Type - type sisf_retryInterval; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type + // ACL name leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "Name of Access lists"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + leaf configStatus { config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + type uint32; + description "config success indicator"; } - container bindingip-items { - list StaticBinding-list { - key "v6Addr vlanID"; - // Added containment: Prefix=bindingip - // Acquired From Package sisf - uses sisf_StaticBinding-group; + // INT Droplist ACE + container ace-items { + list DroplistAce-list { + key "seqNum"; + + uses inbandTelemetry_DroplistAce-group; + description "Droplist Ace list"; } + description "Droplist Ace"; } } - grouping sisf_StaticBinding-group { + grouping inbandTelemetry_DroplistAce-group { + description "Droplist Ace"; - // Type is an MO-Defined-Type - leaf vlanID { - description "Configure Vlan ID of static binding entry"; + leaf descr { - // Type is an MO-Defined-Type - type sisf_VlanID; - } - leaf v6Addr { - type address_Ipv6; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf interface { - description "Configure interface of static binding entry"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf mac { - type address_Mac; + type acl_RemarkStr; + description "Access-list entry comment"; } - // Type is an MO-Defined-Type - leaf tracking { - description "Configure tracking option of static binding entry"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type sisf_NonGlobalTracking; + type acl_SequenceNumber; + description "Sequence number"; } - // Type is an MO-Defined-Type - leaf retryInterval { - description "Configure retry interfval between two probings of static binding entry"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type sisf_RetryIntervalBinding; + type acl_ActionType; + description "Specify packets to forward or reject"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "Configure reachable-lifetimer of static binding entry"; + // source port operator + leaf srcPortOp { - // Type is an MO-Defined-Type - type sisf_ReachableLifetimerBinding; + type acl_Operator; + description "Source port operator"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // first source port + leaf srcPort1 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_PortNumber; + description "First source port"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // second source port + leaf srcPort2 { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_PortNumber; + description "Second source port"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Source Port Mask + leaf srcPortMask { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; - } - } + // destination port operator + leaf dstPortOp { - grouping sisf_InstDhcpGuard-group { - leaf policyName { - type string; + type acl_Operator; + description "Destination port operator"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Set the role of device attached to the port"; + // first destination port + leaf dstPort1 { - // Type is an MO-Defined-Type - type sisf_dhcpGuardDeviceRole; - } - leaf trustedPortEnabled { - type boolean; + type acl_PortNumber; + description "First destination port number"; } - // Type is an MO-Defined-Type - leaf preferenceMax { - description "Configure maximum allowed advertised server preference"; + // second destination port + leaf dstPort2 { - // Type is an MO-Defined-Type - type sisf_preferenceMax; + type acl_PortNumber; + description "Second destination port number"; } - // Type is an MO-Defined-Type - leaf preferenceMin { - description "Configure minimum allowed advertised server preference"; + // Destination Port Mask + leaf dstPortMask { - // Type is an MO-Defined-Type - type sisf_preferenceMin; + type acl_PortNumber; + description "Destination Port Mask"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Operator; + description "packet length operator"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // First packet-length + leaf pktLen1 { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_PktLen; + description "first packet length"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // second packet-length + leaf pktLen2 { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_PktLen; + description "second packet length"; } - } - - grouping sisf_InstRaGuard-group { - leaf policyName { - type string; + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Set the role of the device attached to the port"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type sisf_raGuardDeviceRole; + type acl_TcpFlagsMask; + description "tcp flags mask"; } - leaf trustedPortEnabled { + leaf packets { + config "false"; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { type boolean; + description "Non-initial fragment"; } - // Type is an MO-Defined-Type - leaf routerPreferenceMaximum { - description "Enable verification of the advertised router preference"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type sisf_raGuardRouterPreferenceMaximum; + type acl_CaptureSes; + description "capture session"; } - // Type is an MO-Defined-Type - leaf hopLimitMax { - description "Enable verification of the maximum advertised hop count limit"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type sisf_hopLimitMax; + type acl_HttpOptionType; + description "http option http-method"; } - // Type is an MO-Defined-Type - leaf hopLimitMin { - description "Enable verification of the minimum advertised hop count limit"; + // nve vni ID + leaf vni { - // Type is an MO-Defined-Type - type sisf_hopLimitMin; + type acl_VniType; + description "nve vni ID"; } - // Type is an MO-Defined-Type - leaf managedConfig { - description "Enable verification of the advertised M flag"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type sisf_raGuardManagedConfig; + type acl_VlanType; + description "vlan"; } - // Type is an MO-Defined-Type - leaf otherConfig { - description "Enable verification of the advertised O flag"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type sisf_raGuardOtherConfig; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "time range name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "Source address group"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_Name; + description "Destination address group"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_Name; + description "Source port group"; } - } - grouping sisf_FhsIf-group { - leaf snoopingPolicyName { - type string; - } - leaf dhcpGuardPolicyName { - type string; + // destination port group + leaf dstPortGroup { + + type acl_Name; + description "Destination port group"; } - leaf raGuardPolicyName { + leaf redirect { type string; - } - leaf deleted { - config "false"; - type boolean; + description "Redirect action"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type inbandTelemetry_FltType; + description "Acl Filter Type"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // protocol to match + leaf protocol { - // Type is an MO-Defined-Type - type naming_Descr1024; + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type nw_IfId; + type ipv4acl_Protocol; + description "Protocol Mask"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - container rtvrfMbr-items { + // source prefix wildcard mask + leaf srcPrefixMask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // source prefix length + leaf srcPrefixLength { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - } - grouping sisf_FhsVlan-group { - - // Type is an MO-Defined-Type - leaf vlanID { - description "Vlan Number"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type sisf_VlanID; - } - leaf snoopingPolicyName { - type string; - } - leaf dhcpGuardPolicyName { - type string; - } - leaf raGuardPolicyName { - type string; - } - leaf deleted { - config "false"; - type boolean; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - } - - grouping telemetry_Entity-group { - // Type is an MO-Defined-Type - leaf adminSt { - description "TBD"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type telemetry_AdminState; + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // certificate - container certificate-items { + // destination prefix length + leaf dstPrefixLength { - // Added containment as a singleton: Prefix=certificate - // Acquired From Package telemetry - uses telemetry_Certificate-group; + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } + } - // default destination profile - // This is the placeholder for global destination/transport options. - // It supports the following options: - // - vrf : Specify the vrf for the transport. - // The default is "", meaning each platform - // could pick it own default setting. - container destprof-items { - - // Added containment as a singleton: Prefix=destprof - // Acquired From Package telemetry - uses telemetry_DestProfile-group; - } + grouping inbandTelemetry_RecordP-group { + description "int Record"; - // sensor-groups - container sensor-items { - list SensorGroup-list { - key "id"; + // Collect parameters for the int record + leaf collect0 { - // Added containment: Prefix=sensor - // Acquired From Package telemetry - uses telemetry_SensorGroup-group; - } + type inbandTelemetry_CollectParams0; + description "Collect Params Set0"; } - // destination-groups - container dest-items { - list DestGroup-list { - key "id"; + leaf descr { - // Added containment: Prefix=dest - // Acquired From Package telemetry - uses telemetry_DestGroup-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // subscriptions - container subs-items { - list Subscription-list { - key "id"; + leaf name { - // Added containment: Prefix=subs - // Acquired From Package telemetry - uses telemetry_Subscription-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_Certificate-group { + grouping inbandTelemetry_Collector-group { + description "Collector entry"; - // Type is an MO-Defined-Type - leaf filename { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type os_OsString; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf hostname { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type os_OsString; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping telemetry_DestProfile-group { - // Not used. - // Need this dummy property for VSH/CLI - // Type is an MO-Defined-Type - leaf adminSt { - description "TBD"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type telemetry_AdminState; + type inbandTelemetry_VrfName; + description "Remote Entity VRF"; } - // Destination option : vrf name - container vrf-items { + // Remote node destination IP address + leaf dstAddr { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package telemetry - uses telemetry_DestOptVrf-group; + type inbandTelemetry_DstIp; + description "Remote Entity IP"; } - // Destination option : compression name - container compression-items { + // Remote node destination port + leaf dstPort { - // Added containment as a singleton: Prefix=compression - // Acquired From Package telemetry - uses telemetry_DestOptCompression-group; + type inbandTelemetry_Port; + description "Remote Entity L4 Port"; } - // Destination option : source interface - container sourceinterface-items { + // IP dscp value + leaf dscp { - // Added containment as a singleton: Prefix=sourceinterface - // Acquired From Package telemetry - uses telemetry_DestOptSourceInterface-group; + type qosp_DscpCP; + description "DSCP Value"; } - container retry-items { + // Source interface + leaf srcIf { - // Added containment as a singleton: Prefix=retry - // Acquired From Package telemetry - uses telemetry_DestOptRetry-group; + type nw_IfId; + description "Source Interface"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address"; + } + leaf sequenceNumber { + type uint32; + default "1000"; + description "Start sequence number for this exporter"; } } - grouping telemetry_DestOptVrf-group { + grouping inbandTelemetry_FlowProfile-group { + description "Inband Telemetry Flow Profile"; - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow dscp value + leaf dscp { - // Type is an MO-Defined-Type - type telemetry_VrfName; + type inbandTelemetry_FlowDscp; + description "Inband Telemetry Flow dscp value"; } - } - - grouping telemetry_DestOptCompression-group { - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow dscp mask + leaf dscpMask { - // Type is an MO-Defined-Type - type telemetry_Compression; + type inbandTelemetry_FlowDscp; + description "Inband Telemetry Flow dscp mask"; } - } - grouping telemetry_DestOptSourceInterface-group { - - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow age + leaf age { - // Type is an MO-Defined-Type - type nw_IfId; + type inbandTelemetry_FlowAge; + description "Inband Telemetry Flow age"; } - } - grouping telemetry_DestOptRetry-group { - leaf size { - type uint32 { - range "10..1500"; - } - default "10"; - } - } + // Flow latency quantization + leaf latencyQuant { - grouping telemetry_SensorGroup-group { - leaf id { - type string; + type inbandTelemetry_FlowLatencyQuant; + description "Inband Telemetry Flow latency quantization"; } - // Type is an MO-Defined-Type - leaf dataSrc { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type telemetry_DataSource; + type naming_Descr; + description "Description of the specified attribute"; } - container path-items { - list SensorPath-list { - key "path"; - // Added containment: Prefix=path - // Acquired From Package telemetry - uses telemetry_SensorPath-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_SensorPath-group { - leaf path { - type string; - } - leaf queryCondition { - type string; - } - leaf filterCondition { - type string; + grouping inbandTelemetry_QueueProfile-group { + description "Inband Telemetry Queue Profile"; + + // Queue depth value + leaf depth { + + type inbandTelemetry_QueueDepth; + description "Inband Telemetry Queue depth value"; } - leaf excludeFilter { - type string; + + // Queue latency + leaf latency { + + type inbandTelemetry_QueueLatency; + description "Inband Telemetry Queue Latency"; } - // Type is an MO-Defined-Type - leaf secondaryPath { - description "TBD"; + // Queue Breach Quota + leaf breach { - // Type is an MO-Defined-Type - type reln_Dn; + type inbandTelemetry_QueueBreachQuota; + description "Inband Telemetry Queue Breach Quota"; } - leaf secondaryGroup { - type uint64; + + // Queue Tail Drop + leaf tailDrop { + + type inbandTelemetry_QueueTailDrop; + description "Inband Telemetry Queue Tail Drop"; } - // Type is an MO-Defined-Type - leaf depth { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type telemetry_RetrieveDepth; + type naming_Descr; + description "Description of the specified attribute"; } - container include-items { - list IncludeFilter-list { - key "filter"; - // Added containment: Prefix=include - // Acquired From Package telemetry - uses telemetry_IncludeFilter-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_IncludeFilter-group { - leaf filter { - type string; - } - } + grouping inbandTelemetry_Monitor-group { + description "int Monitor"; - grouping telemetry_DestGroup-group { - leaf id { - type string; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - container addr-items { - list Dest-list { - key "addr port"; - // Added containment: Prefix=addr - // Acquired From Package telemetry - uses telemetry_Dest-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // destination-group option : use-chunking - container chunking-items { + container rsrecordPAtt-items { - // Added containment as a singleton: Prefix=chunking - // Acquired From Package telemetry - uses telemetry_DestGrpOptChunking-group; + uses inbandTelemetry_RsRecordPAtt_source-group; + description "Record Policy Attachment"; } - } - grouping telemetry_Dest-group { - leaf addr { - type address_Ip; - } - leaf port { - type uint16; - } + container rscollectorAtt-items { - // Need equivalent type for YANG telemetry-stream-protocol in DME - // Type is an MO-Defined-Type - leaf proto { - description "TBD"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type telemetry_Protocol; + uses inbandTelemetry_RsCollectorAtt_source-group; + description "Reference to Collector list"; + } + description "Reference to Collector"; } - // No equivalent property in YANG - // Type is an MO-Defined-Type - leaf enc { - description "TBD"; + container rswatchlistAtt-items { - // Type is an MO-Defined-Type - type telemetry_Encoding; + uses inbandTelemetry_RsWatchlistAtt_source-group; + description "Reference to Watchlist"; } - } - grouping telemetry_DestGrpOptChunking-group { - leaf chunkSize { - type uint32 { - range "64..4096"; - } - default "64"; + container rsdroplistAtt-items { + + uses inbandTelemetry_RsDroplistAtt_source-group; + description "Reference to Droplist"; } } - grouping telemetry_Subscription-group { + grouping inbandTelemetry_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier leaf id { - type uint64; - } - // Rel-def from SensorGroupRel - container rssensorGroupRel-items { + type inbandTelemetry_FwdInstTargetId; + description "Identifier"; + } - // Abstract containment of rssensorGroupRel derived from telemetry:Subscription - list RsSensorGroupRel-list { - key "tDn"; + leaf name { - // Added containment: Prefix=rssensorGroupRel - // Acquired From Package telemetry - uses telemetry_RsSensorGroupRel_source-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from DestGroupRel - container rsdestGroupRel-items { - - // Abstract containment of rsdestGroupRel derived from telemetry:Subscription - list RsDestGroupRel-list { - key "tDn"; + leaf descr { - // Added containment: Prefix=rsdestGroupRel - // Acquired From Package telemetry - uses telemetry_RsDestGroupRel_source-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping track_Entity-group { + container rsmonitorAtt-items { - // This object represents object of track. - // The object tracking monitors the status of the tracked objects - // and communicates any changes made to interested clients. - // Each tracked object is identified by a unique number - // (track:Object.id) that clients can use to configure the action - // to take when a tracked object changes state. - // Object types that can be tracked: - // * Interface line protocol state: Tracks whether the line - // protocol state is UP or Down. - // * Interface IPv4/IPv6 routing state: Tracks whether the interface - // has an IPv4 address and if IPv4 routing is enabled and active. - // * IPv4/IPv6 route reachability: Tracks whether an IPv4 route - // exists and is reachable from the local switch. - // * Object track list: Tracks combined states of multiple objects. - // Capabilities supported: boolean-and, boolean-or, - // threshold-percentage, threshold-weight. - // * Object tracking of IP SLA. - // Specify track:Object.id - container object-items { - list Object-list { - key "id"; + list RsMonitorAtt-list { + key "tDn"; - // Added containment: Prefix=object - // Acquired From Package track - uses track_Object-group; + uses inbandTelemetry_RsMonitorAtt_source-group; + description "Reference to Monitor list"; } + description "Reference to Monitor"; } } - grouping track_Object-group { + grouping netflow_Netflow-group { + description "Netflow entity"; - // Track Object ID. - // Each instance is identified by a unique number, - // the object ID. Each instance is a parent of only one - // of 'track:If', 'track:List', - // 'track:IpRoute' or 'track:IpSla' - // Type is an MO-Defined-Type - leaf id { - description "Track object ID"; + leaf rtpTimeout { - // Type is an MO-Defined-Type - type track_TrackId; + type netflow_RtpTimeout; + description "RTP Flow Timeout"; } - leaf clients { - config "false"; - type uint16; + leaf isRtpIpv4 { + type boolean; + default "false"; + description "RTP IPV4 Config"; } - // Object tracking for an interface, supports Ethernet, - // subinterfaces, port-channels, loopback interfaces, and - // VLAN interfaces. Either the interface line protocol state or - // the interface IP routing state. When IP routing state is - // tracked, these conditions are required for the object to be UP: - // * IP routing must be enabled and active on the interface. - // * The interface line-protocol state must be UP. - // * The interface IP address must be known. - // If all three conditions are not met, IP routing state is Down. - container if-items { + leaf rtpIpv4Acl { - // Added containment as a singleton: Prefix=if - // Acquired From Package track - uses track_If-group; + type netflow_ACLName; + description "RTP IPV4 ACL"; + } + leaf isRtpIpv6 { + type boolean; + default "false"; + description "RTP IPV6 Config"; } - // IP route track object. - // Tracks whether an IPV4/IPV6 route exists and is reachable from - // the local switch - container iprt-items { + leaf rtpIpv6Acl { - // Added containment as a singleton: Prefix=iprt - // Acquired From Package track - uses track_IpRoute-group; + type netflow_ACLName; + description "RTP IPV6 ACL"; } - // IP SLA track object. - // Object tracking of IP SLAs operations allow clients to - // track the output from IP SLAs objects and - // use this information to trigger an action. - // Two aspects of IP SLAs can be tracked: state and reachability. - // For state, if the return code is OK, then the track state is UP; - // if the return code is not OK, then the track state is Down. - // For reachability, if the return code is OK or OverThreshold, reachability is UP; - // if not OK, reachability is Down. - container ipsla-items { + // Holds netflow instance information + container inst-items { + list Inst-list { + key "mode"; - // Added containment as a singleton: Prefix=ipsla - // Acquired From Package track - uses track_IpSla-group; + uses netflow_Inst-group; + description "Instance for Netflow config list"; + } + description "Instance for Netflow config"; } - // An object track list allows User to track the combined states - // of multiple objects. Object track lists support the following - // capabilities: - // * Boolean "and" function: Each object defined within the track - // list must be in an UP state so that the track list object - // can become UP. - // track:List.type should be specified as 'and' - // * Boolean "or" function: At least one object defined within the - // track list must be in UP state so that the tracked object - // can become UP. - // track:List.type should be specified as 'or' - // * Threshold percentage: The percentage of UP objects in the - // tracked list must be greater than the configured UP - // threshold for the tracked list to be in the UP state. If the - // percentage of Down objects in the tracked list is above the - // configured track list Down threshold, the tracked list is - // marked as Down. - // track:List.type should be specified as 'percentage'. The value - // for 'percentageUp' and 'percentageDown' - // * Threshold weight: Assign a weight value to each object in the - // tracked list, and a weight threshold for the track list. If - // the combined weights of all UP objects exceeds the track list - // weight UP threshold, the track list is in an UP state. If the - // combined weights of all the Down objects exceeds the track list - // weight Down threshold, the track list is in the Down state. - // track:List.type should be specified as 'weight'. The value for - // 'weightUp' and 'weightDown'. - // Mo for List type track - container list-items { + // Show Flow Info + // Ephemeral data + container flowinfo-items { - // Added containment as a singleton: Prefix=list - // Acquired From Package track - uses track_List-group; + // Ephemeral data + list FlowInfo-list { + config "false"; + key "flowId"; + + uses netflow_FlowInfo-group; + description "Flow Info that is displayed/exported. list"; + } + description "Flow Info that is displayed/exported."; } } - grouping track_If-group { + grouping netflow_Inst-group { + description "Instance for Netflow config"; - // Interface ID to be tracked. - // This specifies the name of the object tracking interface, - // examples: 'eth1/1', 'eth1/1.1', 'po10', 'lo0'. - // The interface MO must be present in objstore to configure - // this else an error will be reported. - // Type is an MO-Defined-Type - leaf id { - description "Interface to track"; + // analytics/netflow mode + leaf mode { - // Type is an MO-Defined-Type - type nw_IfId; + type netflow_ModeT; + description "It represents the mode in which netflow is running"; } - // Interface protocol type that an object can track - // Type is an MO-Defined-Type - leaf protocolType { - description "Protocol type for interface object"; + // flow timeout + leaf timeOut { - // Type is an MO-Defined-Type - type track_IntfProtocolType; + type netflow_FlowTimeout; + description "Flow timeout"; } - } - - grouping track_IpRoute-group { - // IPVX Address family of the route that is to be configured - // Type is an MO-Defined-Type - leaf af { - description "Address family"; + leaf name { - // Type is an MO-Defined-Type - type track_Af; - } - leaf prefix { - type address_Ip; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // This specifies IP Route State - // Type is an MO-Defined-Type - leaf routeState { - description "Route State"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type track_RouteState; - } - leaf vrf { - type string; + type nw_AdminSt; + description "Admin State"; } - // This specifies the process owning the route - // Type is an MO-Defined-Type - leaf routeOwner { - description "Owner of the route"; - - // Type is an MO-Defined-Type - type track_RouteOwner; - } - } + // Instance controls + leaf ctrl { - grouping track_IpSla-group { - leaf probeId { - type uint32 { - range "1..2147483647"; - } + type nw_InstCtrl; + description "Controls"; } - // SLA Probe States - // Type is an MO-Defined-Type - leaf probeState { - description "SLA reachability/state type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type track_ProbeState; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - - grouping track_List-group { - // Type of list object. - // Only 'boolean-and' object can be changed to 'boolean-or' - // and vice versa is possible. Any other type of object can't - // be modified to some other type. - // Type is an MO-Defined-Type - leaf type { - description "Type of list object"; + // Flow Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type track_ListObj; - } - leaf percentageUp { - type uint16 { - range "0..100"; + uses netflow_RecordP-group; + description "Object to store different parameters of netflow record list"; } - default "1"; + description "Object to store different parameters of netflow record"; } - leaf percentageDown { - type uint16 { - range "0..100"; + + // Flow Collector + container collector-items { + list Collector-list { + key "name"; + + uses netflow_Collector-group; + description "It has the information about the netflow collector entity list"; } - default "0"; + description "It has the information about the netflow collector entity"; } - leaf weightUp { - type uint16 { - range "0..255"; + + // Flow Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; + + uses netflow_Monitor-group; + description "Netflow Monitor list"; } - default "1"; + description "Netflow Monitor"; } - leaf weightDown { - type uint16 { - range "0..255"; + + // Netflow profile + container prof-items { + list Profile-list { + key "name"; + + uses netflow_Profile-group; + description "The profile of netflow list"; } - default "0"; + description "The profile of netflow"; } - // track list member objects, object-id is a naming property here - container obj-items { - list Member-list { + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { key "id"; - // Added containment: Prefix=obj - // Acquired From Package track - uses track_Member-group; + uses netflow_FwdInstTarget-group; + description "Forward Instance Target list"; } + description "Forward Instance Target"; } } - grouping track_Member-group { + grouping netflow_RecordP-group { + description "Object to store different parameters of netflow record"; - // ID of track-list member - // Type is an MO-Defined-Type - leaf id { - description "Track ID of object to be tracked"; + // Match parameters for the netflow record + leaf match { - // Type is an MO-Defined-Type - type track_TrackId; + type netflow_MatchParams; + description "The match parameters of the netflow record"; } - leaf weight { - type uint16 { - range "1..255"; + + // Collect parameters for the flow record + leaf collect { + + type netflow_CollectParams; + description "The collect parameters of the netflow record"; + } + + leaf descr { + + type naming_Descr { + pattern "(.{1,128}).*|()"; } - default "10"; + description "Record Description"; } - leaf not { - type boolean; - default "true"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping udld_Entity-group { + grouping netflow_Collector-group { + description "It has the information about the netflow collector entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Collector version + leaf ver { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type netflow_CollVersion; + description "Collector Version Format"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Collector stats timeout + leaf statsTimeout { - // Type is an MO-Defined-Type - type nw_AdminSt; + type netflow_CollTimeout; + description "Collector stats timeout"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Collector interface table timeout + leaf interfaceTimeout { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type netflow_CollTimeout; + description "Collector interface table timeout"; } - // This class shall store the global configuration - // for a running UDLD instance - container inst-items { + // Collector template data timeout + leaf templateTimeout { - // Added containment as a singleton: Prefix=inst - // Acquired From Package udld - uses udld_Inst-group; + type netflow_CollTemplateTimeout; + description "Collector template data timeout"; } - } - grouping udld_Inst-group { + leaf name { - // aggressive mode - // Type is an MO-Defined-Type - leaf aggressive { - description "Global Aggressive Mode"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } - // Type is an MO-Defined-Type - type udld_AdminSt; + leaf descr { + + type naming_Descr { + pattern "(.{1,128}).*|()"; + } + description "Collector Description"; } - // probe message interval - // Type is an MO-Defined-Type - leaf msgIntvl { - description "Probe Message Interval"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type udld_MsgIntvl; + type netflow_VrfName; + description "Remote Entity VRF"; } - leaf error { - config "false"; - type uint64; - default "0"; + + // Remote node destination IP address + leaf dstAddr { + + type netflow_addressIp; + description "Remote Entity IP"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type netflow_flowPort; + description "Remote Entity L4 Port"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // IP dscp value + leaf dscp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type netflow_flowDscp; + description "DSCP Value of Remote Entity"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Source Interface of the sender"; } - container physif-items { - list PhysIf-list { - key "id"; - // Added containment: Prefix=physif - // Acquired From Package udld - uses udld_PhysIf-group; - } + // Source IP address + leaf srcAddr { + + type netflow_addressIp; + description "Source IP Address of the sender"; } } - grouping udld_PhysIf-group { + grouping netflow_Monitor-group { + description "Netflow Monitor"; - // aggressive mode - // Type is an MO-Defined-Type - leaf aggressive { - description "Interface Aggressive Mode"; + leaf descr { - // Type is an MO-Defined-Type - type udld_AdminSt; + type naming_Descr { + pattern "(.{1,128}).*|()"; + } + description "Monitor Description"; } - // bidirectional detection - // Type is an MO-Defined-Type - leaf biDirDetect { - description "Bidirectional Detection Enabled"; + leaf name { - // Type is an MO-Defined-Type - type udld_PortEnable; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port type is fiber or non-fiber/copper - // Type is an MO-Defined-Type - leaf fiber { - config "false"; - description "Fiber Port"; + // Collector bucket info + container collectorbucket-items { + list CollectorBucket-list { + key "id"; - // Type is an MO-Defined-Type - type udld_OperSt; + uses netflow_CollectorBucket-group; + description "Netflow Collector Bucket Entry list"; + } + description "Netflow Collector Bucket Entry"; } - leaf error { - config "false"; - type uint64; - default "0"; + + container rsrecordPAtt-items { + + uses netflow_RsRecordPAtt_source-group; + description "Reference to the record that is to be used under this monitor"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping netflow_CollectorBucket-group { + description "Netflow Collector Bucket Entry"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Collector bucket identifier + leaf id { + + type netflow_CollBucketId; + description "Netflow Collector Bucket Id"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // HashLo value for this collector bucket + leaf hashLo { - // Type is an MO-Defined-Type - type naming_Descr1024; + type netflow_HashT; + description "Hash Low Value for this collector bucket"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // HashHi value for this collector bucket + leaf hashHi { - // Type is an MO-Defined-Type - type nw_IfId; + type netflow_HashT; + description "Hash High Value for this collector bucket"; } - container ptimest-items { - list PktTs-list { - config "false"; - key "dir"; - // Added containment: Prefix=ptimest - // Acquired From Package udld - uses udld_PktTs-group; - } - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - container rtvrfMbr-items { + leaf descr { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; + container rscollectorAtt-items { + + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses netflow_RsCollectorAtt_source-group; + description "Reference to the collector that is to be used under this monitor list"; } + description "Reference to the collector that is to be used under this monitor"; } } - grouping udld_PktTs-group { + grouping netflow_Profile-group { + description "The profile of netflow"; - // Send/Recv direction - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Packet Direction"; + // Collect interval + leaf collectIntvl { - // Type is an MO-Defined-Type - type udld_PktDirection; + type netflow_CollIntvl; + description "Collect Interval in Milliseconds"; } - } - grouping acllog_Entity-group { + // Source port + leaf srcPort { - // Acllog instance MO - container inst-items { + type netflow_L4Port; + description "Source L4 Port"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package acllog - uses acllog_Inst-group; + // IP packet id shift + leaf ipPktIdShift { + + type netflow_IpPktIdShift; + description "IP Packet Id Shift"; } - } - grouping acllog_Inst-group { + // Burst interval shift + leaf burstIntvlShift { - container log-items { + type netflow_BurstIntvlShift; + description "Timestamp Shift Value for Burst Interval"; + } - // Added containment as a singleton: Prefix=log - // Acquired From Package acllog - uses acllog_LogCache-group; + // Collector export packet MTU + leaf mtu { + + type netflow_Mtu; + description "Collector export packet MTU"; } - } - grouping acllog_LogCache-group { + // Sequence number guess threshold low + leaf seqNumGuessThreshLo { - // Default Value "300" Removed - out of length restriction 5..86400 - leaf interval { - type string { - length "5..86400"; - } + type netflow_ThresholdT; + description "Sequence Number Guess Threshold Low"; } - leaf matchLevel { - type uint8 { - range "0..7"; - } - default "6"; - } - leaf logLevel { - type uint8 { - range "0..7"; - } - default "2"; - } - } - // Has Polymorphic containment of abstract object l2:Dom - grouping bd_Entity-group { - leaf descr { - config "false"; - type string; + // Sequence number guess threshold high + leaf seqNumGuessThreshHi { + + type netflow_ThresholdT; + description "Sequence Number Guess Threshold High"; } - // If false, value is explicitly set globally for all SVIs - // Type is an MO-Defined-Type - leaf sysDefaultSVIAutostate { - description "Disable/enable autoState for SVI interface"; + leaf descr { - // Type is an MO-Defined-Type - type bd_DefaultSVIAutoState; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds vlan config information - container vlanconfig-items { - list VlanConfig-list { - key "accEncap"; + leaf name { - // Added containment: Prefix=vlanconfig - // Acquired From Package l2 - uses l2_VlanConfig-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Layer2 Bridge-domain. Domain with regular ports and/or - // epg-vlans as members. - // Polymorphic containment of derivative object l2:BD (from l2:Dom) - container bd-items { - - // Abstract containment of l2:BD derived from l2:Dom - list BD-list { - key "fabEncap"; + // Payload length bin + container payloadlenbin-items { + list PayloadLenBin-list { + key "id"; - // Added containment: Prefix=bd - // Acquired From Package l2 - uses l2_BD-group; + uses netflow_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - // 802.1q Vlan - // Polymorphic containment of derivative object vlan:CktEp (from l2:Dom) - container vlan-items { - - // Abstract containment of vlan:CktEp derived from l2:Dom - list CktEp-list { - key "encap"; + // TCP options header length bin + container tcpopthdrlenbin-items { + list TcpOptHdrLenBin-list { + key "id"; - // Added containment: Prefix=vlan - // Acquired From Package vlan - uses vlan_CktEp-group; + uses netflow_TcpOptHdrLenBin-group; + description "TCP option header length bin entry list"; } + description "TCP option header length bin entry"; } - // Vxlan circuit - // Polymorphic containment of derivative object vxlan:CktEp (from l2:Dom) - container vxlan-items { - - // Abstract containment of vxlan:CktEp derived from l2:Dom - list CktEp-list { - config "false"; - key "encap"; + // Receive window size bin + container rcvwindowszbin-items { + list RcvWindowSzBin-list { + key "id"; - // Added containment: Prefix=vxlan - // Acquired From Package vxlan - uses vxlan_CktEp-group; + uses netflow_RcvWindowSzBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping l2_VlanConfig-group { - leaf accEncap { - type string; - } + grouping netflow_PayloadLenBin-group { + description "Payload length bin entry"; - container ipqos-items { + // Identifier + leaf id { - // Added containment as a singleton: Prefix=ipqos - // Acquired From Package ipqos - uses ipqos_Entity-group; + type netflow_PayloadLenIdT; + description "Payload Length Bin Id"; } - } - grouping l2_BD-group { - leaf fabEncap { - type string; - } - leaf accEncap { - type string; + // Low value + leaf lo { + + type netflow_PayloadLenT; + description "Bin Low Value for Payload Length"; } - // Enable cross connect on vlan - // Type is an MO-Defined-Type - leaf xConnect { - description "Enable Cross Connect on VLAN"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type l2_XConnect; + type netflow_PayloadLenT; + description "Bin High Value for Payload Length"; } - // This represents the parameter used by the node - // (i.e. Leaf) for enabling forwarding modes (route - // or bridge or both). Default is enable both - // Type is an MO-Defined-Type - leaf fwdMode { - description "The Layer 2 bridge-domain parameter mode used by the node for enabling forwarding modes"; + leaf descr { - // Type is an MO-Defined-Type - type l2_FwdMode; + type naming_Descr; + description "Description of the specified attribute"; } + } - // This represents the parameter used by the node - // (i.e. Leaf) for enabling classical bridging or - // bridging with IP. Default is bridge with IP - // Type is an MO-Defined-Type - leaf bridgeMode { - description "Bridging Mode"; + grouping netflow_TcpOptHdrLenBin-group { + description "TCP option header length bin entry"; - // Type is an MO-Defined-Type - type l2_BridgeMode; + // Identifier + leaf id { + + type netflow_TCPOptHdrLenIdT; + description "TCP option header length bin ID"; } - // Forwarding controls - // Type is an MO-Defined-Type - leaf fwdCtrl { - description "The Layer 2 bridge-domain forwarding controls"; + // Low value + leaf lo { - // Type is an MO-Defined-Type - type l2_FwdCtrl; - } - leaf bdDefDn { - config "false"; - type string; + type netflow_TCPOptHdrLenT; + description "Bin Low Value of TCP option header length"; } - // Controller Id - // Type is an MO-Defined-Type - leaf controllerId { - config "false"; - description "Controller ID for Vlan"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type netflow_TCPOptHdrLenT; + description "Bin High Value of TCP option header length"; } - // BdState - // Type is an MO-Defined-Type - leaf BdState { - description "Bridge Domain State can be active or suspended"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomAdminSt; - } - leaf BdOperName { - config "false"; - type string; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping netflow_RcvWindowSzBin-group { + description "Receive window size bin entry"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Identifier + leaf id { + + type netflow_RcvWindowSzIdT; + description "Receive window size bin ID"; } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; + // Low value + leaf lo { - // Type is an MO-Defined-Type - type l2_DomId; + type netflow_RcvWindowSzT; + description "Bin Low Value of Receive window size"; } - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type l2_DomId; + type netflow_RcvWindowSzT; + description "Bin High Value of Receive window size"; } - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomMode; + type naming_Descr; + description "Description of the specified attribute"; } + } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping netflow_FwdInstTarget-group { + description "Forward Instance Target"; - // Type is an MO-Defined-Type - type l2_DomAdminSt; + // Identifier + leaf id { + + type netflow_FwdInstTargetId; + description "Identifier to the Forward Instance Target"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Collector identifier provided by the netflow controller + leaf collectorId { - // Type is an MO-Defined-Type - type l2_DomOperSt; + type netflow_CollectorId; + description "Collector identifier provided by the netflow controller"; } - leaf createTs { + leaf error { config "false"; - type string; + type uint64; + description "failure code"; } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // IP filter type + leaf fltType { - // Type is an MO-Defined-Type - type l2_DomCtrl; + type netflow_FltType; + description "Netflow Target IP filter Type"; } - // VLAN Membership Interface - container member-items { - list VlanMemberIf-list { - config "false"; - key "id"; + // Direction + leaf dir { - // Added containment: Prefix=member - // Acquired From Package l2 - uses l2_VlanMemberIf-group; - } + type netflow_DirectionT; + description "Traffic direction to monitor"; } - // Multicast group entity, this refers to the multicast - // group entity that each tenant's bridge domain uses to - // flood its traffic over the fabric - container fmgrp-items { - list Grp-list { - key "addr"; + container rsprofAtt-items { - // Added containment: Prefix=fmgrp - // Acquired From Package fmcast - uses fmcast_Grp-group; - } + uses netflow_RsProfAtt_source-group; + description "Reference to profile attachement"; } + } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + grouping netflow_FlowInfo-group { + description "Flow Info that is displayed/exported."; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; - } + // Ephemeral data + leaf flowId { + config "false"; + type uint32; + description "Number to index a flow."; } - // 802.1q Vlan - container vlan-items { - list CktEp-list { - key "encap"; - - // Added containment: Prefix=vlan - // Acquired From Package vlan - uses vlan_CktEp-group; - } + // Ephemeral data + leaf protocol { + config "false"; + type uint32; + description "L4 protocol (TCP or UDP)"; } - // Vxlan circuit - container vxlan-items { - list CktEp-list { - config "false"; - key "encap"; - - // Added containment: Prefix=vxlan - // Acquired From Package vxlan - uses vxlan_CktEp-group; - } + // Ephemeral data + leaf intfName { + config "false"; + type string; + description "ingress interface where the flow exists"; } - // Rel-def from extBD - container rsextBD-items { - - // Abstract containment of rsextBD derived from l2:BD - list RsExtBD-list { - key "tDn"; - - // Added containment: Prefix=rsextBD - // Acquired From Package l2 - uses l2_RsExtBD_source-group; - } + // Ephemeral data + leaf sip { + config "false"; + type address_Ip; + description "Source IP address of the flow"; } - // Rel-def from BdVsanMap - container rsbdVsanMap-items { - - // Abstract containment of rsbdVsanMap derived from l2:BD - list RsBdVsanMap-list { - key "tDn"; - - // Added containment: Prefix=rsbdVsanMap - // Acquired From Package l2 - uses l2_RsBdVsanMap_source-group; - } + // Ephemeral data + leaf dip { + config "false"; + type address_Ip; + description "Destination IP address of the flow"; } - // Rel-def target from domIfConn - // Inherited From l2:BD - container rtfvDomIfConn-items { - - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; - key "tDn"; + // Ephemeral data + leaf srcPort { + config "false"; - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; - } + type netflow_L4Port; + description "Source Port of the flow"; } - container dbgVlanStats-items { + // Ephemeral data + leaf dstPort { + config "false"; - // Added containment as a singleton: Prefix=dbgVlanStats - // Acquired From Package l2 - uses l2_VlanStats-group; + type netflow_L4Port; + description "Destination Port of the flow"; } - } - - grouping l2_VlanMemberIf-group { - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf pktCount { config "false"; - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type uint64; + description "Number of Packets received so far."; } - // Type is an MO-Defined-Type - leaf vlan { + // Ephemeral data + leaf bitsPerSec { config "false"; - description "VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint64; + description "Current rate of flow in bits per second"; } - } - - grouping fmcast_Grp-group { - // Inherited From nw:Conn - // Modified by Override: mcast:Grp->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf flowStartTime { + config "false"; + type string; + description "Time when the flow was first detected."; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf pktLoss { + config "false"; + type uint64; + description "Number of packets lost in the flow"; } - // Multicast group address - // Inherited From mcast:Grp - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // Ephemeral data + leaf lossStartTime { + config "false"; + type string; + description "Time when flow started experiencing packet losses."; + } - // Type is an MO-Defined-Type - type mcast_GrpIp; + // Ephemeral data + leaf lossEndTime { + config "false"; + type string; + description "Time when packet losses are no longer observed for the flow."; } } - grouping epm_Db-group { + grouping sflow_Sflow-group { + description "Sflow entity"; - // Type of the database - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Holds sflow instance information + container inst-items { - // Type is an MO-Defined-Type - type epm_DbT; + uses sflow_Inst-group; + description "Instance for Sflow config"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + grouping sflow_Inst-group { + description "Instance for Sflow config"; + leaf isExtendedSwitch { + type boolean; + description "Describes whether sflow is configured in extended switch flow"; } - // Ip Ep record - container ip-items { - list IpEp-list { - config "false"; - key "addr"; + // sampling-rate + leaf pktSamplingRate { - // Added containment: Prefix=ip - // Acquired From Package epm - uses epm_IpEp-group; - } + type sflow_samplingRate; + description "The statistical sampling rate for packet sampling from this source"; } - // Mac Ep record - container mac-items { - list MacEp-list { - config "false"; - key "addr"; + // max-sampling-size + leaf maxHeaderSize { - // Added containment: Prefix=mac - // Acquired From Package epm - uses epm_MacEp-group; - } + type sflow_maxSampledSize; + description "The maximum number of bytes that should be copied from a sampled packet. The agent may have an internal maximum and minimum permissible sizes"; } - } - grouping epm_IpEp-group { - leaf addr { - config "false"; - type address_Ip; + // counter-poll-interval + leaf counterPollInterval { + + type sflow_counterPollInterval; + description "The maximum number of seconds between successive samples of the counters associated with this data source"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // max-datagram-size + leaf rcvrMaxDatagramSize { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sflow_maxDatagramSize; + description "The maximum number of data bytes that can be sent in a single sample datagram"; } - // Identifier of the logical interface - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Path"; + // collector-ip + leaf rcvrAddress { - // Type is an MO-Defined-Type - type nw_IfId; + type sflow_addressIp; + description "The IP address of the sFlow collector. If set to 0.0.0.0 not sFlow datagrams will be sent."; } - // Ep flags - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Endpoint Properties and State"; + // collector-vrf + leaf rcvrVrfName { - // Type is an MO-Defined-Type - type epm_EpFlags; + type sflow_VrfName; + description "It holds collector vrf name"; } - // Rel-def target from IpEpRslttoIpEpAtt - // Inherited From epm:IpEp - container rtIpEpRslttoIpEpAtt-items { + // collector-source-ip + leaf rcvrSrcAddress { - // Added containment as a singleton: Prefix=rtIpEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RtIpEpRslttoIpEpAtt_target-group; + type sflow_addressIp; + description "The source ip-address option causes the sent sFlow datagram to use the source IP address as the IP packet source address."; } - // Rel-def target from MacEpRslttoIpEpAtt - // Inherited From epm:IpEp - container rtMacEpRslttoIpEpAtt-items { + // collector-port + leaf rcvrPort { - // Added containment as a singleton: Prefix=rtMacEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RtMacEpRslttoIpEpAtt_target-group; + type sflow_L4Port; + description "The destination port for sFlow datagrams."; } - } - grouping epm_MacEp-group { - leaf addr { - config "false"; - type address_Mac; + // agent-ip + leaf agentAddress { + + type sflow_addressIp; + description "The IP address associated with this agent. In the case of a multi-homed agent, this should be the loopback address of the agent.The address should be an invariant that does not change as interfaces are reconfigured, enabled, disabled, added or removed"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Identifier of the logical interface - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Path"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Admin State"; } - // Ep flags - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Endpoint Properties and State"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type epm_EpFlags; - } - leaf createTs { - config "false"; - type string; + type nw_InstCtrl; + description "Controls"; } - // Rel-def from macEpToIpEpAtt - container rsmacEpToIpEpAtt-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Abstract containment of rsmacEpToIpEpAtt derived from epm:MacEp - list RsMacEpToIpEpAtt-list { - config "false"; - key "tDn"; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + container datasource-items { + list SflowFsDataSource-list { + key "id"; - // Added containment: Prefix=rsmacEpToIpEpAtt - // Acquired From Package epm - uses epm_RsMacEpToIpEpAtt_source-group; + uses sflow_SflowFsDataSource-group; + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel. list"; } + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel."; } } - grouping vlan_CktEp-group { - leaf fabEncap { - type string; - } + grouping sflow_SflowFsDataSource-group { + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel."; - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; - - // Type is an MO-Defined-Type - type l2_DomId; - } - - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; - - // Type is an MO-Defined-Type - type l2_DomId; - } - - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomMode; + type naming_Descr1024; + description "Description"; } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l2_DomAdminSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type l2_DomOperSt; - } - leaf createTs { - config "false"; - type string; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type l2_DomCtrl; - } - leaf encap { - type string; + grouping ssx_Ssx-group { + description "ssx"; + leaf enable { + type boolean; + description "Enable Streaming Statistics Export Instance"; } - // Enforcement preference - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf enfPref { - description "Switching Preference"; + // Global system id + leaf systemId { - // Type is an MO-Defined-Type - type l2_EnfPref; + type ssx_SystemId; + description "Global System Identifier"; } - // It represents the classId for the traffic - // terminating on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf pcTag { - description "It represents the classId for the traffic terminating on this circuit"; + // ssx Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_PcTag; + uses ssx_RecordP-group; + description "ssx Record details list"; + } + description "ssx Record details"; } - // It represents the default qos group for the - // traffic on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf qosPrio { - description "It represents the default qos group for the traffic on this circuit"; + // ssx Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type qos_TenantPrio; - } - leaf epgDn { - type string; + uses ssx_Collector-group; + description "Collector entry list"; + } + description "Collector entry"; } - // Static Mac end point - container mac-items { - list MacEp-list { - config "false"; - key "mac"; + // ssx Monitor + container monitor-items { + list Monitor-list { + key "name"; - // Added containment: Prefix=mac - // Acquired From Package l2 - uses l2_MacEp-group; + uses ssx_Monitor-group; + description "ssx Monitor list"; } + description "ssx Monitor"; } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // System SSX + container sysssx-items { + list SystemSsx-list { + key "name"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + uses ssx_SystemSsx-group; + description "Configure System SSX configs list"; } + description "Configure System SSX configs"; } - // Rel-def target from spanSrcToL2CktEpAtt - // Inherited From vlan:CktEp - container rtspanSpanSrcToL2CktEpAtt-items { - - // Abstract containment of rtspanSpanSrcToL2CktEpAtt derived from l2:CktEp - list RtSpanSpanSrcToL2CktEpAtt-list { + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtspanSpanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RtSpanSpanSrcToL2CktEpAtt_target-group; + uses ssx_FwdInstTarget-group; + description "Forward Instance Target list"; } + description "Forward Instance Target"; } + } - // Rel-def target from domIfConn - // Inherited From l2:BD - // Inherited From vlan:CktEp - container rtfvDomIfConn-items { + grouping ssx_RecordP-group { + description "ssx Record details"; - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; - key "tDn"; + // Record name + leaf name { - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; - } + type ssx_SsxRecordName; + description "Ssx Record Node Name"; } - - // Rel-def from vlanEppAtt - container rsvlanEppAtt-items { - - // Added containment as a singleton: Prefix=rsvlanEppAtt - // Acquired From Package vlan - uses vlan_RsVlanEppAtt_source-group; + leaf ingQueueDep { + type boolean; + description "Enable/Disable Ingress Queue Depth"; } - } - - grouping l2_MacEp-group { - leaf mac { - config "false"; - type address_Mac; + leaf ingQueueDrp { + type boolean; + description "Enable/Disable Ingress Queue Drops"; } - - // The interface on which the endpoint is reachable - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf ethCounters { + type boolean; + description "Enable/Disable Ethernet Counters"; } - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type epm_EpOperSt; + leaf egrQueueDep { + type boolean; + description "Enable/Disable Egress Queue Depth"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf egrQueueDrp { + type boolean; + description "Enable/Disable Egress Queue Drop"; + } + leaf egrQueueMicro { + type boolean; + description "Enable/Disable Egress Queue Microburst Records"; + } + leaf egrQueuePeak { + type boolean; + description "Enable/Disable Egress Queue Buffer Peak Counters"; + } + leaf egrBufferDep { + type boolean; + description "Enable/Disable Egress Buffer Depth"; + } + leaf egrPoolDep { + type boolean; + description "Enable/Disable Egress Pool Group Depth"; } - // Rel-def target from EpDefRefToL2MacEp - // Inherited From l2:MacEp - container rtfvEpDefRefToL2MacEp-items { - - // Abstract containment of rtfvEpDefRefToL2MacEp derived from l2:MacEp - list RtFvEpDefRefToL2MacEp-list { - config "false"; - key "tDn"; + // Interval in uS of collection for this record + leaf interval { - // Added containment: Prefix=rtfvEpDefRefToL2MacEp - // Acquired From Package fv - uses fv_RtFvEpDefRefToL2MacEp_target-group; - } + type ssx_Interval; + description "Time Interval"; } } - grouping vxlan_CktEp-group { - - // Multicast group address (GIPO'), Outer multicast - // encapsulation ip address for this layer2 domain - // Type is an MO-Defined-Type - leaf mcastEncap { - config "false"; - description "Multicast Encapsulation"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; - } + grouping ssx_Collector-group { + description "Collector entry"; - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type + // Remote node name leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Domain ID"; - - // Type is an MO-Defined-Type - type l2_DomId; + type ssx_SsxRemoteNodeName; + description "Ssx Remote Node Name"; } - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type l2_DomId; + type ssx_VrfName; + description "Remote Entity VRF id"; } - - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; - - // Type is an MO-Defined-Type - type l2_DomMode; + leaf dstAddr { + type address_Ip; + description "Remote Entity IP address"; } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type l2_DomAdminSt; + type ssx_SsxPort; + description "Remote Entity L4 Port number"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // IP dscp value + leaf dscp { - // Type is an MO-Defined-Type - type l2_DomOperSt; - } - leaf createTs { - config "false"; - type string; + type qosp_DscpCP; + description "DSCP Value to be used"; } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + // Source node L4 port + leaf srcPort { - // Type is an MO-Defined-Type - type l2_DomCtrl; + type ssx_SsxPort; + description "Source L4 port number"; } - leaf encap { - config "false"; - type string; + leaf srcAddr { + type address_Ip; + description "Source IP Address"; } - - // Enforcement preference - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf enfPref { - config "false"; - description "Switching Preference"; - - // Type is an MO-Defined-Type - type l2_EnfPref; + leaf inbandInterface { + type boolean; + description "inband interface for collector"; } - // It represents the classId for the traffic - // terminating on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf pcTag { - config "false"; - description "It represents the classId for the traffic terminating on this circuit"; + // MTU + leaf mtu { - // Type is an MO-Defined-Type - type actrl_PcTag; + type ssx_Mtu; + description "MTU size of the packets"; } + } - // It represents the default qos group for the - // traffic on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf qosPrio { - config "false"; - description "It represents the default qos group for the traffic on this circuit"; - - // Type is an MO-Defined-Type - type qos_TenantPrio; - } - leaf epgDn { - config "false"; - type string; - } + grouping ssx_Monitor-group { + description "ssx Monitor"; - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // Monitor name + leaf name { - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; - } + type ssx_SsxMonitorName; + description "Ssx Monitor Node Name"; } - // Rel-def target from spanSrcToL2CktEpAtt - // Inherited From vlan:CktEp - // Inherited From vxlan:CktEp - container rtspanSpanSrcToL2CktEpAtt-items { + container rsrecordPAtt-items { - // Abstract containment of rtspanSpanSrcToL2CktEpAtt derived from l2:CktEp - list RtSpanSpanSrcToL2CktEpAtt-list { - config "false"; + list RsRecordPAtt-list { key "tDn"; - // Added containment: Prefix=rtspanSpanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RtSpanSpanSrcToL2CktEpAtt_target-group; + uses ssx_RsRecordPAtt_source-group; + description "Record Policy Attachment list"; } + description "Record Policy Attachment"; } - // Rel-def target from domIfConn - // Inherited From l2:BD - // Inherited From vlan:CktEp - // Inherited From vxlan:CktEp - container rtfvDomIfConn-items { + container rscollectorAtt-items { - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; + uses ssx_RsCollectorAtt_source-group; + description "Reference to Collector list"; } + description "Reference to Collector"; } + } - // Rel-def from vxlanEppAtt - container rsvxlanEppAtt-items { + grouping ssx_SystemSsx-group { + description "Configure System SSX configs"; - // Added containment as a singleton: Prefix=rsvxlanEppAtt - // Acquired From Package vxlan - uses vxlan_RsVxlanEppAtt_source-group; + leaf name { + + type ssx_SsxMonitorName; + description "Ssx Monitor Node Name"; } - } - grouping conftmpl_TemplateTable-group { + container rssysMonitorAtt-items { - // TemplateEntry - container templateEntry-items { - list TemplateEntry-list { - key "name"; + list RsSysMonitorAtt-list { + key "tDn"; - // Added containment: Prefix=templateEntry - // Acquired From Package conftmpl - uses conftmpl_TemplateEntry-group; + uses ssx_RsSysMonitorAtt_source-group; + description "Reference to Monitor list"; } + description "Reference to Monitor"; } } - grouping conftmpl_TemplateEntry-group { - leaf name { - type string; - } - leaf description { - type string; - } - leaf refCount { + grouping ssx_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier + leaf id { config "false"; - type uint32; + + type ssx_FwdInstTargetId; + description "Identifier"; } - // OpTable MO - container opTable-items { + container rsmonitorAtt-items { - // Added containment as a singleton: Prefix=opTable - // Acquired From Package conftmpl - uses conftmpl_OpTable-group; + list RsMonitorAtt-list { + config "false"; + key "tDn"; + + uses ssx_RsMonitorAtt_source-group; + description "Reference to Monitor list"; + } + description "Reference to Monitor"; } } - grouping conftmpl_OpTable-group { - leaf description { - type string; - } + grouping kbs_ContainerTracker-group { + description "Container Tracker entity"; - // OpEntry - container opEntry-items { - list OpEntry-list { - key "operationType"; + // This object holds container tracker server information + container server-items { - // Added containment: Prefix=opEntry - // Acquired From Package conftmpl - uses conftmpl_OpEntry-group; - } + uses kbs_Server-group; + description "Kubernetes server infromation"; } } - grouping conftmpl_OpEntry-group { + grouping kbs_Server-group { + description "Kubernetes server infromation"; - // Type is an MO-Defined-Type - leaf operationType { - description "OperationType"; + // Admin state to configure kubernetes server + leaf adminSt { - // Type is an MO-Defined-Type - type conftmpl_OperationType; + type kbs_adminStType; + description "State to configure kubernetes server properties"; + } + leaf ipAddress { + type address_Ip; + description "ip address of the kubernetes api server"; + } + leaf port { + type uint32 { + range "0..65535"; + } + description "port number of the kubernetes api server"; } - // Type is an MO-Defined-Type - leaf templateType { - description "The type of config template depending on which resource it operates for"; + // VRF info + leaf vrf { - // Type is an MO-Defined-Type - type conftmpl_TemplateType; + type l3_VrfName; + description "VRF to be used while connecting to kubernetes api-server"; } - leaf substituteString { - type string; + + // This object holds container tracker watch information + container watch-items { + + uses kbs_Watch-group; + description "Kubernetes watch infromation"; } - leaf configString { - type string; + } + + grouping kbs_Watch-group { + description "Kubernetes watch infromation"; + + // Admin state to configure kubernetes watch service + leaf adminSt { + + type kbs_adminStType; + description "State to configure kubernetes watch service properties"; } - leaf description { - type string; + leaf service { + type string { + length "0..64"; + } + description "service to watch for in the kubernetes cluster"; } - leaf refCount { - type uint32; + + // acl cfg name to apply when watch is triggered + leaf acl { + + type acl_Name; + description "acl cfg name to apply when watch is triggered"; } } - grouping fc_Entity-group { + grouping copp_Entity-group { + description "CoPP Entity"; + leaf enableFlag { + type boolean; + description "Property Flag to enable or disable rate limiter for various CoPP classes"; + } + leaf error { + config "false"; + type uint64; + default "0"; + description "failure code"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // An fiber channel interface properties - container vfc-items { - list VfcIf-list { - key "id"; + // Holder for copp class policy, each class describes a + // set of rules describing the policer rates + container classp-items { + list Class-list { + key "cName"; - // Added containment: Prefix=vfc - // Acquired From Package l2 - uses l2_VfcIf-group; + uses copp_Class-group; + description "Class list"; } + description "Class"; } - } - grouping l2_VfcIf-group { - - // Parent/Bound Ethernet Ifindex - // Type is an MO-Defined-Type - leaf boundIf { - description "Bound Ethernet Ifindex"; + // Holder for copp class policy, each class describes a + // set of rules describing the policer rates + container policy-items { + list Policy-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf boundMac { - type address_Mac; + uses copp_Policy-group; + description "Policy-map list"; + } + description "Policy-map"; } - // Enable/Disable FKA - // Type is an MO-Defined-Type - leaf disableFka { - description "Enable/Disable FKA"; + // Model for COPP profile + container profile-items { - // Type is an MO-Defined-Type - type l2_disablefka; + uses copp_Profile-group; + description "CoPP Profile"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Model for Copp Copy profile + container name-items { + list CopyProfile-list { + key "affixName"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses copp_CopyProfile-group; + description "CoPP Copy Profile list"; } + description "CoPP Copy Profile"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Scale factor + container scale-items { + list Scale-list { + key "module"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses copp_Scale-group; + description "Scale factor list"; + } + description "Scale factor"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Service-Policy + container service-items { + list Service-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; + uses copp_Service-group; + description "CoPP Service-policy list"; + } + description "CoPP Service-policy"; } - // Administrative port state - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative State"; + // Service-Policy + container servicedyn-items { + list ServiceDynamic-list { + key "name"; - // Type is an MO-Defined-Type - type fc_AdminSt; + uses copp_ServiceDynamic-group; + description "CoPP Service-policy list"; + } + description "CoPP Service-policy"; } + } - // Administrative port mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative Port Mode"; - - // Type is an MO-Defined-Type - type l2_Mode; + grouping copp_Class-group { + description "Class"; + leaf cName { + type string; + description "Class-map name"; } - // Administrative Trunking mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkMode { - description "Administrative Trunking Mode"; + // Match any/all + leaf matchOption { - // Type is an MO-Defined-Type - type l2_TrunkMode; + type copp_MatchOption; + description "Match Option"; } - - // Allowed-vsan-bitmap used to track vsans that are configured on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkVsans { - description "Allowed Vsan Bitmap"; - - // Type is an MO-Defined-Type - type fc_TrunkVsansBitmap; + leaf flag { + type boolean; + description "Property Flag"; } - // Operational port vsan - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operPortVsan { - config "false"; - description "Operational Port vsan"; + leaf name { - // Type is an MO-Defined-Type - type fc_VsanId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operMode { - config "false"; - description "Operational Port Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_Mode; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational Port State - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operSt { + // Allowed rate, committed rate at which the packets + // are allowed into the system + leaf rate { config "false"; - description "Operational Port State"; - // Type is an MO-Defined-Type - type fc_FcIfOperSt; + type policer_Rate; + description "Rate"; } - // Operational State Reason - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operStQual { + // Committed burst size, number of packets to absorb during + // a burst + leaf burst { config "false"; - description "Operational State Reason"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type policer_Burst; + description "Burst"; } - // Operational Trunking mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operTrunkMode { - config "false"; - description "Operational Trunking Mode"; + // Set of match conditions for this copp policer + container match-items { + list Match-list { + key "type"; - // Type is an MO-Defined-Type - type l2_TrunkMode; + uses copp_Match-group; + description "Match Criteria list"; + } + description "Match Criteria"; } - // Up-vsan-bitmap used to track vsans that are up on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkPortUpVsanBmp { - config "false"; - description "Trunk Port Up Vsan Bitmap"; + // Match access-group + container acl-items { + list Acl-list { + key "name"; - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Acl-group; + description "Match access list name list"; + } + description "Match access list name"; } - // Isolated-vsan-bitmap used to track vsans that are isolated on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkIsolatedVsanBmp { - config "false"; - description "Isolated Trunking Vsans Bitmap"; + // Match redirect + container rdirect-items { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Rdirect-group; + description "Match redirect"; } - // Allowed-vsan-bitmap used to track vsans that are configured on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf allowedVsanBmp { - config "false"; - description "Allowed Vsan Bitmap"; + // Match exception fcoe-fib-miss + container fcoe-items { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Fcoe-group; + description "Match Exception fcoe"; } - // wwn of VFC - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf portWwn { - config "false"; - description "Port WWN."; + // Match exception multicast + container mcast-items { + list Multicast-list { + key "mcastOption"; - // Type is an MO-Defined-Type - type fc_Wwn; - } - leaf lastLinkStChg { - config "false"; - type string; + uses copp_Multicast-group; + description "Multicast Exception options list"; + } + description "Multicast Exception options"; } - // Rel-def from SrvExtIfMap - container rssrvExtIfMap-items { - - // Abstract containment of rssrvExtIfMap derived from l2:VfcIf - list RsSrvExtIfMap-list { - key "tDn"; - - // Added containment: Prefix=rssrvExtIfMap - // Acquired From Package l2 - uses l2_RsSrvExtIfMap_source-group; - } - } - - // Rel-def target from VsanIfMap - // Inherited From l2:VfcIf - container rtVsanIfMap-items { - - // Added containment as a singleton: Prefix=rtVsanIfMap - // Acquired From Package vsan - uses vsan_RtVsanIfMap_target-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - container rtvrfMbr-items { + // Match exception + container excep-items { + list ExeOptions-list { + key "option"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses copp_ExeOptions-group; + description "Match exception options list"; + } + description "Match exception options"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Match exception ip + container ip-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses copp_Ip-group; + description "Match Ip version"; } - } - grouping fcoe_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Match exception ip icmp + container icmp-items { + list IpIcmp-list { + key "option"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses copp_IpIcmp-group; + description "icmp options list"; } + description "icmp options"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Match exception ipv6 + container ipv6-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses copp_Ipv6-group; + description "Match Ipv6 version"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Match exception ipv6 icmp + container icmpv6-items { + list Ipv6Icmp-list { + key "option"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses copp_Ipv6Icmp-group; + description "icmp options list"; + } + description "icmp options"; } - // This objects hold per fcoe-mgr instance information. There is only - // one instance of fcoe-mgr running in the system today - container inst-items { + // Match Protocol + container prot-items { + list Protocol-list { + key "type"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package fcoe - uses fcoe_Inst-group; + uses copp_Protocol-group; + description "Match Protocol list"; + } + description "Match Protocol"; } } - grouping fcoe_Inst-group { + grouping copp_Match-group { + description "Match Criteria"; - // FIP Keep Alive/Advertisement - // Type is an MO-Defined-Type - leaf fipKaIntvl { - description "FIP KeepAlive Interval"; + // Match type + leaf type { - // Type is an MO-Defined-Type - type fcoe_FipKaIntvl; + type copp_MatchT; + description "Match type"; } - // Enable Fcoe over FEX HIF Interfaces - // Type is an MO-Defined-Type - leaf enableFex { - description "Enable FCoE over FEX"; + leaf name { - // Type is an MO-Defined-Type - type fcoe_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // VE Loopback - // Type is an MO-Defined-Type - leaf veLoopback { - description "VFID check for VE ports"; + leaf descr { - // Type is an MO-Defined-Type - type fcoe_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } + } - // FCMAP value - // Type is an MO-Defined-Type - leaf fcMap { - description "FCOE Mac Address Prefix"; - - // Type is an MO-Defined-Type - type fc_FcMap; + grouping copp_Acl-group { + description "Match access list name"; + leaf name { + type string; + description "Acl name"; } - - // Fcf Priority - // Type is an MO-Defined-Type - leaf fcfPrio { - description "FCF priority"; - - // Type is an MO-Defined-Type - type fc_FcfPrio; + leaf flag { + type boolean; + description "Property Flag"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + grouping copp_Rdirect-group { + description "Match redirect"; - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Redirect options + leaf rdrct { - // Type is an MO-Defined-Type - type nw_AdminSt; + type copp_Rdrct; + description "Match redirect options"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type nw_InstCtrl; - } + grouping copp_Fcoe-group { + description "Match Exception fcoe"; - // This objects hold information per vfc. - container vfc-items { - list VfcIf-list { - config "false"; - key "id"; + // Fcoe option + leaf option { - // Added containment: Prefix=vfc - // Acquired From Package fcoe - uses fcoe_VfcIf-group; - } + type copp_Fcoe; + description "fcoe-fib-miss"; } } - grouping fcoe_VfcIf-group { + grouping copp_Multicast-group { + description "Multicast Exception options"; - // VFC IfId - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "VFC If Id"; + leaf mcastOption { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_Mcast; + description "Multicast options"; } - leaf peerMac { - config "false"; - type address_Mac; + leaf flag { + type boolean; + description "Property Flag"; } + } - // Peer wwn of VFC - // Type is an MO-Defined-Type - leaf peerWwn { - config "false"; - description "Peer WWN."; + grouping copp_ExeOptions-group { + description "Match exception options"; - // Type is an MO-Defined-Type - type fc_Wwn; - } + leaf option { - // VNP Fip KeepAlive Interval - // Type is an MO-Defined-Type - leaf fipKaIntvl { - config "false"; - description "Fip KeepAlive Interval"; + type copp_Excep; + description "Match options"; + } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // Type is an MO-Defined-Type - type fcoe_FipKaIntvl; + grouping copp_Ip-group { + description "Match Ip version"; + leaf options { + type boolean; + description "Ip Option"; + } + leaf flag { + type boolean; + description "Property Flag"; } + } - // Fcf Priority - // Type is an MO-Defined-Type - leaf fcfPrio { - config "false"; - description "FCF priority"; + grouping copp_IpIcmp-group { + description "icmp options"; - // Type is an MO-Defined-Type - type fc_FcfPrio; - } + // ICMP options + leaf option { - // VFC Mode VE/VF/VNP - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "VFC mode"; + type copp_Icmp; + description "icmp options"; + } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // Type is an MO-Defined-Type - type fc_Mode; + grouping copp_Ipv6-group { + description "Match Ipv6 version"; + leaf options { + type boolean; + description "Ip Option"; } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // This objects hold information per vfc. - container fcid-items { - list VfcLogin-list { - config "false"; - key "fcId"; + grouping copp_Ipv6Icmp-group { + description "icmp options"; - // Added containment: Prefix=fcid - // Acquired From Package fcoe - uses fcoe_VfcLogin-group; - } + // ICMP options + leaf option { + + type copp_Icmp; + description "icmp options"; + } + leaf flag { + type boolean; + description "Property Flag"; } } - grouping fcoe_VfcLogin-group { + grouping copp_Protocol-group { + description "Match Protocol"; - // wwn of VFC - // Type is an MO-Defined-Type - leaf wwn { - config "false"; - description "Vfc WWN."; + leaf type { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_Proto; + description "Protocol List"; + } + leaf flag { + type boolean; + description "Property Flag"; } - // Internal flogi fcid - // Type is an MO-Defined-Type - leaf fcId { - config "false"; - description "Vfc FcId."; + // Match protocol mpls + container mpls-items { - // Type is an MO-Defined-Type - type fc_FcId; + uses copp_MPLSoption-group; + description "MPLS options"; } } - grouping npv_Entity-group { + grouping copp_MPLSoption-group { + description "MPLS options"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf exp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type copp_ExpVal; + description "Experimental value"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf routerAlert { - // Type is an MO-Defined-Type - type nw_AdminSt; + type copp_Ralert; + description "router-alert"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + grouping copp_Policy-group { + description "Policy-map"; + leaf name { + type string; + description "Policy-map name"; + } + leaf flag { + type boolean; + description "Property Flag"; } - // This objects hold per NPV instance information. There is only one instance of NPV instance running in the system today - container inst-items { + // Class included in Policy-map + container classp-items { + list Classp-list { + key "name"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package npv - uses npv_Inst-group; + uses copp_Classp-group; + description "Classp list"; + } + description "Classp"; } } - grouping npv_Inst-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type + grouping copp_Classp-group { + description "Classp"; leaf name { - description "Name"; + type string; + description "Class name"; + } + leaf insertBeforeName { + type string; + description "Insert before Class name"; + } + leaf flag { + type boolean; + description "Property Flag"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Set policer action + container cir-items { + list PolicerAction-list { + key "cirVal cirUnit burstC burstUnit"; + + uses copp_PolicerAction-group; + description "Set police action list"; } + description "Set police action"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Set policer action with pir rate + container policeActionE-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses copp_PolicerActionExc-group; + description "Set police action including exceed"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: npv:Inst->ctrl - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Logging Action + container logging-items { + list Logging-list { + key "threshold levelRange"; - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + uses copp_Logging-group; + description "Logging action list"; + } + description "Logging action"; } - // Runtime Server Interface - container srvif-items { - list SrvIf-list { - config "false"; - key "id"; + // Set cos action + container setCos-items { + list SetCos-list { + key "cosVal"; - // Added containment: Prefix=srvif - // Acquired From Package npv - uses npv_SrvIf-group; + uses copp_SetCos-group; + description "Set cos action list"; } + description "Set cos action"; } - // Runtime Ext Interface - container extif-items { - list ExtIf-list { - config "false"; - key "id"; + container setDscp-items { - // Added containment: Prefix=extif - // Acquired From Package npv - uses npv_ExtIf-group; - } + uses copp_SetDscp-group; + description "Set dscp action"; } } - grouping npv_SrvIf-group { + grouping copp_PolicerAction-group { + description "Set police action"; - // flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags Of Enable/disable In SrvIf"; + leaf cirVal { - // Type is an MO-Defined-Type - type npv_SrvIfFlags; + type copp_IrVal; + description "Cir value"; } - // server interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "Server Interface Default Vsan "; + leaf cirUnit { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_IrUnit; + description "Cir rate"; } - // server interface default ext-if - // Type is an MO-Defined-Type - leaf defaultExtIf { - config "false"; - description "default external interface"; + leaf burstC { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_BurstVal; + description "Burst count"; } - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf burstUnit { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_BurstUnit; + description "BC unit"; } - // srv intface fsm - // Type is an MO-Defined-Type - leaf fsmSt { - config "false"; - description "Runtime Srv Interface FSM"; + leaf conformAction { - // Type is an MO-Defined-Type - type npv_SrvIfFsmSt; + type copp_ConformAction; + description "Conform Action"; } - // interface ID - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf violateAction { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_ViolateAction; + description "Violate action"; } - - // wwpn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; - - // Type is an MO-Defined-Type - type fc_Wwn; + leaf flag { + type boolean; + description "Property Flag"; } + } - // wwnn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + grouping copp_PolicerActionExc-group { + description "Set police action including exceed"; - // Type is an MO-Defined-Type - type fc_Wwn; + leaf cirVal { + + type copp_IrVal; + description "Cir value"; } - // srvIf extIf runtime Mapping MO - container targetif-items { - list TargetIf-list { - config "false"; - key "id"; + leaf cirUnit { - // Added containment: Prefix=targetif - // Acquired From Package npv - uses npv_TargetIf-group; - } + type copp_IrUnit; + description "Cir rate"; } - // NPV srv Vsan - container vsan-items { - list SrvVsan-list { - config "false"; - key "id"; + leaf burstC { - // Added containment: Prefix=vsan - // Acquired From Package npv - uses npv_SrvVsan-group; - } + type copp_BurstVal; + description "Burst count"; } - // NPV srv multiple floi - container srvif-items { - list SrvIfFlogi-list { - config "false"; - key "fcid"; + leaf burstUnit { - // Added containment: Prefix=srvif - // Acquired From Package npv - uses npv_SrvIfFlogi-group; - } + type copp_BurstUnit; + description "BC unit"; } - } - - grouping npv_TargetIf-group { - // mapped ifId - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Mapped Interface Id"; + leaf pirVal { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_IrVal; + description "Pir value"; } - } - - grouping npv_SrvVsan-group { - // vsan ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Server Interface Vsan ID"; + leaf pirUnit { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_IrUnit; + description "Pir rate"; } - } - grouping npv_SrvIfFlogi-group { - - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf burstE { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_BurstVal; + description "Burst exceed "; } - // wwpn - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; + leaf burstEUnit { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_BurstUnit; + description "BE unit"; } - // wwnn - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + leaf conformAction { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ConformAction; + description "Conform Action"; } - // server interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "Server Interface Default Vsan "; + leaf exceedAction { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_ExceedAction; + description "Exceed Action"; } - // server interface default ext-if - // Type is an MO-Defined-Type - leaf defaultExtIf { - config "false"; - description "default external interface"; + leaf violateAction { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_ViolateAction; + description "Violate action"; } } - grouping npv_ExtIf-group { + grouping copp_Logging-group { + description "Logging action"; - // ext intface fsm - // Type is an MO-Defined-Type - leaf fsmSt { - config "false"; - description "Runtime Ext Interface FSM state"; + leaf threshold { - // Type is an MO-Defined-Type - type npv_ExtIfFsmSt; - } - leaf numVsan { - config "false"; - type uint32; + type copp_IrVal; + description "Logging Threshold"; } - // ext interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "External Interface Default Vsan "; + leaf levelRange { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_LevelRange; + description "logging range"; } + } - // Int Flogi Vsan - // Type is an MO-Defined-Type - leaf flogiVsan { - config "false"; - description "Interface Flogi Vsan"; - - // Type is an MO-Defined-Type - type fc_VsanId; + grouping copp_SetCos-group { + description "Set cos action"; + leaf inner { + type boolean; + description "Set cos inner"; } - // Oper Port Mode - // Type is an MO-Defined-Type - leaf operPortMode { - config "false"; - description "Oper Port Mode"; + // Cos value + leaf cosVal { - // Type is an MO-Defined-Type - type fc_Mode; + type copp_CosVal; + description "Cos Value"; } - - // Logic Interface Index - // Type is an MO-Defined-Type - leaf logIfIndex { - config "false"; - description "Logic Interface Index"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf flag { + type boolean; + description "Property Flag"; } + } - // flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags Of Enable/disable In ExtIf"; - - // Type is an MO-Defined-Type - type npv_ExtIfFlags; + grouping copp_SetDscp-group { + description "Set dscp action"; + leaf tunnel { + type boolean; + description "set dscp tunnel"; } - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf dscpVal { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_DscpVal; + description "Dscp Value"; } + } - // interface ID - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping copp_Profile-group { + description "CoPP Profile"; - // wwpn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; + // Profile type + leaf prof { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ProfT; + description "Profile type "; } + } - // wwnn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + grouping copp_CopyProfile-group { + description "CoPP Copy Profile"; + + // Profile type + leaf profile { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ProfT; + description "Profile type "; } - // srvIf extIf runtime Mapping MO - container targetif-items { - list TargetIf-list { - config "false"; - key "id"; + // affix type + leaf affix { - // Added containment: Prefix=targetif - // Acquired From Package npv - uses npv_TargetIf-group; - } + type copp_Affix; + description "Affix type"; } + leaf affixName { + type string; + description "Prefix/Suffix Name"; + } + leaf copyNum { + type uint32; + description "Number of copp copies to this MO"; + } + } - // NPV ext Vsan - container vsan-items { - list ExtVsan-list { - config "false"; - key "id"; - - // Added containment: Prefix=vsan - // Acquired From Package npv - uses npv_ExtVsan-group; + grouping copp_Scale-group { + description "Scale factor"; + leaf scaleVal { + type decimal64 { + fraction-digits 6; } + description "scale factor value"; + } + leaf module { + type uint16; + description "Module number"; } } - grouping npv_ExtVsan-group { - - // vsan ID - // Type is an MO-Defined-Type - leaf id { + grouping copp_Service-group { + description "CoPP Service-policy"; + leaf name { + type string; + description "service-policy name"; + } + leaf error { config "false"; - description "External Interface Vsan ID"; - - // Type is an MO-Defined-Type - type fc_VsanId; + type uint64; + default "0"; + description "failure code"; } + } - // extVsan state - // Type is an MO-Defined-Type - leaf fsmSt { + grouping copp_ServiceDynamic-group { + description "CoPP Service-policy"; + leaf name { + type string; + description "service-policy name"; + } + leaf error { config "false"; - description "External Interface Vsan State"; - - // Type is an MO-Defined-Type - type npv_ExtIfFsmSt; + type uint64; + default "0"; + description "failure code"; } } - grouping vsanmgr_Entity-group { + grouping glean_Entity-group { + description "Glean Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // Vsan represents a generic CktEp - container vsan-items { - list Vsan-list { - key "encap"; - - // Added containment: Prefix=vsan - // Acquired From Package vsan - uses vsan_Vsan-group; - } - } - - // From CLI side, for removal of a vlan-vsan map, - // "no fcoe vsan" is used. Since no vsan-id is passed in this CLI, - // the RtBdVsanMap MO cannot be used (since tDn is unknown) "BdVsanCfg" MO used for Vlan-Vsan map removal request from CLI side - container bdvsancfg-items { - - // Added containment as a singleton: Prefix=bdvsancfg - // Acquired From Package vsan - uses vsan_BdVsanCfg-group; - } - - // This objects hold per vsan-mgr instance information. - // There is only one instance of vsan-mgr running in the system today + // Holds glean instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package vsanmgr - uses vsanmgr_Inst-group; + uses glean_Inst-group; + description "Glean Instance"; } } - grouping vsan_Vsan-group { - leaf encap { - type string; - } + grouping glean_Inst-group { + description "Glean Instance"; - // Fabric encap identifying vsan:CktEp - // vsan domain id - // Type is an MO-Defined-Type - leaf id { - description "Vsan ID"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type fc_VsanId; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // admin state - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Administrator State"; + config "false"; - // Type is an MO-Defined-Type - type vsan_AdminSt; + type nw_AdminSt; + description "Admin State"; } - // oper state - // Type is an MO-Defined-Type - leaf operSt { + // Instance controls + leaf ctrl { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type vsan_OperSt; + type nw_InstCtrl; + description "Controls"; } - // Vsan loadbalancing type - // Type is an MO-Defined-Type - leaf lbType { - description "Loadbalancing Type"; + // This objects hold per glean domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "encap"; - // Type is an MO-Defined-Type - type vsan_LbType; - } - leaf vsanName { - type string; + uses glean_Dom-group; + description "Domain list"; + } + description "Domain"; } + } - // Type is an MO-Defined-Type - leaf interop { - description "Iterop Mode value"; - - // Type is an MO-Defined-Type - type vsan_InteropMode; + grouping glean_Dom-group { + description "Domain"; + leaf encap { + config "false"; + type string; + description "VRF Encapsulation"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Rel-def target from BdVsanMap - // Inherited From vsan:Vsan - container rtBdVsanMap-items { - - // Added containment as a singleton: Prefix=rtBdVsanMap - // Acquired From Package l2 - uses l2_RtBdVsanMap_target-group; - } - - // Rel-def from VsanIfMap - container rsvsanIfMap-items { - - // Abstract containment of rsvsanIfMap derived from vsan:Vsan - list RsVsanIfMap-list { - key "tDn"; - - // Added containment: Prefix=rsvsanIfMap - // Acquired From Package vsan - uses vsan_RsVsanIfMap_source-group; - } - } - - // Rel-def from VsanPathAtt - container rsvsanPathAtt-items { - - // Abstract containment of rsvsanPathAtt derived from vsan:Vsan - list RsVsanPathAtt-list { + // This objects hold per glean l2 domain (BD) information + container bd-items { + list BD-list { config "false"; - key "tDn"; + key "encap"; - // Added containment: Prefix=rsvsanPathAtt - // Acquired From Package vsan - uses vsan_RsVsanPathAtt_source-group; + uses glean_BD-group; + description "Domain list"; } + description "Domain"; } } - grouping vsan_BdVsanCfg-group { + grouping glean_BD-group { + description "Domain"; + leaf encap { + config "false"; + type string; + description "BD Encapsulation"; + } - // vlanId to be apply Config on - // Type is an MO-Defined-Type - leaf vlanId { - description "Vlan id"; + // Gateway mac + leaf gwMac { + config "false"; - // Type is an MO-Defined-Type - type l2_DomId; + type glean_GwMac; + description "Gateway MAC"; } - // create-flag to track - // Type is an MO-Defined-Type - leaf createFlag { - description "Created/removed status"; + // Fabric multicast group + leaf fmcastGrp { + config "false"; - // Type is an MO-Defined-Type - type fc_CreateState; + type mcast_GrpIp; + description "Fabric Multicast Group"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping vsanmgr_Inst-group { - - // Number of Configured VSANS - // Type is an MO-Defined-Type - leaf numConfiguredVsan { - config "false"; - description "Current Configured Vsan Count"; + // This objects holds gateway information. For a given BD, + // there could be multiple gateways + container gw-items { + list Gateway-list { + config "false"; + key "ip"; - // Type is an MO-Defined-Type - type fc_NumVsans; + uses glean_Gateway-group; + description "Gateway list"; + } + description "Gateway"; } + } + + grouping glean_Gateway-group { + description "Gateway"; - // Number of Successfully Created VSANS - // Type is an MO-Defined-Type - leaf numCreatedVsan { + // Gateway ip address + leaf ip { config "false"; - description "Current Created Vsan Count"; - // Type is an MO-Defined-Type - type fc_NumVsans; + type glean_GwIp; + description "Gateway IP Address"; } + } + + grouping hmm_Entity-group { + description "Holds Host Mobility Manager (HMM) Entity information."; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // - Admin state leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Operational state + leaf operSt { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_EntOperSt; + description "Operational State"; } - // VsanMbrIf class - container vsanmbr-items { - list VsanMbrIf-list { - config "false"; - key "id"; + // Fabric Forwarding Object + container fwdinst-items { - // Added containment: Prefix=vsanmbr - // Acquired From Package vsanmgr - uses vsanmgr_VsanMbrIf-group; - } + uses hmm_FwdInst-group; + description "The object that represents the HMM Fabric Forwarding Instance (responsible for host detection and mobility). Currently only one HMM Forwarding instance is supported."; } } - grouping vsanmgr_VsanMbrIf-group { - - // if-index (Secondary Key) - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface Index"; - - // Type is an MO-Defined-Type - type nw_IfId; + grouping hmm_FwdInst-group { + description "The object that represents the HMM Fabric Forwarding Instance (responsible for host detection and mobility). Currently only one HMM Forwarding instance is supported."; + leaf amac { + type address_Mac; + description "Anycast Gateway MAC address."; } - - // port static, non trunking vsan - // Type is an MO-Defined-Type - leaf staticVsan { - config "false"; - description "Static VSAN"; - - // Type is an MO-Defined-Type - type fc_VsanId; + leaf limitVlanMac { + type uint16 { + range "5..2048"; + } + default "2048"; + description "This is to limit the number of hosts learnt by HMM in the same subnet with same MAC information."; } - // allowed-vsan-bitmap used to track vsans that are configured on the interface - // Type is an MO-Defined-Type - leaf allowedVsanBmp { - config "false"; - description "Allowed Vsan Bitmap"; + // selective-host-probe + leaf selHostProbe { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + type hmm_Boolean; + description "When set to True, host mobility will be triggered when a remote host route exists irrespective of the sequence id."; + } + leaf adminDist { + type uint16 { + range "1..255"; + } + default "190"; + description "Set the administrative distance for HMM "; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - - grouping fm_Entity-group { - // MPLS Static feature information - container mplsstatic-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=mplsstatic - // Acquired From Package fm - uses fm_MplsStatic-group; + type nw_AdminSt; + description "Admin State"; } - // MPLS OAM feature information - container mplsoam-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=mplsoam - // Acquired From Package fm - uses fm_MplsOam-group; + type nw_InstCtrl; + description "Controls"; } - // SRTE feature information - container srte-items { + // Fabric Forwarding Interface Object + container if-items { + list FwdIf-list { + key "id"; - // Added containment as a singleton: Prefix=srte - // Acquired From Package fm - uses fm_SRTE-group; + uses hmm_FwdIf-group; + description "Object that holds HMM Fabric Forwarding mode information related to an Interface. list"; + } + description "Object that holds HMM Fabric Forwarding mode information related to an Interface."; } - // MPLS Segment-routing feature information - container mplssgmntrtg-items { + // Fabric Forwarding EVPN Object + container evpn-items { - // Added containment as a singleton: Prefix=mplssgmntrtg - // Acquired From Package fm - uses fm_MplsSgmntRtg-group; + uses hmm_FwdEvpn-group; + description "The object that represents the HMM Fabric Forwarding EVPN instance. This model is not available unless EVPN is configured. Currently only one HMM Forwarding EVPN instance is supported."; } - // MPLS LDP feature information - container mplsldp-items { + // Holds HMM vrf information + container tenant-items { + list TenantDb-list { + config "false"; + key "vrfName"; - // Added containment as a singleton: Prefix=mplsldp - // Acquired From Package fm - uses fm_MplsLdp-group; + uses hmm_TenantDb-group; + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network. list"; + } + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network."; } + } - // MPLS L3vpn feature information - container mplsl3vpn-items { + grouping hmm_FwdIf-group { + description "Object that holds HMM Fabric Forwarding mode information related to an Interface."; - // Added containment as a singleton: Prefix=mplsl3vpn - // Acquired From Package fm - uses fm_MplsL3vpn-group; + // Forwarding mode + leaf mode { + + type hmm_FwdMode; + description "HMM Fabric Forwarding mode information for the interface."; } - // MPLS EVPN feature information - container mplsevpn-items { + leaf name { - // Added containment as a singleton: Prefix=mplsevpn - // Acquired From Package fm - uses fm_MplsEvpn-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // BGP feature information - container bgp-items { + leaf descr { - // Added containment as a singleton: Prefix=bgp - // Acquired From Package fm - uses fm_Bgp-group; + type naming_Descr1024; + description "Description"; } - // HMM feature information - container hmm-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=hmm - // Acquired From Package fm - uses fm_Hmm-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // EVPN feature information - container evpn-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=evpn - // Acquired From Package fm - uses fm_Evpn-group; + type nw_IfAdminSt; + description "Admin State"; } - // NGOAM feature information - container ngoam-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=ngoam - // Acquired From Package fm - uses fm_Ngoam-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // POE feature information - container poe-items { - - // Added containment as a singleton: Prefix=poe - // Acquired From Package fm - uses fm_Poe-group; + grouping hmm_FwdEvpn-group { + description "The object that represents the HMM Fabric Forwarding EVPN instance. This model is not available unless EVPN is configured. Currently only one HMM Forwarding EVPN instance is supported."; + leaf ddHmmoves { + type uint16 { + range "1..1000"; + } + default "5"; + description "User Setting to mark a host as duplicate if it does ddHmmoves number of moves."; + } + leaf ddHnsecs { + type uint16 { + range "2..36000"; + } + default "180"; + description "User Setting to mark a host as duplicate if it does ddHmmoves moves in ddHnsecs seconds."; + } + leaf dhrtimeout { + type uint16 { + range "30..36000"; + } + default "30"; + description "User Setting to periodically (dhrtimeout seconds) check if a Duplicate marked Host is no longer duplicate."; + } + leaf dhrcount { + type uint16 { + range "1..3000"; + } + default "5"; + description "Number of times (dhrcount) to periodically check if a Duplicate marked Host is no longer duplicate."; } - // MSDP feature information - container msdp-items { + leaf name { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package fm - uses fm_Msdp-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // DHCP feature information - container dhcp-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=dhcp - // Acquired From Package fm - uses fm_Dhcp-group; + type nw_AdminSt; + description "Admin State"; } - // Interface-Vlan feature information - container ifvlan-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=ifvlan - // Acquired From Package fm - uses fm_InterfaceVlan-group; + type nw_InstCtrl; + description "Controls"; } + } - container bashshell-items { - - // Added containment as a singleton: Prefix=bashshell - // Acquired From Package fm - uses fm_BashShell-group; + grouping hmm_TenantDb-group { + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network."; + leaf vrfName { + config "false"; + type string; + description "Tenant (VRF) Name"; + } + leaf vrfState { + config "false"; + type string; + description "Tenant (VRF) State."; + } + leaf vniId { + config "false"; + type uint32; + description "VNI (Virtual Network Identifier) ID of the Tenant."; + } + leaf refCount { + config "false"; + type uint32; + description "Reference count to keep track of the number of references to this tenant."; } - container scpserver-items { + // Holds Address family information + container af-items { + list TenantDBAf-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=scpserver - // Acquired From Package fm - uses fm_ScpServer-group; + uses hmm_TenantDBAf-group; + description "Holds information related to a particular Tenant Address Family. list"; + } + description "Holds information related to a particular Tenant Address Family."; } + } - container lldp-items { + grouping hmm_TenantDBAf-group { + description "Holds information related to a particular Tenant Address Family."; - // Added containment as a singleton: Prefix=lldp - // Acquired From Package fm - uses fm_Lldp-group; - } + // Address family type + leaf type { + config "false"; - // LACP feature information - container lacp-items { + type bgp_AfT; + description "Tenant Address Family type (IPv4/IPv6)."; + } + leaf tblState { + config "false"; + type string; + description "Tenant Table State."; + } + leaf localHosts { + config "false"; + type uint32; + description "Number of locally connected hosts in the Tenant network."; + } + leaf remoteHosts { + config "false"; + type uint32; + description "remote hosts"; + } + leaf aggregates { + config "false"; + type uint32; + description "aggregates"; + } + } - // Added containment as a singleton: Prefix=lacp - // Acquired From Package fm - uses fm_Lacp-group; + grouping bd_Entity-group { + description "System BD"; + leaf descr { + config "false"; + type string; + description "BD"; } - // Nxapi feature information - container nxapi-items { + // If false, value is explicitly set globally for all SVIs + leaf sysDefaultSVIAutostate { - // Added containment as a singleton: Prefix=nxapi - // Acquired From Package fm - uses fm_Nxapi-group; + type bd_DefaultSVIAutoState; + description "Disable/enable autoState for SVI interface"; } - // Telnet feature information - container telnet-items { + // This object holds vlan config information + container vlanconfig-items { + list VlanConfig-list { + key "accEncap"; - // Added containment as a singleton: Prefix=telnet - // Acquired From Package fm - uses fm_Telnet-group; + uses l2_VlanConfig-group; + description "Vlan Configuration list"; + } + description "Vlan Configuration"; } - // Nxdb feature information - container nxdb-items { + // Layer2 Bridge-domain. Domain with regular ports and/or + // epg-vlans as members. + container bd-items { - // Added containment as a singleton: Prefix=nxdb - // Acquired From Package fm - uses fm_Nxdb-group; + list BD-list { + key "fabEncap"; + + uses l2_BD-group; + description "Bridge Domain list"; + } + description "Bridge Domain"; } - // VnSegment feature information - container vnsegment-items { + // 802.1q Vlan + container vlan-items { - // Added containment as a singleton: Prefix=vnsegment - // Acquired From Package fm - uses fm_VnSegment-group; + list CktEp-list { + key "encap"; + + uses vlan_CktEp-group; + description "Vlan list"; + } + description "Vlan"; } - // Tacacs+ feature information - container tacacsplus-items { + // Vxlan circuit + container vxlan-items { - // Added containment as a singleton: Prefix=tacacsplus - // Acquired From Package fm - uses fm_Tacacsplus-group; + list CktEp-list { + config "false"; + key "encap"; + + uses vxlan_CktEp-group; + description "Vxlan list"; + } + description "Vxlan"; } - // UDLD feature information - container udld-items { + container resvlan-items { - // Added containment as a singleton: Prefix=udld - // Acquired From Package fm - uses fm_Udld-group; + uses resmgr_ResVlan-group; + description "Resmgr vlan reservation"; } + } - // NAT feature information - container nat-items { - - // Added containment as a singleton: Prefix=nat - // Acquired From Package fm - uses fm_Nat-group; + grouping l2_VlanConfig-group { + description "Vlan Configuration"; + leaf accEncap { + type string; + description "Access Encapsulation"; } - // VRRPv3 feature information - container vrrpv3-items { + // Vlan Mac learn enable/disable + leaf vlanMacLearn { - // Added containment as a singleton: Prefix=vrrpv3 - // Acquired From Package fm - uses fm_Vrrpv3-group; + type l2fm_Learning; + description "VlanMacLearn state"; } - // VRRP feature information - container vrrp-items { + container ipqos-items { - // Added containment as a singleton: Prefix=vrrp - // Acquired From Package fm - uses fm_Vrrp-group; + uses ipqos_Entity-group; + description "QoS configuration space"; } + } - // HSRP feature information - container hsrp-items { + grouping ipqos_Entity-group { + description "QoS configuration space"; - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package fm - uses fm_Hsrp-group; + leaf statsState { + + type ipqos_statsState; + description "Globally enable/disable QoS statistics"; } - // Netflow feature information - container netflow-items { + leaf qosPoliciesStatsState { - // Added containment as a singleton: Prefix=netflow - // Acquired From Package fm - uses fm_Netflow-group; + type ipqos_statsState; + default "disabled"; + description + "Globally enable/disable + QoS-Policies statistics"; + } + leaf dynamicBufferShare { + type boolean; + description "Globally enable/disable dynamic-buffer-sharing"; + } + leaf mode { + type boolean; + description "System QoS Mode, sets the mode"; } - // Analytics feature information - container analytics-items { + container statClear-items { - // Added containment as a singleton: Prefix=analytics - // Acquired From Package fm - uses fm_Analytics-group; + uses ipqos_StatClear-group; + description "clear qos statistics"; } - // BFD feature information - container bfd-items { + // Queuing QoS + container queuing-items { - // Added containment as a singleton: Prefix=bfd - // Acquired From Package fm - uses fm_Bfd-group; + uses ipqos_Queuing-group; + description "Queuing type QoS"; } - // Tunnel feature information - container tunnelif-items { + // Network QoS + container nw-items { - // Added containment as a singleton: Prefix=tunnelif - // Acquired From Package fm - uses fm_Tunnelif-group; + uses ipqos_NwQoS-group; + description "Network QoS"; } - // nv overlay feature information - container nvo-items { + // Default QoS + container dflt-items { - // Added containment as a singleton: Prefix=nvo - // Acquired From Package fm - uses fm_Nvo-group; + uses ipqos_DefaultQoS-group; + description "Default type QoS"; } - // PBR feature information - container pbr-items { + container globalpriorflowctrl-items { - // Added containment as a singleton: Prefix=pbr - // Acquired From Package fm - uses fm_Pbr-group; + uses ipqos_GlobalPriorFlowCtrl-group; + description "Global priority flow control"; } - // PIM feature information - container pim-items { + // Logging level + container loglevel-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package fm - uses fm_Pim-group; + uses ipqos_LogLevel-group; + description "configure logging level parameters"; } + } - // NGMVPN feature information - container ngmvpn-items { + grouping ipqos_StatClear-group { + description "clear qos statistics"; - // Added containment as a singleton: Prefix=ngmvpn - // Acquired From Package fm - uses fm_Ngmvpn-group; + // StatClear pmap type + leaf pmapType { + + type ipqos_policyType; + description "policy-map type"; } - // VPC feature information - container vpc-items { + // StatClear pmap diretion + leaf direction { - // Added containment as a singleton: Prefix=vpc - // Acquired From Package fm - uses fm_Vpc-group; + type ipqos_policyDirection; + description "policy-map direction input or output"; } - // VTP feature information - container vtp-items { + // StatClear ethernet list + leaf ethernet { - // Added containment as a singleton: Prefix=vtp - // Acquired From Package fm - uses fm_Vtp-group; + type ipqos_ethernetList; + description "list of ethernet interfaces"; } - container pvlan-items { + // StatClear vlan list + leaf vlan { - // Added containment as a singleton: Prefix=pvlan - // Acquired From Package fm - uses fm_Pvlan-group; + type ipqos_vlanList; + description "list of vlan interfaces"; } - // NTP feature information - container ntpd-items { + // StatClear portChan list + leaf portChan { - // Added containment as a singleton: Prefix=ntpd - // Acquired From Package fm - uses fm_Ntpd-group; + type ipqos_portChanList; + description "list of port-channel interfaces"; } + leaf timeStamp { + type union { + type string; + type uint64; + } + description "INTERNAL:time stamp"; + } + } - // Telemetry feature information - container telemetry-items { + grouping ipqos_Queuing-group { + description "Queuing type QoS"; - // Added containment as a singleton: Prefix=telemetry - // Acquired From Package fm - uses fm_Telemetry-group; + // service policy applied on target + container policy-items { + + uses ipqos_ServPol-group; + description "service policy instance"; } - // OSPF feature information - container ospf-items { + // class-map + container c-items { - // Added containment as a singleton: Prefix=ospf - // Acquired From Package fm - uses fm_Ospf-group; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Holds "vendor interop controller" info - container vctrl-items { + // policy-map + container p-items { - // Added containment as a singleton: Prefix=vctrl - // Acquired From Package fm - uses fm_VendorCntrl-group; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // macsec feature information - container macsec-items { + container copyPMap-items { - // Added containment as a singleton: Prefix=macsec - // Acquired From Package fm - uses fm_Macsec-group; + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } + } - // Npiv feature information - container npiv-items { + grouping ipqos_ServPol-group { + description "service policy instance"; - // Added containment as a singleton: Prefix=npiv - // Acquired From Package fm - uses fm_Npiv-group; + // Ingress direction + container in-items { + + uses ipqos_Ingress-group; + description "Ingress direction"; } - // PIM6 feature information - container pim6-items { + // Ingress direction + container out-items { - // Added containment as a singleton: Prefix=pim6 - // Acquired From Package fm - uses fm_Pim6-group; + uses ipqos_Egress-group; + description "Egress direction"; } + } - // ISIS feature information - container isis-items { + grouping ipqos_Ingress-group { + description "Ingress direction"; - // Added containment as a singleton: Prefix=isis - // Acquired From Package fm - uses fm_Isis-group; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses ipqos_If-group; + description "Interface list"; + } + description "Interface"; } - // HW_Telemetry feature information - container hwtelemetry-items { + // system qos + container sys-items { - // Added containment as a singleton: Prefix=hwtelemetry - // Acquired From Package fm - uses fm_HwTelemetry-group; + uses ipqos_System-group; + description "System"; } - // Port Security feature information - container portsec-items { + // Service policy instance + container pmap-items { - // Added containment as a singleton: Prefix=portsec - // Acquired From Package fm - uses fm_PortSec-group; + uses ipqos_Inst-group; + description "Service Policy name"; } } - grouping fm_MplsStatic-group { + grouping ipqos_If-group { + description "Interface"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // interface name string + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type nw_IfId; + description "Interface name in a short form. eth1/1 or pc1"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + leaf delIntfBit { + type boolean; + default "false"; + description "hidden delete Interface bit for internal use"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // Service policy instance + container pmap-items { - // Type is an MO-Defined-Type - type fm_Instance; - } - leaf conflictingFeature { - config "false"; - type string; + uses ipqos_Inst-group; + description "Service Policy name"; } + container cmap-items { + list Stats-list { + config "false"; + key "cmapName statType"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { + uses ipqos_Stats-group; + description "QoS statistics list"; + } + description "QoS statistics"; + } + container queCmap-items { + list QueuingStats-list { config "false"; - key "id"; + key "cmapName statType"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_QueuingStats-group; + description "Queuing statistics list"; } + description "Queuing statistics"; } } - grouping fm_ServiceInstance-group { - leaf id { + grouping ipqos_Inst-group { + description "Service Policy name"; + + // name of policy map + leaf name { + + type ipqos_PMapName; + description "Policy-map Name"; + } + leaf stats { + type boolean; + default "true"; + description "turn on/off statistics"; + } + leaf configStatus { config "false"; type uint32; + description "Configuration status"; } - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status of the instance"; + container rspolicyInstToPMap-items { - // Type is an MO-Defined-Type - type fm_InstOperState; + uses ipqos_RsPolicyInstToPMap_source-group; + description "Link from policy instance to policy-map"; } } - grouping fm_MplsOam-group { + grouping ipqos_Stats-group { + description "QoS statistics"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cmapName { + config "false"; - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Class map name"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf statType { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_StatsType; + description "QoS statistics type"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pmapName { config "false"; - description "Maximum number of instances supported"; - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PMapName; + description "Policy map name"; } - leaf conflictingFeature { + leaf dropPackets { config "false"; - type string; + type uint64; + description "Drop packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf dropBytes { + config "false"; + type uint64; + description "Drop byte count"; } - } - - grouping fm_SRTE-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf txPackets { + config "false"; + type uint64; + description "Transmit packet count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf txBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Transmit byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf conformBytes { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Conform byte count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf exceedBytes { + config "false"; + type uint64; + description "Exceed byte count"; + } + leaf violateBytes { + config "false"; + type uint64; + description "Violate byte count"; } } - grouping fm_MplsSgmntRtg-group { + grouping ipqos_QueuingStats-group { + description "Queuing statistics"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cmapName { + config "false"; - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Class map name"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf statType { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_StatsType; + description "QoS statistics type"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pmapName { config "false"; - description "Maximum number of instances supported"; - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PMapName; + description "Policy map name"; } - leaf conflictingFeature { + leaf dropPackets { config "false"; - type string; + type uint64; + description "Drop packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf dropBytes { + config "false"; + type uint64; + description "Drop byte count"; } - } - - grouping fm_MplsLdp-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf txPackets { + config "false"; + type uint64; + description "Transmit packet count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf txBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Transmit byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf currQueueDepth { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Current queue depth in bytes"; } - leaf conflictingFeature { + leaf maxQueueDepth { config "false"; - type string; + type uint64; + description "Maximum queue depth in bytes"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf ingQDropPackets { + config "false"; + type uint64; + description "Ingress Queue Drop packet count"; } - } - - grouping fm_MplsL3vpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf ingQDepthBytes { + config "false"; + type uint64; + description "Ingress Queue Depth in bytes"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf randDropBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Random detect drop byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf randDropPackets { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Random detect drop packet count"; } - leaf conflictingFeature { + leaf randEcnMarkedPackets { config "false"; - type string; + type uint64; + description "Random detect ECN Marked packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf pfcTxPpp { + config "false"; + type uint64; + description "Priority-based Flow Control Per Packet Pause Transmitted count"; } - } - - grouping fm_MplsEvpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf pfcRxPpp { + config "false"; + type uint64; + description "Priority-based Flow Control Per Packet Pause Received count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf pfcwdShutdownCount { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Priority-based Flow Control WatchDog Queue Shutdown Count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pfcwdRestoredCount { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Priority-based Flow Control WatchDog Queue Restored Count"; } - leaf conflictingFeature { + leaf pfcwdFlushedPackets { config "false"; - type string; + type uint64; + description "Priority-based Flow Control WatchDog Queue Flushed Packets"; } } - grouping fm_Bgp-group { + grouping ipqos_System-group { + description "System"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Service policy instance + container pmap-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Inst-group; + description "Service Policy name"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_Egress-group { + description "Egress direction"; - // Type is an MO-Defined-Type - type fm_OperState; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses ipqos_If-group; + description "Interface list"; + } + description "Interface"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // system qos + container sys-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_System-group; + description "System"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Service policy instance + container pmap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Inst-group; + description "Service Policy name"; + } + } + + grouping ipqos_CMapEntity-group { + description "ClassMap"; + container name-items { + list CMapInst-list { + key "name"; + + uses ipqos_CMapInst-group; + description "Class map instance list"; } + description "Class map instance"; } } - grouping fm_Hmm-group { + grouping ipqos_CMapInst-group { + description "Class map instance"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // name of class map + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Name of class-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // type of matching + leaf matchType { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_QoSMatchType; + description "Match-any, match-all or match-first"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // access-group + container acl-items { + list Acl-list { + key "name"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Acl-group; + description "Match ACL list"; } + description "Match ACL"; } - } - grouping fm_Evpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // dscp matching + container dscp-items { + list Dscp-list { + key "val"; - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dscp-group; + description "Match dscp list"; + } + description "Match dscp"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // ip rtp matching + container ipRtp-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_IpRtp-group; + description "Match ip rtp"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // packet length matching + container packetLength-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PacketLength-group; + description "Match Match packet length"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // cos marking + container cos-items { + list Cos-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Cos-group; + description "Match cos list"; } + description "Match cos"; } - } - grouping fm_Ngoam-group { + // mpls experimental matching + container mplsExperimental-items { + list MPLSExperimental-list { + key "val"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + uses ipqos_MPLSExperimental-group; + description "Match mpls experimental list"; + } + description "Match mpls experimental"; + } - // Type is an MO-Defined-Type - type fm_AdminState; + // precedence matching + container precedence-items { + list Precedence-list { + key "val"; + + uses ipqos_Precedence-group; + description "Match precedence list"; + } + description "Match precedence"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // protocol matching + container protocol-items { + list Protocol-list { + key "val"; - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_Protocol-group; + description "Match protocol list"; + } + description "Match protocol"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // description + container Description-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_Description-group; + description "description"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // NOT dscp matching + container dscpNot-items { + list NotDscp-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_NotDscp-group; + description "Match not dscp list"; } + description "Match not dscp"; } - } - - grouping fm_Poe-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // NOT cos matching + container cosNot-items { + list NotCos-list { + key "val"; - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_NotCos-group; + description "Match not cos list"; + } + description "Match not cos"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // NOT mpls experimental matching + container mplsExperimentalNot-items { + list NotMPLSExperimental-list { + key "val"; - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_NotMPLSExperimental-group; + description "Match not mpls experimental list"; + } + description "Match not mpls experimental"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // NOT precedence matching + container precedenceNot-items { + list NotPrecedence-list { + key "val"; - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_NotPrecedence-group; + description "Match not precedence list"; + } + description "Match not precedence"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // NOT protocol matching + container protocolNot-items { + list NotProtocol-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_NotProtocol-group; + description "Match not protocol list"; } + description "Match not protocol"; } - } - - grouping fm_Msdp-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // NOT ip rtp matching + container ipRtpNot-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_NotIpRtp-group; + description "Match not ip rtp"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // packet length matching + container packetLengthNot-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_NotPacketLength-group; + description "Match not packet length"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // match qos-group + container grp-items { + list QoSGrp-list { + key "id"; - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_QoSGrp-group; + description "Match qos-group list"; + } + description "Match qos-group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container rsclassMapToPolicyMap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + list RsClassMapToPolicyMap-list { + key "tDn"; + + uses ipqos_RsClassMapToPolicyMap_source-group; + description "policy-maps using this class-map list"; } + description "policy-maps using this class-map"; } } - grouping fm_Dhcp-group { + grouping ipqos_Acl-group { + description "Match ACL"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // ACL to match + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type acl_Name; + description "Match using ACL"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_Dscp-group { + description "Match dscp"; + + // dscp value + leaf val { + + type ipqos_Dscp; + description "Dscp value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + grouping ipqos_IpRtp-group { + description "Match ip rtp"; + leaf configStatus { config "false"; - description "Maximum number of instances supported"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; + } + } - // Type is an MO-Defined-Type - type fm_Instance; + grouping ipqos_PacketLength-group { + description "Match Match packet length"; + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Cos-group { + description "Match cos"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // cos value + leaf val { + + type ipqos_Cos; + description "Cos value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_InterfaceVlan-group { + grouping ipqos_MPLSExperimental-group { + description "Match mpls experimental"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // mpls experimental value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MPLSExperimental; + description "MPLS experimental value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_Precedence-group { + description "Match precedence"; - // Type is an MO-Defined-Type - type fm_Instance; + // dscp value + leaf val { + + type ipqos_Prec; + description "Precedence value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Protocol-group { + description "Match protocol"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // protocol value + leaf val { + + type ipqos_Protocol; + description "Protocol value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_BashShell-group { + grouping ipqos_Description-group { + description "description"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // description value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_DescStr; + description "Description string"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_NotDscp-group { + description "Match not dscp"; - // Type is an MO-Defined-Type - type fm_OperState; - } + // dscp value + leaf val { - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + type ipqos_Dscp; + description "Not dscp value"; + } + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_NotCos-group { + description "Match not cos"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // cos value + leaf val { + + type ipqos_Cos; + description "Not cos value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_ScpServer-group { + grouping ipqos_NotMPLSExperimental-group { + description "Match not mpls experimental"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // mpls experimental value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MPLSExperimental; + description "Not mpls experimental value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_NotPrecedence-group { + description "Match not precedence"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // precedence value + leaf val { + + type ipqos_Prec; + description "Not precedence value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Lldp-group { + grouping ipqos_NotProtocol-group { + description "Match not protocol"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // protocol value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Protocol; + description "Not protocol value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + grouping ipqos_NotIpRtp-group { + description "Match not ip rtp"; + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + leaf range { + type string; + description "range string values"; + } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + grouping ipqos_NotPacketLength-group { + description "Match not packet length"; + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; } } - grouping fm_Lacp-group { + grouping ipqos_QoSGrp-group { + description "Match qos-group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // QoS-Group ID + leaf id { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "QoS group ID"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; - } + grouping ipqos_PMapEntity-group { + description "PolicyMap"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // policy map instance + container name-items { + list PMapInst-list { + key "name"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_PMapInst-group; + description "Policy map instance list"; } + description "Policy map instance"; } } - grouping fm_Nxapi-group { + grouping ipqos_PMapInst-group { + description "Policy map instance"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // policy map name + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PMapName; + description "Name of policy-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + // type of matching + leaf matchType { + + type ipqos_QoSMatchType; + description "Match-any, match-all or match-first"; + } + leaf refCount { config "false"; - description "Operational status"; + type uint32; + description "policy-map reference count"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } - // Type is an MO-Defined-Type - type fm_OperState; + // match a class-map + container cmap-items { + list MatchCMap-list { + key "name"; + + uses ipqos_MatchCMap-group; + description "Match class-map list"; + } + description "Match class-map"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // description + container Description-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_Description-group; + description "description"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { + container rtipqosPolicyInstToPMap-items { + + list RtIpqosPolicyInstToPMap-list { config "false"; - key "id"; + key "tDn"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_RtIpqosPolicyInstToPMap_target-group; + description "Link from policy instance to policy-map list"; } + description "Link from policy instance to policy-map"; + } + + container rtclassMapToPolicyMap-items { + + uses ipqos_RtClassMapToPolicyMap_target-group; + description "policy-maps using this class-map"; } } - grouping fm_Telnet-group { + grouping ipqos_MatchCMap-group { + description "Match class-map"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // use class-map with this name + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Match using class-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf prevCMap { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_MatchCMapName; + description "Insert after the given class-map"; } - } - - grouping fm_Nxdb-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf nextCMap { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MatchCMapName; + description "Insert before the given class-map"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } - // Type is an MO-Defined-Type - type fm_OperState; + container setCos-items { + + uses ipqos_SetCos-group; + description "Set Cos"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // set MTU + container mtu-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetMTU-group; + description "Set MTU"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Aggregate Policer + container aggr-items { + list AggregatePolicer-list { + key "policerName"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_AggregatePolicer-group; + description "Aggregate Policer for policy list"; } + description "Aggregate Policer for policy"; } - } - - grouping fm_VnSegment-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set precedence + container setPrecedence-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_SetPrecedence-group; + description "Set Precedence"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // set dscp + container setDscp-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_SetDscp-group; + description "Set Dscp"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // set qos-group + container setGrp-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetQoSGrp-group; + description "Set QoS-Group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // set dlb-disable + container setDlbDisable-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_SetDlbDisable-group; + description "Set dlb-disable"; } - } - - grouping fm_Tacacsplus-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // queue-limit + container QueueLimit-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_QueueLimit-group; + description "Queue limit"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // pause priority group + container pausepg-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_PausePg-group; + description "Pause Priority Group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // pause + container pause-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Pause-group; + description "Pause PFC COS"; } - } - grouping fm_Udld-group { + // dpp + container dpp-items { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dpp-group; + description "Configure Dynamic Packet Prioritization"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // bandwidth + container setBW-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_SetBW-group; + description "Set bandwidth"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // bandwidth + container setRemBW-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetRemBW-group; + description "Set remaining bandwidth"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // shape traffic + container shape-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Shape-group; + description "Shape traffic"; } - } - - grouping fm_Nat-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // police + container police-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Police-group; + description "Police traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // priority + container prio-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_Priority-group; + description "Traffic class priority"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + container RandDet-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_RandomDetect-group; + description "Set random detect"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container RandDetNonEcn-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_RandomDetectNonEcn-group; + description "Set random detect non ECN thresholds"; } - } - - grouping fm_Vrrpv3-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set DCTCP + container dctcp-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dctcp-group; + description "Data Center TCP"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // burst-detect + container burstdetect-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_BurstDetect-group; + description "Burst detect"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // burst-detect state + container burstdetectstate-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_BurstDetectState-group; + description "Burst detect"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // afd + container afd-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Afd-group; + description "configure AFD parameters"; } } - grouping fm_Vrrp-group { + grouping ipqos_SetCos-group { + description "Set Cos"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Cos value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CosNewNone; + description "Cos value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; - } + grouping ipqos_SetMTU-group { + description "Set MTU"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // MTU value + leaf value { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_MTU; + description "Set MTU value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Hsrp-group { + grouping ipqos_AggregatePolicer-group { + description "Aggregate Policer for policy"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Policer name + leaf policerName { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PolicerName; + description "Policer name for Aggregate/Shared-Policer QoS"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_SetPrecedence-group { + description "Set Precedence"; - // Type is an MO-Defined-Type - type fm_Instance; + // Precedence value + leaf val { + + type ipqos_Prec; + description "Precedence value"; + } + leaf tunnel { + type boolean; + description "tunnel on or off"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_SetDscp-group { + description "Set Dscp"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // Dscp value + leaf val { + + type ipqos_Dscp; + description "Dscp value"; + } + leaf tunnel { + type boolean; + description "tunnel on or off"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Netflow-group { + grouping ipqos_SetQoSGrp-group { + description "Set QoS-Group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // QoS-Group ID + leaf id { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "QoS group ID"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + grouping ipqos_SetDlbDisable-group { + description "Set dlb-disable"; + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_QueueLimit-group { + description "Queue limit"; + + // queue-limit + leaf QueueLimitVal { + + type ipqos_QueueLimit; + description "Value in bytes/kbytes/mbytes"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // queue-limit unit + leaf QueueLimitUnit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_QueueLimitUnit; + description "Bytes/kbytes/mbytes"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // queue-limit dynamic + leaf dynamic { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_QueueLimitDynamic; + description "Queue-limit dynamic value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Analytics-group { + grouping ipqos_PausePg-group { + description "Pause Priority Group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PriorityGrpVal; + description "Priority Group value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_Pause-group { + description "Pause PFC COS"; + + // buffer-size + leaf bufferSize { + + type ipqos_BuffSize; + description "size in bytes"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // pause-threshold + leaf pauseThreshold { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_XoffBytes; + description "xoff bytes"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // resume-threshold + leaf resumeThreshold { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_XonBytes; + description "xon bytes"; + } + leaf pfcCos0 { + type boolean; + description "Configure pfc-cos 0 value"; + } + leaf pfcCos1 { + type boolean; + description "Configure pfc-cos 1 value"; + } + leaf pfcCos2 { + type boolean; + description "Configure pfc-cos 2 value"; + } + leaf pfcCos3 { + type boolean; + description "Configure pfc-cos 3 value"; + } + leaf pfcCos4 { + type boolean; + description "Configure pfc-cos 4 value"; + } + leaf pfcCos5 { + type boolean; + description "Configure pfc-cos 5 value"; + } + leaf pfcCos6 { + type boolean; + description "Configure pfc-cos 6 value"; + } + leaf pfcCos7 { + type boolean; + description "Configure pfc-cos 7 value"; + } + leaf receive { + type boolean; + description "Configure pause receive only mode"; + } + leaf noDrop { + type boolean; + description "Configure pause no-drop mode"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Bfd-group { + grouping ipqos_Dpp-group { + description "Configure Dynamic Packet Prioritization"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set-qos-group + leaf setQosGroup { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CosNewNone; + description "QoS Group Value"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_SetBW-group { + description "Set bandwidth"; - // Type is an MO-Defined-Type - type fm_OperState; - } + // Percent of available bandwidth + leaf val { - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + type ipqos_Percent; + description "Available bandwidth"; + } + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_SetRemBW-group { + description "Set remaining bandwidth"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // Percent of available bandwidth + leaf val { + + type ipqos_Percent; + description "Remaining bandwidth"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Tunnelif-group { + grouping ipqos_Shape-group { + description "Shape traffic"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf min { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ShapeRate; + description "Minimum shape rate"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf minRateUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "Minimum shape rate unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf max { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ShapeRate; + description "Maximum shape rate"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf maxRateUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_RateUnit; + description "Maximum shape rate unit"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Nvo-group { + grouping ipqos_Police-group { + description "Police traffic"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cirRate { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceRate; + description "CIR"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf cirUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "CIR unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf bcRate { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_BurstRate; + description "CIR burst"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf bcUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_BurstRateUnit; + description "CIR burst unit"; } - } - - grouping fm_Pbr-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf pirRate { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceRate; + description "PIR"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf pirUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "PIR unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf beRate { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_BurstRate; + description "PIR burst"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf beUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_BurstRateUnit; + description "PIR burst unit"; } - } - grouping fm_Pim-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf conformAction { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceAction; + description "Conform action"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf conformSetCosTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_Cos; + description "set cos for conforming traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf conformSetDscpTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_Dscp; + description "set dscp for conforming traffic"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf conformSetPrecTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Prec; + description "set precedence for conforming traffic"; } - } - - grouping fm_Ngmvpn-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf conformSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "set qos-group for conforming traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf exceedAction { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_PoliceAction; + description "Exceed action"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf exceedSetCosTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_Cos; + description "set cos for exceeding traffic"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf exceedSetDscpTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Dscp; + description "set dscp for exceeding traffic"; } - } - grouping fm_Vpc-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf exceedSetPrecTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Prec; + description "set precedence for exceeding traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf exceedSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_QoSGrpId; + description "set qos-group for exceeding traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf violateAction { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PoliceAction; + description "Violate action"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf violateSetCosTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Cos; + description "set cos for violating traffic"; } - } - - grouping fm_Vtp-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf violateSetDscpTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Dscp; + description "set dscp for violating traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf violateSetPrecTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_Prec; + description "set precedence for violating traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf violateSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_QoSGrpId; + description "set qos-group for violating traffic"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Priority-group { + description "Traffic class priority"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf level { + + type ipqos_PriorityLevel; + description "Optional priority level"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Pvlan-group { + grouping ipqos_RandomDetect-group { + description "Set random detect"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // minimun thresold + leaf minThreshold { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThreshVal; + description "min threshold"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // minimun thresold unit + leaf minThresholdUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_ThreshUnit; + description "min threshold"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // max threshold + leaf maxThreshold { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThreshVal; + description "max threshold"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // max thresold unit + leaf maxThresholdUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_ThreshUnit; + description "max threshold"; } - } - grouping fm_Ntpd-group { + // drop availability + leaf dropAvail { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + type ipqos_DropAvailRange; + description "drop availability range"; + } - // Type is an MO-Defined-Type - type fm_AdminState; + // threshold weight + leaf weight { + + type ipqos_Weight; + description "weight range"; + } + leaf capAverage { + type boolean; + description "cap average"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // mesh or burst optimization + leaf optimization { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RandOptType; + description "random optimization type"; + } + leaf ecn { + type boolean; + description "ecn flag"; } } - grouping fm_Telemetry-group { + grouping ipqos_RandomDetectNonEcn-group { + description "Set random detect non ECN thresholds"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // minimun thresold + leaf minThresholdNonEcn { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThreshVal; + description "non ecn min threshold"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // minimun thresold unit + leaf minThresholdUnitNonEcn { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_ThreshUnit; + description "non ecn min threshold"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // max threshold + leaf maxThresholdNonEcn { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThreshVal; + description "non ecn max threshold"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // max thresold unit + leaf maxThresholdUnitNonEcn { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_ThreshUnit; + description "non ecn max threshold"; + } + + // drop availability + leaf dropAvailNonEcn { + + type ipqos_DropAvailRange; + description "drop availability range"; } } - grouping fm_Ospf-group { + grouping ipqos_Dctcp-group { + description "Data Center TCP"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // ecn-threshold value + leaf ecnThreshold { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ecnThresh; + description "Set ecn-threshold value"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_BurstDetect-group { + description "Burst detect"; - // Type is an MO-Defined-Type - type fm_OperState; + // rise-threshold + leaf riseThreshold { + + type ipqos_Threshold; + description "Rise Threshold value for Micro burst detection"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // rise-threshold unit + leaf riseThresUnit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThresUnit; + description "Rise Threshold Unit for Micro burst detection"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // fall-threshold + leaf fallThreshold { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Threshold; + description "Fall Threshold value for Micro burst detection"; } - } - - grouping fm_VendorCntrl-group { - // To enable/disable feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // fall-threshold unit + leaf fallThresUnit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThresUnit; + description "Fall Threshold Unit for Micro burst detection"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } } - grouping fm_Macsec-group { + grouping ipqos_BurstDetectState-group { + description "Burst detect"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Enable + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_BurstState; + description "Burst detect state enabled/disabled"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_Afd-group { + description "configure AFD parameters"; - // Type is an MO-Defined-Type - type fm_Instance; + // queue-desired + leaf queueDesiredVal { + + type ipqos_QueueDesired; + description "Approximate Fair Discard value"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // queue-desired unit + leaf queueDesiredUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_QueueDesiredUnit; + description "Units for Approximate Fair Discard value"; + } + leaf ecn { + type boolean; + description "Approximate Fair Discard ECN flag"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Npiv-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; - } + grouping ipqos_CopyPMap-group { + description "Copy qos objects"; - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf lastFrom { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_PMapName; + description "Name of source policy-map to copy from"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf lastTo { + config "false"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_PMapName; + description "Name of policy-map resulting from copying"; } } - grouping fm_Pim6-group { + grouping ipqos_NwQoS-group { + description "Network QoS"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // service policy applied on target + container policy-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_ServPol-group; + description "service policy instance"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // class-map + container c-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // policy-map + container p-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container copyPMap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } } - grouping fm_Isis-group { + grouping ipqos_DefaultQoS-group { + description "Default type QoS"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // service policy applied on target + container policy-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_ServPol-group; + description "service policy instance"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // class-map + container c-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // policy-map + container p-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Shared-Policer QoS + container sharedpolicer-items { + list SharedPolicer-list { + key "policerName"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_SharedPolicer-group; + description "Shared-Policer QoS list"; } + description "Shared-Policer QoS"; } - } - - grouping fm_HwTelemetry-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + container copyPMap-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; - } + grouping ipqos_SharedPolicer-group { + description "Shared-Policer QoS"; - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf policerName { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PolicerName; + description "Policer name for Aggregate/Shared-Policer QoS"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // police + container police-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Police-group; + description "Police traffic"; } } - grouping fm_PortSec-group { + grouping ipqos_GlobalPriorFlowCtrl-group { + description "Global priority flow control"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // override interface + leaf overrideInterface { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_OverrideIntfMode; + description "Enable/Disable priority-flow-control override-interface mode off"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; - } + grouping ipqos_LogLevel-group { + description "configure logging level parameters"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf loggingLevel { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_LoggingLevel; + description "configure Logging Level value"; } } - grouping fset_FeatureSet-group { - leaf name { + grouping l2_BD-group { + description "Bridge Domain"; + leaf fabEncap { + type string; + description "The Layer 2 bridge-domain Fabric encapsulation (VNID), input format is vlan-id "; + } + leaf accEncap { type string; + description "The Layer 2 access encapsulation (VLAN or VNID), input format is vxlan-vnid"; } - // To uninstall/install - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Enable cross connect on vlan + leaf xConnect { - // Type is an MO-Defined-Type - type fset_AdminState; + type l2_XConnect; + description "Enable Cross Connect on VLAN"; } - leaf force { + leaf longName { type boolean; + default "false"; + description "Enable or disable long name of 128 characters for VLAN"; } - // Operational state of the featureSet - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fset_OperState; - } - } - - grouping installer_Install-group { - - // Target Image Path - // Type is an MO-Defined-Type - leaf imgPath { - description "Full image path for target installation image"; + // This represents the parameter used by the node + // (i.e. Leaf) for enabling forwarding modes (route + // or bridge or both). Default is enable both + leaf fwdMode { - // Type is an MO-Defined-Type - type reference_URI; - } - leaf imgName { - config "false"; - type string; + type l2_FwdMode; + description "The Layer 2 bridge-domain parameter mode used by the node for enabling forwarding modes"; } - // To choose between Install all or impact or Abort install - // Type is an MO-Defined-Type - leaf operation { - description "Select install or impact operation or abort current installation"; + // This represents the parameter used by the node + // (i.e. Leaf) for enabling classical bridging or + // bridging with IP. Default is bridge with IP + leaf bridgeMode { - // Type is an MO-Defined-Type - type installer_InstOper; + type l2_BridgeMode; + description "Bridging Mode"; } - // Disruptive or Non-disruptive installation - // Type is an MO-Defined-Type - leaf installType { - description "Perform non-disruptive installation"; + // Forwarding controls + leaf fwdCtrl { - // Type is an MO-Defined-Type - type installer_InstType; + type l2_FwdCtrl; + description "The Layer 2 bridge-domain forwarding controls"; } - - // Forcefully upgrade BIOS - // Type is an MO-Defined-Type - leaf biosForce { - description "Forcefully upgrade the BIOS version"; - - // Type is an MO-Defined-Type - type installer_InstEnum; + leaf bdDefDn { + config "false"; + type string; + description "The bridge domain name"; } - // Stage of the install task - // Type is an MO-Defined-Type - leaf stage { + // Controller Id + leaf controllerId { config "false"; - description "Stage of installation operation"; - // Type is an MO-Defined-Type - type installer_Stage; + type aggregate_ControllerIdBitmap; + description "Controller ID for Vlan"; } - // Upgrade error string - // Type is an MO-Defined-Type - leaf upgErr { - config "false"; - description "Install upgrade error value"; + // BdState + leaf BdState { - // Type is an MO-Defined-Type - type installer_InstErr; + type l2_DomAdminSt; + description "Bridge Domain State can be active or suspended"; } - leaf upgErrStr { + leaf BdOperName { config "false"; type string; + description "OperName"; } - // Installation table - container mod-items { - list InstallUpgTable-list { - config "false"; - key "module"; - - // Added containment: Prefix=mod - // Acquired From Package installer - uses installer_InstallUpgTable-group; - } - } - } + // Vlan mac packet-classify + leaf macPacketClassify { - grouping installer_InstallUpgTable-group { - leaf module { - config "false"; - type uint32; + type l2_PktClassify; + description "Vlan mac packet classify"; } - // Per Module Upg table row - container modtype-items { - list ModUpgTable-list { - config "false"; - key "modType"; + leaf name { - // Added containment: Prefix=modtype - // Acquired From Package installer - uses installer_ModUpgTable-group; + type naming_Name256 { + length "1..64"; } + description "Vlan name that can be configured using name cli"; } - } - grouping installer_ModUpgTable-group { - leaf module { - config "false"; - type uint32; + // domain id + leaf id { + + type l2_DomId; + description "Domain ID"; } - // module Type - // Type is an MO-Defined-Type - leaf modType { + // Internal domain id + leaf hwId { config "false"; - description "Module type"; - // Type is an MO-Defined-Type - type installer_InstModType; - } - leaf runVer { - config "false"; - type string; + type l2_DomId; + description "Hardware Resource ID"; } - leaf targetVer { - config "false"; - type string; + + // Vlan mode + leaf mode { + + type l2_DomMode; + description "Mode"; } - // Upgrade Required YES/NO - // Type is an MO-Defined-Type - leaf upgReq { - config "false"; - description "Upgrade required result"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type installer_InstEnum; + type l2_DomAdminSt; + description "Admin State"; } - // Status of the mod install task - // Type is an MO-Defined-Type - leaf upgStatus { + // oper state + leaf operSt { config "false"; - description "Upgrade status of each module"; - // Type is an MO-Defined-Type - type installer_UpgStatusType; + type l2_DomOperSt; + description "Operational State"; } - leaf failStr { + leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; } - } - grouping interface_Entity-group { - leaf descr { - config "false"; - type string; + // Controls + leaf ctrl { + + type l2_DomCtrl; + description "Controls"; } - // Physical ethernet interface information holder - container phys-items { - list PhysIf-list { + // VLAN Membership Interface + container member-items { + list VlanMemberIf-list { + config "false"; key "id"; - // Added containment: Prefix=phys - // Acquired From Package l1 - uses l1_PhysIf-group; + uses l2_VlanMemberIf-group; + description "VLAN membership interface list"; } + description "VLAN membership interface"; } - // Aggregated interface, collection of physical ports; - // aka port channel - container aggr-items { - list AggrIf-list { - key "id"; + // Multicast group entity, this refers to the multicast + // group entity that each tenant's bridge domain uses to + // flood its traffic over the fabric + container fmgrp-items { + list Grp-list { + key "addr"; - // Added containment: Prefix=aggr - // Acquired From Package pc - uses pc_AggrIf-group; + uses fmcast_Grp-group; + description "Group list"; } + description "Group"; } - // Routed concrete interface (aka routed port) - container rtd-items { - list RtdIf-list { - key "id"; + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; - // Added containment: Prefix=rtd - // Acquired From Package l3 - uses l3_RtdIf-group; + uses epm_Db-group; + description "Database list"; } + description "Database"; } - // Routed loopback interface - container lb-items { - list LbRtdIf-list { - key "id"; + // 802.1q Vlan + container vlan-items { + list CktEp-list { + key "encap"; - // Added containment: Prefix=lb - // Acquired From Package l3 - uses l3_LbRtdIf-group; + uses vlan_CktEp-group; + description "Vlan list"; } + description "Vlan"; } - // Routed encap interface (aka sub if) - container encrtd-items { - list EncRtdIf-list { - key "id"; + // Vxlan circuit + container vxlan-items { + list CktEp-list { + config "false"; + key "encap"; - // Added containment: Prefix=encrtd - // Acquired From Package l3 - uses l3_EncRtdIf-group; + uses vxlan_CktEp-group; + description "Vxlan list"; } + description "Vxlan"; } - // Routed Vlan Interface (SVI) Svi:If gets created for L2:BD, immediately after - // l2:BD is attached to l3:Ctx. Use case: Communication - // between two Hosts in different BDs. This is achieved - // through routing. The resource limit of svi is same - // as the resource limit of BD - container svi-items { - list If-list { - key "id"; + container evi-items { - // Added containment: Prefix=svi - // Acquired From Package svi - uses svi_If-group; - } + uses nvo_Evi-group; + description "Configuration of EVI under VLAN"; } - container tunnelif-items { - list If-list { - key "id"; - // Added containment: Prefix=tunnelif - // Acquired From Package tunnelif - uses tunnelif_If-group; + container rsextBD-items { + + list RsExtBD-list { + key "tDn"; + + uses l2_RsExtBD_source-group; + description "External BD Attachment list"; } + description "External BD Attachment"; } - } - grouping l1_PhysIf-group { + container rsbdVsanMap-items { - // Administrative port link Transmit Reset - // Type is an MO-Defined-Type - leaf linkTransmitReset { - description "Link Transmit Reset"; + list RsBdVsanMap-list { + key "tDn"; - // Type is an MO-Defined-Type - type l1_LinkTransmitReset; + uses l2_RsBdVsanMap_source-group; + } } - // Administrative port link debounce interval for link debounce Link up - // Type is an MO-Defined-Type - leaf linkDebounceLinkUp { - description "Link Debounce Interval - LinkUp Event"; - - // Type is an MO-Defined-Type - type l1_LinkDebounceLinkUp; - } + container rtfvDomIfConn-items { - // port speed-group - // Type is an MO-Defined-Type - leaf speedGroup { - description "Speed Group"; + list RtFvDomIfConn-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l1_SpeedGroup; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; + } + description "Domain Interface Attachment"; } - // Beacon port state - // Type is an MO-Defined-Type - leaf beacon { - description "Beacon State"; + container dbgVlanStats-items { - // Type is an MO-Defined-Type - type l1_Beacon; + uses l2_VlanStats-group; + description "Vlan counters"; } + } - // Voice VLAN ID - // Type is an MO-Defined-Type - leaf voiceVlanId { - description "Voice VLAN ID"; + grouping l2_VlanMemberIf-group { + description "VLAN membership interface"; - // Type is an MO-Defined-Type - type l1_VoiceVlanId; + leaf id { + config "false"; + + type nw_IfId; + description "Interface Identifier"; } - // Voice vlan type - // Type is an MO-Defined-Type - leaf voiceVlanType { - description "Voice vlan type"; + leaf vlan { + config "false"; - // Type is an MO-Defined-Type - type l1_VoiceVlanType; + type l2_DomId; + description "VLAN"; } + } - // Switchport Priority Extend COS - // Type is an MO-Defined-Type - leaf voicePortCos { - description "Voice Port Cos"; + grouping fmcast_Grp-group { + description "Group"; - // Type is an MO-Defined-Type - type l1_VoicePortCos; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Switchport Priority Extend trust - // Type is an MO-Defined-Type - leaf voicePortTrust { - description "Voice Port Trust"; + // Multicast group address + leaf addr { - // Type is an MO-Defined-Type - type l1_VoicePortTrust; + type mcast_GrpIp; + description "Multicast Group IP Address"; } + } - // FEC knob - // Type is an MO-Defined-Type - leaf FECMode { - description "FEC Mode"; + grouping epm_Db-group { + description "Database"; - // Type is an MO-Defined-Type - type l1_FECMode; + // Type of the database + leaf type { + config "false"; + + type epm_DbT; + description "Type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Ip Ep record + container ip-items { + list IpEp-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + uses epm_IpEp-group; + description "IP Endpoint list"; } + description "IP Endpoint"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Mac Ep record + container mac-items { + list MacEp-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses epm_MacEp-group; + description "MAC Endpoint list"; + } + description "MAC Endpoint"; } + } - // Switching state - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf switchingSt { + grouping epm_IpEp-group { + description "IP Endpoint"; + leaf addr { config "false"; - description "Switching State"; - - // Type is an MO-Defined-Type - type l1_SwitchingSt; + type address_Ip; + description "Address"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // Identifier of the logical interface + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type l1_Speed; + type nw_IfId; + description "Path"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // Ep flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type l1_Duplex; + type epm_EpFlags; + description "Endpoint Properties and State"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + container rtIpEpRslttoIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_AutoNeg; + uses eptrk_RtIpEpRslttoIpEpAtt_target-group; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + container rtMacEpRslttoIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_Mtu; + uses eptrk_RtMacEpRslttoIpEpAtt_target-group; } + } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; - - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + grouping epm_MacEp-group { + description "MAC Endpoint"; + leaf addr { + config "false"; + type address_Mac; + description "Address"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type l1_Mode; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { - description "Administrative port layer"; + // Identifier of the logical interface + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type l1_Layer; + type nw_IfId; + description "Path"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // Ep flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type l1_Mdix; + type epm_EpFlags; + description "Endpoint Properties and State"; } - - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; - - // Type is an MO-Defined-Type - type l1_Delay; + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Endpoint Create TimeStamp"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + container rsmacEpToIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_LinkDebounce; - } + list RsMacEpToIpEpAtt-list { + config "false"; + key "tDn"; - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + uses epm_RsMacEpToIpEpAtt_source-group; + } + } + } - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + grouping vlan_CktEp-group { + description "Vlan"; + leaf fabEncap { + type string; + description "The encapsulation used in the fabric to implement flood control"; } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + leaf name { - // Type is an MO-Defined-Type - type l1_Bw; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + // domain id + leaf id { - // Type is an MO-Defined-Type - type l1_Medium; + type l2_DomId; + description "Domain ID"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + // Internal domain id + leaf hwId { + config "false"; - // Type is an MO-Defined-Type - type l1_InheritBw; + type l2_DomId; + description "Hardware Resource ID"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + // Vlan mode + leaf mode { - // Type is an MO-Defined-Type - type l1_SpanMode; + type l2_DomMode; + description "Mode"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_LinkLog; + type l2_DomAdminSt; + description "Admin State"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + // oper state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + type l2_DomOperSt; + description "Operational State"; } - leaf routerMac { - type address_Mac; - default "0"; + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + // Controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_PortT; + type l2_DomCtrl; + description "Controls"; } - - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; - - // Type is an MO-Defined-Type - type l1_PortUsage; + leaf encap { + type string; + description "Encap identifying the epg"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Enforcement preference + leaf enfPref { - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type l2_EnfPref; + description "Switching Preference"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // It represents the classId for the traffic + // terminating on this circuit + leaf pcTag { - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + type actrl_PcTag; + description "It represents the classId for the traffic terminating on this circuit"; } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; + // It represents the default qos group for the + // traffic on this circuit + leaf qosPrio { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type qos_TenantPrio; + description "It represents the default qos group for the traffic on this circuit"; } - - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; - - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + leaf epgDn { + type string; + description "EPG DN"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + // Static Mac end point + container mac-items { + list MacEp-list { + config "false"; + key "mac"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + uses l2_MacEp-group; + description "Desired MAC Endpoint list"; + } + description "Desired MAC Endpoint"; } - container priorflowctrl-items { + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=priorflowctrl - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrl-group; + uses epm_Db-group; + description "Database list"; + } + description "Database"; } - container priorflowctrlwd-items { - - // Added containment as a singleton: Prefix=priorflowctrlwd - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrlWd-group; - } + container rtfvDomIfConn-items { - container physExtd-items { + list RtFvDomIfConn-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=physExtd - // Acquired From Package l1 - uses l1_PhysIfExtended-group; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; + } + description "Domain Interface Attachment"; } - // EEE policy - container eeep-items { + container rsvlanEppAtt-items { - // Added containment as a singleton: Prefix=eeep - // Acquired From Package l1 - uses l1_EeeP-group; + uses vlan_RsVlanEppAtt_source-group; + description "Epp Attachment"; } + } - // Storm control policy - container stormctrlp-items { - - // Added containment as a singleton: Prefix=stormctrlp - // Acquired From Package l1 - uses l1_StormCtrlP-group; + grouping l2_MacEp-group { + description "Desired MAC Endpoint"; + leaf mac { + config "false"; + type address_Mac; + description "MAC"; } - // Load interval policy - container loadp-items { + // The interface on which the endpoint is reachable + leaf if { + config "false"; - // Added containment as a singleton: Prefix=loadp - // Acquired From Package l1 - uses l1_LoadP-group; + type nw_IfId; + description "Interface"; } - // Vlan Mapping policy - container vlanmapping-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=vlanmapping - // Acquired From Package l1 - uses l1_VlanMapping-group; + type epm_EpOperSt; + description "Operational State"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Physical interface information holder - container phys-items { - - // Added containment as a singleton: Prefix=phys - // Acquired From Package ethpm - uses ethpm_PhysIf-group; - } + container rtfvEpDefRefToL2MacEp-items { - // AggrMbrIf class - container aggrmbrif-items { + list RtFvEpDefRefToL2MacEp-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=aggrmbrif - // Acquired From Package pc - uses pc_AggrMbrIf-group; + uses fv_RtFvEpDefRefToL2MacEp_target-group; + } } + } - container multisiteiftracking-items { + grouping vxlan_CktEp-group { + description "Vxlan"; - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; + // Multicast group address (GIPO'), Outer multicast + // encapsulation ip address for this layer2 domain + leaf mcastEncap { + config "false"; + + type mcast_GrpIp; + description "Multicast Encapsulation"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + leaf name { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Rel-def target from InbandConf - // Inherited From l1:PhysIf - container rtInbandConf-items { + // domain id + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtInbandConf - // Acquired From Package l2 - uses l2_RtInbandConf_target-group; + type l2_DomId; + description "Domain ID"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - container rtextConf-items { + // Internal domain id + leaf hwId { + config "false"; - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + type l2_DomId; + description "Hardware Resource ID"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - container rtbrConf-items { + // Vlan mode + leaf mode { + config "false"; - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + type l2_DomMode; + description "Mode"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - container rtfvNodePortAtt-items { + // admin state + leaf adminSt { + config "false"; - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + type l2_DomAdminSt; + description "Admin State"; + } - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + // oper state + leaf operSt { + config "false"; + + type l2_DomOperSt; + description "Operational State"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; } + description "Creation Timestamp"; } - // Rel-def target from mbrIfs - // Inherited From l1:PhysIf - container rtmbrIfs-items { + // Controls + leaf ctrl { + config "false"; - // Added containment as a singleton: Prefix=rtmbrIfs - // Acquired From Package pc - uses pc_RtMbrIfs_target-group; + type l2_DomCtrl; + description "Controls"; + } + leaf encap { + config "false"; + type string; + description "Encap identifying the epg"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - container rtvrfMbr-items { + // Enforcement preference + leaf enfPref { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type l2_EnfPref; + description "Switching Preference"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - container rtphysRtdConf-items { + // It represents the classId for the traffic + // terminating on this circuit + leaf pcTag { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type actrl_PcTag; + description "It represents the classId for the traffic terminating on this circuit"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // It represents the default qos group for the + // traffic on this circuit + leaf qosPrio { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type qos_TenantPrio; + description "It represents the default qos group for the traffic on this circuit"; + } + leaf epgDn { + config "false"; + type string; + description "EPG DN"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Abstraction of epm database + container db-items { + list Db-list { config "false"; - key "tDn"; + key "type"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses epm_Db-group; + description "Database list"; } + description "Database"; } - // Rel-def target from tunnelMbrIfs - // Inherited From l1:PhysIf - container rttunnelTunnelMbrIfs-items { + container rtfvDomIfConn-items { - // Abstract containment of rttunnelTunnelMbrIfs derived from l1:PhysIf - list RtTunnelTunnelMbrIfs-list { + list RtFvDomIfConn-list { config "false"; key "tDn"; - // Added containment: Prefix=rttunnelTunnelMbrIfs - // Acquired From Package tunnel - uses tunnel_RtTunnelTunnelMbrIfs_target-group; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; } + description "Domain Interface Attachment"; } - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - container rtLsNodeToIf-items { - - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; - } - - container dbgIfIn-items { + container rsvxlanEppAtt-items { - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + uses vxlan_RsVxlanEppAtt_source-group; + description "Epp Attachement"; } + } - container dbgIfOut-items { - - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + grouping nvo_Evi-group { + description "Configuration of EVI under VLAN"; + leaf auto { + type boolean; + description "Enable/disable automatic assignment of EVI value"; } - - container dbgIpIn-items { - - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + leaf operId { + config "false"; + type uint32; + description "EVI Identifier for VLAN."; } - - container dbgDot1d-items { - - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + leaf operVlanId { + config "false"; + type uint32; + description "Indicates identifier of VLAN under which EVI is configured."; } - - container dbgEtherStats-items { - - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + leaf operLabel { + config "false"; + type uint32; + description "Indicates local label assigend to EVI."; } - container dbgDot3Stats-items { + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + type nvo_VniStateT; + description "Indicates operational state of EVI"; } + } - container dbgIfHCIn-items { - - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + grouping resmgr_ResVlan-group { + description "Resmgr vlan reservation"; + leaf sysVlan { + type uint16 { + range "0..4032"; + } + default "3968"; + description "System vlan reservation"; } - - container dbgIfHCOut-items { - - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + leaf blockVal64 { + type boolean; + default "false"; + description "System vlan block64 reservation"; } - - container dbgIpv6IfStats-items { - - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + leaf currentmin { + config "false"; + type uint16; + description "Current min system vlan configured"; } - - container dbgIfStorm-items { - - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + leaf currentmax { + config "false"; + type uint16; + description "Current max system vlan configured"; } } - grouping ipqos_PriorFlowCtrl-group { + grouping icam_Entity-group { + description "ICAM Entity"; - // priority mode - // Type is an MO-Defined-Type - leaf mode { - description "priority-flow-control mode on/off/auto"; + // MO1 : ICAM inst + container inst-items { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlMode; + uses icam_Inst-group; + description "ICAM Instance"; } } - grouping ipqos_PriorFlowCtrlWd-group { + grouping icam_Inst-group { + description "ICAM Instance"; - // priority mode - // Type is an MO-Defined-Type - leaf watchDogInterval { - description "watch dog internal on/off"; + // 1.1 ICAM interval + leaf interval { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlWdIntvl; - } - leaf disableAction { - type boolean; - default "true"; + type icam_Interval; + description "iCAM Monitor Interval"; } - // priority mode - // Type is an MO-Defined-Type - leaf interfaceMutiplier { - description "shutdown mutlipler value"; + leaf numinterval { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlWdIntfMulti; + type icam_NumInterval; + description "Num of Intervals in History"; } - } - - grouping l1_PhysIfExtended-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // MO2 :ICAM Scale MO + container scale-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses icam_Scale-group; + description "ICAM Scale Monitoring Instance"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // MO7 :.Entries + container entclass-items { + list Entries-list { + key "class module instance"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses icam_Entries-group; + description "ICAM Entries to monitor list"; + } + description "ICAM Entries to monitor"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // MO8 :.Resources + container resclass-items { + list Resource-list { + key "class module instance"; - // Type is an MO-Defined-Type - type nw_IfId; + uses icam_Resource-group; + description "ICAM Resources to monitor list"; + } + description "ICAM Resources to monitor"; } - // Port-type that the interface is facing - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf portTypeFabric { - description "Identifies if or not the port is a fabric-facing port"; - - // Type is an MO-Defined-Type - type l1_PortTypeFabric; - } + // Ephemeral data + container mod-items { - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + // Ephemeral data + list MonACLEntries-list { + config "false"; + key "module inst feature value_mask"; - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + uses icam_MonACLEntries-group; + description "iCAM ACL Entries Information list"; + } + description "iCAM ACL Entries Information"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportBlock { - description "Disable/enable switchport block on interface"; - - // Type is an MO-Defined-Type - type l1_SwitchportBlock; - } + // Ephemeral data + container aclresmod-items { - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportMacLearn { - description "Disable/enable mac learning on interface"; + // Ephemeral data + list AclResEntries-list { + config "false"; + key "module inst tcam_no bank_no"; - // Type is an MO-Defined-Type - type l1_switchportMacLearn; + uses icam_AclResEntries-group; + description "iCAM ACL TCAM Resource Utilization list"; + } + description "iCAM ACL TCAM Resource Utilization"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf flowCtrl { - description "Disable/enable flowcontrol block on interface"; - - // Type is an MO-Defined-Type - type l1_FlowControl; + grouping icam_Scale-group { + description "ICAM Scale Monitoring Instance"; + leaf info { + type uint16 { + range "1..100"; + } + default "80"; + description "Info threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastLevel { - description "storm-control broadcast level"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf warning { + type uint16 { + range "1..100"; + } + default "90"; + description "Warning threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastPPS { - description "storm-control broadcast PPS"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf critical { + type uint16 { + range "1..100"; + } + default "100"; + description "Critical threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastLevel { - description "storm-control multicast level"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf scalecfg { + type boolean; + description "Scale feature config [yes/no]"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastPPS { - description "storm-control multicast PPS"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf scaleoper { + config "false"; + type boolean; + description "fake data for oper icam fix"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastLevel { - description "Storm control unicast level"; + // MO3 :ICAM L2 Scale MO + container l2scale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + uses icam_L2Scale-group; + description "ICAM Layer 2 Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastPPS { - description "Storm control unicast PPS"; + // MO4 :ICAM Unicast Scale MO + container unicastscale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + uses icam_UnicastScale-group; + description "ICAM Unicast Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlAct { - description "Storm control action"; + // MO5 :ICAM Multicast Scale MO + container multicastscale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlAct; + uses icam_MulticastScale-group; + description "ICAM Multicast Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf bufferBoost { - description "Disable/enable buffer boost on interface"; + // MO6 :ICAM VxLAN Scale MO + container vxlanscale-items { - // Type is an MO-Defined-Type - type l1_BufferBoost; + uses icam_VxlanScale-group; + description "ICAM VxLAN Scale Monitoring"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportVirtualEthernetBridge { - description "Disable/enable switchport virtual ethernet bridge on interface"; - - // Type is an MO-Defined-Type - type l1_SwitchportVirtualEthernetBridge; + grouping icam_L2Scale-group { + description "ICAM Layer 2 Scale Monitoring"; + leaf mstInstLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP MST-Instance Limit"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf allowMultiTag { - description "Allow Multitag"; - - // Type is an MO-Defined-Type - type l1_AllowMultiTag; + leaf mstVportLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP MST-Vport Limit"; } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf rpvstVportLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP RPVST-Vport Limit"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + leaf rpvstVlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP RPVST-Vlans Limit"; + } + leaf isoPortvlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP isolated Port Vlans Limit"; + } + leaf infraMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching Infra MAC-address Limit"; + } + leaf vlancountLimit { + type uint32 { + range "0..4294967295"; } + description "Scale L2 switching VLANs VLAN-count Limit"; } } - grouping l1_EeeP-group { - - // Administrative state for port energy efficient - // ethernet (EEE) @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeState { - description "Administrative state for port energy efficient ethernet (EEE) on the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEEState; + grouping icam_UnicastScale-group { + description "ICAM Unicast Scale Monitoring"; + leaf arpcountLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ARP ARP-count Limit"; } - - // Administrative port EEE Lpi threshold @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeLpi { - description "Administrative port EEE LPI threshold of the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEELpi; + leaf bfdSessionLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing BFD Session Limit"; } - - // Administrative port EEE Latency @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeLat { - description "Administrative port EEE latency of the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEELatency; + leaf bgpNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing BGP Neighbour Limit"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf eigrpNeighLimit { + type uint32 { + range "0..4294967295"; } + description "Scale Unicast Routing EIGRP Neighbour Limit"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf eigrpRouteLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing EIGRP Route Limit"; } - } - - grouping l1_StormCtrlP-group { - - // Packet Type - Unknwn Ucast/Mcast/Bcast - // Type is an MO-Defined-Type - leaf type { - description "Packet Type"; - - // Type is an MO-Defined-Type - type l1_PktT; + leaf hsrpGrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing HSRP group Limit"; } - - // Max Rate Allowed - // Type is an MO-Defined-Type - leaf rate { - description "Traffic rate"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf ipv6NdLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing IPv6 ND-count Limit"; } - - // Max Burst Rate Allowed - // Type is an MO-Defined-Type - leaf burstRate { - description "Max burst size"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf isisAdjLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS Adj Limit"; } - - // Max Rate Allowed in PPS - // Type is an MO-Defined-Type - leaf ratePps { - description "Tarffic rate"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPps; + leaf isisBdfSessLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS BFD Session Limit"; } - - // Max Burst Rate Allowed in PPS - // Type is an MO-Defined-Type - leaf burstPps { - description "Max burst size"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPps; + leaf isisRouteLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS Route Limit"; } - } - - grouping l1_LoadP-group { - - // Administrative port load interval 1 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl1 { - description "Port load sampling interval 1 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl; + leaf ospfAreaLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF Area Limit"; } - - // Administrative port load interval 2 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl2 { - description "Port load sampling interval 2 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl; + leaf ospfLsaLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF LSA Limit"; } - - // Administrative port load interval 3 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl3 { - description "Port load sampling interval 3 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl3; + leaf ospfNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF Neighbour Limit"; + } + leaf pbrAcev4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv4 ACEs Limit"; + } + leaf pbrAcev6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv6 ACEs Limit"; + } + leaf pbrAcev4v6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv4v6 ACEs Limit"; + } + leaf pbrIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Interface Limit"; + } + leaf pbrNhPerPcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Next Hope Per Policy Limit"; + } + leaf pbrSeqPerPcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Sequences Per Policy Limit"; + } + leaf routingHostV4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing Host Route V4 Limit"; + } + leaf routingHostV6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing Host Route V6 Limit"; + } + leaf routingLpmV4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing LPM Route V4 Limit"; + } + leaf routingLpmV6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing LPM Route V6 Limit"; + } + leaf vrfCountLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRF count Limit"; + } + leaf vrrpGrpIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRP Grp per interface Limit"; + } + leaf vrrp3GrpIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRP3 Grp per interface Limit"; + } + leaf vrrp3GrpPathLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups and pathways combined Limit"; + } + leaf vrrp3GrpTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups with default timers Limit"; + } + leaf vrrp3RelTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups with relaxed timers Limit"; + } + leaf vrrp3PathDftTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PAthways with one VRRPv3 groups with default timers Limit"; } } - grouping l1_VlanMapping-group { - leaf Enabled { - type boolean; - default "false"; + grouping icam_MulticastScale-group { + description "ICAM Multicast Scale Monitoring"; + leaf multicastIgmpGrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast IGMP Group Limit"; } - - // Vlan Translate Table policy - container vlantranslatetable-items { - - // Added containment as a singleton: Prefix=vlantranslatetable - // Acquired From Package l1 - uses l1_VlanTranslateTable-group; + leaf multicastPimNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast PIM Neighbour Limit"; + } + leaf multicastRoutingFwdIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding Outgoing interface Limit"; + } + leaf multicastRoutingFwdRoutev4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 Route Limit"; + } + leaf multicastRoutingFwdRoutev6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 Route Limit"; + } + leaf multicastRoutingFwdRouteSGv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 SG Route Limit"; + } + leaf multicastRoutingFwdRouteSGv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 SG Route Limit"; + } + leaf multicastRoutingFwdRouteStarGv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 StarG Route Limit"; + } + leaf multicastRoutingFwdRouteStarGv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 StarG Route Limit"; } } - grouping l1_VlanTranslateTable-group { - - // Vlan Translate Table policy Vlan Translate Entry policy - container vlan-items { - list VlanTranslateEntry-list { - key "vlanid"; - - // Added containment: Prefix=vlan - // Acquired From Package l1 - uses l1_VlanTranslateEntry-group; + grouping icam_VxlanScale-group { + description "ICAM VxLAN Scale Monitoring"; + leaf vxlanBgpHostv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv4 host route Limit"; + } + leaf vxlanBgpHostv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv6 host route Limit"; + } + leaf vxlanBgpIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IGMP group Limit"; + } + leaf vxlanBgpMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP Mac Address Limit"; + } + leaf vxlanBgpOvrlLpmv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv4 LPM route Limit"; + } + leaf vxlanBgpOvrlLpmv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv6 LPM route Limit"; + } + leaf vxlanBgpSviLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP SVI with Anycast Gateway Limit"; + } + leaf vxlanBgpUnderlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP Underlay multicast group Limit"; + } + leaf vxlanBgpVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VLAN logical port VP count Limit"; + } + leaf vxlanBgpVlanFexLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VLAN per FEX port Limit"; + } + leaf vxlanBgpVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VNI Limit"; + } + leaf vxlanBgpVrfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VRF Limit"; + } + leaf vxlanBgpVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VTEP Limit"; + } + leaf vxlanBgpirHostv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv4 host route Limit"; + } + leaf vxlanBgpirHostv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv6 host route Limit"; + } + leaf vxlanBgpirIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IGMP group Limit"; + } + leaf vxlanBgpirMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR Mac Address Limit"; + } + leaf vxlanBgpirOvrlLpmv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv4 LPM route Limit"; + } + leaf vxlanBgpirOvrlLpmv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv6 LPM route Limit"; + } + leaf vxlanBgpirSviLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR SVI with Anycast Gateway Limit"; + } + leaf vxlanBgpirVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VLAN logical port VP count Limit"; + } + leaf vxlanBgpirVlanFexLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VLAN per FEX port Limit"; + } + leaf vxlanBgpirVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VNI Limit"; + } + leaf vxlanBgpirVrfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VRF Limit"; + } + leaf vxlanBgpirVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VTEP Limit"; + } + leaf vxlanFlIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IGMP group Limit"; + } + leaf vxlanFlIrMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR Mac Address Limit"; + } + leaf vxlanFlIrPeerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR Peer Limit"; + } + leaf vxlanFlIrVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR L2 Vni Limit"; + } + leaf vxlanFlTotalMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Total MAC Limit"; + } + leaf vxlanFlStaticMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Static MAC Limit"; + } + leaf vxlanFlUnerlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Underlay multicast group Limit"; + } + leaf vxlanFlVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Vlan Logical VP Limit"; + } + leaf vxlanFlVlanSwMapLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VLAN translations in a switch Limit"; + } + leaf vxlanFlVlanIntfMapLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VLAN translations under an interface Limit"; + } + leaf vxlanFlVlanFexPortLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Vlan Per Fex Port Limit"; + } + leaf vxlanFlVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VNI Limit"; + } + leaf vxlanFlVniVpcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VNIs for vPC-centralized gateway Limit"; + } + leaf vxlanFlVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn remote VTEP Limit"; + } + leaf vxlanIgmpUnderlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN IGMP Underlay multicast group Limit"; + } + leaf vxlanIgmpVlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN IGMP VLAN Limit"; + } + leaf vxlanIgmpVtepLimit { + type uint32 { + range "0..4294967295"; } + description "Scale VxLAN IGMP VTEP Limit"; } } - grouping l1_VlanTranslateEntry-group { + grouping icam_Entries-group { + description "ICAM Entries to monitor"; - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan Id"; + leaf class { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type icam_Entclass; + description "iCAM Entries Class Type"; } - - // Type is an MO-Defined-Type - leaf innervlanid { - description "Inner Vlan Id"; - - // Type is an MO-Defined-Type - type l1_translatevlanid; + leaf module { + type uint32; + description "Module Number for iCAM Entries"; } - - // Type is an MO-Defined-Type - leaf translatevlanid { - description "Translate Vlan Id"; - - // Type is an MO-Defined-Type - type l1_translatevlanid; + leaf instance { + type uint32; + description "Forwarding Instance Number"; } } - grouping l1_Vrf-group { + grouping icam_Resource-group { + description "ICAM Resources to monitor"; - // Vrf Name... - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Vrf Name"; + leaf class { - // Type is an MO-Defined-Type - type l3_VrfName; + type icam_Resclass; + description "iCAM Resources Class Type"; + } + leaf module { + type uint32; + description "Module Number for iCAM Resource"; + } + leaf instance { + type uint32; + description "Forwarding Instance Number"; } } - grouping ethpm_PhysIf-group { + grouping icam_MonACLEntries-group { + description "iCAM ACL Entries Information"; - // Type is an MO-Defined-Type - leaf operLinkDebounce { + // Ephemeral data + leaf feature { config "false"; - description "Link Debounce Interval"; + type string; + description "ACL Feature Name"; + } - // Type is an MO-Defined-Type - type l1_LinkDebounce; + // Ephemeral data + leaf class_type { + config "false"; + type string; + description "Packet Type"; } - // Type is an MO-Defined-Type - leaf shareState { + // Ephemeral data + leaf value_mask { config "false"; - description "Interface share state"; + type string; + description "Source and Destination IP"; + } - // Type is an MO-Defined-Type - type ethpm_ShareState; + // Ephemeral data + leaf action { + config "false"; + type string; + description "ACL Action"; } - // FEC knob - // Type is an MO-Defined-Type - leaf operFECMode { + // Ephemeral data + leaf ifindex { config "false"; - description "Operational FEC Mode"; - // Type is a Local-MO-Defined-Type - type l1_FECMode_PhysIf_operFECMode; + type icam_Index; + description "Interface ifindex"; } - // cached usercfgdflag - // Type is an MO-Defined-Type - leaf cachedUserCfgdFlags { + // Ephemeral data + leaf cum_stats { config "false"; - description "Cached Port User Config Flags"; - - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type uint64; + description "Cumulative Traffic Stats"; } - leaf ifIndex { + + // Ephemeral data + leaf module { config "false"; type uint32; - default "0"; + description "Module No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operAutoNeg { + // Ephemeral data + leaf inst { config "false"; - description "negotiate auto"; - - // Type is an MO-Defined-Type - type l1_AutoNeg; + type uint32; + description "Instance/FE No."; } + } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Maximum transmission unit"; + grouping icam_AclResEntries-group { + description "iCAM ACL TCAM Resource Utilization"; - // Type is an MO-Defined-Type - type l1_Mtu; + // Ephemeral data + leaf tcam_no { + config "false"; + type uint32; + description "TCAM No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf bank_no { config "false"; - description "Administrative State"; - - // Type is an MO-Defined-Type - type l1_AdminSt; + type uint32; + description "Bank No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDescr { + // Ephemeral data + leaf used { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type ethpm_operDescr; + type uint32; + description "Number of Used Entries"; } - // Operational port state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf free { config "false"; - description "Operational Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type uint32; + description "Number of Free Entries"; } - // Operational port status reason - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQual { + // Ephemeral data + leaf percent_util { config "false"; - description "Operational State Failure Reason"; - - // Type is an MO-Defined-Type - type l1_OperStQual; + type decimal64 { + fraction-digits 6; + } + description "Percentage Utilization"; } - // Operational port status syserror code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQualCode { + // Ephemeral data + leaf timestamp { config "false"; - description "Operational Port Status Syserror Code"; - - // Type is an MO-Defined-Type - type l1_OperStQualCode; + type uint64; + description "Timestamp"; } - // Operational port err disable reason code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operErrDisQual { + // Ephemeral data + leaf module { config "false"; - description "Operational Port Error Disable Reason Code"; + type uint32; + description "Module No."; + } - // Type is an MO-Defined-Type - type l1_OperErrDisQual; + // Ephemeral data + leaf inst { + config "false"; + type uint32; + description "Instance No."; } + } - // Operational port speed - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSpeed { + grouping monitor_Entity-group { + description "Entity"; + + leaf name { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Operational port mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMode { + // - Admin state + leaf adminSt { config "false"; - description "Operational Port Mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type nw_AdminSt; + description "Admin State"; } - // Operational duplex - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDuplex { + // Operational state + leaf operSt { config "false"; - description "Operational Duplex State"; - // Type is an MO-Defined-Type - type l1_Duplex; + type nw_EntOperSt; + description "Operational State"; } - // Operational port flow control - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operFlowCtrl { - config "false"; - description "Operational Port Flow Control"; + // Abstraction of coop database (repository) + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type l1_FlowControl; + uses monitor_Db-group; + description "Database list"; + } + description "Database"; } - // Operational phy port enable state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operPhyEnSt { - config "false"; - description "Operational Physical Port Enable State"; + // Monitor session definition. there could be only few sessions + // active at a given time (max 4) + container session-items { + list Session-list { + config "false"; + key "name"; - // Type is an MO-Defined-Type - type l1_OperSt; + uses monitor_Session-group; + description "Span Session list"; + } + description "Span Session"; } - leaf backplaneMac { + } + + grouping monitor_Db-group { + description "Database"; + + // Type of the database + leaf type { config "false"; - type address_Mac; + + type monitor_DbT; + description "Type"; } - leaf operRouterMac { + + leaf name { config "false"; - type address_Mac; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // port Tx type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf txT { - config "false"; - description "Port Transmit Type"; + // Ep records + container epr-items { + list EpRec-list { + config "false"; + key "vnid ip"; - // Type is an MO-Defined-Type - type l1_TxT; + uses monitor_EpRec-group; + description "Endpoint Record list"; + } + description "Endpoint Record"; } - leaf lastLinkStChg { + } + + grouping monitor_EpRec-group { + description "Endpoint Record"; + leaf vnid { config "false"; type string; + description "VNID"; } - leaf portCfgWaitFlags { + leaf ip { config "false"; - type uint32; + type address_Ip; + description "IP"; } - leaf accessVlan { + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf nativeVlan { + } + + grouping monitor_Session-group { + description "Span Session"; + + // Identifier of the session + leaf id { config "false"; - type string; + + type monitor_SessionId; + description "ID"; } - leaf cfgNativeVlan { + + // Administrative state of the session + leaf adminSt { config "false"; - type string; + + type nw_AdminSt; + description "Admin State"; } - leaf cfgAccessVlan { + + // Operational state of the session + leaf operSt { config "false"; - type string; + + type monitor_OperSt; + description "Operational State"; } - leaf primaryVlan { + + leaf name { config "false"; - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port oper bitset - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operBitset { + leaf descr { config "false"; - description "Port Oper Bitset"; - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type naming_Descr; + description "Description of the specified attribute"; } - // vdc id - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf vdcId { + // Monitor sources. The sources which we want to monitor + container src-items { + list Source-list { + config "false"; + key "type mode dir from to port"; + + uses monitor_Source-group; + description "Source list"; + } + description "Source"; + } + + // ERSpan destination information + container erdst-items { + + uses monitor_ERDest-group; + description "ERSPAN Destination"; + } + + // Local span destination information + container ldst-items { + + uses monitor_LocalDest-group; + description "Local Destination"; + } + } + + grouping monitor_Source-group { + description "Source"; + + // Source id + leaf id { config "false"; - description "Vdc Id"; - // Type is an MO-Defined-Type - type l2_VdcId; + type monitor_SrcId; + description "ID"; } - leaf resetCtr { + + // Type of the source + leaf type { config "false"; - type uint32; + + type monitor_SrcT; + description "Type"; } - leaf media { + + // The direction of the packets to monitor + leaf dir { config "false"; - type uint32; + + type monitor_Direction; + description "Direction"; } - leaf encap { + leaf from { config "false"; - type uint32; + type string; + description "From"; } - leaf iod { + leaf to { config "false"; - type uint64; + type string; + description "To"; } - // allowed vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf allowedVlans { + // Port to monitor + leaf port { config "false"; - description "Allowed Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nw_IfId; + description "Port"; } - // operational vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operVlans { + // Mode of the source (access side or fabric side) + leaf mode { config "false"; - description "Operational Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type monitor_Mode; + description "Mode"; } - // errored vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf errVlans { + // Operational state of the session + leaf operSt { config "false"; - description "Errored Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type monitor_OperSt; + description "Operational State"; } - // trunk status - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operTrunkStatus { + leaf name { config "false"; - description "Trunking Status"; - // Type is an MO-Defined-Type - type ethpm_TrunkStatus; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // bundle index - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf bundleIndex { + leaf descr { config "false"; - description "Interface Bundle Index - table for a particular output primitive"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } + } - // port oper mdix mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMdix { + grouping monitor_ERDest-group { + description "ERSPAN Destination"; + + // Encapsulation type, the encapsulation of the monitored + // packet sent to the destination + leaf type { config "false"; - description "Port Oper Mdix Mode"; - // Type is an MO-Defined-Type - type l1_Mdix; + type monitor_DestEncapT; + description "Type"; } - leaf currErrIndex { + leaf srcIp { config "false"; - type uint32; + type address_Ip; + description "Source IP"; + } + leaf dstIp { + config "false"; + type address_Ip; + description "Destination IP"; } - // last seen errors - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf lastErrors { + // Erspan version + leaf ver { config "false"; - description "Last Seen Errors"; - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type monitor_ErSpanVer; + description "Version"; } - leaf errDisTimerRunning { + + // Flow id of the erspan packet + leaf flowId { config "false"; - type boolean; + + type monitor_FlowId; + description "Flow ID"; } - leaf bundleBupId { + + // Ttl used in the erspan packet + leaf ttl { config "false"; - type uint32; + + type l3_Ttl; + description "TTL"; } - // Operational Dce Mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDceMode { + // the vrf on which the erspan packet is sent + leaf vrfName { config "false"; - description "Operational Dce Mode"; - // Type is an MO-Defined-Type - type l1_DceMode; + type l3_VrfName; + description "VRF"; + } + leaf vnid { + config "false"; + type string; + description "VNID"; } - // interface type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf intfT { + // dscp value to be used when sending the monitored + // packets using ERSpan + leaf dscp { config "false"; - description "Interface Type"; - // Type is an MO-Defined-Type - type l1_IntfT; + type qosp_Dscp; + description "Dscp"; } - // port diags type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf diags { + leaf name { config "false"; - description "Port Diags Type"; - // Type is an MO-Defined-Type - type l1_DiagsT; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port EEE state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operEEEState { + leaf descr { config "false"; - description "Operational Port EEE State"; - // Type is an MO-Defined-Type - type l1_EEEState; + type naming_Descr; + description "Description of the specified attribute"; } - leaf operEEETxWkTime { + + // mtu truncation size for the packets + leaf mtu { config "false"; - type uint32; + + type monitor_Mtu; + description "MTU"; } - leaf operEEERxWkTime { + + // Operational state of the session + leaf operSt { config "false"; - type uint32; + + type monitor_OperSt; + description "Operational State"; } + } - // port user config flags - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf userCfgdFlags { + grouping monitor_LocalDest-group { + description "Local Destination"; + + // Port + leaf port { config "false"; - description "Port User Config Flags"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_IfId; + description "Port"; } - leaf numOfSI { + + leaf name { config "false"; - type uint32; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf gport { + + leaf descr { config "false"; - type uint32; + + type naming_Descr; + description "Description of the specified attribute"; } - // configured sub-interface ids - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf siList { + // mtu truncation size for the packets + leaf mtu { config "false"; - description "Configured Sub-interface Ids"; - // Type is an MO-Defined-Type - type ethpm_SiBitmap; + type monitor_Mtu; + description "MTU"; } - leaf dynamicVlan { + + // Operational state of the session + leaf operSt { config "false"; - type boolean; + + type monitor_OperSt; + description "Operational State"; } + } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Liked from l1:EthIf:usage - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage"; + grouping flow_Entity-group { + description "Entity"; - // Type is an MO-Defined-Type - type l1_PortUsage; + // Flow Record + container fr-items { + list Record-list { + key "name"; + + uses flow_Record-group; + description "Flow Record list"; + } + description "Flow Record"; } - // This is the class for regualr fcot types. - container fcot-items { + // Flow Exporter + container fe-items { + list Exporter-list { + key "name"; - // Added containment as a singleton: Prefix=fcot - // Acquired From Package ethpm - uses ethpm_Fcot-group; + uses flow_Exporter-group; + description "Collector entry list"; + } + description "Collector entry"; } - // This is the class for X2 fcot types. - container fcotx2-items { + // Flow Monitor + container fm-items { + list Monitor-list { + key "name"; - // Added containment as a singleton: Prefix=fcotx2 - // Acquired From Package ethpm - uses ethpm_FcotX2-group; + uses flow_Monitor-group; + description "Flow Monitor list"; + } + description "Flow Monitor"; } - container portcap-items { + // Sampler + container s-items { + list Sampler-list { + key "name"; - // Added containment as a singleton: Prefix=portcap - // Acquired From Package ethpm - uses ethpm_PortCap-group; + uses flow_Sampler-group; + description "Sampler list"; + } + description "Sampler"; } - } + container cmap-items { + list ClassMap-list { + key "name"; - grouping ethpm_Fcot-group { - leaf partNumber { - config "false"; - type string; + uses flow_ClassMap-group; + description "Class map instance list"; + } + description "Class map instance"; } - leaf versionId { - config "false"; + container pmap-items { + list PolicyMap-list { + key "name"; + + uses flow_PolicyMap-group; + description "Policy-map list"; + } + description "Policy-map"; + } + + // Hardware profile + container hp-items { + list HwProfile-list { + key "name"; + + uses flow_HwProfile-group; + description "Hardware Profile list"; + } + description "Hardware Profile"; + } + + // Forwarding instance based target + container fit-items { + list FwdInstTarget-list { + key "slot asic slice"; + + uses flow_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; + } + } + + grouping flow_Record-group { + description "Flow Record"; + leaf name { type string; + description "Flow record name"; } leaf description { - config "false"; type string; - } - leaf isFcotPresent { - config "false"; - type boolean; + description "Flow record description"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + leaf matchParams { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type flow_MatchParams; + description "Match Params"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf collectParams { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type flow_CollectParams; + description "Collect Params"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; + grouping flow_Exporter-group { + description "Collector entry"; + leaf name { type string; + description "Flow exporter name"; } - leaf eid { - config "false"; + leaf description { type string; + description "Flow exporter description"; } - leaf xcvrId { - config "false"; - type uint8; + + leaf vrfName { + + type l3_VrfName; + description "Collector VRF"; } - leaf xcvrExtId { - config "false"; - type uint8; + leaf destinationIp { + type address_Ip; + description "Collector IP"; } - leaf connectType { - config "false"; - type uint8; + + leaf destinationPort { + + type flow_L4Port; + description "Collector L4 Port"; } - // Xcvr code field - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf xcvrCode { - config "false"; - description "Transceiver Code"; + leaf dscp { - // Type is an MO-Defined-Type - type ethpm_SfpXcvrCodeBytes; + type ipqos_Dscp; + description "DSCP value"; } - leaf encoding { - config "false"; - type uint8; - } - leaf brIn100MHz { - config "false"; - type uint8; - } - leaf baseResvd1 { - config "false"; - type uint8; - } - leaf distInKmFor9u { - config "false"; - type uint8; - } - leaf distIn100mFor9u { - config "false"; - type uint8; - } - leaf distIn10mFor50u { - config "false"; - type uint8; - } - leaf distIn10mFor60u { - config "false"; - type uint8; - } - leaf distIn1mForCu { - config "false"; - type uint8; - } - leaf baseResvd2 { - config "false"; - type uint8; - } - leaf vendorName { - config "false"; - type string; - } - leaf baseResvd3 { - config "false"; - type uint8; + + // check + leaf sourceInterface { + + type nw_IfId; + description "Source Interface"; } - // IEEE vendor Id - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorId { - config "false"; - description "Vendor ID"; + leaf version { - // Type is an MO-Defined-Type - type ethpm_SfpVendorIdBytes; + type flow_ExportVersion; + description "Export version format"; } - leaf vendorPn { - config "false"; + } + + grouping flow_Monitor-group { + description "Flow Monitor"; + leaf name { type string; + description "Flow monitor name"; } - leaf vendorRev { - config "false"; + leaf description { type string; + description "Flow monitor description"; } + container feb-items { + list ExporterBucket-list { + key "id"; - // Reserved field 4 - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf baseResvd4 { - config "false"; - description "Base Reserved Field"; - - // Type is an MO-Defined-Type - type ethpm_SfpReserved4Array; - } - leaf ccid { - config "false"; - type uint8; + uses flow_ExporterBucket-group; + description "Flow exporter bucket entry list"; + } + description "Flow exporter bucket entry"; } - // Extended option - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf extOption { - config "false"; - description "Extended Option"; + container rsrecord-items { - // Type is an MO-Defined-Type - type ethpm_SfpExtendedOptionBytes; - } - leaf brMaxMargin { - config "false"; - type uint8; + uses flow_RsRecord_source-group; + description "Reference to flow record"; } - leaf brMinMargin { - config "false"; + } + + grouping flow_ExporterBucket-group { + description "Flow exporter bucket entry"; + leaf id { type uint8; + description "Flow exporter bucket ID"; } - leaf vendorSn { - config "false"; + leaf description { type string; + description "Flow exporter bucket description"; } - leaf dateCode { - config "false"; - type string; + leaf hashLo { + type uint32; + description "Hash low"; } - leaf diagMonType { - config "false"; - type uint8; + leaf hashHi { + type uint32; + description "Hash high"; } - leaf enhOption { - config "false"; - type uint8; + + container rsexporter1-items { + + uses flow_RsExporter1_source-group; + description "Reference to flow exporter1"; } - leaf sff8472Compl { - config "false"; - type uint8; + + container rsexporter2-items { + + uses flow_RsExporter2_source-group; + description "Reference to flow exporter2"; } - leaf ccex { - config "false"; - type uint8; + } + + grouping flow_Sampler-group { + description "Sampler"; + leaf name { + type string; + description "Sampler name"; + } + leaf description { + type string; + description "Sampler description"; } - // Vendor data - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorData { - config "false"; - description "TBD"; + leaf mode { - // Type is an MO-Defined-Type - type ethpm_X2VendorDataBytes; + type flow_SamplerMode; + description "Sampler mode"; } - leaf maxSpeed { - config "false"; + leaf param1 { type uint32; + description "Sampler param1"; } - leaf minSpeed { - config "false"; + leaf param2 { type uint32; + description "Sampler param2"; } - leaf fcotNum { - config "false"; - type uint8; + } + + grouping flow_ClassMap-group { + description "Class map instance"; + + // class map name + leaf name { + + type ipqos_CMapName; + description "Name of class-map"; } - leaf fcotType { - config "false"; - type uint8; + + // match access-group + container acl-items { + list MatchAcl-list { + key "name"; + + uses flow_MatchAcl-group; + description "Match ACL list"; + } + description "Match ACL"; } - leaf gigEthCC { - config "false"; - type uint8; + } + + grouping flow_MatchAcl-group { + description "Match ACL"; + + // ACL to match + leaf name { + + type acl_Name; + description "Match using ACL"; } - leaf fCTxType { - config "false"; - type uint8; + } + + grouping flow_PolicyMap-group { + description "Policy-map"; + + // policy map name + leaf name { + + type ipqos_PMapName; + description "Name of policy-map"; } - // Transceiver DOM sensor. - container lane-items { - list FcotSensor-list { - config "false"; - key "laneId sensorId"; + // match a class-map + container cmap-items { + list MatchClassMap-list { + key "name"; - // Added containment: Prefix=lane - // Acquired From Package eqpt - uses eqpt_FcotSensor-group; + uses flow_MatchClassMap-group; + description "Match class-map list"; } + description "Match class-map"; } } - grouping eqpt_FcotSensor-group { - leaf laneId { - config "false"; - type uint16; + grouping flow_MatchClassMap-group { + description "Match class-map"; + + // use class-map with this name + leaf name { + + type ipqos_CMapName; + description "Match using class-map"; } - // Fcot DOM Lane type - // Type is an MO-Defined-Type - leaf laneType { - config "false"; - description "The transceiver LANE type"; + // set Flow Monitor + container fm-items { - // Type is an MO-Defined-Type - type eqpt_fcotDomLane; + uses flow_SetMonitor-group; + description "Set Flow Monitor"; } - leaf sensorId { - config "false"; - type uint16; + } + + grouping flow_SetMonitor-group { + description "Set Flow Monitor"; + + container rsmonitor-items { + + uses flow_RsMonitor_source-group; + description "Reference to flow monitor"; } - leaf description { - config "false"; + } + + grouping flow_HwProfile-group { + description "Hardware Profile"; + leaf name { type string; + description "Hardware profile name"; } - leaf unit { - config "false"; + leaf description { type string; + description "Hardware profile description"; } - leaf value { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf exportInterval { + type uint32; + default "100"; + description "Export Interval in milliseconds"; } - leaf highAlarm { - config "false"; - type decimal64 { - fraction-digits 2; - } + + leaf sourcePort { + + type flow_L4Port; + description "Source L4 Port"; } - leaf highWarning { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf ipPacketIdShift { + type uint8; + description "IP Packet ID Shift"; } - leaf lowAlarm { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf burstIntervalShift { + type uint8; + description "Timestamp shift value for burst interval"; } - leaf lowWarning { - config "false"; - type decimal64 { - fraction-digits 2; - } + + leaf mtu { + + type flow_Mtu; + description "MTU"; } - leaf max { - config "false"; - type decimal64 { - fraction-digits 2; - } + + container sngt-items { + + uses flow_SeqNumGuessThreshold-group; + description "Sequence Number Guess Threshold"; } - leaf min { - config "false"; - type decimal64 { - fraction-digits 2; + container plb-items { + list PayloadLenBin-list { + key "id"; + + uses flow_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - leaf avg { - config "false"; - type decimal64 { - fraction-digits 2; + container tohlb-items { + list TCPOptHdrLenBin-list { + key "id"; + + uses flow_TCPOptHdrLenBin-group; + description "TCP optional header length bin entry list"; } + description "TCP optional header length bin entry"; } - leaf instant { - config "false"; - type decimal64 { - fraction-digits 2; + container rwsb-items { + list ReceiveWindowSizeBin-list { + key "id"; + + uses flow_ReceiveWindowSizeBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping ethpm_FcotX2-group { - leaf partNumber { - config "false"; - type string; + grouping flow_SeqNumGuessThreshold-group { + description "Sequence Number Guess Threshold"; + leaf lo { + type uint32; + description "Low Threshold"; } - leaf versionId { - config "false"; - type string; + leaf hi { + type uint32; + description "High Threshold"; + } + } + + grouping flow_PayloadLenBin-group { + description "Payload length bin entry"; + leaf id { + type uint8; + description "Payload length bin ID"; } leaf description { - config "false"; type string; - } - leaf isFcotPresent { - config "false"; - type boolean; + description "Payload length bin description"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + leaf lo { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type flow_PayloadLen; + description "Bin low value"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf hi { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type flow_PayloadLen; + description "Bin high value"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ethpm_FcotType; + grouping flow_TCPOptHdrLenBin-group { + description "TCP optional header length bin entry"; + leaf id { + type uint8; + description "TCP option header length bin ID"; } - leaf typeName { - config "false"; + leaf description { type string; + description "TCP option header length bin description"; } - leaf eid { - config "false"; - type string; + + leaf lo { + + type flow_TCPOptHdrLen; + description "Bin low value"; } - leaf xcvrType { - config "false"; - type uint8; + + leaf hi { + + type flow_TCPOptHdrLen; + description "Bin high value"; } - leaf connectType { - config "false"; + } + + grouping flow_ReceiveWindowSizeBin-group { + description "Receive window size bin entry"; + leaf id { type uint8; + description "Receive window size bin ID"; } - leaf bitEncoding { - config "false"; - type uint8; + leaf description { + type string; + description "Receive window size bin description"; } - // Bit rate (Mbps) - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf bitRateMbps { - config "false"; - description "TBD"; + leaf lo { - // Type is an MO-Defined-Type - type ethpm_X2BitRateBytes; - } - leaf protocolType { - config "false"; - type uint8; + type flow_ReceiveWindowSize; + description "Bin low value"; } - // 10G eth code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgEthCode { - config "false"; - description "TBD"; + leaf hi { - // Type is an MO-Defined-Type - type ethpm_X2XgEthCodeBytes; + type flow_ReceiveWindowSize; + description "Bin high value"; } + } - // Sonet SDH code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf sonetSdhCode { - config "false"; - description "TBD"; + grouping flow_FwdInstTarget-group { + description "Forward Instance Target"; + leaf slot { + type uint8 { + range "1..64"; + } + description "Slot ID"; + } + leaf asic { + type uint8 { + range "1..10"; + } + description "Asic ID"; + } + leaf slice { + type uint8 { + range "1..10"; + } + description "Slice ID"; + } + leaf exporterId { + type uint32; + description "Exporter ID"; + } - // Type is an MO-Defined-Type - type ethpm_X2SonetSdhCodeBytes; + // Service Policy + container sp-items { + list ServicePolicy-list { + key "direction"; + + uses flow_ServicePolicy-group; + description "Service Policy list"; + } + description "Service Policy"; } - // 10G fc code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgFcCode { - config "false"; - description "TBD"; + container rshwProfile-items { - // Type is an MO-Defined-Type - type ethpm_X2XbFcCodeBytes; + uses flow_RsHwProfile_source-group; + description "Reference to hardware profile"; } + } - // Range - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf range { - config "false"; - description "TBD"; + grouping flow_ServicePolicy-group { + description "Service Policy"; - // Type is an MO-Defined-Type - type ethpm_X2RangeBytes; + leaf direction { + + type flow_Direction; + description "Direction"; } - // Fibre type - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf fibreType { - config "false"; - description "TBD"; + container rspmap-items { - // Type is an MO-Defined-Type - type ethpm_X2FibreTypeBytes; + uses flow_RsPmap_source-group; + description "Reference to policy-map"; } + } - // Wavelength channel 0 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh0 { - config "false"; - description "TBD"; + grouping ngoam_Entity-group { + description "NGOAM Entity"; - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Holds NGOAM entity information + container xcon-items { + + uses ngoam_Xcon-group; + description "Placeholder model for xconnect data to hang off of"; } - // Wavelength channel 1 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh1 { - config "false"; - description "TBD"; + // NGOAM Profile Object + container profile-items { + list Profile-list { + key "profId"; - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_Profile-group; + description "Ngoam Profile list"; + } + description "Ngoam Profile"; } - // Wavelength channel 2 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh2 { - config "false"; - description "TBD"; + // NGOAM InstallACL Object + container installacl-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_InstallAcl-group; + description "Ngoam install acl"; } - // Wavelength channel 3 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh3 { - config "false"; - description "TBD"; + // NGOAM Authentication Object + container authentication-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_Authentication-group; + description "Ngoam Authentication"; } - // Package Oui - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf packageOui { - config "false"; - description "TBD"; + // NGOAM Connectivity Check Object + container cc-items { + list ConnectCheck-list { + key "ccId"; - // Type is an MO-Defined-Type - type ethpm_X2PackageOuiBytes; - } - leaf vendorName { - config "false"; - type string; - } - leaf vendorPn { - config "false"; - type string; - } - leaf vendorRev { - config "false"; - type string; - } - leaf vendorSerNo { - config "false"; - type string; - } - leaf dateCode { - config "false"; - type string; + uses ngoam_ConnectCheck-group; + description "Ngoam Connectivity check list"; + } + description "Ngoam Connectivity check"; } - // Lot code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf lotCode { - config "false"; - description "TBD"; + // NGOAM Xconnect config Object + container xconnect-items { - // Type is an MO-Defined-Type - type ethpm_X2LotCodeBytes; - } - leaf fiveVStressEnv { - config "false"; - type uint8; - } - leaf threeThreeVStressEnv { - config "false"; - type uint8; - } - leaf apsStressEnv { - config "false"; - type uint8; + uses ngoam_XconCfg-group; + description "Ngoam xconnect configs"; } - leaf normalApsVolt { - config "false"; - type uint8; + } + + grouping ngoam_Xcon-group { + description "Placeholder model for xconnect data to hang off of"; + + // Interface name for list of all egress interfaces + container bd-items { + list XConnect-list { + config "false"; + key "swBd"; + + uses ngoam_XConnect-group; + description "Model describing the properties of a vxlan cross-connect list"; + } + description "Model describing the properties of a vxlan cross-connect"; } - leaf diagOptMonCap { + } + + grouping ngoam_XConnect-group { + description "Model describing the properties of a vxlan cross-connect"; + leaf swBd { config "false"; - type uint8; + type uint16; + description "vlanID on which xconnnect is enabled"; } - leaf lowPwrStartupCap { + + // Xc state + leaf xcState { config "false"; - type uint8; + + type ngoam_xcState; + description "xconnect state - could have multiple states at the same time"; } - leaf reserved { + leaf peerIp { config "false"; - type uint8; + type address_Ipv4; + description "VTEP ip of the vxlan peer"; } - leaf checksum { + leaf vni { config "false"; - type uint8; + type uint32; + description "vni for the xconnect"; } - leaf ciscoPid { + leaf localPort { config "false"; type string; + description "LocalPort associated with the xconnect"; } - leaf ciscoVid { + + // Local port state + leaf localPortState { config "false"; - type string; + + type ngoam_xcPortState; + description "Local Port State"; } - leaf ciscoSN { + leaf localVpcPort { config "false"; type string; + description "Local Vpc Port associated with the xconnect"; } - leaf ciscoPN { + + // Local Vpc port state + leaf localVpcPortState { config "false"; - type string; + + type ngoam_xcPortState; + description "Local Vpc Port State"; } - leaf ciscoRev { + leaf remotePort { config "false"; type string; + description "RemotePort associated with the xconnect"; } - // Extended vendor specific info - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf extVendorSpecific { + // Remote port state + leaf remotePortState { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type ethpm_X2ExtendedVendorSpecificInfoBytes; - } - leaf maxSpeed { - config "false"; - type uint32; - } - leaf minSpeed { - config "false"; - type uint32; - } - leaf fcotNum { - config "false"; - type uint8; + type ngoam_xcPortState; + description "Remote Port State"; } - leaf fcotType { + leaf remoteVpcPort { config "false"; - type uint8; + type string; + description "Remote Vpc Port associated with the xconnect"; } - leaf gigEthCC { + + // Remote Vpc port state + leaf remoteVpcPortState { config "false"; - type uint8; + + type ngoam_xcPortState; + description "Remote Vpc Port State"; } - leaf fCTxType { + leaf lastChgTs { config "false"; - type uint8; + type string; + description "timestamp of last change to this database"; } } - grouping ethpm_PortCap-group { + grouping ngoam_Profile-group { + description "Ngoam Profile"; - // If-index - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Port Identifier"; + // Prof. ID + leaf profId { - // Type is an MO-Defined-Type - type nw_IfId; + type ngoam_ProfId; + description "Profile ID"; } - // Speed bitmask - // Type is an MO-Defined-Type - leaf speed { - config "false"; - description "Speed Bitmask"; + // Description + leaf desc { - // Type is an MO-Defined-Type - type ethpm_capSpeed; + type ngoam_Desc; + description "Description"; } - // Duplex bitmask - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex Bitmask for simutaneous communication between interfaces"; + // dot1q + leaf dot1q { - // Type is an MO-Defined-Type - type ethpm_capDuplex; - } - leaf trunkEncap { - config "false"; - type uint8; - } - leaf channel { - config "false"; - type uint8; - } - leaf suppression { - config "false"; - type uint8; - } - leaf rxFlowControl { - config "false"; - type uint8; - } - leaf txFlowControl { - config "false"; - type uint8; - } - leaf cosRewrite { - config "false"; - type uint8; - } - leaf tosRewrite { - config "false"; - type uint8; - } - leaf span { - config "false"; - type uint8; + type ngoam_Dot1q; + description "dot1q"; } - leaf udld { - config "false"; - type uint8; + + // dot1q interface + leaf dot1qIf { + + type nw_IfId; + description "dot1q"; } - leaf autoneg { - config "false"; - type uint8; + + // hop + leaf hop { + + type ngoam_Hop; + description "hop count"; } - leaf linkDebounce { - config "false"; - type uint8; + + // Egress Interface + leaf interface { + + type nw_IfId; + description "Interface"; } - leaf linkDebounceTime { - config "false"; - type uint8; + + // Oam Channel + leaf oamChannel { + + type ngoam_OamChannel; + description "OAM channel type"; } - leaf fcotCapable { - config "false"; - type uint8; + + // Payload Pad + leaf payloadPad { + + type ngoam_PayloadPad; + description "Payload padding pattern"; } - leaf rateMode { - config "false"; - type uint8; + + // source port + leaf srcPort { + + type ngoam_Sport; + description "Source Port Range"; } - leaf mdix { - config "false"; - type uint8; + + // NGOAM FlowFwd Object + container flowfwd-items { + + uses ngoam_FlowFwd-group; + description "Ngoam Profile Flow Fwd"; } - leaf portGroup { - config "false"; - type uint8; + } + + grouping ngoam_FlowFwd-group { + description "Ngoam Profile Flow Fwd"; + leaf forward { + type boolean; + description "forward"; } - leaf ctsCapable { - config "false"; - type uint8; + + // dot1q + leaf dot1q { + + type ngoam_Dot1qFlow; + description "dot1q"; } - leaf qosRxPrio { - config "false"; - type uint8; + leaf ipDest { + type address_Ipv4; + description "IP v4 address destination"; } - leaf qosRxQueue { - config "false"; - type uint8; + leaf ipSrc { + type address_Ipv4; + description "IP v4 address source"; } - leaf qosRxThold { - config "false"; - type uint8; + leaf ipv6Dest { + type address_Ipv6; + description "IP v6 address destination"; } - leaf qosTxPrio { - config "false"; - type uint8; + leaf ipv6Src { + type address_Ipv6; + description "IP v6 address source"; } - leaf qosTxQueue { - config "false"; - type uint8; + leaf macDest { + type address_Mac; + description "mac address destination"; } - leaf qosTxThold { - config "false"; - type uint8; + leaf macSrc { + type address_Mac; + description "mac address source"; } - // Model - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Port Model Number"; + // port destination + leaf portDest { - // Type is an MO-Defined-Type - type ethpm_ModelList; + type ngoam_DestPort; + description "TCP or UDP port destination"; } - // Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // port source + leaf portSrc { - // Type is an MO-Defined-Type - type ethpm_TypeList; + type ngoam_SrcPort; + description "TCP or UDP port source"; } - // Port-group members - // Type is an MO-Defined-Type - leaf portGrpMbrs { - config "false"; - description "Port-group Members"; + // Flow protocol number + leaf protocol { - // Type is an MO-Defined-Type - type ethpm_PortGroupBitmap; - } - leaf protoSupport { - config "false"; - type uint32; - } - leaf portCap { - config "false"; - type uint32; + type ngoam_Protocol; + description "Flow protocol number"; } - leaf eeeCapVal { - config "false"; - type uint16; + leaf packet { + type string; + description "IP v6 address"; } + } - // EEE 10G wake times - // Type is an MO-Defined-Type - leaf eeeWakeTimes10g { - config "false"; - description "EEE 10G Wake Times"; - - // Type is an MO-Defined-Type - type ethpm_EeeWakeTimesList; - } - leaf eeeFlapFlags { - config "false"; - type uint16; + grouping ngoam_InstallAcl-group { + description "Ngoam install acl"; + leaf enabled { + type boolean; + description "install acl enabled"; } } - grouping pc_AggrMbrIf-group { + grouping ngoam_Authentication-group { + description "Ngoam Authentication"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type pc_OperSt; + type ngoam_AuthKey; + description "Authentication key"; } + } - // Channeling status - // Type is an MO-Defined-Type - leaf channelingSt { - config "false"; - description "Channeling Status"; - - // Type is an MO-Defined-Type - type pc_ChannelingSt; - } + grouping ngoam_ConnectCheck-group { + description "Ngoam Connectivity check"; - // Summarized operational state - // Type is an MO-Defined-Type - leaf summOperSt { - config "false"; - description "Summarized Oper State"; + // Connectivity check id + leaf ccId { - // Type is an MO-Defined-Type - type pc_SummOperSt; + type ngoam_ProfId; + description "Ngoam Connectivity check ID"; } - // Member up time - // Type is an MO-Defined-Type - leaf uptime { - config "false"; - description "Member Up Time"; + // Prof. id + leaf profileId { - // Type is an MO-Defined-Type - type pc_Time; + type ngoam_ProfIdCC; + description "Ngoam profile ID"; + } + leaf dstIp { + type address_Ipv4; + description "Destination Node ID"; + } + leaf dstIpv6 { + type address_Ipv6; + description "Destination Node ID"; + } + leaf dstMAC { + type address_Mac; + description "Destination Node ID"; + } + leaf dstUnknown { + type boolean; + description "Destination Node ID"; + } + leaf srcIp { + type address_Ipv4; + description "Source IP"; + } + leaf srcIpv6 { + type address_Ipv6; + description "Source IP"; } - // Member port flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Member Port Flags"; + // dot1q + leaf dot1q { - // Type is an MO-Defined-Type - type pc_Flags; + type ngoam_Dot1q; + description "dot1q"; } - // Bundle port number - // Type is an MO-Defined-Type - leaf bdlPortNum { - config "false"; - description "Bundle Port Number"; + // source port + leaf srcPort { - // Type is an MO-Defined-Type - type pc_BdlPortNum; + type ngoam_Sport; + description "Source Port"; } - // LTL programmed - // Type is an MO-Defined-Type - leaf ltlProgrammed { - config "false"; - description "LTL Programmed"; + // count + leaf count { - // Type is an MO-Defined-Type - type pc_LtlProgrammed; + type ngoam_NumPkt; + description "Number of packets"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // timeout + leaf timeout { - // Type is an MO-Defined-Type - type naming_Name; + type ngoam_Timeout; + description "Timeout"; } - } - grouping nvo_MultisiteIfTracking-group { - - // Type is an MO-Defined-Type - leaf tracking { - description "Configure EVPN multisite tracking for DCI/Fabric interface."; + // interval + leaf interval { - // Type is an MO-Defined-Type - type nvo_MultisiteTrackingT; + type ngoam_SendIntvlCC; + description "Interval"; } - } - - grouping pc_AggrIf-group { - // Port channel id - // Type is an MO-Defined-Type - leaf pcId { - description "Port Channel Id"; + leaf dataPattern { - // Type is an MO-Defined-Type - type pc_PcId; + type ngoam_PayloadPad; + description "data pattern"; } - // Channel mode - // Type is an MO-Defined-Type - leaf pcMode { - description "Aggregated Interface Protocol Channel Mode"; + // packet size + leaf packetSz { - // Type is an MO-Defined-Type - type pc_Mode; + type ngoam_PktSz; + description "Payload Size"; } - // PC interface control properties - // Type is an MO-Defined-Type - leaf ctrl { - description "PC Interface Control Properties"; + // The vrf in which it is running + leaf vrf { - // Type is an MO-Defined-Type - type pc_IfControl; + type ngoam_Vrf; + description "VRF"; } - // minimum links @@@ MinLinks in the port channel - // Type is an MO-Defined-Type - leaf minLinks { - description "Minimum Links"; + // The VxLAN vni + leaf vni { - // Type is an MO-Defined-Type - type pc_MinLinks; + type ngoam_VnidCC; + description "VNI"; } - // maximum links @@@ MaxLinks in the port channel - // Type is an MO-Defined-Type - leaf maxLinks { - description "Maximum Links"; + // Egress Interface id + leaf egressIf { - // Type is an MO-Defined-Type - type pc_MaxLinks; + type nw_IfId; + description "Interface ID"; } - // Hash distribution configured - adaptive/fixed - // Type is an MO-Defined-Type - leaf hashDist { - description "Hash Distribution Configured - Adaptive/fixed"; + // MAC Interface + leaf macsrcif { - // Type is an MO-Defined-Type - type pc_HashDist; + type nw_IfId; + description "payload source interface"; + } + leaf verifyHost { + type boolean; + description "Verify Host"; } - // Interface ordinal - // Type is an MO-Defined-Type - leaf iod { - config "false"; - description "Interface Ordinal"; + // dot1q + leaf payload_dot1q { - // Type is an MO-Defined-Type - type pc_Iod; + type ngoam_Dot1q; + description "dot1q"; + } + leaf payload_srcip { + type address_Ipv4; + description "src IP v4 address"; + } + leaf payload_srcipv6 { + type address_Ipv6; + description "src IP v6 address"; + } + leaf payload_srcmac { + type address_Mac; + description "src mac address"; + } + leaf payload_dstip { + type address_Ipv4; + description "dst IP v4 address"; + } + leaf payload_dstipv6 { + type address_Ipv6; + description "dst IP v6 address"; + } + leaf payload_dstmac { + type address_Mac; + description "dst mac address"; + } + leaf payload_srcport { + type uint16; + description "payload src port"; + } + leaf payload_dstport { + type uint16; + description "payload dst port"; } - // Operational mode - // Type is an MO-Defined-Type - leaf operChannelMode { - config "false"; - description "Operational Mode"; + // protocol + leaf payload_protocol { - // Type is an MO-Defined-Type - type pc_Mode; + type ngoam_Protocol; + description "payload protocol"; } - // Last status - successful/failed - // Type is an MO-Defined-Type - leaf lastSt { - config "false"; - description "Last Status - Successful/failed"; + // Source Interface + leaf payload_srcif { - // Type is an MO-Defined-Type - type pc_LastSt; + type nw_IfId; + description "payload source interface"; } - leaf lastStCause { - config "false"; - type string; + + // Result for fabric ping + container pingnverslt-items { + list PingNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PingNveRslt-group; + description "Ping Nve Result list"; + } + description "Ping Nve Result"; } + } - // Time when last status was set - // Type is an MO-Defined-Type - leaf lastTime { + grouping ngoam_PingNveRslt-group { + description "Ping Nve Result"; + + // Prof. Name + leaf sessionId { config "false"; - description "Time when Last Status was Set"; - // Type is an MO-Defined-Type - type pc_Time; + type ngoam_SessionId; + description "Name"; } - // Time of port-channel creation - // Type is an MO-Defined-Type - leaf createTime { + leaf descr { config "false"; - description "Time of Port-channel Creation"; - // Type is an MO-Defined-Type - type pc_Time; + type action_Descr; + description "Description"; } - // First operational port - // Type is an MO-Defined-Type - leaf fop { + // Time that the task started + leaf startTs { config "false"; - description "First Operational Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type mo_TStamp; + description "TBD"; } - // Time of last member addition - // Type is an MO-Defined-Type - leaf lastBundleTime { + // Task rule type + leaf type { config "false"; - description "Time of Last Member Addition"; - // Type is an MO-Defined-Type - type pc_Time; + type action_Type; + description "TBD"; } - // Last member added - // Type is an MO-Defined-Type - leaf lastBundleMbr { + leaf rSz { config "false"; - description "Last Member Added"; - // Type is an MO-Defined-Type - type nw_IfId; + type action_RetentionSize; + description "TBD"; } - // Time of last member removal - // Type is an MO-Defined-Type - leaf lastUnbundleTime { + // Retention time of task results + leaf rTm { config "false"; - description "Time of Last Member Removal"; - // Type is an MO-Defined-Type - type pc_Time; + type action_RetentionTime; + description "TBD"; + } + leaf peerClassId { + config "false"; + type string; } - // Last member removed - // Type is an MO-Defined-Type - leaf lastUnbundleMbr { + // Qualifier for the above status + leaf qual { config "false"; - description "Last Member Removed"; - // Type is an MO-Defined-Type - type nw_IfId; + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; } - // port-channel suspended due to min-links - // Type is an MO-Defined-Type - leaf suspMinlinks { + // Time that the task ended + leaf endTs { config "false"; - description "Port-channel Suspended Due to Min-links"; - // Type is an MO-Defined-Type - type pc_SuspMinlinks; + type mo_TStamp; + description "TBD"; } - // PIXM-allocated LTL - // Type is an MO-Defined-Type - leaf ltl { + // Runtime status of the task + leaf operSt { config "false"; - description "PIXM-allocated LTL"; - // Type is an MO-Defined-Type - type pc_Ltl; + type action_OperSt; + description "Runtime status of the task"; + } + leaf replyIp { + config "false"; + type address_Ipv4; + description "IPv4 Address"; + } + leaf replyIpv6 { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf nodeName { + config "false"; + type string; + description "Node name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; + type string; + description "Failure Reason"; } - // ELTM-allocated LIF - // Type is an MO-Defined-Type - leaf lif { + // Source port + leaf sPort { config "false"; - description "ELTM-allocated LIF"; - // Type is an MO-Defined-Type - type pc_Lif; + type ngoam_SrcPort; + description "VxLAN outer UDP Source Port -- Will be deprecated. Please use verbose"; + } + leaf verbose { + config "false"; + type string; + description "Verbose info, fabric specific verbose info from the replies"; } - // Max possible active members - // Type is an MO-Defined-Type - leaf maxActive { + // packet size + leaf packetSz { config "false"; - description "Max Possible Active Members"; - // Type is an MO-Defined-Type - type pc_MaxActive; + type ngoam_PktSz; + description "Packet Size"; } - // Time when first non-fop port came up - // Type is an MO-Defined-Type - leaf loadDeferStartTime { + // Number of packets sent + leaf sentPkts { config "false"; - description "Time when First Non-fop Port Came Up"; - // Type is an MO-Defined-Type - type pc_Time; - } - leaf isExplicit { - type boolean; - default "true"; + type ngoam_Counter; + description "Sent Packets"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of packets not sent + leaf notSentPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ngoam_Counter; + description "Not Sent Packets"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Number of packets received + leaf rcvdPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type ngoam_Counter; + description "Received Packets"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Minimum round trip time of all the packets that + // have been sent in one exec + leaf minRtt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type ngoam_Rtt; + description "Minimum Round Trip Time"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + // Average round trip time of all the packets that + // have been sent in one exec + leaf avgRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type ngoam_Rtt; + description "Average Round Trip Time"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // Maximum round trip time of all the packets that + // have been sent in one exec + leaf maxRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_Speed; + type ngoam_Rtt; + description "Maximum Round Trip Time"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // Total Rtt of all the packets sent + leaf totalRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_Duplex; + type ngoam_Rtt; + description "Total Round Trip Time"; } + } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + grouping ngoam_XconCfg-group { + description "Ngoam xconnect configs"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + // xconnect_hb_interval + leaf hbinterval { + + type ngoam_HbInterval; + description "Heartbeat interval"; } + } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + grouping nxapi_Inst-group { + description "NXAPI Instance"; - // Type is an MO-Defined-Type - type l1_Mtu; + leaf httpPort { + + type nxapi_HttpPort; + description "HTTP Port"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + leaf httpsPort { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type nxapi_HttpsPort; + description "HTTPS Port"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf useVrf { - // Type is an MO-Defined-Type - type l1_Mode; + type os_OsString; + description "Vrf for NX-API"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Modified by Override: pc:AggrIf->layer - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf layer { - description "Layer"; + leaf certFile { - // Type is a Local-MO-Defined-Type - type l1_Layer_AggrIf_layer; + type os_OsString; + description "Certificate file for NX-API"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + leaf keyFile { - // Type is an MO-Defined-Type - type l1_Mdix; + type os_OsString; + description "Key file for NX-API"; } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; + leaf encrKeyPassphrase { - // Type is an MO-Defined-Type - type l1_Delay; + type nxapi_keyPassphrase; + description "Passphrase to decrypt the encrypted key file for NX-API"; + } + leaf certEnable { + type boolean; + description "Certificate status of NX-API"; + } + leaf sslCiphersWeak { + type boolean; + default "false"; + description "Enable Weak Ciphers for SSL"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + leaf sslProtocols { - // Type is an MO-Defined-Type - type l1_LinkDebounce; + type nxapi_SslProtocols; + description "String of space separated SSL protocols to be supported"; } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + leaf clientCertAuth { - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + type nxapi_ClientCertAuthType; + description "Enable Mutual SSL Certificate Authentication for NXAPI between client and server and set verficiation restriction level"; } + } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + grouping ofm_Inst-group { + description "Static Tunnel"; + container tunnelprofile-items { + list TunnelProfile-list { + key "profName"; - // Type is an MO-Defined-Type - type l1_Bw; + uses ofm_TunnelProfile-group; + description "TunnelProfile list"; + } + description "TunnelProfile"; } + } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + grouping ofm_TunnelProfile-group { + description "TunnelProfile"; - // Type is an MO-Defined-Type - type l1_Medium; + leaf profName { + + type ofm_profileName; + description "Name of Tunnel Profile"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + leaf encaptype { - // Type is an MO-Defined-Type - type l1_InheritBw; + type ofm_encapType; + description "Encapsulation type for tunnel profile"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + leaf srcID { - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_IfId; + description "Source ID for Src vtep IP"; } + container route-items { + list Route-list { + key "vrfName route nhvrf nexthop"; - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + uses ofm_Route-group; + description "Tunnel Route list"; + } + description "Tunnel Route"; + } + } - // Type is an MO-Defined-Type - type l1_LinkLog; + grouping ofm_Route-group { + description "Tunnel Route"; + + leaf vrfName { + + type l3_VrfName; + description "Vrf name for dest Route"; + } + leaf route { + type address_Ip; + description "IP address of dest route"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + leaf nhvrf { - // Type is an MO-Defined-Type - type l1_TrunkLog; + type l3_VrfName; + description "vrf name of next hop"; } - leaf routerMac { + leaf nexthop { + type address_Ip; + description "IP address of next hop"; + } + leaf vni { + type uint32; + description "Virtual Network Identifier"; + } + leaf dmac { type address_Mac; - default "0"; + description "MAC Address of remote VTEP"; } + } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + grouping poe_Entity-group { + description "poe Entity"; - // Type is an MO-Defined-Type - type eqpt_PortT; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_PortUsage; + type nw_AdminSt; + description "Admin State"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type nw_EntOperSt; + description "Operational State"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // This class shall store the global configuration + // for a running poe instance + container inst-items { - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + uses poe_Inst-group; + description "Power on Ethernet Instance"; } + container physif-items { + list PhysIf-list { + key "id"; - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; - - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + uses poe_PhysIf-group; + description "Power on Ethernet Interface list"; + } + description "Power on Ethernet Interface"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // This object configs module logging level + container modloglevel-items { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + uses poe_ModLogLevel-group; + description "Config POE logging level"; } + } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + grouping poe_Inst-group { + description "Power on Ethernet Instance"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - container priorflowctrl-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=priorflowctrl - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrl-group; + type nw_AdminSt; + description "Admin State"; } - container priorflowctrlwd-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=priorflowctrlwd - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrlWd-group; + type nw_InstCtrl; + description "Controls"; } + } - // EEE policy - container eeep-items { + grouping poe_PhysIf-group { + description "Power on Ethernet Interface"; - // Added containment as a singleton: Prefix=eeep - // Acquired From Package l1 - uses l1_EeeP-group; + leaf portMode { + + type poe_poePortmode; + description "POE interface's current port mode "; + } + leaf maxConsumption { + type uint64; + description "POE interface's current max port consumption"; } - // Storm control policy - container stormctrlp-items { + leaf portPriority { - // Added containment as a singleton: Prefix=stormctrlp - // Acquired From Package l1 - uses l1_StormCtrlP-group; + type poe_poePriority; + description "POE interface's current port Priority "; } - // Load interval policy - container loadp-items { + leaf portPolice { - // Added containment as a singleton: Prefix=loadp - // Acquired From Package l1 - uses l1_LoadP-group; + type poe_poePolice; + description "POE interface's current port police action "; + } + leaf portDefaultConsumption { + type uint64; + description "POE interface's default port consumption"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + leaf name { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Port-channel interface information holder - container aggrif-items { + leaf descr { - // Added containment as a singleton: Prefix=aggrif - // Acquired From Package ethpm - uses ethpm_AggrIf-group; + type naming_Descr1024; + description "Description"; } - container bundleInfo-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=bundleInfo - // Acquired From Package pc - uses pc_BundleInfo-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container aggrExtd-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=aggrExtd - // Acquired From Package pc - uses pc_AggrIfExtended-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Vlan Mapping policy - container vlanmapping-items { + grouping poe_ModLogLevel-group { + description "Config POE logging level"; - // Added containment as a singleton: Prefix=vlanmapping - // Acquired From Package pc - uses pc_VlanMapping-group; + // logging level + leaf loggingLevel { + + type poe_LoggingLevel; + description "Logging Level"; } - // BndlMbrIf class - container bndlmbrif-items { - list BndlMbrIf-list { - config "false"; - key "id"; + // logging type + leaf loggingType { + config "false"; - // Added containment: Prefix=bndlmbrif - // Acquired From Package pc - uses pc_BndlMbrIf-group; - } + type poe_LoggingType; + description "Logging type"; } + } - container multisiteiftracking-items { - - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; - } + grouping qosm_Entity-group { + description "QoS Entity"; - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + leaf name { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from fexBndlGrpToAggrIf - // Inherited From pc:AggrIf - container rtfexBndlGrpToAggrIf-items { + // - Admin state + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=rtfexBndlGrpToAggrIf - // Acquired From Package infra - uses infra_RtFexBndlGrpToAggrIf_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from accBndlGrpToAggrIf - // Inherited From pc:AggrIf - container rtaccBndlGrpToAggrIf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtaccBndlGrpToAggrIf - // Acquired From Package infra - uses infra_RtAccBndlGrpToAggrIf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtextConf-items { + // Qos interface defintion. Holds information about qos + // operated at a class level + container class-items { + list Class-list { + config "false"; + key "qosGrp"; - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses qosm_Class-group; + description "Class list"; + } + description "Class"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtbrConf-items { + // Qos interface defintion. Holds information about qos + // operated at a interface level + container if-items { + list If-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses qosm_If-group; + description "Qos Interface list"; + } + description "Qos Interface"; } - // Rel-def target from vpcConf - // Inherited From pc:AggrIf - container rtvpcConf-items { + // Holder for qos fabric class policy, each class describes + // qos attributes like mtu, etc + container classp-items { + list Class-list { + config "false"; + key "qosGrp"; - // Added containment as a singleton: Prefix=rtvpcConf - // Acquired From Package vpc - uses vpc_RtVpcConf_target-group; + uses qosp_Class-group; + description "QoS Class list"; + } + description "QoS Class"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtfvNodePortAtt-items { - - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { + // Qos classification rules based on dscp values + container dscp-items { + list DscpRule-list { config "false"; - key "tDn"; + key "from to qosGrp markDscp"; - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + uses qosp_DscpRule-group; + description "DSCP QoS Classification Rule list"; } + description "DSCP QoS Classification Rule"; } - // Rel-def from mbrIfs - container rsmbrIfs-items { - - // Abstract containment of rsmbrIfs derived from pc:AggrIf - list RsMbrIfs-list { - key "tDn"; + // Qos classification rules based on dot1p values + container dot1p-items { + list Dot1pRule-list { + config "false"; + key "from to qosGrp markDscp"; - // Added containment: Prefix=rsmbrIfs - // Acquired From Package pc - uses pc_RsMbrIfs_source-group; + uses qosp_Dot1pRule-group; + description "Dot1p QoS Classification Rule list"; } + description "Dot1p QoS Classification Rule"; } - // Rel-def from lacpPolCons - container rslacpPolCons-items { + // Qos classification rules based on IP values + container ip-items { + list IpRule-list { + config "false"; + key "addr"; - // Added containment as a singleton: Prefix=rslacpPolCons - // Acquired From Package pc - uses pc_RsLacpPolCons_source-group; + uses qosp_IpRule-group; + description "IP Classification Rule list"; + } + description "IP Classification Rule"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } + grouping qosm_Class-group { + description "Class"; - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtphysRtdConf-items { + // QoS Group + leaf qosGrp { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type qos_Prio; + description "ID"; } + } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtl3EncPhysRtdConf-items { + grouping qosm_If-group { + description "Qos Interface"; - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Interface ID + leaf id { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_IfId; + description "ID"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // IfClass information. Holds information about qos operated + // at a per port per class level + container class-items { + list IfClass-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses qosm_IfClass-group; + description "Qos Interface Class list"; } + description "Qos Interface Class"; } + } + + grouping qosm_IfClass-group { + description "Qos Interface Class"; - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtLsNodeToIf-items { + // Class id + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; + type qos_Prio; + description "ID"; } + } - container dbgIfIn-items { + grouping qosp_Class-group { + description "QoS Class"; - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + // Administrative state + leaf admin { + config "false"; + + type nw_AdminSt; + description "Admin State"; } - container dbgIfOut-items { + // mtu + leaf mtu { + config "false"; - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + type qosp_MTU; + description "MTU"; } - container dbgIpIn-items { + // Class id + leaf qosGrp { + config "false"; - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + type qos_Prio; + description "Priority"; } - container dbgDot1d-items { + // Qos Class operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + type qosp_OperSt; + description "Operational State"; } - container dbgEtherStats-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container dbgDot3Stats-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + type naming_Descr; + description "Description of the specified attribute"; } - container dbgIfHCIn-items { + // Congestion policy holder, describes the congestion + // parameters like congestion algo, ecn etc. These are + // applied at a per class today in the system + container cong-items { - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + uses qosp_Cong-group; + description "Congestion"; } - container dbgIfHCOut-items { + // Queue management policy holder, describes the queue + // threshold parameters like management method, limts, + // etc. These are applied at a per class today in the + // system + container queue-items { - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + uses qosp_Queue-group; + description "Queue"; } - container dbgIpv6IfStats-items { + // Buffer policy holder, describes the minimum + // guaranteed packet buffer reservations. These are + // applied at a per class today in the system + container buffer-items { - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + uses qosp_Buffer-group; + description "Buffer"; } - container dbgIfStorm-items { + // Schedule policy holder, describes the minimum + // guaranteed packet buffer reservations. These are + // applied at a per class today in the system + container sched-items { - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + uses qosp_Sched-group; + description "Schedule"; } } - grouping ethpm_AggrIf-group { - leaf numActivePorts { - config "false"; - type uint16; - } + grouping qosp_Cong-group { + description "Congestion"; - // list of active members - // Type is an MO-Defined-Type - leaf activeMbrs { + leaf name { config "false"; - description "List of Active Members"; - // Type is an MO-Defined-Type - type ethpm_ActiveMembersList; - } - leaf numMbrUp { - config "false"; - type uint8; - } - leaf ifIndex { - config "false"; - type uint32; - default "0"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operAutoNeg { + leaf descr { config "false"; - description "negotiate auto"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMtu { + // What algorithm to use when congestion happens + leaf algo { config "false"; - description "Operational Maximum transmission unit"; - // Type is an MO-Defined-Type - type l1_Mtu; + type qosp_CongAlgo; + description "TBD"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf adminSt { + // Explicit congestion notification (ecn) ECN is disabled for FCS, thus this is implicit + leaf ecn { config "false"; - description "Administrative State"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type qosp_ECN; + description "TBD"; } + } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDescr { + grouping qosp_Queue-group { + description "Queue"; + + leaf name { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type ethpm_operDescr; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSt { + leaf descr { config "false"; - description "Operational Port State"; - // Type is an MO-Defined-Type - type l1_OperSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational port status reason - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQual { + // Queue control method (static/dynamic) + leaf meth { config "false"; - description "Operational State Failure Reason"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type qosp_CtrlMeth; + description "TBD"; } - // Operational port status syserror code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQualCode { + // queue limit, only applicable with static control + // method + leaf limit { config "false"; - description "Operational Port Status Syserror Code"; - // Type is an MO-Defined-Type - type l1_OperStQualCode; + type qosp_QueueLimit; + description "TBD"; } + } - // Operational port err disable reason code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operErrDisQual { + grouping qosp_Buffer-group { + description "Buffer"; + + leaf name { config "false"; - description "Operational Port Error Disable Reason Code"; - // Type is an MO-Defined-Type - type l1_OperErrDisQual; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port speed - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSpeed { + leaf descr { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational port mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMode { + // Minimum buffers reserved in units of MTU + leaf min { config "false"; - description "Operational Port Mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type qosp_MinBuf; + description "TBD"; } + } - // Operational duplex - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDuplex { + grouping qosp_Sched-group { + description "Schedule"; + + leaf name { config "false"; - description "Operational Duplex State"; - // Type is an MO-Defined-Type - type l1_Duplex; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port flow control - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operFlowCtrl { + leaf descr { config "false"; - description "Operational Port Flow Control"; - // Type is an MO-Defined-Type - type l1_FlowControl; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational phy port enable state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operPhyEnSt { + // Scheduling algorithm + leaf meth { config "false"; - description "Operational Physical Port Enable State"; - // Type is an MO-Defined-Type - type l1_OperSt; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; + type qosp_SchedAlgo; + description "TBD"; } - // port Tx type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf txT { + // If wrr, what is the bandwidth allocated (in %) + leaf bw { config "false"; - description "Port Transmit Type"; - // Type is an MO-Defined-Type - type l1_TxT; - } - leaf lastLinkStChg { - config "false"; - type string; - } - leaf portCfgWaitFlags { - config "false"; - type uint32; - } - leaf accessVlan { - config "false"; - type string; - } - leaf nativeVlan { - config "false"; - type string; - } - leaf cfgNativeVlan { - config "false"; - type string; - } - leaf cfgAccessVlan { - config "false"; - type string; - } - leaf primaryVlan { - config "false"; - type string; + type qosp_BwPercent; + description "TBD"; } + } - // port oper bitset - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operBitset { + grouping qosp_DscpRule-group { + description "DSCP QoS Classification Rule"; + + // Range from + leaf from { config "false"; - description "Port Oper Bitset"; - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type qosp_Dscp; + description "From"; } - // vdc id - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf vdcId { + // Range to + leaf to { config "false"; - description "Vdc Id"; - // Type is an MO-Defined-Type - type l2_VdcId; - } - leaf resetCtr { - config "false"; - type uint32; + type qosp_Dscp; + description "To"; } - leaf media { + + leaf name { config "false"; - type uint32; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf encap { + + leaf descr { config "false"; - type uint32; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf iod { + + // Group Id + leaf qosGrp { config "false"; - type uint64; + + type qos_Prio; + description "Group ID"; } - // allowed vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf allowedVlans { + // Mark Dscp + leaf markDscp { config "false"; - description "Allowed Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_Dscp; + description "DSCP"; } - // operational vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operVlans { + // Qos Class operational state + leaf operSt { config "false"; - description "Operational Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_OperSt; + description "Operational State"; } + } - // errored vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf errVlans { + grouping qosp_Dot1pRule-group { + description "Dot1p QoS Classification Rule"; + + // Range from + leaf from { config "false"; - description "Errored Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_Dot1P; + description "From"; } - // trunk status - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operTrunkStatus { + // Range to + leaf to { config "false"; - description "Trunking Status"; - // Type is an MO-Defined-Type - type ethpm_TrunkStatus; + type qosp_Dot1P; + description "To"; } - // bundle index - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf bundleIndex { + leaf name { config "false"; - description "Interface Bundle Index - table for a particular output primitive"; - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port oper mdix mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMdix { + leaf descr { config "false"; - description "Port Oper Mdix Mode"; - // Type is an MO-Defined-Type - type l1_Mdix; + type naming_Descr; + description "Description of the specified attribute"; } - leaf currErrIndex { + + // Group Id + leaf qosGrp { config "false"; - type uint32; + + type qos_Prio; + description "Group ID"; } - // last seen errors - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf lastErrors { + // Mark Dscp + leaf markDscp { config "false"; - description "Last Seen Errors"; - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type qosp_Dscp; + description "DSCP"; } - leaf errDisTimerRunning { + + // Qos Class operational state + leaf operSt { config "false"; - type boolean; + + type qosp_OperSt; + description "Operational State"; } - leaf bundleBupId { + } + + grouping qosp_IpRule-group { + description "IP Classification Rule"; + leaf addr { config "false"; - type uint32; + type address_Ip; + description "IP Address"; } - // Operational Dce Mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDceMode { + leaf name { config "false"; - description "Operational Dce Mode"; - // Type is an MO-Defined-Type - type l1_DceMode; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // interface type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf intfT { + leaf descr { config "false"; - description "Interface Type"; - // Type is an MO-Defined-Type - type l1_IntfT; + type naming_Descr; + description "Description of the specified attribute"; } - // port diags type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf diags { + // Group Id + leaf qosGrp { config "false"; - description "Port Diags Type"; - // Type is an MO-Defined-Type - type l1_DiagsT; + type qos_Prio; + description "Group ID"; } - // Operational port EEE state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operEEEState { + // Mark Dscp + leaf markDscp { config "false"; - description "Operational Port EEE State"; - // Type is an MO-Defined-Type - type l1_EEEState; - } - leaf operEEETxWkTime { - config "false"; - type uint32; + type qosp_Dscp; + description "DSCP"; } - leaf operEEERxWkTime { + + // Qos Class operational state + leaf operSt { config "false"; - type uint32; + + type qosp_OperSt; + description "Operational State"; } + } - // port user config flags - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf userCfgdFlags { - config "false"; - description "Port User Config Flags"; + grouping sisf_Entity-group { + description "Enable/Disable FHS feature"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf numOfSI { - config "false"; - type uint32; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // configured sub-interface ids - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf siList { + // Operational state + leaf operSt { config "false"; - description "Configured Sub-interface Ids"; - // Type is an MO-Defined-Type - type ethpm_SiBitmap; + type nw_EntOperSt; + description "Operational State"; } - leaf dynamicVlan { + + // Operational errors qualifier + leaf operErr { config "false"; - type boolean; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Liked from l1:EthIf:usage - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage"; + // This objects hold per sisf instance information. There is only + // one instance of dhcp running in the system today + container snooping-items { + list InstSnooping-list { + key "policyName"; - // Type is an MO-Defined-Type - type l1_PortUsage; + uses sisf_InstSnooping-group; + description "Configure a snooping policy for FHS feature list"; + } + description "Configure a snooping policy for FHS feature"; } - container portcap-items { + // Ipv6 Neighbor Binding Global Configuration + container neighborbinding-items { - // Added containment as a singleton: Prefix=portcap - // Acquired From Package ethpm - uses ethpm_PortCap-group; + uses sisf_InstBinding-group; + description "Configure IPv6 snoopiong binding table global setting"; } - } - grouping pc_BundleInfo-group { + // Ipv6 DHCP Guard Configure + container dhcpguard-items { + list InstDhcpGuard-list { + key "policyName"; - // Type is an MO-Defined-Type - leaf operType { - config "false"; - description "P ort channel type"; + uses sisf_InstDhcpGuard-group; + description "Configure a dhcp guard policy for FHS feature list"; + } + description "Configure a dhcp guard policy for FHS feature"; + } - // Type is an MO-Defined-Type - type pc_PortChannelType; + // Ipv6 RA Guard Configure + container raguard-items { + list InstRaGuard-list { + key "policyName"; + + uses sisf_InstRaGuard-group; + description "Configure a nd raguard policy for FHS feature list"; + } + description "Configure a nd raguard policy for FHS feature"; } - // Type is an MO-Defined-Type - leaf operProtocol { - config "false"; - description "Port channel protocol"; + // This object holds bfd interface information + container fhsif-items { + list FhsIf-list { + key "id"; - // Type is an MO-Defined-Type - type pc_PortChannelProtocol; + uses sisf_FhsIf-group; + description "Configure interface for FHS feature list"; + } + description "Configure interface for FHS feature"; + } + container fhsvlan-items { + list FhsVlan-list { + key "vlanID"; + + uses sisf_FhsVlan-group; + description "SISF Vlan list"; + } + description "SISF Vlan"; } } - grouping pc_AggrIfExtended-group { + grouping sisf_InstSnooping-group { + description "Configure a snooping policy for FHS feature"; + leaf policyName { + type string; + description "Name of the snooping policy"; + } + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; + } - // Type is an MO-Defined-Type - leaf poType { - description "Port-channel type"; + leaf deviceRole { - // Type is an MO-Defined-Type - type pc_PoType; + type sisf_deviceRole; + description "Sets the role of the device attached to the port"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ndpProtocol { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sisf_ndpflag; + description "Glean addresses in NDP packets"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf dhcpProtocol { - // Type is an MO-Defined-Type - type naming_Descr1024; + type sisf_dhcpflag; + description "Glean addresses in DHCP packets"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf securityLevel { - // Type is an MO-Defined-Type - type nw_IfId; + type sisf_securityLevel; + description "Setup security level of snoopiong policy"; } - // Port-type that the interface is facing - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf portTypeFabric { - description "Identifies if or not the port is a fabric-facing port"; + leaf limitAddressCount { - // Type is an MO-Defined-Type - type l1_PortTypeFabric; + type sisf_limitAddressCount; + description "Configure maximum address per port"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + leaf tracking { - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + type sisf_NonGlobalTracking; + description "Override default tracking behavior"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportBlock { - description "Disable/enable switchport block on interface"; + leaf reachableLifetimer { - // Type is an MO-Defined-Type - type l1_SwitchportBlock; + type sisf_reachableLifetimerSnoopingPolicy; + description "TBD"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportMacLearn { - description "Disable/enable mac learning on interface"; + leaf staleLifetimer { - // Type is an MO-Defined-Type - type l1_switchportMacLearn; + type sisf_staleLifetimerSnoopingPolicy; + description "TBD"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf flowCtrl { - description "Disable/enable flowcontrol block on interface"; + leaf name { - // Type is an MO-Defined-Type - type l1_FlowControl; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastLevel { - description "storm-control broadcast level"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type nw_AdminSt; + description "Admin State"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastPPS { - description "storm-control broadcast PPS"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + type nw_InstCtrl; + description "Controls"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastLevel { - description "storm-control multicast level"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastPPS { - description "storm-control multicast PPS"; + grouping sisf_InstBinding-group { + description "Configure IPv6 snoopiong binding table global setting"; + leaf logging { + type boolean; + description "Enable syslog logging of IPv6 snooping binding table events"; + } - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf maxEntries { + + type sisf_maxEntries; + description "Define maximum number of entries in the IPv6 snoopiong binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastLevel { - description "Storm control unicast level"; + leaf vlanLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type sisf_vlanLimit; + description "Define maximum number of entries allowed per vlan"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastPPS { - description "Storm control unicast PPS"; + leaf macLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + type sisf_macLimit; + description "Define maximum number of entries allowed per mac"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlAct { - description "Storm control action"; + leaf portLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlAct; + type sisf_portLimit; + description "Define maximum number of entries allowed per port"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf bufferBoost { - description "Disable/enable buffer boost on interface"; + leaf reachableLifetimer { - // Type is an MO-Defined-Type - type l1_BufferBoost; + type sisf_reachableLifetimer; + description "Set reachable-lifetimer of IPv6 snooping binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportVirtualEthernetBridge { - description "Disable/enable switchport virtual ethernet bridge on interface"; + leaf staleLifetimer { - // Type is an MO-Defined-Type - type l1_SwitchportVirtualEthernetBridge; + type sisf_staleLifetimer; + description "Set stale-lifetimer of IPv6 snooping binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf allowMultiTag { - description "Allow Multitag"; + leaf downLifetimer { - // Type is an MO-Defined-Type - type l1_AllowMultiTag; + type sisf_downLifetimer; + description "Set down-lifetimer of IPv6 snooping binding table"; + } + leaf tracking { + type boolean; + default "false"; + description "Configure IPv6 snooping tracking for static binding entry"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - container rtvrfMbr-items { + leaf retryInterval { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_retryInterval; + description "Configure interval time between two probings"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping pc_VlanMapping-group { - leaf Enabled { - type boolean; - default "false"; + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Vlan Translate Table policy - container vlantranslatetable-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=vlantranslatetable - // Acquired From Package pc - uses pc_VlanTranslateTable-group; + type nw_InstCtrl; + description "Controls"; } - } - grouping pc_VlanTranslateTable-group { + // Operational errors qualifier + leaf operErr { + config "false"; - // Vlan Translate Table policy Vlan Translate Entry policy - container vlan-items { - list VlanTranslateEntry-list { - key "vlanid"; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + container bindingip-items { + list StaticBinding-list { + key "v6Addr vlanID"; - // Added containment: Prefix=vlan - // Acquired From Package pc - uses pc_VlanTranslateEntry-group; + uses sisf_StaticBinding-group; + description "Create static binding entry in IPv6 snooping binding table of FHS feature list"; } + description "Create static binding entry in IPv6 snooping binding table of FHS feature"; } } - grouping pc_VlanTranslateEntry-group { + grouping sisf_StaticBinding-group { + description "Create static binding entry in IPv6 snooping binding table of FHS feature"; - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan Id"; + leaf vlanID { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type sisf_VlanID; + description "Configure Vlan ID of static binding entry"; + } + leaf v6Addr { + type address_Ipv6; + description "Configure IPv6 address of static binding entry"; } - // Type is an MO-Defined-Type - leaf innervlanid { - description "Inner Vlan Id"; + leaf interface { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type nw_IfId; + description "Configure interface of static binding entry"; + } + leaf mac { + type address_Mac; + description "Configure mac address of static binding entry"; } - // Type is an MO-Defined-Type - leaf translatevlanid { - description "Translate Vlan Id"; + leaf tracking { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type sisf_NonGlobalTracking; + description "Configure tracking option of static binding entry"; } - } - - grouping pc_BndlMbrIf-group { - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface index"; + leaf retryInterval { - // Type is an MO-Defined-Type - type nw_IfId; + type sisf_RetryIntervalBinding; + description "Configure retry interfval between two probings of static binding entry"; } - } - grouping l3_RtdIf-group { + leaf reachableLifetimer { + + type sisf_ReachableLifetimerBinding; + description "Configure reachable-lifetimer of static binding entry"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_InstCtrl; + description "Controls"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtpseudoIf-items { - - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + grouping sisf_InstDhcpGuard-group { + description "Configure a dhcp guard policy for FHS feature"; + leaf policyName { + type string; + description "Name of dhcp guard policy"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtvrfMbr-items { + leaf deviceRole { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_dhcpGuardDeviceRole; + description "Set the role of device attached to the port"; } - - // Rel-def from physRtdConf - container rsphysRtdConf-items { - - // Added containment as a singleton: Prefix=rsphysRtdConf - // Acquired From Package l3 - uses l3_RsPhysRtdConf_source-group; + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf preferenceMax { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type sisf_preferenceMax; + description "Configure maximum allowed advertised server preference"; } - } - - grouping l3_LbRtdIf-group { - // Administrative link logging enable - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative Link Logging Enable"; + leaf preferenceMin { - // Type is an MO-Defined-Type - type l1_LinkLog; + type sisf_preferenceMin; + description "Configure minimum allowed advertised server preference"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l3:LbRtdIf->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_InstCtrl; + description "Controls"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { - - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + grouping sisf_InstRaGuard-group { + description "Configure a nd raguard policy for FHS feature"; + leaf policyName { + type string; + description "Name of the nd raguard policy"; } - // loopback interface information holder - container lbrtdif-items { + leaf deviceRole { - // Added containment as a singleton: Prefix=lbrtdif - // Acquired From Package ethpm - uses ethpm_LbRtdIf-group; + type sisf_raGuardDeviceRole; + description "Set the role of the device attached to the port"; + } + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtpseudoIf-items { + leaf routerPreferenceMaximum { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sisf_raGuardRouterPreferenceMaximum; + description "Enable verification of the advertised router preference"; } - // Rel-def target from operSourceInterface - // Inherited From l3:LbRtdIf - container rtoperSourceInterface-items { + leaf hopLimitMax { - // Added containment as a singleton: Prefix=rtoperSourceInterface - // Acquired From Package nvo - uses nvo_RtOperSourceInterface_target-group; + type sisf_hopLimitMax; + description "Enable verification of the maximum advertised hop count limit"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtvrfMbr-items { + leaf hopLimitMin { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_hopLimitMin; + description "Enable verification of the minimum advertised hop count limit"; } - // Rel-def from protLbIf - container rsprotLbIf-items { + leaf managedConfig { - // Added containment as a singleton: Prefix=rsprotLbIf - // Acquired From Package l3 - uses l3_RsProtLbIf_source-group; + type sisf_raGuardManagedConfig; + description "Enable verification of the advertised M flag"; } - // Rel-def from lbIfToLocale - container rslbIfToLocale-items { + leaf otherConfig { - // Abstract containment of rslbIfToLocale derived from l3:LbRtdIf - list RsLbIfToLocale-list { - key "tDn"; + type sisf_raGuardOtherConfig; + description "Enable verification of the advertised O flag"; + } - // Added containment: Prefix=rslbIfToLocale - // Acquired From Package l3 - uses l3_RsLbIfToLocale_source-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def from LbIfToOutRef - container rslbIfToOutRef-items { - - // Abstract containment of rslbIfToOutRef derived from l3:LbRtdIf - list RsLbIfToOutRef-list { - key "tDn"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=rslbIfToOutRef - // Acquired From Package l3 - uses l3_RsLbIfToOutRef_source-group; - } + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_InstCtrl; + description "Controls"; } - } - grouping ethpm_LbRtdIf-group { - leaf ifIndex { + // Operational errors qualifier + leaf operErr { config "false"; - type uint32; - default "0"; - } - leaf iod { - config "false"; - type uint64; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + grouping sisf_FhsIf-group { + description "Configure interface for FHS feature"; + leaf snoopingPolicyName { + type string; + description "Attach a snooping policy of FHS feature"; + } + leaf dhcpGuardPolicyName { + type string; + description "Attach a dhcp guard policy of FHS feature"; + } + leaf raGuardPolicyName { + type string; + description "Attach a nd raguard policy of FHS feature"; + } + leaf deleted { config "false"; - description "Operational Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type boolean; + description "Delete the Mo if the target becomes l3"; } - // Operational MTU - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational MTU"; + leaf name { - // Type is an MO-Defined-Type - type l1_Mtu; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational Description - // Type is an MO-Defined-Type - leaf operDescr { - config "false"; - description "Operational Description"; + leaf descr { - // Type is an MO-Defined-Type - type ethpm_operDescr; + type naming_Descr1024; + description "Description"; } - // Operational state reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Failure Reason"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l1_OperStQual; - } - leaf currErrIndex { - config "false"; - type uint32; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Last seen errors - // Type is an MO-Defined-Type - leaf lastErrors { - config "false"; - description "Last Seen Errors"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type nw_IfAdminSt; + description "Admin State"; } - // Operational state flags - // Type is an MO-Defined-Type - leaf operBitset { - config "false"; - description "Operational State Flags"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping l3_EncRtdIf-group { + grouping sisf_FhsVlan-group { + description "SISF Vlan"; - // Interface Mtu Is it required, check with marketing? - // Type is an MO-Defined-Type - leaf mtu { - description "Interface Mtu"; + leaf vlanID { - // Type is an MO-Defined-Type - type l1_Mtu; + type sisf_VlanID; + description "Vlan Number"; } - leaf mtuInherit { - type boolean; - default "true"; + leaf snoopingPolicyName { + type string; + description "Attach a snooping policy of FHS feature"; } - - // Interface interface delay @@@ This is not exposed in IFC - // Type is an MO-Defined-Type - leaf delay { - description "Interface Interface Delay"; - - // Type is an MO-Defined-Type - type l1_Delay; + leaf dhcpGuardPolicyName { + type string; + description "Attach a dhcp guard policy of FHS feature"; } - leaf encap { + leaf raGuardPolicyName { type string; + description "Attach a nd raguard policy of FHS feature"; } + leaf deleted { + config "false"; + type boolean; + description "Delete the Mo if no vlan config"; + } + } - // Interface Bandwidth Is it required, check with marketing? - // Type is an MO-Defined-Type - leaf bw { - description "Interface Bandwidth"; + grouping sla_Entity-group { + description "SLA"; - // Type is an MO-Defined-Type - type l1_Bw; + // Holds service instance information + container inst-items { + + uses sla_Inst-group; + description "Instance"; } + } - // Interface link logging enable - // Type is an MO-Defined-Type - leaf linkLogEn { - description "Interface Link Logging Enable"; + grouping sla_Inst-group { + description "Instance"; - // Type is an MO-Defined-Type - type l1_LinkLog; - } - leaf routerMac { - type address_Mac; - default "0"; - } - leaf ifConnDn { - type string; + // Holds service control plane entity information + container sender-items { + + uses sla_Sender-group; + description "Sender"; } - // Interface link logging enable - // Type is an MO-Defined-Type - leaf mediumType { - description "Interface Medium Type"; + container responder-items { - // Type is an MO-Defined-Type - type l1_Medium; + uses sla_Responder-group; + description "sla Responder specific configs are handled with this mo"; } - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + container twampserver-items { - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + uses sla_TwampServer-group; + description "Twamp"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping sla_Sender-group { + description "Sender"; + leaf loggingTraps { + type boolean; + description + "Enable syslog traps which sends the + trap meesages on reaction-config trap is enabled."; + } + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "3"; + description + "configures the logging level for ip sla sender. + The property can be set only if feature sla sender + is enabled."; + } + leaf resetSender { + type boolean; + default "false"; + description "Resets all sla probe related configuration."; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Holds service instance information + container operation-items { + list Probe-list { + key "id"; + + uses sla_Probe-group; + description "Probe configuration list"; } + description "Probe configuration"; } - // Inherited From nw:If - // Modified by Override: l3:EncRtdIf->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Scheduler starts a probe of any type for a destination monitroring + container groupschedule-items { + list GrpScheduler-list { + key "grpSchedulerId"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + uses sla_GrpScheduler-group; + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations list"; } + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type + grouping sla_Probe-group { + description "Probe configuration"; leaf id { - description "Interface ID"; + type uint32 { + range "1..2147483647"; + } + description + "Operation index which is unique for each probe, + all the probe related configs and the + statistics are displayed using this index."; + } + leaf restart { + type boolean; + default "false"; + description "Restarting a scheduled probe"; + } - // Type is an MO-Defined-Type - type nw_IfId; + container icmpecho-items { + + uses sla_IcmpEcho-group; + description "ICMP Echo Operation"; } - // Administrative state - // Inherited From l3:If - // Modified by Override: l3:EncRtdIf->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container tcpconnect-items { - // Type is an MO-Defined-Type - type l1_AdminSt; + uses sla_TcpConnect-group; + description "TCP Connect Operation to probe the server"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + container http-items { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + uses sla_Http-group; + description + "The HTTP operation measures the round-trip time(RTT) + between a Cisco device and an HTTP server to retrieve a + web page."; } - // sub-interface information holder - container encrtdif-items { + container udpecho-items { - // Added containment as a singleton: Prefix=encrtdif - // Acquired From Package ethpm - uses ethpm_EncRtdIf-group; + uses sla_UdpEcho-group; + description "UDP Echo Operation"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtpseudoIf-items { + container udpjitter-items { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + uses sla_UdpJitter-group; + description "UDP Jitter Operation"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtvrfMbr-items { + container dns-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses sla_Dns-group; + description "DNS Operation to probe the DNS server"; } - // Rel-def from encPhysRtdConf - container rsencPhysRtdConf-items { + // Scheduler starts a probe of any type for a destination monitroring + container schedule-items { - // Added containment as a singleton: Prefix=rsencPhysRtdConf - // Acquired From Package l3 - uses l3_RsEncPhysRtdConf_source-group; + uses sla_Scheduler-group; + description "sla scheduler configurations"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Reaction trigger + container trigger-items { + list ReactionTrigger-list { + key "targetProbe"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses sla_ReactionTrigger-group; + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data. list"; + } + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + } + + // Reaction iconfiguration and reaction trigger + container reaction-items { + list Reaction-list { + key "reactOn"; + + uses sla_Reaction-group; + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data. list"; } + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; } } - grouping ethpm_EncRtdIf-group { - leaf ifIndex { - config "false"; - type uint32; - default "0"; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf operEncap { - config "false"; - type uint16; - } + grouping sla_IcmpEcho-group { + description "ICMP Echo Operation"; - // Type is an MO-Defined-Type - leaf operDescr { - config "false"; - description "Description"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type ethpm_operDescr; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - leaf fsmState { - config "false"; - type uint8; + + // Service monitoring timeout declaring the service down + leaf timeout { + + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - leaf iod { - config "false"; - type uint64; + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Port State"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type l1_OperSt; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // Operational state reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Failure Reason"; + leaf srcInterface { - // Type is an MO-Defined-Type - type l1_OperStQual; + type nw_IfId; + description + "Source Interface in which the ingress icmp + packet is received."; } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Maximum Transmission Unit"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type l1_Mtu; + type l3_VrfName; + description "vrf on which the probe is configured."; } - leaf currErrIndex { - config "false"; - type uint32; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Last seen errors - // Type is an MO-Defined-Type - leaf lastErrors { - config "false"; - description "Holds most recently seen errors"; - - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Operational state flags - // Type is an MO-Defined-Type - leaf operBitset { - config "false"; - description "Specifies Operational State Flags"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - leaf siCfgFlags { - config "false"; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; + } + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; + } + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; + } + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; + } + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; + } + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } } - grouping svi_If-group { + grouping sla_TcpConnect-group { + description "TCP Connect Operation to probe the server"; - // VLAN ID associated with the SVI - // Type is an MO-Defined-Type - leaf vlanId { - description "VLAN ID Associated with the SVI"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type svi_VlanId; - } - leaf mac { - type address_Mac; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // Medium type (P2P or Broadcast) @@@ default value: Not coming from IFC - // Type is an MO-Defined-Type - leaf medium { - description "indicates the administrative port medium type"; + // Service monitoring timeout declaring the service down + leaf timeout { - // Type is an MO-Defined-Type - type svi_Medium; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - - // MTU of the SVI @@@ This comes from qos - // Type is an MO-Defined-Type - leaf mtu { - description "the administrative MTU port on the aggregated interface"; - - // Type is an MO-Defined-Type - type svi_Mtu; + leaf srcPort { + type uint32; + description + "Source TCP Port configuration for TCP probe, + if the srcPort is not configured then the + random source port will be used."; } - leaf mtuInherit { + leaf dstPort { + type uint32; + description + "Destination TCP Port configuration for the TCP + probe, it is must to configure the destination + port."; + } + leaf control { type boolean; default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - // Delay metric associated with the SVI - // Type is an MO-Defined-Type - leaf delay { - description "specifies the administrative port delay"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type svi_Delay; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Bandwidth metric associated with the SVI - // Type is an MO-Defined-Type - leaf bw { - description "specifies the administrative port bandwidth"; - - // Type is an MO-Defined-Type - type svi_Bw; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Carrier Delay: hold period for which Carrier transition - // like L2 interfacing going down is ignored. - // Type is an MO-Defined-Type - leaf carDel { + leaf srcip { + type address_Ip; description - "Carrier Delay: hold period for which Carrier transition - like L2 interfacing going down is ignored"; - - // Type is an MO-Defined-Type - type svi_CarrDelay; + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Load-averaging interval 1 @@@ Infrastrure level policy - // Type is an MO-Defined-Type - leaf loadIntvl1 { - description "Load-averaging Interval 1"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type svi_LoadIntvl1; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - - // Load-averaging interval 2 - // Type is an MO-Defined-Type - leaf loadIntvl2 { - description "Load-averaging Interval 2"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl2; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; } - - // Load-averaging interval 3 - // Type is an MO-Defined-Type - leaf loadIntvl3 { - description "Load-averaging Interval 3"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl3; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - leaf inbMgmt { - type boolean; + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf autostate { - type boolean; - default "true"; + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf snmpTrap { - type boolean; - default "true"; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - - // Operational state of the SVI - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "the runtime state of the object or policy"; - - // Type is an MO-Defined-Type - type svi_OperSt; + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Reason for operational state being down - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Reason for Operational State Being Down (status qualifier)"; - - // Type is an MO-Defined-Type - type svi_OperStQual; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // VLAN Type (e.g. private vlan) - // Type is an MO-Defined-Type - leaf vlanT { - config "false"; - description "VLAN Type"; - - // Type is an MO-Defined-Type - type l2_DomType; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Controller Id - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; - - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf iod { - config "false"; - type uint32; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf bucketsKept { + type uint32 { + range "1..60"; } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:If - // Modified by Override: svi:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "Tunnel Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; } - - // Administrative state - // Inherited From l3:If - // Modified by Override: svi:If->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type l1_AdminSt; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { - - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; - } + grouping sla_Http-group { + description + "The HTTP operation measures the round-trip time(RTT) + between a Cisco device and an HTTP server to retrieve a + web page."; - container multisiteiftracking-items { + // frequency can be either a single value or a range as "x-y" + // schedule-periods min and max is same as this if it is not range use this property frequency + leaf frequency { - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; + type sla_Frequency { + range "60..604800"; + } + description + "Group operation frequency (in seconds) + using which the probes are scheduled."; } - container svi-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=svi - // Acquired From Package svi - uses svi_OperSvi-group; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtpseudoIf-items { + leaf httpmethod { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sla_HttpMethodVal; + description + "HTTP method - Currently only the get method is + supported.For GET requests,IP SLAs will format + the request based on the specified http URL."; } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf httpurl { + type string; + description + "URL string, expecting the input as + http:[[//location[:port]]/directory]/filename"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + leaf proxy { + type string; + description "Proxy information - proxy URL"; } - } - - grouping svi_OperSvi-group { - leaf ifIndex { - config "false"; + leaf cache { + type boolean; + default "true"; + description + "The config to enable/disable the download of + cached HTTP page."; + } + leaf srcPort { type uint32; - default "0"; + description "Source Port configuration for HTTP probe"; } - leaf operDescr { - config "false"; + leaf version { type string; + default "1.0"; + description + "HTTP version number, + Supported HTTP versions are '1.0' and '1.1'."; } - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Operational State"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type l1_AdminSt; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Operational port status reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; - - // Type is an MO-Defined-Type - type svi_OperStQual; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Operational Mtu - // Type is an MO-Defined-Type - leaf operCarrierDelaySec { - config "false"; - description "Operational Carrier Delay Seconds"; - - // Type is an MO-Defined-Type - type svi_CarrDelay; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operCarrierDelayMsec { - config "false"; - description "Operational Carrier Delay milliseconds"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type svi_CarrDelay; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Mtu"; - - // Type is an MO-Defined-Type - type svi_Mtu; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; } - - // Type is an MO-Defined-Type - leaf operBw { - config "false"; - description "operational Bandwidth"; - - // Type is an MO-Defined-Type - type svi_Bw; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - - // Type is an MO-Defined-Type - leaf operDelay { - config "false"; - description "operational delay"; - - // Type is an MO-Defined-Type - type svi_Delay; + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf operAutoState { - config "false"; - type boolean; + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf operMac { - config "false"; - type address_Mac; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - leaf iod { - config "false"; - type uint64; + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Load interval 1 - // Type is an MO-Defined-Type - leaf operLoadIntvl1 { - config "false"; - description "Load Interval 1"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl1; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // Load interval 2 - // Type is an MO-Defined-Type - leaf operLoadIntvl2 { - config "false"; - description "Load Interval 2"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl2; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Load interval 3 - // Type is an MO-Defined-Type - leaf operLoadIntvl3 { - config "false"; - description "Load Interval 3"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl3; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf operLastChgSec { - config "false"; - type uint64; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - leaf operLastChgUsec { - config "false"; - type uint64; + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - } - - grouping tunnelif_If-group { - leaf tunSrcAddr { - type address_Ip; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } + } - // Tunnel source interface - // Type is an MO-Defined-Type - leaf tunSrcIntf { - description "Tunnel Source"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping sla_UdpEcho-group { + description "UDP Echo Operation"; - // Tunnel source direct - // Type is an MO-Defined-Type - leaf tunSrcDirect { - description "Tunnel Source"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type tunnelif_TunnelSrcDirect; - } - leaf tunDestAddr { - type address_Ip; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // Tunnel mode - // Type is an MO-Defined-Type - leaf tunMode { - description "Tunnel Mode"; + // Service monitoring timeout declaring the service down + leaf timeout { - // Type is an MO-Defined-Type - type tunnelif_TunnelMode; + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - - // Tunnel VRF name - // Type is an MO-Defined-Type - leaf tunVrf { - description "Tunnel Transport VRF"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelTransVRF; + leaf dstPort { + type uint32; + description + "Destination UDP Port configuration for the UDP + probe, it is must to configure the destination + port."; } - - // Tunnel MTU - // Type is an MO-Defined-Type - leaf tunMtu { - description "Tunnel MTU"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelMtu; + leaf srcPort { + type uint32; + description + "Source UDP Port configuration for udp echo + probe and if the srcPort is not configured, + then source port will be used."; } - - // Tunnel PATH MTU Discovery - // Type is an MO-Defined-Type - leaf tunPMTUD { - description "Tunnel PMTU Discovery"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelPMTUD; + leaf control { + type boolean; + default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - - // Tunnel PMTU min-mtu - // Type is an MO-Defined-Type - leaf tunminPMTU { - description "Tunnel min PMTU"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelminPMTU; + leaf dataPattern { + type string; + description + "Specifies the hexadecimal data pattern in + udp-echo probe to test for data corruption."; } - - // Tunnel PMTU ager - // Type is an MO-Defined-Type - leaf tunPMTUage { - description "Tunnel PMTU age"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelPMTUAge; + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - // Tunnel Interface Bandwidth - // Type is an MO-Defined-Type - leaf tunBW { - description "Tunnel Bandwidth"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type tunnelif_TunnelBW; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // Tunnel Interface TTL - // Type is an MO-Defined-Type - leaf tunTTL { - description "Tunnel TTL"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type tunnelif_TunnelTTL; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Administrative port snmp trap state - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Snmp Trap State"; - - // Type is an MO-Defined-Type - type tunnelif_SnmpTrapSt; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Tunnel operational state - // Type is an MO-Defined-Type - leaf tunOperSt { - config "false"; - description "Tunnel Operational State"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelOperSt; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Tunnel operational state down reason - // Type is an MO-Defined-Type - leaf tunOperStQual { - config "false"; - description "Tunnel Operational State Qualifier"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type tunnelif_TunnelOperStQual; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - leaf lastStateChgdTs { - config "false"; + leaf owner { type string; + description "Owner string of the probe(Max size 127)"; } - leaf tunDelInProg { - config "false"; - type boolean; - } - - // Tunnel Interface options - // Type is an MO-Defined-Type - leaf tunIntfOptions { - config "false"; - description "Tunnel Interface Options"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelOption; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - leaf tunIod { - config "false"; + leaf ipTos { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf tunIfIndex { - config "false"; + leaf ipv6TrafficClass { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf tunIfPmtu { - config "false"; - type uint32; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - leaf lastCtrRstChgdTs { - config "false"; + leaf destHostName { type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - leaf tunRxPackets { - config "false"; - type uint64; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - leaf tunRxBytes { - config "false"; - type uint64; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - leaf tunTxPackets { - config "false"; - type uint64; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf tunTxBytes { - config "false"; - type uint64; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - leaf tunSrcIP { - config "false"; - type address_Ip; + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:If - // Modified by Override: tunnelif:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "Tunnel Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf enhancedInterval { + type uint32 { + range "0..3600"; } + description "Aggregation interval in seconds to collect the aggregated values."; } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - // Administrative state - // Inherited From l3:If - // Modified by Override: tunnelif:If->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping sla_UdpJitter-group { + description "UDP Jitter Operation"; - // Type is an MO-Defined-Type - type l1_AdminSt; + // Service monitoring frequency in seconds + leaf frequency { + + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; + } + leaf dstPort { + type uint32; + description + "Destion UDP Port configuration for the UDP + probe, it is must to configure the destination + port."; + } + leaf srcPort { + type uint32; + description + "Source UDP Port configuration for udp-jitter + probe and if the srcPort is not configured, + then source port will be used."; + } + leaf control { + type boolean; + default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtpseudoIf-items { + leaf numPkts { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sla_NumPkts; + description "Number of packets per operation"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtvrfMbr-items { + leaf interval { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sla_Interval; + description "UDP Jitter Interval"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf codecType { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type sla_CodecType; + description "Codec Type"; } - } - grouping ipv4_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf codecNumPkts { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sla_CodecNumPkts; + description "Number of packets per operation"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf codecSize { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_CodecSize; + description "Number of bytes per packet"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf codecInterval { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type sla_Interval; + description "Interval between packets"; } - // This objects hold per ipv4 instance information. There is - // only one instance of ipv4 running in the system today - container inst-items { + leaf advFactor { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ipv4 - uses ipv4_Inst-group; + type sla_AdvFactor; + description "Advantage factor"; + } + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - } - - grouping ipv4_Inst-group { - // ip source-route enabled by default - // Type is an MO-Defined-Type - leaf sourceRoute { - description "Source-Route"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // ip access-list match local enabled by default - // Type is an MO-Defined-Type - leaf accessListMatchLocal { - description "Access-List Match Local"; + leaf precision { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_Precision; + description "Precision configuration"; } - // logging level enabled by default - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging level"; + leaf operationPktPriority { - // Type is an MO-Defined-Type - type arp_LoggingLevel; + type sla_OpPktPriority; + description "Operation Packet Priority"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf absoluteClockTolerance { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sla_ClockToleranceAbsolute; + description "Oneway NTP Clock Tolerance absolute Value"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf percentClockTolerance { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_ClockTolerancePercent; + description "Oneway NTP Clock Tolerance Value in percentage"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type l3_VrfName; + description "vrf on which the probe is configured."; + } + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Added containment: Prefix=dom - // Acquired From Package ipv4 - uses ipv4_Dom-group; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; + } + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // IPv4 Client information - container client-items { - list Client-list { - config "false"; - key "clientName clientProtocol"; - - // Added containment: Prefix=client - // Acquired From Package ipv4 - uses ipv4_Client-group; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Load sharing mo - container iploadsharing-items { - - // Added containment as a singleton: Prefix=iploadsharing - // Acquired From Package ipv4 - uses ipv4_IPLoadSharing-group; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - - container loadstat-items { - - // Added containment as a singleton: Prefix=loadstat - // Acquired From Package ipv4 - uses ipv4_LoadSharingStat-group; + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; } - - container iptrafficstat-items { - - // Added containment as a singleton: Prefix=iptrafficstat - // Acquired From Package ipv4 - uses ipv4_IpTrafficStat-group; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - container iptrafficerrstat-items { - - // Added containment as a singleton: Prefix=iptrafficerrstat - // Acquired From Package ipv4 - uses ipv4_IpTrafficErrStat-group; - } + grouping sla_Dns-group { + description "DNS Operation to probe the DNS server"; - container icmptrafficstat-items { + // Service monitoring frequency in seconds + leaf frequency { - // Added containment as a singleton: Prefix=icmptrafficstat - // Acquired From Package ipv4 - uses ipv4_ICMPTrafficStat-group; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - container rfc4293trafficstat-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=rfc4293trafficstat - // Acquired From Package ipv4 - uses ipv4_RFC4293TrafficStat-group; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - } - - grouping ipv4_Dom-group { - - // ip auto-discard disabled by default - // Type is an MO-Defined-Type - leaf autoDiscard { - description "Auto-Discard"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf srcPort { + type uint32; + description "Source Port configuration for DNS probe"; + } + leaf nameServerHostName { + type string; + description + "Host name of the name server, from which the + DNS name server IP address is resolved. + Name server IP address which is used to resolve + the target host name or target host ip configured + in the probe. This property is applicable + only incase of DNS probe."; + } + leaf nameServerIp { + type address_Ip; + description + "Name server IP address which is used to resolve + the target host name or target host ip configured + in the probe.This property is applicable only if the + configured probe type is DNS."; + } + leaf targetEntry { + type string; + description + "This property can be either Host name or IP address + (IPv4 address format x.x.x.x),(no IPv6 support) + for which the resolution happens either by name or + by IP to name respectively, in the configured probe. + This property is applicable only incase of DNS probe."; } - // ip icmp-error source-interface - // Type is an MO-Defined-Type - leaf ipIcmpErrorsSrcIntf { - description "ICMP errors source-interface"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type nw_IfId; + type l3_VrfName; + description "vrf on which the probe is configured."; + } + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; + } + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; + } + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; + } + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; + } + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + } - // ip route static bfd - container rtstaticbfd-items { - list RtStaticBfd-list { - key "intf nexthop"; - - // Added containment: Prefix=rtstaticbfd - // Acquired From Package ipv4 - uses ipv4_RtStaticBfd-group; + grouping sla_Scheduler-group { + description "sla scheduler configurations"; + leaf life { + type uint64 { + range "0..2147483647"; + } + default "3600"; + description "Length of time to execute in seconds"; + } + leaf ageOut { + type uint32 { + range "0..2073600"; + } + default "0"; + description + "How long to keep this probe, + when inactive (in seconds)"; + } + leaf startProbe { + type enumeration { + enum Now { + value 1; + description "Now immediate"; + } + enum At { + value 2; + description "At a specific time"; + } + enum Pending { + value 3; + description "Pending "; + } + enum After { + value 4; + description "After some time"; + } + } + default "Pending"; + description "When the probe is to be started"; + } + leaf dayOfTheMonth { + type uint16 { + range "0..31"; + } + default "0"; + description + "At which day of the configured month, + the probe is to be started.Setting the value + as zero means current day of the time. + This property is applicable only when the + startProbe proeprty is set as At"; + } + leaf month { + type enumeration { + enum None { + value 0; + description "Current month"; + } + enum January { + value 1; + description "January"; + } + enum February { + value 2; + description "February"; + } + enum March { + value 3; + description "March"; + } + enum April { + value 4; + description "April"; + } + enum May { + value 5; + description "May"; + } + enum June { + value 6; + description "June"; + } + enum July { + value 7; + description "July"; + } + enum August { + value 8; + description "August"; + } + enum September { + value 9; + description "September"; + } + enum October { + value 10; + description "October"; + } + enum November { + value 11; + description "November"; + } + enum December { + value 12; + description "December"; + } } + default "None"; + description + "At which month, the probe is to be started. + This property is applicable only when the + startProbe proeprty is set as At"; } + leaf startTime { + type string; + description + "When to start this probe on a given day and + month in Hour(s):Minute(s):Second(s) + i.e in (H:M:S) format. + This property is applicable only when the + startProbe proeprty is set as At or After."; + } + leaf recurring { + type boolean; + default "false"; + description "Probe to be scheduled automatically every day"; + } + } - // This object holds ipv4 information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping sla_ReactionTrigger-group { + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + leaf targetProbe { + type uint32; + description + "The target entry Number which will be + triggered when the reactionType is configured + as trapAndTrigger or triggerOnly. It is + mandatory that this targetId probe should be + configured prior to setting this property."; + } + } - // Added containment: Prefix=if - // Acquired From Package ipv4 - uses ipv4_If-group; - } + grouping sla_Reaction-group { + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + + leaf reactOn { + + type sla_ReactionVariable; + description + "The performance parameters on which the + proactive threshold monitoring and + notifications are done."; } - container pstat-items { + leaf reactionType { - // Added containment as a singleton: Prefix=pstat - // Acquired From Package ipv4 - uses ipv4_ProcessStat-group; + type sla_ActionType; + description + "The config is to notify the user when the + monitored performance parameter value rises + above or falls below a specified threshold. + The notification can be either as SNMP traps + or trigger to a new probe."; } - // Static route definitions - container rt-items { - list Route-list { - key "prefix"; + leaf thresholdType { - // Added containment: Prefix=rt - // Acquired From Package ipv4 - uses ipv4_Route-group; + type sla_ThresholdType; + description + "The config says when the configured + reactionType should be triggered."; + } + leaf thresholdCountX { + type uint16 { + range "1..16"; + } + default "5"; + description + "The config denotes the number of times the + monitored performance parameter value rises + above or falls below a specified threshold. + This config applies only for the thresholdType + 1. average + 2. consecutive + 3. xOfy"; + } + leaf thresholdCountY { + type uint16 { + range "1..16"; } + default "5"; + description + "The config denotes the number of times the + monitored performance parameter value rises + above or falls below a specified threshold. + This config applies only for the thresholdType + xOfy"; } - container routestat-items { + leaf upperThreshold { - // Added containment as a singleton: Prefix=routestat - // Acquired From Package ipv4 - uses ipv4_RouteStat-group; + type sla_Threshold; + description "Upper limit for Threshold."; } - } - grouping ipv4_RtStaticBfd-group { + leaf lowerThreshold { - // interface value. - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + type sla_Threshold; + description "Lower limit for Threshold."; + } + } - // Type is an MO-Defined-Type - type nw_IfId; + grouping sla_GrpScheduler-group { + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations"; + leaf grpSchedulerId { + type uint32 { + range "1..65535"; + } + description "Group scheduler index"; } - leaf nexthop { - type address_Ip; + leaf probeList { + type string; + description + "Multiple probe ID's to be group scheduled, + List of one or more identification(ID) numbers + of the IP SLAs operations to be included in a + new multioperation schedule. + (Max up to 125 characters). + Indicate ranges of operation ID numbers with a + hyphen. Individual ID numbers and ranges of ID + numbers are delimited by a comma. + For example, enter a list of operation ID + numbers in any of the following ways: + x-y,a-b,c-f or + x,y,a,b,c,f or + x-y,a,b,c-f"; + } + leaf schedulePeriod { + type uint32 { + range "0..604800"; + } + default "0"; + description + "Group schedule period in seconds, + This is the time period in which the group of + the probes configured in probeList are + scheduled at an equal gap between them."; + } + leaf life { + type uint32 { + range "0..2147483647"; + } + default "3600"; + description "Length of time to execute in seconds"; + } + leaf ageOut { + type uint32 { + range "0..2073600"; + } + default "0"; + description + "How long to keep the probes, + when inactive (in seconds)"; } - } - grouping ipv4_If-group { - leaf directedBroadcast { - type enumeration { + // frequency can be either a single value or a range as "x-y" + // schedule-periods min and max is same as this if it is not range use this property frequency + leaf frequency { - // Disabled - enum disabled { + type sla_Frequency; + description + "Group operation frequency (in seconds) + using which the probes are scheduled."; + } + leaf frequencyRange { + type string; + description + "Group operation frequency (in seconds) + either in range as x-y, frequency-range + is used for random scheduling."; + } + leaf startProbe { + type enumeration { + enum Now { + value 1; + description "Now immediate"; + } + enum At { + value 2; + description "At a specific time"; + } + enum Pending { + value 3; + description "Pending "; + } + enum After { + value 4; + description "After some time"; + } + } + default "Pending"; + description "When the probe is to be started"; + } + leaf dayOfTheMonth { + type uint16 { + range "0..31"; + } + default "0"; + description + "At which day of the configured month, + the probe is to be started.Setting the value + as zero means current day of the time. + This property is applicable only when the + startProbe proeprty is set as At"; + } + leaf month { + type enumeration { + enum None { value 0; + description "Current month"; } - - // Enabled - enum enabled { + enum January { value 1; + description "January"; + } + enum February { + value 2; + description "February"; + } + enum March { + value 3; + description "March"; + } + enum April { + value 4; + description "April"; + } + enum May { + value 5; + description "May"; + } + enum June { + value 6; + description "June"; + } + enum July { + value 7; + description "July"; + } + enum August { + value 8; + description "August"; + } + enum September { + value 9; + description "September"; + } + enum October { + value 10; + description "October"; + } + enum November { + value 11; + description "November"; + } + enum December { + value 12; + description "December"; } } - default "disabled"; + default "None"; + description + "At which month, the probe is to be started. + This property is applicable only when the + startProbe proeprty is set as At"; } - leaf acl { - type string { - length "0..63"; + leaf startTime { + type string; + description + "When to start this probe on a given day and + month in Hour(s):Minute(s):Second(s) + i.e in (H:M:S) format. + This property is applicable only when the + startProbe proeprty is set as At or After."; + } + leaf modifyGrpSchedule { + type enumeration { + enum create { + value 0; + description "Create"; + } + enum add { + value 1; + description "Add"; + } + enum delete { + value 2; + description "Delete"; + } } + default "create"; + description "modify the existing group schedule"; } + leaf reschedule { + type boolean; + default "false"; + description "Restarting a scheduled probe"; + } + } - // IP forward. When interface types: eth, mgmt, - // or port channel. - // Type is an MO-Defined-Type - leaf forward { - description "IP forward"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping sla_Responder-group { + description "sla Responder specific configs are handled with this mo"; + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "2"; + description + "configures the logging level for ip sla responder. + The property can be set only if feature sla responder + is enabled."; + } + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the ip sla responder. + To enable responder, feature sla responder is to be enabled"; } - // IP unnumbered. When interface types: eth, tunnel - // Type is an MO-Defined-Type - leaf unnumbered { - description "IP unnumbered"; + container twampresponder-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses sla_TwampResponder-group; + description "sla Responder twamp specific configs are handled with this mo"; } + container type-items { + list PermanentResponder-list { + key "protocol port ipAddress"; - // URPF info on interface - // Type is an MO-Defined-Type - leaf urpf { - description "URPF Info"; + uses sla_PermanentResponder-group; + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable. list"; + } + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable."; + } + } - // Type is an MO-Defined-Type - type ip_UrpfT; + grouping sla_TwampResponder-group { + description "sla Responder twamp specific configs are handled with this mo"; + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the twamp responder. + To enable twamp responder, feature sla responder is to be enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf timeout { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type sla_Timeout { + range "1..604800"; } + description + "TWAMP Responder Session inactivity timeout in + seconds (default 900)"; } + } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping sla_PermanentResponder-group { + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable."; - // Type is an MO-Defined-Type - type naming_Descr1024; + leaf protocol { + + type sla_RespProto; + description + "Responder protocol types supported types are + udp-echo, tcp-connect"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf port { - // Type is an MO-Defined-Type - type nw_IfId; + type sla_PortNum; + description + "Port on which the responder is listenening to + receive the packets from the sender. + This property is applicable only for + TCP or UDP protocol. + Required only if ip sla sender probe's control + is disabled. Permanently enables + the responder functionality on the specified + port."; + } + leaf ipAddress { + type address_Ip; + description + "IP on which the responder is listenening to + receive the packets from the sender. + This property is applicable only for + TCP or UDP protocol. + Required only if ip sla sender probe's control + is disabled. Permanently enables + the responder functionality on the specified + port and IP. If the user needs wild card IP address, + then use 0.0.0.0(any IP)"; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_IfAdminSt; + grouping sla_TwampServer-group { + description "Twamp"; + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the ip sla twamp server. + To enable twamp-server, feature sla twamp-server is to be enabled"; + } + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "2"; + description + "configures the logging level for twamp server. + The property can be set only if feature sla twamp-server + is enabled."; } - // Interface controls - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf port { - // Type is an MO-Defined-Type - type ip_IfControl; + type sla_PortNum { + range "1..65535"; + } + description + "TWAMP Server Port on which the TCP control + connection is established.(default 862)"; } - // Interface mode - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf inactivityTimer { - // Type is an MO-Defined-Type - type ip_IfMode; + type sla_Timeout { + range "1..6000"; + } + description + "TWAMP Server Inactivity Timer, + Max number of inactive seconds (default 900)"; } + } - // Donor interface - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf donorIf { - description "Donor Interface"; + grouping telemetry_Entity-group { + description "Telemetry System"; - // Type is an MO-Defined-Type - type nw_IfId; + leaf adminSt { + + type telemetry_AdminState; + description "TBD"; } - // Operational state - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // certificate + container certificate-items { - // Type is an MO-Defined-Type - type ip_OperSt; + uses telemetry_Certificate-group; + description "Certificate used by Telemetry System"; } - // Operational state qualifier - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // default destination profile + // This is the placeholder for global destination/transport options. + // It supports the following options: + // - vrf : Specify the vrf for the transport. + // The default is "", meaning each platform + // could pick it own default setting. + container destprof-items { - // Type is an MO-Defined-Type - type ip_UnnumberedOperStQual; + uses telemetry_DestProfile-group; + description "Default Destination Profile"; } - // Interface address - container addr-items { - list Addr-list { - key "addr"; + // sensor-groups + container sensor-items { + list SensorGroup-list { + key "id"; - // Added containment: Prefix=addr - // Acquired From Package ipv4 - uses ipv4_Addr-group; + uses telemetry_SensorGroup-group; + description "Sensor Group list"; } + description "Sensor Group"; } - container dampening-items { + // destination-groups + container dest-items { + list DestGroup-list { + key "id"; - // Added containment as a singleton: Prefix=dampening - // Acquired From Package ipv4 - uses ipv4_Dampening-group; + uses telemetry_DestGroup-group; + description "Destination Group list"; + } + description "Destination Group"; } - container dampeningdata-items { + // subscriptions + container subs-items { + list Subscription-list { + key "id"; - // Added containment as a singleton: Prefix=dampeningdata - // Acquired From Package ipv4 - uses ipv4_DampeningData-group; + uses telemetry_Subscription-group; + description "Subscription list"; + } + description "Subscription"; } + } - container trafficstat-items { - - // Added containment as a singleton: Prefix=trafficstat - // Acquired From Package ipv4 - uses ipv4_IfTrafficStat-group; - } + grouping telemetry_Certificate-group { + description "Certificate used by Telemetry System"; - container stat-items { + leaf filename { - // Added containment as a singleton: Prefix=stat - // Acquired From Package ipv4 - uses ipv4_IfStat-group; + type os_OsString; + description "Name of the .pem certificate file"; } - // Route map entries - container rpol-items { + leaf hostname { - // Added containment as a singleton: Prefix=rpol - // Acquired From Package rtmap - uses rtmap_RmapPolicy-group; + type os_OsString; + description "Hostname associated with the certificate"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - container rtvrfMbr-items { + grouping telemetry_DestProfile-group { + description "Default Destination Profile"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } + // Not used. + // Need this dummy property for VSH/CLI + leaf adminSt { - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - container rtnwPathToIf-items { + type telemetry_AdminState; + description "Admin state"; + } - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Destination option : vrf name + container vrf-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses telemetry_DestOptVrf-group; + description "Destination option for vrf"; } - } - grouping ipv4_Addr-group { - leaf addr { - type address_Ip; + // Destination option : compression name + container compression-items { + + uses telemetry_DestOptCompression-group; + description "Destination option for compression"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Destination option : source interface + container sourceinterface-items { - // Type is an MO-Defined-Type - type ip_AddrT; + uses telemetry_DestOptSourceInterface-group; + description "Destination option for source interface"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container retry-items { - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + uses telemetry_DestOptRetry-group; + description "Destination option for send retry"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Destination option : nodeid name + container nodeid-items { - // Type is an MO-Defined-Type - type rt_Preference; + uses telemetry_DestOptNodeId-group; + description "Destination option for nodeid string"; } + } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + grouping telemetry_DestOptVrf-group { + description "Destination option for vrf"; - // Type is an MO-Defined-Type - type rt_Tag; + leaf name { + + type telemetry_VrfName; + description "VRF name"; } + } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping telemetry_DestOptCompression-group { + description "Destination option for compression"; - // Type is an MO-Defined-Type - type ip_OperSt; + leaf name { + + type telemetry_Compression; + description "Compression name"; } + } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + grouping telemetry_DestOptSourceInterface-group { + description "Destination option for source interface"; - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + leaf name { + + type nw_IfId; + description "Source interface name"; } } - grouping ipv4_Dampening-group { - leaf halfLifePeriod { - type uint64 { - range "0..30"; - } - } - leaf reuseThreshold { - type uint64 { - range "0..20000"; + grouping telemetry_DestOptRetry-group { + description "Destination option for send retry"; + leaf size { + type uint32 { + range "10..1500"; } + default "10"; + description "Send retry buffer size (in MB)"; } - leaf suppressThreshold { - type uint64 { - range "0..20000"; + } + + grouping telemetry_DestOptNodeId-group { + description "Destination option for nodeid string"; + leaf name { + type string { + length "1..128"; } + description "NodeID name"; } - leaf maxSuppress { - type uint64 { - range "0..255"; - } + } + + grouping telemetry_SensorGroup-group { + description "Sensor Group"; + + leaf id { + + type telemetry_IDType; + description "Sensor group identifier"; } - // Type is an MO-Defined-Type - leaf restartEnabled { - description "Restart enabled"; + leaf dataSrc { - // Type is an MO-Defined-Type - type nw_AdminSt; + type telemetry_DataSource; + description "Data source for this sensor group"; } - leaf restartPenalty { - type uint64 { - range "0..20000"; + container path-items { + list SensorPath-list { + key "path"; + + uses telemetry_SensorPath-group; + description "The DME/Open-Config/Device-Yang/Usability path list"; } + description "The DME/Open-Config/Device-Yang/Usability path"; } } - grouping ipv4_DampeningData-group { - leaf flapCount { - config "false"; - type uint64; - } - leaf penalty { - config "false"; - type uint64; - } - leaf suppressed { - config "false"; - type uint64; - } - leaf reuseTime { - config "false"; - type uint64; - } - leaf halfLifePeriod { - config "false"; - type uint64; - } - leaf reuseThreshold { - config "false"; - type uint64; - } - leaf suppressThreshold { - config "false"; - type uint64; - } - leaf maxSuppress { - config "false"; - type uint64; - } - leaf maxPenalty { - config "false"; - type uint64; - } - leaf restartPenalty { - config "false"; - type uint64; - } - } + grouping telemetry_SensorPath-group { + description "The DME/Open-Config/Device-Yang/Usability path"; - grouping ipv4_IfTrafficStat-group { - leaf upktSent { - config "false"; - type uint64; - } - leaf upktRecv { - config "false"; - type uint64; - } - leaf upktFwd { - config "false"; - type uint64; - } - leaf upktOrig { - config "false"; - type uint64; - } - leaf upktConsumed { - config "false"; - type uint64; - } - leaf ubyteSent { - config "false"; - type uint64; - } - leaf ubyteRcv { - config "false"; - type uint64; - } - leaf ubyteFwd { - config "false"; - type uint64; - } - leaf ubyteOrig { - config "false"; - type uint64; - } - leaf ubyteConsumed { - config "false"; - type uint64; - } - leaf mpktSent { - config "false"; - type uint64; - } - leaf mpktRcv { - config "false"; - type uint64; - } - leaf mpktFwd { - config "false"; - type uint64; - } - leaf mpktOrig { - config "false"; - type uint64; - } - leaf mpktConsumed { - config "false"; - type uint64; - } - leaf mbyteSent { - config "false"; - type uint64; - } - leaf mbyteRcv { - config "false"; - type uint64; - } - leaf mbyteFwd { - config "false"; - type uint64; - } - leaf mbyteOrig { - config "false"; - type uint64; - } - leaf mbyteConsumed { - config "false"; - type uint64; - } - leaf bpktSent { - config "false"; - type uint64; - } - leaf bpktRcv { - config "false"; - type uint64; - } - leaf bpktFwd { - config "false"; - type uint64; - } - leaf bpktOrig { - config "false"; - type uint64; - } - leaf bpktConsumed { - config "false"; - type uint64; - } - leaf bbyteSent { - config "false"; - type uint64; - } - leaf bbyteRcv { - config "false"; - type uint64; - } - leaf bbyteFwd { - config "false"; - type uint64; - } - leaf bbyteOrig { - config "false"; - type uint64; - } - leaf bbyteConsumed { - config "false"; - type uint64; - } - leaf lpktSent { - config "false"; - type uint64; - } - leaf lpktRcv { - config "false"; - type uint64; - } - leaf lpktFwd { - config "false"; - type uint64; - } - leaf lpktOrig { - config "false"; - type uint64; - } - leaf lpktConsumed { - config "false"; - type uint64; - } - leaf lbyteSent { - config "false"; - type uint64; - } - leaf lbyteRcv { - config "false"; - type uint64; - } - leaf lbyteFwd { - config "false"; - type uint64; - } - leaf lbyteOrig { - config "false"; - type uint64; - } - leaf lbyteConsumed { - config "false"; - type uint64; - } - } + leaf path { - grouping ipv4_IfStat-group { - leaf iodValue { - config "false"; - type uint64; - } - leaf vrfNameOut { - config "false"; - type string; - } - leaf protoState { - config "false"; - type string; - } - leaf linkState { - config "false"; - type string; - } - leaf adminState { - config "false"; - type string; - } - leaf priAddr { - config "false"; - type address_Ipv4; - } - leaf priSubnet { - config "false"; - type string; - } - leaf priMasklen { - config "false"; - type uint8; - } - leaf priRoutePref { - config "false"; - type uint8; - } - leaf priTag { - config "false"; - type uint32; - } - leaf secAddr { - config "false"; - type string; - } - leaf secAddrSubnet { - config "false"; - type string; - } - leaf secAddrMasklen { - config "false"; - type string; - } - leaf secAddrRoutePref { - config "false"; - type string; - } - leaf secAddrTag { - config "false"; - type string; - } - leaf numAddr { - config "false"; - type uint32; - } - leaf vaddrClient { - config "false"; - type string; - } - leaf vaddrPrefix { - config "false"; - type string; - } - leaf vaddrSubnet { - config "false"; - type string; - } - leaf vaddrMasklen { - config "false"; - type string; - } - leaf numVaddr { - config "false"; - type uint64; - } - leaf unnumIntf { - config "false"; - type string; - } - leaf firstIod { - config "false"; - type uint64; - } - leaf unnumChildIntf { - config "false"; - type string; - } - leaf ipDisabled { - config "false"; - type string; - } - leaf bcastAddr { - config "false"; - type address_Ipv4; - } - leaf mAddr { - config "false"; - type string; - } - leaf numMaddr { - config "false"; - type uint32; - } - leaf mtu { - config "false"; - type uint16; - } - leaf pref { - config "false"; - type uint8; - } - leaf tag { - config "false"; - type uint32; + type telemetry_SnsrPathType; + description "The path to the monitored data"; } - // Type is an MO-Defined-Type - leaf proxyArp { - config "false"; - description "Proxy Arp"; + // Query condition (opaque query arguments as in REST url) + leaf queryCondition { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_proxyArp; + type telemetry_queryCondType { + pattern ".*[!-~]{0,256}.*"; + } + description "The condition(s) for retrieving notifications"; } - // Type is an MO-Defined-Type - leaf localProxyArp { - config "false"; - description "Local Proxy Arp"; + // Event Collector (queryFilter) + leaf filterCondition { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_localProxyArp; + type telemetry_filterCondType { + pattern ".*[!-~]{0,512}.*"; + } + description "The condition(s) for filtering the queried notifications"; } - // Type is an MO-Defined-Type - leaf mRouting { - config "false"; - description "Multicast Routing"; + leaf depth { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_mRouting; + type telemetry_RetrieveDepth; + description "The number of levels of managed objects retrieved"; } + } - // Type is an MO-Defined-Type - leaf icmpRedirect { - config "false"; - description "Icmp Redirect"; + grouping telemetry_DestGroup-group { + description "Destination Group"; - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_icmpRedirect; + leaf id { + + type telemetry_IDType; + description "Destination group ID"; + } + container addr-items { + list Dest-list { + key "addr port"; + + uses telemetry_Dest-group; + description "Destination list"; + } + description "Destination"; } - // Type is an MO-Defined-Type - leaf directBcast { - config "false"; - description "Directed Broadcast"; + // destination-group option : use-chunking + container chunking-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_directBcast; + uses telemetry_DestGrpOptChunking-group; + description "Destination-group option for chunking"; } - // Type is an MO-Defined-Type - leaf ipUnreach { - config "false"; - description "IP Unreachable"; + // destination-group option : certificate + container certificate-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_ipUnreach; + uses telemetry_DestGrpOptCertificate-group; + description "Destination-group option for certificate"; } - // Type is an MO-Defined-Type - leaf portUnreach { - config "false"; - description "Port Unreachable"; + // destination-group option : vrf name + container vrf-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_portUnreach; + uses telemetry_DestGrpOptVrf-group; + description "Destination-group option for vrf"; } - leaf urpfMode { - config "false"; - type string; + + // destination-group option : compression + container compression-items { + + uses telemetry_DestGrpOptCompression-group; + description "Destination-group option for compression"; } - leaf ipLoadSharing { - config "false"; - type string; + } + + grouping telemetry_Dest-group { + description "Destination"; + leaf addr { + type address_Ip; + description "Destination IP address"; } - leaf aclIn { - config "false"; - type string; + leaf port { + type uint16; + description "Destination port number"; } - leaf aclOut { - config "false"; - type string; + + // Need equivalent type for YANG telemetry-stream-protocol in DME + leaf proto { + + type telemetry_Protocol; + description "Destination protocol type"; } - leaf statsLastReset { - config "false"; - type string; + + // No equivalent property in YANG + leaf enc { + + type telemetry_Encoding; + description "Destination encoding type"; } } - grouping rtmap_RmapPolicy-group { - leaf rmapname { - type string { - length "0..63"; + grouping telemetry_DestGrpOptChunking-group { + description "Destination-group option for chunking"; + leaf chunkSize { + type uint32 { + range "64..4096"; } + default "64"; + description "Chunking size in kbytes"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping telemetry_DestGrpOptCertificate-group { + description "Destination-group option for certificate"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf filename { + + type os_OsString; + description "Name of the .pem certificate file"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf hostname { - // Type is an MO-Defined-Type - type naming_Descr; + type os_OsString; + description "Hostname associated with the certificate"; } } - grouping ipv4_ProcessStat-group { - leaf contextName { - config "false"; - type string; - } - leaf contextId { - config "false"; - type uint64; - } - leaf baseTId { - config "false"; - type uint64; - } + grouping telemetry_DestGrpOptVrf-group { + description "Destination-group option for vrf"; - // Type is an MO-Defined-Type - leaf autoDisc { - config "false"; - description "Auto Discard"; + leaf name { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoDisc; + type telemetry_VrfName; + description "Destination-group VRF name"; } + } - // Type is an MO-Defined-Type - leaf autoDiscAdd { - config "false"; - description "Auto Discard Added"; - - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoDiscAdd; - } + grouping telemetry_DestGrpOptCompression-group { + description "Destination-group option for compression"; - // Type is an MO-Defined-Type - leaf nullBcast { - config "false"; - description "Null BroadCast"; + leaf name { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_nullBcast; + type telemetry_Compression; + description "Destination-group Compression name"; } + } - // Type is an MO-Defined-Type - leaf autoPuntBcast { - config "false"; - description "Auto Punt Broadcast"; + grouping telemetry_Subscription-group { + description "Subscription"; - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoPuntBcast; + leaf id { + + type telemetry_SubIDType; + description "Subscription identifier"; } - // Type is an MO-Defined-Type - leaf staticDisc { - config "false"; - description "Static Discard"; + container rssensorGroupRel-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_staticDisc; - } - leaf staticDefRoute { - config "false"; - type uint64; - } - leaf ipUnreach { - config "false"; - type uint64; - } - leaf entryIod { - config "false"; - type string; + list RsSensorGroupRel-list { + key "tDn"; + + uses telemetry_RsSensorGroupRel_source-group; + description "Link to sensorGroup entry list"; + } + description "Link to sensorGroup entry"; } - leaf localAddr { - config "false"; - type string; + + container rsdestGroupRel-items { + + list RsDestGroupRel-list { + key "tDn"; + + uses telemetry_RsDestGroupRel_source-group; + description "Link to destGroup entry list"; + } + description "Link to destGroup entry"; } } - grouping ipv4_Route-group { + grouping track_Entity-group { + description "Object track entity"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object represents object of track. + // The object tracking monitors the status of the tracked objects + // and communicates any changes made to interested clients. + // Each tracked object is identified by a unique number + // (track:Object.id) that clients can use to configure the action + // to take when a tracked object changes state. + // Object types that can be tracked: + // * Interface line protocol state: Tracks whether the line + // protocol state is UP or Down. + // * Interface IPv4/IPv6 routing state: Tracks whether the interface + // has an IPv4 address and if IPv4 routing is enabled and active. + // * IPv4/IPv6 route reachability: Tracks whether an IPv4 route + // exists and is reachable from the local switch. + // * Object track list: Tracks combined states of multiple objects. + // Capabilities supported: boolean-and, boolean-or, + // threshold-percentage, threshold-weight. + // * Object tracking of IP SLA. + // Specify track:Object.id + container object-items { + list Object-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses track_Object-group; + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA list"; } + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping track_Object-group { + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA"; - // Type is an MO-Defined-Type - type naming_Descr; + // Track Object ID. + // Each instance is identified by a unique number, + // the object ID. Each instance is a parent of only one + // of 'track:If', 'track:List', + // 'track:IpRoute' or 'track:IpSla' + leaf id { + + type track_TrackId; + description "Track object ID"; } - leaf prefix { - type address_Ip; + leaf clients { + config "false"; + type uint16; + description "Number of clients tracking this object"; } - // Route preference, the administrative distance assigned - // to this route - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Object tracking for an interface, supports Ethernet, + // subinterfaces, port-channels, loopback interfaces, and + // VLAN interfaces. Either the interface line protocol state or + // the interface IP routing state. When IP routing state is + // tracked, these conditions are required for the object to be UP: + // * IP routing must be enabled and active on the interface. + // * The interface line-protocol state must be UP. + // * The interface IP address must be known. + // If all three conditions are not met, IP routing state is Down. + container if-items { - // Type is an MO-Defined-Type - type rt_Preference; + uses track_If-group; + description "Interfaces of type Physical, Sub-interfaces, Port-channels, Loopback and VLAN support tracking object"; } - // Route tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + // IP route track object. + // Tracks whether an IPV4/IPV6 route exists and is reachable from + // the local switch + container iprt-items { - // Type is an MO-Defined-Type - type rt_Tag; + uses track_IpRoute-group; + description "IP route tracking object tracks whether an IPV4/IPV6 route exists and is reachable from the local switch"; } - // Policy tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; + // IP SLA track object. + // Object tracking of IP SLAs operations allow clients to + // track the output from IP SLAs objects and + // use this information to trigger an action. + // Two aspects of IP SLAs can be tracked: state and reachability. + // For state, if the return code is OK, then the track state is UP; + // if the return code is not OK, then the track state is Down. + // For reachability, if the return code is OK or OverThreshold, reachability is UP; + // if not OK, reachability is Down. + container ipsla-items { - // Type is an MO-Defined-Type - type actrl_PcTag; + uses track_IpSla-group; + description "Object tracking of IP SLAs operations allow clients to track the output from IP SLAs objects"; } - // Route ctrl - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // An object track list allows User to track the combined states + // of multiple objects. Object track lists support the following + // capabilities: + // * Boolean "and" function: Each object defined within the track + // list must be in an UP state so that the track list object + // can become UP. + // track:List.type should be specified as 'and' + // * Boolean "or" function: At least one object defined within the + // track list must be in UP state so that the tracked object + // can become UP. + // track:List.type should be specified as 'or' + // * Threshold percentage: The percentage of UP objects in the + // tracked list must be greater than the configured UP + // threshold for the tracked list to be in the UP state. If the + // percentage of Down objects in the tracked list is above the + // configured track list Down threshold, the tracked list is + // marked as Down. + // track:List.type should be specified as 'percentage'. The value + // for 'percentageUp' and 'percentageDown' + // * Threshold weight: Assign a weight value to each object in the + // tracked list, and a weight threshold for the track list. If + // the combined weights of all UP objects exceeds the track list + // weight UP threshold, the track list is in an UP state. If the + // combined weights of all the Down objects exceeds the track list + // weight Down threshold, the track list is in the Down state. + // track:List.type should be specified as 'weight'. The value for + // 'weightUp' and 'weightDown'. + // Mo for List type track + container list-items { - // Type is an MO-Defined-Type - type ip_RtControl; + uses track_List-group; + description "list object allows User to track the combined states of multiple objects"; } + } - // Nexthops for the static route - container nh-items { - list Nexthop-list { - key "nhIf nhAddr nhVrf"; + grouping track_If-group { + description "Interfaces of type Physical, Sub-interfaces, Port-channels, Loopback and VLAN support tracking object"; - // Added containment: Prefix=nh - // Acquired From Package ipv4 - uses ipv4_Nexthop-group; - } + // Interface ID to be tracked. + // This specifies the name of the object tracking interface, + // examples: 'eth1/1', 'eth1/1.1', 'po10', 'lo0'. + // The interface MO must be present in objstore to configure + // this else an error will be reported. + leaf id { + + type nw_IfId; + description "Interface to track"; } - // Temporary Nexthop stub created until the Spine proxy - // IP address is determined. - container nhs-items { - list NexthopStub-list { - config "false"; - key "nhIf nhAddr nhVrf"; + // Interface protocol type that an object can track + leaf protocolType { - // Added containment: Prefix=nhs - // Acquired From Package ipv4 - uses ipv4_NexthopStub-group; - } + type track_IntfProtocolType; + description "Protocol type for interface object"; } } - grouping ipv4_Nexthop-group { - leaf rtname { - type string; + grouping track_IpRoute-group { + description "IP route tracking object tracks whether an IPV4/IPV6 route exists and is reachable from the local switch"; + + // IPVX Address family of the route that is to be configured + leaf af { + + type track_Af; + description "Address family"; } - leaf tag { - type uint32; + leaf prefix { + type address_Ip; + description "IP route prefix"; } - leaf pref { - type uint8; + + // This specifies IP Route State + leaf routeState { + + type track_RouteState; + description "Route State"; } - leaf object { - type uint32; + leaf vrf { + type string; + description "Vrf for track"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This specifies the process owning the route + leaf routeOwner { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type track_RouteOwner; + description "Owner of the route"; + } + } + + grouping track_IpSla-group { + description "Object tracking of IP SLAs operations allow clients to track the output from IP SLAs objects"; + leaf probeId { + type uint32 { + range "1..2147483647"; } + description "SLA probe ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // SLA Probe States + leaf probeState { - // Type is an MO-Defined-Type - type naming_Descr; + type track_ProbeState; + description "SLA reachability/state type"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - description "Nexthop Interface"; + grouping track_List-group { + description "list object allows User to track the combined states of multiple objects"; - // Type is an MO-Defined-Type - type nw_IfId; + // Type of list object. + // Only 'boolean-and' object can be changed to 'boolean-or' + // and vice versa is possible. Any other type of object can't + // be modified to some other type. + leaf type { + + type track_ListObj; + description "Type of list object"; } - leaf nhAddr { - type address_Ip; + leaf percentageUp { + type uint16 { + range "0..100"; + } + default "1"; + description "Percentage Up"; + } + leaf percentageDown { + type uint16 { + range "0..100"; + } + default "0"; + description "Percentage Down"; + } + leaf weightUp { + type uint16 { + range "0..255"; + } + default "1"; + description "weight up value"; + } + leaf weightDown { + type uint16 { + range "0..255"; + } + default "0"; + description "weight down value"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - description "Nexthop VRF"; + // track list member objects, object-id is a naming property here + container obj-items { + list Member-list { + key "id"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf rwEncap { - type string; + uses track_Member-group; + description "MO for tracking list members list"; + } + description "MO for tracking list members"; } + } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + grouping track_Member-group { + description "MO for tracking list members"; - // Type is an MO-Defined-Type - type ip_NhFlags; + // ID of track-list member + leaf id { + + type track_TrackId; + description "Track ID of object to be tracked"; + } + leaf weight { + type uint16 { + range "1..255"; + } + default "10"; + description "Assign weight to a particular object"; + } + leaf not { + type boolean; + default "false"; + description "Negate state of object"; } + } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping udld_Entity-group { + description "Unidirectional Link Detection Entity"; - // Type is an MO-Defined-Type - type ip_OperSt; + // This class shall store the global configuration + // for a running UDLD instance + container inst-items { + + uses udld_Inst-group; + description "Unidirectional Link Detection Instance"; } } - grouping ipv4_NexthopStub-group { + grouping udld_Inst-group { + description "Unidirectional Link Detection Instance"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // aggressive mode + leaf aggressive { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type udld_AdminSt; + description "Global Aggressive Mode"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // probe message interval + leaf msgIntvl { + + type udld_MsgIntvl; + description "Probe Message Interval"; + } + leaf error { config "false"; - description "Description"; + type uint64; + default "0"; + description "failure code"; + } + container physif-items { + list PhysIf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses udld_PhysIf-group; + description "Unidirectional Link Detection Interface list"; + } + description "Unidirectional Link Detection Interface"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - config "false"; - description "Nexthop Interface"; + grouping udld_PhysIf-group { + description "Unidirectional Link Detection Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + // aggressive mode + leaf aggressive { + + type udld_AdminSt; + description "Interface Aggressive Mode"; } - leaf nhAddr { - config "false"; - type address_Ip; + + // bidirectional detection + leaf biDirDetect { + + type udld_PortEnable; + description "Bidirectional Detection Enabled"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { + // port type is fiber or non-fiber/copper + leaf fiber { config "false"; - description "Nexthop VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type udld_OperSt; + description "Fiber Port"; } - leaf rwEncap { + leaf error { config "false"; - type string; + type uint64; + default "0"; + description "failure code"; } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type ip_NhFlags; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ip_OperSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping ipv4_RouteStat-group { - leaf contextName { - config "false"; - type string; + grouping vmtracker_VmTracker-group { + description "VmTracker entity"; + leaf autoconfigEnabled { + type boolean; + default "false"; + description "Enable vmtracker fabric auto-config"; } - leaf contextId { - config "false"; - type uint32; + + // vmtracker interface object + container vmtracker-items { + list VmTrackerIf-list { + key "vmtrackerInterface"; + + uses vmtracker_VmTrackerIf-group; + description "vmracker settings for an interface. list"; + } + description "vmracker settings for an interface."; } - leaf prefixMask { - config "false"; - type string; + + // This object holds vmtracker connection information + container connection-items { + list Connection-list { + key "connName"; + + uses vmtracker_Connection-group; + description "VmTracker Connection list"; + } + description "VmTracker Connection"; } - leaf nhPrefixMask { - config "false"; - type string; + } + + grouping vmtracker_VmTrackerIf-group { + description "vmracker settings for an interface."; + + leaf vmtrackerInterface { + + type nw_IfId; + description "A vmtracker interface"; } - leaf vrfInfo { - config "false"; - type string; + leaf enable { + type boolean; + default "true"; + description "Enable vmtracker on this interface."; } - leaf intrInfo { - config "false"; - type string; + } + + grouping vmtracker_Connection-group { + description "VmTracker Connection"; + leaf connName { + type string { + length "0..64"; + } + description "Name of a connection the remote VMware Host"; } - leaf uribStat { - config "false"; - type string; + leaf remoteIp { + type address_Ip; + description "Destination IP address of this connection"; } - leaf nhopUribStat { - config "false"; - type string; + leaf remotePort { + type uint32 { + range "0..65535"; + } + description "Destination TCP port of this connection"; } - leaf trackObjNum { - config "false"; - type string; + + // VRF of vcenter to connect to + leaf remoteVrf { + + type l3_VrfName; + description "VRF to use for the destination of this connection"; } - leaf trackObjState { - config "false"; + leaf remoteUserName { + type string { + length "0..128"; + } + description "Username for logging into this VMware host"; + } + leaf remotePassword { type string; + description "Password for logging into this VMware server"; } - } - grouping ipv4_Client-group { - leaf clientName { - config "false"; - type string; + // Password Encrypt Type + leaf remotePasswordType { + + type vmtracker_PasswordType; + description "Password EnCrypt Type"; } - leaf clientUuid { - config "false"; - type int32; + leaf refresh { + type boolean; + default "false"; + description "Attempt to establish this connection"; } - leaf clientPid { - config "false"; - type int32; + leaf connect { + type boolean; + default "false"; + description "Attempt to establish this connection"; } - leaf clientExtPid { - config "false"; - type uint32; + + // allowed VLANs learned + leaf allowedVlans { + + type l2_VlanBitmap; + description "Limit the possible VLANs learned from the destination by this set"; } - leaf clientProtocol { - config "false"; - type uint8; + leaf autoVlan { + type boolean; + default "true"; + description "Enable dynamic creation of VLANs learned"; } - leaf clientIndex { - config "false"; - type uint16; + leaf findNewHost { + type uint32 { + range "0..65355"; + } + default "3600"; + description "Check this frequently for new hosts"; } - leaf clientContextId { - config "false"; - type uint32; + leaf syncFullInfo { + type uint32 { + range "0..65355"; + } + default "3600"; + description "Check this frequently for hosts, VMs, and port groups"; } + } - // client mts sap - // Type is an MO-Defined-Type - leaf clientMtsSap { - config "false"; - description "Client Data Mts Sap"; - - // Type is an MO-Defined-Type - type ipv4_ClientMtsSapType; - } + grouping acllog_Entity-group { + description "Acllog entity"; - // client flag - // Type is an MO-Defined-Type - leaf clientFlag { - config "false"; - description "Client Flag"; + // Acllog instance MO + container inst-items { - // Type is an MO-Defined-Type - type ipv4_ClientFlagType; - } - leaf clientDataMsgSuccess { - config "false"; - type uint64; - } - leaf clientDataMsgFail { - config "false"; - type uint64; - } - leaf clientRcvFunName { - config "false"; - type string; + uses acllog_Inst-group; + description "Acllog Inst Object"; } } - grouping ipv4_IPLoadSharing-group { + grouping acllog_Inst-group { + description "Acllog Inst Object"; - // load share mode for 'ip load-sharing' cli, there are four modes - // - 1. {address source-destination} - // cli: ip load-sharing address source-destination gre-outer - // concatenation rotate 1 universal-id 2 - // - 2. {address destination port destination} - // cli: ip load-sharing address source-destination gre - // concatenation rotate 1 universal-id 2 - // - 3. {address source-destination gre-key} - // cli: ip load-sharing address destination port destination - // rotate 1 universal-id 2 - // - 4. {address source-destination port source-destination} - // cli: ip load-sharing address source-destination port - // source-destination concatenation - // - 5. {address source-destination gtpu-teid} - // cli: ip load-sharing address source-destination gtpu - // concatenation rotate 1 universal-id 2 - // Type is an MO-Defined-Type - leaf loadShareMode { - description "Load sharing mode"; + container log-items { - // Type is an MO-Defined-Type - type ip_LoadShareFormat; + uses acllog_LogCache-group; + description "Acllog cache object"; } - leaf universalID { + } + + grouping acllog_LogCache-group { + description "Acllog cache object"; + leaf threshold { type uint32 { - range "0..4294967295"; + range "0..1000000"; } + default "0"; + description "Number of packets are logged before the expiry of the alert interval the system generates a Syslog message"; } - - // whether gre-outer hash is enabled - // Type is an MO-Defined-Type - leaf greOuterHash { - description "GRE Outer Hash"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf entries { + type uint32 { + range "0..1048576"; + } + default "8000"; + description "Maximum number of flows to be monitored by logging process"; } - - // whether concatenation is enabled - // Type is an MO-Defined-Type - leaf concatenation { - description "Concatenation"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf detailed { + type boolean; + description "Include detailed ACL information"; } - leaf rotate { - type uint16 { - range "1..63"; + leaf includeSgt { + type boolean; + description "Include source group tag info in syslogs"; + } + leaf interval { + type union { + type string; + type uint64 { + range "5..86400"; + } } - default "32"; + default "300"; + description "Log update interval in seconds"; + } + leaf matchLevel { + type uint8 { + range "0..7"; + } + default "6"; + description "Acllog logging level severity"; } + } - // whether ecmploadsharing is enabled. - // Not supported on n9k today, defined for future use - // Type is an MO-Defined-Type - leaf ecmpLoadSharing { - description "ECMP load sharing"; + grouping conftmpl_TemplateTable-group { + description "Template Table"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // TemplateEntry + container templateEntry-items { + list TemplateEntry-list { + key "name"; + + uses conftmpl_TemplateEntry-group; + description "Provides the details about a specific template entry list"; + } + description "Provides the details about a specific template entry"; } } - grouping ipv4_LoadSharingStat-group { - leaf univerIdRanSeed { - config "false"; - type uint32; + grouping conftmpl_TemplateEntry-group { + description "Provides the details about a specific template entry"; + leaf name { + type string; + description "Name of the config template"; } - leaf ipLoadshareOption { - config "false"; + leaf description { type string; + description "Description"; } - - // Type is an MO-Defined-Type - leaf hashFlag { + leaf refCount { config "false"; - description "GRE-Outer Hash"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Signifies the number of VRFs associated with this config template"; } - // Type is an MO-Defined-Type - leaf concat { - config "false"; - description "Concatenation"; + // OpTable MO + container opTable-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses conftmpl_OpTable-group; + description "Template Create/Delete Operation Table"; } - leaf rotate { - config "false"; - type uint16 { - range "1..63"; + } + + grouping conftmpl_OpTable-group { + description "Template Create/Delete Operation Table"; + leaf description { + type string; + description "Description"; + } + + // OpEntry + container opEntry-items { + list OpEntry-list { + key "operationType"; + + uses conftmpl_OpEntry-group; + description "Template Operation Entry list"; } - default "32"; + description "Template Operation Entry"; } } - grouping ipv4_IpTrafficStat-group { - leaf received { - config "false"; - type uint32; + grouping conftmpl_OpEntry-group { + description "Template Operation Entry"; + + leaf operationType { + + type conftmpl_OperationType; + description "OperationType"; } - leaf sent { - config "false"; - type uint32; + + leaf templateType { + + type conftmpl_TemplateType; + description "The type of config template depending on which resource it operates for"; } - leaf consumed { - config "false"; - type uint32; + leaf substituteString { + type string; + description "The string in a config template to be substituted by string sent by controller before applying the template configurations"; } - leaf fwdUcast { - config "false"; - type uint32; + leaf configString { + type string; + description "A list of semicolon seperated commands configured in a config template"; } - leaf fwdMcast { - config "false"; - type uint32; + leaf description { + type string; + description "Description"; } - leaf fwdLabel { - config "false"; + leaf refCount { type uint32; + description "Description"; } - leaf ingressMcecFwdPkts { - config "false"; - type uint32; + } + + grouping fm_Entity-group { + description "Feature entity"; + + // MPLS Static feature information + container mplsstatic-items { + + uses fm_MplsStatic-group; + description "MPLS Static Feature (Static MPLS label allocation)"; } - leaf optsEnd { - config "false"; - type uint32; + + // MPLS OAM feature information + container mplsoam-items { + + uses fm_MplsOam-group; + description "MPLS OAM Feature (MPLS ping and traceroute)"; } - leaf optsNop { - config "false"; - type uint32; + + // SRTE feature information + container srte-items { + + uses fm_SRTE-group; + description "Segment-Routing Traffic Engineering Feature"; } - leaf optsBsec { - config "false"; - type uint32; + + // MPLS Segment-routing feature information + container mplssgmntrtg-items { + + uses fm_MplsSgmntRtg-group; + description "MPLS Segment-Routing Feature"; } - leaf optsLsrr { - config "false"; - type uint32; + + // SRv6 feature information + container srv6-items { + + uses fm_SRv6-group; + description "SRv6 Feature"; } - leaf optsTimestamp { - config "false"; - type uint32; + + // MPLS LDP feature information + container mplsldp-items { + + uses fm_MplsLdp-group; + description "MPLS-Ldp Feature"; } - leaf optsEsec { - config "false"; - type uint32; + + // MPLS L3vpn feature information + container mplsl3vpn-items { + + uses fm_MplsL3vpn-group; + description "MPLS L3VPN Feature"; } - leaf optsRecordRoute { - config "false"; - type uint32; + + // MPLS EVPN feature information + container mplsevpn-items { + + uses fm_MplsEvpn-group; + description "MPLS EVPN Feature"; } - leaf optsStrsrcRoute { - config "false"; - type uint32; + + // EVMED feature information + container evmed-items { + + uses fm_Evmed-group; + description "Event manager event detector feature"; } - leaf optsAlert { - config "false"; - type uint32; + + // Privilege feature information + container privilege-items { + + uses fm_Privilege-group; + description "Enable or Disable privilege level support"; } - leaf optsOther { - config "false"; - type uint32; + + // BGP feature information + container bgp-items { + + uses fm_Bgp-group; + description "BGP feature"; } - leaf frag { - config "false"; - type uint32; + + // HMM feature information + container hmm-items { + + uses fm_Hmm-group; + description "HMM aka feature fabric forwarding"; } - leaf fragmented { - config "false"; - type uint32; + + // EVPN feature information + container evpn-items { + + uses fm_Evpn-group; + description "EVPN feature (nv overlay evpn)"; } - leaf outFrag { - config "false"; - type uint32; + + // Sflow feature information + container sflow-items { + + uses fm_Sflow-group; + description "Sflow feature"; } - leaf fragDrop { - config "false"; - type uint32; + + // NGOAM feature information + container ngoam-items { + + uses fm_Ngoam-group; + description "NGOAM feature"; } - leaf cantFrag { - config "false"; - type uint32; + + // POE feature information + container poe-items { + + uses fm_Poe-group; + description "POE feature"; } - leaf reasm { - config "false"; - type uint32; + + // MSDP feature information + container msdp-items { + + uses fm_Msdp-group; + description "MSDP feature"; } - leaf fragTO { - config "false"; - type uint32; + + // MVPN feature information + container mvpn-items { + + uses fm_Mvpn-group; + description "MVPN feature"; } - } - grouping ipv4_IpTrafficErrStat-group { - leaf badCsum { - config "false"; - type uint32; + // DHCP feature information + container dhcp-items { + + uses fm_Dhcp-group; + description "DHCP feature"; } - leaf tooSmall { - config "false"; - type uint32; + + // Interface-Vlan feature information + container ifvlan-items { + + uses fm_InterfaceVlan-group; + description "Interface-Vlan feature"; } - leaf badVer { - config "false"; - type uint32; + + container bashshell-items { + + uses fm_BashShell-group; + description "Bash-Shell feature"; } - leaf badHLen { - config "false"; - type uint32; + + container netconf-items { + + uses fm_Netconf-group; + description "Netconf feature"; } - leaf badLen { - config "false"; - type uint32; + + container restconf-items { + + uses fm_Restconf-group; + description "Restconf feature"; } - leaf badDest { - config "false"; - type uint32; + + container grpc-items { + + uses fm_Grpc-group; + description "Grpc feature"; } - leaf badTTL { - config "false"; - type uint32; + + container scpserver-items { + + uses fm_ScpServer-group; + description "SCP-Server Feature"; } - leaf cantFwd { - config "false"; - type uint32; + + container lldp-items { + + uses fm_Lldp-group; + description "Lldp feature"; } - leaf outDrop { - config "false"; - type uint32; + + // LACP feature information + container lacp-items { + + uses fm_Lacp-group; + description "LACP feature"; } - leaf badEncap { - config "false"; - type uint32; + + // Nxapi feature information + container nxapi-items { + + uses fm_Nxapi-group; + description "Nxapi feature"; } - leaf noRoute { - config "false"; - type uint32; + + // Telnet feature information + container telnet-items { + + uses fm_Telnet-group; + description "Telnet Feature"; } - leaf noProto { - config "false"; - type uint32; + + // Ssh feature information + container ssh-items { + + uses fm_Ssh-group; + description "Ssh feature"; } - leaf badOptions { - config "false"; - type uint32; + + // Nxdb feature information + container nxdb-items { + + uses fm_Nxdb-group; + description "Nxdb feature"; } - leaf vinciMigPkts { - config "false"; - type uint32; + + // VnSegment feature information + container vnsegment-items { + + uses fm_VnSegment-group; + description "VnSegment feature"; } - leaf snoopSuccess { - config "false"; - type uint32; + + // Tacacs+ feature information + container tacacsplus-items { + + uses fm_Tacacsplus-group; + description "Tacacs+ Feature"; } - leaf sviIodDown { - config "false"; - type uint32; + + // Ldap feature information + container ldap-items { + + uses fm_Ldap-group; + description "Ldap Feature"; } - leaf restartPktDrop { - config "false"; - type uint32; + + // Scheduler feature information + container scheduler-items { + + uses fm_Scheduler-group; + description "Scheduler Feature"; } - leaf mbufErrCount { - config "false"; - type uint32; + + // Imp feature information + container imp-items { + + uses fm_Imp-group; + description "Imp Feature"; } - leaf badCntxtIdDrop { - config "false"; - type uint32; + + // sftpServer feature information + container sftpserver-items { + + uses fm_SftpServer-group; + description "sftp-server Feature"; } - leaf rpfDrop { - config "false"; - type uint32; + + // UDLD feature information + container udld-items { + + uses fm_Udld-group; + description "UDLD feature"; } - leaf badGwMacDrop { - config "false"; - type uint32; + + // NAT feature information + container nat-items { + + uses fm_Nat-group; + description "Nat feature"; } - leaf ipsOptionFail { - config "false"; - type uint32; + + // VRRPv3 feature information + container vrrpv3-items { + + uses fm_Vrrpv3-group; + description "Virtual Router Redundancy Protocol (VRRP) Version 3 feature"; } - leaf natInDrop { - config "false"; - type uint32; + + // VRRP feature information + container vrrp-items { + + uses fm_Vrrp-group; + description "Virtual Router Redundancy Protocol (VRRP) Version 2 feature"; } - leaf natOutDrop { - config "false"; - type uint32; + + // HSRP feature information + container hsrp-items { + + uses fm_Hsrp-group; + description "Hot Standby Router Protocol (HSRP) feature"; } - leaf ipsMfwdFail { - config "false"; - type uint32; + + // Netflow feature information + container netflow-items { + + uses fm_Netflow-group; + description "Netflow feature"; } - leaf ipsLispDrop { - config "false"; - type uint32; + + // Analytics feature information + container analytics-items { + + uses fm_Analytics-group; + description "Analytics feature"; } - leaf ipsLispDecapDrop { - config "false"; - type uint32; + + // BFD feature information + container bfd-items { + + uses fm_Bfd-group; + description "BFD feature"; } - leaf ipsLispEncapDrop { - config "false"; - type uint32; + + // PTP feature information + container ptp-items { + + uses fm_Ptp-group; + description "PTP feature"; } - leaf ipsLispEncap { - config "false"; - type uint32; + + // Tunnel feature information + container tunnelif-items { + + uses fm_Tunnelif-group; + description "Tunnel feature"; } - leaf ipsMfwdCopyDrop { - config "false"; - type uint32; + + // nv overlay feature information + container nvo-items { + + uses fm_Nvo-group; + description "Vxlan feature"; } - leaf ipsRaReassDrop { - config "false"; - type uint32; + + // PBR feature information + container pbr-items { + + uses fm_Pbr-group; + description "PBR feature"; } - leaf ipsIcmpRedirProcDrop { - config "false"; - type uint32; + + // PIM feature information + container pim-items { + + uses fm_Pim-group; + description "PIM feature"; } - leaf ipsIfmgrInitFail { - config "false"; - type uint32; + + // NGMVPN feature information + container ngmvpn-items { + + uses fm_Ngmvpn-group; + description "Ngmvpn feature"; } - leaf ipsInvalidFilter { - config "false"; - type uint32; + + // VPC feature information + container vpc-items { + + uses fm_Vpc-group; + description "VPC feature"; } - leaf ipsInvalidL2msg { - config "false"; - type uint32; + + // VTP feature information + container vtp-items { + + uses fm_Vtp-group; + description "VTP feature"; } - leaf aclIngressDrop { - config "false"; - type uint32; + + container pvlan-items { + + uses fm_Pvlan-group; + description "PVLAN feature"; } - leaf aclEgressDrop { - config "false"; - type uint32; + + // NTP feature information + container ntpd-items { + + uses fm_Ntpd-group; + description "NTP Feature"; } - leaf aclDirBcastDrop { - config "false"; - type uint32; + + // NBM feature information + container nbm-items { + + uses fm_Nbm-group; + description "Nbm feature"; } - } - grouping ipv4_ICMPTrafficStat-group { - leaf txRedir { - config "false"; - type uint32; + // Telemetry feature information + container telemetry-items { + + uses fm_Telemetry-group; + description "Telemetry feature"; } - leaf txUnreach { - config "false"; - type uint32; + + // OSPF feature information + container ospf-items { + + uses fm_Ospf-group; + description "Open Shortest Path First (OSPF) Version 2 feature"; } - leaf txEchoReq { - config "false"; - type uint32; + + // OSPFv3 feature information + container ospfv3-items { + + uses fm_Ospfv3-group; + description "Open Shortest Path First (OSPFv3) Version 3 feature"; } - leaf txEchoReply { - config "false"; - type uint32; + + // Holds "vendor interop controller" info + container vctrl-items { + + uses fm_VendorCntrl-group; + description "Vendor controllor interop"; } - leaf txMaskReq { - config "false"; - type uint32; + + // macsec feature information + container macsec-items { + + uses fm_Macsec-group; + description "Macsec feature"; } - leaf txMaskReply { - config "false"; - type uint32; + + // macsec feature information + container ofm-items { + + uses fm_Ofm-group; + description "Static Tunnel feature"; } - leaf txInfoReq { - config "false"; - type uint32; + + // Npiv feature information + container npiv-items { + + uses fm_Npiv-group; + description "Npiv feature"; } - leaf txInfoReply { - config "false"; - type uint32; + + // PIM6 feature information + container pim6-items { + + uses fm_Pim6-group; + description "PIM6 feature"; } - leaf txParamProb { - config "false"; - type uint32; + + // ISIS feature information + container isis-items { + + uses fm_Isis-group; + description "ISIS feature"; } - leaf txSrcQuench { - config "false"; - type uint32; + + // HW_Telemetry feature information + container hwtelemetry-items { + + uses fm_HwTelemetry-group; + description "HW_Telemetry feature"; } - leaf txTstampReq { - config "false"; - type uint32; + + container itd-items { + + uses fm_Itd-group; + description "ITD feature"; } - leaf txTstampReply { - config "false"; - type uint32; + + container icam-items { + + uses fm_Icam-group; + description "Icam feature"; } - leaf txTstampXceed { - config "false"; - type uint32; + + // Port Security feature information + container portsec-items { + + uses fm_PortSec-group; + description "Port-Security Feature"; } - leaf txRtrSolicit { - config "false"; - type uint32; + + // Flexlink feature information + container flexlink-items { + + uses fm_Flexlink-group; + description "Flexlink feature"; } - leaf txRtrAdvert { - config "false"; - type uint32; + + // Sla Sender feature information + container slasender-items { + + uses fm_SlaSender-group; + description "Sla-Sender Feature"; } - leaf outBadLen { - config "false"; - type uint32; + + // Sla Responder feature information + container slaresponder-items { + + uses fm_SlaResponder-group; + description "Sla-Responder Feature"; } - leaf outEncapFail { - config "false"; - type uint32; + + // Sla twamp-server feature information + container slatwampserver-items { + + uses fm_SlaTwampServer-group; + description "Sla-Twamp-Server Feature"; } - leaf outXmitFail { - config "false"; - type uint32; + + // vmtracker feature information + container vmtracker-items { + + uses fm_VmTracker-group; + description "VmTracker Feature"; } - leaf icmpOrigReq { - config "false"; - type uint32; + + // Dot1x feature information + container dot1x-items { + + uses fm_Dot1x-group; + description "Enable or disable dot1x feature"; } - leaf redirOrigReq { - config "false"; - type uint32; + + // NxSdk feature information + container nxsdk-items { + + uses fm_NxSdk-group; + description "NxSdk feature"; } - leaf outErr { - config "false"; - type uint32; + + // OpenFlow feature information + container openflow-items { + + uses fm_OpenFlow-group; + description "Enable or disable OpenFlow feature"; } - leaf oldShortIp { - config "false"; - type uint32; + + // Container tracker feature information + container containertracker-items { + + uses fm_ContainerTracker-group; + description "Container Tracker Feature"; } - leaf oldIcmp { - config "false"; - type uint32; + } + + grouping fm_MplsStatic-group { + description "MPLS Static Feature (Static MPLS label allocation)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf errorDrop { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxRedir { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxUnreach { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf rxEchoReq { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxEchoReply { + } + + grouping fm_ServiceInstance-group { + description "Operational instance information"; + leaf id { config "false"; type uint32; + description "Instance Id"; } - leaf rxMaskReq { + + leaf operSt { config "false"; - type uint32; + + type fm_InstOperState; + description "Operational status of the instance"; } - leaf rxMaskReply { - config "false"; - type uint32; + } + + grouping fm_MplsOam-group { + description "MPLS OAM Feature (MPLS ping and traceroute)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxInfoReq { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxInfoReply { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxParamProb { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf rxSrcQuench { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxTstampReq { - config "false"; - type uint32; + } + + grouping fm_SRTE-group { + description "Segment-Routing Traffic Engineering Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxTstampReply { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxTimeXceed { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxRtrSolicit { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxRtrAdvert { - config "false"; - type uint32; + } + + grouping fm_MplsSgmntRtg-group { + description "MPLS Segment-Routing Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxFormatError { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxCsumError { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf icmpLispProcessed { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf icmpNoClients { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf icmpConsumed { + } + + grouping fm_SRv6-group { + description "SRv6 Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf icmpReplies { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf icmpReplyDropInvldAddr { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_MplsLdp-group { + description "MPLS-Ldp Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf icmpReplyDropInactAddr { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf statsLastReset { + leaf conflictingFeature { config "false"; type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - } - grouping ipv4_RFC4293TrafficStat-group { - leaf inrcv { - config "false"; - type uint32; + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf inoctet { - config "false"; - type uint32; + } + + grouping fm_MplsL3vpn-group { + description "MPLS L3VPN Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf inhdrerr { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf innoroutes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inaddrerr { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf innoproto { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_MplsEvpn-group { + description "MPLS EVPN Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf intruncated { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inforwdgrams { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf reasmreqds { + } + + grouping fm_Evmed-group { + description "Event manager event detector feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf reasmoks { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf reasmfails { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Privilege-group { + description "Enable or Disable privilege level support"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf indiscards { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf indelivers { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Bgp-group { + description "BGP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf inMcastPkts { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inMcastBytes { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Hmm-group { + description "HMM aka feature fabric forwarding"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf inBcastPkts { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outRequest { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Evpn-group { + description "EVPN feature (nv overlay evpn)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outNoRoutes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outForwdGrams { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Sflow-group { + description "Sflow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outDiscards { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outFragReqds { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ngoam-group { + description "NGOAM feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outFragOks { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outFragFails { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Poe-group { + description "POE feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outFragCreates { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outTransmits { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Msdp-group { + description "MSDP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outMcastPkts { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Mvpn-group { + description "MVPN feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outMcastBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outBcastPkts { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Dhcp-group { + description "DHCP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outBcastBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_InterfaceVlan-group { + description "Interface-Vlan feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } } - grouping ipv6_Entity-group { + grouping fm_BashShell-group { + description "Bash-Shell feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Netconf-group { + description "Netconf feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Restconf-group { + description "Restconf feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Grpc-group { + description "Grpc feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_ScpServer-group { + description "SCP-Server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Lldp-group { + description "Lldp feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Lacp-group { + description "LACP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nxapi-group { + description "Nxapi feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Telnet-group { + description "Telnet Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Ssh-group { + description "Ssh feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + default "enabled"; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Nxdb-group { + description "Nxdb feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VnSegment-group { + description "VnSegment feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Tacacsplus-group { + description "Tacacs+ Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ldap-group { + description "Ldap Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Scheduler-group { + description "Scheduler Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Imp-group { + description "Imp Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SftpServer-group { + description "sftp-server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Udld-group { + description "UDLD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nat-group { + description "Nat feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vrrpv3-group { + description "Virtual Router Redundancy Protocol (VRRP) Version 3 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vrrp-group { + description "Virtual Router Redundancy Protocol (VRRP) Version 2 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Hsrp-group { + description "Hot Standby Router Protocol (HSRP) feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Netflow-group { + description "Netflow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Analytics-group { + description "Analytics feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Bfd-group { + description "BFD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ptp-group { + description "PTP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Tunnelif-group { + description "Tunnel feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nvo-group { + description "Vxlan feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pbr-group { + description "PBR feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pim-group { + description "PIM feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ngmvpn-group { + description "Ngmvpn feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vpc-group { + description "VPC feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vtp-group { + description "VTP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pvlan-group { + description "PVLAN feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ntpd-group { + description "NTP Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Nbm-group { + description "Nbm feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Telemetry-group { + description "Telemetry feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ospf-group { + description "Open Shortest Path First (OSPF) Version 2 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ospfv3-group { + description "Open Shortest Path First (OSPFv3) Version 3 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VendorCntrl-group { + description "Vendor controllor interop"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Macsec-group { + description "Macsec feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ofm-group { + description "Static Tunnel feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Npiv-group { + description "Npiv feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pim6-group { + description "PIM6 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Isis-group { + description "ISIS feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_HwTelemetry-group { + description "HW_Telemetry feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Itd-group { + description "ITD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Icam-group { + description "Icam feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_PortSec-group { + description "Port-Security Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Flexlink-group { + description "Flexlink feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaSender-group { + description "Sla-Sender Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaResponder-group { + description "Sla-Responder Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaTwampServer-group { + description "Sla-Twamp-Server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VmTracker-group { + description "VmTracker Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Dot1x-group { + description "Enable or disable dot1x feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_NxSdk-group { + description "NxSdk feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_OpenFlow-group { + description "Enable or disable OpenFlow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_ContainerTracker-group { + description "Container Tracker Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fset_FeatureSet-group { + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function"; + leaf name { + type string; + description "Feature-set Name"; + } + + // To uninstall/install + leaf adminSt { + + type fset_AdminState; + description "Admin status"; + } + leaf force { + type boolean; + description "force status"; + } + + // Operational state of the featureSet + leaf operSt { + config "false"; + + type fset_OperState; + description "Operational status"; + } + } + + grouping guestshell_GuestShell-group { + description "Guest Shell execution space"; + + // Guest Shell status + container status-items { + + uses guestshell_Status-group; + description "Guest Shell status information"; + } + + // Guest Shell general information + container info-items { + + uses guestshell_Info-group; + description "Guest Shell general information"; + } + + // Guest Shell resource information + container resources-items { + + uses guestshell_ResourceInfo-group; + description "Resource information for the Guest Shell"; + } + } + + grouping guestshell_Status-group { + description "Guest Shell status information"; + + // Operational state + leaf operState { + config "false"; + + type guestshell_GuestShellOperState; + description "Operational state of the Guest Shell"; + } + leaf lastActionStatus { + config "false"; + type string; + description "Status/result of last action performed on the Guest Shell"; + } + } + + grouping guestshell_Info-group { + description "Guest Shell general information"; + leaf packageLocation { + config "false"; + type string; + description "Location of the Guest Shell package file at the time it was installed"; + } + leaf version { + config "false"; + type string; + description "Guest Shell version number"; + } + leaf description { + config "false"; + type string; + description "Guest Shell description"; + } + + // Signing Key + leaf signingKeyType { + config "false"; + + type guestshell_SigningKeyType; + description "Type of key that was used to sign the Guest Shell source package"; + } + } + + grouping guestshell_ResourceInfo-group { + description "Resource information for the Guest Shell"; + + // Memory resource information + leaf memRequested { + config "false"; + + type guestshell_MemoryResource; + description "Requested memory limit"; + } + + leaf memCommitted { + config "false"; + + type guestshell_MemoryResource; + description "Maximum amount of memory currently allowed to be used"; + } + + leaf memAvailable { + config "false"; + + type guestshell_MemoryResource; + description "Amount of memory beneath the quota that may be committed"; + } + + leaf memQuota { + config "false"; + + type guestshell_MemoryResource; + description "Maximum memory limit allowed"; + } + + leaf memUtilized { + config "false"; + + type guestshell_MemoryResource; + description "Amount of memory in use"; + } + + // CPU resource information + leaf cpuRequested { + config "false"; + + type guestshell_CpuResource; + description "Requested share of CPU"; + } + + leaf cpuCommitted { + config "false"; + + type guestshell_CpuResource; + description "Current share of CPU"; + } + + leaf cpuAvailable { + config "false"; + + type guestshell_CpuResource; + description "Amount of CPU share beneath the quota that may be committed"; + } + + leaf cpuQuota { + config "false"; + + type guestshell_CpuResource; + description "Maximum CPU share allowed"; + } + + leaf cpuUtilized { + config "false"; + + type guestshell_CpuResource; + description "Current utilization of CPU resources"; + } + + // Bootflash storage resource information + leaf rootfsRequested { + config "false"; + + type guestshell_BootflashResource; + description "Requested space for rootfs"; + } + + leaf bootflashCommitted { + config "false"; + + type guestshell_BootflashResource; + description "Amount of space used for rootfs and control files"; + } + + leaf bootflashAvailable { + config "false"; + + type guestshell_BootflashResource; + description "Amount of bootflash space available beneath the quota that may be committed"; + } + + leaf bootflashQuota { + config "false"; + + type guestshell_BootflashResource; + description "Maximum bootflash space that may be used"; + } + + leaf rootfsUtilized { + config "false"; + + type guestshell_BootflashResource; + description "Current utilization of the rootfs"; + } + } + + grouping installer_Install-group { + description "Image installation information and result"; + leaf imgName { + config "false"; + type string; + description "Image name for target installation image"; + } + leaf packageName { + config "false"; + type string; + description "path for package to be applied after reload"; + } + + // Stage of the install task + leaf stage { + config "false"; + + type installer_Stage; + description "Stage of installation operation"; + } + + // Upgrade error string + leaf upgErr { + config "false"; + + type installer_InstErr; + description "Install upgrade error value"; + } + leaf upgErrStr { + config "false"; + type string; + description "Upgrade error details string"; + } + leaf progress { + config "false"; + type uint32; + description "Upgrade completion progress percentage "; + } + + // Installation table + container mod-items { + list InstallUpgTable-list { + config "false"; + key "module"; + + uses installer_InstallUpgTable-group; + description "Installer upgrade table for each module list"; + } + description "Installer upgrade table for each module "; + } + } + + grouping installer_InstallUpgTable-group { + description "Installer upgrade table for each module "; + leaf module { + config "false"; + type uint32; + description "Module number"; + } + + // Per Module Upg table row + container modtype-items { + list ModUpgTable-list { + config "false"; + key "modType"; + + uses installer_ModUpgTable-group; + description "Module upgrade details for each module type list"; + } + description "Module upgrade details for each module type "; + } + } + + grouping installer_ModUpgTable-group { + description "Module upgrade details for each module type "; + leaf module { + config "false"; + type uint32; + description "Module number"; + } + + // module Type + leaf modType { + config "false"; + + type installer_InstModType; + description "Module type"; + } + leaf runVer { + config "false"; + type string; + description "Current running version"; + } + leaf targetVer { + config "false"; + type string; + description "Target version for installation"; + } + + // Upgrade Required YES/NO + leaf upgReq { + config "false"; + + type installer_InstEnum; + description "Upgrade required result"; + } + + // Status of the mod install task + leaf upgStatus { + config "false"; + + type installer_UpgStatusType; + description "Upgrade status of each module"; + } + leaf failStr { + config "false"; + type string; + description "Module upgrade failure reason details "; + } + } + + grouping interface_Entity-group { + description "Interface"; + leaf descr { + config "false"; + type string; + description "Intf"; + } + + // Physical ethernet interface information holder + container phys-items { + list PhysIf-list { + key "id"; + + uses l1_PhysIf-group; + description "Layer 1 Physical Interface Configuration list"; + } + description "Layer 1 Physical Interface Configuration"; + } + + // Aggregated interface, collection of physical ports; + // aka port channel + container aggr-items { + list AggrIf-list { + key "id"; + + uses pc_AggrIf-group; + description "Aggregated Interface list"; + } + description "Aggregated Interface"; + } + + // Routed concrete interface (aka routed port) + container rtd-items { + list RtdIf-list { + key "id"; + + uses l3_RtdIf-group; + description "Routed Interface list"; + } + description "Routed Interface"; + } + + // Routed loopback interface + container lb-items { + list LbRtdIf-list { + key "id"; + + uses l3_LbRtdIf-group; + description "Routed Loopback Interface list"; + } + description "Routed Loopback Interface"; + } + + // Routed encap interface (aka sub if) + container encrtd-items { + list EncRtdIf-list { + key "id"; + + uses l3_EncRtdIf-group; + description "Encapsulated Routed Interface list"; + } + description "Encapsulated Routed Interface"; + } + + // Routed Vlan Interface (SVI) Svi:If gets created for L2:BD, immediately after + // l2:BD is attached to l3:Ctx. Use case: Communication + // between two Hosts in different BDs. This is achieved + // through routing. The resource limit of svi is same + // as the resource limit of BD + container svi-items { + list If-list { + key "id"; + + uses svi_If-group; + description "Routed Vlan Interface list"; + } + description "Routed Vlan Interface"; + } + container tunnelif-items { + list If-list { + key "id"; + + uses tunnelif_If-group; + description "Tunnel Interface list"; + } + description "Tunnel Interface"; + } + } + + grouping l1_PhysIf-group { + description "Layer 1 Physical Interface Configuration"; + + // Administrative port link Transmit Reset + leaf linkTransmitReset { + + type l1_LinkTransmitReset; + description "Link Transmit Reset"; + } + + // Administrative port link mac-up timer + leaf linkMacUpTimer { + + type l1_LinkMacUpTimer; + description "Administrative port link mac-up timer"; + } + + // Administrative port link debounce interval for link debounce Link up + leaf linkDebounceLinkUp { + + type l1_LinkDebounceLinkUp; + description "Link Debounce Interval - LinkUp Event"; + } + + leaf dfeTuningDelay { + + type l1_DfeTuningDelay; + description "DFE (Decision Feedback Equalizer) Tuning Delay"; + } + + leaf dfeAdaptiveTuning { + + type l1_DfeAdaptiveTuning; + description "DFE (Decision Feedback Equalizer) Adaptive Tuning"; + } + + leaf uniDirectionalEthernet { + + type l1_UniDirectionalEthernet; + description "UDE (Uni-Directional Ethernet)"; + } + + // Packet timestamping feature state @@@ This comes from the interface configuration policy + leaf packetTimestampState { + + type l1_PacketTimestampState; + description " packet timestamp feature state"; + } + + leaf packetTimestampIngressSourceId { + + type l1_PacketTimestampSourceId; + description " Ingress timestamp Source Id"; + } + + leaf packetTimestampEgressSourceId { + + type l1_PacketTimestampSourceId; + description " Egress timestamp Source Id"; + } + + // port speed-group + leaf speedGroup { + + type l1_SpeedGroup; + description "Speed Group"; + } + + // Beacon port state + leaf beacon { + + type l1_Beacon; + description "Beacon State"; + } + + // Voice VLAN ID + leaf voiceVlanId { + + type l1_VoiceVlanId; + description "Voice VLAN ID"; + } + + // Voice vlan type + leaf voiceVlanType { + + type l1_VoiceVlanType; + description "Voice vlan type"; + } + + // Switchport Priority Extend COS + leaf voicePortCos { + + type l1_VoicePortCos; + description "Voice Port Cos"; + } + + // Switchport Priority Extend trust + leaf voicePortTrust { + + type l1_VoicePortTrust; + description "Voice Port Trust"; + } + + // FEC knob + leaf FECMode { + + type l1_FECMode; + description "FEC Mode"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + } + description "descr"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Switching state + leaf switchingSt { + config "false"; + + type l1_SwitchingSt; + description "Switching State"; + } + + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + + type l1_AdminSt; + description "Administrative Port State"; + } + + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + + type l1_Speed; + description "Administrative Port Speed"; + } + + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + + type l1_Duplex; + description "Duplex"; + } + + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; + } + + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + + type l1_Mtu; + description "Administrative port MTU"; + } + + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; + } + + // Administrative port mode @@@ Internally set by PE + leaf mode { + + type l1_Mode; + description "Administrative port mode"; + } + + // Administrative port layer @@@ Internally set by PE + leaf layer { + + type l1_Layer; + description "Administrative port layer"; + } + + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; + } + + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + + type l1_Delay; + description "Administrative port delay time"; + } + + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + + type l1_LinkDebounce; + description "Administrative port link debounce interval"; + } + + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + } + + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; + } + + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + + type l1_Medium; + description "Administrative port medium type"; + } + + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + + type l1_InheritBw; + description "Administrative port inherit bandwidth"; + } + + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + + type l1_SpanMode; + description "Administrative port span mode"; + } + + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { + + type l1_LinkLog; + description "Administrative link logging enable"; + } + + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + + type l1_TrunkLog; + description "Administrative trunk logging enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; + } + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + + type l1_PortUsage; + description "Port Usage Type"; + } + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; + } + + // config access vlan + leaf accessVlan { + + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; + } + + // Controller Id + leaf controllerId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + + // config access vlan + leaf nativeVlan { + + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; + } + + // port user config flags + leaf userCfgdFlags { + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + + container nfmphysif-items { + + uses nfm_PhysIf-group; + description "Physical Interface Operational(nfm)"; + } + + container ucos-items { + + uses ipqos_UntaggedCos-group; + description "untagged cos"; + } + + container priorflowctrl-items { + + uses ipqos_PriorFlowCtrl-group; + description "priority flow control"; + } + + container priorflowctrlwd-items { + + uses ipqos_PriorFlowCtrlWd-group; + description "priority flow control watchdog"; + } + + container physExtd-items { + + uses l1_PhysIfExtended-group; + description "Layer 1 Physical Interface Extended Configuration"; + } + + // EEE policy + container eeep-items { + + uses l1_EeeP-group; + description "EEE Policy"; + } + + // Storm control policy + container stormctrlp-items { + + uses l1_StormCtrlP-group; + description "Storm Control Policy"; + } + + // Load interval policy + container loadp-items { + + uses l1_LoadP-group; + description "Load Policy"; + } + + // Vlan Mapping policy + container vlanmapping-items { + + uses l1_VlanMapping-group; + description "Vlan Mapping Table"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // Physical interface information holder + container phys-items { + + uses ethpm_PhysIf-group; + description "Physical Interface Runtime State (ethpm)"; + } + + container hwifdetails-items { + + uses ethpm_HwIfDetails-group; + description "Interface Hardware Details"; + } + + // AggrMbrIf class + container aggrmbrif-items { + + uses pc_AggrMbrIf-group; + description "Aggregated Member Interface"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; + + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; + } + + container rtInbandConf-items { + + uses l2_RtInbandConf_target-group; + description "Inband Attachment"; + } + + container rtextConf-items { + + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; + } + + container rtbrConf-items { + + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; + } + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } + } + + container rtmbrIfs-items { + + uses pc_RtMbrIfs_target-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rtphysRtdConf-items { + + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; + } + + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; + + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; + } + + container rttunnelTunnelMbrIfs-items { + + list RtTunnelTunnelMbrIfs-list { + config "false"; + key "tDn"; + + uses tunnel_RtTunnelTunnelMbrIfs_target-group; + } + } + + container dbgIfIn-items { + + uses rmon_IfIn-group; + description "Interface Input Counters"; + } + + container dbgIfOut-items { + + uses rmon_IfOut-group; + description "Interface Output Counters"; + } + + container dbgIpIn-items { + + uses rmon_IpIn-group; + description "IPV4 Input Counters"; + } + + container dbgDot1d-items { + + uses rmon_Dot1d-group; + description "Dot1d Counters"; + } + + container dbgEtherStats-items { + + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; + } + + container dbgDot3Stats-items { + + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; + } + + container dbgIfHCIn-items { + + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; + } + + container dbgIfHCOut-items { + + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; + } + + container dbgIpv6IfStats-items { + + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; + } + + container dbgIfStorm-items { + + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; + } + } + + grouping nfm_PhysIf-group { + description "Physical Interface Operational(nfm)"; + leaf sliceSrcId { + config "false"; + type uint32; + description "Slice Src ID "; + } + leaf slotNum { + config "false"; + type uint32; + description "Slot ID "; + } + leaf asicNum { + config "false"; + type uint32; + description "Asic ID "; + } + leaf sliceNum { + config "false"; + type uint32; + description "Slice ID "; + } + } + + grouping ipqos_UntaggedCos-group { + description "untagged cos"; + + // ucos value + leaf val { + + type ipqos_CosNewNone; + description "untagged cos val"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + } + + grouping ipqos_PriorFlowCtrl-group { + description "priority flow control"; + + // priority mode + leaf mode { + + type ipqos_PriorFlowCtrlMode; + description "priority-flow-control mode on/off/auto"; + } + leaf send_tlv { + type boolean; + default "false"; + description "send_tlv used for sending dcbx pfc tlv when pfc mode is on"; + } + } + + grouping ipqos_PriorFlowCtrlWd-group { + description "priority flow control watchdog"; + + // priority mode + leaf watchDogInterval { + + type ipqos_PriorFlowCtrlWdIntvl; + description "watch dog internal on/off"; + } + leaf disableAction { + type boolean; + default "false"; + description "only generate syslog for stuck queue, no action"; + } + + // priority mode + leaf interfaceMutiplier { + + type ipqos_PriorFlowCtrlWdIntfMulti; + description "shutdown mutlipler value"; + } + } + + grouping l1_PhysIfExtended-group { + description "Layer 1 Physical Interface Extended Configuration"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Port-type that the interface is facing + leaf portTypeFabric { + + type l1_PortTypeFabric; + description "Identifies if or not the port is a fabric-facing port"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf switchportBlock { + + type l1_SwitchportBlock; + description "Disable/enable switchport block on interface"; + } + + leaf switchportIsolated { + + type l1_SwitchportIsolated; + description "Switchport Isolated"; + } + + leaf autoExcludeVlans { + + type l1_AutoExcludeVlans; + description "Switchport Autostate Exclude vlans"; + } + + leaf switchportMacLearn { + + type l1_switchportMacLearn; + description "Disable/enable mac learning on interface"; + } + + leaf flowCtrl { + + type l1_FlowControl; + description "Disable/enable flowcontrol block on interface"; + } + + leaf stormCtrlBCastLevel { + + type l1_StormCtrlRate; + description "storm-control broadcast level"; + } + + leaf stormCtrlBCastPPS { + + type l1_StormCtrlPPS; + description "storm-control broadcast PPS"; + } + + leaf stormCtrlMCastLevel { + + type l1_StormCtrlRate; + description "storm-control multicast level"; + } + + leaf stormCtrlMCastPPS { + + type l1_StormCtrlPPS; + description "storm-control multicast PPS"; + } + + leaf stormCtrlUCastLevel { + + type l1_StormCtrlRate; + description "Storm control unicast level"; + } + + leaf stormCtrlUCastPPS { + + type l1_StormCtrlPPS; + description "Storm control unicast PPS"; + } + + leaf stormCtrlAct { + + type l1_StormCtrlAct; + description "Storm control action"; + } + + leaf bufferBoost { + + type l1_BufferBoost; + description "Disable/enable buffer boost on interface"; + } + + leaf switchportVirtualEthernetBridge { + + type l1_SwitchportVirtualEthernetBridge; + description "Disable/enable switchport virtual ethernet bridge on interface"; + } + + leaf allowMultiTag { + + type l1_AllowMultiTag; + description "Allow Multitag"; + } + leaf shutDownLan { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Shut/Unshut all LAN VLANs on interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l1_EeeP-group { + description "EEE Policy"; + + // Administrative state for port energy efficient + // ethernet (EEE) @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeState { + + type l1_EEEState; + description "Administrative state for port energy efficient ethernet (EEE) on the Layer 1 physical interface"; + } + + // Administrative port EEE Lpi threshold @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeLpi { + + type l1_EEELpi; + description "Administrative port EEE LPI threshold of the Layer 1 physical interface"; + } + + // Administrative port EEE Latency @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeLat { + + type l1_EEELatency; + description "Administrative port EEE latency of the Layer 1 physical interface"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping l1_StormCtrlP-group { + description "Storm Control Policy"; + + // Packet Type - Unknwn Ucast/Mcast/Bcast + leaf type { + + type l1_PktT; + description "Packet Type"; + } + + // Max Rate Allowed + leaf rate { + + type l1_StormCtrlRate; + description "Traffic rate"; + } + + // Max Burst Rate Allowed + leaf burstRate { + + type l1_StormCtrlRate; + description "Max burst size"; + } + + // Max Rate Allowed in PPS + leaf ratePps { + + type l1_StormCtrlPps; + description "Tarffic rate"; + } + + // Max Burst Rate Allowed in PPS + leaf burstPps { + + type l1_StormCtrlPps; + description "Max burst size"; + } + } + + grouping l1_LoadP-group { + description "Load Policy"; + + // Administrative port load interval 1 @@@ This property gets filled up from stats policy + leaf loadIntvl1 { + + type l1_LoadIntvl; + description "Port load sampling interval 1 at bit-rate and packet-rate statistics"; + } + + // Administrative port load interval 2 @@@ This property gets filled up from stats policy + leaf loadIntvl2 { + + type l1_LoadIntvl; + description "Port load sampling interval 2 at bit-rate and packet-rate statistics"; + } + + // Administrative port load interval 3 @@@ This property gets filled up from stats policy + leaf loadIntvl3 { + + type l1_LoadIntvl3; + description "Port load sampling interval 3 at bit-rate and packet-rate statistics"; + } + } + + grouping l1_VlanMapping-group { + description "Vlan Mapping Table"; + leaf Enabled { + type boolean; + default "false"; + description "Vlan Mapping Enable"; + } + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + leaf selectiveQinqAll { + type boolean; + description "Selective QinQ All VLANs"; + } + + container selqinqtable-items { + + uses l1_SelectiveQinqTable-group; + } + + // Vlan Translate Table policy + container vlantranslatetable-items { + + uses l1_VlanTranslateTable-group; + description "Vlan Translate Table"; + } + } + + grouping l1_SelectiveQinqTable-group { + container selqinq-items { + list SelectiveQinq-list { + key "selectiveQinqTranslateVlan"; + + uses l1_SelectiveQinq-group; + description "Vlan Mapping Entry for selective qinq vlans list"; + } + description "Vlan Mapping Entry for selective qinq vlans"; + } + } + + grouping l1_SelectiveQinq-group { + description "Vlan Mapping Entry for selective qinq vlans"; + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + } + + grouping l1_VlanTranslateTable-group { + description "Vlan Translate Table"; + + // Vlan Translate Table policy Vlan Translate Entry policy + container vlan-items { + list VlanTranslateEntry-list { + key "vlanid"; + + uses l1_VlanTranslateEntry-group; + description "Vlan Translate Entry list"; + } + description "Vlan Translate Entry"; + } + } + + grouping l1_VlanTranslateEntry-group { + description "Vlan Translate Entry"; + + leaf vlanid { + + type l1_translatevlanid; + description "Vlan Id"; + } + + leaf innervlanid { + + type l1_translatevlanid; + description "Inner Vlan Id"; + } + + leaf translatevlanid { + + type l1_translatevlanid; + description "Translate Vlan Id"; + } + } + + grouping l1_Vrf-group { + description "Vrf Name"; + + // Vrf Name... + leaf name { + config "false"; + + type l3_VrfName; + description "Vrf Name"; + } + } + + grouping ethpm_PhysIf-group { + description "Physical Interface Runtime State (ethpm)"; + + leaf operLinkDebounce { + config "false"; + + type l1_LinkDebounce; + description "Link Debounce Interval"; + } + + leaf shareState { + config "false"; + + type ethpm_ShareState; + description "Interface share state"; + } + + // FEC knob + leaf operFECMode { + config "false"; + + // Type is a Local-MO-Defined-Type + type l1_FECMode_PhysIf_operFECMode; + description "Operational FEC Mode"; + } + + // cached usercfgdflag + leaf cachedUserCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Cached Port User Config Flags"; + } + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + + leaf operAutoNeg { + config "false"; + + type l1_AutoNeg; + description "negotiate auto"; + } + + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum transmission unit"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Administrative State"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + + // Operational port state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational port status syserror code + leaf operStQualCode { + config "false"; + + type l1_OperStQualCode; + description "Operational Port Status Syserror Code"; + } + + // Operational port err disable reason code + leaf operErrDisQual { + config "false"; + + type l1_OperErrDisQual; + description "Operational Port Error Disable Reason Code"; + } + + // Operational port speed + leaf operSpeed { + config "false"; + + type l1_Speed; + description "Operational Port Speed"; + } + + // Operational port mode + leaf operMode { + config "false"; + + type l1_Mode; + description "Operational Port Mode"; + } + + // Operational duplex + leaf operDuplex { + config "false"; + + type l1_Duplex; + description "Operational Duplex State"; + } + + // Operational port flow control + leaf operFlowCtrl { + config "false"; + + type l1_FlowControl; + description "Operational Port Flow Control"; + } + + // Operational phy port enable state + leaf operPhyEnSt { + config "false"; + + type l1_OperSt; + description "Operational Physical Port Enable State"; + } + leaf backplaneMac { + config "false"; + type address_Mac; + description "Port Backplane MAC"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router MAC"; + } + + // port Tx type + leaf txT { + config "false"; + + type l1_TxT; + description "Port Transmit Type"; + } + leaf lastLinkStChg { + config "false"; + type union { + type string; + type uint64; + } + description "Last Link State Change"; + } + leaf portCfgWaitFlags { + config "false"; + type uint32; + description "Port Config Wait Flags"; + } + leaf accessVlan { + config "false"; + type string; + description "VLAN port access state"; + } + leaf nativeVlan { + config "false"; + type string; + description "Port Native Vlan"; + } + leaf cfgNativeVlan { + config "false"; + type string; + description "Native VLAN port configuration"; + } + leaf cfgAccessVlan { + config "false"; + type string; + description "VLAN port configuration access"; + } + leaf primaryVlan { + config "false"; + type string; + description "Port Primary-vlan"; + } + + // port oper bitset + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Port Oper Bitset"; + } + + // vdc id + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Vdc Id"; + } + leaf resetCtr { + config "false"; + type uint32; + description "Reset Counter"; + } + leaf media { + config "false"; + type uint32; + description "Port Media"; + } + leaf encap { + config "false"; + type uint32; + description "Port Encap"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // allowed vlans + leaf allowedVlans { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlans"; + } + + // operational vlans + leaf operVlans { + config "false"; + + type l2_VlanBitmap; + description "Operational Vlans"; + } + + // errored vlans + leaf errVlans { + config "false"; + + type l2_VlanBitmap; + description "Errored Vlans"; + } + + // trunk status + leaf operTrunkStatus { + config "false"; + + type ethpm_TrunkStatus; + description "Trunking Status"; + } + + // bundle index + leaf bundleIndex { + config "false"; + + type nw_IfId; + description "Interface Bundle Index - table for a particular output primitive"; + } + + // port oper mdix mode + leaf operMdix { + config "false"; + + type l1_Mdix; + description "Port Oper Mdix Mode"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + leaf errDisTimerRunning { + config "false"; + type boolean; + description "Error Disable Recovery Time Running"; + } + leaf bundleBupId { + config "false"; + type uint32; + description "Bundle Bringup Id"; + } + + // Operational Dce Mode + leaf operDceMode { + config "false"; + + type l1_DceMode; + description "Operational Dce Mode"; + } + + // interface type + leaf intfT { + config "false"; + + type l1_IntfT; + description "Interface Type"; + } + + // port diags type + leaf diags { + config "false"; + + type l1_DiagsT; + description "Port Diags Type"; + } + + // Operational port EEE state + leaf operEEEState { + config "false"; + + type l1_EEEState; + description "Operational Port EEE State"; + } + leaf operEEETxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Tx Time"; + } + leaf operEEERxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Rx Time"; + } + + // port user config flags + leaf userCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + leaf numOfSI { + config "false"; + type uint32; + description "Number of Sub-interfaces"; + } + leaf gport { + config "false"; + type uint32; + description "gport"; + } + + // configured sub-interface ids + leaf siList { + config "false"; + + type ethpm_SiBitmap; + description "Configured Sub-interface Ids"; + } + leaf dynamicVlan { + config "false"; + type boolean; + description "Operational port Dynamic VLAN from dot1x"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + // Liked from l1:EthIf:usage + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage"; + } + + // This is the class for regualr fcot types. + container fcot-items { + + uses ethpm_Fcot-group; + description "Fcot"; + } + + // This is the class for X2 fcot types. + container fcotx2-items { + + uses ethpm_FcotX2-group; + description "X2 Fcot"; + } + + // This is the class for DD fcot types. + container fcotdd-items { + + uses ethpm_FcotDD-group; + description "DD Fcot"; + } + + container portcap-items { + + uses ethpm_PortCap-group; + description "Port Capability"; + } + } + + grouping ethpm_Fcot-group { + description "Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrId { + config "false"; + type uint8; + description "Transceiver ID"; + } + leaf xcvrExtId { + config "false"; + type uint8; + description "Transceiver Extended ID"; + } + leaf connectType { + config "false"; + type uint8; + description "Connector Type"; + } + + // Xcvr code field + leaf xcvrCode { + config "false"; + + type ethpm_SfpXcvrCodeBytes; + description "Transceiver Code"; + } + leaf encoding { + config "false"; + type uint8; + description "Encoding"; + } + leaf brIn100MHz { + config "false"; + type uint8; + description "Baud Rate"; + } + leaf baseResvd1 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + leaf distInKmFor9u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn100mFor9u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn10mFor50u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn10mFor60u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn1mForCu { + config "false"; + type uint8; + description "Distance"; + } + leaf baseResvd2 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + leaf vendorName { + config "false"; + type string; + description "Vendor Name"; + } + leaf baseResvd3 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + + // IEEE vendor Id + leaf vendorId { + config "false"; + + type ethpm_SfpVendorIdBytes; + description "Vendor ID"; + } + leaf vendorPn { + config "false"; + type string; + description "Vendor Part Number"; + } + leaf vendorRev { + config "false"; + type string; + description "Vendor Revision"; + } + + // Reserved field 4 + leaf baseResvd4 { + config "false"; + + type ethpm_SfpReserved4Array; + description "Base Reserved Field"; + } + leaf ccid { + config "false"; + type uint8; + description "CCID"; + } + + // Extended option + leaf extOption { + config "false"; + + type ethpm_SfpExtendedOptionBytes; + description "Extended Option"; + } + leaf brMaxMargin { + config "false"; + type uint8; + description "Baud Rate Maximum Margin"; + } + leaf brMinMargin { + config "false"; + type uint8; + description "Baud Rate Minimum Margin"; + } + leaf vendorSn { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + leaf diagMonType { + config "false"; + type uint8; + } + leaf enhOption { + config "false"; + type uint8; + } + leaf sff8472Compl { + config "false"; + type uint8; + } + leaf ccex { + config "false"; + type uint8; + } + + // Vendor data + leaf vendorData { + config "false"; + + type ethpm_X2VendorDataBytes; + description "TBD"; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + + // Transceiver DOM sensor. + container lane-items { + list FcotSensor-list { + config "false"; + key "laneId sensorId"; + + uses eqpt_FcotSensor-group; + description "The transceiver DOM sensor information list"; + } + description "The transceiver DOM sensor information"; + } + + // Transceiver DOM Statistics + container domstats-items { + + uses eqpt_FcotDomStats-group; + description "DOM statistics"; + } + } + + grouping eqpt_FcotSensor-group { + description "The transceiver DOM sensor information"; + leaf laneId { + config "false"; + type uint16; + description "The transceiver LANE identifier"; + } + + // Fcot DOM Lane type + leaf laneType { + config "false"; + + type eqpt_fcotDomLane; + description "The transceiver LANE type"; + } + leaf sensorId { + config "false"; + type uint16; + description "The transceiver sensor identifier"; + } + leaf description { + config "false"; + type string; + description "The transceiver sensor description"; + } + leaf unit { + config "false"; + type string; + description "The transceiver sensor unit"; + } + leaf value { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor current value"; + } + leaf highAlarm { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor high alarm threshold"; + } + leaf highWarning { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor high warning threshold"; + } + leaf lowAlarm { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor low alarm threshold"; + } + leaf lowWarning { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor low warning threshold"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor max warning threshold"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor min warning threshold"; + } + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor avg warning threshold"; + } + leaf instant { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor instant warning threshold"; + } + + // alert + leaf alert { + config "false"; + + type eqpt_fcotDomAlert; + description "The transceiver sensor alert"; + } + } + + grouping eqpt_FcotDomStats-group { + description "DOM statistics"; + leaf numLanes { + config "false"; + type uint16; + description "Number of Network Lanes"; + } + + // Transceiver DOM Network lane + container lane-items { + list FcotLane-list { + config "false"; + key "laneId"; + + uses eqpt_FcotLane-group; + description "The transceiver DOM lane information list"; + } + description "The transceiver DOM lane information"; + } + } + + grouping eqpt_FcotLane-group { + description "The transceiver DOM lane information"; + leaf laneId { + config "false"; + type uint16; + description "The transceiver LANE identifier"; + } + leaf description { + config "false"; + type string; + description "The transceiver LANE description"; + } + leaf transmitFaultCount { + config "false"; + type uint64; + description "Transmit Fault Counter"; + } + } + + grouping ethpm_FcotX2-group { + description "X2 Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrType { + config "false"; + type uint8; + } + leaf connectType { + config "false"; + type uint8; + } + leaf bitEncoding { + config "false"; + type uint8; + } + + // Bit rate (Mbps) + leaf bitRateMbps { + config "false"; + + type ethpm_X2BitRateBytes; + description "TBD"; + } + leaf protocolType { + config "false"; + type uint8; + } + + // 10G eth code + leaf xgEthCode { + config "false"; + + type ethpm_X2XgEthCodeBytes; + description "TBD"; + } + + // Sonet SDH code + leaf sonetSdhCode { + config "false"; + + type ethpm_X2SonetSdhCodeBytes; + description "TBD"; + } + + // 10G fc code + leaf xgFcCode { + config "false"; + + type ethpm_X2XbFcCodeBytes; + description "TBD"; + } + + // Range + leaf range { + config "false"; + + type ethpm_X2RangeBytes; + description "TBD"; + } + + // Fibre type + leaf fibreType { + config "false"; + + type ethpm_X2FibreTypeBytes; + description "TBD"; + } + + // Wavelength channel 0 + leaf waveLenCh0 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 1 + leaf waveLenCh1 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 2 + leaf waveLenCh2 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 3 + leaf waveLenCh3 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Package Oui + leaf packageOui { + config "false"; + + type ethpm_X2PackageOuiBytes; + description "TBD"; + } + leaf vendorName { + config "false"; + type string; + } + leaf vendorPn { + config "false"; + type string; + } + leaf vendorRev { + config "false"; + type string; + } + leaf vendorSerNo { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + + // Lot code + leaf lotCode { + config "false"; + + type ethpm_X2LotCodeBytes; + description "TBD"; + } + leaf fiveVStressEnv { + config "false"; + type uint8; + } + leaf threeThreeVStressEnv { + config "false"; + type uint8; + } + leaf apsStressEnv { + config "false"; + type uint8; + } + leaf normalApsVolt { + config "false"; + type uint8; + } + leaf diagOptMonCap { + config "false"; + type uint8; + } + leaf lowPwrStartupCap { + config "false"; + type uint8; + } + leaf reserved { + config "false"; + type uint8; + } + leaf checksum { + config "false"; + type uint8; + } + leaf ciscoPid { + config "false"; + type string; + } + leaf ciscoVid { + config "false"; + type string; + } + leaf ciscoSN { + config "false"; + type string; + } + leaf ciscoPN { + config "false"; + type string; + } + leaf ciscoRev { + config "false"; + type string; + } + + // Extended vendor specific info + leaf extVendorSpecific { + config "false"; + + type ethpm_X2ExtendedVendorSpecificInfoBytes; + description "TBD"; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + } + + grouping ethpm_FcotDD-group { + description "DD Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrType { + config "false"; + type uint8; + } + leaf verId { + config "false"; + type uint8; + } + leaf modAdvCode { + config "false"; + type uint8; + } + leaf vendorName { + config "false"; + type string; + } + leaf vendorPn { + config "false"; + type string; + } + leaf vendorRev { + config "false"; + type string; + } + leaf vendorSerNo { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + + // Lot code + leaf lotCode { + config "false"; + + type ethpm_X2LotCodeBytes; + description "TBD"; + } + leaf connectType { + config "false"; + type uint8; + } + leaf diagOptMonCap { + config "false"; + type uint8; + } + leaf checksum { + config "false"; + type uint8; + } + leaf ciscoPid { + config "false"; + type string; + } + leaf ciscoVid { + config "false"; + type string; + } + leaf ciscoSN { + config "false"; + type string; + } + leaf ciscoPN { + config "false"; + type string; + } + leaf ciscoRev { + config "false"; + type string; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + leaf apSel1 { + config "false"; + type uint32; + } + leaf apSel2 { + config "false"; + type uint32; + } + leaf apSel3 { + config "false"; + type uint32; + } + leaf apSel4 { + config "false"; + type uint32; + } + leaf apSel5 { + config "false"; + type uint32; + } + leaf apSel6 { + config "false"; + type uint32; + } + leaf apSel7 { + config "false"; + type uint32; + } + leaf apSel8 { + config "false"; + type uint32; + } + + // Transceiver DOM sensor. + container lane-items { + list FcotSensor-list { + config "false"; + key "laneId sensorId"; + + uses eqpt_FcotSensor-group; + description "The transceiver DOM sensor information list"; + } + description "The transceiver DOM sensor information"; + } + } + + grouping ethpm_PortCap-group { + description "Port Capability"; + + // If-index + leaf id { + config "false"; + + type nw_IfId; + description "Port Identifier"; + } + + // Speed bitmask + leaf speed { + config "false"; + + type ethpm_capSpeed; + description "Speed Bitmask"; + } + + // Duplex bitmask + leaf duplex { + config "false"; + + type ethpm_capDuplex; + description "Duplex Bitmask for simutaneous communication between interfaces"; + } + leaf trunkEncap { + config "false"; + type uint8; + description "Trunk Encap Bitmask"; + } + leaf channel { + config "false"; + type uint8; + description "Port-Channel Identifier"; + } + leaf suppression { + config "false"; + type uint8; + description "Suppression Bitmask"; + } + leaf rxFlowControl { + config "false"; + type uint8; + description "Port Rx Flow Control Boolean"; + } + leaf txFlowControl { + config "false"; + type uint8; + description "Port Tx Flow Control Boolean"; + } + leaf cosRewrite { + config "false"; + type uint8; + description "Cos Rewrite Boolean"; + } + leaf tosRewrite { + config "false"; + type uint8; + description "Tos Rewrite Boolean"; + } + leaf span { + config "false"; + type uint8; + description "Enables SPAN on port"; + } + leaf udld { + config "false"; + type uint8; + description "Udld Capable"; + } + leaf autoneg { + config "false"; + type uint8; + description "Enables Auto-negotiation on port"; + } + leaf linkDebounce { + config "false"; + type uint8; + description "Link Debounce Timer"; + } + leaf linkDebounceTime { + config "false"; + type uint8; + description "Configured Link Debounce Interval Time"; + } + leaf fcotCapable { + config "false"; + type uint8; + description "Enables the Fibre Channel Optical Transmitter(FCOT) on port"; + } + leaf rateMode { + config "false"; + type uint8; + description "Port Rate Mode"; + } + leaf mdix { + config "false"; + type uint8; + description "Medium Dependent Interface Crossover(MDIX) parameter enables/disables detection of crossover connection between devices"; + } + leaf portGroup { + config "false"; + type uint8; + description "Port Group Indentifier"; + } + leaf ctsCapable { + config "false"; + type uint8; + description "Enables Cisco TrustSec (CTS)"; + } + leaf qosRxPrio { + config "false"; + type uint8; + description "Qos Rx Priority Value"; + } + leaf qosRxQueue { + config "false"; + type uint8; + description "Qos Rx Queue Value"; + } + leaf qosRxThold { + config "false"; + type uint8; + description "Qos Rx Threshold Value"; + } + leaf qosTxPrio { + config "false"; + type uint8; + description "Qos Tx Prority Value"; + } + leaf qosTxQueue { + config "false"; + type uint8; + description "Qos Tx Queue Value"; + } + leaf qosTxThold { + config "false"; + type uint8; + description "Qos Tx Threshold Value"; + } + + // Model + leaf model { + config "false"; + + type ethpm_ModelList; + description "Port Model Number"; + } + + // Type + leaf type { + config "false"; + + type ethpm_TypeList; + description "Type"; + } + + // Port-group members + leaf portGrpMbrs { + config "false"; + + type ethpm_PortGroupBitmap; + description "Port-group Members"; + } + leaf protoSupport { + config "false"; + type uint32; + description "Protocol Support"; + } + leaf portCap { + config "false"; + type uint32; + description "Port Capability Flags"; + } + leaf eeeCapVal { + config "false"; + type uint16; + description "Energy Efficient Ethernet(EEE) Capability Value"; + } + + // EEE 10G wake times + leaf eeeWakeTimes10g { + config "false"; + + type ethpm_EeeWakeTimesList; + description "EEE 10G Wake Times"; + } + leaf eeeFlapFlags { + config "false"; + type uint16; + description "EEE Flap Flags"; + } + } + + grouping ethpm_HwIfDetails-group { + description "Interface Hardware Details"; + leaf slice { + config "false"; + type uint32; + description "Interface Slice"; + } + leaf sPort { + config "false"; + type uint32; + description "Interface Source Port"; + } + leaf vif { + config "false"; + type uint32; + description "Interface VIF"; + } + } + + grouping pc_AggrMbrIf-group { + description "Aggregated Member Interface"; + + // Operational state + leaf operSt { + config "false"; + + type pc_OperSt; + description "Operational State"; + } + + // Channeling status + leaf channelingSt { + config "false"; + + type pc_ChannelingSt; + description "Channeling Status"; + } + + // Summarized operational state + leaf summOperSt { + config "false"; + + type pc_SummOperSt; + description "Summarized Oper State"; + } + + // Member up time + leaf uptime { + config "false"; + + type pc_Time; + description "Member Up Time"; + } + + // Member port flags + leaf flags { + config "false"; + + type pc_Flags; + description "Member Port Flags"; + } + + // Bundle port number + leaf bdlPortNum { + config "false"; + + type pc_BdlPortNum; + description "Bundle Port Number"; + } + + // LTL programmed + leaf ltlProgrammed { + config "false"; + + type pc_LtlProgrammed; + description "LTL Programmed"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping nvo_MultisiteIfTracking-group { + description "Tracking for Multisite DCI and Fabric Interfaces."; + + leaf tracking { + + type nvo_MultisiteTrackingT; + description "Configure EVPN multisite tracking for DCI/Fabric interface."; + } + } + + grouping pc_AggrIf-group { + description "Aggregated Interface"; + + // Port channel id + leaf pcId { + + type pc_PcId; + description "Port Channel Id"; + } + + // Channel mode + leaf pcMode { + + type pc_Mode; + description "Aggregated Interface Protocol Channel Mode"; + } + leaf suspIndividual { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + description "Suspend Individual Port"; + } + leaf gracefulConv { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + description "Graceful Convergence"; + } + leaf loadDefer { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Load Defer Member Ports"; + } + leaf lacpDelayMode { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Configuring LACP delay mode"; + } + leaf lacpVpcConvergence { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "LACP vpc convergence"; + } + + // minimum links @@@ MinLinks in the port channel + leaf minLinks { + + type pc_MinLinks; + description "Minimum Links"; + } + + // maximum links @@@ MaxLinks in the port channel + leaf maxLinks { + + type pc_MaxLinks; + description "Maximum Links"; + } + + // Hash distribution configured - adaptive/fixed + leaf hashDist { + + type pc_HashDist; + description "Hash Distribution Configured - Adaptive/fixed"; + } + + // Interface ordinal + leaf iod { + config "false"; + + type pc_Iod; + description "Interface Ordinal"; + } + + // Operational mode + leaf operChannelMode { + config "false"; + + type pc_Mode; + description "Operational Mode"; + } + + // Last status - successful/failed + leaf lastSt { + config "false"; + + type pc_LastSt; + description "Last Status - Successful/failed"; + } + leaf lastStCause { + config "false"; + type string; + description "Last Status Cause"; + } + + // Time when last status was set + leaf lastTime { + config "false"; + + type pc_Time; + description "Time when Last Status was Set"; + } + + // Time of port-channel creation + leaf createTime { + config "false"; + + type pc_Time; + description "Time of Port-channel Creation"; + } + + // First operational port + leaf fop { + config "false"; + + type nw_IfId; + description "First Operational Port"; + } + + // Time of last member addition + leaf lastBundleTime { + config "false"; + + type pc_Time; + description "Time of Last Member Addition"; + } + + // Last member added + leaf lastBundleMbr { + config "false"; + + type nw_IfId; + description "Last Member Added"; + } + + // Time of last member removal + leaf lastUnbundleTime { + config "false"; + + type pc_Time; + description "Time of Last Member Removal"; + } + + // Last member removed + leaf lastUnbundleMbr { + config "false"; + + type nw_IfId; + description "Last Member Removed"; + } + + // port-channel suspended due to min-links + leaf suspMinlinks { + config "false"; + + type pc_SuspMinlinks; + description "Port-channel Suspended Due to Min-links"; + } + + // PIXM-allocated LTL + leaf ltl { + config "false"; + + type pc_Ltl; + description "PIXM-allocated LTL"; + } + + // ELTM-allocated LIF + leaf lif { + config "false"; + + type pc_Lif; + description "ELTM-allocated LIF"; + } + + // Max possible active members + leaf maxActive { + config "false"; + + type pc_MaxActive; + description "Max Possible Active Members"; + } + + // Time when first non-fop port came up + leaf loadDeferStartTime { + config "false"; + + type pc_Time; + description "Time when First Non-fop Port Came Up"; + } + leaf isExplicit { + type boolean; + default "true"; + description "PC Created Explicitly"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + } + description "descr"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + + type l1_AdminSt; + description "Administrative Port State"; + } + + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + + type l1_Speed; + description "Administrative Port Speed"; + } + + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + + type l1_Duplex; + description "Duplex"; + } + + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; + } + + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + + type l1_Mtu; + description "Administrative port MTU"; + } + + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; + } + + // Administrative port mode @@@ Internally set by PE + leaf mode { + + type l1_Mode; + description "Administrative port mode"; + } + + // Administrative port layer @@@ Internally set by PE + // Default value handled in local MO type + leaf layer { + + // Type is a Local-MO-Defined-Type + type l1_Layer_AggrIf_layer; + description "Layer"; + } + + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; + } + + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + + type l1_Delay; + description "Administrative port delay time"; + } + + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + + type l1_LinkDebounce; + description "Administrative port link debounce interval"; + } + + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + } + + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; + } + + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + + type l1_Medium; + description "Administrative port medium type"; + } + + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + + type l1_InheritBw; + description "Administrative port inherit bandwidth"; + } + + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + + type l1_SpanMode; + description "Administrative port span mode"; + } + + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { + + type l1_LinkLog; + description "Administrative link logging enable"; + } + + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + + type l1_TrunkLog; + description "Administrative trunk logging enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; + } + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + + type l1_PortUsage; + description "Port Usage Type"; + } + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; + } + + // config access vlan + leaf accessVlan { + + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; + } + + // Controller Id + leaf controllerId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + + // config access vlan + leaf nativeVlan { + + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; + } + + // port user config flags + leaf userCfgdFlags { + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + + container ucos-items { + + uses ipqos_UntaggedCos-group; + description "untagged cos"; + } + + container priorflowctrl-items { + + uses ipqos_PriorFlowCtrl-group; + description "priority flow control"; + } + + container priorflowctrlwd-items { + + uses ipqos_PriorFlowCtrlWd-group; + description "priority flow control watchdog"; + } + + // EEE policy + container eeep-items { + + uses l1_EeeP-group; + description "EEE Policy"; + } + + // Storm control policy + container stormctrlp-items { + + uses l1_StormCtrlP-group; + description "Storm Control Policy"; + } + + // Load interval policy + container loadp-items { + + uses l1_LoadP-group; + description "Load Policy"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // Port-channel interface information holder + container aggrif-items { + + uses ethpm_AggrIf-group; + description "Aggregated Interface"; + } + + container hwifdetails-items { + + uses ethpm_HwIfDetails-group; + description "Interface Hardware Details"; + } + + container bundleInfo-items { + + uses pc_BundleInfo-group; + description "Aggregate Bundle Information"; + } + + container aggrExtd-items { + + uses pc_AggrIfExtended-group; + description "Aggregated Interface extended configs"; + } + + // Vlan Mapping policy + container vlanmapping-items { + + uses pc_VlanMapping-group; + description "Vlan Mapping Table"; + } + + // BndlMbrIf class + container bndlmbrif-items { + list BndlMbrIf-list { + config "false"; + key "id"; + + uses pc_BndlMbrIf-group; + description "Bundle Member Interface list"; + } + description "Bundle Member Interface"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; + + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; + } + + container rtfexBndlGrpToAggrIf-items { + + uses infra_RtFexBndlGrpToAggrIf_target-group; + } + + container rtaccBndlGrpToAggrIf-items { + + uses infra_RtAccBndlGrpToAggrIf_target-group; + } + + container rtextConf-items { + + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; + } + + container rtbrConf-items { + + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; + } + + container rtvpcConf-items { + + uses vpc_RtVpcConf_target-group; + description "Port Channel Attachment"; + } + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } + } + + container rsmbrIfs-items { + + list RsMbrIfs-list { + key "tDn"; + + uses pc_RsMbrIfs_source-group; + } + } + + container rslacpPolCons-items { + + uses pc_RsLacpPolCons_source-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rtphysRtdConf-items { + + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; + } + + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; + + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; + } + + container dbgIfIn-items { + + uses rmon_IfIn-group; + description "Interface Input Counters"; + } + + container dbgIfOut-items { + + uses rmon_IfOut-group; + description "Interface Output Counters"; + } + + container dbgIpIn-items { + + uses rmon_IpIn-group; + description "IPV4 Input Counters"; + } + + container dbgDot1d-items { + + uses rmon_Dot1d-group; + description "Dot1d Counters"; + } + + container dbgEtherStats-items { + + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; + } + + container dbgDot3Stats-items { + + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; + } + + container dbgIfHCIn-items { + + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; + } + + container dbgIfHCOut-items { + + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; + } + + container dbgIpv6IfStats-items { + + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; + } + + container dbgIfStorm-items { + + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; + } + } + + grouping ethpm_AggrIf-group { + description "Aggregated Interface"; + leaf numActivePorts { + config "false"; + type uint16; + description "Number of Active Ports"; + } + + // list of active members + leaf activeMbrs { + config "false"; + + type ethpm_ActiveMembersList; + description "List of Active Members"; + } + leaf numMbrUp { + config "false"; + type uint8; + description "Number of Up Members"; + } + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + + leaf operAutoNeg { + config "false"; + + type l1_AutoNeg; + description "negotiate auto"; + } + + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum transmission unit"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Administrative State"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + + // Operational port state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational port status syserror code + leaf operStQualCode { + config "false"; + + type l1_OperStQualCode; + description "Operational Port Status Syserror Code"; + } + + // Operational port err disable reason code + leaf operErrDisQual { + config "false"; + + type l1_OperErrDisQual; + description "Operational Port Error Disable Reason Code"; + } + + // Operational port speed + leaf operSpeed { + config "false"; + + type l1_Speed; + description "Operational Port Speed"; + } + + // Operational port mode + leaf operMode { + config "false"; + + type l1_Mode; + description "Operational Port Mode"; + } + + // Operational duplex + leaf operDuplex { + config "false"; + + type l1_Duplex; + description "Operational Duplex State"; + } + + // Operational port flow control + leaf operFlowCtrl { + config "false"; + + type l1_FlowControl; + description "Operational Port Flow Control"; + } + + // Operational phy port enable state + leaf operPhyEnSt { + config "false"; + + type l1_OperSt; + description "Operational Physical Port Enable State"; + } + leaf backplaneMac { + config "false"; + type address_Mac; + description "Port Backplane MAC"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router MAC"; + } + + // port Tx type + leaf txT { + config "false"; + + type l1_TxT; + description "Port Transmit Type"; + } + leaf lastLinkStChg { + config "false"; + type union { + type string; + type uint64; + } + description "Last Link State Change"; + } + leaf portCfgWaitFlags { + config "false"; + type uint32; + description "Port Config Wait Flags"; + } + leaf accessVlan { + config "false"; + type string; + description "VLAN port access state"; + } + leaf nativeVlan { + config "false"; + type string; + description "Port Native Vlan"; + } + leaf cfgNativeVlan { + config "false"; + type string; + description "Native VLAN port configuration"; + } + leaf cfgAccessVlan { + config "false"; + type string; + description "VLAN port configuration access"; + } + leaf primaryVlan { + config "false"; + type string; + description "Port Primary-vlan"; + } + + // port oper bitset + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Port Oper Bitset"; + } + + // vdc id + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Vdc Id"; + } + leaf resetCtr { + config "false"; + type uint32; + description "Reset Counter"; + } + leaf media { + config "false"; + type uint32; + description "Port Media"; + } + leaf encap { + config "false"; + type uint32; + description "Port Encap"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // allowed vlans + leaf allowedVlans { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlans"; + } + + // operational vlans + leaf operVlans { + config "false"; + + type l2_VlanBitmap; + description "Operational Vlans"; + } + + // errored vlans + leaf errVlans { + config "false"; + + type l2_VlanBitmap; + description "Errored Vlans"; + } + + // trunk status + leaf operTrunkStatus { + config "false"; + + type ethpm_TrunkStatus; + description "Trunking Status"; + } + + // bundle index + leaf bundleIndex { + config "false"; + + type nw_IfId; + description "Interface Bundle Index - table for a particular output primitive"; + } + + // port oper mdix mode + leaf operMdix { + config "false"; + + type l1_Mdix; + description "Port Oper Mdix Mode"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + leaf errDisTimerRunning { + config "false"; + type boolean; + description "Error Disable Recovery Time Running"; + } + leaf bundleBupId { + config "false"; + type uint32; + description "Bundle Bringup Id"; + } + + // Operational Dce Mode + leaf operDceMode { + config "false"; + + type l1_DceMode; + description "Operational Dce Mode"; + } + + // interface type + leaf intfT { + config "false"; + + type l1_IntfT; + description "Interface Type"; + } + + // port diags type + leaf diags { + config "false"; + + type l1_DiagsT; + description "Port Diags Type"; + } + + // Operational port EEE state + leaf operEEEState { + config "false"; + + type l1_EEEState; + description "Operational Port EEE State"; + } + leaf operEEETxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Tx Time"; + } + leaf operEEERxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Rx Time"; + } + + // port user config flags + leaf userCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + leaf numOfSI { + config "false"; + type uint32; + description "Number of Sub-interfaces"; + } + + // configured sub-interface ids + leaf siList { + config "false"; + + type ethpm_SiBitmap; + description "Configured Sub-interface Ids"; + } + leaf dynamicVlan { + config "false"; + type boolean; + description "Operational port Dynamic VLAN from dot1x"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + // Liked from l1:EthIf:usage + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage"; + } + + container portcap-items { + + uses ethpm_PortCap-group; + description "Port Capability"; + } + } + + grouping pc_BundleInfo-group { + description "Aggregate Bundle Information"; + + leaf operType { + config "false"; + + type pc_PortChannelType; + description "P ort channel type"; + } + + leaf operProtocol { + config "false"; + + type pc_PortChannelProtocol; + description "Port channel protocol"; + } + } + + grouping pc_AggrIfExtended-group { + description "Aggregated Interface extended configs"; + + leaf poType { + + type pc_PoType; + default "none"; + description "Port-channel type"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Port-type that the interface is facing + leaf portTypeFabric { + + type l1_PortTypeFabric; + description "Identifies if or not the port is a fabric-facing port"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf switchportBlock { + + type l1_SwitchportBlock; + description "Disable/enable switchport block on interface"; + } + + leaf switchportIsolated { + + type l1_SwitchportIsolated; + description "Switchport Isolated"; + } + + leaf autoExcludeVlans { + + type l1_AutoExcludeVlans; + description "Switchport Autostate Exclude vlans"; + } + + leaf switchportMacLearn { + + type l1_switchportMacLearn; + description "Disable/enable mac learning on interface"; + } + + leaf flowCtrl { + + type l1_FlowControl; + description "Disable/enable flowcontrol block on interface"; + } + + leaf stormCtrlBCastLevel { + + type l1_StormCtrlRate; + description "storm-control broadcast level"; + } + + leaf stormCtrlBCastPPS { + + type l1_StormCtrlPPS; + description "storm-control broadcast PPS"; + } + + leaf stormCtrlMCastLevel { + + type l1_StormCtrlRate; + description "storm-control multicast level"; + } + + leaf stormCtrlMCastPPS { + + type l1_StormCtrlPPS; + description "storm-control multicast PPS"; + } + + leaf stormCtrlUCastLevel { + + type l1_StormCtrlRate; + description "Storm control unicast level"; + } + + leaf stormCtrlUCastPPS { + + type l1_StormCtrlPPS; + description "Storm control unicast PPS"; + } + + leaf stormCtrlAct { + + type l1_StormCtrlAct; + description "Storm control action"; + } + + leaf bufferBoost { + + type l1_BufferBoost; + description "Disable/enable buffer boost on interface"; + } + + leaf switchportVirtualEthernetBridge { + + type l1_SwitchportVirtualEthernetBridge; + description "Disable/enable switchport virtual ethernet bridge on interface"; + } + + leaf allowMultiTag { + + type l1_AllowMultiTag; + description "Allow Multitag"; + } + leaf shutDownLan { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Shut/Unshut all LAN VLANs on interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping pc_VlanMapping-group { + description "Vlan Mapping Table"; + leaf Enabled { + type boolean; + default "false"; + description "Vlan Mapping Enable"; + } + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective Qinq Vlans"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective Qinq Translate Vlan Id"; + } + leaf selectiveQinqAll { + type boolean; + description "Selective QinQ All Vlans"; + } + + container selqinqtable-items { + + uses pc_SelectiveQinqTable-group; + } + + // Vlan Translate Table policy + container vlantranslatetable-items { + + uses pc_VlanTranslateTable-group; + description "Vlan Translate Table"; + } + } + + grouping pc_SelectiveQinqTable-group { + container selqinq-items { + list SelectiveQinq-list { + key "selectiveQinqTranslateVlan"; + + uses pc_SelectiveQinq-group; + description "Vlan Mapping Table for Trunk Mode list"; + } + description "Vlan Mapping Table for Trunk Mode"; + } + } + + grouping pc_SelectiveQinq-group { + description "Vlan Mapping Table for Trunk Mode"; + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + } + + grouping pc_VlanTranslateTable-group { + description "Vlan Translate Table"; + + // Vlan Translate Table policy Vlan Translate Entry policy + container vlan-items { + list VlanTranslateEntry-list { + key "vlanid"; + + uses pc_VlanTranslateEntry-group; + description "Vlan Translate Entry list"; + } + description "Vlan Translate Entry"; + } + } + + grouping pc_VlanTranslateEntry-group { + description "Vlan Translate Entry"; + + leaf vlanid { + + type l1_translatevlanid; + description "Vlan Id"; + } + + leaf innervlanid { + + type l1_translatevlanid; + description "Inner Vlan Id"; + } + + leaf translatevlanid { + + type l1_translatevlanid; + description "Translate Vlan Id"; + } + } + + grouping pc_BndlMbrIf-group { + description "Bundle Member Interface"; + + leaf id { + config "false"; + + type nw_IfId; + description "Interface index"; + } + } + + grouping l3_RtdIf-group { + description "Routed Interface"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsphysRtdConf-items { + + uses l3_RsPhysRtdConf_source-group; + description "Physical Routed Attachment"; + } + } + + grouping l3_LbRtdIf-group { + description "Routed Loopback Interface"; + + // Administrative link logging enable + leaf linkLog { + + type l1_LinkLog; + description "Administrative Link Logging Enable"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // loopback interface information holder + container lbrtdif-items { + + uses ethpm_LbRtdIf-group; + description "Loopback Routed Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtoperSourceInterface-items { + + uses nvo_RtOperSourceInterface_target-group; + description "Operational Up/Down status of the Source Interface."; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsprotLbIf-items { + + uses l3_RsProtLbIf_source-group; + description "Protection Group"; + } + + container rslbIfToLocale-items { + + list RsLbIfToLocale-list { + key "tDn"; + + uses l3_RsLbIfToLocale_source-group; + description "Router Id list"; + } + description "Router Id"; + } + + container rslbIfToOutRef-items { + + list RsLbIfToOutRef-list { + key "tDn"; + + uses l3_RsLbIfToOutRef_source-group; + description "Router Id list"; + } + description "Router Id"; + } + } + + grouping ethpm_LbRtdIf-group { + description "Loopback Routed Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // Operational state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational MTU + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational MTU"; + } + + // Operational Description + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Operational Description"; + } + + // Operational state reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // Last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + + // Operational state flags + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Operational State Flags"; + } + } + + grouping l3_EncRtdIf-group { + description "Encapsulated Routed Interface"; + + // Interface Mtu Is it required, check with marketing? + leaf mtu { + + type l1_Mtu; + description "Interface Mtu"; + } + leaf mtuInherit { + type boolean; + default "true"; + } + + // Interface interface delay @@@ This is not exposed in IFC + leaf delay { + + type l1_Delay; + description "Interface Interface Delay"; + } + leaf snmpTrap { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 2; + } + } + default "disable"; + description "Administrative Port Snmp Trap State"; + } + leaf encap { + type string; + description "Encap Vlan"; + } + + // Interface Bandwidth Is it required, check with marketing? + leaf bw { + + type l1_Bw; + description "Interface Bandwidth"; + } + + leaf linkLog { + + type l1_LinkLog; + description "Interface Link Logging Enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Interface Router Mac"; + } + leaf ifConnDn { + type string; + description "Interface Connectivity Dn"; + } + + // Interface link logging enable + leaf mediumType { + + type l1_Medium; + description "Interface Medium Type"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // sub-interface information holder + container encrtdif-items { + + uses ethpm_EncRtdIf-group; + description "Encapsulated Routed Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsencPhysRtdConf-items { + + uses l3_RsEncPhysRtdConf_source-group; + description "Parent If"; + } + } + + grouping ethpm_EncRtdIf-group { + description "Encapsulated Routed Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Router MAC"; + } + leaf operEncap { + config "false"; + type uint16; + description "Encapsulation dot1Q"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + leaf fsmState { + config "false"; + type uint8; + description "Indicates FSM State"; + } + leaf iod { + config "false"; + type uint64; + description "Specifies IOD"; + } + + // Operational state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational state reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational Mtu + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum Transmission Unit"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Specifies the Current Error Index"; + } + + // Last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Holds most recently seen errors"; + } + + // Operational state flags + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Specifies Operational State Flags"; + } + leaf siCfgFlags { + config "false"; + type uint32; + description "Specifies Sub-interface Configuration Flags"; + } + } + + grouping svi_If-group { + description "Routed Vlan Interface"; + + // VLAN ID associated with the SVI + leaf vlanId { + + type svi_VlanId; + description "VLAN ID Associated with the SVI"; + } + leaf mac { + type address_Mac; + description "MAC Address of the SVI"; + } + + // Medium type (P2P or Broadcast) @@@ default value: Not coming from IFC + leaf medium { + + type svi_Medium; + description "indicates the administrative port medium type"; + } + + // MTU of the SVI @@@ This comes from qos + leaf mtu { + + type svi_Mtu; + description "the administrative MTU port on the aggregated interface"; + } + leaf mtuInherit { + type boolean; + default "true"; + description "property for specifying if the MTU is inherited from global policy"; + } + + // Delay metric associated with the SVI + leaf delay { + + type svi_Delay; + description "specifies the administrative port delay"; + } + + // Bandwidth metric associated with the SVI + leaf bw { + + type svi_Bw; + description "specifies the administrative port bandwidth"; + } + + // Carrier Delay: hold period for which Carrier transition + // like L2 interfacing going down is ignored. + leaf carDel { + + type svi_CarrDelay; + description + "Carrier Delay: hold period for which Carrier transition + like L2 interfacing going down is ignored"; + } + + // Load-averaging interval 1 @@@ Infrastrure level policy + leaf loadIntvl1 { + + type svi_LoadIntvl1; + description "Load-averaging Interval 1"; + } + + // Load-averaging interval 2 + leaf loadIntvl2 { + + type svi_LoadIntvl2; + description "Load-averaging Interval 2"; + } + + // Load-averaging interval 3 + leaf loadIntvl3 { + + type svi_LoadIntvl3; + description "Load-averaging Interval 3"; + } + leaf inbMgmt { + type boolean; + description "An in-band management interface configuration"; + } + leaf autostate { + type boolean; + default "true"; + description "Autostate Enabled?"; + } + leaf snmpTrap { + type boolean; + default "true"; + description "SNMP Trap Link Status Enabled?"; + } + + // Operational state of the SVI + leaf operSt { + config "false"; + + type svi_OperSt; + description "the runtime state of the object or policy"; + } + + // Reason for operational state being down + leaf operStQual { + config "false"; + + type svi_OperStQual; + description "Reason for Operational State Being Down (status qualifier)"; + } + + // VLAN Type (e.g. private vlan) + leaf vlanT { + config "false"; + + type l2_DomType; + description "VLAN Type"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + leaf iod { + config "false"; + type uint32; + description "Interface Ordinal"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Tunnel Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + container svi-items { + + uses svi_OperSvi-group; + description "Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping svi_OperSvi-group { + description "Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf operDescr { + config "false"; + type string; + description "Operational State Summary"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Operational State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type svi_OperStQual; + description "Operational State Qualifier"; + } + + // Operational Mtu + leaf operCarrierDelaySec { + config "false"; + + type svi_CarrDelay; + description "Operational Carrier Delay Seconds"; + } + + // Operational Mtu + leaf operCarrierDelayMsec { + config "false"; + + type svi_CarrDelay; + description "Operational Carrier Delay milliseconds"; + } + + // Operational Mtu + leaf operMtu { + config "false"; + + type svi_Mtu; + description "Operational Mtu"; + } + + leaf operBw { + config "false"; + + type svi_Bw; + description "operational Bandwidth"; + } + + leaf operDelay { + config "false"; + + type svi_Delay; + description "operational delay"; + } + leaf operAutoState { + config "false"; + type boolean; + description "Operational AutoState"; + } + leaf operMac { + config "false"; + type address_Mac; + description "Operational Router MAC"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // Load interval 1 + leaf operLoadIntvl1 { + config "false"; + + type svi_LoadIntvl1; + description "Load Interval 1"; + } + + // Load interval 2 + leaf operLoadIntvl2 { + config "false"; + + type svi_LoadIntvl2; + description "Load Interval 2"; + } + + // Load interval 3 + leaf operLoadIntvl3 { + config "false"; + + type svi_LoadIntvl3; + description "Load Interval 3"; + } + leaf operLastChgSec { + config "false"; + type uint64; + description "Last change"; + } + leaf operLastChgUsec { + config "false"; + type uint64; + description "Last change"; + } + } + + grouping tunnelif_If-group { + description "Tunnel Interface"; + leaf tunSrcAddr { + type address_Ip; + description "Tunnel Source"; + } + + // Tunnel source interface + leaf tunSrcIntf { + + type nw_IfId; + description "Tunnel Source"; + } + + // Tunnel source direct + leaf tunSrcDirect { + + type tunnelif_TunnelSrcDirect; + description "Tunnel Source"; + } + leaf tunDestAddr { + type address_Ip; + description "Tunnel Destination"; + } + + // Tunnel mode + leaf tunMode { + + type tunnelif_TunnelMode; + description "Tunnel Mode"; + } + + // Tunnel VRF name + leaf tunVrf { + + type tunnelif_TunnelTransVRF; + description "Tunnel Transport VRF"; + } + + // Tunnel MTU + leaf tunMtu { + + type tunnelif_TunnelMtu; + description "Tunnel MTU"; + } + + // Tunnel PATH MTU Discovery + leaf tunPMTUD { + + type tunnelif_TunnelPMTUD; + description "Tunnel PMTU Discovery"; + } + + // Tunnel PMTU min-mtu + leaf tunminPMTU { + + type tunnelif_TunnelminPMTU; + description "Tunnel min PMTU"; + } + + // Tunnel PMTU ager + leaf tunPMTUage { + + type tunnelif_TunnelPMTUAge; + description "Tunnel PMTU age"; + } + + // Tunnel Interface Bandwidth + leaf tunBW { + + type tunnelif_TunnelBW; + description "Tunnel Bandwidth"; + } + + // Tunnel Interface TTL + leaf tunTTL { + + type tunnelif_TunnelTTL; + description "Tunnel TTL"; + } + + // Administrative port snmp trap state + leaf snmpTrapSt { + + type tunnelif_SnmpTrapSt; + description "Snmp Trap State"; + } + + // Tunnel operational state + leaf tunOperSt { + config "false"; + + type tunnelif_TunnelOperSt; + description "Tunnel Operational State"; + } + + // Tunnel operational state down reason + leaf tunOperStQual { + config "false"; + + type tunnelif_TunnelOperStQual; + description "Tunnel Operational State Qualifier"; + } + leaf lastStateChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + leaf tunDelInProg { + config "false"; + type boolean; + description "Tunnel Deletion in Progress"; + } + + // Tunnel Interface options + leaf tunIntfOptions { + config "false"; + + type tunnelif_TunnelOption; + description "Tunnel Interface Options"; + } + leaf tunIod { + config "false"; + type uint32; + description "Tunnel Interface Ordinal"; + } + leaf tunIfIndex { + config "false"; + type uint32; + description "Tunnel Interface Index"; + } + leaf tunIfPmtu { + config "false"; + type uint32; + description "Tunnel Interface PMTU"; + } + leaf lastCtrRstChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last Counters Reset Timestamp"; + } + leaf tunRxPackets { + config "false"; + type uint64; + description "Tunnel Rx Packet counter"; + } + leaf tunRxBytes { + config "false"; + type uint64; + description "Tunnel Rx Bytes counter"; + } + leaf tunTxPackets { + config "false"; + type uint64; + description "Tunnel Tx Packet counter"; + } + leaf tunTxBytes { + config "false"; + type uint64; + description "Tunnel Tx Bytes counter"; + } + leaf tunSrcIP { + config "false"; + type address_Ip; + description "Tunnel Source IP"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Tunnel Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv4_Entity-group { + description "IPv4 Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per ipv4 instance information. There is + // only one instance of ipv4 running in the system today + container inst-items { + + uses ipv4_Inst-group; + description "IPv4 Instance"; + } + } + + grouping ipv4_Inst-group { + description "IPv4 Instance"; + + // ip source-route enabled by default + leaf sourceRoute { + + type nw_AdminSt; + description "Source-Route"; + } + + // ip access-list match local enabled by default + leaf accessListMatchLocal { + + type nw_AdminSt; + default "disabled"; + description "Access-List Match Local"; + } + leaf hardwareEcmpHashOffsetValue { + type uint16 { + range "0..63"; + } + default "0"; + description "hardware Ecmp HashOffset Value"; + } + + leaf hardwareEcmpHashOffsetConcat { + + type nw_AdminSt; + default "disabled"; + description "hardware Ecmp HashOffset Concatenation"; + } + + leaf hardwareEcmpHashPolynomial { + + type ip_HardwareEcmpHashPolynomialT; + description "hardware Ecmp Hash-Polynomial"; + } + + // logging level enabled by default + leaf loggingLevel { + + type arp_LoggingLevel; + description "Logging level"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + key "name"; + + uses ipv4_Dom-group; + description "IPv4 Domain list"; + } + description "IPv4 Domain"; + } + + // IPv4 Client information + // Ephemeral data + container client-items { + + // Ephemeral data + list Client-list { + config "false"; + key "clientName clientProtocol"; + + uses ipv4_Client-group; + description "IPv4 Client list"; + } + description "IPv4 Client"; + } + + // Load sharing mo + container iploadsharing-items { + + uses ipv4_IPLoadSharing-group; + description "IPv4 Load-sharing"; + } + + // Ephemeral data + container loadstat-items { + + uses ipv4_LoadSharingStat-group; + description "IPv4 load-sharing statistics"; + } + + // Ephemeral data + container iptrafficstat-items { + + uses ipv4_IpTrafficStat-group; + description "IP Software Processed Traffic Stat"; + } + + // Ephemeral data + container iptrafficerrstat-items { + + uses ipv4_IpTrafficErrStat-group; + description "IP Software Processed Traffic Stat"; + } + + // Ephemeral data + container icmptrafficstat-items { + + uses ipv4_ICMPTrafficStat-group; + description "ICMP Software Processed Traffic Stat"; + } + + // Ephemeral data + container rfc4293trafficstat-items { + + uses ipv4_RFC4293TrafficStat-group; + description "RFC 4293: IP Software Processed Traffic Stat"; + } + } + + grouping ipv4_Dom-group { + description "IPv4 Domain"; + + // ip auto-discard disabled by default + leaf autoDiscard { + + type nw_AdminSt; + default "disabled"; + description "Auto-Discard"; + } + + // ip icmp-error source-interface + leaf ipIcmpErrorsSrcIntf { + + type nw_IfId; + description "ICMP errors source-interface"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // ip route static bfd + container rtstaticbfd-items { + list RtStaticBfd-list { + key "intf nexthop"; + + uses ipv4_RtStaticBfd-group; + description "IP route static bfd list"; + } + description "IP route static bfd"; + } + + // This object holds ipv4 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; + + uses ipv4_If-group; + description "IPv4 Interface list"; + } + description "IPv4 Interface"; + } + container multicastrt-items { + list MulticastRoute-list { + key "prefix"; + + uses ipv4_MulticastRoute-group; + description "IPv4 Multicast Static Route list"; + } + description "IPv4 Multicast Static Route"; + } + + // Ephemeral data + container pstat-items { + + uses ipv4_ProcessStat-group; + description "IPv4 Process Stat"; + } + + // Static route definitions + container rt-items { + list Route-list { + key "prefix"; + + uses ipv4_Route-group; + description "IPv4 Static Route list"; + } + description "IPv4 Static Route"; + } + + // Ephemeral data + container routestat-items { + + uses ipv4_RouteStat-group; + description "IPv4 Static Route"; + } + + // This object holds ipv4 information that is operated at a + // domain level + // Ephemeral data + container ifbriefstats-items { + + // Ephemeral data + list VrfIfBriefStats-list { + config "false"; + key "interfaceId"; + + uses ipv4_VrfIfBriefStats-group; + description "IPv4 Vrf Level Brief Interface Statistics list"; + } + description "IPv4 Vrf Level Brief Interface Statistics"; + } + } + + grouping ipv4_RtStaticBfd-group { + description "IP route static bfd"; + + // interface value. + leaf intf { + + type nw_IfId; + description "Interface"; + } + leaf nexthop { + type address_Ip; + description "Nexthop Address"; + } + } + + grouping ipv4_If-group { + description "IPv4 Interface"; + leaf directedBroadcast { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } + } + default "disabled"; + description "IP directed broadcast"; + } + leaf acl { + type string { + length "0..63"; + } + description "IP directed broadcast ACL"; + } + + // IP forward. When interface types: eth, mgmt, + // or port channel. + leaf forward { + + type nw_AdminSt; + default "disabled"; + description "IP forward"; + } + + // IP unnumbered. When interface types: eth, tunnel + leaf unnumbered { + + type nw_IfId; + description "IP unnumbered"; + } + + // URPF info on interface + leaf urpf { + + type ip_UrpfT; + description "URPF Info"; + } + + leaf dropGlean { + + type nw_AdminSt; + default "disabled"; + description "ip drop-glean enabled/disabled"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_UnnumberedOperStQual; + description "Operational State Qualifier"; + } + + // Interface address + container addr-items { + list Addr-list { + key "addr"; + + uses ipv4_Addr-group; + description "Ipv4 Address list"; + } + description "Ipv4 Address"; + } + + container dampening-items { + + uses ipv4_Dampening-group; + description "IPv4 interface dampening"; + } + + // Ephemeral data + container dampeningdata-items { + + uses ipv4_DampeningData-group; + description "IPv4 interface dampening data"; + } + + // Ephemeral data + container trafficstat-items { + + uses ipv4_IfTrafficStat-group; + description "IPv4 Interface Traffic Stat"; + } + + // Ephemeral data + container stat-items { + + uses ipv4_IfStat-group; + description "IPv4 Interface Stat"; + } + + // Route map entries + container rpol-items { + + uses rtmap_RmapPolicy-group; + description "interface Route map Policy"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv4_Addr-group { + description "Ipv4 Address"; + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv4_Dampening-group { + description "IPv4 interface dampening"; + leaf halfLifePeriod { + type uint64 { + range "0..30"; + } + description "Half life period"; + } + leaf reuseThreshold { + type uint64 { + range "0..20000"; + } + description "Reuse threshold"; + } + leaf suppressThreshold { + type uint64 { + range "0..20000"; + } + description "Suppress threshold"; + } + leaf maxSuppress { + type uint64 { + range "0..255"; + } + description "Maximum suppress time"; + } + + leaf restartEnabled { + + type nw_AdminSt; + description "Restart enabled"; + } + leaf restartPenalty { + type uint64 { + range "0..20000"; + } + description "Restart penalty"; + } + } + + grouping ipv4_DampeningData-group { + description "IPv4 interface dampening data"; + + // Ephemeral data + leaf flapCount { + config "false"; + type uint64; + description "Flap count"; + } + + // Ephemeral data + leaf penalty { + config "false"; + type uint64; + description "Penalty accumulated"; + } + + // Ephemeral data + leaf suppressed { + config "false"; + type uint64; + description "Is interface suppressed"; + } + + // Ephemeral data + leaf reuseTime { + config "false"; + type uint64; + description "Reuse time"; + } + + // Ephemeral data + leaf halfLifePeriod { + config "false"; + type uint64; + description "Half life period"; + } + + // Ephemeral data + leaf reuseThreshold { + config "false"; + type uint64; + description "Reuse threshold"; + } + + // Ephemeral data + leaf suppressThreshold { + config "false"; + type uint64; + description "Suppress threshold"; + } + + // Ephemeral data + leaf maxSuppress { + config "false"; + type uint64; + description "Max suppress"; + } + + // Ephemeral data + leaf maxPenalty { + config "false"; + type uint64; + description "Maximum penalty"; + } + + // Ephemeral data + leaf restartPenalty { + config "false"; + type uint64; + description "Restart penalty"; + } + } + + grouping ipv4_IfTrafficStat-group { + description "IPv4 Interface Traffic Stat"; + + // Ephemeral data + leaf upktSent { + config "false"; + type uint64; + description "Unicast Packet sent"; + } + + // Ephemeral data + leaf upktRecv { + config "false"; + type uint64; + description "Unicast Packet Receive"; + } + + // Ephemeral data + leaf upktFwd { + config "false"; + type uint64; + description "Unicast Packet Forward"; + } + + // Ephemeral data + leaf upktOrig { + config "false"; + type uint64; + description "Unicast Packet Originated"; + } + + // Ephemeral data + leaf upktConsumed { + config "false"; + type uint64; + description "Unicast Packet Consumed"; + } + + // Ephemeral data + leaf ubyteSent { + config "false"; + type uint64; + description "Unicast Byte Sent"; + } + + // Ephemeral data + leaf ubyteRcv { + config "false"; + type uint64; + description "Unicast Byte Receive"; + } + + // Ephemeral data + leaf ubyteFwd { + config "false"; + type uint64; + description "Unicast Byte Forward"; + } + + // Ephemeral data + leaf ubyteOrig { + config "false"; + type uint64; + description "Unicast Byte Originated"; + } + + // Ephemeral data + leaf ubyteConsumed { + config "false"; + type uint64; + description "Unicast Byte Consumed"; + } + + // Ephemeral data + leaf mpktSent { + config "false"; + type uint64; + description "Multicast Packets Sent"; + } + + // Ephemeral data + leaf mpktRcv { + config "false"; + type uint64; + description "Multicast Packets Receive"; + } + + // Ephemeral data + leaf mpktFwd { + config "false"; + type uint64; + description "Multicast Packets Forward"; + } + + // Ephemeral data + leaf mpktOrig { + config "false"; + type uint64; + description "Multicast Packets Originated"; + } + + // Ephemeral data + leaf mpktConsumed { + config "false"; + type uint64; + description "Multicast Packets Consumed"; + } + + // Ephemeral data + leaf mbyteSent { + config "false"; + type uint64; + description "Multicast Byte Sent"; + } + + // Ephemeral data + leaf mbyteRcv { + config "false"; + type uint64; + description "Multicast Byte Receive"; + } + + // Ephemeral data + leaf mbyteFwd { + config "false"; + type uint64; + description "Multicast Byte Forward"; + } + + // Ephemeral data + leaf mbyteOrig { + config "false"; + type uint64; + description "Multicast Byte Originated"; + } + + // Ephemeral data + leaf mbyteConsumed { + config "false"; + type uint64; + description "Multicast Byte Consumed"; + } + + // Ephemeral data + leaf bpktSent { + config "false"; + type uint64; + description "Broadcast Packet Sent"; + } + + // Ephemeral data + leaf bpktRcv { + config "false"; + type uint64; + description "Broadcast Packet Receive"; + } + + // Ephemeral data + leaf bpktFwd { + config "false"; + type uint64; + description "Broadcast Packet Forward"; + } + + // Ephemeral data + leaf bpktOrig { + config "false"; + type uint64; + description "Broadcast Packet Originated"; + } + + // Ephemeral data + leaf bpktConsumed { + config "false"; + type uint64; + description "Broadcast Packet Consumed"; + } + + // Ephemeral data + leaf bbyteSent { + config "false"; + type uint64; + description "Broadcast Byte Sent"; + } + + // Ephemeral data + leaf bbyteRcv { + config "false"; + type uint64; + description "Broadcast Byte Receive"; + } + + // Ephemeral data + leaf bbyteFwd { + config "false"; + type uint64; + description "Broadcast Byte Forward"; + } + + // Ephemeral data + leaf bbyteOrig { + config "false"; + type uint64; + description "Broadcast Byte Originated"; + } + + // Ephemeral data + leaf bbyteConsumed { + config "false"; + type uint64; + description "Broadcast Byte Consumed"; + } + + // Ephemeral data + leaf lpktSent { + config "false"; + type uint64; + description "Labeled Packet Sent"; + } + + // Ephemeral data + leaf lpktRcv { + config "false"; + type uint64; + description "Labeled Packet Receive"; + } + + // Ephemeral data + leaf lpktFwd { + config "false"; + type uint64; + description "Labeled Packet Forward"; + } + + // Ephemeral data + leaf lpktOrig { + config "false"; + type uint64; + description "Labeled Packet Originated"; + } + + // Ephemeral data + leaf lpktConsumed { + config "false"; + type uint64; + description "Labeled Packet Consumed"; + } + + // Ephemeral data + leaf lbyteSent { + config "false"; + type uint64; + description "Labeled Byte Sent"; + } + + // Ephemeral data + leaf lbyteRcv { + config "false"; + type uint64; + description "Labeled Byte Receive"; + } + + // Ephemeral data + leaf lbyteFwd { + config "false"; + type uint64; + description "Labeled Byte Forward"; + } + + // Ephemeral data + leaf lbyteOrig { + config "false"; + type uint64; + description "Labeled Byte Originated"; + } + + // Ephemeral data + leaf lbyteConsumed { + config "false"; + type uint64; + description "Labeled Byte Consumed"; + } + } + + grouping ipv4_IfStat-group { + description "IPv4 Interface Stat"; + + // Ephemeral data + leaf iodValue { + config "false"; + type uint64; + description "Iod Value"; + } + + // Ephemeral data + leaf vrfNameOut { + config "false"; + type string; + description "Vrf Name Out"; + } + + // Ephemeral data + leaf protoState { + config "false"; + type string; + description "Protocol state"; + } + + // Ephemeral data + leaf linkState { + config "false"; + type string; + description "Link State"; + } + + // Ephemeral data + leaf adminState { + config "false"; + type string; + description "Admin State"; + } + + // Ephemeral data + leaf priAddr { + config "false"; + type address_Ipv4; + description "Primary Address"; + } + + // Ephemeral data + leaf priSubnet { + config "false"; + type string; + description "Primary Address Subnet"; + } + + // Ephemeral data + leaf priMasklen { + config "false"; + type uint8; + description "Primary Address Masklen"; + } + + // Ephemeral data + leaf priRoutePref { + config "false"; + type uint8; + description "Primary address route preference"; + } + + // Ephemeral data + leaf priTag { + config "false"; + type uint32; + description "Primary Address Tag"; + } + + // Ephemeral data + leaf secAddr { + config "false"; + type string; + description "Secondary IP Address"; + } + + // Ephemeral data + leaf secAddrSubnet { + config "false"; + type string; + description "Secondary Address Subnet"; + } + + // Ephemeral data + leaf secAddrMasklen { + config "false"; + type string; + description "Secondary Address Masklen"; + } + + // Ephemeral data + leaf secAddrRoutePref { + config "false"; + type string; + description "Secondary address route preference"; + } + + // Ephemeral data + leaf secAddrTag { + config "false"; + type string; + description "Secondary Address Tag"; + } + + // Ephemeral data + leaf numAddr { + config "false"; + type uint32; + description "Number of addresses"; + } + + // Ephemeral data + leaf vaddrClient { + config "false"; + type string; + description "Virtual address client"; + } + + // Ephemeral data + leaf vaddrPrefix { + config "false"; + type string; + description "Virtual address prefix"; + } + + // Ephemeral data + leaf vaddrSubnet { + config "false"; + type string; + description "Virtual address subnet"; + } + + // Ephemeral data + leaf vaddrMasklen { + config "false"; + type string; + description "Virtual address masklen"; + } + + // Ephemeral data + leaf numVaddr { + config "false"; + type uint64; + description "Number of virtual addresses"; + } + + // Ephemeral data + leaf unnumIntf { + config "false"; + type string; + description "Unnumbered IP Interface"; + } + leaf firstIod { + config "false"; + type uint64; + description "First iod"; + } + leaf unnumChildIntf { + config "false"; + type string; + description "Un-numbered child interface"; + } + + // Ephemeral data + leaf ipDisabled { + config "false"; + type string; + description "IP Disabled"; + } + + // Ephemeral data + leaf bcastAddr { + config "false"; + type address_Ipv4; + description "Broadcast Address"; + } + + // Ephemeral data + leaf mAddr { + config "false"; + type string; + description "IP Multicast Groups Address"; + } + + // Ephemeral data + leaf numMaddr { + config "false"; + type uint32; + description "Number of multicast addresses"; + } + + // Ephemeral data + leaf mtu { + config "false"; + type uint16; + description "MTU"; + } + + // Ephemeral data + leaf pref { + config "false"; + type uint8; + description "Preference"; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Tag"; + } + + // Ephemeral data + leaf proxyArp { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_proxyArp; + description "Proxy Arp"; + } + + // Ephemeral data + leaf localProxyArp { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_localProxyArp; + description "Local Proxy Arp"; + } + + // Ephemeral data + leaf mRouting { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_mRouting; + description "Multicast Routing"; + } + + // Ephemeral data + leaf icmpRedirect { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_icmpRedirect; + description "Icmp Redirect"; + } + + // Ephemeral data + leaf directBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_directBcast; + description "Directed Broadcast"; + } + + // Ephemeral data + leaf ipUnreach { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_ipUnreach; + description "IP Unreachable"; + } + + // Ephemeral data + leaf portUnreach { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_portUnreach; + description "Port Unreachable"; + } + + // Ephemeral data + leaf urpfMode { + config "false"; + type string; + description "Unicast reverse path forwarding mode"; + } + + // Ephemeral data + leaf ipLoadSharing { + config "false"; + type string; + description "IP Load Sharing Type"; + } + + // Ephemeral data + leaf aclIn { + config "false"; + type string; + description "Acl In"; + } + + // Ephemeral data + leaf aclOut { + config "false"; + type string; + description "Acl Out"; + } + + // Ephemeral data + leaf statsLastReset { + config "false"; + type string; + description "Stats Last Reset"; + } + } + + grouping rtmap_RmapPolicy-group { + description "interface Route map Policy"; + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping ipv4_MulticastRoute-group { + description "IPv4 Multicast Static Route"; + leaf prefix { + type address_Ip; + description "Prefix"; + } + container nh-items { + list MulticastNexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv4_MulticastNexthop-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + } + + grouping ipv4_MulticastNexthop-group { + description "IPv4 Nexthop"; + + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf pref { + type uint8; + description "Route preference"; + } + } + + grouping ipv4_ProcessStat-group { + description "IPv4 Process Stat"; + + // Ephemeral data + leaf contextName { + config "false"; + type string; + description "Context Name"; + } + + // Ephemeral data + leaf contextId { + config "false"; + type uint64; + description "Context Id"; + } + + // Ephemeral data + leaf baseTId { + config "false"; + type uint64; + description "Base Table Id"; + } + + // Ephemeral data + leaf autoDisc { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoDisc; + description "Auto Discard"; + } + + // Ephemeral data + leaf autoDiscAdd { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoDiscAdd; + description "Auto Discard Added"; + } + + // Ephemeral data + leaf nullBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_nullBcast; + description "Null BroadCast"; + } + + // Ephemeral data + leaf autoPuntBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoPuntBcast; + description "Auto Punt Broadcast"; + } + + // Ephemeral data + leaf staticDisc { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_staticDisc; + description "Static Discard"; + } + + // Ephemeral data + leaf staticDefRoute { + config "false"; + type uint64; + description "Static Default Route Count"; + } + + // Ephemeral data + leaf ipUnreach { + config "false"; + type uint64; + description "IP Unreachable Count"; + } + + // Ephemeral data + leaf entryIod { + config "false"; + type string; + description "Entry IOD"; + } + + // Ephemeral data + leaf localAddr { + config "false"; + type string; + description "Local Address"; + } + } + + grouping ipv4_Route-group { + description "IPv4 Static Route"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf prefix { + type address_Ip; + description "Prefix"; + } + + // Route preference, the administrative distance assigned + // to this route + leaf pref { + + type rt_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Tag"; + } + + // Policy tag + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Route ctrl + leaf ctrl { + + type ip_RtControl; + description "Controls"; + } + + // Nexthops for the static route + container nh-items { + list Nexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv4_Nexthop-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + + // Temporary Nexthop stub created until the Spine proxy + // IP address is determined. + container nhs-items { + list NexthopStub-list { + config "false"; + key "nhIf nhAddr nhVrf"; + + uses ipv4_NexthopStub-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + } + + grouping ipv4_Nexthop-group { + description "IPv4 Nexthop"; + leaf rtname { + type string; + description "Next hop name"; + } + leaf tag { + type uint32; + description "tag value"; + } + leaf pref { + type uint8; + description "Route preference"; + } + leaf object { + type uint32; + description "Object to be tracked"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv4_NexthopStub-group { + description "IPv4 Nexthop"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + config "false"; + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv4_RouteStat-group { + description "IPv4 Static Route"; + + // Ephemeral data + leaf contextName { + config "false"; + type string; + description "Context Name"; + } + + // Ephemeral data + leaf contextId { + config "false"; + type uint32; + description "Context Id"; + } + + // Ephemeral data + leaf prefixMask { + config "false"; + type string; + description "Prefix Mask"; + } + + // Ephemeral data + leaf nhPrefixMask { + config "false"; + type string; + description "Next Hop Prefix Mask"; + } + + // Ephemeral data + leaf vrfInfo { + config "false"; + type string; + description "vrf Info"; + } + + // Ephemeral data + leaf intrInfo { + config "false"; + type string; + description "Interface Info"; + } + + // Ephemeral data + leaf uribStat { + config "false"; + type string; + description "Urib State"; + } + + // Ephemeral data + leaf nhopUribStat { + config "false"; + type string; + description "Next Hop Urib State"; + } + + // Ephemeral data + leaf trackObjNum { + config "false"; + type string; + description "Track object number"; + } + + // Ephemeral data + leaf trackObjState { + config "false"; + type string; + description "Track Object State"; + } + } + + grouping ipv4_VrfIfBriefStats-group { + description "IPv4 Vrf Level Brief Interface Statistics"; + + // Ephemeral data + leaf interfaceId { + config "false"; + + type nw_IfId; + description "Interface Name"; + } + + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "IPv4 Address"; + } + + // Ephemeral data + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Ephemeral data + leaf protSt { + config "false"; + + type nw_AdminSt; + description "Protocol State"; + } + + // Ephemeral data + leaf linkSt { + config "false"; + + type nw_AdminSt; + description "Link State"; + } + + // Ephemeral data + leaf secAddrList { + config "false"; + type string; + description "Seconday Address List"; + } + } + + grouping ipv4_Client-group { + description "IPv4 Client"; + + // Ephemeral data + leaf clientName { + config "false"; + type string; + description "Client Name"; + } + + // Ephemeral data + leaf clientUuid { + config "false"; + type int32; + description "Client uuid"; + } + + // Ephemeral data + leaf clientPid { + config "false"; + type int32; + description "Client Pid"; + } + + // Ephemeral data + leaf clientExtPid { + config "false"; + type uint32; + description "Client Extended Pid"; + } + + // Ephemeral data + leaf clientProtocol { + config "false"; + type uint8; + description "Client Protocol"; + } + + // Ephemeral data + leaf clientIndex { + config "false"; + type uint16; + description "Client Index"; + } + + // Ephemeral data + leaf clientContextId { + config "false"; + type uint32; + description "Client Context Id"; + } + + // client mts sap + // Ephemeral data + leaf clientMtsSap { + config "false"; + + type ipv4_ClientMtsSapType; + description "Client Data Mts Sap"; + } + + // client flag + // Ephemeral data + leaf clientFlag { + config "false"; + + type ipv4_ClientFlagType; + description "Client Flag"; + } + + // Ephemeral data + leaf clientDataMsgSuccess { + config "false"; + type uint64; + description "Client Data Msg Send Successful"; + } + + // Ephemeral data + leaf clientDataMsgFail { + config "false"; + type uint64; + description "Client Data Msg Send Failed"; + } + + // Ephemeral data + leaf clientRcvFunName { + config "false"; + type string; + description "Client Receive Function Name"; + } + } + + grouping ipv4_IPLoadSharing-group { + description "IPv4 Load-sharing"; + + // load share mode for 'ip load-sharing' cli, there are four modes + // - 1. {address source-destination} + // cli: ip load-sharing address source-destination gre-outer + // concatenation rotate 1 universal-id 2 + // - 2. {address destination port destination} + // cli: ip load-sharing address source-destination gre + // concatenation rotate 1 universal-id 2 + // - 3. {address source-destination gre-key} + // cli: ip load-sharing address destination port destination + // rotate 1 universal-id 2 + // - 4. {address source-destination port source-destination} + // cli: ip load-sharing address source-destination port + // source-destination concatenation + // - 5. {address source-destination gtpu-teid} + // cli: ip load-sharing address source-destination gtpu + // concatenation rotate 1 universal-id 2 + leaf loadShareMode { + + type ip_LoadShareFormat; + description "Load sharing mode"; + } + leaf universalID { + type uint32 { + range "0..4294967295"; + } + description "Universal-ID(Random seed)"; + } + + // whether gre-outer hash is enabled + leaf greOuterHash { + + type nw_AdminSt; + default "disabled"; + description "GRE Outer Hash"; + } + leaf udfOffset { + type uint16 { + range "0..127"; + } + description "source-destination udf"; + } + leaf udfLength { + type uint16 { + range "0..32"; + } + description "source-destination udf length"; + } + + // whether concatenation is enabled + leaf concatenation { + + type nw_AdminSt; + default "disabled"; + description "Concatenation"; + } + leaf rotate { + type uint16 { + range "1..63"; + } + default "32"; + description "Rotate"; + } + + // whether ecmploadsharing is enabled. + // Not supported on n9k today, defined for future use + leaf ecmpLoadSharing { + + type nw_AdminSt; + default "disabled"; + description "ECMP load sharing"; + } + } + + grouping ipv4_LoadSharingStat-group { + description "IPv4 load-sharing statistics"; + + // Ephemeral data + leaf univerIdRanSeed { + config "false"; + type uint32; + description "Universal Id Random Seed"; + } + + // Ephemeral data + leaf ipLoadshareOption { + config "false"; + type string; + description "IP Load Share Option"; + } + + // Ephemeral data + leaf hashFlag { + config "false"; + + type nw_AdminSt; + description "GRE-Outer Hash"; + } + + // Ephemeral data + leaf concat { + config "false"; + + type nw_AdminSt; + description "Concatenation"; + } + leaf rotate { + config "false"; + type uint16 { + range "1..63"; + } + default "32"; + description "Rotate"; + } + } + + grouping ipv4_IpTrafficStat-group { + description "IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf received { + config "false"; + type uint32; + description "Traffic Received"; + } + + // Ephemeral data + leaf sent { + config "false"; + type uint32; + description "Traffic Sent"; + } + + // Ephemeral data + leaf consumed { + config "false"; + type uint32; + description "Traffic Consumed"; + } + + // Ephemeral data + leaf fwdUcast { + config "false"; + type uint32; + description "Forwarded Unicast"; + } + + // Ephemeral data + leaf fwdMcast { + config "false"; + type uint32; + description "Forwarded Multicast"; + } + + // Ephemeral data + leaf fwdLabel { + config "false"; + type uint32; + description "Forwarded Label"; + } + + // Ephemeral data + leaf ingressMcecFwdPkts { + config "false"; + type uint32; + description "Ingress mcec forward"; + } + + // Ephemeral data + leaf optsEnd { + config "false"; + type uint32; + description "OPTS End"; + } + + // Ephemeral data + leaf optsNop { + config "false"; + type uint32; + description "OPTS Nop"; + } + + // Ephemeral data + leaf optsBsec { + config "false"; + type uint32; + description "OPTS Basic Security"; + } + + // Ephemeral data + leaf optsLsrr { + config "false"; + type uint32; + description "OPTS Loose Source Route"; + } + + // Ephemeral data + leaf optsTimestamp { + config "false"; + type uint32; + description "OPTS Timestamp"; + } + + // Ephemeral data + leaf optsEsec { + config "false"; + type uint32; + description "OPTS Extended Security"; + } + + // Ephemeral data + leaf optsRecordRoute { + config "false"; + type uint32; + description "OPTS Record Route"; + } + + // Ephemeral data + leaf optsStrsrcRoute { + config "false"; + type uint32; + description "OPTS Strict Source Route"; + } + + // Ephemeral data + leaf optsAlert { + config "false"; + type uint32; + description "OPTS Alert"; + } + + // Ephemeral data + leaf optsOther { + config "false"; + type uint32; + description "OPTS Other"; + } + + // Ephemeral data + leaf frag { + config "false"; + type uint32; + description "Fragments Received"; + } + + // Ephemeral data + leaf fragmented { + config "false"; + type uint32; + description "Fragments Sent"; + } + + // Ephemeral data + leaf outFrag { + config "false"; + type uint32; + description "Fragments Created"; + } + + // Ephemeral data + leaf fragDrop { + config "false"; + type uint32; + description "Fragments Dropped"; + } + + // Ephemeral data + leaf cantFrag { + config "false"; + type uint32; + description "Packets with Dont Fragment Bit"; + } + + // Ephemeral data + leaf reasm { + config "false"; + type uint32; + description "Packets Reassembled"; + } + + // Ephemeral data + leaf fragTO { + config "false"; + type uint32; + description "Fragments Timed Out"; + } + } + + grouping ipv4_IpTrafficErrStat-group { + description "IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf badCsum { + config "false"; + type uint32; + description "Error Bad Checksum"; + } + + // Ephemeral data + leaf tooSmall { + config "false"; + type uint32; + description "Error Packet Too Small"; + } + + // Ephemeral data + leaf badVer { + config "false"; + type uint32; + description "Error Bad Version"; + } + + // Ephemeral data + leaf badHLen { + config "false"; + type uint32; + description "Error Bad Header Length"; + } + + // Ephemeral data + leaf badLen { + config "false"; + type uint32; + description "Error Bad Packet Length"; + } + + // Ephemeral data + leaf badDest { + config "false"; + type uint32; + description "Error Bad Destination"; + } + + // Ephemeral data + leaf badTTL { + config "false"; + type uint32; + description "Error Bad TTL"; + } + + // Ephemeral data + leaf cantFwd { + config "false"; + type uint32; + description "Error Could Not Forward"; + } + + // Ephemeral data + leaf outDrop { + config "false"; + type uint32; + description "Error No Buffer Dropped"; + } + + // Ephemeral data + leaf badEncap { + config "false"; + type uint32; + description "Error Bad Encapsulation"; + } + + // Ephemeral data + leaf noRoute { + config "false"; + type uint32; + description "Eroor No route"; + } + + // Ephemeral data + leaf noProto { + config "false"; + type uint32; + description "Error Non-Existent Protocol"; + } + + // Ephemeral data + leaf badOptions { + config "false"; + type uint32; + description "Error Bad Options"; + } + + // Ephemeral data + leaf vinciMigPkts { + config "false"; + type uint32; + description "Vinci Migration Packet Count"; + } + + // Ephemeral data + leaf snoopSuccess { + config "false"; + type uint32; + description "Packets Snooped"; + } + + // Ephemeral data + leaf sviIodDown { + config "false"; + type uint32; + description "Packets On Down Svi"; + } + + // Ephemeral data + leaf restartPktDrop { + config "false"; + type uint32; + description "Restart Packet Drop Count"; + } + + // Ephemeral data + leaf mbufErrCount { + config "false"; + type uint32; + description "MBUF Pull Up Fail"; + } + + // Ephemeral data + leaf badCntxtIdDrop { + config "false"; + type uint32; + description "Bad Context Id Drop Count"; + } + + // Ephemeral data + leaf rpfDrop { + config "false"; + type uint32; + description "Rpf Drop Count"; + } + + // Ephemeral data + leaf badGwMacDrop { + config "false"; + type uint32; + description "Bad GW MAC Drop Count"; + } + + // Ephemeral data + leaf ipsOptionFail { + config "false"; + type uint32; + description "Ingress Option Processing Fail"; + } + + // Ephemeral data + leaf natInDrop { + config "false"; + type uint32; + description "NAT Inside Drop Count"; + } + + // Ephemeral data + leaf natOutDrop { + config "false"; + type uint32; + description "NAT Outside Drop Count"; + } + + // Ephemeral data + leaf ipsMfwdFail { + config "false"; + type uint32; + description "Ingress Mforward Failed"; + } + + // Ephemeral data + leaf ipsLispDrop { + config "false"; + type uint32; + description "Ingress Lisp Drop"; + } + + // Ephemeral data + leaf ipsLispDecapDrop { + config "false"; + type uint32; + description "Ingress Lips Decap Drop"; + } + + // Ephemeral data + leaf ipsLispEncapDrop { + config "false"; + type uint32; + description "Ingress Lisp Encap Drop"; + } + + // Ephemeral data + leaf ipsLispEncap { + config "false"; + type uint32; + description "Ingress Lisp Encap"; + } + + // Ephemeral data + leaf ipsMfwdCopyDrop { + config "false"; + type uint32; + description "Ingress Mfwd Copy Drop"; + } + + // Ephemeral data + leaf ipsRaReassDrop { + config "false"; + type uint32; + description "Ingress RA/Reass Drop"; + } + + // Ephemeral data + leaf ipsIcmpRedirProcDrop { + config "false"; + type uint32; + description "Ingress ICMP Redirect Processing Drop"; + } + + // Ephemeral data + leaf ipsIfmgrInitFail { + config "false"; + type uint32; + description "Ingress Ifmgr Init Drop"; + } + + // Ephemeral data + leaf ipsInvalidFilter { + config "false"; + type uint32; + description "Ingress Invalid Filter Drop"; + } + + // Ephemeral data + leaf ipsInvalidL2msg { + config "false"; + type uint32; + description "Ingress Invalid L2 Msg Drop"; + } + + // Ephemeral data + leaf aclIngressDrop { + config "false"; + type uint32; + description "ACL Filter Ingress Drops"; + } + + // Ephemeral data + leaf aclEgressDrop { + config "false"; + type uint32; + description "ACL Filter Egree Drop"; + } + + // Ephemeral data + leaf aclDirBcastDrop { + config "false"; + type uint32; + description "ACL Filter Directed Broadcsat Drop"; + } + } + + grouping ipv4_ICMPTrafficStat-group { + description "ICMP Software Processed Traffic Stat"; + + // Ephemeral data + leaf txRedir { + config "false"; + type uint32; + description "Transmission Redirect"; + } + + // Ephemeral data + leaf txUnreach { + config "false"; + type uint32; + description "Transmission Unreachable"; + } + + // Ephemeral data + leaf txEchoReq { + config "false"; + type uint32; + description "Transmission Echo Request"; + } + + // Ephemeral data + leaf txEchoReply { + config "false"; + type uint32; + description "Transmission Echo Reply"; + } + + // Ephemeral data + leaf txMaskReq { + config "false"; + type uint32; + description "Transmission Mask Request"; + } + + // Ephemeral data + leaf txMaskReply { + config "false"; + type uint32; + description "Transmission Mask Reply"; + } + + // Ephemeral data + leaf txInfoReq { + config "false"; + type uint32; + description "Transmission Info Request"; + } + + // Ephemeral data + leaf txInfoReply { + config "false"; + type uint32; + description "Transmission Info Reply"; + } + + // Ephemeral data + leaf txParamProb { + config "false"; + type uint32; + description "Transmission Parameter Problem"; + } + + // Ephemeral data + leaf txSrcQuench { + config "false"; + type uint32; + description "Transmission Source Quench"; + } + + // Ephemeral data + leaf txTstampReq { + config "false"; + type uint32; + description "Transmission Timestamp Request"; + } + + // Ephemeral data + leaf txTstampReply { + config "false"; + type uint32; + description "Transmission Timestamp Reply"; + } + + // Ephemeral data + leaf txTstampXceed { + config "false"; + type uint32; + description "Transmission Timestamp Exceeded"; + } + + // Ephemeral data + leaf txRtrSolicit { + config "false"; + type uint32; + description "Transmission Router Solicitation"; + } + + // Ephemeral data + leaf txRtrAdvert { + config "false"; + type uint32; + description "Transmission Router Advertisement"; + } + + // Ephemeral data + leaf outBadLen { + config "false"; + type uint32; + description "Output Bad Length Drop"; + } + + // Ephemeral data + leaf outEncapFail { + config "false"; + type uint32; + description "Output Encapsulation Fail Drop"; + } + + // Ephemeral data + leaf outXmitFail { + config "false"; + type uint32; + description "Output Xmit Fail Drop"; + } + + // Ephemeral data + leaf icmpOrigReq { + config "false"; + type uint32; + description "ICMP Originate Req"; + } + + // Ephemeral data + leaf redirOrigReq { + config "false"; + type uint32; + description "Redirected Originated Req"; + } + + // Ephemeral data + leaf outErr { + config "false"; + type uint32; + description "Orginate Deny Resource Fail"; + } + + // Ephemeral data + leaf oldShortIp { + config "false"; + type uint32; + description "Originate Deny Short Ip"; + } + + // Ephemeral data + leaf oldIcmp { + config "false"; + type uint32; + description "Originate Deny Icmp"; + } + + // Ephemeral data + leaf errorDrop { + config "false"; + type uint32; + description "Originatte Deny other error"; + } + + // Ephemeral data + leaf rxRedir { + config "false"; + type uint32; + description "Reception Redirect"; + } + + // Ephemeral data + leaf rxUnreach { + config "false"; + type uint32; + description "Reception Unreachable"; + } + + // Ephemeral data + leaf rxEchoReq { + config "false"; + type uint32; + description "Reception Echo Request"; + } + + // Ephemeral data + leaf rxEchoReply { + config "false"; + type uint32; + description "Reception Echo Reply"; + } + + // Ephemeral data + leaf rxMaskReq { + config "false"; + type uint32; + description "Reception Mask Request"; + } + + // Ephemeral data + leaf rxMaskReply { + config "false"; + type uint32; + description "Reception Mask Reply"; + } + + // Ephemeral data + leaf rxInfoReq { + config "false"; + type uint32; + description "Reception Info Request"; + } + + // Ephemeral data + leaf rxInfoReply { + config "false"; + type uint32; + description "Reception Info Reply"; + } + + // Ephemeral data + leaf rxParamProb { + config "false"; + type uint32; + description "Reception Parameter Problem"; + } + + // Ephemeral data + leaf rxSrcQuench { + config "false"; + type uint32; + description "Reception Source Quench"; + } + + // Ephemeral data + leaf rxTstampReq { + config "false"; + type uint32; + description "Reception Timsetamp Request"; + } + + // Ephemeral data + leaf rxTstampReply { + config "false"; + type uint32; + description "Reception Timestamp Reply"; + } + + // Ephemeral data + leaf rxTimeXceed { + config "false"; + type uint32; + description "Reception Time Exceeded"; + } + + // Ephemeral data + leaf rxRtrSolicit { + config "false"; + type uint32; + description "Reception Router Solicit"; + } + + // Ephemeral data + leaf rxRtrAdvert { + config "false"; + type uint32; + description "Reception Router Advertisement"; + } + + // Ephemeral data + leaf rxFormatError { + config "false"; + type uint32; + description "Reception Format Error"; + } + + // Ephemeral data + leaf rxCsumError { + config "false"; + type uint32; + description "Reception Checksum Error"; + } + + // Ephemeral data + leaf icmpLispProcessed { + config "false"; + type uint32; + description "ICMP Lisp Processed"; + } + + // Ephemeral data + leaf icmpNoClients { + config "false"; + type uint32; + description "ICMP No Clients"; + } + + // Ephemeral data + leaf icmpConsumed { + config "false"; + type uint32; + description "ICMP Consumed"; + } + + // Ephemeral data + leaf icmpReplies { + config "false"; + type uint32; + description "ICMP replies"; + } + + // Ephemeral data + leaf icmpReplyDropInvldAddr { + config "false"; + type uint32; + description "ICMP Replies Drop - Invalid Address"; + } + + // Ephemeral data + leaf icmpReplyDropInactAddr { + config "false"; + type uint32; + description "ICMP Replies Drop - Inactive Address"; + } + + // Ephemeral data + leaf statsLastReset { + config "false"; + type string; + description "Statistics last Rest"; + } + } + + grouping ipv4_RFC4293TrafficStat-group { + description "RFC 4293: IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf inrcv { + config "false"; + type uint32; + description "Reception Packets Received"; + } + + // Ephemeral data + leaf inoctet { + config "false"; + type uint32; + description "Reception Bytes Received"; + } + + // Ephemeral data + leaf inhdrerr { + config "false"; + type uint32; + description "Reception Inhdrerrors"; + } + + // Ephemeral data + leaf innoroutes { + config "false"; + type uint32; + description "Reception Innoroutes"; + } + + // Ephemeral data + leaf inaddrerr { + config "false"; + type uint32; + description "Reception Inaddrerrors"; + } + + // Ephemeral data + leaf innoproto { + config "false"; + type uint32; + description "Reception Unknown Protos"; + } + + // Ephemeral data + leaf intruncated { + config "false"; + type uint32; + description "Reception Truncated Packets"; + } + + // Ephemeral data + leaf inforwdgrams { + config "false"; + type uint32; + description "Reception Inforwdgrams"; + } + + // Ephemeral data + leaf reasmreqds { + config "false"; + type uint32; + description "Reception Fragments Reassemble Requested"; + } + + // Ephemeral data + leaf reasmoks { + config "false"; + type uint32; + description "Reception Fragments Reassembled"; + } + + // Ephemeral data + leaf reasmfails { + config "false"; + type uint32; + description "Reception Fragments Dropped"; + } + + // Ephemeral data + leaf indiscards { + config "false"; + type uint32; + description "Reception Fragments Discard"; + } + + // Ephemeral data + leaf indelivers { + config "false"; + type uint32; + description "Reception Fragments Deliver"; + } + + // Ephemeral data + leaf inMcastPkts { + config "false"; + type uint32; + description "Reception Multicast Packets"; + } + + // Ephemeral data + leaf inMcastBytes { + config "false"; + type uint32; + description "Reception Multicast Bytes"; + } + + // Ephemeral data + leaf inBcastPkts { + config "false"; + type uint32; + description "Reception Broadcast Packets"; + } + + // Ephemeral data + leaf outRequest { + config "false"; + type uint32; + description "Transmission Requests"; + } + + // Ephemeral data + leaf outNoRoutes { + config "false"; + type uint32; + description "Transmission No Routes"; + } + + // Ephemeral data + leaf outForwdGrams { + config "false"; + type uint32; + description "Transmission Forward Stats"; + } + + // Ephemeral data + leaf outDiscards { + config "false"; + type uint32; + description "Transmission Fragments Discarded"; + } + + // Ephemeral data + leaf outFragReqds { + config "false"; + type uint32; + description "Transmission Fragments Requested"; + } + + // Ephemeral data + leaf outFragOks { + config "false"; + type uint32; + description "Transmission Fragments Ok"; + } + + // Ephemeral data + leaf outFragFails { + config "false"; + type uint32; + description "Transmission Fragments Failed"; + } + + // Ephemeral data + leaf outFragCreates { + config "false"; + type uint32; + description "Transmission Fragments Created"; + } + + // Ephemeral data + leaf outTransmits { + config "false"; + type uint32; + description "Transmission Packets Transmits"; + } + + // Ephemeral data + leaf outBytes { + config "false"; + type uint32; + description "Transmission Bytes Sent"; + } + + // Ephemeral data + leaf outMcastPkts { + config "false"; + type uint32; + description "Transmission Multicast Packets sent"; + } + + // Ephemeral data + leaf outMcastBytes { + config "false"; + type uint32; + description "Transmission Multicast Bytes sent"; + } + + // Ephemeral data + leaf outBcastPkts { + config "false"; + type uint32; + description "Transmission Broadcast Packets"; + } + + // Ephemeral data + leaf outBcastBytes { + config "false"; + type uint32; + description "Transmission Broadcast Bytes"; + } + } + + grouping ipv6_Entity-group { + description "IPv6 Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per ipv6 instance information. There is + // only one instance of ipv6 running in the system today + container inst-items { + + uses ipv6_Inst-group; + description "IPv6 Instance"; + } + } + + grouping ipv6_Inst-group { + description "IPv6 Instance"; + + // ipv6 access-list match local + leaf accessListMatchLocal { + + type nw_AdminSt; + default "disabled"; + description "Access-List Match Local"; + } + + // static neighbor outside subnet + leaf staticNeighborOutsideSubnet { + + type nw_AdminSt; + default "disabled"; + description "Static Neighbor Outside Subnet "; + } + + // Queue 1 packet when triggered NS is sent + leaf queuePackets { + + type nw_AdminSt; + default "disabled"; + description "Queue-packets"; + } + + // Switch ND packets received on core ports + leaf switchPackets { + + type ip_SwitchPktTarget; + description "Switch-packets"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container mtustats-items { + + uses ipv6_IPv6MtuCacheStatGlobal-group; + description "IPv6 global MTU cache statistics"; + } + + // Objectification of IPv6 Client statistics + // Ephemeral data + container clientstats-items { + + // Ephemeral data + list IPv6Clients-list { + config "false"; + key "clientName clientProtocol"; + + uses ipv6_IPv6Clients-group; + description "Registered clients with IPv6 process list"; + } + description "Registered clients with IPv6 process"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + key "name"; + + uses ipv6_Dom-group; + description "IPV6 Domain list"; + } + description "IPV6 Domain"; + } + + // Objectification of IPv6 Fragments statistics + // Ephemeral data + container fragstats-items { + + // Ephemeral data + list IPv6Fragments-list { + config "false"; + key "srcAddr"; + + uses ipv6_IPv6Fragments-group; + description "IPv6 queued fragments list"; + } + description "IPv6 queued fragments"; + } + container logs-items { + list IPv6EventLogs-list { + key "eventType"; + + uses ipv6_IPv6EventLogs-group; + description "IPv6 Event History Logging list"; + } + description "IPv6 Event History Logging"; + } + + // Holds ipv6 global statistics + // Ephemeral data + container pktqstats-items { + + uses ipv6_IPv6InstStat-group; + description "IPv6 global instance statistics"; + } + + // Objectification of IPv6 neighbor statistics + // Ephemeral data + container ipv6stats-items { + + // Ephemeral data + list IPv6Stat-list { + config "false"; + key "ftmName"; + + uses ipv6_IPv6Stat-group; + description "IPv6 global statistics list"; + } + description "IPv6 global statistics"; + } + + // Objectification of IPv6 interface statistics + // Ephemeral data + container trafficstats-items { + + uses ipv6_IPv6TrafficStat-group; + description "IPv6 traffic statistics"; + } + } + + grouping ipv6_IPv6MtuCacheStatGlobal-group { + description "IPv6 global MTU cache statistics"; + + // Ephemeral data + leaf outstandingEntries { + config "false"; + type uint32; + description "Outstanding Entries"; + } + + // Ephemeral data + leaf expiredEntries { + config "false"; + type uint64; + description "Expired Entries"; + } + + // Ephemeral data + leaf purgedEntries { + config "false"; + type uint64; + description "Purged Entries"; + } + + // Ephemeral data + leaf internalErrors { + config "false"; + type uint64; + description "Internal Errors"; + } + + // Ephemeral data + leaf pktTooBig { + config "false"; + type uint64; + description "Packet-Too-Big Messages Received"; + } + + // Ephemeral data + leaf cacheMisses { + config "false"; + type uint64; + description "Cache misses"; + } + + // Ephemeral data + leaf cacheUpdates { + config "false"; + type uint64; + description "Cache updates"; + } + + // Ephemeral data + leaf smallMtuAdv { + config "false"; + type uint64; + description "Too small MTU advertised"; + } + + // Ephemeral data + leaf cacheNoUpdates { + config "false"; + type uint64; + description "Cache No Updates"; + } + } + + grouping ipv6_IPv6Clients-group { + description "Registered clients with IPv6 process"; + + // Ephemeral data + leaf clientName { + config "false"; + type string; + description "IPv6: Client name"; + } + + // Ephemeral data + leaf clientStatus { + config "false"; + type string; + description "IPv6: Client status"; + } + + // Ephemeral data + leaf clientPid { + config "false"; + type int32; + description "IPv6: Client pid"; + } + + // Ephemeral data + leaf clientExtPid { + config "false"; + type int32; + description "IPv6: Client extended pid"; + } + + // Ephemeral data + leaf clientProtocol { + config "false"; + type int32; + description "IPv6: Client protocol"; + } + + // Ephemeral data + leaf clientPibIndex { + config "false"; + type int32; + description "IPv6: Client pib index"; + } + + // Ephemeral data + leaf clientUuid { + config "false"; + type int32; + description "IPv6: Client Uuid"; + } + + // Ephemeral data + leaf clientRoutingVrf { + config "false"; + type int32; + description "IPv6: Client routing vrf id"; + } + + // Ephemeral data + leaf clientRoutingFlag { + config "false"; + type int32; + description "IPv6: Client routing flag id"; + } + + // Ephemeral data + leaf clientCtrlMtsSap { + config "false"; + type int32; + description "IPv6: Client control Mts Sap"; + } + + // Ephemeral data + leaf clientDataMtsSap { + config "false"; + type int32; + description "IPv6: Client Data MTS Sap"; + } + + // Ephemeral data + leaf destUnreachSent { + config "false"; + type int32; + description "IPv6: IPC messages to control queue"; + } + + // Ephemeral data + leaf destUnreachRcvd { + config "false"; + type int32; + description "IPv6: failed client IPC messages to control queue"; + } + + // Ephemeral data + leaf adminProhibSent { + config "false"; + type int32; + description "IPv6: IPC messages to data queue"; + } + + // Ephemeral data + leaf adminProhibRcvd { + config "false"; + type int32; + description "IPv6: failed IPC messages to data queue"; + } + + // Ephemeral data + leaf clientIfExtIndex { + config "false"; + type int32; + description "IPv6: Client interface extended index"; + } + + // Ephemeral data + leaf clientRecvFn { + config "false"; + type string; + description "IPv6: Client received function"; + } + + // Ephemeral data + leaf clientRecvHex { + config "false"; + type string; + description "IPv6: Client received Hex"; + } + } + + grouping ipv6_Dom-group { + description "IPV6 Domain"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + container mtustats-items { + + uses ipv6_IPv6MtuCacheStat-group; + description "IPv6 MTU cache statistics"; + } + + // ipv6 route static bfd + container rtstaticbfd-items { + list RtStaticBfd-list { + key "intf nexthop"; + + uses ipv6_RtStaticBfd-group; + description "IPV6 route static bfd list"; + } + description "IPV6 route static bfd"; + } + + // This object holds ipv6 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; + + uses ipv6_If-group; + description "IPV6 Interface list"; + } + description "IPV6 Interface"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container procstats-items { + + uses ipv6_IPv6ProcessStat-group; + description "IPv6 process statistics"; + } + + // Static route definitions + container rt-items { + list Route-list { + key "prefix"; + + uses ipv6_Route-group; + description "IPv6 Static Route list"; + } + description "IPv6 Static Route"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container routestats-items { + + uses ipv6_IPv6RouteStat-group; + description "IPv6 Route Statistics"; + } + } + + grouping ipv6_IPv6MtuCacheStat-group { + description "IPv6 MTU cache statistics"; + + // Ephemeral data + container addr-items { + + // Ephemeral data + list IPv6MtuCacheDestStat-list { + config "false"; + key "pathDestination"; + + uses ipv6_IPv6MtuCacheDestStat-group; + description "IPv6 MTU cache destination statistics list"; + } + description "IPv6 MTU cache destination statistics"; + } + } + + grouping ipv6_IPv6MtuCacheDestStat-group { + description "IPv6 MTU cache destination statistics"; + + // Ephemeral data + leaf pathDestination { + config "false"; + type address_Ipv6; + description "Path destination address"; + } + + // Ephemeral data + leaf pathMtu { + config "false"; + type uint16; + description "Path MTU"; + } + + // Ephemeral data + leaf outgoingIod { + config "false"; + type string; + description "Outgoing IOD"; + } + + // Ephemeral data + leaf smallMtuReceived { + config "false"; + type string; + description "Too small MTU received"; + } + + // Ephemeral data + leaf bigMtuReeived { + config "false"; + type string; + description "Too big MTU received"; + } + + // Ephemeral data + leaf smallMtu { + config "false"; + type uint16; + description "Minimum mtu received less than the v6 minimum mtu"; + } + + // Ephemeral data + leaf lastMtuUpdate { + config "false"; + type string; + description "Last MTU update"; + } + } + + grouping ipv6_RtStaticBfd-group { + description "IPV6 route static bfd"; + + // interface value. + leaf intf { + + type nw_IfId; + description "Interface"; + } + leaf nexthop { + type address_Ip; + description "Nexthop Address"; + } + } + + grouping ipv6_If-group { + description "IPV6 Interface"; + + // Handle ipv6 address use-link-local-address" + leaf useLinkLocalAddr { + + type nw_AdminSt; + default "disabled"; + description "IPv6 Address Use Link Local Address"; + } + + // Handle ipv6 urpf info" + leaf urpf { + + type ip_UrpfT; + description "IPv6 URPF Info"; + } + + // Handle ipv6 forward" + leaf forward { + + type nw_AdminSt; + default "disabled"; + description "IPv6 forward"; + } + + // IPv6 Stateless address autoconfig + leaf autoconfig { + + type nw_AdminSt; + default "disabled"; + description "IPv6 Stateless address autoconfig"; + } + + // adds default route and the nh would be fetched from RA source address + leaf defaultRoute { + + type nw_AdminSt; + default "disabled"; + description "Default Route Addition with Nexthop as RA Source Address"; + } + leaf llAddr { + type address_Ip; + description "IPv6 Link Local Address"; + } + + // To Handle the config fault for this MO + leaf configError { + config "false"; + + type ipv6_ConfigErr; + default "noerror"; + description "Config error"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_UnnumberedOperStQual; + description "Operational State Qualifier"; + } + + // Interface address + container addr-items { + list Addr-list { + key "addr"; + + uses ipv6_Addr-group; + description "IPV6 Address list"; + } + description "IPV6 Address"; + } + + // Link local Interface address + container lladdr-items { + list LLaddr-list { + key "addr"; + + uses ipv6_LLaddr-group; + description "IPV6 Link Local Address list"; + } + description "IPV6 Link Local Address"; + } + + // IPv6 Neighbor Address + container nghbr-items { + list Neighbor-list { + key "addr"; + + uses ipv6_Neighbor-group; + description "IPV6 Neighbor Address list"; + } + description "IPV6 Neighbor Address"; + } + + // Objectification of IPv6 interface statistics + // Ephemeral data + container ifstats-items { + + uses ipv6_IPv6IfStat-group; + description "IPv6 interface statistics"; + } + + // Objectification of IPv6 neighbor statistics + container nbrstats-items { + list IPv6NeighborStat-list { + config "false"; + key "ngbrAddr"; + + uses ipv6_IPv6NeighborStat-group; + description "IPv6 neighbour statistics list"; + } + description "IPv6 neighbour statistics"; + } + + // Route map entries + container rpol-items { + + uses rtmap_RmapPolicy-group; + description "interface Route map Policy"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv6_Addr-group { + description "IPV6 Address"; + leaf aggregatePrefixLength { + type uint16 { + range "0..127"; + } + description "Prefix-Length for AM Route Aggregation"; + } + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv6_LLaddr-group { + description "IPV6 Link Local Address"; + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv6_Neighbor-group { + description "IPV6 Neighbor Address"; + leaf neighborMac { + type address_Mac; + description "IPv6 neighbor MAC Address"; + } + + // To Handle the config fault for this MO + leaf configError { + config "false"; + + type ipv6_ConfigErr; + default "noerror"; + description "Config error"; + } + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_IPv6IfStat-group { + description "IPv6 interface statistics"; + leaf id { + config "false"; + type string; + description "Interface ID"; + } + + // Ephemeral data + leaf ifName { + config "false"; + type string; + description "Interface Name"; + } + + // Ephemeral data + leaf ifProtoState { + config "false"; + type string; + description "Protocol state"; + } + + // Ephemeral data + leaf ifLinkState { + config "false"; + type string; + description "Link state"; + } + + // Ephemeral data + leaf ifAdminState { + config "false"; + type string; + description "Administrative state"; + } + + // Ephemeral data + leaf ifIod { + config "false"; + type uint32; + description "Interface IOD"; + } + + // Ephemeral data + leaf ifFwdStatus { + config "false"; + type boolean; + description "Interface forwarding status"; + } + + // Ephemeral data + leaf ifIpv6Enabled { + config "false"; + type string; + description "IPv6 enabled/disabled"; + } + + // Ephemeral data + leaf ifAddr { + config "false"; + type string; + description "IPv6 address"; + } + + // Ephemeral data + leaf ifAddrSubnet { + config "false"; + type address_Ip; + description "Address Subnet"; + } + + // Ephemeral data + leaf ifAnycastAddr { + config "false"; + type string; + description "Anycast configured address"; + } + + // Ephemeral data + leaf ifLLaddr { + config "false"; + type address_Ip; + description "IPv6 link-local address"; + } + + // Ephemeral data + leaf ifLinkLocalConfigStatus { + config "false"; + type string; + description "Link local configuration status"; + } + + // Ephemeral data + leaf ifLinkLocalState { + config "false"; + type string; + description "Link local address state"; + } + + // Ephemeral data + leaf ifVIPAddr { + config "false"; + type string; + description "Virtual ip address"; + } + + // Ephemeral data + leaf ifMcastRoutingStatus { + config "false"; + type string; + description "Multicast routing enabled"; + } + + // Ephemeral data + leaf ifReportLLStatus { + config "false"; + type string; + description "Send local reports to MLD"; + } + + // Ephemeral data + leaf ifMcastGroupLocallyJoined { + config "false"; + type string; + description "Multicast group locally joined"; + } + + // Ephemeral data + leaf ifMcastSrcGrpAddr { + config "false"; + type string; + description "Multicast (S,G) entries joined"; + } + + // Ephemeral data + leaf ifmtu { + config "false"; + type uint32; + description "Mtu"; + } + + // Ephemeral data + leaf ifUcastRevPathFwdMode { + config "false"; + type string; + description "IPv6 unicast reverse path forwarding"; + } + + // Ephemeral data + leaf ifUcastRevPathFwdFlag { + config "false"; + type string; + description "IPv6 unicast reverse path forwarding flag"; + } + + // Ephemeral data + leaf ifLoadSharing { + config "false"; + type string; + description "IPv6 load sharing"; + } + + // Ephemeral data + leaf ifStatLastReset { + config "false"; + type string; + description "IPv6 interface statistics last reset"; + } + + // Ephemeral data + leaf ifAclInbound { + config "false"; + type string; + description "ACL inbound"; + } + + // Ephemeral data + leaf ifAclOutbound { + config "false"; + type string; + description "ACL outbound"; + } + + // Ephemeral data + leaf ifUnspecifiedSrc { + config "false"; + type uint32; + description "Unspecified source"; + } + + // Ephemeral data + leaf ifTotalPktRxTentativeAddr { + config "false"; + type uint32; + description "Total packet received on tentative address"; + } + + // Ephemeral data + leaf ifTotalPktRxInvalidAddrState { + config "false"; + type uint32; + description "Total Packet received on invalid address state"; + } + + // Ephemeral data + leaf ifTotalPktRxDuplicateState { + config "false"; + type uint32; + description "Total packet received on duplicate state"; + } + + // Ephemeral data + leaf ifAnycastPktTCP { + config "false"; + type uint32; + description "Anycast packet arrived on TCP"; + } + + // Ephemeral data + leaf ifDeliverInterfaceDown { + config "false"; + type uint32; + description "Deliver interface Down"; + } + + // Ephemeral data + leaf rpUcastPktsForwarded { + config "false"; + type uint32; + description "RP unicast packets forwarded"; + } + + // Ephemeral data + leaf rpUcastPktsOriginated { + config "false"; + type uint32; + description "RP unicast packets originated"; + } + + // Ephemeral data + leaf rpUcastPktsConsumed { + config "false"; + type uint32; + description "RP unicast packets consumed"; + } + + // Ephemeral data + leaf rpUcastBytesForwarded { + config "false"; + type uint32; + description "RP unicast bytes forwarded"; + } + + // Ephemeral data + leaf rpUcastBytesOriginated { + config "false"; + type uint32; + description "RP unicast bytes originated"; + } + + // Ephemeral data + leaf rpUcastBytesConsumed { + config "false"; + type uint32; + description "RP unicast bytes consumed"; + } + + // Ephemeral data + leaf rpMcastPktsForwarded { + config "false"; + type uint32; + description "RP multicast packets forwarded"; + } + + // Ephemeral data + leaf rpMcastPktsOriginated { + config "false"; + type uint32; + description "RP multicast packets originated"; + } + + // Ephemeral data + leaf rpMcastPktsConsumed { + config "false"; + type uint32; + description "RP multicast packets consumed"; + } + + // Ephemeral data + leaf rpMcastBytesForwarded { + config "false"; + type uint32; + description "RP multicast bytes forwarded"; + } + + // Ephemeral data + leaf rpMcastBytesOriginated { + config "false"; + type uint32; + description "RP multicast bytes originated"; + } + + // Ephemeral data + leaf rpMcastBytesConsumed { + config "false"; + type uint32; + description "RP multicast bytes consumed"; + } + } + + grouping ipv6_IPv6NeighborStat-group { + description "IPv6 neighbour statistics"; + leaf ngbrAddr { + config "false"; + type address_Ipv6; + description "Neighbor address"; + } + } + + grouping ipv6_IPv6ProcessStat-group { + description "IPv6 process statistics"; + + // Ephemeral data + leaf procVRFId { + config "false"; + type uint32; + description "VRF id"; + } + + // Ephemeral data + leaf procAutoDiscard { + config "false"; + type string; + description "Auto discard"; + } + + // Ephemeral data + leaf procAutoDiscardAdded { + config "false"; + type string; + description "Auto discard added"; + } + + // Ephemeral data + leaf procStaticDiscard { + config "false"; + type string; + description "Static discard"; + } + + // Ephemeral data + leaf procStaticDefaultCount { + config "false"; + type uint32; + description "Number of static default route configured"; + } + + // Ephemeral data + leaf procIODList { + config "false"; + type string; + description "IOD and intrface index list"; + } + + // Ephemeral data + leaf procLocalAddrList { + config "false"; + type string; + description "Local address list"; + } + } + + grouping ipv6_Route-group { + description "IPv6 Static Route"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf prefix { + type address_Ip; + description "Prefix"; + } + + // Route preference, the administrative distance assigned + // to this route + leaf pref { + + type rt_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Tag"; + } + + // Policy tag + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Route ctrl + leaf ctrl { + + type ip_RtControl; + description "Controls"; + } + + // Nexthops for the static route + container nh-items { + list Nexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv6_Nexthop-group; + description "IPv6 Nexthop list"; + } + description "IPv6 Nexthop"; + } + + // Temporary Nexthop stub created until the Spine proxy + // IP address is determined. + container nhs-items { + list NexthopStub-list { + config "false"; + key "nhIf nhAddr nhVrf"; + + uses ipv6_NexthopStub-group; + description "IPv6 next-hop stub list"; + } + description "IPv6 next-hop stub"; + } + } + + grouping ipv6_Nexthop-group { + description "IPv6 Nexthop"; + leaf rtname { + type string; + description "Next hop name"; + } + leaf tag { + type uint32; + description "tag value"; + } + leaf pref { + type uint8; + description "Route preference"; + } + leaf object { + type uint32; + description "Object to be tracked"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_NexthopStub-group { + description "IPv6 next-hop stub"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + config "false"; + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_IPv6RouteStat-group { + description "IPv6 Route Statistics"; + + // Ephemeral data + container pfx-items { + + // Ephemeral data + list IPv6RouteStatPfx-list { + config "false"; + key "rtPrefix rtNextHop"; + + uses ipv6_IPv6RouteStatPfx-group; + description "IPv6 Route Statistics list"; + } + description "IPv6 Route Statistics"; + } + } + + grouping ipv6_IPv6RouteStatPfx-group { + description "IPv6 Route Statistics"; + + // Ephemeral data + leaf rtPrefix { + config "false"; + type address_Ip; + description "Route prefix and mask len"; + } + + // Ephemeral data + leaf rtNextHop { + config "false"; + type address_Ip; + description "Next hop IP address/prefix"; + } + + // Ephemeral data + leaf rtRealNextHop { + config "false"; + type string; + description "Real next-hop from u6rib resolve"; + } + + // Ephemeral data + leaf rtRealNextHopIod { + config "false"; + type string; + description "Iod from u6rib resolution"; + } + + // Ephemeral data + leaf rtInterface { + config "false"; + type string; + description "Interface static routes"; + } + + // Ephemeral data + leaf rtPreference { + config "false"; + type uint32; + description "Configured route preference"; + } + + // Ephemeral data + leaf rtNhVrfName { + config "false"; + type string; + description "Next hop VRF name"; + } + + // Ephemeral data + leaf rtResolveTableId { + config "false"; + type uint32; + description "Resolve table id"; + } + + // Ephemeral data + leaf rtTrackObjNum { + config "false"; + type uint32; + description "Track object number"; + } + + // Ephemeral data + leaf rtTrackObjState { + config "false"; + type string; + description "Tracking enabled"; + } + + // Ephemeral data + leaf rtRnhSentToUrib { + config "false"; + type string; + description "Route next hop sent to urib"; + } + + // Ephemeral data + leaf rtBfdEnabled { + config "false"; + type string; + description "BFD enabled"; + } + } + + grouping ipv6_IPv6Fragments-group { + description "IPv6 queued fragments"; + + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ipv6; + description "Source address"; + } + + // Ephemeral data + leaf dstAddr { + config "false"; + type address_Ipv6; + description "Destination address"; + } + + // Ephemeral data + leaf fragId { + config "false"; + type int32; + description "Fragment id"; + } + + // Ephemeral data + leaf fragOffset { + config "false"; + type int32; + description "Fragment offset"; + } + + // Ephemeral data + leaf fragMFlag { + config "false"; + type int32; + description "Fragment m-falg"; + } + + // Ephemeral data + leaf fragNextHeader { + config "false"; + type int32; + description "Fragment next header"; + } + + // Ephemeral data + leaf fragPayloadLen { + config "false"; + type int32; + description "Fragment payload length"; + } + + // Ephemeral data + leaf fragExpirationTime { + config "false"; + type int32; + description "Fragment expires in msec"; + } + } + + grouping ipv6_IPv6EventLogs-group { + description "IPv6 Event History Logging"; + + // Type of Event + leaf eventType { + + type ipv6_IPv6EventType; + description "Event Log Type"; + } + + // Type of Event LogSize + leaf logSize { + + type ipv6_IPv6EventLogSize; + description "Event Log Size"; + } + } + + grouping ipv6_IPv6InstStat-group { + description "IPv6 global instance statistics"; + + // Ephemeral data + leaf queuePacket { + config "false"; + type string; + description "IPv6 queue packet"; + } + } + + grouping ipv6_IPv6Stat-group { + description "IPv6 global statistics"; + + // Ephemeral data + leaf ftmName { + config "false"; + type string; + description "FTM timer"; + } + + // Ephemeral data + leaf ftmTimeSecond { + config "false"; + type uint32; + description "FTM tv_sec"; + } + + // Ephemeral data + leaf ftmTimeNanoSecond { + config "false"; + type uint32; + description "FTM tv_nsec"; + } + + // Ephemeral data + leaf ftCount { + config "false"; + type uint64; + description "FTM ft count"; + } + } + + grouping ipv6_IPv6TrafficStat-group { + description "IPv6 traffic statistics"; + + // Ephemeral data + leaf statLastReset { + config "false"; + type string; + description "Traffic statistics last reset time(uptime)"; + } + + // Ephemeral data + leaf ucastFragOriginated { + config "false"; + type uint64; + description "RP Unicast fragments originated"; + } + + // Ephemeral data + leaf mcastFragOriginated { + config "false"; + type uint64; + description "Multicast fragments originated"; + } + + // Ephemeral data + leaf ucastFragConsumed { + config "false"; + type uint64; + description "Unicast fragments consumed"; + } + + // Ephemeral data + leaf mcastFragConsumed { + config "false"; + type uint64; + description "Multicast fragments consumed"; + } + + // Ephemeral data + leaf ingressMcecFwdPkts { + config "false"; + type uint32; + description "Ingress mcec forward packets"; + } + + // Ephemeral data + leaf ingressPktsVinciMigration { + config "false"; + type uint32; + description "Ingress packets during Vinci migration"; + } + + // Ephemeral data + leaf errBadVersion { + config "false"; + type uint64; + description "Error bad version"; + } + + // Ephemeral data + leaf errRouteLookupFailed { + config "false"; + type uint64; + description "Error route lookup failed"; + } + + // Ephemeral data + leaf errHopLimitExceeded { + config "false"; + type uint64; + description "Error hop limit exceeded"; + } + + // Ephemeral data + leaf errIngressIfMgrInitDrops { + config "false"; + type uint32; + description "Error ingress interface manager init drops"; + } + + // Ephemeral data + leaf errRpfDrop { + config "false"; + type uint32; + description "Error rpf drops"; + } + + // Ephemeral data + leaf errOptionHeader { + config "false"; + type uint64; + description "Error option header"; + } + + // Ephemeral data + leaf errPayloadLenTooSmall { + config "false"; + type uint64; + description "Error payload length too small"; + } + + // Ephemeral data + leaf errPMFailed { + config "false"; + type uint64; + description "Error pm failed"; + } + + // Ephemeral data + leaf errMbufError { + config "false"; + type uint64; + description "MBUF errors"; + } + + // Ephemeral data + leaf errEncapError { + config "false"; + type uint64; + description "Encapsulation errors"; + } + + // Ephemeral data + leaf errPktsDroppedDestIfDown { + config "false"; + type uint64; + description "Packets dropped dut to destination interface down"; + } + + // Ephemeral data + leaf pktsRecvRx { + config "false"; + type uint64; + description "Packets received at ingress"; + } + + // Ephemeral data + leaf bytesRecvRx { + config "false"; + type uint64; + description "Bytes received at ingress"; + } + + // Ephemeral data + leaf headerErrorsRx { + config "false"; + type uint32; + description "Header errors of packets at ingress"; + } + + // Ephemeral data + leaf noRoutesRx { + config "false"; + type uint32; + description "No routes for packets at ingress"; + } + + // Ephemeral data + leaf addrErrorRx { + config "false"; + type uint32; + description "Address error in packets at ingress"; + } + + // Ephemeral data + leaf unknownProtoRx { + config "false"; + type uint32; + description "Unknown protocol in packets at ingress"; + } + + // Ephemeral data + leaf truncatedPktsRx { + config "false"; + type uint32; + description "Truncated packets at ingress"; + } + + // Ephemeral data + leaf forwardgramsRx { + config "false"; + type uint64; + description "Forwardgrams at ingress"; + } + + // Ephemeral data + leaf reassemblyRequiredRx { + config "false"; + type uint32; + description "Reassembly required at ingress"; + } + + // Ephemeral data + leaf reassemblySuccessfulRx { + config "false"; + type uint32; + description "Reassembly successful at ingress"; + } + + // Ephemeral data + leaf reassemblyFailedRx { + config "false"; + type uint32; + description "Reassembly failed at ingress"; + } + + // Ephemeral data + leaf discardedPktsRx { + config "false"; + type uint32; + description "Discarded packets at ingress"; + } + + // Ephemeral data + leaf deliveredPktsRx { + config "false"; + type uint64; + description "Delivered packets at ingress"; + } + + // Ephemeral data + leaf mcastPktsRx { + config "false"; + type uint64; + description "Multicast packets at ingress"; + } + + // Ephemeral data + leaf mcastBytesRx { + config "false"; + type uint64; + description "Multicast bytes at ingress"; + } + + // Ephemeral data + leaf pktsSentTx { + config "false"; + type uint64; + description "Packets sent at egress"; + } + + // Ephemeral data + leaf bytesSentTx { + config "false"; + type uint64; + description "Bytes sent at egress"; + } + + // Ephemeral data + leaf sentRequestsTx { + config "false"; + type uint64; + description "sent requests at egress"; + } + + // Ephemeral data + leaf noRoutesTx { + config "false"; + type uint32; + description "No routes for packets at egress"; + } + + // Ephemeral data + leaf forwardgramsTx { + config "false"; + type uint64; + description "Forwardgrams at egress"; + } + + // Ephemeral data + leaf discardedPktsTx { + config "false"; + type uint32; + description "Discarded packets at egress"; + } + + // Ephemeral data + leaf fragRequiredTx { + config "false"; + type uint32; + description "Fragmentation required at egress"; + } + + // Ephemeral data + leaf fragSuccesfulTx { + config "false"; + type uint32; + description "Fragmentation successfully done at egress"; + } + + // Ephemeral data + leaf fragFailedTx { + config "false"; + type uint32; + description "Fragmentation failed at egress"; + } + + // Ephemeral data + leaf fragCreatesTx { + config "false"; + type uint32; + description "Fragcreates at egress"; + } + + // Ephemeral data + leaf transmitsTx { + config "false"; + type uint64; + description "Transmits at egress"; + } + + // Ephemeral data + leaf mcastPktsTx { + config "false"; + type uint64; + description "Multicast packets at egress"; + } + + // Ephemeral data + leaf mcastBytesTx { + config "false"; + type uint64; + description "Multicast bytes at egress"; + } + + // Ephemeral data + leaf rpUcastPktsForwarded { + config "false"; + type uint32; + description "RP unicast packets forwarded"; + } + + // Ephemeral data + leaf rpUcastPktsOriginated { + config "false"; + type uint32; + description "RP unicast packets originated"; + } + + // Ephemeral data + leaf rpUcastPktsConsumed { + config "false"; + type uint32; + description "RP unicast packets consumed"; + } + + // Ephemeral data + leaf rpUcastBytesForwarded { + config "false"; + type uint32; + description "RP unicast bytes forwarded"; + } + + // Ephemeral data + leaf rpUcastBytesOriginated { + config "false"; + type uint32; + description "RP unicast bytes originated"; + } + + // Ephemeral data + leaf rpUcastBytesConsumed { + config "false"; + type uint32; + description "RP unicast bytes consumed"; + } + + // Ephemeral data + leaf rpMcastPktsForwarded { + config "false"; + type uint32; + description "RP multicast packets forwarded"; + } + + // Ephemeral data + leaf rpMcastPktsOriginated { + config "false"; + type uint32; + description "RP multicast packets originated"; + } + + // Ephemeral data + leaf rpMcastPktsConsumed { + config "false"; + type uint32; + description "RP multicast packets consumed"; + } + + // Ephemeral data + leaf rpMcastBytesForwarded { + config "false"; + type uint32; + description "RP multicast bytes forwarded"; + } + + // Ephemeral data + leaf rpMcastBytesOriginated { + config "false"; + type uint32; + description "RP multicast bytes originated"; + } + + // Ephemeral data + leaf rpMcastBytesConsumed { + config "false"; + type uint32; + description "RP multicast bytes consumed"; + } + } + + grouping ethpm_Entity-group { + description "Ethernet Port Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This class shall store the global configuration + // for a running EthPM instance. We have single EthPM + // in a system + container inst-items { + + uses ethpm_Inst-group; + description "Ethernet Port Manager Instance"; + } + } + + grouping ethpm_Inst-group { + description "Ethernet Port Manager Instance"; + leaf vlanTagNative { + type boolean; + description "Tag Native Vlan"; + } + + // System default layer + leaf systemDefaultLayer { + + type l1_Layer; + description "System Default Layer"; + } + + // System default admin st + leaf systemDefaultAdminSt { + + type l1_AdminSt; + description "System Default Admin St"; + } + + // System jumbo Mtu + leaf systemJumboMtu { + + type l1_Mtu; + description "System Jumbo MTU"; + } + + // System Interface Shutdown + leaf systemIfAdminState { + + type ethpm_SystemIfAdminState; + description "System Interface Admin State"; + } + + // System logging event + leaf logEvent { + + type l1_LogEventBitmap; + description "Logging Interface events"; + } + + // System logging level + leaf logLevel { + + type ethpm_SyslogLevel; + description "Logging level"; + } + leaf allowUnsupportedSfp { + type boolean; + default "true"; + description "Allow Unsupported SFP"; + } + + // Interface syslog info + leaf ifSyslogInfo { + + type ethpm_SyslogInfo; + description "Interface Syslog Info"; + } + + // Admin link-up syslog level + leaf adminLinkUpSyslogLevel { + + type ethpm_SyslogLevel; + description "Admin Link-Up Syslog Level"; + } + + // Admin link-down syslog level + leaf adminLinkDownSyslogLevel { + + type ethpm_SyslogLevel; + description "Admin Link-Down Syslog Level"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + container runtime-items { + + uses ethpm_InstRuntime-group; + description "Instance Entity"; + } + + // Global Error-disable recovery related configuration + container errdisrecover-items { + + uses ethpm_ErrDisRecover-group; + description "Error Disable Recovery Policy"; + } + + // This object stores the runtime state of vlan inside ethpm + container vlan-items { + list Vlan-list { + config "false"; + key "id"; + + uses ethpm_Vlan-group; + description "Vlan list"; + } + description "Vlan"; + } + + // This object stores the runtime state associated + // with a module inside ethpm + container module-items { + list Module-list { + config "false"; + key "id"; + + uses ethpm_Module-group; + description "Module list"; + } + description "Module"; + } + } + + grouping ethpm_InstRuntime-group { + description "Instance Entity"; + leaf staticRMacCfgRefCount { + config "false"; + type uint32; + description "Static Router MAC Config Reference Count"; + } + leaf pvlanTrunkCfgRefCount { + config "false"; + type uint32; + description "PVLAN Trunk Config Reference Count"; + } + leaf dot1qRefCount { + config "false"; + type uint32; + description "Dot1q Config Reference Count"; + } + leaf ethertypeRefCount { + config "false"; + type uint32; + description "Ether Type Config Reference Count"; + } + leaf l3SatportRefCount { + config "false"; + type uint32; + description "L3 Satellite Port Reference Count"; + } + leaf snmpIfTblLastChange { + config "false"; + type union { + type string; + type uint64; + } + description "Snmp if Table Last Change"; + } + leaf issuPacerRefCount { + config "false"; + type uint32; + description "ISSU Pacer Reference Count"; + } + leaf featurePongState { + config "false"; + type uint8; + description "Feature Pong Status"; + } + leaf slowdrainCongCoreConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Core Conf Check State"; + } + leaf slowdrainCongEdgeConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Edge Conf Check State"; + } + leaf slowdrainPausConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Core Conf-Check Status"; + } + leaf slowdrainPausEdgeConfChkState { + config "false"; + type uint8; + description "Slow Drain Pause Edge Conf-Check Status"; + } + leaf eeeRefCount { + config "false"; + type uint32; + description "EEE Reference Count"; + } + leaf fabpathCfgRefCount { + config "false"; + type uint32; + description "Fabric Path Config Lock Reference Count"; + } + leaf dceSwId { + config "false"; + type uint32; + description "DCE Switch ID"; + } + leaf lifLoopbackDone { + config "false"; + type boolean; + description "LIF Loopback Done"; + } + leaf numBundles { + config "false"; + type uint32; + description "Number of Bundles"; + } + + // bundle If list + leaf bundleIfList { + config "false"; + + type ethpm_IfBundleList1024; + description "Bundle Interface List"; + } + + // Configured loopback interfaces + leaf lbIfs { + config "false"; + + type ethpm_LbBitmap; + description "Configured Loopback Interfaces"; + } + } + + grouping ethpm_ErrDisRecover-group { + description "Error Disable Recovery Policy"; + + // Error disable recovery interval + leaf errDisRecovIntvl { + + type ethpm_ErrDisRecovIntvl; + description "Error Disable Recovery Interval"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + container Event-items { + list Event-list { + key "event"; + + uses ethpm_Event-group; + description "Error Disabled Recovery Event list"; + } + description "Error Disabled Recovery Event"; + } + + container rserrDisRecoverPolCons-items { + + uses ethpm_RsErrDisRecoverPolCons_source-group; + description "ErrDisableRecovery Policy Attachment"; + } + } + + grouping ethpm_Event-group { + description "Error Disabled Recovery Event"; + + // Error disable event type + leaf event { + + type ethpm_ErrDisEvent; + description "Event"; + } + leaf detect { + type boolean; + default "true"; + description "Detection Enabled"; + } + leaf recover { + type boolean; + default "false"; + description "Recovery Enabled"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + } + + grouping ethpm_Vlan-group { + description "Vlan"; + + // vlan id TODO: how do we add properties to rn + // for objects owned by process? Currently + // compilation seems to fails if owner="oper" + leaf id { + config "false"; + + type l2_DomId; + description "Vlan ID"; + } + leaf numIf { + config "false"; + type uint32; + description "Number of Interfaces"; + } + leaf flag { + config "false"; + type uint32; + description "Vlan Flags"; + } + + // shut state of vlan + leaf shutState { + config "false"; + + type l1_AdminSt; + description "Shut State of VLAN"; + } + + // state of vlan + leaf state { + config "false"; + + type l2_DomAdminSt; + description "Operational State of VLAN"; + } + } + + grouping ethpm_Module-group { + description "Module"; + leaf id { + config "false"; + type uint8; + description "Module ID"; + } + leaf numPortTypes { + config "false"; + type uint32; + description "Number of Port-Types"; + } + leaf swCardId { + config "false"; + type uint16; + description "Software Card ID"; + } + + // cfgd ports + leaf cfgdPorts { + config "false"; + + type ethpm_PortBitmap; + description "Configured Ports"; + } + leaf flags { + config "false"; + type uint32; + description "Module Flags"; + } + leaf runtimeNumPorts { + config "false"; + type uint8; + description "Runtime Number of Ports"; + } + + // module type + leaf moduleType { + config "false"; + + type l1_Module; + description "Module Type"; + } + leaf isOffline { + config "false"; + type boolean; + description "Module Offline Status"; + } + leaf lcNodeAddress { + config "false"; + type uint32; + description "LC Node Address"; + } + leaf portCfgSap { + config "false"; + type uint16; + description "Port Config SAP"; + } + + // runtime ports + leaf runtimePorts { + config "false"; + + type ethpm_PortBitmap; + description "Runtime Ports"; + } + } + + grouping im_Breakout-group { + description "Interface Breakout"; + container module-items { + list Mod-list { + key "id"; + + uses im_Mod-group; + description "Module list"; + } + description "Module"; + } + } + + grouping im_Mod-group { + description "Module"; + leaf id { + type uint8 { + range "1..32"; + } + description "Module Id"; + } + + // Front-panel port + container fport-items { + list FpP-list { + key "id"; + + uses im_FpP-group; + description "Front Panel Port list"; + } + description "Front Panel Port"; + } + } + + grouping im_FpP-group { + description "Front Panel Port"; + leaf id { + type uint8 { + range "1..108"; + } + description "Front Panel port id"; + } + + // Breakout Map + leaf breakoutMap { + + type im_BreakoutMapT; + description "Breakout Map"; + } + } + + grouping im_Entity-group { + description "Interface Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This class shall store the global configuration + // for a running GIM instance. We have single GIM + // in a system + container inst-items { + + uses im_Inst-group; + description "Interface Manager Instance"; + } + } + + grouping im_Inst-group { + description "Interface Manager Instance"; + + leaf mode100M { + + type im_Mode100M; + description "Mode 100M"; + } + + leaf modeHwProfile { + config "false"; + + type im_ModeHwProfile; + description "Mode 4C, 2C+4Q"; + } + + // default VDC state + leaf vdcSt { + config "false"; + + type l1_VdcSt; + description "Default VDC State"; + } + + leaf BreakoutProfile { + config "false"; + + type im_BreakoutProfile; + description "Breakout Profile"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // This class shall store the software/feature capability + // information for the GIM instance + container cap-items { + list Capability-list { + config "false"; + key "id"; + + uses im_Capability-group; + description "Capability list"; + } + description "Capability"; + } + + // This object stores the runtime state associated + // with a module inside GIM + container module-items { + list Module-list { + config "false"; + key "id"; + + uses im_Module-group; + description "Module list"; + } + description "Module"; + } + } + + grouping im_Capability-group { + description "Capability"; + leaf id { + config "false"; + type uint32; + description "Capability Id"; + } + leaf autoInstCpbl { + config "false"; + type boolean; + description "Auto-Install Capability"; + } + leaf isInstalled { + config "false"; + type boolean; + description "Installed State"; + } + } + + grouping im_Module-group { + description "Module"; + leaf id { + config "false"; + type uint8; + description "Module Id"; + } + leaf numPorts { + config "false"; + type uint8; + description "Number of Port"; + } + + // Module type + leaf moduleType { + config "false"; + + type l1_Module; + description "Module Type"; + } + leaf swCardId { + config "false"; + type uint16; + description "Software Card Id"; + } + leaf lcNodeAddress { + config "false"; + type uint32; + description "LC Node Address"; + } + leaf portCfgSap { + config "false"; + type uint16; + description "Port Config Sap"; + } + leaf isPresent { + config "false"; + type boolean; + description "Module Presence Status"; + } + leaf runtimeFlag { + config "false"; + type uint8; + description "Runtime Flag"; + } + leaf moduleInitiEvalFlag { + config "false"; + type uint32; + description "Module Initialize Evaluation Flag"; + } + leaf lcExceptionFlag { + config "false"; + type uint32; + description "LC Exception Flag"; + } + leaf lcInsertPldSz { + config "false"; + type uint32; + description "LC Insertion Payload Size"; + } + + // This object stores the information about + // different port-types in a module + container portinfo-items { + list PortInfo-list { + config "false"; + key "phyLayer"; + + uses im_PortInfo-group; + description "Information on different port-types in a module list"; + } + description "Information on different port-types in a module"; + } + } + + grouping im_PortInfo-group { + description "Information on different port-types in a module"; + + // Physical Layer + leaf phyLayer { + config "false"; + + type l1_PhyLayer; + description "Physical Layer"; + } + leaf numPorts { + config "false"; + type uint8; + description "Number of Ports"; + } + leaf type { + config "false"; + type uint8; + description "Specific Type of the Object or Component"; + } + } + + grouping pc_Entity-group { + description "Port Channel Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This object holds per port channel instance information + container pc-items { + + uses pc_Inst-group; + description "Port Channel Instance"; + } + } + + grouping pc_Inst-group { + description "Port Channel Instance"; + + // Hash distribution type + leaf hashDist { + + type pc_PCHashDist; + description "Hash Distribution Type"; + } + + // Load defer timeout + leaf loadDeferTime { + + type pc_LoadDeferTime; + description "Load Defer Timeout"; + } + + // Max number of port-channels + leaf maxChannels { + config "false"; + + type pc_NumChannels; + description "Max Number of Port-channels"; + } + + // Number of used port-channels + leaf usedChannels { + config "false"; + + type pc_NumChannels; + description "Number of Used Port-channels"; + } + + // Number of free port-channels + leaf freeChannels { + config "false"; + + type pc_NumChannels; + description "Number of Free Port-channels"; + } + + // Percentage of used port-channels + leaf pcntChannels { + config "false"; + + type pc_PcntChannels; + description "Percentage of Used Port-channels"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + } + + grouping flexlink_Flexlink-group { + description "Flexlink configuration and management"; + container if-items { + list Interface-list { + key "id"; + + uses flexlink_Interface-group; + description "Interface configuration and management for Flexlink list"; + } + description "Interface configuration and management for Flexlink"; + } + } + + grouping flexlink_Interface-group { + description "Interface configuration and management for Flexlink"; + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface ID"; + } + + // switchport backup interface + leaf backupIntf { + + type nw_IfId; + description "Backup Interface configuration for flexlink"; + } + leaf fastConv { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } + } + default "disabled"; + description "multicast fast-convergence configuration for flexlink"; + } + + // switchport backup interface preemption mode + leaf preemptionMode { + + type flexlink_Mode; + description "switchport backup interface preemption mode configuration for flexlink"; + } + + // switchport backup interface preemption delay + leaf preemptionDelay { + + type flexlink_Delay; + description "switchport backup interface preemption delay configuration for flexlink"; + } + } + + grouping l2fm_Entity-group { + description "l2fm"; + + // mac-learn + leaf macLearn { + + type l2fm_Learning; + description "mac-learn Enable Disable"; + } + + leaf macLoopDetect { + + type l2fm_LoopDetect; + description "mac loop-detect port-down enable Disable"; + } + + leaf macGuardVpcPeergwMac { + + type l2fm_GuardVpcPeergwMac; + description "mac guard vpc peer GW Mac Enable Disable"; + } + + leaf macMoveNotification { + + type l2fm_MacMoveNotification; + description "mac move notification Enable disable"; + } + + // Holds macMove trap information + container macmovetrap-items { + + uses l2fm_MacMoveTrap-group; + description "Mac Move Trap"; + } + } + + grouping l2fm_MacMoveTrap-group { + description "Mac Move Trap"; + leaf macMoveAddress { + config "false"; + type address_Mac; + description "Mac Move Address"; + } + leaf macMoveVlanNumber { + config "false"; + type uint32; + description "Mac Move Vlan Number"; + } + leaf macMoveFromPortID { + config "false"; + type uint32; + description "Mac Move From Port ID"; + } + leaf macMoveToPortID { + config "false"; + type uint32; + description "Mac Move To Port ID"; + } + leaf macMoveTime { + config "false"; + type string; + description "Mac Move Time"; + } + } + + grouping l2pt_L2protocol-group { + description "L2 Protocol Tunneling configuration and management"; + + leaf cos { + + type l2pt_Cos; + description "L2PT Cos Value"; + } + container if-items { + list If-list { + key "id"; + + uses l2pt_If-group; + description "Interface configuration and management for L2PT list"; + } + description "Interface configuration and management for L2PT"; + } + } + + grouping l2pt_If-group { + description "Interface configuration and management for L2PT"; + leaf id { + type string; + description "Interface ID"; + } + + container tunnel-items { + + uses l2pt_Tunnel-group; + description "Tunneling Protocols on Interface"; + } + } + + grouping l2pt_Tunnel-group { + description "Tunneling Protocols on Interface"; + leaf cdp { + type boolean; + description "Cisco Discovery Protocol"; + } + leaf stp { + type boolean; + description "Spanning Tree Protocol"; + } + leaf vtp { + type boolean; + description "VLAN Trunking Protocol"; + } + leaf lldp { + type boolean; + description "Link Layer Discovery Protocol"; + } + leaf lacp { + type boolean; + description "Link Aggregation Control Protocol"; + } + leaf doubleTag { + type boolean; + description "Enable or Disable Double Tag for L2PT"; + } + + leaf cdpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Cisco Discovery Protocol"; + } + + leaf stpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Spanning Tree Protocol"; + } + + leaf vtpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for VLAN Trunking Protocol"; + } + + leaf lldpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Link Layer Discovery Protocol"; + } + + leaf lacpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Link Aggregation Control Protocol"; + } + + leaf cdpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Cisco Discovery Protocol"; + } + + leaf stpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Spanning Tree Protocol"; + } + + leaf vtpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for VLAN Trunking Protocol"; + } + + leaf lldpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Link Layer Discovery Protocol"; + } + + leaf lacpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Link Aggregation Control Protocol"; + } + } + + grouping l2rib_Entity-group { + description "L2RIB Entity"; + + // Global L2RIB instance configuration and operation state. + // There is only one instance of L2RIB at any time. + container inst-items { + + uses l2rib_Inst-group; + description "L2RIB Instance"; + } + } + + grouping l2rib_Inst-group { + description "L2RIB Instance"; + + // L2RIB EVPN Host MAC Mobility Object + container evpn-items { + + uses l2rib_EvpnMACmob-group; + description "EVPN MAC mobility cfg"; + } + + container clients-items { + + uses l2rib_Clients-group; + description "This model is container of L2RIB clients"; + } + + container producers-items { + + uses l2rib_Producers-group; + description "This model is container of L2RIB producers"; + } + + container registrations-items { + + uses l2rib_Registrations-group; + description "L2RIB Registrations"; + } + + container topology-items { + + uses l2rib_Topology-group; + description "Topology Object"; + } + } + + grouping l2rib_EvpnMACmob-group { + description "EVPN MAC mobility cfg"; + leaf ddMoves { + type uint16 { + range "1..1000"; + } + default "5"; + description "Dup Detect MAC num-moves (def:5)"; + } + leaf ddDuration { + type uint16 { + range "2..36000"; + } + default "180"; + description "Dup Detect MAC duration secs (def:180)"; + } + leaf drTimeout { + type uint16 { + range "0..1800"; + } + default "30"; + description "Dup MAC Recover timeout secs (def:30)"; + } + leaf drRetryCnt { + type uint16 { + range "0..3000"; + } + default "3"; + description "Dup MAC Recover retry cnt (def:3)"; + } + } + + grouping l2rib_Clients-group { + description "This model is container of L2RIB clients"; + container client-items { + list Client-list { + config "false"; + key "id"; + + uses l2rib_Client-group; + description "This model containes information a L2RIB client list"; + } + description "This model containes information a L2RIB client"; + } + } + + grouping l2rib_Client-group { + description "This model containes information a L2RIB client"; + leaf id { + config "false"; + type uint8; + description "Client identifier"; + } + leaf uuid { + config "false"; + type uint32; + description "Client universally unique identifier"; + } + leaf name { + config "false"; + type string; + description "Client process suffix"; + } + } + + grouping l2rib_Producers-group { + description "This model is container of L2RIB producers"; + container prod-items { + list Producer-list { + config "false"; + key "name id clientId objType"; + + uses l2rib_Producer-group; + description "Producer list"; + } + description "Producer"; + } + } + + grouping l2rib_Producer-group { + description "Producer"; + leaf name { + config "false"; + type string; + description "Producer Name"; + } + leaf id { + config "false"; + type uint32; + description "Producer identifier"; + } + leaf clientId { + config "false"; + type uint8; + description "Client identifier"; + } + leaf objType { + config "false"; + type string; + description "Type of object"; + } + leaf adminDist { + config "false"; + type uint32; + description "Admin distance"; + } + leaf purgeTime { + config "false"; + type uint32; + description "Producer purge timer"; + } + + leaf state { + config "false"; + + type l2rib_ProducerStT; + description "Producer state"; + } + leaf flags { + config "false"; + type uint32; + description "Producer Flags"; + } + } + + grouping l2rib_Registrations-group { + description "L2RIB Registrations"; + container client-items { + list RegClient-list { + config "false"; + key "name"; + + uses l2rib_RegClient-group; + description "Global Registraion Entries list"; + } + description "Global Registraion Entries"; + } + } + + grouping l2rib_RegClient-group { + description "Global Registraion Entries"; + leaf id { + config "false"; + type uint8; + description "Client identifier"; + } + leaf name { + config "false"; + type string; + description "Client process suffix"; + } + container topo-items { + list RegTopo-list { + config "false"; + key "id objType"; + + uses l2rib_RegTopo-group; + description "Registrations identified based on topology list"; + } + description "Registrations identified based on topology"; + } + } + + grouping l2rib_RegTopo-group { + description "Registrations identified based on topology"; + leaf id { + config "false"; + type string; + description "Topology identifier"; + } + leaf objType { + config "false"; + type string; + description "Object type"; + } + leaf prodName { + config "false"; + type string; + description "Producer name"; + } + } + + grouping l2rib_Topology-group { + description "Topology Object"; + + // This object holds the topology information + container topo-items { + list Topo-list { + config "false"; + key "topoId"; + + uses l2rib_Topo-group; + description "This model contains information of topology object list"; + } + description "This model contains information of topology object"; + } + } + + grouping l2rib_Topo-group { + description "This model contains information of topology object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf name { + config "false"; + type string; + description "Topology name"; + } + leaf txId { + config "false"; + type uint32; + description "Transaction ID for Topology Ack"; + } + leaf rcvdAck { + config "false"; + type boolean; + description "Flag to Indicate Topology Ack"; + } + + // flags + leaf flags { + config "false"; + + type l2rib_TopoFlagsT; + description " Topology operational flags"; + } + + // sub flags + leaf subFlags { + config "false"; + + type l2rib_TopoSubFlagsT; + description "Topology operational sub category flags"; + } + + // This object holds the VNI attributes of topology + container vni_attr-items { + + uses l2rib_TopoVniAttr-group; + description "This model contains VNI attributes of topology"; + } + + // This object holds the EVI attributes of topology + container evi_attr-items { + + uses l2rib_TopoEviAttr-group; + description "This model contains EVI attributes of topology"; + } + + container mac-items { + + uses l2rib_Mac-group; + description + "This model is contianer of all Mac-routes under + a topology."; + } + + container macip-items { + + uses l2rib_MacIp-group; + description + "This model is container of all Mac-Ip route + objects under a topology"; + } + + container floodlist-items { + + uses l2rib_FloodList-group; + description "Flood-List"; + } + } + + grouping l2rib_TopoVniAttr-group { + description "This model contains VNI attributes of topology"; + leaf id { + config "false"; + type uint32; + description "virtual network identifier"; + } + + // Topology Type + leaf topoType { + config "false"; + + type l2rib_TopoTypeT; + description "Topology Type"; + } + + // Encap Type + leaf encapType { + config "false"; + + type l2rib_EncapTypeT; + description "Encapsulation type of VNI"; + } + leaf iod { + config "false"; + type uint32; + description "Ordinial information of VNI "; + } + leaf ifHdl { + config "false"; + type uint32; + description "Handle value of nve interface"; + } + leaf vtepIp { + config "false"; + type address_Ip; + description "VTEP IP address information of VNI"; + } + leaf emulatedVtepIp { + config "false"; + type address_Ip; + description "Emulated VTEP IP address information of VNI"; + } + leaf emulatedRoIp { + config "false"; + type address_Ip; + description "virtual ip address used for re-origination"; + } + leaf vrfId { + config "false"; + type uint32; + description "Value of vrf id for vni"; + } + leaf rMac { + config "false"; + type address_Mac; + description "Local Router MAC (For L3 VNIs)"; + } + leaf vMac { + config "false"; + type address_Mac; + description "Local Virtual MAC (For L3 VNIs)"; + } + leaf vMacRo { + config "false"; + type address_Mac; + description "Local Virtual MAC RO (For L3 VNIs)"; + } + } + + grouping l2rib_TopoEviAttr-group { + description "This model contains EVI attributes of topology"; + leaf id { + config "false"; + type uint32; + description "EVI identifier information"; + } + + // Topology Type + leaf topoType { + config "false"; + + type l2rib_TopoTypeT; + description "Topology Type"; + } + + // Encap Type + leaf encapType { + config "false"; + + type l2rib_EncapTypeT; + description "Encapsulation type of EVI"; + } + leaf ifHdl { + config "false"; + type uint32; + description "Handle value of nve interface"; + } + leaf vtepIp { + config "false"; + type address_Ip; + description "VTEP IP address information of VNI"; + } + leaf emulatedVtepIp { + config "false"; + type address_Ip; + description "Emulated VTEP IP address information of VNI"; + } + leaf bdLabel { + config "false"; + type uint32; + description "BD Label informa of EVI"; + } + } + + grouping l2rib_Mac-group { + description + "This model is contianer of all Mac-routes under + a topology."; + container mac_entry-items { + list MacEntry-list { + config "false"; + key "macAddr"; + + uses l2rib_MacEntry-group; + description "This model contains information of each mac-route list"; + } + description "This model contains information of each mac-route"; + } + } + + grouping l2rib_MacEntry-group { + description "This model contains information of each mac-route"; + leaf macAddr { + config "false"; + type address_Mac; + description "Physical address of mac-route"; + } + container prod-items { + list MacProducer-list { + config "false"; + key "producer"; + + uses l2rib_MacProducer-group; + description "Mac Producer Object list"; + } + description "Mac Producer Object"; + } + } + + grouping l2rib_MacProducer-group { + description "Mac Producer Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf macAddr { + config "false"; + type address_Mac; + description "MAC address of mac route object"; + } + leaf producer { + config "false"; + type string; + description "Name of mac route producer"; + } + + leaf flags { + config "false"; + + type l2rib_MacRtFlagsT; + description "List of flags enabled for mac-route"; + } + + leaf genericFlags { + config "false"; + + type l2rib_GenericFlagsT; + description "Generic flags of l2rib object"; + } + leaf seqNo { + config "false"; + type uint32; + description "Sequence Number"; + } + leaf nh { + config "false"; + type string; + description "List of next-hop address"; + } + + leaf rtResolution { + config "false"; + + type l2rib_MacRtResolutionT; + description "MAC route resolution"; + } + leaf fwdSt { + config "false"; + type string; + description "Forwarding state"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + leaf esi { + config "false"; + type string; + description "Ethernet-segment identifier"; + } + leaf pcInfo { + config "false"; + type string; + description "Name of port channel Interface"; + } + leaf siteOrigin { + config "false"; + type string; + description "Site of origin"; + } + leaf plNh { + config "false"; + type string; + description "Resultant next hop of path-list category"; + } + } + + grouping l2rib_MacIp-group { + description + "This model is container of all Mac-Ip route + objects under a topology"; + container macip_entry-items { + list MacIpEntry-list { + config "false"; + key "macAddr ip"; + + uses l2rib_MacIpEntry-group; + description "This model contais information of mac-ip entry list"; + } + description "This model contais information of mac-ip entry"; + } + } + + grouping l2rib_MacIpEntry-group { + description "This model contais information of mac-ip entry"; + leaf macAddr { + config "false"; + type address_Mac; + description "Mac address of mac-ip route"; + } + leaf ip { + config "false"; + type address_Ip; + description "Ip address of mac-ip route"; + } + container prod-items { + list MacIpProducer-list { + config "false"; + key "producer"; + + uses l2rib_MacIpProducer-group; + description "Mac Ip Producer Object list"; + } + description "Mac Ip Producer Object"; + } + } + + grouping l2rib_MacIpProducer-group { + description "Mac Ip Producer Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf macAddr { + config "false"; + type address_Mac; + description "Mac address of mac-ip route"; + } + leaf hostIp { + config "false"; + type address_Ip; + description "Ip Address"; + } + leaf producer { + config "false"; + type string; + description "Mac Route Producer"; + } + + leaf flags { + config "false"; + + type l2rib_MacIpRtFlagsT; + description "List of flags enabled in mac-ip route"; + } + + leaf genericFlags { + config "false"; + + type l2rib_GenericFlagsT; + description "Generic flags of l2rib object"; + } + leaf seqNo { + config "false"; + type uint32; + description "Sequence Number"; + } + leaf peerId { + config "false"; + type uint32; + description "Peer Id"; + } + leaf peerIfIdx { + config "false"; + type uint64; + description "Peer interface index"; + } + leaf nh { + config "false"; + type string; + description "List of next hop address"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + leaf esi { + config "false"; + type string; + description "Ethernet-segment identifier"; + } + leaf pcInfo { + config "false"; + type string; + description "Name of port channel interface"; + } + leaf siteOrigin { + config "false"; + type string; + description "Site of origin"; + } + leaf l3TopoId { + config "false"; + type uint32; + description "Layer 3 topology identifier"; + } + } + + grouping l2rib_FloodList-group { + description "Flood-List"; + container fl-items { + list Fl-list { + config "false"; + key "ip"; + + uses l2rib_Fl-group; + description "Flood list Object list"; + } + description "Flood list Object"; + } + } + + grouping l2rib_Fl-group { + description "Flood list Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf ip { + config "false"; + type address_Ip; + description "Ip address of flood-list entry"; + } + leaf serviceNode { + config "false"; + type boolean; + description "Service Node"; + } + leaf peerId { + config "false"; + type uint32; + description "Peer identifier information"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + } + + grouping portsecurity_PortSecurity-group { + description "Port Security configuration and management at interface"; + + // DN: sys/portsecurity/table + container table-items { + + uses portsecurity_PortSecurityTable-group; + description "MAC Address Table for Secure Entries"; + } + + // DN: sys/portsecurity/if-[if] + container if-items { + list PortSecurityIf-list { + key "if"; + + uses portsecurity_PortSecurityIf-group; + description "Port Security configuration and management at interface list"; + } + description "Port Security configuration and management at interface"; + } + } + + grouping portsecurity_PortSecurityTable-group { + description "MAC Address Table for Secure Entries"; + + // DN: sys/portsecurity/table/vlan-[vlan-x]-mac- + container vlan-items { + list MacEntry-list { + config "false"; + key "vlan macAddress"; + + uses portsecurity_MacEntry-group; + description "Secure mac address entry list"; + } + description "Secure mac address entry"; + } + } + + grouping portsecurity_MacEntry-group { + description "Secure mac address entry"; + leaf macAddress { + config "false"; + type address_Mac; + description "Secure MAC address value"; + } + leaf vlan { + config "false"; + type string; + description "Vlan for secure Mac entry"; + } + + leaf if { + config "false"; + + type nw_IfId; + description "Interface id of Secure MAC entry"; + } + leaf static { + config "false"; + type boolean; + description "Secure MAC entry is static if true"; + } + leaf sticky { + config "false"; + type boolean; + description "Secure MAC entry is sticky if true"; + } + } + + grouping portsecurity_PortSecurityIf-group { + description "Port Security configuration and management at interface"; + + // portsecurity if id + leaf if { + + type nw_IfId; + description "Interface id of port with Port Security"; + } + leaf portSecurity { + type boolean; + default "false"; + description "Enable or disable Port Security on interface"; + } + leaf aging { + type uint16 { + range "0..1440"; + } + default "0"; + description "Aging time of mac addresses on interface"; + } + + leaf agingType { + + type portsecurity_AgingType; + description "Aging type of mac addresses on interface"; + } + + leaf violation { + + type portsecurity_ViolationMode; + description "Security violation modes"; + } + leaf maximum { + type uint16 { + range "1..1025"; + } + default "1"; + description "Maximum number of secure mac addresses on interface"; + } + leaf sticky { + type boolean; + default "false"; + description "Enable or disable sticky secure addresses on interface"; + } + + // DN: sys/portsecurity/if-[if]/vlan-[vlan-x] + container vlan-items { + list PortSecurityVlan-list { + key "vlanId"; + + uses portsecurity_PortSecurityVlan-group; + description "Port Security configuration and management for specific VLAN at interface list"; + } + description "Port Security configuration and management for specific VLAN at interface"; + } + + // DN: sys/portsecurity/if-[if]/mac-[macAddress] + container mac-items { + list SecureMac-list { + key "macAddress"; + + uses portsecurity_SecureMac-group; + description "Static secure MAC at interface list"; + } + description "Static secure MAC at interface"; + } + } + + grouping portsecurity_PortSecurityVlan-group { + description "Port Security configuration and management for specific VLAN at interface"; + leaf vlanId { + type string; + description "VLAN id for Port Security"; + } + leaf vlanMaximum { + type uint16 { + range "0..1025"; + } + description "Per VLAN maximum number of secure mac addresses on interface"; + } + + // DN: sys/portsecurity/if-[if]/vlan-[vlan-x]/mac-[macAddress] + container mac-items { + list SecureMacEntry-list { + key "macAddress"; + + uses portsecurity_SecureMacEntry-group; + description "Static secure MAC at interface list"; + } + description "Static secure MAC at interface"; + } + } + + grouping portsecurity_SecureMacEntry-group { + description "Static secure MAC at interface"; + leaf macAddress { + type address_Mac; + description "Static secure MAC address on interface"; + } + } + + grouping portsecurity_SecureMac-group { + description "Static secure MAC at interface"; + leaf macAddress { + type address_Mac; + description "Static secure MAC address on interface"; + } + } + + grouping pvlan_PrivateVlan-group { + description "Private VLAN (PVLAN) configuration and management"; + + // Fex Trunk Enable + leaf fexTrunk { + + type nw_AdminSt; + default "disabled"; + description "Enable or disable PVLANs for FEX trunk"; + } + + // Abstraction for a layer-1 interface in the system. + // The properties apply to all types of interfaces DN: sys/pvlan/svi-[[CEncapType]] + container svi-items { + list Svi-list { + key "if"; + + uses pvlan_Svi-group; + description "SVI configuration for propagating L3 capabilities to secondary VLANs list"; + } + description "SVI configuration for propagating L3 capabilities to secondary VLANs"; + } + + // Abstraction for a layer-1 interface in the system. + // The properties apply to all types of interfaces DN: sys/pvlan/if-[[CIfIdType]] + container if-items { + list If-list { + key "if"; + + uses pvlan_If-group; + description "PVLAN port configurations list"; + } + description "PVLAN port configurations"; + } + + // Layer2 private-vlan domain DN: sys/pvlan/vlan-[[CEncapType]] + container vlan-items { + list Vlan-list { + key "id"; + + uses pvlan_Vlan-group; + description "VLAN configuration and operation for PVLAN list"; + } + description "VLAN configuration and operation for PVLAN"; + } + } + + grouping pvlan_Svi-group { + description "SVI configuration for propagating L3 capabilities to secondary VLANs"; + + leaf if { + + type nw_IfId; + description "Interface id of port with PVLAN"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_If-group { + description "PVLAN port configurations"; + + // pvlan if id + leaf if { + + type nw_IfId; + description "Interface id of port with PVLAN"; + } + + // access DN: sys/pvlan/if-[[CIfIdType]]/access + container access-items { + + uses pvlan_Access-group; + description "PVLAN access mode configurations on port"; + } + + // trunk DN: sys/pvlan/if-[[CIfIdType]]/trunk + container trunk-items { + + uses pvlan_Trunk-group; + description "PVLAN Trunk configuration tables"; + } + } + + grouping pvlan_Access-group { + description "PVLAN access mode configurations on port"; + + // access promiscuous port mapping DN: sys/pvlan/if-[[CIfIdType]]/access/promiscuous + container promiscuous-items { + + uses pvlan_AccessPromiscuous-group; + description "PVLAN promiscuous port configurations"; + } + + // DN: sys/pvlan/if-[[CIfIdType]]/access/secondary can be isolated or community + container secondary-items { + + uses pvlan_AccessSecondary-group; + description "Host VLAN access port configurations for isolated or community"; + } + } + + grouping pvlan_AccessPromiscuous-group { + description "PVLAN promiscuous port configurations"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_AccessSecondary-group { + description "Host VLAN access port configurations for isolated or community"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + leaf secondaryVlan { + type string; + description "Secondary VLAN configured as host VLAN"; + } + } + + grouping pvlan_Trunk-group { + description "PVLAN Trunk configuration tables"; + leaf nativeVlan { + type string; + default "vlan-1"; + description "Native VLAN on PVLAN trunk"; + } + + leaf trunkAllowedVlans { + + type l2_VlanBitmap; + description "Trunk Allowed VLANs on PVLAN trunk"; + } + + // trunk promiscous port mapping DN: sys/pvlan/if-[[CIfIdType]]/trunk/promiscuous + container promiscuous-items { + + uses pvlan_TrunkPromiscuousTable-group; + description "PVLAN Promiscuous Trunk Table"; + } + + // trunk secondary port mapping DN: sys/pvlan/if-[[CIfIdType]]/trunk/secondary + container secondary-items { + + uses pvlan_TrunkSecondaryTable-group; + description "PVLAN Isolated Trunk Table"; + } + } + + grouping pvlan_TrunkPromiscuousTable-group { + description "PVLAN Promiscuous Trunk Table"; + + // trunk promiscous vlan mapping entries DN: sys/pvlan/if-[[CIfIdType]]/trunk/promiscuous/primary-[[CEncapType]] + container primary-items { + list TrunkPromiscuousEntry-list { + key "primaryVlan"; + + uses pvlan_TrunkPromiscuousEntry-group; + description "PVLAN Promiscuous Trunk Entry list"; + } + description "PVLAN Promiscuous Trunk Entry"; + } + } + + grouping pvlan_TrunkPromiscuousEntry-group { + description "PVLAN Promiscuous Trunk Entry"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_TrunkSecondaryTable-group { + description "PVLAN Isolated Trunk Table"; + + // trunk secondary vlan mapping entries DN: sys/pvlan/if-[[CIfIdType]]/trunk/secondary/primary-[[CEncapType]] secondary can only be isolated + container primary-items { + list TrunkSecondaryEntry-list { + key "primaryVlan"; + + uses pvlan_TrunkSecondaryEntry-group; + description "PVLAN Isolated Trunk Entry list"; + } + description "PVLAN Isolated Trunk Entry"; + } + } + + grouping pvlan_TrunkSecondaryEntry-group { + description "PVLAN Isolated Trunk Entry"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + leaf secondaryVlan { + type string; + description "Isolated VLAN of the PVLAN domain"; + } + } + + grouping pvlan_Vlan-group { + description "VLAN configuration and operation for PVLAN"; + leaf id { + type string; + description "VLAN ID in a PVLAN"; + } + + // Private Vlan Type (Primary, Community, Isolated) + leaf pvlanType { + + type l2_PvlanTypes; + description "Type of VLAN in a PVLAN: Primary, Community or Isolated"; + } + + // Association of primary to secondary vlans + leaf association { + + type l2_VlanBitmap; + description "Association of Primay VLAN to Secondary VLANs in a PVLAN"; + } + } + + grouping vlanmgr_Entity-group { + description "Vlan Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "0..128"; + } + description "Name of the Entity of VlanMgr"; + } + + // This objects hold per vlan-mgr instance information. There is only + // one instance of vlan-mgr running in the system today + container inst-items { + + uses vlanmgr_Inst-group; + description "Vlan Manager Instance"; + } + } + + grouping vlanmgr_Inst-group { + description "Vlan Manager Instance"; + leaf longName { + type boolean; + default "false"; + description "Enable or Disable long name of 128 characters for VLAN"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "0..128"; + } + description "Name of the Instance of VlanMgr"; + } + + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Virtual Device Context ID"; + } + + // DomainMbrIf class + container dommbr-items { + list DomMbrIf-list { + config "false"; + key "ifIdx"; + + uses l2_DomMbrIf-group; + description "Domain Member Interface list"; + } + description "Domain Member Interface"; + } + } + + grouping l2_DomMbrIf-group { + description "Domain Member Interface"; + + // if-index (Secondary Key) + leaf ifIdx { + config "false"; + + type nw_IfId; + description "Interface Index"; + } + + // create-flag to track interface creation status + leaf createFlag { + config "false"; + + type l2_CreateState; + description "Create Flag"; + } + + // bundle_port_state to track port-channel's operational status + leaf bundlePortSt { + config "false"; + + type l1_OperSt; + description "Bundle Port State"; + } + + // phy-port-state to track port's physical state + leaf phyPortState { + config "false"; + + type l1_OperSt; + description "Physical Port State"; + } + + // pm-port-state to track port's protocol state + leaf pmPortState { + config "false"; + + type l1_OperSt; + description "Protocol State"; + } + + // port's access vlan + leaf accessVlan { + config "false"; + + type l2_DomId; + description "Access VLAN"; + } + + // port's native vlan + leaf nativeVlan { + config "false"; + + type l2_DomId; + description "Native VLAN"; + } + + // pm-port-mode to track port's mode (access, trunk etc) + leaf pmPortMode { + config "false"; + + type l1_Mode; + description "Port Mode"; + } + + // allowed-vlan-bitmap used to track vlans that are configured on the interface + leaf allowedVlanBmp { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlan Bitmap"; + } + + // up-vlan-bitmap used to track vlans that are up on the interface + leaf trunkPortUpVlanBmp { + config "false"; + + type l2_VlanBitmap; + description "Trunk Port Up Vlan Bitmap"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping nvo_Eps-group { + description "Container object for NVO endpoint."; + container oper_peer-items { + list OperPeer-list { + config "false"; + key "ip"; + + uses nvo_OperPeer-group; + description "Object containing operational information of peers learnt through segment routing encapsulation list"; + } + description "Object containing operational information of peers learnt through segment routing encapsulation"; + } + + container evpnmulticast-items { + + uses nvo_EvpnMulticast-group; + description "Enabler for Advertise EVPN Multicast."; + } + + container multisite-items { + + uses nvo_EvpnMultisiteBordergw-group; + description "Configuration of EVPN Multisite Border Gateway."; + } + container stormcontrol-items { + list EvpnStormControl-list { + key "name"; + + uses nvo_EvpnStormControl-group; + description "Evpn Storm-control information list"; + } + description "Evpn Storm-control information"; + } + container epId-items { + list Ep-list { + key "epId"; + + uses nvo_Ep-group; + description "Endpoint for Network Virtualization Overlay Object. list"; + } + description "Endpoint for Network Virtualization Overlay Object."; + } + } + + grouping nvo_OperPeer-group { + description "Object containing operational information of peers learnt through segment routing encapsulation"; + leaf ip { + config "false"; + type address_Ip; + description "Indicates IP address of learnt peer"; + } + leaf upTime { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE peer uptime in POSIX format"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered in POSIX format"; + } + + leaf operSt { + config "false"; + + type nvo_PeerStateT; + description "Indicates the operational state of the peer"; + } + container peer_adj-items { + list PeerAdjacency-list { + config "false"; + key "eviId"; + + uses nvo_PeerAdjacency-group; + description "Object containing operational information of peer adjacencies list"; + } + description "Object containing operational information of peer adjacencies"; + } + } + + grouping nvo_PeerAdjacency-group { + description "Object containing operational information of peer adjacencies"; + leaf eviId { + config "false"; + type uint32; + description "Indicates the EVI adjacent to the peer."; + } + leaf egressLbl { + config "false"; + type uint32; + description "Indicates the egress MPLS label for this adjacency"; + } + + leaf ownership { + config "false"; + + type nvo_OwnershipT; + description "Indicates the ownership type of the peer adjacency"; + } + + leaf operSt { + config "false"; + + type nvo_PeerStateT; + description "Indicates the operational state of the peer adjancency"; + } + } + + grouping nvo_EvpnMulticast-group { + description "Enabler for Advertise EVPN Multicast."; + + leaf state { + + type nvo_EvpnMcastStT; + description "Advertise EVPN Multicast State."; + } + } + + grouping nvo_EvpnMultisiteBordergw-group { + description "Configuration of EVPN Multisite Border Gateway."; + + leaf state { + + type nvo_MultisiteStateT; + description "Configures the state of EVPN Multisite Border-gateway."; + } + leaf siteId { + type uint64; + description "Configuration of EVPN Multisite Border Gateway."; + } + leaf delayRestoreTime { + type uint16 { + range "30..1000"; + } + default "180"; + description "Delay-Restore Time."; + } + } + + grouping nvo_EvpnStormControl-group { + description "Evpn Storm-control information"; + + leaf name { + + type nvo_EvpnSiteName; + description "Broadcast or Multicast or Unicast Name"; + } + leaf level { + type uint16 { + range "0..100"; + } + description "Storm Suppression Level"; + } + } + + grouping nvo_Ep-group { + description "Endpoint for Network Virtualization Overlay Object."; + + leaf epId { + + type nvo_EpIdT; + description "Network Virtualization Overlay Endpoint (NVE) ID"; + } + + leaf adminSt { + + type nw_AdminSt; + default "disabled"; + description "Administrative Up or Down state of the NVE."; + } + leaf descr { + type string; + description "Description for the NVE"; + } + + leaf sourceInterface { + + type nw_IfId; + description "Source Interface associated with the NVE."; + } + + leaf anycastIntf { + + type nw_IfId; + description "Anycast Source Interface associated with the NVE."; + } + + leaf multisiteBordergwInterface { + + type nw_IfId; + description "Interface representing the Multisite Border Gateway."; + } + leaf holdDownTime { + type uint16 { + range "1..1500"; + } + default "180"; + description "Hold Down Time."; + } + + leaf hostReach { + + type nvo_HostReachT; + default "Flood-and-learn"; + description "Host Reachability Protocol."; + } + leaf suppressARP { + type boolean; + description "Suppress ARP."; + } + + leaf mcastGroupL2 { + + type mcast_GrpIp; + description "Base multicast group address for L2."; + } + + leaf mcastGroupL3 { + + type mcast_GrpIp; + description "Base multicast group address for L3."; + } + leaf ingressReplProtoBGP { + type boolean; + description "VxLAN Ingress Replication Protocol BGP."; + } + leaf advertiseVmac { + type boolean; + default "false"; + description "Enable or disable Virtual MAC Advertisement in VPC mode."; + } + leaf virtualMac { + type address_Mac; + description "Custom Virtual Router MAC address configuration for VPC VxLAN."; + } + leaf controllerId { + type uint32; + default "0"; + description "Controller ID (applicable when host reachability proto is controller)."; + } + + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Enable or disable VxLAN configuration via controller."; + } + + leaf encapType { + + type nvo_EncapT; + default "unknown"; + description "Encapsulation Type."; + } + leaf autoRemapReplicationServers { + type boolean; + description "Configures auto remapping of VNIs for controller-based replication servers."; + } + + leaf operState { + config "false"; + + type l2_DomOperSt; + description "Operational State of the NVE."; + } + + leaf operStSrcLoopbackIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of NVE Source Loopback Interface."; + } + + leaf operStAnycastSrcIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of NVE Anycast Source Loopback Interface."; + } + + leaf operStMultisiteBrdrGwLoopbackIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of Multisite Border Gateway Loopback Interface."; + } + + leaf adminStMultisiteBrdrGwLoopackIntf { + config "false"; + + type nw_AdminSt; + description "Administrative State Up or Down of Multisite Border Gateway Loopback Interface."; + } + + leaf operEncapType { + config "false"; + + type nvo_EncapT; + default "unknown"; + description "Operational encapsulation type."; + } + leaf mac { + config "false"; + type address_Mac; + description "Local Router MAC address"; + } + leaf virtualRtrMac { + config "false"; + type address_Mac; + description "Virtual Router MAC address for VPC VxLAN."; + } + leaf virtualRtrMacReorig { + config "false"; + type address_Mac; + description "Virtual Router Re-origination MAC address for Multisite VxLAN."; + } + + leaf learningMode { + config "false"; + + type nvo_HostLearnModeT; + description "Indicates the host learning mode (Control plane or data plane)."; + } + leaf holdUpTime { + config "false"; + type uint16; + description "The time for which the Source Interface will be held operationally Up in VPC mode during bring-down."; + } + + leaf holdDownTimerExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Indicates the time after which the hold down timer will expire (in milliseconds)."; + } + + leaf holdUpTimerExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Indicates the time after which the hold up timer will expire (in milliseconds)."; + } + + leaf delayRestoreMsBrdrGwExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Time when delay restore for Multisite Border Gateway Loopback Interface will expire."; + } + leaf vpcVIPNotified { + config "false"; + type boolean; + description "Flag to indicate that Virtual IP configuration for the NVE source interface has been enabled in VPC mode."; + } + leaf primaryIp { + config "false"; + type address_Ipv4; + description "Primary IP of NVE Source Loopback Interface."; + } + leaf secondaryIp { + config "false"; + type address_Ipv4; + description "The Lowest Secondary IP of NVE Source Loopback Interface."; + } + leaf primaryIpv6 { + config "false"; + type address_Ipv6; + description "Primary IPv6 of NVE Source Loopback Interface."; + } + leaf secondaryIpv6 { + config "false"; + type address_Ipv6; + description "Secondary IPv6 of NVE Source Loopback Interface."; + } + leaf multisiteBrdrGwIntfIp { + config "false"; + type address_Ipv4; + description "IPv4 address assigned to Multisite Border Gateway Interface Loopback."; + } + + container peers-items { + + uses nvo_Peers-group; + description "Parent object for all peers."; + } + + container nws-items { + + uses nvo_Nws-group; + description "Container object for Virtual Network Entries (VNIs)."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + + container rsoperSourceInterface-items { + + uses nvo_RsOperSourceInterface_source-group; + description "Operational Up/Down status of the Source Interface."; + } + } + + grouping nvo_Peers-group { + description "Parent object for all peers."; + container st_ir_peer-items { + list StIRPeer-list { + config "false"; + key "ip"; + + uses nvo_StIRPeer-group; + description "Object containing operational properties for Static Ingress Replication Peer. list"; + } + description "Object containing operational properties for Static Ingress Replication Peer."; + } + container dyn_ir_peer-items { + list DyIRPeer-list { + config "false"; + key "ip"; + + uses nvo_DyIRPeer-group; + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer. list"; + } + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer."; + } + container dy_peer-items { + list DyPeer-list { + config "false"; + key "ip"; + + uses nvo_DyPeer-group; + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane). list"; + } + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane)."; + } + + // Commented out + // + // + // + // + // + // + // + container st_peer-items { + list StPeer-list { + key "ip"; + + uses nvo_StPeer-group; + description "Object containing operational properties for Controller-learnt Peer. list"; + } + description "Object containing operational properties for Controller-learnt Peer."; + } + } + + grouping nvo_StIRPeer-group { + description "Object containing operational properties for Static Ingress Replication Peer."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for Static IR Peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_Counters-group { + description "Counters for Nve Interface, VNI, peers."; + + // Ephemeral data + leaf txUcastpkts { + config "false"; + type uint64; + description "Indicates transmitted unicast packets."; + } + + // Ephemeral data + leaf txUcastbytes { + config "false"; + type uint64; + description "Indicates transmitted unicast bytes."; + } + + // Ephemeral data + leaf txMcastpkts { + config "false"; + type uint64; + description "Indicates transmitted multicast packets."; + } + + // Ephemeral data + leaf txMcastbytes { + config "false"; + type uint64; + description "Indicates transmitted multicast bytes."; + } + + // Ephemeral data + leaf rxUcastpkts { + config "false"; + type uint64; + description "Indicates received Unicast packets."; + } + + // Ephemeral data + leaf rxUcastbytes { + config "false"; + type uint64; + description "Indicates received Unicast bytes."; + } + + // Ephemeral data + leaf rxMcastpkts { + config "false"; + type uint64; + description "Indicates received Multicast packets."; + } + + // Ephemeral data + leaf rxMcastbytes { + config "false"; + type uint64; + description "Indicates received Multicast Bytes."; + } + } + + grouping nvo_DyIRPeer-group { + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for BGP IR Peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_DyPeer-group { + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane)."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for BGP-RNH or dataplane learnt peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf mac { + config "false"; + type address_Mac; + description "Indicates Peer MAC address."; + } + + leaf firstVNI { + config "false"; + + type nvo_VniT; + description "Indicates the first VNI on which the NVE peer was learnt."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_StPeer-group { + description "Object containing operational properties for Controller-learnt Peer."; + leaf ip { + type address_Ipv4; + description "Indicates Peer IP for Controller-learnt Peer."; + } + + leaf type { + + type tunnel_EpT; + description "NVO Peer type (mcast/physical)."; + } + leaf peerId { + type uint32; + description "Internal use only. Please leave unspecified."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf mac { + config "false"; + type address_Mac; + description "Indicates Peer MAC address."; + } + + leaf firstVNI { + config "false"; + + type nvo_VniT; + description "Indicates the first VNI on which the NVE peer was learnt."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_Nws-group { + description "Container object for Virtual Network Entries (VNIs)."; + container vni-items { + list Nw-list { + key "vni"; + + uses nvo_Nw-group; + description "Object containing configurable properties for a single Virtual Network ID (VNI). list"; + } + description "Object containing configurable properties for a single Virtual Network ID (VNI)."; + } + container opervni-items { + list OperNw-list { + config "false"; + key "vni"; + + uses nvo_OperNw-group; + description "Object containing operational properties for a single Virtual Network ID (VNI). list"; + } + description "Object containing operational properties for a single Virtual Network ID (VNI)."; + } + container vnis-items { + list NwRange-list { + key "vniRangeMin vniRangeMax"; + + uses nvo_NwRange-group; + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs). list"; + } + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs)."; + } + } + + grouping nvo_Nw-group { + description "Object containing configurable properties for a single Virtual Network ID (VNI)."; + + leaf vni { + + type nvo_VniT; + description "Configure Virtual Network ID"; + } + + leaf suppressARP { + + type nvo_SuppressARPT; + description "Enable or disable ARP suppression for VNI(s)."; + } + + leaf mcastGroup { + + type mcast_GrpIp; + description "Configures multicast group address for VNI(s)."; + } + leaf associateVrfFlag { + type boolean; + description "Configures VNI(s) as L3 VNI."; + } + leaf isLegacyMode { + type boolean; + description "Indicates whether Multicast group configuration for the VNI(s) is configured in legacy mode or not."; + } + + leaf multisiteIngRepl { + + type nvo_MultisiteIngReplStateT; + description "Enable or disable Multisite Ingress Replication for VNI(s)."; + } + + // This property is hidden (secure="yes") and used only for internal validation. + // Following are the expected values - + // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" + // CLI - "cli" + // Controller - "controller" + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Internal system property. Not intended for external use."; + } + + container IngRepl-items { + + uses nvo_IngRepl-group; + description "Object containing Ingress Replication configuration for VNI(s)."; + } + } + + grouping nvo_IngRepl-group { + description "Object containing Ingress Replication configuration for VNI(s)."; + + leaf proto { + + type nvo_IngReplProtoT; + description "Configure VxLAN Ingress Replication mode."; + } + + // This property is required specifically for configuring replication + // servers from the controller. When its value is replicationServer, it + // signifies that the static peers downloaded from controller should + // programmed wth vni hashing. This property directly maps to the + // replicationMode property in BdEntry MO in the aggregate model. + // And since this property is to be set only from the controller, it has + // been defined as hidden. So it will not be visible in REST/Netconf or + // any other external interface. + leaf replMode { + + type nvo_ReplModeT; + description "Replication Mode. For internal use only."; + } + container config_st_ir_peer-items { + list ConfigStIRPeer-list { + key "ip"; + + uses nvo_ConfigStIRPeer-group; + description "Configuration for Static Ingress Replication (IR) Peer. list"; + } + description "Configuration for Static Ingress Replication (IR) Peer."; + } + } + + grouping nvo_ConfigStIRPeer-group { + description "Configuration for Static Ingress Replication (IR) Peer."; + leaf ip { + type address_Ipv4; + description "Peer IP configuration for Static IR Peer."; + } + } + + grouping nvo_OperNw-group { + description "Object containing operational properties for a single Virtual Network ID (VNI)."; + + // Operational properties + leaf vni { + config "false"; + + type nvo_VniT; + description "Virtual Network ID."; + } + + leaf epId { + config "false"; + + type nvo_EpIdT; + description "Network Virtualization Overlay endpoint (NVE) ID."; + } + + leaf operMcastGroup { + config "false"; + + type mcast_GrpIp; + description "Indicates the multicast group address."; + } + leaf operSupprARP { + config "false"; + type boolean; + description "Indicates state of ARP suppression for VNI(s)."; + } + + leaf state { + config "false"; + + type nvo_VniStateT; + description "Indicates VNI Up or Down state."; + } + + leaf mode { + config "false"; + + type nvo_HostLearnModeT; + description "Indicates VNI Host reachability mode."; + } + + leaf type { + config "false"; + + type nvo_VniTypeT; + description "Indicates if VNI is in L2 or L3 type."; + } + leaf vlanBD { + config "false"; + type string; + description "Indicates the VLAN associated to VNI."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_NwRange-group { + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs)."; + + leaf vniRangeMin { + + type nvo_VniT; + description "Configures the minimum value for the VNI range."; + } + + leaf vniRangeMax { + + type nvo_VniT; + description "Configures the maximum value for the VNI range."; + } + leaf isMcastRange { + type boolean; + description "Indicates if the multicast group configuration is a range."; + } + + leaf suppressARP { + + type nvo_SuppressARPT; + description "Enable or disable ARP suppression for VNI(s)."; + } + + leaf mcastGroup { + + type mcast_GrpIp; + description "Configures multicast group address for VNI(s)."; + } + leaf associateVrfFlag { + type boolean; + description "Configures VNI(s) as L3 VNI."; + } + leaf isLegacyMode { + type boolean; + description "Indicates whether Multicast group configuration for the VNI(s) is configured in legacy mode or not."; + } + + leaf multisiteIngRepl { + + type nvo_MultisiteIngReplStateT; + description "Enable or disable Multisite Ingress Replication for VNI(s)."; + } + + // This property is hidden (secure="yes") and used only for internal validation. + // Following are the expected values - + // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" + // CLI - "cli" + // Controller - "controller" + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Internal system property. Not intended for external use."; + } + + container IngRepl-items { + + uses nvo_IngRepl-group; + description "Object containing Ingress Replication configuration for VNI(s)."; + } + } + + grouping l3_Ctx-group { + description "Context"; + + // parameter used by node to enforce filter rules + leaf pcEnfPref { + + type fv_PcEnfPref; + description "Policy Control Enforcement"; + } + + // Type of the context + leaf type { + + type l3_CtxT; + description "Type"; + } + + // It represents the classId for the multicast traffic + // terminating on this context + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Local managment class id + leaf mgmtPcTag { + + type actrl_PcTag; + description "Management PC Tag"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose + leaf resourceId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // vrf id + leaf id { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + leaf encap { + type string; + description "Encapsulation"; + } + leaf descr { + type string; + description "Description"; + } + + // Scope of the context. It identifies the classId + // pool and all the epg/bd classIds belonging to + // this context needs to be allocated from this pool + leaf scope { + config "false"; + + type actrl_ScopeId; + description "Scope"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerID; + description "Controller ID"; + } + + // SecurityLabel + leaf secLbl { + config "false"; + + type actrl_SecLbl; + description "Security Label"; + } + + // vrf Admin State + leaf adminState { + + type l3_VrfAdminState; + description "Admin State"; + } + + // vrf Oper State + leaf operState { + config "false"; + + type l3_VrfOperState; + description "Operational State"; + } + + // oper state reason + leaf operStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Operational State Qualifier"; + } + + // old oper state reason + leaf oldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Old Operational State Qualifier"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf pending { + config "false"; + type boolean; + description "Pending"; + } + leaf v4TibValid { + config "false"; + type boolean; + description "IPV4 Table Validity"; + } + leaf v4TibId { + config "false"; + type uint32; + description "IPV4 Table ID"; + } + leaf v4TibName { + config "false"; + type string; + description "IPV4 Table Name"; + } + leaf v4TibPending { + config "false"; + type boolean; + description "IPV4 Table Pending"; + } + + // ipv4 table Oper State + leaf v4TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV4 Table Operational State"; + } + + // ipv4 table oper state reason + leaf v4TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Table Operational State Qualifier"; + } + + // ipv4 table old oper state reason + leaf v4TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Old Operational State Qualifier"; + } + leaf v6TibValid { + config "false"; + type boolean; + description "IPV6 Table Validity"; + } + leaf v6TibId { + config "false"; + type uint32; + description "IPV6 Table ID"; + } + leaf v6TibName { + config "false"; + type string; + description "IPV6 Table Name"; + } + leaf v6TibPending { + config "false"; + type boolean; + description "IPV6 Table Pending"; + } + + // ipv6 table Oper State + leaf v6TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV6 Table Operational State"; + } + + // ipv6 table oper state reason + leaf v6TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + + // ipv6 table old oper state reason + leaf v6TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; + } + leaf lastChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + + // bgp route distinguisher + leaf bgpRd { + config "false"; + + type l3_BgpRdBytes; + description "BGP Route Distinguisher"; + } + leaf bgpRdDisp { + config "false"; + type string; + description "BGP Route Distinguisher for Display"; + } + leaf prtclBmp { + config "false"; + type uint32; + description "Protocol Bitmap"; + } + leaf oui { + type string; + description "OUI"; + } + leaf vpnId { + type string; + description "Configure VPN ID"; + } + + // Prefix list entry definition + container pfx-items { + list PfxEntry-list { + config "false"; + key "addr"; + + uses actrl_PfxEntry-group; + description "Prefix Entry list"; + } + description "Prefix Entry"; + } + + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses epm_Db-group; + description "Database list"; + } + description "Database"; + } + + // Routed management interface + container mgmt-items { + list RtdMgmtIf-list { + key "id"; + + uses mgmt_RtdMgmtIf-group; + description "Routed Management Interface list"; + } + description "Routed Management Interface"; + } + + container rsctxToEpP-items { + + list RsCtxToEpP-list { + key "tDn"; + + uses l3_RsCtxToEpP_source-group; + description "Epp Attachment list"; + } + description "Epp Attachment"; + } + } + + grouping actrl_PfxEntry-group { + description "Prefix Entry"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } + + // Policy tag + leaf pcTag { + config "false"; + + type actrl_PcTag; + description "PC Tag"; + } + + // Prefix operational state + leaf operSt { + config "false"; + + type actrl_OperSt; + description "Operational State"; + } + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping mgmt_RtdMgmtIf-group { + description "Routed Management Interface"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rsrtdMgmtConf-items { + + uses mgmt_RsRtdMgmtConf_source-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l3_Inst-group { + description "Overlay Instance"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose + leaf resourceId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // vrf id + leaf id { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + leaf encap { + type string; + description "Encapsulation"; + } + leaf descr { + type string; + description "Description"; + } + + // Scope of the context. It identifies the classId + // pool and all the epg/bd classIds belonging to + // this context needs to be allocated from this pool + leaf scope { + config "false"; + + type actrl_ScopeId; + description "Scope"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerID; + description "Controller ID"; + } + + // SecurityLabel + leaf secLbl { + config "false"; + + type actrl_SecLbl; + description "Security Label"; + } + + // vrf Admin State + leaf adminState { + + type l3_VrfAdminState; + description "Admin State"; + } + + // vrf Oper State + leaf operState { + config "false"; + + type l3_VrfOperState; + description "Operational State"; + } + + // oper state reason + leaf operStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Operational State Qualifier"; + } + + // old oper state reason + leaf oldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Old Operational State Qualifier"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf pending { + config "false"; + type boolean; + description "Pending"; + } + leaf v4TibValid { + config "false"; + type boolean; + description "IPV4 Table Validity"; + } + leaf v4TibId { + config "false"; + type uint32; + description "IPV4 Table ID"; + } + leaf v4TibName { + config "false"; + type string; + description "IPV4 Table Name"; + } + leaf v4TibPending { + config "false"; + type boolean; + description "IPV4 Table Pending"; + } + + // ipv4 table Oper State + leaf v4TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV4 Table Operational State"; + } + + // ipv4 table oper state reason + leaf v4TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Table Operational State Qualifier"; + } + + // ipv4 table old oper state reason + leaf v4TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Old Operational State Qualifier"; + } + leaf v6TibValid { + config "false"; + type boolean; + description "IPV6 Table Validity"; + } + leaf v6TibId { + config "false"; + type uint32; + description "IPV6 Table ID"; + } + leaf v6TibName { + config "false"; + type string; + description "IPV6 Table Name"; + } + leaf v6TibPending { + config "false"; + type boolean; + description "IPV6 Table Pending"; + } + + // ipv6 table Oper State + leaf v6TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV6 Table Operational State"; + } + + // ipv6 table oper state reason + leaf v6TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + + // ipv6 table old oper state reason + leaf v6TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; + } + leaf lastChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + + // bgp route distinguisher + leaf bgpRd { + config "false"; + + type l3_BgpRdBytes; + description "BGP Route Distinguisher"; + } + leaf bgpRdDisp { + config "false"; + type string; + description "BGP Route Distinguisher for Display"; + } + leaf prtclBmp { + config "false"; + type uint32; + description "Protocol Bitmap"; + } + leaf oui { + type string; + description "OUI"; + } + leaf vpnId { + type string; + description "Configure VPN ID"; + } + + // Ftag tree, fabric multicast tree to direct the tenant flood + // and multicast traffic over the fabric + container tree-items { + list Tree-list { + config "false"; + key "id"; + + uses fmcast_Tree-group; + description "Multicast Tree list"; + } + description "Multicast Tree"; + } + + // Layer3 Domain (aka vrf) container for routing protocols + container dom-items { + list Dom-list { + key "name"; + + uses rtctrl_Dom-group; + description "Domain list"; + } + description "Domain"; + } + + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses epm_Db-group; + description "Database list"; + } + description "Database"; + } + + // Shard chaining policy + container shchp-items { + list ShardChP-list { + config "false"; + key "af"; + + uses topoctrl_ShardChP-group; + description "Shard Chain Policy list"; + } + description "Shard Chain Policy"; + } + + // Routed management interface + container mgmt-items { + list RtdMgmtIf-list { + key "id"; + + uses mgmt_RtdMgmtIf-group; + description "Routed Management Interface list"; + } + description "Routed Management Interface"; + } + + container rsvrfMbr-items { + + list RsVrfMbr-list { + key "tDn"; + + uses l3_RsVrfMbr_source-group; + description "VRF Membership Association list"; + } + description "VRF Membership Association"; + } + + container rsvrfPolicyAtt-items { + + uses l3_RsVrfPolicyAtt_source-group; + description "Vrf Reference to Analytics policy."; + } + + container rsvrfMonitorAtt-items { + + uses l3_RsVrfMonitorAtt_source-group; + description "Vrf Reference to Analytics monitor."; + } + } + + grouping fmcast_Tree-group { + description "Multicast Tree"; + + // Id + leaf id { + config "false"; + + type fmcast_Id; + description "Tree Id"; + } + + // Multicast root for this tree, identified by the node + // ip address + leaf root { + config "false"; + + type mcast_Root; + description "Root"; + } + + // Administrative state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Adminitrative State"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + } + + grouping rtctrl_Dom-group { + description "Domain"; + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; + } + leaf operRd { + config "false"; + type mtx_array_community; + description "Operational Route Distinguisher"; + } + leaf encap { + type string; + description "Encapsulation of MPLS"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; + } + description "Name"; + } + + // This object holds per address family bgp vrf information + container af-items { + list DomAf-list { + key "type"; + + uses rtctrl_DomAf-group; + description "Address Family Domain list"; + } + description "Address Family Domain"; + } + } + + grouping rtctrl_DomAf-group { + description "Address Family Domain"; + + // Type + leaf type { + + type bgp_AfT; + description "Type"; + } + + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list AfCtrl-list { + key "type"; + + uses rtctrl_AfCtrl-group; + description "Virtual Private Network Control Policy list"; + } + description "Virtual Private Network Control Policy"; + } + + container maxrts-items { + + uses l3_MaxRoutes-group; + description "Maximum Routes Policy"; + } + } + + grouping rtctrl_AfCtrl-group { + description "Virtual Private Network Control Policy"; + + // Type + leaf type { + + type bgp_AfT; + description "Type"; + } + + // Route policy holds all route policy entries and route controls + container rttp-items { + list RttP-list { + key "type"; + + uses rtctrl_RttP-group; + description "Route Policy list"; + } + description "Route Policy"; + } + } + + grouping l3_MaxRoutes-group { + description "Maximum Routes Policy"; + + // Maximum number of routes allowed + leaf maxRt { + + type l3_MaxLmt; + description "Maximum number of routes allowed"; + } + + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { + + type l3_MaxRtThresh; + description "Threshold percentage at which to generate a warning"; + } + + leaf reinstall { + + type l3_MaxRtThresh; + description "Reinstall previous rejected route due to over maximum route limit"; + } + + leaf action { + + type l3_MaxRtAct; + description "Action to do when warning message limit is exceeded"; + } + } + + grouping topoctrl_ShardChP-group { + description "Shard Chain Policy"; + + // Address family for chaining + leaf af { + config "false"; + + type nw_AddrF; + description "Address Family"; + } + + // Redundancy node, determines the node to go to in case of + // a local node failure + leaf node { + config "false"; + + type topoctrl_ShardChNode; + description "Node"; + } + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping l3cap_Prov-group { + description "L3 Capability Provider"; + + // Subject consuming the capability + leaf subj { + config "false"; + + type l3cap_Subj; + description "Subject"; + } + + // Every Consumer has a Subject. + // Subject represents the entity which consumes the capability. + // Namespaces which have concrete consumers, define the Subject property + // and its types + // Max capability available + leaf total { + config "false"; + + type cap_Counter; + description "TBD"; + } + + // Remaining capability available + leaf remaining { + config "false"; + + type cap_Counter; + description "TBD"; + } + + // utilization indicator in percentages of consiumption + leaf utilization { + config "false"; + + type cap_StorageHint; + description "TBD"; + } + + // Type of the Rule consumed by this consumer. + leaf type { + config "false"; + + type cap_RuleT; + description "TBD"; + } + } + + grouping ipfib_Entity-group { + description "Ipfib Entity Information"; + + // Holds per domain (vrf) information + // Ephemeral data + container dom-items { + + // Ephemeral data + list Dom-list { + config "false"; + key "name"; + + uses ipfib_Dom-group; + description "Domain: Virtual Router Context (VRF) list"; + } + description "Domain: Virtual Router Context (VRF)"; + } + } + + grouping ipfib_Dom-group { + description "Domain: Virtual Router Context (VRF)"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + container label-items { + + // Ephemeral data + list Label-list { + config "false"; + key "label"; + + uses ipfib_Label-group; + description "The push/swap label for the given FEC list"; + } + description "The push/swap label for the given FEC"; + } + + // Holds route information for a particular destination address + // Ephemeral data + container pfx-items { + + // Ephemeral data + list Route-list { + config "false"; + key "pfxAddr"; + + uses ipfib_Route-group; + description "Prefix Info list"; + } + description "Prefix Info"; + } + } + + grouping ipfib_Label-group { + description "The push/swap label for the given FEC"; + + // Ephemeral data + leaf label { + config "false"; + type uint32; + description "Segment Routing Label value"; + } + leaf tableId { + config "false"; + type uint32; + description "Prefix/Table ID. Usually the VRF Id"; + } + + leaf fectype { + config "false"; + + type ipfib_FecType; + description "The type of Forwarding Equivalence Class"; + } + leaf fec { + config "false"; + type string; + description "Typicaly the Destination IP address"; + } + + // Ephemeral data + container nh-items { + + // Ephemeral data + list MplsNextHopInfo-list { + config "false"; + key "nhAddr"; + + uses ipfib_MplsNextHopInfo-group; + description "NextHop adjacency information for label entries list"; + } + description "NextHop adjacency information for label entries"; + } + } + + grouping ipfib_MplsNextHopInfo-group { + description "NextHop adjacency information for label entries"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + leaf nhAddr { + config "false"; + type address_Ip; + description + "NextHop IP address. It could be a connected or a + remote Next Hop"; + } + + // Outgoing interface + // Ephemeral data + leaf nhIntf { + config "false"; + + type nw_IfId; + description + "NextHop Interface ID. The port on the switch + where the next hop ip address is learnt"; + } + + // drop, receive, attached + // Ephemeral data + leaf routeType { + config "false"; + + type ipfib_SpecialAdj; + description + "Special route type. Marks if its a + drop/direct/supervisor route"; + } + + // Ephemeral data + leaf partialInst { + config "false"; + type string; + description "Identifies if the route is partially installed"; + } + + // Ephemeral data + leaf outLabel { + config "false"; + type string; + description "Outgoing label Stack for MPLS next hops"; + } + + // MPLS label operation + // Ephemeral data + leaf outOperation { + config "false"; + + type ipfib_OutOperEnum; + description + "Operation performed on outgoing packets for MPLS next hops. + Push/Swap/Pop"; + } + } + + grouping ipfib_Route-group { + description "Prefix Info"; + + // Ephemeral data + leaf pfxAddr { + config "false"; + type address_Ip; + description "Prefix address. IPv4 or IPv6"; + } + + leaf addrType { + config "false"; + + type ipfib_AddressType; + description "Address Family. Ipv4 or Ipv6"; + } + leaf partialInst { + config "false"; + type boolean; + description "Identifies if the prefix is partially installed."; + } + + // Ephemeral data + container nh-items { + + // Ephemeral data + list RouteNextHopInfo-list { + config "false"; + key "nhAddr"; + + uses ipfib_RouteNextHopInfo-group; + description "NextHop adjacency information list"; + } + description "NextHop adjacency information"; + } + } + + grouping ipfib_RouteNextHopInfo-group { + description "NextHop adjacency information"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + leaf nhAddr { + config "false"; + type address_Ip; + description + "NextHop IP address. It could be a connected or a + remote Next Hop"; + } + + // Outgoing interface + // Ephemeral data + leaf nhIntf { + config "false"; + + type nw_IfId; + description + "NextHop Interface ID. The port on the switch + where the next hop ip address is learnt"; + } + + // drop, receive, attached + // Ephemeral data + leaf routeType { + config "false"; + + type ipfib_SpecialAdj; + description + "Special route type. Marks if its a + drop/direct/supervisor route"; + } + + // Ephemeral data + leaf partialInst { + config "false"; + type string; + description "Identifies if the route is partially installed"; + } + + // Ephemeral data + leaf outLabel { + config "false"; + type string; + description "Outgoing label Stack for MPLS next hops"; + } + + // MPLS label operation + // Ephemeral data + leaf outOperation { + config "false"; + + type ipfib_OutOperEnum; + description + "Operation performed on outgoing packets for MPLS next hops. + Push/Swap/Pop"; + } + } + + grouping l3vm_Entity-group { + description "L3VM Entity"; + + // as-format type + leaf asFormat { + + type l3vm_AsFormatType; + description "Specifies the Autonomous system number (ASN) notation to asdot format"; + } + leaf vrfmemberchangeretainl3cfg { + type boolean; + default "true"; + description "vrf member change retain l3 config"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Interface Object for L3VM + container if-items { + list L3vmIf-list { + key "id"; + + uses l3vm_L3vmIf-group; + description "L3VM related information for the interface list"; + } + description "L3VM related information for the interface"; + } + + // This objects hold per l3vm instance information. There is only + // one instance of l3vm running in the system today + container inst-items { + + uses l3vm_Inst-group; + description "L3VM Instance"; + } + } + + grouping l3vm_L3vmIf-group { + description "L3VM related information for the interface"; + leaf soo { + type mtx_array_community; + description "Site Of Origin information for the interface"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l3vm_Inst-group { + description "L3VM Instance"; + leaf vrfAllocId { + config "false"; + type uint32; + description "Allocated VRF ID"; + } + leaf tblAllocId { + config "false"; + type uint32; + description "Allocated Table ID"; + } + leaf featureSet { + config "false"; + type uint32; + description "Feature Set Bitmap"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + config "false"; + + type nw_InstCtrl; + description "Controls"; + } + + // DomainMbrIf class + container dommbr-items { + list DomMbrIf-list { + config "false"; + key "id"; + + uses l3_DomMbrIf-group; + description "Domain Member Interface list"; + } + description "Domain Member Interface"; + } + + // This objects hold runtime information on l3vm tables + container tbl-items { + list Tbl-list { + config "false"; + key "id"; + + uses l3vm_Tbl-group; + description "Table Entity list"; + } + description "Table Entity"; + } + } + + grouping l3_DomMbrIf-group { + description "Domain Member Interface"; + + // ifindex + leaf id { + config "false"; + + type nw_IfId; + description "Interface ID"; + } + leaf iod { + config "false"; + type uint32; + description "IOD"; + } + + // vrfId + leaf vrfId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // old vrfId + leaf oldVrfId { + config "false"; + + type l3_VrfId; + description "Old VRF ID"; + } + + // vrf name + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF Name"; + } + + // old vrf name + leaf oldVrfName { + config "false"; + + type l3_VrfName; + description "Old VRF Name"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + + // gsdb context type + leaf gsdbCtxType { + config "false"; + + type l3_VrfGsdbCtxType; + description "GSDB Context Type"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping l3vm_Tbl-group { + description "Table Entity"; + leaf id { + config "false"; + type uint32; + description "Table ID"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf rtLmtMax { + config "false"; + type uint32; + description "Maximum Number of Routes Supported"; + } + leaf rtLmtWarn { + config "false"; + type uint32; + description "Route Warning Limit"; + } + leaf rtLmtWarnOnly { + config "false"; + type boolean; + description "Route Limit Warning Only"; + } + leaf rtLmtWarnPct { + config "false"; + type uint8; + description "Route Limit Warning Threshold (percentage)"; + } + leaf rtLmtReinstPct { + config "false"; + type uint8; + description "Route Limit Reinstall Threshold (percentage)"; + } + } + + grouping urib_Entity4-group { + description "Urib ipv4 root element"; + + // Specific to v4 + container table4-items { + list Table4-list { + config "false"; + key "vrfName"; + + uses urib_Table4-group; + description "IPv4 urib table. list"; + } + description "IPv4 urib table."; + } + } + + grouping urib_Table4-group { + description "IPv4 urib table."; + + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF name"; + } + + leaf routeCount { + config "false"; + + type urib_Counter32; + description "Total number of route in this table"; + } + + // Specific to v4 + // Ephemeral data + container route4-items { + + // Ephemeral data + list Route4-list { + config "false"; + key "prefix"; + + uses urib_Route4-group; + description "ipv4 route list"; + } + description "ipv4 route"; + } + + // Specific to v4 + // Ephemeral data + container summary-items { + + uses urib_SummaryTable4-group; + description "IPv4 urib table summary."; + } + } + + grouping urib_Route4-group { + description "ipv4 route"; + + // Ephemeral data + leaf prefix { + config "false"; + type address_Ip; + description "Route address with mask"; + } + + // Ephemeral data + leaf uBestNextHopCount { + config "false"; + type uint32; + description "Number of unicast best next hop"; + } + + // Ephemeral data + leaf mBestNextHopCount { + config "false"; + type uint32; + description "Number of multicast best next hop"; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Route flags."; + } + + // Ephemeral data + leaf sortKey { + config "false"; + type uint32; + description "Eibgp mixed-path sort key."; + } + + // Ephemeral data + leaf pendingUfdm { + config "false"; + type boolean; + description "Waiting to be send to UFDM."; + } + + // Ephemeral data + leaf pendingHw { + config "false"; + type boolean; + description "UFDM sent, waiting for ack from HW."; + } + + // Specific to v4 + // Ephemeral data + container nh4-items { + + // Ephemeral data + list NextHop4-list { + config "false"; + key "id"; + + uses urib_NextHop4-group; + description "IPV4 next hop. list"; + } + description "IPV4 next hop."; + } + } + + grouping urib_NextHop4-group { + description "IPV4 next hop."; + + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "Unique id among all nh of the route. Only used internally."; + } + + // Ephemeral data + leaf address { + config "false"; + type address_Ip; + description "Next-hop address."; + } + + // Ephemeral data + leaf bindinglabel { + config "false"; + type uint32; + description "SRTE binding label"; + } + + // Ephemeral data + leaf isBest { + config "false"; + type boolean; + description "Is the next-hop in the best list"; + } + + // Ephemeral data + leaf vrf { + config "false"; + + type l3_VrfName; + description "VRF name."; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Interface name."; + } + + // Ephemeral data + leaf owner { + config "false"; + type string; + description "local, attached-export, static or unknown."; + } + + // Ephemeral data + leaf preference { + config "false"; + type uint32; + description "Preference."; + } + + // Ephemeral data + leaf metric { + config "false"; + type uint32; + description "Metric."; + } + + // Ephemeral data + leaf uptime { + config "false"; + + type urib_TimeStr; + description "Elapsed time since this next hop has been added/modified."; + } + + // Ephemeral data + leaf routeType { + config "false"; + type string; + description "Type."; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Client defined tag."; + } + + // Ephemeral data + leaf segmentId { + config "false"; + type uint32; + description "Client provided segment ID. 0 means not set."; + } + + // Ephemeral data + leaf segidType { + config "false"; + type string; + description "Client provided segment type. 0 means not set."; + } + + // Ephemeral data + leaf tunnelId { + config "false"; + type uint32; + description "Client provided tunnel ID. 0 means not set."; + } + + // Support for VXLAN encap type only with EVPN + // Ephemeral data + leaf encapType { + config "false"; + + type urib_NextHopEncapType; + description "Either VXLAN or none."; + } + + // Ephemeral data + leaf vtepIpAddress { + config "false"; + type address_Ip; + description "VxLAN VTEP IP address."; + } + + // Ephemeral data + leaf vtepUnderlayVrfId { + config "false"; + type uint32; + description "VxLAN VTEP underlay VRF ID."; + } + + // Ephemeral data + leaf labelStack { + config "false"; + type string; + description "MPLS label stack."; + } + + // Ephemeral data + leaf nhlfeOwner { + config "false"; + type string; + description "nhlfe owner name."; + } + + // Internal use. + // Urib doesn't know how to interpret client data + // Ephemeral data + leaf clientData { + config "false"; + + type urib_YesNo; + description "Yes if client put data in the next-hop."; + } + + // Ephemeral data + leaf recursiveNextHopPrefix { + config "false"; + type address_Ip; + description "Recursive nexthop."; + } + + // Ephemeral data + leaf xriBgpOrigin { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf xriBgpPeer { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf tlv { + config "false"; + type string; + description "Type-Length-Value; client provided opaque data."; + } + + // Ephemeral data + leaf tlvExtentedCommunity { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf tlvAttachExport { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Flags, each bit has a different meaning."; + } + + // Ephemeral data + leaf nhlfeFlags { + config "false"; + type uint32; + description "Next-hop Label Forwarding flags."; + } + + // Ephemeral data + leaf tlvType { + config "false"; + type uint32; + description "Type-Length-Value type."; + } + } + + grouping urib_SummaryTable4-group { + description "IPv4 urib table summary."; + + // Ephemeral data + leaf route_total { + config "false"; + type uint32; + description "Total route count."; + } + + // Ephemeral data + leaf uroute_total { + config "false"; + type uint32; + description "unicast route count."; + } + + // Ephemeral data + leaf path_total { + config "false"; + type uint32; + description "Total path count."; + } + + // Ephemeral data + leaf mpath_total { + config "false"; + type uint32; + description "multicast path count."; + } + + // Ephemeral data + leaf routesPerSubnet { + config "false"; + type string; + description "Total number of route per mask in this table"; + } + } + + grouping urib_Entity6-group { + description "Urib ipv6 root element"; + + // Specific to v6 + container table6-items { + list Table6-list { + config "false"; + key "vrfName"; + + uses urib_Table6-group; + description "IPv6 urib table list"; + } + description "IPv6 urib table"; + } + } + + grouping urib_Table6-group { + description "IPv6 urib table"; + + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF name"; + } + + leaf routeCount { + config "false"; + + type urib_Counter32; + description "Total number of route in this table"; + } + + // Specific to v6 + // Ephemeral data + container route6-items { + + // Ephemeral data + list Route6-list { + config "false"; + key "prefix"; + + uses urib_Route6-group; + description "ipv6 urib route list"; + } + description "ipv6 urib route"; + } + + // Specific to v6 + // Ephemeral data + container summary-items { + + uses urib_SummaryTable6-group; + description "IPv6 urib table summary."; + } + } + + grouping urib_Route6-group { + description "ipv6 urib route"; + + // Ephemeral data + leaf prefix { + config "false"; + type address_Ip; + description "Route address with mask"; + } + + // Ephemeral data + leaf uBestNextHopCount { + config "false"; + type uint32; + description "Number of unicast best next hop"; + } + + // Ephemeral data + leaf mBestNextHopCount { + config "false"; + type uint32; + description "Number of multicast best next hop"; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Route flags."; + } + + // Ephemeral data + leaf sortKey { + config "false"; + type uint32; + description "Eibgp mixed-path sort key."; + } + + // Ephemeral data + leaf pendingUfdm { + config "false"; + type boolean; + description "Waiting to be send to UFDM."; + } + + // Ephemeral data + leaf pendingHw { + config "false"; + type boolean; + description "UFDM sent, waiting for ack from HW."; + } + + // Specific to v6 + // Ephemeral data + container nh6-items { + + // Ephemeral data + list NextHop6-list { + config "false"; + key "id"; + + uses urib_NextHop6-group; + description "ipv6 next hop list"; + } + description "ipv6 next hop"; + } + } + + grouping urib_NextHop6-group { + description "ipv6 next hop"; + + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "Unique id among all nh of the route. Only used internally."; + } + + // Ephemeral data + leaf address { + config "false"; + type address_Ip; + description "Next-hop address."; + } + + // Ephemeral data + leaf bindinglabel { + config "false"; + type uint32; + description "SRTE binding label"; + } + + // Ephemeral data + leaf isBest { + config "false"; + type boolean; + description "Is the next-hop in the best list"; + } + + // Ephemeral data + leaf vrf { + config "false"; + + type l3_VrfName; + description "VRF name."; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Interface name."; + } + + // Ephemeral data + leaf owner { + config "false"; + type string; + description "local, attached-export, static or unknown."; + } + + // Ephemeral data + leaf preference { + config "false"; + type uint32; + description "Preference."; + } + + // Ephemeral data + leaf metric { + config "false"; + type uint32; + description "Metric."; + } + + // Ephemeral data + leaf uptime { + config "false"; + + type urib_TimeStr; + description "Elapsed time since this next hop has been added/modified."; + } + + // Ephemeral data + leaf routeType { + config "false"; + type string; + description "Type."; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Client defined tag."; + } + + // Ephemeral data + leaf segmentId { + config "false"; + type uint32; + description "Client provided segment ID. 0 means not set."; + } + + // Ephemeral data + leaf segidType { + config "false"; + type string; + description "Client provided segment type. 0 means not set."; + } + + // Ephemeral data + leaf tunnelId { + config "false"; + type uint32; + description "Client provided tunnel ID. 0 means not set."; + } + + // Support for VXLAN encap type only with EVPN + // Ephemeral data + leaf encapType { + config "false"; + + type urib_NextHopEncapType; + description "Either VXLAN or none."; + } + + // Ephemeral data + leaf vtepIpAddress { + config "false"; + type address_Ip; + description "VxLAN VTEP IP address."; + } + + // Ephemeral data + leaf vtepUnderlayVrfId { + config "false"; + type uint32; + description "VxLAN VTEP underlay VRF ID."; + } + + // Ephemeral data + leaf labelStack { + config "false"; + type string; + description "MPLS label stack."; + } + + // Ephemeral data + leaf nhlfeOwner { + config "false"; + type string; + description "nhlfe owner name."; + } + + // Internal use. + // Urib doesn't know how to interpret client data + // Ephemeral data + leaf clientData { + config "false"; + + type urib_YesNo; + description "Yes if client put data in the next-hop."; + } + + // Ephemeral data + leaf recursiveNextHopPrefix { + config "false"; + type address_Ip; + description "Recursive nexthop."; + } + + // Ephemeral data + leaf xriBgpOrigin { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf xriBgpPeer { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf tlv { + config "false"; + type string; + description "Type-Length-Value; client provided opaque data."; + } + + // Ephemeral data + leaf tlvExtentedCommunity { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf tlvAttachExport { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Flags, each bit has a different meaning."; + } + + // Ephemeral data + leaf nhlfeFlags { + config "false"; + type uint32; + description "Next-hop Label Forwarding flags."; + } + + // Ephemeral data + leaf tlvType { + config "false"; + type uint32; + description "Type-Length-Value type."; + } + } + + grouping urib_SummaryTable6-group { + description "IPv6 urib table summary."; + + // Ephemeral data + leaf route_total { + config "false"; + type uint32; + description "Total route count."; + } + + // Ephemeral data + leaf uroute_total { + config "false"; + type uint32; + description "unicast route count."; + } + + // Ephemeral data + leaf path_total { + config "false"; + type uint32; + description "Total path count."; + } + + // Ephemeral data + leaf mpath_total { + config "false"; + type uint32; + description "multicast path count."; + } + + // Ephemeral data + leaf routesPerSubnet { + config "false"; + type string; + description "Total number of route per mask in this table"; + } + } + + grouping uribv4_Entity-group { + description "IPv4 Unicast Routing Information Base Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "name"; + + uses uribv4_Dom-group; + description "Domain list"; + } + description "Domain"; + } + } + + grouping uribv4_Dom-group { + description "Domain"; + + // Operational state + leaf operSt { + config "false"; + + type rib_DomOperSt; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container db-items { + list Db-list { + config "false"; + key "type"; + + uses uribv4_Db-group; + description "Database list"; + } + description "Database"; + } + } + + grouping uribv4_Db-group { + description "Database"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + leaf type { + config "false"; + + type rib_DbT; + description "Type"; + } + + // Route + container rt-items { + list Route-list { + config "false"; + key "prefix"; + + uses uribv4_Route-group; + description "Route list"; + } + description "Route"; + } + } + + grouping uribv4_Route-group { + description "Route"; + leaf prefix { + config "false"; + type address_Ip; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv4_Nexthop-group; + description "Nexthop Record list"; + } + description "Nexthop Record"; + } + + // URIB route ownership record + container owner-items { + list RouteOwner-list { + config "false"; + key "owner"; + + uses uribv4_RouteOwner-group; + description "Route Owner list"; + } + description "Route Owner"; + } + } + + grouping uribv4_Nexthop-group { + description "Nexthop Record"; + + // Owner + leaf owner { + config "false"; + + type rib_OwnerT; + description "Nexthop Owner"; + } + leaf addr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop interface + leaf if { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + + // Nexthop vrf + leaf vrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + + // NH type + leaf type { + config "false"; + + type rib_NhT; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + } + + grouping uribv4_RouteOwner-group { + description "Route Owner"; + + // Owner's name + leaf owner { + config "false"; + + type rib_OwnerT; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv4_Nexthop-group; + description "Nexthop Record list"; + } + description "Nexthop Record"; + } + + container rsrouteOwnerToNexthopAtt-items { + + list RsRouteOwnerToNexthopAtt-list { + key "tDn"; + + uses uribv4_RsRouteOwnerToNexthopAtt_source-group; + } + } + } + + grouping uribv6_Entity-group { + description "Unicast Routing Information Base Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "name"; + + uses uribv6_Dom-group; + description "Domain list"; + } + description "Domain"; + } + } + + grouping uribv6_Dom-group { + description "Domain"; + + // Operational state + leaf operSt { + config "false"; + + type rib_DomOperSt; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container db-items { + list Db-list { + config "false"; + key "type"; + + uses uribv6_Db-group; + description "Database list"; + } + description "Database"; + } + } + + grouping uribv6_Db-group { + description "Database"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + leaf type { + config "false"; + + type rib_DbT; + description "Type"; + } + + // Route + container rt-items { + list Route-list { + config "false"; + key "prefix"; + + uses uribv6_Route-group; + description "Route list"; + } + description "Route"; + } + } + + grouping uribv6_Route-group { + description "Route"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf prefix { + config "false"; + type address_Ip; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv6_Nexthop-group; + description "Nexthop record list"; + } + description "Nexthop record"; + } + + // URIB route ownership record + container owner-items { + list RouteOwner-list { + config "false"; + key "owner"; + + uses uribv6_RouteOwner-group; + description "Route Owner list"; + } + description "Route Owner"; + } + } + + grouping uribv6_Nexthop-group { + description "Nexthop record"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Owner + leaf owner { + config "false"; + + type rib_OwnerT; + description "Nexthop Owner"; + } + leaf addr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop interface + leaf if { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + + // Nexthop vrf + leaf vrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + + // NH type + leaf type { + config "false"; + + type rib_NhT; + description "TBD"; + } + } + + grouping uribv6_RouteOwner-group { + description "Route Owner"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Owner's name + leaf owner { + config "false"; + + type rib_OwnerT; + description "TBD"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv6_Nexthop-group; + description "Nexthop record list"; + } + description "Nexthop record"; + } + } + + grouping mmode_Entity-group { + description "MMODE Entity"; + + // This objects holds per mmode instance information. There is + // only one instance of mmode running in the system today + container inst-items { + + uses mmode_Inst-group; + description "MMODE Instance"; + } + + // This objects holds maintenance mode profile. + container profile-items { + list Profile-list { + key "profType"; + + uses mmode_Profile-group; + description "MMODE Profile list"; + } + description "MMODE Profile"; + } + } + + grouping mmode_Inst-group { + description "MMODE Instance"; + + // Maintenance mode action + leaf modeAction { + + type mmode_MaintModeActionType; + description "Maintenance Mode Action"; + } + + // Maintenance mode action status + leaf modeActionStatus { + config "false"; + + type mmode_MaintModeActionStatusType; + description "Maintenance Mode Action Status"; + } + leaf modeSwitchInProgress { + config "false"; + type boolean; + description "Maintenance Mode Switch In Progress"; + } + + // Maintenance system mode value + leaf sysMode { + config "false"; + + type mmode_MaintModeType; + description "Maintenance System Mode"; + } + + // Maintenance mode timeout value + leaf timeout { + + type mmode_TimeoutInterval; + description "Timeout"; + } + leaf onReloadResetReasonHwError { + type boolean; + description "On-Reload Reset-Reason Harware Error"; + } + leaf onReloadResetReasonSvcFailure { + type boolean; + description "On-Reload Reset-Reason Critical Service Failure"; + } + leaf onReloadResetReasonKernFailure { + type boolean; + description "On-Reload Reset-Reason Kernel Panic"; + } + leaf onReloadResetReasonWdogTimeout { + type boolean; + description "On-Reload Reset-Reason Watchdog Timeout"; + } + leaf onReloadResetReasonFatalError { + type boolean; + description "On-Reload Reset-Reason Fatal Error"; + } + leaf onReloadResetReasonLcFailure { + type boolean; + description "On-Reload Reset-Reason LC Failure"; + } + leaf onReloadResetReasonManualReload { + type boolean; + description "On-Reload Reset-Reason Manual Reload"; + } + leaf onReloadResetReasonMaintenance { + type boolean; + description "On-Reload Reset-Reason Maintenance Mode"; + } + leaf onReloadResetReasonAnyOther { + type boolean; + description "On-Reload Reset-Reason Any Other Reset"; + } + leaf snapshotDelay { + type uint16; + default "120"; + description "Snapshot Delay Time"; + } + leaf maintDelay { + type uint16; + default "120"; + description "Maintenance Delay Time"; + } + leaf useCustomProfile { + type boolean; + description "Use Custom Profile"; + } + } + + grouping mmode_Profile-group { + description "MMODE Profile"; + + // Maintenance profile type + leaf profType { + + type mmode_MaintProfileType; + description "Maintenance Profile Type"; + } + + // This objects holds maintenance mode profile entries. + container entry-items { + list ProfileEntry-list { + key "sequence"; + + uses mmode_ProfileEntry-group; + description "MMODE Profile Entry list"; + } + description "MMODE Profile Entry"; + } + } + + grouping mmode_ProfileEntry-group { + description "MMODE Profile Entry"; + leaf sequence { + type uint16; + description "Profile Entry Sequence Number"; + } + leaf parentSequence { + type uint16; + default "0"; + description "Profile Entry Parent Sequence Number"; + } + leaf configCmd { + type string; + description "Config Command to be applied"; + } + leaf configCmdValid { + config "false"; + type boolean; + description "Config Command is Valid"; + } + } + + grouping nw_Vdc-group { + description "VDC"; + leaf name { + type string { + length "0..63"; + } + default "switch"; + description "VDC name"; + } + + // vdc ID + leaf id { + + type l2_VdcId { + range "1"; + } + description "ID Property has READ-Create access."; + } + + container limres-items { + + uses resmgr_LimRes-group; + description "Resource configuration"; + } + } + + grouping resmgr_LimRes-group { + description "Resource configuration"; + leaf vlanMin { + type uint16 { + range "16..4094"; + } + default "16"; + description "Minimum VLANs to allocate"; + } + leaf vlanMax { + type uint16 { + range "16..4094"; + } + default "4094"; + description "Maximum VLANs to allocate"; + } + leaf vrfMin { + type uint16 { + range "2..4096"; + } + default "2"; + description "Minimum vrf resources to allocate"; + } + leaf vrfMax { + type uint16 { + range "2..4096"; + } + default "4096"; + description "Maximum vrf resources to allocate"; + } + leaf poMin { + type uint16 { + range "0..511"; + } + default "0"; + description "Minimum port channels to allocate"; + } + leaf poMax { + type uint16 { + range "0..511"; + } + default "511"; + description "Maximum port channels to allocate"; + } + leaf u4rtMemMin { + type uint16 { + range "1..768"; + } + default "248"; + description "Minimum route memory to allocate for unicast Ipv4"; + } + leaf u4rtMemMax { + type uint16 { + range "1..768"; + } + default "248"; + description "Maximum route memory to allocate for unicast Ipv4"; + } + leaf u6rtMemMin { + type uint16 { + range "1..512"; + } + default "96"; + description "Minimum route memory to allocate for unicast Ipv6"; + } + leaf u6rtMemMax { + type uint16 { + range "1..512"; + } + default "96"; + description "Maximum route memory to allocate for unicast Ipv6"; + } + leaf m4rtMemMin { + type uint16 { + range "3..150"; + } + default "58"; + description "Minimum route memory to allocate for multicast Ipv4"; + } + leaf m4rtMemMax { + type uint16 { + range "3..150"; + } + default "58"; + description "Maxiimum route memory to allocate for multicast Ipv4"; + } + leaf m6rtMemMin { + type uint16 { + range "3..20"; + } + default "8"; + description "Minimum route memory to allocate for multicast Ipv6"; + } + leaf m6rtMemMax { + type uint16 { + range "3..20"; + } + default "8"; + description "Maximum route memory to allocate for multicast Ipv6"; + } + } + + grouping nxsdk_Entity-group { + description "Nx-sdk Manager"; + + // This objects hold per service-name Inst information + container inst-items { + list Inst-list { + key "serviceName"; + + uses nxsdk_Inst-group; + description "NxSDK service name instances list"; + } + description "NxSDK service name instances"; + } + + // This objects hold per remote port information + container remoteport-items { + list RemotePort-list { + key "port"; + + uses nxsdk_RemotePort-group; + description "NxSDK remote port instance list"; + } + description "NxSDK remote port instance"; + } + + // This objects hold profile information + container profile-items { + list Profile-list { + key "profileName"; + + uses nxsdk_Profile-group; + description "NxSDK profile list"; + } + description "NxSDK profile"; + } + } + + grouping nxsdk_Inst-group { + description "NxSDK service name instances"; + leaf serviceName { + type string { + length "0..20"; + } + description "NxSDK service name"; + } + leaf profileName { + type string { + length "0..20"; + } + description "Name of the profile"; + } + + leaf serviceSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK service name error state"; + } + } + + grouping nxsdk_RemotePort-group { + description "NxSDK remote port instance"; + leaf port { + type uint16 { + range "50002..51000"; + } + description "Remote port value"; + } + + leaf vrfName { + + type l3_VrfName { + length "0..32"; + } + description "VRF name"; + } + + leaf remotePortSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK remote port state"; + } + container remotesvcinst-items { + list RemoteSvcInst-list { + key "serviceName"; + + uses nxsdk_RemoteSvcInst-group; + description "Remote service name instances list"; + } + description "Remote service name instances"; + } + } + + grouping nxsdk_RemoteSvcInst-group { + description "Remote service name instances"; + leaf serviceName { + type string { + length "0..20"; + } + description "NxSDK service name"; + } + leaf profileName { + type string { + length "0..20"; + } + description "Name of the profile"; + } + + leaf serviceSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK service name error state"; + } + } + + grouping nxsdk_Profile-group { + description "NxSDK profile"; + leaf profileName { + type string { + length "0..20"; + } + description "Name of the Profile"; + } + + leaf systemStateMod { + + type nxsdk_SecLevel; + description "Modify the state of the system to Permit/Throttle all write API calls"; + } + } + + grouping pktmgr_Entity-group { + description "Pktmgr Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This objects hold per pktmgr instance information. There is + // only one instance of pktmgr running in the system today + container inst-items { + + uses pktmgr_Inst-group; + description "Pktmgr Instance"; + } + } + + grouping pktmgr_Inst-group { + description "Pktmgr Instance"; + + // logging level enabling + leaf loggingLevel { + + type arp_LoggingLevel; + default "critical"; + description "Logging Level"; + } + + // Setting Rate-limit + leaf rateLimitDirection { + + type pktmgr_RateLimitDirection; + description "Rate Limit Direction"; + } + + // Default value handled in local MO type + leaf rateLimitPps { + + // Type is a Local-MO-Defined-Type + type pktmgr_RateLimitPps_Inst_rateLimitPps; + description "Rate Limit Pps"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // Interfce MO + container if-items { + list If-list { + key "id"; + + uses pktmgr_If-group; + description "Pktmgr Instance list"; + } + description "Pktmgr Instance"; + } + } + + grouping pktmgr_If-group { + description "Pktmgr Instance"; + + leaf rateLimitDirection { + + type pktmgr_RateLimitDirection; + description "Rate Limit Direction"; + } + + // Default value handled in local MO type + leaf rateLimitPps { + + // Type is a Local-MO-Defined-Type + type pktmgr_RateLimitPps_If_rateLimitPps; + description "Rate Limit Pps"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping proc_System-group { + description "System Process Information"; + + // Maximum memory allocated for the system + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum Memory Allocated"; + } + leaf upTs { + config "false"; + type string; + description "Up Time of the device"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // Process entry in the system + container proc-items { + list Proc-list { + config "false"; + key "id"; + + uses proc_Proc-group; + description "Process list"; + } + description "Process"; + } + + // System core list + container syscore-items { + + uses proc_SysCore-group; + description "system cores"; + } + + // System load statistics + container sysload-items { + + uses proc_SysLoad-group; + description "system load"; + } + + // System cpu summary statistics + container syscpusummary-items { + + uses proc_SysCpuSummary-group; + description "system cpu"; + } + + // System memory statistics + container sysmem-items { + + uses proc_SysMem-group; + description "system memory"; + } + } + + grouping proc_Proc-group { + description "Process"; + + // Process id + leaf id { + config "false"; + + type proc_ProcId; + description "Process ID"; + } + + // State of the process + leaf operSt { + config "false"; + + type proc_OperSt; + description "Operational State"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCore-group { + description "system cores"; + leaf numOfCores { + config "false"; + type uint32; + description "Number of cores"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System core details + container core-items { + list Core-list { + config "false"; + key "processId"; + + uses proc_Core-group; + description "system core list"; + } + description "system core"; + } + } + + grouping proc_Core-group { + description "system core"; + leaf processId { + config "false"; + type uint32; + description "Process ID"; + } + leaf vdcId { + config "false"; + type uint32; + description "VDC Id"; + } + leaf moduleNumber { + config "false"; + type uint32; + description "Module Number"; + } + leaf instanceNumber { + config "false"; + type uint32; + description "Instance Number"; + } + leaf processName { + config "false"; + type string; + description "Process Name"; + } + leaf date { + config "false"; + type string; + description "Date"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysLoad-group { + description "system load"; + leaf loadAverage1m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 1 minute preiod of time, represented as float"; + } + leaf loadAverage5m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 5 minute preiod of time, represented as float"; + } + leaf loadAverage15m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 15 minute preiod of time, represented as float"; + } + leaf loadAverage5sec { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 5 second preiod of time, represented as float"; + } + leaf totalProc { + config "false"; + type uint32; + description + "Total number of the processes in the system, + represented as an integer"; + } + leaf runProc { + config "false"; + type uint32; + description + "Total number of the running processes in + the system, represented as an integer"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCpuSummary-group { + description "system cpu"; + leaf user { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the user processes in + the system, represented as a float"; + } + leaf kernel { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + the system, represented as a float"; + } + leaf idle { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Overall CPU idle in the system, represented as a float"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System cpu history statistics + container syscpuhistory-items { + list SysCpuHistory-list { + config "false"; + key "durationname"; + + uses proc_SysCpuHistory-group; + description "system cpu history list"; + } + description "system cpu history"; + } + + // System cpu statistics + container syscpu-items { + list SysCpu-list { + config "false"; + key "id"; + + uses proc_SysCpu-group; + description "system cpu list"; + } + description "system cpu"; + } + } + + grouping proc_SysCpuHistory-group { + description "system cpu history"; + + // cpu history duration name + leaf durationname { + config "false"; + + type proc_CpuHistoryDurationName; + description + "cpu history duration name, it can be last60seconds, + last60minutes, last60hours"; + } + + // history data + leaf usage { + config "false"; + + type proc_CpuHistoryList; + description + "Overall CPU usage in the system for the + last duration time (60sec/60min/60hours)"; + } + + // minimum usage data + leaf usageMin { + config "false"; + + type proc_PerUsage; + description "Minimum of cpu usage for the last duration time (60sec/60min/60hours)"; + } + leaf usageAvg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Average of cpu usage for the last duration time (60sec/60min/60hours)"; + } + + // maximum usage data + leaf usageMax { + config "false"; + + type proc_PerUsage; + description "Maximum of cpu usage for the last duration time (60sec/60min/60hours)"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCpu-group { + description "system cpu"; + leaf id { + config "false"; + type string; + description + " CPU id/name present in the system, + represented as string"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System cpu statistics + container kernel-items { + + uses proc_Kernel-group; + description "system kernel"; + } + + // System cpu statistics + container total-items { + + uses proc_Total-group; + description "system total"; + } + + // User cpu statistics + container user-items { + + uses proc_User-group; + description "system user"; + } + + // System cpu statistics + container nice-items { + + uses proc_Nice-group; + description "system nice"; + } + + // System cpu statistics + container idle-items { + + uses proc_Idle-group; + description "system total"; + } + + // System cpu statistics + container wait-items { + + uses proc_Wait-group; + description "system wait"; + } + + // System cpu statistics + container irq-items { + + uses proc_Irq-group; + description "system Irq"; + } + + // System cpu statistics + container softirq-items { + + uses proc_Softirq-group; + description "system Irq"; + } + } + + grouping proc_Kernel-group { + description "system kernel"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + this CPU, represented as a float"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + this CPU, represented as a float"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu kernel max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu kernel min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu kernel max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu kernel stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous kernel stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Total-group { + description "system total"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu total stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu total min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu Total max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu Total min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu Total max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu Total stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous total stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_User-group { + description "system user"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu user stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu user min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu User max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu User min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu User max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu User stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous User stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Nice-group { + description "system nice"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu nice min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu nice max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu nice stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous nice stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Idle-group { + description "system total"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu Idle min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu Idle max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu idle stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous idle stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Wait-group { + description "system wait"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu wait min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu wait max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu wait stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous wait stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Irq-group { + description "system Irq"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu irq min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu irq max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu irq stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous irq stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Softirq-group { + description "system Irq"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu softirq min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu softirq max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu softirq stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous softirq stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMem-group { + description "system memory"; + leaf total { + config "false"; + type uint64; + description "Total memory in the system represented as an integer"; + } + leaf reserved { + config "false"; + type uint64; + description "Reserved memory for system use, in Kilobytes"; + } + leaf memstatus { + config "false"; + type string; + description "Memory status of the overall system. Indicates OK or not OK"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System memory Usage + container sysmemusage-items { + + uses proc_SysMemUsage-group; + description "system memory usage"; + } + + // System Free memory + container sysmemfree-items { + + uses proc_SysMemFree-group; + description "system free memory"; + } + + // System Used memory + container sysmemused-items { + + uses proc_SysMemUsed-group; + description "system used memory"; + } + } + + grouping proc_SysMemUsage-group { + description "system memory usage"; + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used. Recorded minimum value."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum memory usage was recorded."; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used. Recorded maximum value."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum memory usage recorded."; + } + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Average usage of system memory."; + } + leaf curr { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMemFree-group { + description "system free memory"; + leaf min { + config "false"; + type uint64; + description "Recorded minimum free memory of system."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum free memory recorded."; + } + leaf max { + config "false"; + type uint64; + description "Recorded maximum free memory of system."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum free memory recorded."; + } + leaf avg { + config "false"; + type uint64; + description "Average free memory of system."; + } + leaf curr { + config "false"; + type uint64; + description "Free memory of the system at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMemUsed-group { + description "system used memory"; + leaf min { + config "false"; + type uint64; + description "Recorded minimum used memory of system."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum system memory is used."; + } + leaf max { + config "false"; + type uint64; + description "Recorded maximum used memory of system."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum system memory is used."; + } + leaf avg { + config "false"; + type uint64; + description "Average used memory of system."; + } + leaf curr { + config "false"; + type uint64; + description "Used memory of the system at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Entity-group { + description "Process Entity"; + + // Maximum memory allocated for the system + // Ephemeral data + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum Memory Allocated"; + } + + // Free memory in the system + // Ephemeral data + leaf memFree { + config "false"; + + type proc_ProcMem; + description "Free Memory"; + } + + // CPU Usage in the system + // Ephemeral data + leaf cpuPct { + config "false"; + + type proc_PerUsage; + description "CPU Usage"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // Process entry in the system + // Ephemeral data + container process-items { + + // Ephemeral data + list Entry-list { + config "false"; + key "id"; + + uses proc_Entry-group; + description "Process Entry list"; + } + description "Process Entry"; + } + } + + grouping proc_Entry-group { + description "Process Entry"; + + // Process id + // Ephemeral data + leaf id { + config "false"; + + type proc_ProcId; + description "Process id of process. Represented in an integer value"; + } + + // Process name + // Ephemeral data + leaf processName { + config "false"; + + type proc_ProcessName; + description "Process name represented as a string"; + } + + // Start count of the process + // Ephemeral data + leaf startCnt { + config "false"; + + type proc_StartCnt; + description "Number of times the process is started"; + } + + // Program counter + // Ephemeral data + leaf pc { + config "false"; + + type proc_ProgCntr; + description "Address of the program counter represented in integer."; + } + + // Stack pointer + // Ephemeral data + leaf esp { + config "false"; + + type proc_Stack; + description "Process stack pointer represented as an integer address"; + } + + // Process Type + leaf processType { + config "false"; + + type proc_ProcessType; + description "Type to indicate whether the process is a vdc-local/vdc-global/non-sysmgr, represented as an enum"; + } + + // Maximum memory allocated for a process + // Ephemeral data + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum memory allocated by the process"; + } + + // Maximum memory used by a process + leaf memUsed { + config "false"; + + type proc_ProcMem; + description "Maximum memory used by the process"; + } + + // Operational state for a process + // Ephemeral data + leaf operState { + config "false"; + + type proc_OperState; + description "State to indicate process status[up/down], represented as an enum"; + } + + // Physical memory used by a process + // Ephemeral data + leaf phyMem { + config "false"; + + type proc_ProcMem; + description "Actual real physical memory used by the process (ram)"; + } + + // Ephemeral data + leaf procArg { + config "false"; + type string; + description "Argument list passed to the process"; + } + + // Ephemeral data + leaf startTime { + config "false"; + type uint64; + description "Start time of process,reported as nano seconds since unix epoch."; + } + + // Ephemeral data + leaf upTime { + config "false"; + type uint64; + description "Amount of time elapsed sine process started,expressed in timetick."; + } + + // Ephemeral data + leaf cpuUsgUsr { + config "false"; + type uint64; + description "Amount of CPU time used in user mode, expressed in timetick."; + } + + // Ephemeral data + leaf cpuUsgSys { + config "false"; + type uint64; + description "Amount of CPU time used in kernal mode, expressed in timetick."; + } + + // Process CPU utilization + // Ephemeral data + leaf cpuUtil { + config "false"; + + type proc_PerUsage; + description "Overall CPU time consumed by this process expressed in percentage."; + } + + // Process Memory Utilization + // Ephemeral data + leaf memUtil { + config "false"; + + type proc_PerUsage; + description "Utilization of RAM by this process expressed in percentage."; + } + + // Ephemeral data + leaf cpuUtil5sec { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 5 second, represented as percent"; + } + + // Ephemeral data + leaf cpuUtil1min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 1 minute, represented as percent"; + } + + // Ephemeral data + leaf cpuUtil5min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 5 minute, represented as percent"; + } + + // Priority of the process + // Ephemeral data + leaf priority { + config "false"; + + type proc_ProcPriority; + description "priority of the process, with which it is started"; + } + + // Ephemeral data + leaf avgCpuUtil { + config "false"; + type uint32; + description "Average CPU Util for the process in microsecond"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping rpm_Entity-group { + description "Route Policy Map Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + container inst-items { + + uses rpm_Inst-group; + description "Instance of route policy map"; + } + + // Route control rule for extended community lists + container rtextcom-items { + list Rule-list { + key "name"; + + uses rtextcom_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for access lists + container accesslist-items { + list Rule-list { + key "name"; + + uses rtlist_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for mac-lists + container maclist-items { + list RuleMac-list { + key "name"; + + uses rtmaclist_RuleMac-group; + description "Mac Rule list"; + } + description "Mac Rule"; + } + + // Route map rule + container rtmap-items { + list Rule-list { + key "name"; + + uses rtmap_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Expanded Community List + container expcommlist-items { + list ExpandedComList-list { + key "regex expcommname"; + + uses rtmap_ExpandedComList-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for V4 prefix lists + container pfxlistv4-items { + list RuleV4-list { + key "name"; + + uses rtpfx_RuleV4-group; + description "IPv4 Rule list"; + } + description "IPv4 Rule"; + } + + // Route control rule for V6 prefix lists + container pfxlistv6-items { + list RuleV6-list { + key "name"; + + uses rtpfx_RuleV6-group; + description "IPv6 Rule list"; + } + description "IPv6 Rule"; + } + + // Route control rule for regular community lists + container rtregcom-items { + list Rule-list { + key "name"; + + uses rtregcom_Rule-group; + description "Rule list"; + } + description "Rule"; + } + } + + grouping rpm_Inst-group { + description "Instance of route policy map"; + + // Object to hold RPM policy data stored at interface level + container rpmif-items { + list RpmIf-list { + key "id"; + + uses rpm_RpmIf-group; + description "RPM policy data at Interface level list"; + } + description "RPM policy data at Interface level"; + } + + // Object to hold RPM v6 policy data stored at interface level + container rpmv6if-items { + list Rpmv6If-list { + key "id"; + + uses rpm_Rpmv6If-group; + description "RPM v6 policy data at Interface level list"; + } + description "RPM v6 policy data at Interface level"; + } + } + + grouping rpm_RpmIf-group { + description "RPM policy data at Interface level"; + + leaf id { + + type nw_IfId; + description "Interface id over which the pbr policy is configured"; + } + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rpm_ConfigErr; + description "config Error associated with this MO"; + } + } + + grouping rpm_Rpmv6If-group { + description "RPM v6 policy data at Interface level"; + + leaf id { + + type nw_IfId; + description "Interface id over which the pbr policy is configured"; + } + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rpm_ConfigErr; + description "config Error associated with this MO"; + } + } + + grouping rtextcom_Rule-group { + description "Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type of the community list [regular | extended] + leaf type { + + type rtcom_ComT; + default "extended"; + description "Type"; + } + + // Mode + leaf mode { + + type rtcom_Mode; + description "Mode"; + } + + // Extended community list entry + container ent-items { + list Entry-list { + key "order"; + + uses rtextcom_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtExtCommAtt-items { + + uses rtmap_RtExtCommAtt_target-group; + description "Extended Community Attachment"; + } + } + + grouping rtextcom_Entry-group { + description "Entry"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } + + // Extended Rmac community + container extrmac-items { + + uses rtextcom_ExtRmac-group; + description "Extended community Router MAC"; + } + } + + grouping rtextcom_Item-group { + description "Item"; + + // type + leaf type { + + type rtextcom_Type; + description "Type"; + } + + // Scope + leaf scope { + + type rtextcom_Scope; + description "Scope"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtextcom_ExtRmac-group { + description "Extended community Router MAC"; + leaf commRmac { + type address_Mac; + description "RMAC Community Value"; + } + } + + grouping rtlist_Rule-group { + description "Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtlist_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtrtmapRtDstAccAtt-items { + + list RtRtmapRtDstAccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + + container rtrtmapRtDstV6AccAtt-items { + + list RtRtmapRtDstV6AccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6AccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + + container rtrtmapRtAsPathAccAtt-items { + + list RtRtmapRtAsPathAccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtAsPathAccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtlist_Entry-group { + description "Entry"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; + } + } + + grouping rtmaclist_RuleMac-group { + description "Mac Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtmaclist_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtrtmapRtMacListAtt-items { + + list RtRtmapRtMacListAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtMacListAtt_target-group; + description "Mac List list"; + } + description "Mac List"; + } + } + + grouping rtmaclist_Entry-group { + description "Entry"; + leaf macAddr { + type address_Mac; + description "Mac Address"; + } + leaf macAddrMask { + type address_Mac; + description "Mac Address Mask"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + } + + grouping rtmap_Rule-group { + description "Rule"; + + // Route map pbr-statistics + leaf pbrStatistics { + + type rtmap_AdminSt; + description "Route map pbr-statistics"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Route map entries + container ent-items { + list Entry-list { + key "order"; + + uses rtmap_Entry-group; + description "Entry list"; + } + description "Entry"; + } + } + + grouping rtmap_Entry-group { + description "Entry"; + + // Load Sharing v4 + leaf loadShareV4 { + + type rtmap_AdminSt; + description "Load Sharing V4"; + } + + // Load Sharing v6 + leaf loadShareV6 { + + type rtmap_AdminSt; + description "Load Sharing V6"; + } + + // Force Order v4 + leaf forceOrderV4 { + + type rtmap_AdminSt; + description "Force Order V4"; + } + + // Force Order v6 + leaf forceOrderV6 { + + type rtmap_AdminSt; + description "Force Order V6"; + } + + // Drop On Fail v4 + leaf dropOnFailV4 { + + type rtmap_AdminSt; + description "Drop On Fail V4 for v4 nexthop"; + } + + // Drop On Fail v6 + leaf dropOnFailV6 { + + type rtmap_AdminSt; + description "Drop On Fail V6 for v6 nexthop"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + + // Match rule based on regular communities + container mregcomm-items { + + uses rtmap_MatchRegComm-group; + description "Match on Regular Community"; + } + + // Match rule based on extended communities + container mextcomm-items { + + uses rtmap_MatchExtComm-group; + description "Match on Extended Community"; + } + + // Match rule based on route destinations + container mrtdst-items { + + uses rtmap_MatchRtDst-group; + description "Match on Route Destination"; + } + + // Match rule based on IPv6 route destinations + container mrtdstv6-items { + + uses rtmap_MatchRtDstV6-group; + description "Match on V6 Route Destination"; + } + + // Match rule based on ipv4 multicast attributes + container mipv4mcast-items { + + uses rtmap_MatchIPv4Mcast-group; + description "Match on IPv4 Multicast attributes"; + } + + // Match rule based on ipv6 multicast attributes + container mipv6mcast-items { + + uses rtmap_MatchIPv6Mcast-group; + description "Match on IPv6 Multicast attributes"; + } + + // Match rule based on route nexthops + container mrtnh-items { + + uses rtmap_MatchRtNh-group; + description "Match on Route Nexthop"; + } + + // Match rule based on route nexthops ipv6 + container mrtnhv6-items { + + uses rtmap_MatchRtNhV6-group; + description "Match on Route Nexthop Ipv6"; + } + + // Match rule based on route sources + container mrtsrc-items { + + uses rtmap_MatchRtSrc-group; + description "Match on Route Source"; + } + + // Match rule based on route sources ipv6 + container mrtsrcv6-items { + + uses rtmap_MatchRtSrcV6-group; + description "Match on Route Source ipv6"; + } + + // Match rule based on route types + container mrttype-items { + list MatchRtType-list { + key "routeT"; + + uses rtmap_MatchRtType-group; + description "Match on Route Types list"; + } + description "Match on Route Types"; + } + + // Match rule based on route tag + container mrttag-items { + list MatchRtTag-list { + key "tag"; + + uses rtmap_MatchRtTag-group; + description "Match on Route Tag list"; + } + description "Match on Route Tag"; + } + + // Match rule based on source protocol + container msrcprot-items { + list MatchSrcProto-list { + key "proto"; + + uses rtmap_MatchSrcProto-group; + description "Match on Route ASN list"; + } + description "Match on Route ASN"; + } + + // Match rule based on pervasive routes + container mrtpervasive-items { + + uses rtmap_MatchRtPervasive-group; + description "Match on Route Pervasive"; + } + + // Match rule based on AS Path Access List + container mrtacclist-items { + + uses rtmap_MatchAsPathAccessList-group; + description "Match on AS Path Access List"; + } + + // Match rule based on route metric + container mrtmetric-items { + list MatchRtMetric-list { + key "measure deviation"; + + uses rtmap_MatchRtMetric-group; + description "Match on Route Metric list"; + } + description "Match on Route Metric"; + } + + // Match rule based on route asn + container mrtasn-items { + list MatchRtAsn-list { + key "asn"; + + uses rtmap_MatchRtAsn-group; + description "Match on Route Asn list"; + } + description "Match on Route Asn"; + } + + // Match rule based on route Interface + container mrtif-items { + list MatchRtIf-list { + key "id"; + + uses rtmap_MatchRtIf-group; + description "Match on Route Interface list"; + } + description "Match on Route Interface"; + } + + // Match rule based on Ospf-area + container mrtospf-items { + list MatchRtOspf-list { + key "area"; + + uses rtmap_MatchRtOspf-group; + description "Match on Ospf Area ID list"; + } + description "Match on Ospf Area ID"; + } + + // Match rule based on mac-list + container mrtmaclist-items { + + uses rtmap_MatchRtMacList-group; + description "Match on Mac-list"; + } + + // Route map Continue + container scontinue-items { + + uses rtmap_Continue-group; + description "Entry"; + } + + // Set rule based on regular communities + container sregcomm-items { + + uses rtmap_SetRegComm-group; + description "Set Regular Community"; + } + + // Set rule based on generic extended communities + container sextcomm-items { + + uses rtmap_SetExtComm-group; + description "Set Extended Community"; + } + + // Set rule based on cost communities + container sextcommcost-items { + list SetExtCommCost-list { + key "commCrit commId"; + + uses rtmap_SetExtCommCost-group; + description "Set Extcommunity Cost list"; + } + description "Set Extcommunity Cost "; + } + + // Set rule based on color community + container sextcommcolor-items { + + uses rtmap_SetExtCommColor-group; + description "Set Extcommunity Color "; + } + + // Set rule based on rmac community + container sextcommrmac-items { + + uses rtmap_SetExtCommRmac-group; + description "Set Extcommunity RMAC "; + } + + // Set rule based on community list (for deletion) + container scommlist-items { + + uses rtmap_SetCommList-group; + description "Set Extended Community"; + } + + // Set rule based on community list (for deletion) + container sextcommlist-items { + + uses rtmap_SetExtCommList-group; + description "Set Ext Community"; + } + + // Set rule based on route targets communities + container srtt-items { + + uses rtmap_SetRttComm-group; + description "Set Route Target Community"; + } + + // Set rule based on route distance + container srtdist-items { + + uses rtmap_SetRtDist-group; + description "Set Route Distance"; + } + + // Set rule based on route tag + container srttag-items { + + uses rtmap_SetRtTag-group; + description "Set Route Tag"; + } + + // Set rule based on weight + container sweight-items { + + uses rtmap_SetWeight-group; + description "Set Weight"; + } + + // Set rule based on label-index + container slblindex-items { + + uses rtmap_SetLabelIndex-group; + description "Set LabelIndex"; + } + + // Set rule based on preference + container spref-items { + + uses rtmap_SetPref-group; + description "Set Preference"; + } + + // Set rule based on metric + container smetric-items { + + uses rtmap_SetMetric-group; + description "Set Metric"; + } + + // Set rule based on metric type + container smetrict-items { + + uses rtmap_SetMetricType-group; + description "Set Metric Type"; + } + + container sdamp-items { + + uses rtmap_SetDampeningType-group; + description "Set Dampening"; + } + + container sprec-items { + + uses rtmap_SetPrecedence-group; + description "Set Precedence"; + } + + container sprecv6-items { + + uses rtmap_SetV6Precedence-group; + description "Set IPv6 Precedence"; + } + + // Set rule based on ospf-nssa + container snssa-items { + + uses rtmap_SetOspfNssa-group; + description "Set Ospf Nssa"; + } + + // Set rule based on ospf forwarding address + container sfwdaddr-items { + + uses rtmap_SetOspfFwdAddr-group; + description "Set Ospf Forwarding Address"; + } + + // Set rule based on next hop + container nh-items { + list SetNh-list { + key "addr"; + + uses rtmap_SetNh-group; + description "Set Nexthop list"; + } + description "Set Nexthop"; + } + + // Set rule based on next hop peer-address + container nhpa-items { + + uses rtmap_SetNhPeerAddr-group; + description "Set Nexthop Peer Address"; + } + + // Set rule based on as-path prepend + container setaspathprepend-items { + + uses rtmap_SetPrepend-group; + description "Set Prepend"; + } + + // Set Prepend Last As + container setaspathlastas-items { + + uses rtmap_SetPrependLastAs-group; + description "Set Prepend Last As"; + } + + // Set Prepend Tag + container setaspathtag-items { + + uses rtmap_SetAsPathTag-group; + description "Set As Path Tag"; + } + + // Set rule based on origin type + container origin-items { + + uses rtmap_SetOrigin-group; + description "Set Origin Type"; + } + + // Set rule based on evpn gateway ipaddr + container sevpn-items { + + uses rtmap_SetEvpn-group; + description "Set Evpn Gateway Ip Addr and Ether Tag"; + } + + // Set rule based on next hop verify availability + container nhva-items { + list SetNhVA-list { + key "addr"; + + uses rtmap_SetNhVA-group; + description "Set Nexthop Verify Availability list"; + } + description "Set Nexthop Verify Availability"; + } + + // Set Path Selection + container spselect-items { + + uses rtmap_SetPathSelection-group; + description "Set As Path Tag"; + } + + // set Interface + container sintf-items { + list SetIntf-list { + key "if"; + + uses rtmap_SetIntf-group; + description "Set Interface for route-map list"; + } + description "Set Interface for route-map"; + } + } + + grouping rtmap_MatchRegComm-group { + description "Match on Regular Community"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + description "Type"; + } + + // criteria + leaf criteria { + + type rtmap_Criteria; + description "Criteria"; + } + + container rsregCommAtt-items { + + list RsRegCommAtt-list { + key "tDn"; + + uses rtmap_RsRegCommAtt_source-group; + description "Regular Community Attachment list"; + } + description "Regular Community Attachment"; + } + } + + grouping rtmap_MatchExtComm-group { + description "Match on Extended Community"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "ext-community"; + description "Type"; + } + + // criteria + leaf criteria { + + type rtmap_Criteria; + description "Criteria"; + } + + container rsextCommAtt-items { + + list RsExtCommAtt-list { + key "tDn"; + + uses rtmap_RsExtCommAtt_source-group; + description "Extended Community Attachment list"; + } + description "Extended Community Attachment"; + } + } + + grouping rtmap_MatchRtDst-group { + description "Match on Route Destination"; + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-dst"; + description "Type"; + } + + container rsrtDstAtt-items { + + list RsRtDstAtt-list { + key "tDn"; + + uses rtmap_RsRtDstAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + + container rsrtDstAccAtt-items { + + list RsRtDstAccAtt-list { + key "tDn"; + + uses rtmap_RsRtDstAccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchRtDstV6-group { + description "Match on V6 Route Destination"; + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-dst-v6"; + description "Type"; + } + + container rsrtDstV6Att-items { + + list RsRtDstV6Att-list { + key "tDn"; + + uses rtmap_RsRtDstV6Att_source-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; + } + + container rsrtDstV6AccAtt-items { + + list RsRtDstV6AccAtt-list { + key "tDn"; + + uses rtmap_RsRtDstV6AccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchIPv4Mcast-group { + description "Match on IPv4 Multicast attributes"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr { + length "0..32"; + } + description "descr"; + } + + // Type + leaf type { + config "false"; + + type rtmap_MatchT; + default "rt-ipv4-mcast"; + description "Type"; + } + leaf groupAddr { + type address_Ip; + description "multicast group prefix"; + } + leaf groupStartAddr { + type address_Ip; + description "multicast group start range"; + } + leaf groupEndAddr { + type address_Ip; + description "multicast group end range"; + } + leaf rp { + type address_Ip; + description "multicast rendezvous prefix"; + } + + // rp type ASM/Bidir + leaf rpType { + + type rtmap_rpTypeT; + description "rp type ASM/Bidir"; + } + leaf sourceAddr { + type address_Ip; + description "multicast source prefix"; + } + } + + grouping rtmap_MatchIPv6Mcast-group { + description "Match on IPv6 Multicast attributes"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr { + length "0..32"; + } + description "descr"; + } + + // Type + leaf type { + config "false"; + + type rtmap_MatchT; + default "rt-ipv4-mcast"; + description "Type"; + } + leaf groupAddr { + type address_Ip; + description "multicast group prefix"; + } + leaf groupStartAddr { + type address_Ip; + description "multicast group start range"; + } + leaf groupEndAddr { + type address_Ip; + description "multicast group end range"; + } + leaf rp { + type address_Ip; + description "multicast rendezvous prefix"; + } + + // rp type ASM/Bidir + leaf rpType { + + type rtmap_rpTypeT; + description "rp type ASM/Bidir"; + } + leaf sourceAddr { + type address_Ip; + description "multicast source prefix"; + } + } + + grouping rtmap_MatchRtNh-group { + description "Match on Route Nexthop"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-nh"; + description "Type"; + } + + container rsrtNhAtt-items { + + list RsRtNhAtt-list { + key "tDn"; + + uses rtmap_RsRtNhAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtNhV6-group { + description "Match on Route Nexthop Ipv6"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-nh-v6"; + description "Type"; + } + + container rsrtNhV6Att-items { + + list RsRtNhV6Att-list { + key "tDn"; + + uses rtmap_RsRtNhV6Att_source-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; + } + } + + grouping rtmap_MatchRtSrc-group { + description "Match on Route Source"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-src"; + description "Type"; + } + + container rsrtSrcAtt-items { + + list RsRtSrcAtt-list { + key "tDn"; + + uses rtmap_RsRtSrcAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtSrcV6-group { + description "Match on Route Source ipv6"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-src-v6"; + description "Type"; + } + + container rsrtSrcV6Att-items { + + list RsRtSrcV6Att-list { + key "tDn"; + + uses rtmap_RsRtSrcV6Att_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtType-group { + description "Match on Route Types"; + + // Route types + leaf routeT { + + type rtmap_RouteT; + description "Route Type"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-type"; + description "Type"; + } + } + + grouping rtmap_MatchRtTag-group { + description "Match on Route Tag"; + + // Route tag + leaf tag { + + type rtmap_RouteTag; + description "Route Tag"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-tag"; + description "Type"; + } + } + + grouping rtmap_MatchSrcProto-group { + description "Match on Route ASN"; + leaf proto { + type string { + length "1..32"; + } + description "Match Source Protocol"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "src-proto"; + description "Type"; + } + } + + grouping rtmap_MatchRtPervasive-group { + description "Match on Route Pervasive"; + + // Route pervasive + leaf pervasive { + + type rtmap_RoutePervasive; + description "Pervasive"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-pervasive"; + description "Type"; + } + } + + grouping rtmap_MatchAsPathAccessList-group { + description "Match on AS Path Access List"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "as-path"; + description "Type"; + } + + container rsrtAsPathAccAtt-items { + + list RsRtAsPathAccAtt-list { + key "tDn"; + + uses rtmap_RsRtAsPathAccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchRtMetric-group { + description "Match on Route Metric"; + + // Route metric measure + leaf measure { + + type rtmap_CommunityVal; + description "Route Metric Measure"; + } + + // Route metric deviation + leaf deviation { + + type rtmap_CommunityVal; + description "Route Metric Deviation"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-metric"; + description "Type"; + } + } + + grouping rtmap_MatchRtAsn-group { + description "Match on Route Asn"; + leaf asn { + type string; + description "Route Asn"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-asn"; + description "Type"; + } + } + + grouping rtmap_MatchRtIf-group { + description "Match on Route Interface"; + + // Route asn + leaf id { + + type nw_IfId; + description "Route If"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-if"; + description "Type"; + } + } + + grouping rtmap_MatchRtOspf-group { + description "Match on Ospf Area ID"; + + // Route ospf + leaf area { + + type rtmap_OSPFArea; + description "OSPF Area"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-ospf"; + description "Type"; + } + } + + grouping rtmap_MatchRtMacList-group { + description "Match on Mac-list"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-mac-list"; + description "Type"; + } + + container rsrtMacListAtt-items { + + list RsRtMacListAtt-list { + key "tDn"; + + uses rtmap_RsRtMacListAtt_source-group; + description "Mac List list"; + } + description "Mac List"; + } + } + + grouping rtmap_Continue-group { + description "Entry"; + + // Continue + leaf continue { + + type rtmap_Order; + description "continue"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "continue"; + description "Type"; + } + } + + grouping rtmap_SetRegComm-group { + description "Set Regular Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + // No Community Attribute + leaf noCommAttr { + + type rtmap_AdminSt; + description "No Community Attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; + + uses rtmap_SetCommItem-group; + description "Set Community Item list"; + } + description "Set Community Item"; + } + + // Item in the community list + container item-items { + list Item-list { + key "community"; + + uses rtregcom_Item-group; + description "Item list"; + } + description "Item"; + } + } + + grouping rtmap_SetCommItem-group { + description "Set Community Item"; + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtregcom_Item-group { + description "Item"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtmap_SetExtComm-group { + description "Set Extended Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + // No Community Attribute + leaf noCommAttr { + + type rtmap_AdminSt; + description "No Community Attribute"; + } + + leaf scope { + + type rtextcom_Scope; + description "Scope"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "ext-gen-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } + + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; + + uses rtmap_SetCommItem-group; + description "Set Community Item list"; + } + description "Set Community Item"; + } + } + + grouping rtmap_SetExtCommCost-group { + description "Set Extcommunity Cost "; + + // Set criteria for IGP or Pre-bestpath + leaf commCrit { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Community Id + leaf commId { + + type rtmap_CommunityId; + description "Community Id"; + } + + // Community Value + leaf commValue { + + type rtmap_CommunityVal; + description "Community Value"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "extcommunity-cost"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetExtCommColor-group { + description "Set Extcommunity Color "; + leaf commValue { + type uint32 { + range "1..4294967295"; + } + description "Color Community Value"; + } + } + + grouping rtmap_SetExtCommRmac-group { + description "Set Extcommunity RMAC "; + leaf commRmac { + type address_Mac; + description "RMAC Community Value"; + } + } + + grouping rtmap_SetCommList-group { + description "Set Extended Community"; + + // Delete Matching Communities + leaf delete { + + type rtmap_AdminSt; + description "Delete Matching Communities"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "list-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetExtCommList-group { + description "Set Ext Community"; + + // Delete Matching Communities + leaf delete { + + type rtmap_AdminSt; + description "Delete Matching Ext Communities"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "list-extcommunity"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetRttComm-group { + description "Set Route Target Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "rtt-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses rtmap_SetCommItem-group; + description "Set Community Item list"; } + description "Set Community Item"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping rtmap_SetRtDist-group { + description "Set Route Distance"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Route Administrative Distance for IGP or EBGP + leaf dist { + + type rtmap_RouteDist; + description "Distance"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Route Administrative Distance for Internal + leaf distI { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type rtmap_RouteDist; + description "Distance internal"; } - // This objects hold per ipv6 instance information. There is - // only one instance of ipv6 running in the system today - container inst-items { + // Route Administrative Distance for local + leaf distL { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ipv6 - uses ipv6_Inst-group; + type rtmap_RouteDist; + description "Distance local"; } - } - grouping ipv6_Inst-group { - - // ipv6 access-list match local - // Type is an MO-Defined-Type - leaf accessListMatchLocal { - description "Access-List Match Local"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // static neighbor outside subnet - // Type is an MO-Defined-Type - leaf staticNeighborOutsideSubnet { - description "Static Neighbor Outside Subnet "; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Queue 1 packet when triggered NS is sent - // Type is an MO-Defined-Type - leaf queuePackets { - description "Queue-packets"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtmap_SetT; + default "rt-dist"; + description "Type"; } + } - // Switch ND packets received on core ports - // Type is an MO-Defined-Type - leaf switchPackets { - description "Switch-packets"; + grouping rtmap_SetRtTag-group { + description "Set Route Tag"; - // Type is an MO-Defined-Type - type ip_SwitchPktTarget; + // Tag value + leaf tag { + + type rtmap_RouteTag; + description "Tag"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtmap_SetT; + default "rt-tag"; + description "Type"; } + } - // Objectification of IPv6 route statistics - container mtustats-items { + grouping rtmap_SetWeight-group { + description "Set Weight"; - // Added containment as a singleton: Prefix=mtustats - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheStatGlobal-group; + // Weight value + leaf weight { + + type rtmap_Weight; + description "Weight"; } - // Objectification of IPv6 Client statistics - container clientstats-items { - list IPv6Clients-list { - config "false"; - key "clientName clientProtocol"; + leaf name { - // Added containment: Prefix=clientstats - // Acquired From Package ipv6 - uses ipv6_IPv6Clients-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + leaf descr { - // Added containment: Prefix=dom - // Acquired From Package ipv6 - uses ipv6_Dom-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Objectification of IPv6 Fragments statistics - container fragstats-items { - list IPv6Fragments-list { - config "false"; - key "srcAddr"; + // Type + leaf type { - // Added containment: Prefix=fragstats - // Acquired From Package ipv6 - uses ipv6_IPv6Fragments-group; - } + type rtmap_SetT; + default "rt-weight"; + description "Type"; } - container logs-items { - list IPv6EventLogs-list { - key "eventType"; + } - // Added containment: Prefix=logs - // Acquired From Package ipv6 - uses ipv6_IPv6EventLogs-group; - } - } + grouping rtmap_SetLabelIndex-group { + description "Set LabelIndex"; - // Holds ipv6 global statistics - container pktqstats-items { + // Label Index value + leaf index { - // Added containment as a singleton: Prefix=pktqstats - // Acquired From Package ipv6 - uses ipv6_IPv6InstStat-group; + type rtmap_Index; + description "Label Index"; } - // Objectification of IPv6 neighbor statistics - container ipv6stats-items { - list IPv6Stat-list { - config "false"; - key "ftmName"; + leaf name { - // Added containment: Prefix=ipv6stats - // Acquired From Package ipv6 - uses ipv6_IPv6Stat-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Objectification of IPv6 interface statistics - container trafficstats-items { + leaf descr { - // Added containment as a singleton: Prefix=trafficstats - // Acquired From Package ipv6 - uses ipv6_IPv6TrafficStat-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping ipv6_IPv6MtuCacheStatGlobal-group { - leaf outstandingEntries { - config "false"; - type uint32; - } - leaf expiredEntries { - config "false"; - type uint64; - } - leaf purgedEntries { - config "false"; - type uint64; - } - leaf internalErrors { - config "false"; - type uint64; - } - leaf pktTooBig { - config "false"; - type uint64; - } - leaf cacheMisses { - config "false"; - type uint64; - } - leaf cacheUpdates { - config "false"; - type uint64; - } - leaf smallMtuAdv { - config "false"; - type uint64; - } - leaf cacheNoUpdates { - config "false"; - type uint64; + // Type + leaf type { + + type rtmap_SetT; + default "rt-index"; + description "Type"; } } - grouping ipv6_IPv6Clients-group { - leaf clientName { - config "false"; - type string; - } - leaf clientStatus { - config "false"; - type string; - } - leaf clientPid { - config "false"; - type int32; - } - leaf clientExtPid { - config "false"; - type int32; - } - leaf clientProtocol { - config "false"; - type int32; - } - leaf clientPibIndex { - config "false"; - type int32; + grouping rtmap_SetPref-group { + description "Set Preference"; + + // Preference value + leaf localPref { + + type rtmap_LocalPref; + description "Local Preference"; } - leaf clientUuid { - config "false"; - type int32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf clientRoutingVrf { - config "false"; - type int32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf clientRoutingFlag { - config "false"; - type int32; + + // Type + leaf type { + + type rtmap_SetT; + default "local-pref"; + description "Type"; } - leaf clientCtrlMtsSap { - config "false"; - type int32; + } + + grouping rtmap_SetMetric-group { + description "Set Metric"; + + // Metric value for bandwidth + leaf metric { + + type rtmap_MetricS; + description "Metric"; } - leaf clientDataMtsSap { - config "false"; - type int32; + + // Metric value for delay + leaf metricD { + + type rtmap_MetricD; + description "Metric delay"; } - leaf destUnreachSent { - config "false"; - type int32; + + // Metric value for reliability + leaf metricR { + + type rtmap_MetricR; + description "Metric rlblty"; } - leaf destUnreachRcvd { - config "false"; - type int32; + + // Metric value for load + leaf metricL { + + type rtmap_MetricL; + description "Metric load"; } - leaf adminProhibSent { - config "false"; - type int32; + + // Metric value for mtu + leaf metricM { + + type rtmap_MetricM; + description "Metric mtu"; } - leaf adminProhibRcvd { - config "false"; - type int32; + + // is BGP config + leaf isBGP { + + type rtmap_Proto; + description "is BGP config"; } - leaf clientIfExtIndex { - config "false"; - type int32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf clientRecvFn { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf clientRecvHex { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "metric"; + description "Type"; } } - grouping ipv6_Dom-group { + grouping rtmap_SetMetricType-group { + description "Set Metric Type"; + + // Metric Type + leaf metricT { + + type rtmap_MetricT; + description "Metric Type"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - container mtustats-items { + leaf descr { - // Added containment as a singleton: Prefix=mtustats - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheStat-group; + type naming_Descr; + description "Description of the specified attribute"; } - // ipv6 route static bfd - container rtstaticbfd-items { - list RtStaticBfd-list { - key "intf nexthop"; + // Type + leaf type { - // Added containment: Prefix=rtstaticbfd - // Acquired From Package ipv6 - uses ipv6_RtStaticBfd-group; - } + type rtmap_SetT; + default "metric-type"; + description "Type"; } + } - // This object holds ipv6 information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping rtmap_SetDampeningType-group { + description "Set Dampening"; - // Added containment: Prefix=if - // Acquired From Package ipv6 - uses ipv6_If-group; - } + // Dampening Halflife + leaf halflife { + + type rtmap_HalfLife; + description "Dampening Halfife"; } - // Objectification of IPv6 route statistics - container procstats-items { + // Dampening Reuse + leaf reuse { - // Added containment as a singleton: Prefix=procstats - // Acquired From Package ipv6 - uses ipv6_IPv6ProcessStat-group; + type rtmap_Reuse; + description "Dampening Reuse"; } - // Static route definitions - container rt-items { - list Route-list { - key "prefix"; + // Dampening Supress + leaf supress { - // Added containment: Prefix=rt - // Acquired From Package ipv6 - uses ipv6_Route-group; - } + type rtmap_Supress; + description "Dampening Supress"; } - // Objectification of IPv6 route statistics - container routestats-items { + // Dampening Duration + leaf duration { - // Added containment as a singleton: Prefix=routestats - // Acquired From Package ipv6 - uses ipv6_IPv6RouteStat-group; + type rtmap_Duration; + description "Dampening Duration"; } - } - grouping ipv6_IPv6MtuCacheStat-group { - container addr-items { - list IPv6MtuCacheDestStat-list { - config "false"; - key "pathDestination"; + leaf name { - // Added containment: Prefix=addr - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheDestStat-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - } - grouping ipv6_IPv6MtuCacheDestStat-group { - leaf pathDestination { - config "false"; - type address_Ipv6; - } - leaf pathMtu { - config "false"; - type uint16; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf outgoingIod { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "dampening"; + description "Type"; } - leaf smallMtuReceived { - config "false"; - type string; + } + + grouping rtmap_SetPrecedence-group { + description "Set Precedence"; + + // Precedence Name + leaf precname { + + type rtmap_PrecName; + description "Precedence Name"; } - leaf bigMtuReeived { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf smallMtu { - config "false"; - type uint16; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf lastMtuUpdate { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "ip-prec"; + description "Type"; } } - grouping ipv6_RtStaticBfd-group { + grouping rtmap_SetV6Precedence-group { + description "Set IPv6 Precedence"; - // interface value. - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + // Precedence Name + leaf precname { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_PrecName; + description "Precedence Name"; } - leaf nexthop { - type address_Ip; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "ipv6-prec"; + description "Type"; } } - grouping ipv6_If-group { + grouping rtmap_SetOspfNssa-group { + description "Set Ospf Nssa"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } - // Handle ipv6 address use-link-local-address" - // Type is an MO-Defined-Type - leaf useLinkLocalAddr { - description "IPv6 Address Use Link Local Address"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Handle ipv6 urpf info" - // Type is an MO-Defined-Type - leaf urpf { - description "IPv6 URPF Info"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_UrpfT; + type rtmap_SetT; + default "ospf-nssa"; + description "Type"; } + } - // Handle ipv6 forward" - // Type is an MO-Defined-Type - leaf forward { - description "IPv6 forward"; + grouping rtmap_SetOspfFwdAddr-group { + description "Set Ospf Forwarding Address"; + leaf fwdAddr { + type address_Ip; + description "Forwarding Address"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // IPv6 Stateless address autoconfig - // Type is an MO-Defined-Type - leaf autoconfig { - description "IPv6 Stateless address autoconfig"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // adds default route and the nh would be fetched from RA source address - // Type is an MO-Defined-Type - leaf defaultRoute { - description "Default Route Addition with Nexthop as RA Source Address"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtmap_SetT; + default "ospf-fwd-addr"; + description "Type"; } - leaf llAddr { + } + + grouping rtmap_SetNh-group { + description "Set Nexthop"; + leaf addr { type address_Ip; + description "Address"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type + // Config error in this MO leaf configError { config "false"; - description "Config error"; - // Type is an MO-Defined-Type - type ipv6_ConfigErr; + type rtmap_ConfigErr; + description "config Error associated with this MO"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_SetT; + default "ip-nh"; + description "Type"; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping rtmap_SetNhPeerAddr-group { + description "Set Nexthop Peer Address"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + // IPv4 Next hop peer address + leaf v4PeerAddr { + + type rtmap_AdminSt; + description "Set Next Hop V4 Peer Address"; } - // Interface controls - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // IPv6 Next hop peer address + leaf v6PeerAddr { - // Type is an MO-Defined-Type - type ip_IfControl; + type rtmap_AdminSt; + description "Set Next Hop V6 Peer Address"; } - // Interface mode - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // IPv4 Next hop Unchanged + leaf v4Unchange { - // Type is an MO-Defined-Type - type ip_IfMode; + type rtmap_AdminSt; + description "Set IPv4 Next Hop Unchanged"; } - // Donor interface - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf donorIf { - description "Donor Interface"; + // IPv6 Next hop Unchanged + leaf v6Unchange { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_AdminSt; + description "Set IPv6 Next Hop Unchanged"; } - // Operational state - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // IPv4 Next hop Redist Unchanged + leaf v4RedistUnchange { - // Type is an MO-Defined-Type - type ip_OperSt; + type rtmap_AdminSt; + description "Set IPv4 Next Hop Redist Unchanged"; } - // Operational state qualifier - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // IPv6 Next hop Redist Unchanged + leaf v6RedistUnchange { - // Type is an MO-Defined-Type - type ip_UnnumberedOperStQual; + type rtmap_AdminSt; + description "Set IPv6 Next Hop Redist Unchanged"; } - // Interface address - container addr-items { - list Addr-list { - key "addr"; + // Config error in this MO + leaf configError { + config "false"; - // Added containment: Prefix=addr - // Acquired From Package ipv6 - uses ipv6_Addr-group; - } + type rtmap_ConfigErr; + description "config Error associated with this MO"; } - // Link local Interface address - container lladdr-items { - list LLaddr-list { - key "addr"; + leaf name { - // Added containment: Prefix=lladdr - // Acquired From Package ipv6 - uses ipv6_LLaddr-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // IPv6 Neighbor Address - container nghbr-items { - list Neighbor-list { - key "addr"; + leaf descr { - // Added containment: Prefix=nghbr - // Acquired From Package ipv6 - uses ipv6_Neighbor-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Objectification of IPv6 interface statistics - container ifstats-items { + // Type + leaf type { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package ipv6 - uses ipv6_IPv6IfStat-group; + type rtmap_SetT; + default "nh-pa"; + description "Type"; } + } - // Objectification of IPv6 neighbor statistics - container nbrstats-items { - list IPv6NeighborStat-list { - config "false"; - key "ngbrAddr"; - - // Added containment: Prefix=nbrstats - // Acquired From Package ipv6 - uses ipv6_IPv6NeighborStat-group; + grouping rtmap_SetPrepend-group { + description "Set Prepend"; + leaf as { + type string { + pattern ".*[0-9 \\.]*"; } + description "As Path Prepend"; } - // Route map entries - container rpol-items { + leaf name { - // Added containment as a singleton: Prefix=rpol - // Acquired From Package rtmap - uses rtmap_RmapPolicy-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - container rtvrfMbr-items { + leaf descr { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Type + leaf type { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type rtmap_SetT; + default "prepend"; + description "Type"; } } - grouping ipv6_Addr-group { - leaf addr { - type address_Ip; - } + grouping rtmap_SetPrependLastAs-group { + description "Set Prepend Last As"; - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // As Path Last As + leaf lastas { - // Type is an MO-Defined-Type - type ip_AddrT; + type rtmap_RouteLastAs; + description "LastAs"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf name { - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + leaf descr { - // Type is an MO-Defined-Type - type rt_Preference; + type naming_Descr; + description "Description of the specified attribute"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + // Type + leaf type { - // Type is an MO-Defined-Type - type rt_Tag; + type rtmap_SetT; + default "lastas"; + description "Type"; } + } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping rtmap_SetAsPathTag-group { + description "Set As Path Tag"; - // Type is an MO-Defined-Type - type ip_OperSt; + // Set as path + leaf tag { + + type rtmap_AdminSt; + description "Set as path tag"; } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + leaf name { - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - } - grouping ipv6_LLaddr-group { - leaf addr { - type address_Ip; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type + // Type leaf type { - description "Type"; - // Type is an MO-Defined-Type - type ip_AddrT; + type rtmap_SetT; + default "as-pathtag"; + description "Type"; } + } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping rtmap_SetOrigin-group { + description "Set Origin Type"; - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + // Metric Type + leaf originT { + + type rtmap_OriginT; + description "Origin Type"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Remote ASN + leaf asn { - // Type is an MO-Defined-Type - type rt_Preference; + type rtcom_AS; + description "Autonomous System Number"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + leaf name { - // Type is an MO-Defined-Type - type rt_Tag; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf descr { - // Type is an MO-Defined-Type - type ip_OperSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + type rtmap_SetT; + default "origin"; + description "Type"; } } - grouping ipv6_Neighbor-group { - leaf neighborMac { - type address_Mac; + grouping rtmap_SetEvpn-group { + description "Set Evpn Gateway Ip Addr and Ether Tag"; + leaf ip { + type address_Ip; + description "EVPN Gateway IP Address"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config error"; + leaf name { - // Type is an MO-Defined-Type - type ipv6_ConfigErr; - } - leaf addr { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type ip_AddrT; + type naming_Descr; + description "Description of the specified attribute"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_AddrControl; + type rtmap_SetT; + description "Type"; } - leaf vpcPeer { + } + + grouping rtmap_SetNhVA-group { + description "Set Nexthop Verify Availability"; + leaf addr { type address_Ip; + description "Set NH Verify Availability Address"; + } + leaf trackId { + type uint32 { + range "1..512"; + } + description "Track id for Next Hop VA Address"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + leaf name { - // Type is an MO-Defined-Type - type rt_Preference; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + leaf descr { - // Type is an MO-Defined-Type - type rt_Tag; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_OperSt; + type rtmap_SetT; + default "ip-nh"; + description "Type of NH Verify Availability"; } } - grouping ipv6_IPv6IfStat-group { - leaf id { - config "false"; - type string; - } - leaf ifName { - config "false"; - type string; - } - leaf ifProtoState { - config "false"; - type string; - } - leaf ifLinkState { - config "false"; - type string; - } - leaf ifAdminState { - config "false"; - type string; - } - leaf ifIod { - config "false"; - type uint32; - } - leaf ifFwdStatus { - config "false"; - type boolean; - } - leaf ifIpv6Enabled { - config "false"; - type string; - } - leaf ifAddr { - config "false"; - type string; - } - leaf ifAddrSubnet { - config "false"; - type address_Ip; - } - leaf ifAnycastAddr { - config "false"; - type string; - } - leaf ifLLaddr { - config "false"; - type address_Ip; - } - leaf ifLinkLocalConfigStatus { - config "false"; - type string; - } - leaf ifLinkLocalState { - config "false"; - type string; + grouping rtmap_SetPathSelection-group { + description "Set As Path Tag"; + + // BGP path advertise + leaf psAdvertise { + + type rtmap_PsType; + description "Specifies BGP path Advertise"; } - leaf ifVIPAddr { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifMcastRoutingStatus { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifReportLLStatus { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "ps-adv"; + description "Type of set path selection"; } - leaf ifMcastGroupLocallyJoined { - config "false"; - type string; + } + + grouping rtmap_SetIntf-group { + description "Set Interface for route-map"; + + leaf if { + + type nw_IfId; + description "set interface for route-map"; } - leaf ifMcastSrcGrpAddr { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifmtu { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifUcastRevPathFwdMode { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + description "Type"; } - leaf ifUcastRevPathFwdFlag { - config "false"; - type string; + } + + grouping rtmap_ExpandedComList-group { + description "Rule"; + leaf regex { + type string { + length "0..63"; + } + description "Expanded Community list Regular Expression"; } - leaf ifLoadSharing { - config "false"; - type string; + leaf expcommname { + type string { + length "0..63"; + } + description "Expanded Community list Name"; } - leaf ifStatLastReset { - config "false"; - type string; + + // Deny or Permit + leaf action { + + type rtmap_Action; + description "Action"; } - leaf ifAclInbound { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifAclOutbound { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifUnspecifiedSrc { - config "false"; - type uint32; + } + + grouping rtpfx_RuleV4-group { + description "IPv4 Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifTotalPktRxTentativeAddr { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; } - leaf ifTotalPktRxInvalidAddrState { - config "false"; - type uint32; + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtpfx_Entry-group; + description "Entry list"; + } + description "Entry"; } - leaf ifTotalPktRxDuplicateState { - config "false"; - type uint32; + + container rtrtmapRtDstAtt-items { + + list RtRtmapRtDstAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf ifAnycastPktTCP { - config "false"; - type uint32; + + container rtrtmapRtDstV6Att-items { + + list RtRtmapRtDstV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6Att_target-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; } - leaf ifDeliverInterfaceDown { - config "false"; - type uint32; + + container rtrtmapRtNhAtt-items { + + list RtRtmapRtNhAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastPktsForwarded { - config "false"; - type uint32; + + container rtrtmapRtNhV6Att-items { + + list RtRtmapRtNhV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhV6Att_target-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; } - leaf rpUcastPktsOriginated { - config "false"; - type uint32; + + container rtrtmapRtSrcAtt-items { + + list RtRtmapRtSrcAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastPktsConsumed { - config "false"; - type uint32; + + container rtrtmapRtSrcV6Att-items { + + list RtRtmapRtSrcV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcV6Att_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastBytesForwarded { - config "false"; - type uint32; + } + + grouping rtpfx_Entry-group { + description "Entry"; + leaf pfx { + type address_Ip; + description "Prefix"; } - leaf rpUcastBytesOriginated { - config "false"; - type uint32; + leaf mask { + type address_Ip; + description "mask"; } - leaf rpUcastBytesConsumed { - config "false"; - type uint32; + + // criteria, exact match or inexact match + leaf criteria { + + type rtpfx_Criteria; + description "Criteria"; } - leaf rpMcastPktsForwarded { - config "false"; - type uint32; + + // If the criteria is not an exact match, use a range to + // describe the prefix list range + leaf fromPfxLen { + + type l3_IpPfxLen; + description "Start of Prefix Length"; } - leaf rpMcastPktsOriginated { - config "false"; - type uint32; + + leaf toPfxLen { + + type l3_IpPfxLen; + description "End of Prefix Length"; } - leaf rpMcastPktsConsumed { - config "false"; - type uint32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rpMcastBytesForwarded { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rpMcastBytesOriginated { - config "false"; - type uint32; + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf rpMcastBytesConsumed { - config "false"; - type uint32; + + // Action + leaf action { + + type rtflt_Action; + description "Action"; } } - grouping ipv6_IPv6NeighborStat-group { - leaf ngbrAddr { - config "false"; - type address_Ipv6; + grouping rtpfx_RuleV6-group { + description "IPv6 Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - } - grouping ipv6_IPv6ProcessStat-group { - leaf procVRFId { - config "false"; - type uint32; + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; } - leaf procAutoDiscard { - config "false"; - type string; + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtpfx_Entry-group; + description "Entry list"; + } + description "Entry"; } - leaf procAutoDiscardAdded { - config "false"; - type string; + + container rtrtmapRtDstAtt-items { + + list RtRtmapRtDstAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf procStaticDiscard { - config "false"; - type string; + + container rtrtmapRtDstV6Att-items { + + list RtRtmapRtDstV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6Att_target-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; } - leaf procStaticDefaultCount { - config "false"; - type uint32; + + container rtrtmapRtNhAtt-items { + + list RtRtmapRtNhAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf procIODList { - config "false"; - type string; + + container rtrtmapRtNhV6Att-items { + + list RtRtmapRtNhV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhV6Att_target-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; } - leaf procLocalAddrList { - config "false"; - type string; + + container rtrtmapRtSrcAtt-items { + + list RtRtmapRtSrcAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + + container rtrtmapRtSrcV6Att-items { + + list RtRtmapRtSrcV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcV6Att_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } } - grouping ipv6_Route-group { + grouping rtregcom_Rule-group { + description "Rule"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf prefix { - type address_Ip; + + // Type of the community list [regular | extended] + leaf type { + + type rtcom_ComT; + description "Type"; } - // Route preference, the administrative distance assigned - // to this route - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Mode + leaf mode { - // Type is an MO-Defined-Type - type rt_Preference; + type rtcom_Mode; + description "Mode"; } - // Route tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + // Regular community list entry + container ent-items { + list Entry-list { + key "order"; - // Type is an MO-Defined-Type - type rt_Tag; + uses rtregcom_Entry-group; + description "Entry list"; + } + description "Entry"; } - // Policy tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; + container rtRegCommAtt-items { - // Type is an MO-Defined-Type - type actrl_PcTag; + uses rtmap_RtRegCommAtt_target-group; + description "Regular Community Attachment"; } + } - // Route ctrl - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping rtregcom_Entry-group { + description "Entry"; - // Type is an MO-Defined-Type - type ip_RtControl; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Nexthops for the static route - container nh-items { - list Nexthop-list { - key "nhIf nhAddr nhVrf"; + leaf descr { - // Added containment: Prefix=nh - // Acquired From Package ipv6 - uses ipv6_Nexthop-group; + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; } + description "Order"; } - // Temporary Nexthop stub created until the Spine proxy - // IP address is determined. - container nhs-items { - list NexthopStub-list { - config "false"; - key "nhIf nhAddr nhVrf"; + // Action + leaf action { - // Added containment: Prefix=nhs - // Acquired From Package ipv6 - uses ipv6_NexthopStub-group; + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; } + description "Regular Expression"; } - } - grouping ipv6_Nexthop-group { - leaf rtname { - type string; + // Item in the community list + container item-items { + list Item-list { + key "community"; + + uses rtregcom_Item-group; + description "Item list"; + } + description "Item"; } - leaf tag { - type uint32; + } + + grouping srcintf_Entity-group { + description " IP Source Interface"; + container dns-items { + list DnsSrcIf-list { + key "vrf"; + + uses srcintf_DnsSrcIf-group; + description "DNS Source Interface list"; + } + description "DNS Source Interface"; } - leaf pref { - type uint8; + container tftp-items { + list Tftp-list { + key "vrf"; + + uses srcintf_Tftp-group; + description "TFTP Source Interface list"; + } + description "TFTP Source Interface"; } - leaf object { - type uint32; + container ftp-items { + list Ftp-list { + key "vrf"; + + uses srcintf_Ftp-group; + description "FTP Source Interface list"; + } + description "FTP Source Interface"; } + container telnet-items { + list Telnet-list { + key "vrf"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses srcintf_Telnet-group; + description "Telnet Source Interface list"; + } + description "Telnet Source Interface"; + } + container ssh-items { + list Ssh-list { + key "vrf"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses srcintf_Ssh-group; + description "SSH Source Interface list"; } + description "SSH Source Interface"; } + container ping-items { + list Ping-list { + key "vrf"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + uses srcintf_Ping-group; + description "Ping Source Interface list"; + } + description "Ping Source Interface"; + } + container traceroute-items { + list Traceroute-list { + key "vrf"; - // Type is an MO-Defined-Type - type naming_Descr; + uses srcintf_Traceroute-group; + description "Traceroute Source Interface list"; + } + description "Traceroute Source Interface"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - description "Nexthop Interface"; + grouping srcintf_DnsSrcIf-group { + description "DNS Source Interface"; + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; + description "DNS Source Interface"; } - leaf nhAddr { - type address_Ip; + + // vrf name + leaf vrf { + + type l3_VrfName; + description "DNS Source VRF"; } + } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - description "Nexthop VRF"; + grouping srcintf_Tftp-group { + description "TFTP Source Interface"; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "TFTP Source Interface"; + } + + // vrf name + leaf vrf { - // Type is an MO-Defined-Type type l3_VrfName; + description "TFTP Source VRF"; } - leaf rwEncap { - type string; + } + + grouping srcintf_Ftp-group { + description "FTP Source Interface"; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "FTP Source Interface"; } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type ip_NhFlags; + type l3_VrfName; + description "FTP Source VRF"; } + } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping srcintf_Telnet-group { + description "Telnet Source Interface"; - // Type is an MO-Defined-Type - type ip_OperSt; + // Source interface + leaf srcIf { + + type nw_IfId; + description "Telnet Source Interface"; + } + + // vrf name + leaf vrf { + + type l3_VrfName; + description "Telnet Source VRF"; } } - grouping ipv6_NexthopStub-group { + grouping srcintf_Ssh-group { + description "SSH Source Interface"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_IfId; + description "SSH Source Interface"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type naming_Descr; + type l3_VrfName; + description "SSH Source VRF"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - config "false"; - description "Nexthop Interface"; + grouping srcintf_Ping-group { + description "Ping Source Interface"; + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; - } - leaf nhAddr { - config "false"; - type address_Ip; + description "Ping Source Interface"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - config "false"; - description "Nexthop VRF"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type type l3_VrfName; + description "Ping Source VRF"; } - leaf rwEncap { - config "false"; - type string; - } + } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + grouping srcintf_Traceroute-group { + description "Traceroute Source Interface"; - // Type is an MO-Defined-Type - type ip_NhFlags; + // Source interface + leaf srcIf { + + type nw_IfId; + description "Traceroute Source Interface"; } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type ip_OperSt; + type l3_VrfName; + description "Traceroute Source VRF"; } } - grouping ipv6_IPv6RouteStat-group { - container pfx-items { - list IPv6RouteStatPfx-list { + grouping swpkgs_Install-group { + description "Software packages Install"; + + // Information about the packages present in the system + container rpminfo-items { + list RpmInfo-list { config "false"; - key "rtPrefix rtNextHop"; + key "name"; - // Added containment: Prefix=pfx - // Acquired From Package ipv6 - uses ipv6_IPv6RouteStatPfx-group; + uses swpkgs_RpmInfo-group; + description "RPM Packages in the system list"; } + description "RPM Packages in the system"; } } - grouping ipv6_IPv6RouteStatPfx-group { - leaf rtPrefix { - config "false"; - type address_Ip; - } - leaf rtNextHop { - config "false"; - type address_Ip; - } - leaf rtRealNextHop { - config "false"; - type string; - } - leaf rtRealNextHopIod { - config "false"; - type string; - } - leaf rtInterface { - config "false"; - type string; - } - leaf rtPreference { - config "false"; - type uint32; - } - leaf rtNhVrfName { + grouping swpkgs_RpmInfo-group { + description "RPM Packages in the system"; + leaf name { config "false"; type string; + description "Name of Package"; } - leaf rtResolveTableId { + + // Operational state of the package + leaf operSt { config "false"; - type uint32; + + type swpkgs_OperState; + description "Operational status"; } - leaf rtTrackObjNum { + + // Last Package action + leaf lastAction { config "false"; - type uint32; + + type swpkgs_PackageAction; + description "Last action on the package"; } - leaf rtTrackObjState { + + // Last Action Result on the package + leaf lastActionResult { config "false"; - type string; + + type swpkgs_PackageActionResult; + description "Result of last action"; } - leaf rtRnhSentToUrib { + leaf lastActionFailedReason { config "false"; type string; + description "Last action failed reason"; } - leaf rtBfdEnabled { + leaf signatureStatus { config "false"; type string; + description "Signature status of package"; } } - grouping ipv6_IPv6Fragments-group { - leaf srcAddr { - config "false"; - type address_Ipv6; - } - leaf dstAddr { - config "false"; - type address_Ipv6; - } - leaf fragId { - config "false"; - type int32; - } - leaf fragOffset { - config "false"; - type int32; - } - leaf fragMFlag { - config "false"; - type int32; + grouping sysmgr_Entity-group { + description "Entity"; + + // System state + container sys-items { + + uses sysmgr_SysSt-group; + description "System State"; } - leaf fragNextHeader { - config "false"; - type int32; + + // Holds system control plane entity information + container sysCfg-items { + + uses sysmgr_SysCfgSt-group; + description "MDP Replay Ascii Configuration mode and Operational Data Publish Status"; } - leaf fragPayloadLen { - config "false"; - type int32; + + // MO definition to configure sysmgr + container config-items { + + uses sysmgr_Config-group; + description "To configure sysmgr properties."; } - leaf fragExpirationTime { - config "false"; - type int32; + + // Holder for cores policy + container core-items { + list Cores-list { + config "false"; + key "dest"; + + uses sysmgrp_Cores-group; + description "Core File Policy list"; + } + description "Core File Policy"; } } - grouping ipv6_IPv6EventLogs-group { + grouping sysmgr_SysSt-group { + description "System State"; - // Type of Event - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + // Sup state + container sup-items { + list SupSt-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ipv6_IPv6EventType; + uses sysmgr_SupSt-group; + description "Supervisor State list"; + } + description "Supervisor State"; } - // Type of Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; + // Firmware state + container image-items { + list FwSt-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ipv6_IPv6EventLogSize; + uses sysmgr_FwSt-group; + description "Firmware State list"; + } + description "Firmware State"; } } - grouping ipv6_IPv6InstStat-group { - leaf queuePacket { - config "false"; - type string; - } - } + grouping sysmgr_SupSt-group { + description "Supervisor State"; - grouping ipv6_IPv6Stat-group { - leaf ftmName { - config "false"; - type string; - } - leaf ftmTimeSecond { - config "false"; - type uint32; - } - leaf ftmTimeNanoSecond { + // Local/Remote + leaf type { config "false"; - type uint32; + + type sysmgr_SupT; + description "Type"; } - leaf ftCount { + + // Oper state + leaf operSt { config "false"; - type uint64; + + type sysmgr_SupSt; + description "Operational State"; } } - grouping ipv6_IPv6TrafficStat-group { - leaf statLastReset { - config "false"; - type string; - } - leaf ucastFragOriginated { - config "false"; - type uint64; - } - leaf mcastFragOriginated { - config "false"; - type uint64; - } - leaf ucastFragConsumed { - config "false"; - type uint64; - } - leaf mcastFragConsumed { - config "false"; - type uint64; - } - leaf ingressMcecFwdPkts { - config "false"; - type uint32; - } - leaf ingressPktsVinciMigration { - config "false"; - type uint32; - } - leaf errBadVersion { - config "false"; - type uint64; - } - leaf errRouteLookupFailed { - config "false"; - type uint64; - } - leaf errHopLimitExceeded { - config "false"; - type uint64; - } - leaf errIngressIfMgrInitDrops { - config "false"; - type uint32; - } - leaf errRpfDrop { - config "false"; - type uint32; - } - leaf errOptionHeader { - config "false"; - type uint64; - } - leaf errPayloadLenTooSmall { - config "false"; - type uint64; - } - leaf errPMFailed { + grouping sysmgr_FwSt-group { + description "Firmware State"; + + // Type of the firmware + leaf type { config "false"; - type uint64; + + type sysmgr_FwT; + description "Type"; } - leaf errMbufError { + + // The firmware mode in which we are running, either + // it is recovery or regular mode + leaf mode { config "false"; - type uint64; + + type sysmgr_FwMode; + description "Mode"; } - leaf errEncapError { + } + + grouping sysmgr_SysCfgSt-group { + description "MDP Replay Ascii Configuration mode and Operational Data Publish Status"; + + // MDP Replay Ascii configuration mode + leaf cfgMode { config "false"; - type uint64; + + type sysmgr_CfgMode; + description "MDP Replay Ascii Configuration State. ['init']-Initial, ['replay']-Configuration replay started, ['done']-Configuration replay completed."; } - leaf errPktsDroppedDestIfDown { + + // MDP operational data publish mode + leaf operDataMode { config "false"; - type uint64; + + type sysmgr_OperDataMode; + description "MDP Operational Data Publish Mode State. ['init']-Initial, ['publish']-Data publish started, ['done']-System ready or Box Online."; } - leaf pktsRecvRx { - config "false"; - type uint64; + } + + grouping sysmgr_Config-group { + description "To configure sysmgr properties."; + + // Admin state to configure sysmgr param + leaf adminSt { + + type sysmgr_CfgAdminSt; + description "State to configure sysmgr properites"; } - leaf bytesRecvRx { - config "false"; - type uint64; + + leaf traceMask { + + type sysmgr_TraceMask; + description "Mask to set sysmgr log trace(in hex)"; } - leaf headerErrorsRx { + + // Operational state of trace setting + leaf operSt { config "false"; - type uint32; + + type sysmgr_OperState; + description "Operational status set by sysmgr"; } - leaf noRoutesRx { - config "false"; - type uint32; + + // Fast-reload timer value for network stabilization + // cli:sh system fast-reload stabilization-timer + leaf fastReloadTimer { + + type sysmgr_ReloadTimer; + description "Fast-reload timer value for network stabilization(in secs). Used only during fast-reload"; } - leaf addrErrorRx { - config "false"; - type uint32; + + // MO definition to configure system cores + container systemcore-items { + + uses sysmgr_SystemCore-group; + description "sysmgr configure system cores"; } - leaf unknownProtoRx { - config "false"; - type uint32; + } + + grouping sysmgr_SystemCore-group { + description "sysmgr configure system cores"; + + // Admin state to configure sysmgr param + leaf adminSt { + + type sysmgr_CoreAdminSt; + description "State to configure sysmgr properites"; } - leaf truncatedPktsRx { - config "false"; - type uint32; + + leaf uriType { + + type sysmgr_CoreUriType; + description "URI type of uri provided"; } - leaf forwardgramsRx { - config "false"; - type uint64; + leaf server { + type string; + description "Config server for shipping cores"; } - leaf reassemblyRequiredRx { - config "false"; - type uint32; + leaf path { + type string; + description "Dir patch for shipping cores"; } - leaf reassemblySuccessfulRx { - config "false"; - type uint32; + leaf vrf { + type string; + description "VRF for shipping cores"; } - leaf reassemblyFailedRx { + + // Operational state of system core setting + leaf operSt { config "false"; - type uint32; + + type sysmgr_OperState; + description "Operational status set by sysmgr"; } - leaf discardedPktsRx { + } + + grouping sysmgrp_Cores-group { + description "Core File Policy"; + leaf dest { config "false"; - type uint32; + type string; + description "Destination"; } - leaf deliveredPktsRx { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf mcastPktsRx { + + // Clients can add their own data for entity correlation + leaf ownerKey { config "false"; - type uint64; + + type naming_Descr; + description "TBD"; } - leaf mcastBytesRx { + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { config "false"; - type uint64; + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf pktsSentTx { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf bytesSentTx { + } + + grouping sysmgr_ShowVersion-group { + description "Show Version CLI"; + leaf copyRight { config "false"; - type uint64; + type string; + description "Copy Right"; } - leaf sentRequestsTx { + leaf biosVersion { config "false"; - type uint64; + type string; + description "Bios Version"; } - leaf noRoutesTx { + leaf nxosVersion { config "false"; - type uint32; + type string; + description "Nxos Version"; } - leaf forwardgramsTx { + leaf biosCompileTime { config "false"; - type uint64; + type string; + description "Bios Compile Time"; } - leaf discardedPktsTx { + leaf nxosImageFile { config "false"; - type uint32; + type string; + description "Nxos Image File"; } - leaf fragRequiredTx { + leaf nxosCompileTime { config "false"; - type uint32; + type string; + description "Nxos Compile Time"; } - leaf fragSuccesfulTx { + leaf bootflashSize { config "false"; type uint32; + description "Bootflash Size"; } - leaf fragFailedTx { + leaf kernelUptime { config "false"; - type uint32; + type string; + description "Kernel Uptime"; } - leaf fragCreatesTx { + leaf lastResetTime { config "false"; - type uint32; + type string; + description "Last Reset Time"; } - leaf transmitsTx { + leaf lastResetReason { config "false"; - type uint64; + type string; + description "Last Reset Reason"; } - leaf mcastPktsTx { + leaf lastResetSysVersion { config "false"; - type uint64; + type string; + description "Last Reset System Version"; } - leaf mcastBytesTx { + leaf lastResetService { config "false"; - type uint64; + type string; + description "Last Reset Service"; } - leaf rpUcastPktsForwarded { + leaf plugin { config "false"; - type uint32; + type string; + description "Plugin"; } - leaf rpUcastPktsOriginated { + leaf activePackage { config "false"; - type uint32; + type string; + description "Active Package"; } - leaf rpUcastPktsConsumed { - config "false"; - type uint32; + } + + grouping tcpudp_Entity-group { + description "Tcpdp Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf rpUcastBytesForwarded { - config "false"; - type uint32; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf rpUcastBytesOriginated { + + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_EntOperSt; + description "Operational State"; } - leaf rpUcastBytesConsumed { - config "false"; - type uint32; + + // This objects hold per tcpudp instance information. There is + // only one instance of tcpudp running in the system today + container inst-items { + + uses tcpudp_Inst-group; + description "Tcpudp Instance"; } - leaf rpMcastPktsForwarded { - config "false"; - type uint32; + } + + grouping tcpudp_Inst-group { + description "Tcpudp Instance"; + + // Set time to wait on new TCP connections + leaf synWaitTime { + + type tcpudp_SynwaitTime; + description "Set time to wait on new TCP connections"; } - leaf rpMcastPktsOriginated { - config "false"; - type uint32; + + // Enable path-MTU discovery on TCP + leaf pathMtuDiscovery { + + type nw_AdminSt; + default "disabled"; + description "Enable path-MTU discovery on TCP"; } - leaf rpMcastPktsConsumed { - config "false"; - type uint32; + + // Setting up TCP Maximum Segment Size in Bytes + leaf tcpMssBytes { + + type tcpudp_TCPMss; + description "Set the Tcp Mss Byte"; } - leaf rpMcastBytesForwarded { - config "false"; - type uint32; + + // Setting up TCP Socket Local Start Port Range + leaf tcpStartPortRange { + + type tcpudp_TcpStartPort; + description "Sockets Local Start Port Range"; } - leaf rpMcastBytesOriginated { - config "false"; - type uint32; + + // Setting up TCP Socket Local End Port Range + leaf tcpEndPortRange { + + type tcpudp_TcpEndPort; + description "Sockets Local End Port Range"; } - leaf rpMcastBytesConsumed { - config "false"; - type uint32; + + // Setting dscp value for ip dscp + leaf dscpLop { + + type tcpudp_DscpLop; + description "DSCP value for Locally Originated Packets"; + } + + container localport-items { + + uses tcpudp_LocalPort-group; + description "Sockets Local Port Range information"; } } - grouping l1cap_Prov-group { + grouping tcpudp_LocalPort-group { + description "Sockets Local Port Range information"; - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { + leaf kstackStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type l1cap_Subj; + type tcpudp_TcpStartPort; + description "Kstack Start Port:"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { + leaf kstackEndPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type tcpudp_TcpEndPort; + description "Kstack End Port:"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { + leaf netstackStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type tcpudp_TcpStartPort; + description "Netstack Start Port:"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { + leaf netstackEndPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_StorageHint; + type tcpudp_TcpEndPort; + description "Netstack End Port:"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { + leaf natStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_RuleT; + type tcpudp_TcpStartPort; + description "Nat Start Port:"; } - } - grouping ethpm_Entity-group { + leaf natEndPort { + config "false"; + + type tcpudp_TcpEndPort; + description "Nat End Port:"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This class shall store the global configuration - // for a running EthPM instance. We have single EthPM - // in a system - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package ethpm - uses ethpm_Inst-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping ethpm_Inst-group { - leaf vlanTagNative { - type boolean; - } + grouping terminal_Terminal-group { + description "Terminal"; - // System default layer - // Type is an MO-Defined-Type - leaf systemDefaultLayer { - description "System Default Layer"; + // Line MO is the MO inside which type of line either vty or console + // would be organize + container ln-items { - // Type is an MO-Defined-Type - type l1_Layer; + uses terminal_Line-group; + description "line"; } + } - // System default admin st - // Type is an MO-Defined-Type - leaf systemDefaultAdminSt { - description "System Default Admin St"; - - // Type is an MO-Defined-Type - type l1_AdminSt; - } + grouping terminal_Line-group { + description "line"; - // System jumbo Mtu - // Type is an MO-Defined-Type - leaf systemJumboMtu { - description "System Jumbo MTU"; + // Console MO is to consolidate the console specific MO and its + // properties which is propretary for the vsh session which is + // spawned via console port + container cons-items { - // Type is an MO-Defined-Type - type l1_Mtu; + uses terminal_Console-group; + description "line type console"; } - // System logging event - // Type is an MO-Defined-Type - leaf logEvent { - description "Logging Interface events"; + // VTY MO is to consolidate the VTY specific MO and its + // properties which is propretary for the vsh session which is + // spawned via mgmt/telnet ip to box + container vty-items { - // Type is an MO-Defined-Type - type l1_LogEventBitmap; + uses terminal_Vty-group; + description "line type vty"; } + } - // System logging level - // Type is an MO-Defined-Type - leaf logLevel { - description "Logging level"; + grouping terminal_Console-group { + description "line type console"; - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + // Organizes the exec timeout specific properties + container execTmeout-items { + + uses terminal_ExecTimeout-group; + description "Configure exec timeout of terminal"; } - // Total pacer credits - // Type is an MO-Defined-Type - leaf pacerTotalCredits { - config "false"; - description "Total Pacer Credits"; + // Organizes the console terminal width specific properties + container wdth-items { - // Type is an MO-Defined-Type - type ethpm_TotalCredits; + uses terminal_Width-group; + description "Configure terminal width"; } - // Access pacer credits - // Type is an MO-Defined-Type - leaf pacerAccessCredits { - config "false"; - description "Access Pacer Credits"; + // Organizes the console terminal length specific properties + container lgth-items { - // Type is an MO-Defined-Type - type ethpm_AccessCredits; + uses terminal_Length-group; + description "Number of lines to be displayed on terminal"; } - // Trunk pacer credits - // Type is an MO-Defined-Type - leaf pacerTrunkCredits { - config "false"; - description "Trunk Pacer Credits"; + // Organizes the console terminal speed specific properties + container speed-items { - // Type is an MO-Defined-Type - type ethpm_TrunkCredits; + uses terminal_Speed-group; + description "terminal console speed"; } - // Per vlan pacer credits - // Type is an MO-Defined-Type - leaf pacerPerVlanCredits { - config "false"; - description "Per Vlan Pacer Credits"; + // Organizes the databits number properties + container databits-items { - // Type is an MO-Defined-Type - type ethpm_PerVlanCredits; + uses terminal_DataBits-group; + description "databits nums"; } - // Routed port pacer credits - // Type is an MO-Defined-Type - leaf pacerRtdPortCredits { - config "false"; - description "Routed Port Pacer Credits"; + // Organizes the async line stopbits properties + container stopbits-items { - // Type is an MO-Defined-Type - type ethpm_RouetdPortCredits; + uses terminal_StopBits-group; + description "async line stopbits"; } - // Per sub-interface pacer credits - // Type is an MO-Defined-Type - leaf pacerPerSiCredits { - config "false"; - description "Per Sub-interface Pacer Credits"; + // Organizes the terminal parity properties + container parity-items { - // Type is an MO-Defined-Type - type ethpm_PerSiCredits; + uses terminal_Parity-group; + description "databits nums"; } + } - // fabric port pacer credits - // Type is an MO-Defined-Type - leaf pacerFabricPortCredits { - config "false"; - description "Fabric Port Pacer Credits"; + grouping terminal_ExecTimeout-group { + description "Configure exec timeout of terminal"; + + leaf timeout { - // Type is an MO-Defined-Type - type ethpm_FabricPortCredits; + type terminal_TimeoutT; + description "Configure exec timeout of terminal"; } + } - // Pacer not connected timer value - // Type is an MO-Defined-Type - leaf pacerNotConnTimer { - config "false"; - description "Pacer Not Connected Timer Value"; + grouping terminal_Width-group { + description "Configure terminal width"; + + leaf termwidth { - // Type is an MO-Defined-Type - type ethpm_NotConnectedTimer; + type terminal_TermSize { + range "51..511"; + } + description "Configure width of the display terminal"; } + } - // Pacer not up timer value - // Type is an MO-Defined-Type - leaf pacerNotUpTimer { - config "false"; - description "Pacer not Up Timer Value"; + grouping terminal_Length-group { + description "Number of lines to be displayed on terminal"; - // Type is an MO-Defined-Type - type ethpm_NotUpTimer; - } - leaf allowUnsupportedSfp { - type boolean; - default "true"; - } + leaf termlength { - // Interface syslog info - // Type is an MO-Defined-Type - leaf ifSyslogInfo { - description "Interface Syslog Info"; + type terminal_TermSize { + range "0..511"; + } + description "Configure number of lines to display on terminal"; + } + } - // Type is an MO-Defined-Type - type ethpm_SyslogInfo; + grouping terminal_Speed-group { + description "terminal console speed"; + leaf speed { + type uint32 { + range "9600..115200"; + } + default "115200"; + description "console speed"; } + } - // Admin link-up syslog level - // Type is an MO-Defined-Type - leaf adminLinkUpSyslogLevel { - description "Admin Link-Up Syslog Level"; + grouping terminal_DataBits-group { + description "databits nums"; + leaf dataBits { + type uint32 { + range "5..8"; + } + default "8"; + description "databits numbers"; + } + } - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + grouping terminal_StopBits-group { + description "async line stopbits"; + leaf stopBits { + type uint32 { + range "1"; + } + default "1"; + description "async line stopbits"; } + } - // Admin link-down syslog level - // Type is an MO-Defined-Type - leaf adminLinkDownSyslogLevel { - description "Admin Link-Down Syslog Level"; + grouping terminal_Parity-group { + description "databits nums"; - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + leaf parity { + + type terminal_TermParity; + description "databits numbers"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping terminal_Vty-group { + description "line type vty"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Organizes the exec timeout specific properties + container execTmeout-items { + + uses terminal_ExecTimeout-group; + description "Configure exec timeout of terminal"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Organizes the VTY session's absolute timeout specific properties + container absTmeout-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses terminal_AbsTimeout-group; + description "Configure absolute timeout for terminal"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Organizes the VTY session's limit specific properties + container ssLmt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses terminal_SesLmt-group; + description "Configure session limit"; } - container runtime-items { + // Organizes the VTY session's logout warning specific properties + container lgoutWarning-items { - // Added containment as a singleton: Prefix=runtime - // Acquired From Package ethpm - uses ethpm_InstRuntime-group; + uses terminal_LogoutWarning-group; + description "Logout warning time"; } + } - // Global Error-disable recovery related configuration - container errdisrecover-items { + grouping terminal_AbsTimeout-group { + description "Configure absolute timeout for terminal"; - // Added containment as a singleton: Prefix=errdisrecover - // Acquired From Package ethpm - uses ethpm_ErrDisRecover-group; + leaf timeout { + + type terminal_TimeoutT; + description "Configure absolute timeout for terminal"; } + } - // This object stores the runtime state of vlan inside ethpm - container vlan-items { - list Vlan-list { - config "false"; - key "id"; + grouping terminal_SesLmt-group { + description "Configure session limit"; - // Added containment: Prefix=vlan - // Acquired From Package ethpm - uses ethpm_Vlan-group; + leaf sesLmt { + + type terminal_Limit { + range "1..64"; } + description "Configure maximum number of concurrent vsh sessions allowed"; } + } - // This object stores the runtime state associated - // with a module inside ethpm - container module-items { - list Module-list { - config "false"; - key "id"; + grouping terminal_LogoutWarning-group { + description "Logout warning time"; - // Added containment: Prefix=module - // Acquired From Package ethpm - uses ethpm_Module-group; + leaf lgtWarn { + + type terminal_Limit { + range "0..60"; } + description "Configure logout warning time"; } } - grouping ethpm_InstRuntime-group { - leaf staticRMacCfgRefCount { - config "false"; - type uint32; - } - leaf pvlanTrunkCfgRefCount { - config "false"; - type uint32; - } - leaf dot1qRefCount { - config "false"; - type uint32; - } - leaf ethertypeRefCount { - config "false"; - type uint32; - } - leaf l3SatportRefCount { - config "false"; - type uint32; - } - leaf snmpIfTblLastChange { - config "false"; - type string; - } - leaf issuPacerRefCount { - config "false"; - type uint32; - } - leaf featurePongState { - config "false"; - type uint8; - } - leaf slowdrainCongCoreConfChkState { - config "false"; - type uint8; + grouping terminal_TerminalLog-group { + description "Enable accounting log for all commands"; + leaf logShowCommand { + type boolean; + description "Configure accounting log of all commands including the show commands"; } - leaf slowdrainCongEdgeConfChkState { + } + + grouping tunnel_If-group { + description "Tunnel Interface"; + leaf src { config "false"; - type uint8; + type address_Ip; + description "Tunnel Source IP"; } - leaf slowdrainPausConfChkState { + leaf dest { config "false"; - type uint8; + type address_Ip; + description "Tunnel Destination IP"; } - leaf slowdrainPausEdgeConfChkState { + + // Tunnel type + leaf tType { config "false"; - type uint8; + + type tunnel_TunnelQual; + description "Tunnel Type"; } - leaf eeeRefCount { + + // Tunnel VRF name + leaf vrfName { config "false"; - type uint32; + + type l3_VrfName; + description "VRF"; } - leaf fabpathCfgRefCount { + + // Tunnel MTU + leaf cfgdMtu { config "false"; - type uint32; + + type tunnel_ConfMtu; + description "MTU"; } - leaf dceSwId { + + // Tunnel keep-alive period + leaf keepAlvIntvl { config "false"; - type uint32; + + type tunnel_KeepAlvIntvl; + description "Keep Alive Interval"; } - leaf lifLoopbackDone { + + // Tunnel keep-alive retries + leaf keepAlvRetries { config "false"; - type boolean; + + type tunnel_KeepAlvRetries; + description "Keep Alive Retries"; } - leaf numBundles { + + // Tunnel administrative state + leaf adminSt { config "false"; - type uint32; + + type tunnel_AdminSt; + description "Administrative State"; } - // bundle If list - // Type is an MO-Defined-Type - leaf bundleIfList { + // Tunnel type + leaf type { config "false"; - description "Bundle Interface List"; - // Type is an MO-Defined-Type - type ethpm_IfBundleList1024; + type tunnel_EpT; + description "Endpoint Type"; } - // Configured loopback interfaces - // Type is an MO-Defined-Type - leaf lbIfs { + // Tunnel layer: L2 or L3 + leaf tLayer { config "false"; - description "Configured Loopback Interfaces"; - // Type is an MO-Defined-Type - type ethpm_LbBitmap; + type tunnel_LayerT; + description "Layer"; + } + leaf mac { + config "false"; + type address_Mac; + description "Destination MAC"; } - } - - grouping ethpm_ErrDisRecover-group { - // Error disable recovery interval - // Type is an MO-Defined-Type - leaf errDisRecovIntvl { - description "Error Disable Recovery Interval"; + // Tunnel operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type ethpm_ErrDisRecovIntvl; + type tunnel_OperSt; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Interface ID of this endpoint + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container Event-items { - list Event-list { - key "event"; - // Added containment: Prefix=Event - // Acquired From Package ethpm - uses ethpm_Event-group; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Each portIf under tunnel has two sets of banks to + // count the packets and bytes. This Mo is defined + // purely for statistics purposes + container bank-items { + list Bank-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses tunnel_Bank-group; + description "Bank list"; } + description "Bank"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object is purely for stats purposes. We count the + // tunnel stats on a given physical port. These port objects + // will be created by default whereever the tunnel can exit + // out. For example, all north bound tunnels will have the + // fabric ports created under it + container portif-items { + list PortIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses tunnel_PortIf-group; + description "Port Interface list"; + } + description "Port Interface"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - } - grouping ethpm_Vlan-group { + container rstunnelMbrIfs-items { - // vlan id TODO: how do we add properties to rn - // for objects owned by process? Currently - // compilation seems to fails if owner="oper" - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Vlan ID"; + list RsTunnelMbrIfs-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l2_DomId; - } - leaf numIf { - config "false"; - type uint32; - } - leaf flag { - config "false"; - type uint32; + uses tunnel_RsTunnelMbrIfs_source-group; + } } - // shut state of vlan - // Type is an MO-Defined-Type - leaf shutState { - config "false"; - description "Shut State of VLAN"; - - // Type is an MO-Defined-Type - type l1_AdminSt; - } + container rstunnelToLooseNode-items { - // state of vlan - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "Operational State of VLAN"; + list RsTunnelToLooseNode-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l2_DomAdminSt; + uses tunnel_RsTunnelToLooseNode_source-group; + } } } - grouping ethpm_Module-group { - leaf id { - config "false"; - type uint8; - } - leaf numPortTypes { - config "false"; - type uint32; - } - leaf swCardId { - config "false"; - type uint16; - } + grouping tunnel_Bank-group { + description "Bank"; - // cfgd ports - // Type is an MO-Defined-Type - leaf cfgdPorts { + // Type + // Liked from ac:Bank:type + leaf type { config "false"; - description "Configured Ports"; - // Type is an MO-Defined-Type - type ethpm_PortBitmap; - } - leaf flags { - config "false"; - type uint32; - } - leaf runtimeNumPorts { - config "false"; - type uint8; + type ac_BankT; + description "Type"; } - // module type - // Type is an MO-Defined-Type - leaf moduleType { - config "false"; - description "Module Type"; + container dbgIngrTep-items { - // Type is an MO-Defined-Type - type l1_Module; - } - leaf isOffline { - config "false"; - type boolean; - } - leaf lcNodeAddress { - config "false"; - type uint32; - } - leaf portCfgSap { - config "false"; - type uint16; + uses tunnel_IngrTep-group; + description "Ingress TEP Counters"; } - // runtime ports - // Type is an MO-Defined-Type - leaf runtimePorts { - config "false"; - description "Runtime Ports"; + container dbgEgrTep-items { - // Type is an MO-Defined-Type - type ethpm_PortBitmap; + uses tunnel_EgrTep-group; + description "Egress TEP Counters"; } } - grouping im_Breakout-group { - container module-items { - list Mod-list { - key "id"; - - // Added containment: Prefix=module - // Acquired From Package im - uses im_Mod-group; - } - } - } + grouping tunnel_PortIf-group { + description "Port Interface"; - grouping im_Mod-group { leaf id { - type uint8 { - range "1..32"; - } + config "false"; + + type nw_IfId; + description "ID"; } - // Front-panel port - container fport-items { - list FpP-list { - key "id"; + // Each portIf under tunnel has two sets of banks to + // count the packets and bytes. This Mo is defined + // purely for statistics purposes + container bank-items { + list Bank-list { + config "false"; + key "type"; - // Added containment: Prefix=fport - // Acquired From Package im - uses im_FpP-group; + uses tunnel_Bank-group; + description "Bank list"; } + description "Bank"; } } - grouping im_FpP-group { - leaf id { - type uint8 { - range "1..72"; - } - } + grouping virtualService_VirtualServiceTop-group { + description "Virtual Service"; - // Breakout Map - // Type is an MO-Defined-Type - leaf breakoutMap { - description "Breakout Map"; + container global-items { - // Type is an MO-Defined-Type - type im_BreakoutMapT; + uses virtualService_GlobalConfig-group; + description "Virtual Service global configuration"; } } - grouping im_Entity-group { + grouping virtualService_GlobalConfig-group { + description "Virtual Service global configuration"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf signingLevel { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type virtualService_SigningLevel; + description "Signing level for allowed for virtual-service packages"; } + } + + grouping vtp_Entity-group { + description "VTP Entity"; // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This class shall store the global configuration - // for a running GIM instance. We have single GIM - // in a system - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package im - uses im_Inst-group; - } - } - - grouping im_Inst-group { - - // Type is an MO-Defined-Type - leaf mode100M { + // Operational errors qualifier + leaf operErr { config "false"; - description "Mode 100M"; - // Type is an MO-Defined-Type - type im_Mode100M; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Type is an MO-Defined-Type - leaf modeHwProfile { - config "false"; - description "Mode 4C, 2C+4Q"; + // This objects hold per vtp instance information. There is only + // one instance of vtp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type im_ModeHwProfile; + uses vtp_Inst-group; + description "VTP Instance"; } + container intf-items { + list Intf-list { + key "intf"; - // default VDC state - // Type is an MO-Defined-Type - leaf vdcSt { - config "false"; - description "Default VDC State"; - - // Type is an MO-Defined-Type - type l1_VdcSt; + uses vtp_Intf-group; + description "Interface which is enabled for VTP list"; + } + description "Interface which is enabled for VTP"; } + } - // Type is an MO-Defined-Type - leaf BreakoutProfile { - config "false"; - description "Breakout Profile"; - - // Type is an MO-Defined-Type - type im_BreakoutProfile; + grouping vtp_Inst-group { + description "VTP Instance"; + leaf domain { + type string; + description "domain"; + } + leaf version { + type uint32 { + range "1..2"; + } + default "1"; + description "version"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Mode + leaf mode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vtp_Mode; + description "mode"; + } + leaf password { + type string; + description "password"; + } + leaf filePath { + type string; + default "bootflash:/vlan.dat"; + description "file"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Operational errors qualifier + leaf operErr { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container qsa-items { - list Qsa-list { - config "false"; - key "id"; + } - // Added containment: Prefix=qsa - // Acquired From Package im - uses im_Qsa-group; - } - } + grouping vtp_Intf-group { + description "Interface which is enabled for VTP"; - // This class shall store the software/feature capability - // information for the GIM instance - container cap-items { - list Capability-list { - config "false"; - key "id"; + // Domain + leaf intf { - // Added containment: Prefix=cap - // Acquired From Package im - uses im_Capability-group; - } + type nw_IfId; + description "Id (eg: eth1/3) of L2 interface which has VTP enabled"; } + } - // This object stores the runtime state associated - // with a module inside GIM - container module-items { - list Module-list { - config "false"; - key "id"; + grouping wedge_Bmc-group { + description "Wedge BMC IP"; - // Added containment: Prefix=module - // Acquired From Package im - uses im_Module-group; - } - } - } + leaf ipEnabled { - grouping im_Qsa-group { - leaf id { - config "false"; - type string; + type wedge_BmcIPEnabled; + description "BMC Ip Enabled Status"; + } + leaf ipAddr { + type address_Ip; + description "Wedge BMC IP Address"; } } - grouping im_Capability-group { - leaf id { - config "false"; - type uint32; - } - leaf autoInstCpbl { - config "false"; - type boolean; + grouping nbm_NbmTop-group { + description "Non Blocking Multicast."; + + container conf-items { + + uses nbm_ConfTables-group; + description "Non Blocking Multicast CONFIG Tables."; } - leaf isInstalled { - config "false"; - type boolean; + + container show-items { + + uses nbm_ShowTables-group; + description "Non Blocking Multicast Show Tables."; } } - grouping im_Module-group { - leaf id { - config "false"; - type uint8; - } - leaf numPorts { - config "false"; - type uint8; - } + grouping nbm_ConfTables-group { + description "Non Blocking Multicast CONFIG Tables."; - // Module type - // Type is an MO-Defined-Type - leaf moduleType { - config "false"; - description "Module Type"; + container flows-items { - // Type is an MO-Defined-Type - type l1_Module; - } - leaf swCardId { - config "false"; - type uint16; - } - leaf lcNodeAddress { - config "false"; - type uint32; - } - leaf portCfgSap { - config "false"; - type uint16; + uses nbm_Flows-group; + description "Non Blocking Multicast flow config table."; } - leaf isPresent { - config "false"; - type boolean; + + container grouprangelist-items { + + uses nbm_GroupRangeList-group; + description "Non Blocking Multicast ASM Range configuration."; } - leaf runtimeFlag { - config "false"; - type uint8; + + container interfaces-items { + + uses nbm_Interfaces-group; + description "Configure Interface role."; } - leaf moduleInitiEvalFlag { - config "false"; - type uint32; + + container global-items { + + uses nbm_GlobalConf-group; + description "Configure Interface role."; } - leaf lcExceptionFlag { - config "false"; - type uint32; + + // Top MO for branching everything under + container flowpolicytable-items { + + uses nbm_FlowPolicyTable-group; + description "Flow Policy Table."; } - leaf lcInsertPldSz { - config "false"; - type uint32; + + // HOST POLICIES + container hostpolicytable-items { + + uses nbm_HostPolicyTable-group; + description "Host Policy Table."; } + } - // Physical interface - container phys-items { - list PhysIf-list { - config "false"; - key "port"; + grouping nbm_Flows-group { + description "Non Blocking Multicast flow config table."; + + // CONFIG OBJECT FLOWS CONF MO TREE + container dom-items { + list ConfFlowsDom-list { + key "name"; - // Added containment: Prefix=phys - // Acquired From Package im - uses im_PhysIf-group; + uses nbm_ConfFlowsDom-group; + description "This object holds domain information list"; } + description "This object holds domain information"; } + } - // This object stores the information about - // different port-types in a module - container portinfo-items { - list PortInfo-list { - config "false"; - key "phyLayer"; + grouping nbm_ConfFlowsDom-group { + description "This object holds domain information"; - // Added containment: Prefix=portinfo - // Acquired From Package im - uses im_PortInfo-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container s-items { + list ConfFlow-list { + key "source group"; + + uses nbm_ConfFlow-group; + description "Configured Flows. list"; } + description "Configured Flows."; } } - grouping im_PhysIf-group { + grouping nbm_ConfFlow-group { + description "Configured Flows."; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Runtime State of the Object or Policy"; + // Properties + leaf source { - // Type is an MO-Defined-Type - type l1_OperSt; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Operational physical port layer - // Type is an MO-Defined-Type - leaf operPhyLayer { - config "false"; - description "Operational Physical Port Layer"; + leaf group { - // Type is an MO-Defined-Type - type l1_PhyLayer; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf slot { - config "false"; - type uint8; + type nbm_nbmIpAddr; + description "Group being sent"; } - leaf port { - config "false"; - type uint8; + + leaf ingressIf { + + type nw_IfId; + description "Incoming Interface for this flow"; } - leaf moveStatus { - config "false"; - type uint32; + leaf bwKbps { + type uint64 { + range "0..25000000"; + } + description "Bandwidth requirement for this flow"; } - } - - grouping im_PortInfo-group { - // Physical Layer - // Type is an MO-Defined-Type - leaf phyLayer { - config "false"; - description "Physical Layer"; + leaf policer { - // Type is an MO-Defined-Type - type l1_PhyLayer; + type nbm_nbmFlowPolicerEn; + default "DISABLED"; + description "Enable or Disable Policer for this flow"; } - leaf numPorts { - config "false"; - type uint8; + container if-items { + list ConfFlowIf-list { + key "id"; + + uses nbm_ConfFlowIf-group; + description "Configured Flows Interface list"; + } + description "Configured Flows Interface"; } - leaf type { - config "false"; - type uint8; + container host-items { + list ConfFlowHost-list { + key "host"; + + uses nbm_ConfFlowHost-group; + description "Configured Flows Reporter IP list"; + } + description "Configured Flows Reporter IP"; } } - grouping pc_Entity-group { + grouping nbm_ConfFlowIf-group { + description "Configured Flows Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_IfId; + description "OIF Interface"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf isLhr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmNoYes; + description "Signals if this switch is LHR for this flow"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping nbm_ConfFlowHost-group { + description "Configured Flows Reporter IP"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + leaf host { + + type nbm_nbmIpAddr; + description "reporter IP Address"; } + } - // This object holds per port channel instance information - container pc-items { + grouping nbm_GroupRangeList-group { + description "Non Blocking Multicast ASM Range configuration."; + container dom-items { + list GroupRangeDom-list { + key "name"; - // Added containment as a singleton: Prefix=pc - // Acquired From Package pc - uses pc_Inst-group; + uses nbm_GroupRangeDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping pc_Inst-group { + grouping nbm_GroupRangeDom-group { + description "This object holds domain information"; - // Hash distribution type - // Type is an MO-Defined-Type - leaf hashDist { - config "false"; - description "Hash Distribution Type"; + leaf name { - // Type is an MO-Defined-Type - type pc_PCHashDist; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + container g-items { + list GroupRange-list { + key "group groupMask"; - // Load defer timeout - // Type is an MO-Defined-Type - leaf loadDeferTime { - config "false"; - description "Load Defer Timeout"; - - // Type is an MO-Defined-Type - type pc_LoadDeferTime; + uses nbm_GroupRange-group; + description "Non Blocking Multicast ASM Ranges. list"; + } + description "Non Blocking Multicast ASM Ranges."; } + } - // Max number of port-channels - // Type is an MO-Defined-Type - leaf maxChannels { - config "false"; - description "Max Number of Port-channels"; + grouping nbm_GroupRange-group { + description "Non Blocking Multicast ASM Ranges."; - // Type is an MO-Defined-Type - type pc_NumChannels; + leaf group { + + type nbm_nbmMcastIpAddr; + description "ASM Range Multicast Group."; } - // Number of used port-channels - // Type is an MO-Defined-Type - leaf usedChannels { - config "false"; - description "Number of Used Port-channels"; + leaf groupMask { - // Type is an MO-Defined-Type - type pc_NumChannels; + type nbm_nbmIpMask; + description "ASM Range Group Mask as integer."; } - // Number of free port-channels - // Type is an MO-Defined-Type - leaf freeChannels { - config "false"; - description "Number of Free Port-channels"; + leaf rangeType { - // Type is an MO-Defined-Type - type pc_NumChannels; + type nbm_nbmGroupRangeType; + description "ASM Range Type - SSM or ASM."; } + } - // Percentage of used port-channels - // Type is an MO-Defined-Type - leaf pcntChannels { - config "false"; - description "Percentage of Used Port-channels"; + grouping nbm_Interfaces-group { + description "Configure Interface role."; + container dom-items { + list InterfacesDom-list { + key "name"; - // Type is an MO-Defined-Type - type pc_PcntChannels; + uses nbm_InterfacesDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } + + grouping nbm_InterfacesDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + container if-items { + list If-list { + key "if"; - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + uses nbm_If-group; + description "Non Blocking Multicast Interface Link Role list"; + } + description "Non Blocking Multicast Interface Link Role"; + } + } - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping nbm_If-group { + description "Non Blocking Multicast Interface Link Role"; + + leaf if { + + type nbm_nbmIf; + description "Interface if-index."; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + leaf role { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nbm_nbmLinkRole; + description "Link Role."; + } + leaf unicastBwPercent { + type uint32; + default "255"; + description "Value reserved for Unicast BW percent per port."; + } + } + + grouping nbm_GlobalConf-group { + description "Configure Interface role."; + container dom-items { + list GlobalConfDom-list { + key "name"; + + uses nbm_GlobalConfDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping fcpm_Entity-group { + grouping nbm_GlobalConfDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container global-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nbm_GlobalConfig-group; + description "Non Blocking Multicast Global Config."; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } + grouping nbm_GlobalConfig-group { + description "Non Blocking Multicast Global Config."; - // This class shall store the global configuration - // for a running FcPM instance. We have single FcPM - // in a system - container inst-items { + leaf operMode { - // Added containment as a singleton: Prefix=inst - // Acquired From Package fcpm - uses fcpm_Inst-group; + type nbm_nbmOperationalMode; + description "NBM Operation mode."; } - } - - grouping fcpm_Inst-group { - // switch wwn - // Type is an MO-Defined-Type - leaf switchWWN { - description "Switch WWN"; + leaf defaultSenderHostPolicy { - // Type is an MO-Defined-Type - type fc_Wwn; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for Sender hosts."; } - // edtov - // Type is an MO-Defined-Type - leaf edTov { - description "Fc Protocol Error Detect Timeout"; + leaf defaultReceiverHostPolicy { - // Type is an MO-Defined-Type - type fc_TimeoutVal_1_4; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for Receiver hosts."; } - // raTov - // Type is an MO-Defined-Type - leaf raTov { - description "Fc Protocol Resource Allocation Timeout"; + leaf defaultPimHostPolicy { - // Type is an MO-Defined-Type - type fc_TimeoutVal_5_10; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for PIM groups."; + } + leaf defaultflowBw { + type uint32; + default "0"; + description "Flow Policy Default BW."; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf defaultflowBwUnit { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type nbm_nbmBwUnitEn; + default "KBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; + } + leaf defaultDscp { + type uint32; + default "0"; + description "Default DSCP value for flows."; + } + leaf unicastBwPercent { + type uint8 { + range "0..100"; } + default "0"; + description "Unicast Bandwidth Reservation."; + } + leaf beaconAck { + type string; + default "0"; + description "NBM Process Init Alert ACK. Stops NBM from updating initBeacon."; + } + leaf subscriptionId { + type uint32; + default "0"; + description "DEPRECATED"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf defaultFlowPolicer { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmFlowPolicerEn; + description "Enable or Disable Policer for default Flow Policy"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf immediateBwRecovery { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nbm_nbmBwRecoveryEn; + description "Emable or Disable Immediate Flow BW Recovery"; } } - grouping l2fm_Entity-group { - - // mac-learn - // Type is an MO-Defined-Type - leaf macLearn { - description "mac-learn Enable Disable"; + grouping nbm_FlowPolicyTable-group { + description "Flow Policy Table."; + container dom-items { + list FlowPolicyDom-list { + key "name"; - // Type is an MO-Defined-Type - type l2fm_Learning; + uses nbm_FlowPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping l2rib_Entity-group { + grouping nbm_FlowPolicyDom-group { + description "This object holds domain information"; - // Global L2RIB instance configuration and operation state. - // There is only one instance of L2RIB at any time. - container inst-items { + leaf name { - // Added containment as a singleton: Prefix=inst - // Acquired From Package l2rib - uses l2rib_Inst-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - } - grouping l2rib_Inst-group { - - // L2RIB EVPN Host MAC Mobility Object - container evpn-items { + // Holds NBM configuration + container name-items { + list FlowPolicy-list { + key "name"; - // Added containment as a singleton: Prefix=evpn - // Acquired From Package l2rib - uses l2rib_EvpnMACmob-group; + uses nbm_FlowPolicy-group; + description "Non Blocking Multicast Flow Policy elements. list"; + } + description "Non Blocking Multicast Flow Policy elements."; } } - grouping l2rib_EvpnMACmob-group { - leaf ddMoves { - type uint16 { - range "1..1000"; + grouping nbm_FlowPolicy-group { + description "Non Blocking Multicast Flow Policy elements."; + leaf name { + type string { + pattern ".*[!-~]{0,63}.*"; } - default "5"; + description "Flow Policy Name String."; } - leaf ddDuration { - type uint16 { - range "2..36000"; - } - default "180"; + leaf bw { + type uint64; + description "Flow bandwidth."; } - leaf drTimeout { - type uint16 { - range "0..1800"; - } - default "30"; + + leaf bwUnit { + + type nbm_nbmBwUnitEn; + default "KBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; } - leaf drRetryCnt { - type uint16 { - range "0..3000"; + leaf dscp { + type uint32 { + range "0..63"; } - default "3"; + default "0"; + description "DSCP value for the flow."; } - } - grouping pvlan_Entity-group { + leaf policer { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type nbm_nbmFlowPolicerEn; + description "Enable or Disable Policer for this Flow Policy"; + } + container bgn-items { + list FlowPolicyRange-list { + key "groupBegin groupEnd"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nbm_FlowPolicyRange-group; + description "Multicast Group Range list"; } + description "Multicast Group Range"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping nbm_FlowPolicyRange-group { + description "Multicast Group Range"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf groupBegin { + + type nbm_nbmMcastIpAddr; + description "Flow Policy Group range start."; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf groupEnd { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nbm_nbmMcastIpAddr; + description "Flow Policy Group range end."; } + } - // This objects hold per pvlan instance information. There is only - // one instance of pvlanm running in the system today - container Inst-items { + grouping nbm_HostPolicyTable-group { + description "Host Policy Table."; + container dom-items { + list HostPolicyDom-list { + key "name"; - // Added containment as a singleton: Prefix=Inst - // Acquired From Package pvlan - uses pvlan_Inst-group; + uses nbm_HostPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping pvlan_Inst-group { + grouping nbm_HostPolicyDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container sender-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nbm_SenderHostPolicyTable-group; + description "Sender Host Policy Table."; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container receiver-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses nbm_ReceiverHostPolicyTable-group; + description "Receiver Host Policy Table."; } - // Abstraction for a layer-1 interface in the system. - // The properties apply to all types of interfaces - container If-items { - list If-list { - key "if"; + container pim-items { - // Added containment: Prefix=If - // Acquired From Package pvlan - uses pvlan_If-group; - } + uses nbm_PimHostPolicyTable-group; + description "Pim Host Policy Table."; } + } - // Layer2 private-vlan. - container vlan-items { - list Pvlan-list { - key "id"; + grouping nbm_SenderHostPolicyTable-group { + description "Sender Host Policy Table."; + container seq-items { + list SenderHostPolicy-list { + key "seqNum"; - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_Pvlan-group; + uses nbm_SenderHostPolicy-group; + description "Sender Host Policies. list"; } + description "Sender Host Policies."; } } - grouping pvlan_If-group { + grouping nbm_SenderHostPolicy-group { + description "Sender Host Policies."; - // pvlan if id - // Type is an MO-Defined-Type - leaf if { - description "ifindex"; + leaf seqNum { - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // promiscous port mapping - // Type is an MO-Defined-Type - leaf promPriMapping { - description "primary vlan mapping"; + leaf host { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Type is an MO-Defined-Type - leaf promSecVlanMapping { - description "secondary vlan mapping"; + leaf group { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; } - // host port mapping - // Type is an MO-Defined-Type - leaf priHostVlan { - description "primary Host Vlan"; + leaf groupMask { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmIpMask; + description "Group Mask as integer"; } - // Type is an MO-Defined-Type - leaf secHostVlan { - description "Host Vlan"; + leaf permission { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } + } - // Type is an MO-Defined-Type - leaf nativevlan { - description "Native Vlan"; + grouping nbm_ReceiverHostPolicyTable-group { + description "Receiver Host Policy Table."; - // Type is an MO-Defined-Type - type l2_DomId; + // Receiver Policy + container seq-items { + list ReceiverHostPolicy-list { + key "seqNum"; + + uses nbm_ReceiverHostPolicy-group; + description "Receiver Host Policies list"; + } + description "Receiver Host Policies"; } + } - // Type is an MO-Defined-Type - leaf tallowedvlans { - description "Trunk Allowed Vlans"; + grouping nbm_ReceiverHostPolicy-group { + description "Receiver Host Policies"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + leaf seqNum { + + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf host { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf source { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf group { - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; } - // trunk promiscous port mapping - container pvlanPromTable-items { - - // Added containment as a singleton: Prefix=pvlanPromTable - // Acquired From Package pvlan - uses pvlan_PvlanTPromTable-group; - } - - // trunk secondary port mapping - container PvlanTSecTable-items { - - // Added containment as a singleton: Prefix=PvlanTSecTable - // Acquired From Package pvlan - uses pvlan_PvlanTSecTable-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - container rtvrfMbr-items { + leaf groupMask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nbm_nbmIpMask; + description "Group Mask as integer"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf permission { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } } - grouping pvlan_PvlanTPromTable-group { + grouping nbm_PimHostPolicyTable-group { + description "Pim Host Policy Table."; - // trunk promiscous vlan mapping entries - container vlan-items { - list PvlanTPromEntry-list { - key "priVlanId"; + // External Receiver Host Policy + container seq-items { + list PimHostPolicy-list { + key "seqNum"; - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_PvlanTPromEntry-group; + uses nbm_PimHostPolicy-group; + description "PIM Host Policies list"; } + description "PIM Host Policies"; } } - grouping pvlan_PvlanTPromEntry-group { + grouping nbm_PimHostPolicy-group { + description "PIM Host Policies"; - // Type is an MO-Defined-Type - leaf priVlanId { - description "primary Vlan Id"; + leaf seqNum { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // Type is an MO-Defined-Type - leaf secvlans { - description "secondary vlan bitset"; + leaf source { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmIpAddr; + description "Host IP Address"; } - } - grouping pvlan_PvlanTSecTable-group { + leaf group { - // trunk secondary vlan mapping entries - container vlan-items { - list PvlanTSecEntry-list { - key "priVlanId"; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; + } - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_PvlanTSecEntry-group; - } + leaf groupMask { + + type nbm_nbmIpMask; + description "Group Mask as integer"; + } + + leaf permission { + + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } } - grouping pvlan_PvlanTSecEntry-group { + grouping nbm_ShowTables-group { + description "Non Blocking Multicast Show Tables."; - // Type is an MO-Defined-Type - leaf priVlanId { - description "Primary Vlan Id"; + container appliedpolicies-items { - // Type is an MO-Defined-Type - type l2_DomId; + uses nbm_AppliedPolicyTable-group; + description "Non Blocking Multicast applied policy related show tables."; } - // Type is an MO-Defined-Type - leaf secVlanId { - description "Secondary Vlan Id"; + container flows-items { - // Type is an MO-Defined-Type - type l2_DomId; + uses nbm_FlowsTable-group; + description "Non Blocking Multicast flow display table."; } - } - grouping pvlan_Pvlan-group { + container stats-items { - // Private-vlan id - // Type is an MO-Defined-Type - leaf id { - description "Pvlan ID"; + uses nbm_StatsTable-group; + description "Non Blocking Multicast Stats display table."; + } - // Type is an MO-Defined-Type - type l2_DomId; + // OPER GLOBAL + container global-items { + + uses nbm_GlobalShow-group; + description "Show MOs."; } - // Private Vlan Type (Primary, Community, Isolated) - // Type is an MO-Defined-Type - leaf vlanType { - description "Privte-vlan type"; + container endpoints-items { - // Type is an MO-Defined-Type - type l2_PvlanTypes; + uses nbm_EndPointsTable-group; + description "End Point Table. Contains details of all discovered endpoints on a switch."; } - // Association of primary to secondary vlans - // Type is an MO-Defined-Type - leaf association { - description "Secondary Association"; + // OPER GLOBAL + container faults-items { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + uses nbm_FaultsTable-group; + description "Show Config MO Faults."; } } - grouping vlanmgr_Entity-group { + grouping nbm_AppliedPolicyTable-group { + description "Non Blocking Multicast applied policy related show tables."; + container dom-items { + list AppliedPolicyDom-list { + key "name"; + + uses nbm_AppliedPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; + } + } + + grouping nbm_AppliedPolicyDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // APPLIED Policy Oper MO + container host-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses nbm_AppliedHostPolicy-group; + description "Applied Host Policies"; } + } - // This objects hold per vlan-mgr instance information. There is only - // one instance of vlan-mgr running in the system today - container inst-items { + grouping nbm_AppliedHostPolicy-group { + description "Applied Host Policies"; + container seq-items { + list AppliedPolicy-list { + config "false"; + key "seqNum policyType if"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vlanmgr - uses vlanmgr_Inst-group; + uses nbm_AppliedPolicy-group; + description "Applied Sender and Local Receiver Policies list"; + } + description "Applied Sender and Local Receiver Policies"; } } - grouping vlanmgr_Inst-group { + grouping nbm_AppliedPolicy-group { + description "Applied Sender and Local Receiver Policies"; + leaf seqNum { + config "false"; + type uint64; + description "Preference"; + } - // Vdc id - // Type is an MO-Defined-Type - leaf vdcId { + leaf policyType { config "false"; - description "VDC ID"; - // Type is an MO-Defined-Type - type l2_VdcId; + type nbm_nbmPolicyType; + description "Sender, Local Receiver, or External Receiver"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + leaf if { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nbm_nbmIf; + description "Interface to which policy is applicable"; + } + leaf ifName { + config "false"; + type string; + description "Interface name where policy is applied."; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + leaf isActive { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmNoYes; + description "Applied ACTIVE or PASSIVE."; } - - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + leaf tStamp { config "false"; - description "Controls"; + type uint64; + description "Time Stamp when entry created"; + } + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + grouping nbm_FlowsTable-group { + description "Non Blocking Multicast flow display table."; + + // FLOWS SHOW MO TREE + container dom-items { + list FlowsDom-list { + key "name"; + + uses nbm_FlowsDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } - // DomainMbrIf class - container dommbr-items { - list DomMbrIf-list { + grouping nbm_FlowsDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Holds NBM configuration + container s-items { + list NbmFlow-list { config "false"; - key "ifIdx"; + key "source group"; - // Added containment: Prefix=dommbr - // Acquired From Package l2 - uses l2_DomMbrIf-group; + uses nbm_NbmFlow-group; + description "Non Blocking Multicast Elements list"; } + description "Non Blocking Multicast Elements"; } } - grouping l2_DomMbrIf-group { + grouping nbm_NbmFlow-group { + description "Non Blocking Multicast Elements"; - // if-index (Secondary Key) - // Type is an MO-Defined-Type - leaf ifIdx { + // Properties + leaf source { config "false"; - description "Interface Index"; - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmIpAddr; + description "source IP Address"; } - // create-flag to track interface creation status - // Type is an MO-Defined-Type - leaf createFlag { + leaf group { config "false"; - description "Create Flag"; - // Type is an MO-Defined-Type - type l2_CreateState; + type nbm_nbmIpAddr; + description "Group being sent"; } - // bundle_port_state to track port-channel's operational status - // Type is an MO-Defined-Type - leaf bundlePortSt { + leaf ingressIf { config "false"; - description "Bundle Port State"; - // Type is an MO-Defined-Type - type l1_OperSt; + type nbm_nbmIf; + description "ingress Interface for this flow"; } - - // phy-port-state to track port's physical state - // Type is an MO-Defined-Type - leaf phyPortState { + leaf ingressIfName { config "false"; - description "Physical Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type string; + description "OIF Interface name"; } - - // pm-port-state to track port's protocol state - // Type is an MO-Defined-Type - leaf pmPortState { + leaf egressIfCount { config "false"; - description "Protocol State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type uint32; + description "OIF Count for this flow"; } - - // port's access vlan - // Type is an MO-Defined-Type - leaf accessVlan { + leaf flowPol { config "false"; - description "Access VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type string; + description "Flow Policy Used for this flow."; } - - // port's native vlan - // Type is an MO-Defined-Type - leaf nativeVlan { + leaf bwKbps { config "false"; - description "Native VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint64; + description "Bandwidth used"; } - - // pm-port-mode to track port's mode (access, trunk etc) - // Type is an MO-Defined-Type - leaf pmPortMode { + leaf dscp { config "false"; - description "Port Mode"; - - // Type is an MO-Defined-Type - type l1_Mode; + type uint32; + description "DSCP in use"; } - - // allowed-vlan-bitmap used to track vlans that are configured on the interface - // Type is an MO-Defined-Type - leaf allowedVlanBmp { + leaf qid { config "false"; - description "Allowed Vlan Bitmap"; - - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type uint32; + description "Queue ID"; } - // up-vlan-bitmap used to track vlans that are up on the interface - // Type is an MO-Defined-Type - leaf trunkPortUpVlanBmp { + leaf isFhr { config "false"; - description "Trunk Port Up Vlan Bitmap"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmNoYes; + description "Signals if this switch is FHR for this flow"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + leaf policed { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type nbm_nbmNoYes; + description "Is the corresponding flow policy set to install ingress policer."; } - } - - grouping nvo_Eps-group { - - container evpnmulticast-items { - - // Added containment as a singleton: Prefix=evpnmulticast - // Acquired From Package nvo - uses nvo_EvpnMulticast-group; + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when entry created"; } - - container multisite-items { - - // Added containment as a singleton: Prefix=multisite - // Acquired From Package nvo - uses nvo_EvpnMultisiteBordergw-group; + leaf bucket { + config "false"; + type uint16; + description "Telemetry filter bucket"; } - container epId-items { - list Ep-list { - key "epId"; - // Added containment: Prefix=epId - // Acquired From Package nvo - uses nvo_Ep-group; + // MO FOR OIFs + container oif-items { + list OifList-list { + config "false"; + key "oif"; + + uses nbm_OifList-group; + description "Non Blocking Multicast OIF List list"; } + description "Non Blocking Multicast OIF List"; } } - grouping nvo_EvpnMulticast-group { + grouping nbm_OifList-group { + description "Non Blocking Multicast OIF List"; - // Type is an MO-Defined-Type - leaf state { - description "Advertise EVPN Multicast State."; + leaf oif { + config "false"; - // Type is an MO-Defined-Type - type nvo_EvpnMcastStT; + type nbm_nbmIf; + description "OIF Interface"; + } + leaf oifName { + config "false"; + type string; + description "OIF Interface name"; } - } - grouping nvo_EvpnMultisiteBordergw-group { + leaf reporterIP { + config "false"; - // Type is an MO-Defined-Type - leaf state { - description "Configures the state of EVPN Multisite Border-gateway."; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver. Only LHR Need publish this"; + } - // Type is an MO-Defined-Type - type nvo_MultisiteStateT; + leaf origin { + config "false"; + + type nbm_nbmOifOrigin; + default "PROTOCOL"; + description "OIF Origin - static, dynamic or both"; } - leaf siteId { + leaf oifTstamp { + config "false"; type uint64; + description "Time Stamp when entry created"; } - leaf delayRestoreTime { - type uint16 { - range "30..1000"; + } + + grouping nbm_StatsTable-group { + description "Non Blocking Multicast Stats display table."; + container dom-items { + list StatsDom-list { + key "name"; + + uses nbm_StatsDom-group; + description "This object holds domain information list"; } - default "180"; + description "This object holds domain information"; } } - grouping nvo_Ep-group { + grouping nbm_StatsDom-group { + description "This object holds domain information"; - // Type is an MO-Defined-Type - leaf epId { - description "Network Virtualization Overlay Endpoint (NVE) ID"; + leaf name { - // Type is an MO-Defined-Type - type nvo_EpIdT; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Up or Down state of the NVE."; + // Holds NBM configuration + container s-items { + list StatsEntry-list { + config "false"; + key "source group"; - // Type is an MO-Defined-Type - type nw_AdminSt; - } - leaf descr { - type string; + uses nbm_StatsEntry-group; + description "Non Blocking Multicast Elements list"; + } + description "Non Blocking Multicast Elements"; } + } - // Type is an MO-Defined-Type - leaf sourceInterface { - description "Source Interface associated with the NVE."; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping nbm_StatsEntry-group { + description "Non Blocking Multicast Elements"; - // Type is an MO-Defined-Type - leaf multisiteBordergwInterface { - description "Interface representing the Multisite Border Gateway."; + // Properties + leaf source { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf holdDownTime { - type uint16 { - range "1..1000"; - } - default "180"; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Type is an MO-Defined-Type - leaf hostReach { - description "Host Reachability Protocol."; + leaf group { + config "false"; - // Type is an MO-Defined-Type - type nvo_HostReachT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - leaf suppressARP { - type boolean; + leaf allowedPkts { + config "false"; + type uint64; + description "Allowed Packets"; } - - // Type is an MO-Defined-Type - leaf mcastGroupL2 { - description "Base multicast group address for L2."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + leaf allowedBytes { + config "false"; + type uint64; + description "Allowed Bytes"; } - - // Type is an MO-Defined-Type - leaf mcastGroupL3 { - description "Base multicast group address for L3."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + leaf deniedPkts { + config "false"; + type uint64; + description "Denied Packets"; } - leaf ingressReplProtoBGP { - type boolean; + leaf deniedBytes { + config "false"; + type uint64; + description "Denied Bytes"; } - leaf advertiseVmac { - type boolean; - default "false"; + leaf totalPkts { + config "false"; + type uint64; + description "Total Packets"; } - leaf controllerId { - type uint32; - default "0"; + leaf totalBytes { + config "false"; + type uint64; + description "Total Bytes"; + } + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when stats read"; } + } - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Enable or disable VxLAN configuration via controller."; + grouping nbm_GlobalShow-group { + description "Show MOs."; + container dom-items { + list GlobalShowDom-list { + key "name"; - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + uses nbm_GlobalShowDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } - // Type is an MO-Defined-Type - leaf encapType { - description "Encapsulation Type."; + grouping nbm_GlobalShowDom-group { + description "This object holds domain information"; - // Type is an MO-Defined-Type - type nvo_EncapT; - } - leaf autoRemapReplicationServers { - type boolean; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "Operational State of the NVE."; + container global-items { - // Type is an MO-Defined-Type - type l2_DomOperSt; + uses nbm_GlobalOper-group; + description "Non Blocking Multicast Global Config"; } + } - // Type is an MO-Defined-Type - leaf operStSrcLoopbackIntf { + grouping nbm_GlobalOper-group { + description "Non Blocking Multicast Global Config"; + leaf initBeacon { config "false"; - description "Operational State Up or Down of NVE Source Loopback Interface."; - - // Type is an MO-Defined-Type - type l2_DomOperSt; + type uint64; + description "NBM Process Init Alert. Set to epoch every minute."; } - - // Type is an MO-Defined-Type - leaf operStMultisiteBrdrGwLoopbackIntf { + leaf apiVer { config "false"; - description "Operational State Up or Down of Multisite Border Gateway Loopback Interface."; - - // Type is an MO-Defined-Type - type l2_DomOperSt; + type uint8; + default "1"; + description "PMN API Version."; + } + leaf adminSt { + config "false"; + type uint8; + default "1"; + description "Configured or not."; } - // Type is an MO-Defined-Type - leaf adminStMultisiteBrdrGwLoopackIntf { + leaf operMode { config "false"; - description "Administrative State Up or Down of Multisite Border Gateway Loopback Interface."; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmOperationalMode; + description "NBM Operation mode."; } + } - // Type is an MO-Defined-Type - leaf operEncapType { - config "false"; - description "Operational encapsulation type."; + grouping nbm_EndPointsTable-group { + description "End Point Table. Contains details of all discovered endpoints on a switch."; + container dom-items { + list EpiDom-list { + key "name"; - // Type is an MO-Defined-Type - type nvo_EncapT; + uses nbm_EpiDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } - leaf mac { - config "false"; - type address_Mac; + } + + grouping nbm_EpiDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf virtualRtrMac { - config "false"; - type address_Mac; + container h-items { + list EndPoint-list { + config "false"; + key "hostIp if"; + + uses nbm_EndPoint-group; + description "Info on a discovered endpoint. list"; + } + description "Info on a discovered endpoint."; } - leaf virtualRtrMacReorig { + } + + grouping nbm_EndPoint-group { + description "Info on a discovered endpoint."; + + // Properties + leaf hostIp { config "false"; - type address_Mac; + + type nbm_nbmIpAddr; + description "Endpoint IP Address."; } - // Type is an MO-Defined-Type - leaf learningMode { + leaf if { config "false"; - description "Indicates the host learning mode (Control plane or data plane)."; - // Type is an MO-Defined-Type - type nvo_HostLearnModeT; + type nbm_nbmIf; + description "Interface index where endpoint is attached."; } - leaf holdUpTime { + leaf ifName { config "false"; - type uint16; + type string; + description "Interface name where endpoint is attached."; } - // Type is an MO-Defined-Type - leaf holdDownTimerExpiryTime { + leaf role { config "false"; - description "Indicates the time after which the hold down timer will expire (in milliseconds)."; - // Type is an MO-Defined-Type - type nvo_ETimeStamp; + type nbm_nbmEndpointRole; + description "End Point Role. This can be Unknown when discovered via ARP. And specific role when known."; } - // Type is an MO-Defined-Type - leaf holdUpTimerExpiryTime { - config "false"; - description "Indicates the time after which the hold up timer will expire (in milliseconds)."; + container arp-items { - // Type is an MO-Defined-Type - type nvo_ETimeStamp; + uses nbm_EndPointArp-group; + description "Info got via ARP from a discovered endpoint."; } + container g-items { + list EndPointSender-list { + config "false"; + key "group"; - // Type is an MO-Defined-Type - leaf delayRestoreMsBrdrGwExpiryTime { - config "false"; - description "Time when delay restore for Multisite Border Gateway Loopback Interface will expire."; - - // Type is an MO-Defined-Type - type nvo_ETimeStamp; - } - leaf vpcVIPNotified { - config "false"; - type boolean; + uses nbm_EndPointSender-group; + description "Info regarding Sender status on a discovered endpoint. list"; + } + description "Info regarding Sender status on a discovered endpoint."; } - leaf primaryIp { - config "false"; - type address_Ipv4; + container s-items { + list EndPointReceiver-list { + config "false"; + key "source group"; + + uses nbm_EndPointReceiver-group; + description "Info on a discovered endpoint as a receiver. list"; + } + description "Info on a discovered endpoint as a receiver."; } - leaf secondaryIp { + } + + grouping nbm_EndPointArp-group { + description "Info got via ARP from a discovered endpoint."; + + leaf mac { config "false"; - type address_Ipv4; + + type nbm_nbmMacAddr; + description "MAC Address of the endpoint."; } - leaf multisiteBrdrGwIntfIp { + leaf tStamp { config "false"; - type address_Ipv4; + type uint64; + description "Time Stamp when entry created"; } + } - container peers-items { - - // Added containment as a singleton: Prefix=peers - // Acquired From Package nvo - uses nvo_Peers-group; - } + grouping nbm_EndPointSender-group { + description "Info regarding Sender status on a discovered endpoint."; - container nws-items { + leaf group { + config "false"; - // Added containment as a singleton: Prefix=nws - // Acquired From Package nvo - uses nvo_Nws-group; + type nbm_nbmIpAddr; + description "Group being sent by this endpoint."; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf isExt { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmNoYes; + description "Is this an External Sender."; } - // Rel-def from operSourceInterface - container rsoperSourceInterface-items { + leaf faultReason { + config "false"; - // Added containment as a singleton: Prefix=rsoperSourceInterface - // Acquired From Package nvo - uses nvo_RsOperSourceInterface_source-group; + type nbm_nbmFaultType; + description "Signals reason of fault if any."; + } + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when entry created"; } } - grouping nvo_Peers-group { - container st_ir_peer-items { - list StIRPeer-list { - config "false"; - key "ip"; - - // Added containment: Prefix=st_ir_peer - // Acquired From Package nvo - uses nvo_StIRPeer-group; - } - } - container dyn_ir_peer-items { - list DyIRPeer-list { - config "false"; - key "ip"; + grouping nbm_EndPointReceiver-group { + description "Info on a discovered endpoint as a receiver."; - // Added containment: Prefix=dyn_ir_peer - // Acquired From Package nvo - uses nvo_DyIRPeer-group; - } - } - container dy_peer-items { - list DyPeer-list { - config "false"; - key "ip"; + leaf source { + config "false"; - // Added containment: Prefix=dy_peer - // Acquired From Package nvo - uses nvo_DyPeer-group; - } + type nbm_nbmIpAddr; + description "Source requested by this receiver. 0.0.0.0 in case of *."; } - // Commented out - // - // - // - // - // - // - // - container st_peer-items { - list StPeer-list { - key "ip"; + leaf group { + config "false"; - // Added containment: Prefix=st_peer - // Acquired From Package nvo - uses nvo_StPeer-group; - } + type nbm_nbmIpAddr; + description "Group requested by this receiver."; } - } - grouping nvo_StIRPeer-group { - leaf ip { + leaf isExt { config "false"; - type address_Ipv4; + + type nbm_nbmNoYes; + description "Is this an External Receiver."; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf faultReason { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmFaultType; + description "Signals reason of fault if any."; } - leaf upStateTransitionTs { + + leaf owner { config "false"; - type string; + + type nbm_nbmRcvOwner; + default "IGMP"; + description "IGMP or Static receiver."; } - leaf createTs { + leaf tStamp { config "false"; - type string; + type uint64; + description "Time Stamp when entry created"; } + } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + grouping nbm_FaultsTable-group { + description "Show Config MO Faults."; + container dom-items { + list FaultsDom-list { + key "name"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + uses nbm_FaultsDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping nvo_Counters-group { - leaf txUcastpkts { - config "false"; - type uint64; + grouping nbm_FaultsDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf txUcastbytes { - config "false"; - type uint64; + container faults-items { + list Faults-list { + config "false"; + key "faultDn"; + + uses nbm_Faults-group; + description "Non Blocking Multicast Faults list"; + } + description "Non Blocking Multicast Faults"; } - leaf txMcastpkts { + } + + grouping nbm_Faults-group { + description "Non Blocking Multicast Faults"; + leaf faultDn { config "false"; - type uint64; + type string; + description "Config DN that's in fault"; } - leaf txMcastbytes { + leaf faultReason { config "false"; - type uint64; + type string; + default "Config_Inapplicable"; + description "Reason for occurance of this fault"; } - leaf rxUcastpkts { + leaf faultResolution { config "false"; - type uint64; + type string; + default "Delete_Config"; + description "How to resolve this Fault"; } - leaf rxUcastbytes { + leaf tStamp { config "false"; type uint64; + description "Time Stamp when fault occured"; } - leaf rxMcastpkts { - config "false"; - type uint64; + } + + grouping nbm_NbmCcTable-group { + description "Non Blocking Multicast Consistency Checker"; + + // Holds NBM CC + container eif-items { + list NbmCcFlowEntity-list { + config "false"; + key "egressIf srcIP dstIP"; + + uses nbm_NbmCcFlowEntity-group; + description "Non Blocking Multicast Consistency Checker Elements list"; + } + description "Non Blocking Multicast Consistency Checker Elements"; } - leaf rxMcastbytes { - config "false"; - type uint64; + container srcip-items { + list SenderCcTable-list { + config "false"; + key "srcIP destIP"; + + uses nbm_SenderCcTable-group; + description "Consistency Checker Sender Table list"; + } + description "Consistency Checker Sender Table"; + } + container repip-items { + list ReceiverCcTable-list { + config "false"; + key "reporterIP srcIP destIP"; + + uses nbm_ReceiverCcTable-group; + description "Consistency Checker Receiver Table list"; + } + description "Consistency Checker Receiver Table"; } } - grouping nvo_DyIRPeer-group { - leaf ip { + grouping nbm_NbmCcFlowEntity-group { + description "Non Blocking Multicast Consistency Checker Elements"; + + // Properties + leaf srcIP { config "false"; - type address_Ipv4; + + type nbm_nbmIpAddr; + description "source IP Address"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf dstIP { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - leaf upStateTransitionTs { + + leaf reporterIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver"; } - leaf createTs { + + leaf ingressIf { config "false"; - type string; + + type nbm_nbmIf; + description "ingress Interface"; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf egressIf { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmIf; + description "egress Interface"; } - } - - grouping nvo_DyPeer-group { - leaf ip { + leaf dscp { config "false"; - type address_Ipv4; + type uint32; + description "dscp value"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf bandwidthUnit { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmBwUnitEn; + default "MBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; } - leaf upStateTransitionTs { + leaf bandwidth { config "false"; - type string; + type uint32; + description "bandwidth"; } - leaf mac { + leaf queueId { config "false"; - type address_Mac; + type uint8; + description "Queue Selection Id"; } + } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf firstVNI { - config "false"; - description "Indicates the first VNI on which the NVE peer was learnt."; + grouping nbm_SenderCcTable-group { + description "Consistency Checker Sender Table"; - // Type is an MO-Defined-Type - type nvo_VniT; - } - leaf createTs { + leaf srcIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "source IP address"; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf destIP { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmIpAddr; + description "dest IP address"; } - } - - grouping nvo_StPeer-group { - leaf ip { - type address_Ipv4; + leaf iif { + config "false"; + type uint8; + description "CCiif"; } - - // Type is an MO-Defined-Type - leaf type { - description "NVO Peer type (mcast/physical)."; - - // Type is an MO-Defined-Type - type tunnel_EpT; + leaf dummyproperty1 { + config "false"; + type uint32; + description "Dummyprop1"; } - leaf peerId { + leaf dummyproperty2 { + config "false"; + type uint32; + description "Dummyprop2"; + } + leaf dummyproperty3 { + config "false"; type uint32; + description "Dummyprop3"; } + } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + grouping nbm_ReceiverCcTable-group { + description "Consistency Checker Receiver Table"; + + leaf srcIP { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmIpAddr; + description "source IP address"; } - leaf upStateTransitionTs { + + leaf destIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "destination IP address"; } - leaf mac { + leaf oif { config "false"; - type address_Mac; + type uint8; + description "Outgoing Interface ID"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf firstVNI { + leaf reporterIP { config "false"; - description "Indicates the first VNI on which the NVE peer was learnt."; - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver CC Table"; } - leaf createTs { + leaf dummyproperty1 { config "false"; - type string; + type uint32; + description "Dummy Property 1"; } - - // Commented out - // - // - // - // - // - // - // - container cntrs-items { - - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + leaf dummyproperty2 { + config "false"; + type uint32; + description "Dummy Property 2"; + } + leaf dummyproperty3 { + config "false"; + type uint32; + description "Dummy Property 3"; } } - grouping nvo_Nws-group { - container vni-items { - list Nw-list { - key "vni"; + grouping nbm_NbmFlowsTable-group { + description "Non Blocking Multicast"; + leaf mode { + type string; + description "Modes - pim-active, controller, etc"; + } - // Added containment: Prefix=vni - // Acquired From Package nvo - uses nvo_Nw-group; + // Holds NBM configuration + container flowOp-items { + list NbmFlowEntity-list { + key "flowOp srcIP dstIP egressIf"; + + uses nbm_NbmFlowEntity-group; + description "Non Blocking Multicast Elements list"; } + description "Non Blocking Multicast Elements"; } - container opervni-items { - list OperNw-list { + + // Counter MO + container srcIP-items { + list NbmOifCounter-list { config "false"; - key "vni"; + key "srcIP dstIP"; - // Added containment: Prefix=opervni - // Acquired From Package nvo - uses nvo_OperNw-group; + uses nbm_NbmOifCounter-group; + description "Non Blocking Multicast OIF Counter list"; } + description "Non Blocking Multicast OIF Counter"; } - container vnis-items { - list NwRange-list { - key "vniRangeMin vniRangeMax"; - // Added containment: Prefix=vnis - // Acquired From Package nvo - uses nvo_NwRange-group; + // MO FOR IIF CHANGE - UNUSED FOR NOW + container iif-items { + list NbmUpdateIif-list { + key "newIngressIf srcIP dstIP"; + + uses nbm_NbmUpdateIif-group; + description "Non Blocking Multicast IIF Switcher list"; } + description "Non Blocking Multicast IIF Switcher"; } } - grouping nvo_Nw-group { + grouping nbm_NbmFlowEntity-group { + description "Non Blocking Multicast Elements"; - // Type is an MO-Defined-Type - leaf vni { - description "Configure Virtual Network ID"; + // Properties + leaf controllerIP { - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "Controller IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf suppressARP { - description "Enable or disable ARP suppression for VNI(s)."; + leaf controllerVIP { - // Type is an MO-Defined-Type - type nvo_SuppressARPT; + type nbm_nbmIpAddr; + description "Controller Virtual IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf mcastGroup { - description "Configures multicast group address for VNI(s)."; + leaf flowOp { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type nbm_nbmFlowOperEn; + description "Operation Type"; } - leaf associateVrfFlag { - type boolean; + + leaf srcIP { + + type nbm_nbmIpAddr; + description "source IP Address"; } - leaf isLegacyMode { - type boolean; + + leaf dstIP { + + type nbm_nbmIpAddr; + description "destination IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf multisiteIngRepl { - description "Enable or disable Multisite Ingress Replication for VNI(s)."; + leaf reporterIP { - // Type is an MO-Defined-Type - type nvo_MultisiteIngReplStateT; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver"; } - // This property is hidden (secure="yes") and used only for internal validation. - // Following are the expected values - - // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" - // CLI - "cli" - // Controller - "controller" - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Internal system property. Not intended for external use."; + leaf ingressIf { - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + type nbm_nbmIf; + description "ingress Interface"; } - container IngRepl-items { + leaf egressIf { - // Added containment as a singleton: Prefix=IngRepl - // Acquired From Package nvo - uses nvo_IngRepl-group; + type nbm_nbmIf; + description "egress Interface"; + } + leaf egressIfCount { + type uint32; + description "OIF Count for this flow"; + } + leaf seqNum { + type uint32; + description "Sequence Number Exchanged between N9K and DCNM"; + } + leaf dscp { + type uint32; + description "dscp value"; + } + + leaf bandwidthUnit { + + type nbm_nbmBwUnitEn; + default "MBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; + } + leaf bandwidth { + type uint32; + description "bandwidth"; + } + leaf queueId { + type uint8; + description "Queue Selection Id"; + } + leaf switchIif { + type uint8; + default "0"; + description "Is this a Switch IIF related message"; } } - grouping nvo_IngRepl-group { + grouping nbm_NbmOifCounter-group { + description "Non Blocking Multicast OIF Counter"; - // Type is an MO-Defined-Type - leaf proto { - description "Configure VxLAN Ingress Replication mode."; + leaf srcIP { + config "false"; - // Type is an MO-Defined-Type - type nvo_IngReplProtoT; + type nbm_nbmIpAddr; + description "source IP Address"; } - // This property is required specifically for configuring replication - // servers from the controller. When its value is replicationServer, it - // signifies that the static peers downloaded from controller should - // programmed wth vni hashing. This property directly maps to the - // replicationMode property in BdEntry MO in the aggregate model. - // And since this property is to be set only from the controller, it has - // been defined as hidden. So it will not be visible in REST/Netconf or - // any other external interface. - // Type is an MO-Defined-Type - leaf replMode { - description "Replication Mode. For internal use only."; + leaf dstIP { + config "false"; - // Type is an MO-Defined-Type - type nvo_ReplModeT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - container config_st_ir_peer-items { - list ConfigStIRPeer-list { - key "ip"; + leaf oifCount { + config "false"; + type uint32; + description "OIF Count"; + } + } - // Added containment: Prefix=config_st_ir_peer - // Acquired From Package nvo - uses nvo_ConfigStIRPeer-group; - } + grouping nbm_NbmUpdateIif-group { + description "Non Blocking Multicast IIF Switcher"; + + leaf srcIP { + + type nbm_nbmIpAddr; + description "source IP Address"; + } + + leaf dstIP { + + type nbm_nbmIpAddr; + description "destination IP Address"; + } + + leaf newIngressIf { + + type nbm_nbmIf; + description "New Ingress Interface"; + } + + leaf prevIngressIf { + + type nbm_nbmIf; + description "Prev Ingress Interface"; + } + leaf seqNum { + type uint32; + description "Sequence Number Exchanged between N9K and DCNM"; } } - grouping nvo_ConfigStIRPeer-group { - leaf ip { - type address_Ipv4; + grouping nbm_NbmStats-group { + description "Non Blocking Multicast"; + + // Holds NBM configuration + container srcIP-items { + list NbmStatsEntity-list { + config "false"; + key "srcIP dstIP"; + + uses nbm_NbmStatsEntity-group; + description "Non Blocking Multicast Elements list"; + } + description "Non Blocking Multicast Elements"; } } - grouping nvo_OperNw-group { + grouping nbm_NbmStatsEntity-group { + description "Non Blocking Multicast Elements"; - // Operational properties - // Type is an MO-Defined-Type - leaf vni { + // Properties + leaf srcIP { config "false"; - description "Virtual Network ID."; - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Type is an MO-Defined-Type - leaf epId { + leaf dstIP { config "false"; - description "Network Virtualization Overlay endpoint (NVE) ID."; - // Type is an MO-Defined-Type - type nvo_EpIdT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - - // Type is an MO-Defined-Type - leaf operMcastGroup { + leaf allowedPkts { config "false"; - description "Indicates the multicast group address."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type uint64; + description "Allowed Packets"; } - leaf operSupprARP { + leaf allowedBytes { config "false"; - type boolean; + type uint64; + description "Allowed Bytes"; } - - // Type is an MO-Defined-Type - leaf state { + leaf deniedPkts { config "false"; - description "Indicates VNI Up or Down state."; - - // Type is an MO-Defined-Type - type nvo_VniStateT; + type uint64; + description "Denied Packets"; } - - // Type is an MO-Defined-Type - leaf mode { + leaf deniedBytes { config "false"; - description "Indicates VNI Host reachability mode."; - - // Type is an MO-Defined-Type - type nvo_HostLearnModeT; + type uint64; + description "Denied Bytes"; } - - // Type is an MO-Defined-Type - leaf type { + leaf totalPkts { config "false"; - description "Indicates if VNI is in L2 or L3 type."; - - // Type is an MO-Defined-Type - type nvo_VniTypeT; + type uint64; + description "Total Packets"; } - leaf vlanBD { + leaf totalBytes { config "false"; - type string; + type uint64; + description "Total Bytes"; } - - // Commented out - // - // - // - // - // - // - // - container cntrs-items { - - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when stats read"; } } - grouping nvo_NwRange-group { + grouping boot_Boot-group { + description "Configure boot images"; - // Type is an MO-Defined-Type - leaf vniRangeMin { - description "Configures the minimum value for the VNI range."; + // boot poap + leaf poap { - // Type is an MO-Defined-Type - type nvo_VniT; + type boot_Poap; + description "Boot Poap Enable Disable"; } - // Type is an MO-Defined-Type - leaf vniRangeMax { - description "Configures the maximum value for the VNI range."; + // boot order + leaf order { - // Type is an MO-Defined-Type - type nvo_VniT; - } - leaf isMcastRange { - type boolean; + type boot_Order; + description "Boot Order bootflash/pxe"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf suppressARP { - description "Enable or disable ARP suppression for VNI(s)."; + // boot mode + leaf mode { - // Type is an MO-Defined-Type - type nvo_SuppressARPT; + type boot_Mode; + description "Select boot mode type"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf mcastGroup { - description "Configures multicast group address for VNI(s)."; + // boot dhcp + leaf dhcp { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type boot_Dhcp; + description "Set the dhcp value"; } - leaf associateVrfFlag { - type boolean; + leaf aci { + type string; + description "Boot aci"; } - leaf isLegacyMode { - type boolean; + leaf fex { + type string { + length "0..128"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^]+.*"; + } + description "Boot fex image with the image provided"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf multisiteIngRepl { - description "Enable or disable Multisite Ingress Replication for VNI(s)."; + // boot autocopy + leaf autoCopy { - // Type is an MO-Defined-Type - type nvo_MultisiteIngReplStateT; + type boot_AutoCopy; + description "Boot Auto Copy"; } - // This property is hidden (secure="yes") and used only for internal validation. - // Following are the expected values - - // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" - // CLI - "cli" - // Controller - "controller" - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Internal system property. Not intended for external use."; + container image-items { - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + uses boot_Image-group; + description "Configure images"; } - container IngRepl-items { + container modbootorder-items { - // Added containment as a singleton: Prefix=IngRepl - // Acquired From Package nvo - uses nvo_IngRepl-group; + uses boot_ModBootOrder-group; + description "Configure module boot order"; } } - grouping l3_Ctx-group { - - // parameter used by node to enforce filter rules - // Type is an MO-Defined-Type - leaf pcEnfPref { - description "Policy Control Enforcement"; - - // Type is an MO-Defined-Type - type fv_PcEnfPref; - } - - // Type of the context - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type l3_CtxT; - } - - // It represents the classId for the multicast traffic - // terminating on this context - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; - - // Type is an MO-Defined-Type - type actrl_PcTag; + grouping boot_Image-group { + description "Configure images"; + leaf sup1 { + type string; + description "Image to configure on sup-1"; } - - // Local managment class id - // Type is an MO-Defined-Type - leaf mgmtPcTag { - description "Management PC Tag"; - - // Type is an MO-Defined-Type - type actrl_PcTag; + leaf sup2 { + type string; + description "Image to configure on sup-2"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Modified by Override: l3:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Image Verification parameter + leaf imageverification { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type boot_ImageVerify; + description "Enable/Disable Image Verification"; } - - // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf resourceId { + leaf image_err { config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; + type string; + default "success"; + description "failure string"; } - - // vrf id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf id { + leaf sup1NextReload { config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; - } - leaf encap { type string; + description "Image to configure on sup-1 on next reload"; } - leaf descr { + leaf sup2NextReload { + config "false"; type string; + description "Image to configure on sup-2 on next reload"; } + } - // Scope of the context. It identifies the classId - // pool and all the epg/bd classIds belonging to - // this context needs to be allocated from this pool - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "Scope"; - - // Type is an MO-Defined-Type - type actrl_ScopeId; - } + grouping boot_ModBootOrder-group { + description "Configure module boot order"; - // Controller Id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; + // Module boot order + leaf bootOrderReverse { - // Type is an MO-Defined-Type - type aggregate_ControllerID; + type boot_BootOrderReverse; + description "Configure module boot order"; } + } - // SecurityLabel - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf secLbl { - config "false"; - description "Security Label"; - - // Type is an MO-Defined-Type - type actrl_SecLbl; - } + grouping eqpt_Ch-group { + description "The hardware chassis information container"; - // vrf Admin State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf adminState { - description "Admin State"; + // Role of this chassis + leaf role { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfAdminState; + type top_NodeRole; + description "The role of this chassis"; } - // vrf Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operState { + // Operational status of chassis + leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_ChOperSt; + description "The chassis operational state"; } - // oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type + // Chassis operational status qualifier leaf operStQual { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_OperStQual; + description "The chassis operational state qualifier"; } - // old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf oldOperStQual { + // Module VID + leaf vdrId { config "false"; - description "Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_ModVid; + description "The card vdrId"; } - leaf gsdbCtx { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - leaf pending { + + // The device model + leaf model { config "false"; - type boolean; + + type eqpt_Model; + description "Model"; } - leaf v4TibValid { + + // The device revision. + leaf rev { config "false"; - type boolean; + + type eqpt_Revision; + description "Revision"; } - leaf v4TibId { + + // The device serial number. + leaf ser { config "false"; - type uint32; + + type eqpt_Serial; + description "Serial Number"; } - leaf v4TibName { + leaf mfgTm { config "false"; - type string; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - leaf v4TibPending { + + // Identifier for the item + leaf id { config "false"; - type boolean; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // ipv4 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperState { + leaf descr { config "false"; - description "IPV4 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type naming_Descr; + description "Description of the specified attribute"; } - // ipv4 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperStQual { - config "false"; - description "IPV4 Table Operational State Qualifier"; + // Ejector policy + container ejpol-items { + list EjPol-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_EjPol-group; + description "Ejector Policy list"; + } + description "Ejector Policy"; } - // ipv4 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOldOperStQual { - config "false"; - description "IPV4 Old Operational State Qualifier"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - leaf v6TibValid { - config "false"; - type boolean; + + // supervisor slot + container supslot-items { + list SupCSlot-list { + config "false"; + key "id"; + + uses eqpt_SupCSlot-group; + description "The supervisor slot information list"; + } + description "The supervisor slot information"; } - leaf v6TibId { - config "false"; - type uint32; + + // line card slot + container lcslot-items { + list LCSlot-list { + config "false"; + key "id"; + + uses eqpt_LCSlot-group; + description "The line card slot information list"; + } + description "The line card slot information"; } - leaf v6TibName { - config "false"; - type string; + + // fabric card slot + container fcslot-items { + list FCSlot-list { + config "false"; + key "id"; + + uses eqpt_FCSlot-group; + description "The fabric card slot information list"; + } + description "The fabric card slot information"; } - leaf v6TibPending { - config "false"; - type boolean; + + // system controller slot + container scslot-items { + list SysCSlot-list { + config "false"; + key "id"; + + uses eqpt_SysCSlot-group; + description "The system controller module slot information list"; + } + description "The system controller module slot information"; } - // ipv6 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperState { - config "false"; - description "IPV6 Table Operational State"; + // power supply slot + container psuslot-items { + list PsuSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + uses eqpt_PsuSlot-group; + description "The power supply slot information list"; + } + description "The power supply slot information"; } - // ipv6 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperStQual { - config "false"; - description "IPV6 Table Operational State Qualifer"; + // fan tray slot + container ftslot-items { + list FtSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_FtSlot-group; + description "The fan tray slot information list"; + } + description "The fan tray slot information"; } - // ipv6 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOldOperStQual { - config "false"; - description "IPV6 Table Operational State Qualifer"; + // Sprom Backplane Unit block + container spbp-items { - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_SpromBP-group; + description "The backplane sprom information"; } - leaf createTs { - config "false"; - type string; + + // Board slot + container bslot-items { + + uses eqpt_BSlot-group; + description "Board Slot"; } - leaf lastChgdTs { - config "false"; - type string; + + // Nic slot + container nslot-items { + list NSlot-list { + config "false"; + key "id"; + + uses eqpt_NSlot-group; + description "Nic Slot list"; + } + description "Nic Slot"; } - // bgp route distinguisher - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf bgpRd { - config "false"; - description "BGP Route Distinguisher"; + // Storage represents the storage of the Controller + container p-items { + list Storage-list { + config "false"; + key "mount fileSystem"; - // Type is an MO-Defined-Type - type l3_BgpRdBytes; + uses eqpt_Storage-group; + description "Storage Equipment list"; + } + description "Storage Equipment"; } - leaf bgpRdDisp { + } + + grouping eqpt_EjPol-group { + description "Ejector Policy"; + + // Auto shutdown on ejector open + leaf autoSh { config "false"; - type string; + + type eqpt_AdSt; + default "disabled"; + description "Auto Shutdown on Ejector Open"; } - leaf prtclBmp { + + // Identifier for the item + leaf id { config "false"; - type uint32; + + type eqpt_Id; + description "ID"; } - leaf oui { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - leaf vpnId { + + // The device model + leaf model { config "false"; - type uint32; + + type eqpt_Model; + description "Model"; } - // Prefix list entry definition - container pfx-items { - list PfxEntry-list { - config "false"; - key "addr"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=pfx - // Acquired From Package actrl - uses actrl_PfxEntry-group; - } + type eqpt_Revision; + description "Revision"; } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Routed management interface - container mgmt-items { - list RtdMgmtIf-list { - key "id"; + leaf descr { + config "false"; - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_RtdMgmtIf-group; - } + type naming_Descr; + description "Description of the specified attribute"; } + } - // Rel-def target from tenConn - // Inherited From l3:Ctx - container rttenConn-items { + grouping eqpt_LocLed-group { + description "The locator LED information"; - // Added containment as a singleton: Prefix=rttenConn - // Acquired From Package actrl - uses actrl_RtTenConn_target-group; - } + // Identifier for the item + leaf id { + config "false"; - // Rel-def from ctxToEpP - container rsctxToEpP-items { + type eqpt_Id; + description "ID"; + } - // Abstract containment of rsctxToEpP derived from l3:Ctx - list RsCtxToEpP-list { - key "tDn"; + // The device model + leaf model { + config "false"; - // Added containment: Prefix=rsctxToEpP - // Acquired From Package l3 - uses l3_RsCtxToEpP_source-group; - } + type eqpt_Model; + description "Model"; } - } - grouping actrl_PfxEntry-group { - leaf addr { + leaf descr { config "false"; - type address_Ip; + + type naming_Descr; + description "Description of the specified attribute"; } - // Policy tag - // Type is an MO-Defined-Type - leaf pcTag { + // Color status of an LED + leaf color { config "false"; - description "PC Tag"; - // Type is an MO-Defined-Type - type actrl_PcTag; + type eqpt_Color; + description "The LED Color"; } - // Prefix operational state - // Type is an MO-Defined-Type + // Operational status of an LED leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type actrl_OperSt; + type eqpt_LedOpSt; + description "The LED operational Status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { + // Admin status - Used to locate + leaf adminSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_AdSt; + description "The locator LED admin status"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + grouping eqpt_SupCSlot-group { + description "The supervisor slot information"; + + // Poweroff config + leaf poweroff { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - } - - grouping mgmt_RtdMgmtIf-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Id; + description "The physical slot identifier"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type eqpt_SlotT; + default "supslot"; + description "The supervisor slot type"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - container rtpseudoIf-items { + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Rel-def from rtdMgmtConf - container rsrtdMgmtConf-items { + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Added containment as a singleton: Prefix=rsrtdMgmtConf - // Acquired From Package mgmt - uses mgmt_RsRtdMgmtConf_source-group; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - container rtvrfMbr-items { + // Sup Card, containing CPU running control plane + container sup-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses eqpt_SupC-group; + description "The supervisor module information"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Card reset record + container rstrec-items { + list CardRstRec-list { config "false"; - key "tDn"; + key "ts"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - } - - grouping l3_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Modified by Override: l3:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } + } - // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf resourceId { - config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; - } + grouping eqpt_SupC-group { + description "The supervisor module information"; - // vrf id - // Inherited From l3:Dom - // Type is an MO-Defined-Type + // Identifier for the item leaf id { config "false"; - description "VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; - } - leaf encap { - type string; - } - leaf descr { - type string; + type eqpt_Id; + description "ID"; } - // Scope of the context. It identifies the classId - // pool and all the epg/bd classIds belonging to - // this context needs to be allocated from this pool - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf scope { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Scope"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + type eqpt_Vendor; + description "Vendor"; } - // Controller Id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type aggregate_ControllerID; + type eqpt_Model; + description "Model"; } - // SecurityLabel - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf secLbl { + // The device revision. + leaf rev { config "false"; - description "Security Label"; - // Type is an MO-Defined-Type - type actrl_SecLbl; + type eqpt_Revision; + description "Revision"; } - // vrf Admin State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf adminState { - description "Admin State"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfAdminState; + type eqpt_Serial; + description "Serial Number"; } - - // vrf Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operState { + leaf mfgTm { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type l3_VrfOperState; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operStQual { + leaf descr { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type naming_Descr; + description "Description of the specified attribute"; } - // old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf oldOperStQual { + // Hardware version for this fru + leaf hwVer { config "false"; - description "Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; - } - leaf gsdbCtx { - config "false"; - type uint32; - } - leaf pending { - config "false"; - type boolean; - } - leaf v4TibValid { - config "false"; - type boolean; - } - leaf v4TibId { - config "false"; - type uint32; + type cap_Version; + description "Hardware Version"; } - leaf v4TibName { + + // Type of card + leaf type { config "false"; - type string; + + type eqpt_CardT; + default "supervisor"; + description "The card type"; } - leaf v4TibPending { + + // Card status + leaf operSt { config "false"; - type boolean; + + type eqpt_COpSt; + description "The card operational status"; } - // ipv4 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperState { + // Redundancy state + leaf rdSt { config "false"; - description "IPV4 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_RdSt; + description "The card redundancy state"; } - // ipv4 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperStQual { + // Software card ID + leaf swCId { config "false"; - description "IPV4 Table Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_CardId; + description "The card software card identifier"; } - // ipv4 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOldOperStQual { + // Number of ports on the card + leaf numP { config "false"; - description "IPV4 Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - leaf v6TibValid { + + // mac address base + leaf macB { config "false"; - type boolean; + + type eqpt_MacAddr; + description "The card MAC address base"; } - leaf v6TibId { + + // mac address end + leaf macE { config "false"; - type uint32; + + type eqpt_MacAddr; + description "The card MAC address end"; } - leaf v6TibName { + leaf upTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "The timestamp when card was detected"; } - leaf v6TibPending { + + // power state of this card + leaf pwrSt { config "false"; - type boolean; + + type eqpt_PwrState; + description "The power state of this card"; } - // ipv6 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperState { + // The Software revision. + leaf swVer { config "false"; - description "IPV6 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_Revision; + description "The card software revision"; } - // ipv6 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperStQual { + // Module Part number + leaf partNumber { config "false"; - description "IPV6 Table Operational State Qualifer"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_PartNum; + description "The card part number"; } - // ipv6 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOldOperStQual { + // Module VID + leaf vdrId { config "false"; - description "IPV6 Table Operational State Qualifer"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_ModVid; + description "The card vdrId"; } - leaf createTs { + + // module actual draw power + leaf powerActualDraw { config "false"; - type string; + + type eqpt_Watts; + description "It is the power value that module actually draw"; } - leaf lastChgdTs { + + // module allocated power + leaf powerAllocated { config "false"; - type string; + + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // bgp route distinguisher - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf bgpRd { - config "false"; - description "BGP Route Distinguisher"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type l3_BgpRdBytes; + uses firmware_CardRunning-group; + description "Card Running Status"; } - leaf bgpRdDisp { - config "false"; - type string; + + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; + + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - leaf prtclBmp { - config "false"; - type uint32; + + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; + + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - leaf oui { - config "false"; - type uint32; + + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; + + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - leaf vpnId { - config "false"; - type uint32; + + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; + + uses eqpt_EpcP-group; + description "The EPC port information list"; + } + description "The EPC port information"; } - // Ftag tree, fabric multicast tree to direct the tenant flood - // and multicast traffic over the fabric - container tree-items { - list Tree-list { + // External management port + container mgmt-items { + list MgmtP-list { config "false"; key "id"; - // Added containment: Prefix=tree - // Acquired From Package fmcast - uses fmcast_Tree-group; + uses eqpt_MgmtP-group; + description "The management port information list"; } + description "The management port information"; } - // Layer3 Domain (aka vrf) container for routing protocols - container dom-items { - list Dom-list { - key "name"; + // External (debug) console port + container console-items { + list ConsP-list { + config "false"; + key "id"; - // Added containment: Prefix=dom - // Acquired From Package rtctrl - uses rtctrl_Dom-group; + uses eqpt_ConsP-group; + description "The console port information list"; } + description "The console port information"; } - // Abstraction of epm database - container db-items { - list Db-list { + // Sensor information + container sensor-items { + list Sensor-list { config "false"; - key "type"; + key "id"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Shard chaining policy - container shchp-items { - list ShardChP-list { + // Sprom Supervisor + container spsup-items { + + uses eqpt_SpromSup-group; + description "The supervisor sprom information"; + } + + // ASIC information container + container asic-items { + list Asic-list { config "false"; - key "af"; + key "id"; - // Added containment: Prefix=shchp - // Acquired From Package topoctrl - uses topoctrl_ShardChP-group; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; + } + container cpu-items { + list CPU-list { + config "false"; + key "id"; + + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Routed management interface - container mgmt-items { - list RtdMgmtIf-list { + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; key "id"; - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_RtdMgmtIf-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // Rel-def from vrfMbr - container rsvrfMbr-items { + // Flash memory unit + container flash-items { - // Abstract containment of rsvrfMbr derived from l3:Inst - list RsVrfMbr-list { - key "tDn"; + uses eqpt_Flash-group; + description "The flash memory information"; + } - // Added containment: Prefix=rsvrfMbr - // Acquired From Package l3 - uses l3_RsVrfMbr_source-group; + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; + } + } + + grouping firmware_CardRunning-group { + description "Card Running Status"; + + // Bios version + leaf biosVer { + config "false"; + + type cap_Version; + description "A property that indicates Loader Version"; + } + + // Expected Component version + leaf expectedVer { + config "false"; + + type cap_Version; + description "A property that indicates Expected Loader Version"; + } + + // running version Operational State + leaf operSt { + config "false"; + + type firmware_RunningOperSt; + description "A property that indicates Operational State"; + } + + // Interim version + leaf interimVer { + config "false"; + + type cap_Version; + description "A property that indicates Interim Version"; + } + + // Running firmware version. + leaf version { + config "false"; + + type cap_Version; + description "Version"; + } + leaf internalLabel { + config "false"; + type string; + description "Internal Label"; + } + + // Running firmware type. + leaf type { + config "false"; + + type firmware_Type; + description "Type"; + } + + // Running firmware mode. + leaf mode { + config "false"; + + type firmware_RunningMode; + description "Mode"; + } + leaf ts { + config "false"; + type union { + type string; + type uint64; } + description "Timestamp"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping fmcast_Tree-group { + grouping eqpt_Ejec-group { + description "Ejector"; - // Id - // Type is an MO-Defined-Type - leaf id { + // Status of ejector + leaf operSt { config "false"; - description "Tree Id"; - // Type is an MO-Defined-Type - type fmcast_Id; + type eqpt_EjSt; + description "Operational State"; } - // Multicast root for this tree, identified by the node - // ip address - // Type is an MO-Defined-Type - leaf root { + // Identifier for the item + leaf id { config "false"; - description "Root"; - // Type is an MO-Defined-Type - type mcast_Root; + type eqpt_Id { + range "1..2"; + } + description "ID"; } - // Administrative state - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Adminitrative State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Model; + description "Model"; } - } - grouping rtctrl_Dom-group { - leaf rd { - type mtx_array_community; - } - leaf operRd { + // The device revision. + leaf rev { config "false"; - type mtx_array_community; + + type eqpt_Revision; + description "Revision"; } - // Inherited From nw:Conn - // Modified by Override: rtctrl:Dom->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // This object holds per address family bgp vrf information - container af-items { - list DomAf-list { - key "type"; + leaf descr { + config "false"; - // Added containment: Prefix=af - // Acquired From Package rtctrl - uses rtctrl_DomAf-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping rtctrl_DomAf-group { + grouping eqpt_EobcP-group { + description "The Ethernet Out of Band Channel(EOBC) port information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Type - // Inherited From rtctrl:Af - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type bgp_AfT; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list AfCtrl-list { - key "type"; + // Type of port + leaf type { + config "false"; - // Added containment: Prefix=ctrl - // Acquired From Package rtctrl - uses rtctrl_AfCtrl-group; - } + type eqpt_PortT; + description "The port type"; } } - grouping rtctrl_AfCtrl-group { + grouping eqpt_EpcP-group { + description "The EPC port information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Type - // Inherited From rtctrl:Af - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type bgp_AfT; + type naming_Descr; + description "Description of the specified attribute"; } - // Route policy holds all route policy entries and route controls - container rttp-items { - list RttP-list { - key "type"; + // Type of port + leaf type { + config "false"; - // Added containment: Prefix=rttp - // Acquired From Package rtctrl - uses rtctrl_RttP-group; - } + type eqpt_PortT; + description "The port type"; } } - grouping topoctrl_ShardChP-group { + grouping eqpt_MgmtP-group { + description "The management port information"; - // Address family for chaining - // Type is an MO-Defined-Type - leaf af { + // Identifier for the item + leaf id { config "false"; - description "Address Family"; - // Type is an MO-Defined-Type - type nw_AddrF; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Redundancy node, determines the node to go to in case of - // a local node failure - // Type is an MO-Defined-Type - leaf node { + leaf descr { config "false"; - description "Node"; - // Type is an MO-Defined-Type - type topoctrl_ShardChNode; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Type of port + leaf type { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_PortT; + description "The port type"; + } + + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; + + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; + } + } + + grouping eqpt_ConsP-group { + description "The console port information"; + + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; + } + + // Type of port + leaf type { + config "false"; + + type eqpt_PortT; + description "The port type"; } } - grouping l3cap_Prov-group { + grouping eqpt_Sensor-group { + description "The equipment sensor information"; - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { + // Type of the sensor + leaf type { config "false"; - description "Subject"; - // Type is an MO-Defined-Type - type l3cap_Subj; + type eqpt_SensorT; + description "The equipment sensor type"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { + // Major threshold + leaf majorThresh { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type eqpt_TempThresh; + description "The equipment sensor major threshold"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { + // Minor threshold + leaf minorThresh { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type eqpt_TempThresh; + description "The equipment sensor minor threshold"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { + // oper state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_StorageHint; + type eqpt_SensorOpSt; + description "The equipment sensor operational status"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { + // Temperature Value + leaf tempValue { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_RuleT; + type eqpt_TempValue; + description "The equipment sensor temperature value"; } - } - - grouping l3vm_Entity-group { - leaf vrfmemberchangeretainl3cfg { - type boolean; - default "true"; + leaf unit { + config "false"; + type string; + description "The equipment sensor temperature unit"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..32"; } + description "The equipment sensor identifier"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Model; + description "Model"; } - // This objects hold per l3vm instance information. There is only - // one instance of l3vm running in the system today - container inst-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package l3vm - uses l3vm_Inst-group; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping l3vm_Inst-group { - leaf vrfAllocId { - config "false"; - type uint32; - } - leaf tblAllocId { - config "false"; - type uint32; - } - leaf featureSet { - config "false"; - type uint32; - } + grouping eqpt_SpromSup-group { + description "The supervisor sprom information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Identifier for the item + leaf id { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // The device model + leaf model { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_Model; + description "Model"; } - // DomainMbrIf class - container dommbr-items { - list DomMbrIf-list { - config "false"; - key "id"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=dommbr - // Acquired From Package l3 - uses l3_DomMbrIf-group; - } + type eqpt_Revision; + description "Revision"; } - // This objects hold runtime information on l3vm tables - container tbl-items { - list Tbl-list { - config "false"; - key "id"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=tbl - // Acquired From Package l3vm - uses l3vm_Tbl-group; - } + type eqpt_Serial; + description "Serial Number"; } - } - - grouping l3_DomMbrIf-group { - // ifindex - // Type is an MO-Defined-Type - leaf id { + leaf descr { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf iod { - config "false"; - type uint32; + type naming_Descr; + description "Description of the specified attribute"; } - // vrfId - // Type is an MO-Defined-Type - leaf vrfId { + // Type of the memory + leaf type { config "false"; - description "VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; + type eqpt_MemT; + description "The memory type"; } - // old vrfId - // Type is an MO-Defined-Type - leaf oldVrfId { + // capacity + leaf cap { config "false"; - description "Old VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; + type eqpt_Capacity; + description "The memory capacity"; } - // vrf name - // Type is an MO-Defined-Type - leaf vrfName { + // access: RO/RW + leaf acc { config "false"; - description "VRF Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Acc; + description "The memory access type"; } - // old vrf name - // Type is an MO-Defined-Type - leaf oldVrfName { + // Operational status + leaf operSt { config "false"; - description "Old VRF Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_OpSt; + description "The memory operational status"; } - leaf gsdbCtx { + leaf numBlk { config "false"; - type uint32; + type uint16; + description "The sprom number of blocks"; } - // gsdb context type - // Type is an MO-Defined-Type - leaf gsdbCtxType { - config "false"; - description "GSDB Context Type"; + // sprom Common Block + container spcmn-items { - // Type is an MO-Defined-Type - type l3_VrfGsdbCtxType; + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Sprom Supervisor block + container spsupblk-items { - // Type is an MO-Defined-Type - type naming_Name; + uses eqpt_SpromSupBlk-group; + description "The sprom supervisor block information"; + } + + // sprom Port Data Interface + container sppd-items { + + uses eqpt_SpPd-group; + description "The sprom port data information"; + } + + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; + + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; + } + + // Sprom Sensor block + container spsensorblk-items { + + uses eqpt_SpSensorBlk-group; + description "The sprom sensor block information"; } } - grouping l3vm_Tbl-group { - leaf id { + grouping eqpt_SpCmnBlk-group { + description "The sprom common block information"; + leaf size { config "false"; - type uint32; + type uint16; + description "The sprom common block size"; } - leaf gsdbCtx { + leaf count { config "false"; - type uint32; + type uint16; + description "The sprom common block count"; } - leaf rtLmtMax { + leaf major { config "false"; - type uint32; + type uint16; + description "The sprom common block FRU major number"; } - leaf rtLmtWarn { + leaf minor { config "false"; - type uint32; + type uint16; + description "The sprom common block FRU minor number"; } - leaf rtLmtWarnOnly { + leaf oem { config "false"; - type boolean; + type string; + description "The sprom common block OEM string"; } - leaf rtLmtWarnPct { + leaf pdNum { config "false"; - type uint8; + type string; + description "The sprom common block product number"; } - leaf rtLmtReinstPct { + leaf serNum { config "false"; - type uint8; + type string; + description "The sprom common block serial number"; } - } - - grouping urib_Entity4-group { - - // Specific to v4 - container table4-items { - list Table4-list { - config "false"; - key "vrfName"; - - // Added containment: Prefix=table4 - // Acquired From Package urib - uses urib_Table4-group; - } + leaf prtNum { + config "false"; + type string; + description "The sprom common block part number"; } - } - - grouping urib_Table4-group { - leaf vrfName { + leaf pRev { config "false"; type string; + description "The sprom common block part revision"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf routeCount { + leaf mfgDev { config "false"; - description "Total number of route in this table"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type string; + description "The sprom common block manufacturing deviation"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf uniBestCount { + leaf hwVer { config "false"; - description "Number of unicast route considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type string; + description "The sprom common block hardware revision"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf uniBackupCount { + leaf mfgBits { config "false"; - description "Number of unicast route not considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type uint16; + description "The sprom common block manufacturing bits"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf multiBestCount { + leaf engBits { config "false"; - description "Number of multicast route considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type uint16; + description "The sprom common block engineering bits"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf multiBackupCount { + leaf pwrCon { config "false"; - description "Number of multicast route not considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type int16; + description "The sprom common block power consumption"; } - leaf routePerMaskCount { + leaf rmaFl { config "false"; type string; + description "The sprom common block RMA failure code"; } - - // Specific to v4 - container route4-items { - list Route4-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=route4 - // Acquired From Package urib - uses urib_Route4-group; - } - } - } - - grouping urib_Route4-group { - leaf prefix { + leaf clei { config "false"; type string; + description "The sprom common block CLEI code"; } - - // Specific to v4 - container nh4-items { - list NextHop4-list { - config "false"; - key "id"; - - // Added containment: Prefix=nh4 - // Acquired From Package urib - uses urib_NextHop4-group; - } - } - - // Specific to v4 - container routedetail4-items { - - // Added containment as a singleton: Prefix=routedetail4 - // Acquired From Package urib - uses urib_RouteDetail4-group; + leaf vdrId { + config "false"; + type string; + description "The sprom common block vendor identifier"; } - } - - grouping urib_NextHop4-group { - leaf id { + leaf sig { config "false"; - type uint32; + type uint16; + description "The sprom block header signature"; } - - // Specific to v4 - container nhdetail4-items { - - // Added containment as a singleton: Prefix=nhdetail4 - // Acquired From Package urib - uses urib_NextHopDetail4-group; + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; } - } - - grouping urib_NextHopDetail4-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf len { config "false"; - description "Flags."; - - // Type is an MO-Defined-Type - type urib_NhFlags4; + type uint16; + description "The sprom block header length"; } - } - - grouping urib_RouteDetail4-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf cksum { config "false"; - description "Route flags."; - - // Type is an MO-Defined-Type - type urib_RouteFlags4; + type uint16; + description "The sprom block header checksum"; } } - grouping urib_Entity6-group { - - // Specific to v6 - container table6-items { - list Table6-list { - config "false"; - key "vrfName"; - - // Added containment: Prefix=table6 - // Acquired From Package urib - uses urib_Table6-group; - } + grouping eqpt_SpromSupBlk-group { + description "The sprom supervisor block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom supervisor block feature bits"; } - } - - grouping urib_Table6-group { - leaf vrfName { + leaf hwCBits { config "false"; - type string; + type uint64; + description "The sprom supervisor block hardware change bits"; } - - // Specific to v6 - container route6-items { - list Route6-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=route6 - // Acquired From Package urib - uses urib_Route6-group; - } + leaf crdIdx { + config "false"; + type uint16; + description "The sprom supervisor block card index"; } - } - - grouping urib_Route6-group { - leaf prefix { + leaf macB { config "false"; type string; + description "The sprom supervisor block MAC address base"; } - - // Specific to v6 - container nh6-items { - list NextHop6-list { - config "false"; - key "id"; - - // Added containment: Prefix=nh6 - // Acquired From Package urib - uses urib_NextHop6-group; - } + leaf macL { + config "false"; + type uint16; + description "The sprom supervisor block number of MACs"; } - - // Specific to v6 - container routedetail6-items { - - // Added containment as a singleton: Prefix=routedetail6 - // Acquired From Package urib - uses urib_RouteDetail6-group; + leaf eobcN { + config "false"; + type uint16; + description "The sprom supervisor block number of EOBC connections"; } - } - - grouping urib_NextHop6-group { - leaf id { + leaf epldN { config "false"; - type uint32; + type uint16; + description "The sprom supervisor block EPLD number"; } - - // Specific to v6 - container nhdetail6-items { - - // Added containment as a singleton: Prefix=nhdetail6 - // Acquired From Package urib - uses urib_NextHopDetail6-group; + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom supervisor block max connector power"; } - } - - grouping urib_NextHopDetail6-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf coolRq { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type urib_NhFlags6; + type uint16; + description "The sprom supervisor block cooling requirement"; } - } - - grouping urib_RouteDetail6-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf ambT { config "false"; - description "Route flags."; - - // Type is an MO-Defined-Type - type urib_RouteFlags6; + type uint16; + description "The sprom supervisor block ambient temperature"; } - } - - grouping uribv4_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor1 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf sensor2 { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf sensor3 { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package uribv4 - uses uribv4_Dom-group; - } + leaf sensor4 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv4_Dom-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf sensor5 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_DomOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor6 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package uribv4 - uses uribv4_Db-group; - } + leaf sensor7 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv4_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor8 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type of the repository - // Inherited From rib:Db - // Type is an MO-Defined-Type - leaf type { + leaf sig { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rib_DbT; + type uint16; + description "The sprom block header signature"; } - - // Route - container rt-items { - list Route-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=rt - // Acquired From Package uribv4 - uses uribv4_Route-group; - } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; } - } - - grouping uribv4_Route-group { - leaf prefix { + leaf len { config "false"; - type address_Ip; + type uint16; + description "The sprom block header length"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf cksum { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint16; + description "The sprom block header checksum"; } - // URIB next-hop database record - container nh-items { - list Nexthop-list { + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { config "false"; - key "owner addr if vrf"; + key "id"; - // Added containment: Prefix=nh - // Acquired From Package uribv4 - uses uribv4_Nexthop-group; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; } + description "The sensor data sprom information"; } - // URIB route ownership record - container owner-items { - list RouteOwner-list { - config "false"; - key "owner"; + // sprom Port Data Interface + container sppd-items { - // Added containment: Prefix=owner - // Acquired From Package uribv4 - uses uribv4_RouteOwner-group; - } + uses eqpt_SpPd-group; + description "The sprom port data information"; } } - grouping uribv4_Nexthop-group { + grouping eqpt_SpSd-group { + description "The sensor data sprom information"; - // Owner - // Type is an MO-Defined-Type - leaf owner { + // Major Threshold + leaf majTh { config "false"; - description "Nexthop Owner"; - // Type is an MO-Defined-Type - type rib_OwnerT; - } - leaf addr { - config "false"; - type address_Ip; + type eqpt_TempThresh; + description "The sensor data sprom major threshold"; } - // Nexthop interface - // Type is an MO-Defined-Type - leaf if { + // Minor Threshold + leaf minTh { config "false"; - description "Nexthop Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_TempThresh; + description "The sensor data sprom minor threshold"; } - // Nexthop vrf - // Type is an MO-Defined-Type - leaf vrf { + // Identifier for the item + leaf id { config "false"; - description "Nexthop VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Id; + description "ID"; } - // NH type - // Type is an MO-Defined-Type - leaf type { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type rib_NhT; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Model; + description "Model"; } - } - grouping uribv4_RouteOwner-group { - - // Owner's name - // Type is an MO-Defined-Type - leaf owner { + // The device revision. + leaf rev { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type rib_OwnerT; + type eqpt_Revision; + description "Revision"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // The device serial number. + leaf ser { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv4 - uses uribv4_Nexthop-group; - } - } - - // Rel-def from RouteOwnerToNexthopAtt - container rsrouteOwnerToNexthopAtt-items { - - // Abstract containment of rsrouteOwnerToNexthopAtt derived from uribv4:RouteOwner - list RsRouteOwnerToNexthopAtt-list { - key "tDn"; - // Added containment: Prefix=rsrouteOwnerToNexthopAtt - // Acquired From Package uribv4 - uses uribv4_RsRouteOwnerToNexthopAtt_source-group; - } + type eqpt_Serial; + description "Serial Number"; } - } - - grouping uribv6_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf mfgTm { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + grouping eqpt_SpPd-group { + description "The sprom port data information"; + leaf prtTy { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type uint16; + description "The port data sprom port type"; } - - // Domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package uribv6 - uses uribv6_Dom-group; - } + leaf numPts { + config "false"; + type uint16; + description "The port data sprom number of ports"; } } - grouping uribv6_Dom-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + grouping eqpt_SpSensorBlk-group { + description "The sprom sensor block information"; + leaf sensor9 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_DomOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor10 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package uribv6 - uses uribv6_Db-group; - } + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor11 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type of the repository - // Inherited From rib:Db - // Type is an MO-Defined-Type - leaf type { + leaf sensor12 { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rib_DbT; + type string; + description "The sensor data sprom temperature threshold"; } - - // Route - container rt-items { - list Route-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=rt - // Acquired From Package uribv6 - uses uribv6_Route-group; - } + leaf sensor13 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Route-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor14 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - leaf prefix { + leaf sensor15 { config "false"; - type address_Ip; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv6 - uses uribv6_Nexthop-group; - } + leaf sensor16 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB route ownership record - container owner-items { - list RouteOwner-list { - config "false"; - key "owner"; - - // Added containment: Prefix=owner - // Acquired From Package uribv6 - uses uribv6_RouteOwner-group; - } + leaf sensor17 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Nexthop-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor18 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Owner - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf owner { + leaf sensor19 { config "false"; - description "Nexthop Owner"; - - // Type is an MO-Defined-Type - type rib_OwnerT; + type string; + description "The sensor data sprom temperature threshold"; + } + leaf sensor20 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf addr { + leaf sensor21 { config "false"; - type address_Ip; + type string; + description "The sensor data sprom temperature threshold"; } - - // Nexthop interface - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf if { + leaf sensor22 { config "false"; - description "Nexthop Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + type string; + description "The sensor data sprom temperature threshold"; } - - // Nexthop vrf - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf vrf { + leaf sensor23 { config "false"; - description "Nexthop VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; + type string; + description "The sensor data sprom temperature threshold"; } - - // NH type - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf type { + leaf sensor24 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_NhT; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_RouteOwner-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor25 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Owner's name - // Inherited From rib:RouteOwner - // Type is an MO-Defined-Type - leaf owner { + leaf sensor26 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_OwnerT; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv6 - uses uribv6_Nexthop-group; - } + leaf sensor27 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_ConnGrp-group { - - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { + leaf sensor28 { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:ConnGrp->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor29 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Path enpoint - container path-items { - list PathEp-list { - key "id"; - - // Added containment: Prefix=path - // Acquired From Package nw - uses nw_PathEp-group; - } + leaf sensor30 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_PathEp-group { - - // Path ID of this endpoint - // Type is an MO-Defined-Type - leaf id { - description "TBD"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf sensor31 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf nativeEncap { + leaf sensor32 { + config "false"; type string; + description "The sensor data sprom temperature threshold"; } - leaf fabricPathDn { + leaf sensor33 { + config "false"; type string; + description "The sensor data sprom temperature threshold"; } - - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf sensor34 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf sensor35 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from epDefToPathEp - // Inherited From nw:PathEp - container rtfvEpDefToPathEp-items { - - // Abstract containment of rtfvEpDefToPathEp derived from nw:PathEp - list RtFvEpDefToPathEp-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvEpDefToPathEp - // Acquired From Package fv - uses fv_RtFvEpDefToPathEp_target-group; - } + leaf sensor36 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from dyPathAtt - // Inherited From nw:PathEp - container rtfvDyPathAtt-items { - - // Abstract containment of rtfvDyPathAtt derived from nw:PathEp - list RtFvDyPathAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvDyPathAtt - // Acquired From Package fv - uses fv_RtFvDyPathAtt_target-group; - } + leaf sensor37 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from VsanPathAtt - // Inherited From nw:PathEp - container rtvsanVsanPathAtt-items { - - // Abstract containment of rtvsanVsanPathAtt derived from nw:PathEp - list RtVsanVsanPathAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtvsanVsanPathAtt - // Acquired From Package vsan - uses vsan_RtVsanVsanPathAtt_target-group; - } + leaf sensor38 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def from pathToIf - container rspathToIf-items { - - // Added containment as a singleton: Prefix=rspathToIf - // Acquired From Package nw - uses nw_RsPathToIf_source-group; + leaf sensor39 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_Vdc-group { - - // vdc ID - // Type is an MO-Defined-Type - leaf id { + leaf sensor40 { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type l2_VdcId; + type string; + description "The sensor data sprom temperature threshold"; } - - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + leaf sig { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name; + type uint16; + description "The sprom block header signature"; } - } - - grouping proc_System-group { - - // Maximum memory allocated for the system - // Type is an MO-Defined-Type - leaf maxMemAlloc { + leaf ver { config "false"; - description "Maximum Memory Allocated"; - - // Type is an MO-Defined-Type - type proc_ProcMem; + type uint16; + description "The sprom block header version"; } - leaf upTs { + leaf len { config "false"; - type string; + type uint16; + description "The sprom block header length"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf cksum { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type uint16; + description "The sprom block header checksum"; } - // Process entry in the system - container proc-items { - list Proc-list { + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { config "false"; key "id"; - // Added containment: Prefix=proc - // Acquired From Package proc - uses proc_Proc-group; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; } - } - - // System load statistics - container sysload-items { - - // Added containment as a singleton: Prefix=sysload - // Acquired From Package proc - uses proc_SysLoad-group; - } - - // System cpu summary statistics - container syscpusummary-items { - - // Added containment as a singleton: Prefix=syscpusummary - // Acquired From Package proc - uses proc_SysCpuSummary-group; - } - - // System memory statistics - container sysmem-items { - - // Added containment as a singleton: Prefix=sysmem - // Acquired From Package proc - uses proc_SysMem-group; + description "The sensor data sprom information"; } } - grouping proc_Proc-group { + grouping eqpt_Asic-group { + description "The Asic information"; - // Process id - // Type is an MO-Defined-Type - leaf id { + // Type of asic + leaf type { config "false"; - description "Process ID"; - // Type is an MO-Defined-Type - type proc_ProcId; + type eqpt_AsicT; + description "The Asic type"; } - // State of the process - // Type is an MO-Defined-Type + // Asic status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type proc_OperSt; + type eqpt_OpSt; + description "The Asic operational status"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // Asic numSlices + leaf numSlices { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_AsicNumSlices; + description "The number of slices in this Asic"; } - } - grouping proc_SysLoad-group { - leaf loadAverage1m { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf loadAverage5m { + // Asic Capability + leaf capabilities { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_AsicCapability; + description "The Asic capabilities"; } - leaf loadAverage15m { + + // Identifier for the item + leaf id { config "false"; - type decimal64 { - fraction-digits 2; + + type eqpt_Id { + range "1..10"; } + description "The Asic identifier"; } - leaf totalProc { - config "false"; - type uint32; - } - leaf runProc { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Model; + description "Model"; } - } - grouping proc_SysCpuSummary-group { - leaf user { + // The device revision. + leaf rev { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Revision; + description "Revision"; } - leaf kernel { + + // The device serial number. + leaf ser { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Serial; + description "Serial Number"; } - leaf idle { + leaf mfgTm { config "false"; - type decimal64 { - fraction-digits 2; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } + } - // System cpu history statistics - container syscpuhistory-items { - list SysCpuHistory-list { - config "false"; - key "durationname"; - - // Added containment: Prefix=syscpuhistory - // Acquired From Package proc - uses proc_SysCpuHistory-group; - } - } + grouping eqpt_CPU-group { + description "CPU"; - // System cpu statistics - container syscpu-items { - list SysCpu-list { - config "false"; - key "id"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=syscpu - // Acquired From Package proc - uses proc_SysCpu-group; + type eqpt_Id { + range "1"; } + description "The CPU identifier"; } - } - - grouping proc_SysCpuHistory-group { - // cpu history duration name - // Type is an MO-Defined-Type - leaf durationname { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "cpu history duration name, it can be last60seconds, \ - last60minutes, last60hours"; - // Type is an MO-Defined-Type - type proc_CpuHistoryDurationName; + type eqpt_Vendor; + description "Vendor"; } - // history data - // Type is an MO-Defined-Type - leaf usage { + // The device model + leaf model { config "false"; - description "cpu usage for the last duration time (60sec/60min/60hours)"; - // Type is an MO-Defined-Type - type proc_CpuHistoryList; + type eqpt_Model; + description "Model"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device revision. + leaf rev { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Revision; + description "Revision"; } - } - grouping proc_SysCpu-group { - leaf id { - config "false"; - type string; - } - leaf user { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf kernel { + // The device serial number. + leaf ser { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Serial; + description "Serial Number"; } - leaf idle { + leaf mfgTm { config "false"; - type decimal64 { - fraction-digits 2; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping proc_SysMem-group { - leaf total { - config "false"; - type uint64; - } - leaf used { - config "false"; - type uint64; - } - leaf free { - config "false"; - type uint64; - } - leaf memstatus { + // Socket designation + leaf sock { config "false"; - type string; + + type eqpt_Sock; + description "The CPU socket designation"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // Architecture of the CPU + leaf arch { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + // Type is a Local-MO-Defined-Type + type eqpt_Arch_CPU_arch; + description "The CPU architecture"; } - } - - grouping proc_Entity-group { - // Maximum memory allocated for the system - // Type is an MO-Defined-Type - leaf maxMemAlloc { + // CPU speed + leaf speed { config "false"; - description "Maximum Memory Allocated"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Speed; + description "The CPU Speed in Giga Hz"; } - // Free memory in the system - // Type is an MO-Defined-Type - leaf memFree { + // Number of cores on the CPU + leaf cores { config "false"; - description "Free Memory"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Cores; + description "The number of cores within the CPU"; } - // CPU Usage in the system - // Type is an MO-Defined-Type - leaf cpuPct { + // Number of cores enabled on the CPU + leaf coresEn { config "false"; - description "CPU Usage"; - // Type is an MO-Defined-Type - type proc_CpuUsage; + type eqpt_Cores; + description "The number of cores enabled within the CPU"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf thrds { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type uint16; + description "The number of threads within the CPU"; } - - // Process entry in the system - container process-items { - list Entry-list { + container core-items { + list Core-list { config "false"; key "id"; - // Added containment: Prefix=process - // Acquired From Package proc - uses proc_Entry-group; + uses eqpt_Core-group; + description "Core list"; } + description "Core"; } } - grouping proc_Entry-group { + grouping eqpt_Core-group { + description "Core"; - // Process id - // Type is an MO-Defined-Type + // Identifier for the item leaf id { config "false"; - description "Process ID"; - // Type is an MO-Defined-Type - type proc_ProcId; + type eqpt_Id; + description "ID"; } - // Process name - // Type is an MO-Defined-Type - leaf processName { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Process Name"; - // Type is an MO-Defined-Type - type proc_ProcessName; + type eqpt_Vendor; + description "Vendor"; } - // Start count of the process - // Type is an MO-Defined-Type - leaf startCnt { + // The device model + leaf model { config "false"; - description "Start Count"; - // Type is an MO-Defined-Type - type proc_StartCnt; + type eqpt_Model; + description "Model"; } - // Program counter - // Type is an MO-Defined-Type - leaf pc { + // The device revision. + leaf rev { config "false"; - description "Program Counter"; - // Type is an MO-Defined-Type - type proc_ProgCntr; + type eqpt_Revision; + description "Revision"; } - // Stack pointer - // Type is an MO-Defined-Type - leaf esp { + // The device serial number. + leaf ser { config "false"; - description "Stack Pointer"; - // Type is an MO-Defined-Type - type proc_Stack; + type eqpt_Serial; + description "Serial Number"; } - - // Process Type - // Type is an MO-Defined-Type - leaf processType { + leaf mfgTm { config "false"; - description "Process Type"; - - // Type is an MO-Defined-Type - type proc_ProcessType; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Maximum memory allocated for a process - // Type is an MO-Defined-Type - leaf maxMemAlloc { + leaf descr { config "false"; - description "Maximum Memory Allocated"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type naming_Descr; + description "Description of the specified attribute"; } + } + + grouping eqpt_Dimm-group { + description "The dual in-line memory module(DIMM) information"; - // Maximum memory used by a process - // Type is an MO-Defined-Type - leaf memUsed { + // used + leaf used { config "false"; - description "Maximum Memory used"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Capacity; + description "The used memory size in MB"; } - // Operational state for a process - // Type is an MO-Defined-Type - leaf operState { + // Identifier for the item + leaf id { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type proc_OperState; + type eqpt_Id; + description "ID"; } - // Physical memory used by a process - // Type is an MO-Defined-Type - leaf phyMem { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Actual real physical memory used by the process (ram)"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Model; + description "Model"; } - } - - grouping regress_If-group { - // Enum Property - // Type is an MO-Defined-Type - leaf enumProp { + // The device revision. + leaf rev { config "false"; - description "Enum Property"; - // Type is an MO-Defined-Type - type regress_EnumT; - } - leaf strProp { - config "false"; - type string; + type eqpt_Revision; + description "Revision"; } - leaf intProp { + + // The device serial number. + leaf ser { config "false"; - type uint32; + + type eqpt_Serial; + description "Serial Number"; } - leaf boolProp { + leaf mfgTm { config "false"; - type boolean; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Type of the memory + leaf type { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type eqpt_MemT; + default "dimm"; + description "The dual in-line memory module(DIMM) type"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // capacity + leaf cap { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Capacity; + description "The memory capacity"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - container rtvrfMbr-items { + // access: RO/RW + leaf acc { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type eqpt_Acc; + description "The memory access type"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type eqpt_OpSt; + description "The memory operational status"; } } - grouping rpm_Entity-group { + grouping eqpt_Flash-group { + description "The flash memory information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Identifier for the item + leaf id { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Id; + description "ID"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Model; + description "Model"; } - // Route control rule for extended community lists - container rtextcom-items { - list Rule-list { - key "name"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rtextcom - // Acquired From Package rtextcom - uses rtextcom_Rule-group; - } + type eqpt_Revision; + description "Revision"; } - // Route control rule for access lists - container accesslist-items { - list Rule-list { - key "name"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=accesslist - // Acquired From Package rtlist - uses rtlist_Rule-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Route map rule - container rtmap-items { - list Rule-list { - key "name"; + leaf descr { + config "false"; - // Added containment: Prefix=rtmap - // Acquired From Package rtmap - uses rtmap_Rule-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Expanded Community List - container expcommlist-items { - list ExpandedComList-list { - key "regex expcommname"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=expcommlist - // Acquired From Package rtmap - uses rtmap_ExpandedComList-group; - } + type eqpt_MemT; + default "flash"; + description "The flash memory type"; } - // Route control rule for V4 prefix lists - container pfxlistv4-items { - list RuleV4-list { - key "name"; + // capacity + leaf cap { + config "false"; - // Added containment: Prefix=pfxlistv4 - // Acquired From Package rtpfx - uses rtpfx_RuleV4-group; - } + type eqpt_Capacity; + description "The memory capacity"; } - // Route control rule for V6 prefix lists - container pfxlistv6-items { - list RuleV6-list { - key "name"; + // access: RO/RW + leaf acc { + config "false"; - // Added containment: Prefix=pfxlistv6 - // Acquired From Package rtpfx - uses rtpfx_RuleV6-group; - } + type eqpt_Acc; + description "The memory access type"; } - // Route control rule for regular community lists - container rtregcom-items { - list Rule-list { - key "name"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtregcom - // Acquired From Package rtregcom - uses rtregcom_Rule-group; - } + type eqpt_OpSt; + description "The memory operational status"; } } - grouping rtextcom_Rule-group { + grouping eqpt_Obfl-group { + description "Onboard Failure Log"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Set the obfl log parameters + leaf logT { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_LogType; + description "Log Type"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "ID"; } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtextcom:Rule->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtcom_ComT; + type eqpt_Vendor; + description "Vendor"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtcom_Mode; + type eqpt_Model; + description "Model"; } - // Extended community list entry - container ent-items { - list Entry-list { - key "order"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtextcom - uses rtextcom_Entry-group; - } + type eqpt_Revision; + description "Revision"; } - // Rel-def target from ExtCommAtt - // Inherited From rtextcom:Rule - container rtExtCommAtt-items { + // The device serial number. + leaf ser { + config "false"; - // Added containment as a singleton: Prefix=rtExtCommAtt - // Acquired From Package rtmap - uses rtmap_RtExtCommAtt_target-group; + type eqpt_Serial; + description "Serial Number"; } - } - - grouping rtextcom_Entry-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; - - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + grouping syshist_CardRstRec-group { + description "The card reset record information"; + leaf ts { + config "false"; + type union { + type string; + type uint64; } + description "The reset timestamp"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Reset reason + leaf reason { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - type string { - } + type syshist_RstRsn; + description "The reset reason"; } - // Item in the community list - container item-items { - list Item-list { - key "scope community"; + // Reset reason qualifier + leaf reasonQual { + config "false"; - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; - } + type syshist_RstRsnQual; + description "The reset reason qualifier"; } - } - - grouping rtextcom_Item-group { - // type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Version with which the reset happened + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Type; + type cap_Version; + description "The version with which the reset happened"; } - // Scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Service name related with reset + leaf service { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Scope; + type syshist_RstService; + description "Service name related with reset"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping eqpt_LCSlot-group { + description "The line card slot information"; + leaf purgeCfg { + config "false"; + type boolean; + description "Purge Config"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Poweroff config + leaf poweroff { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf community { - type mtx_array_community; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - } - - grouping rtlist_Rule-group { - // Inherited From pol:Obj - // Modified by Override: rtlist:Rule->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // Physical Slot ID + leaf physId { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtlist - uses rtlist_Entry-group; - } + type eqpt_Id; + description "The physical slot identifier"; } - // Rel-def target from RtAsPathAccAtt - // Inherited From rtlist:Rule - container rtrtmapRtAsPathAccAtt-items { - - // Abstract containment of rtrtmapRtAsPathAccAtt derived from rtlist:Rule - list RtRtmapRtAsPathAccAtt-list { - config "false"; - key "tDn"; + // type of the slot + leaf type { + config "false"; - // Added containment: Prefix=rtrtmapRtAsPathAccAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtAsPathAccAtt_target-group; - } + type eqpt_SlotT; + default "lcslot"; + description "The type of line card slot"; } - } - grouping rtlist_Entry-group { + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type eqpt_SlotOpSt; + description "The slot operational status"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; + + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Line Card (IO card), containing io ports + container lc-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_LC-group; + description "The line card information"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // LEM Card (IO card), containing io ports + container lem-items { + list LEM-list { + config "false"; + key "lemid"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + uses eqpt_LEM-group; + description "The line card information list"; } + description "The line card information"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - type string { + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - } - grouping rtmap_Rule-group { + container rtoosSlot-items { - // Inherited From pol:Obj - // Modified by Override: rtmap:Rule->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping eqpt_LC-group { + description "The line card information"; + leaf breakoutFactor { + config "false"; + type uint32; + default "1"; + description "The line card breakout factor"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "ID"; } - // Route map entries - container ent-items { - list Entry-list { - key "order"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtmap - uses rtmap_Entry-group; - } + type eqpt_Vendor; + description "Vendor"; } - } - grouping rtmap_Entry-group { - - // Load Sharing v4 - // Type is an MO-Defined-Type - leaf loadShareV4 { - description "Load Sharing V4"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Model; + description "Model"; } - // Load Sharing v6 - // Type is an MO-Defined-Type - leaf loadShareV6 { - description "Load Sharing V6"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Revision; + description "Revision"; } - // Force Order v4 - // Type is an MO-Defined-Type - leaf forceOrderV4 { - description "Force Order V4"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Force Order v6 - // Type is an MO-Defined-Type - leaf forceOrderV6 { - description "Force Order V6"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type cap_Version; + description "Hardware Version"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:Entry->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Type of card + leaf type { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type eqpt_CardT; + default "linecard"; + description "The card type"; } - // Order - // Inherited From rtflt:Entry - // Modified by Override: rtmap:Entry->order - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Card status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type eqpt_COpSt; + description "The card operational status"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Action; + type eqpt_CardId; + description "The card software card identifier"; } - // Match rule based on regular communities - container mregcomm-items { + // Number of ports on the card + leaf numP { + config "false"; - // Added containment as a singleton: Prefix=mregcomm - // Acquired From Package rtmap - uses rtmap_MatchRegComm-group; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Match rule based on extended communities - container mextcomm-items { + // mac address base + leaf macB { + config "false"; - // Added containment as a singleton: Prefix=mextcomm - // Acquired From Package rtmap - uses rtmap_MatchExtComm-group; + type eqpt_MacAddr; + description "The card MAC address base"; } - // Match rule based on route destinations - container mrtdst-items { + // mac address end + leaf macE { + config "false"; - // Added containment as a singleton: Prefix=mrtdst - // Acquired From Package rtmap - uses rtmap_MatchRtDst-group; + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; + } + description "The timestamp when card was detected"; } - // Match rule based on IPv6 route destinations - container mrtdstv6-items { + // power state of this card + leaf pwrSt { + config "false"; - // Added containment as a singleton: Prefix=mrtdstv6 - // Acquired From Package rtmap - uses rtmap_MatchRtDstV6-group; + type eqpt_PwrState; + description "The power state of this card"; } - // Match rule based on ipv4 multicast attributes - container mipv4mcast-items { + // The Software revision. + leaf swVer { + config "false"; - // Added containment as a singleton: Prefix=mipv4mcast - // Acquired From Package rtmap - uses rtmap_MatchIPv4Mcast-group; + type eqpt_Revision; + description "The card software revision"; } - // Match rule based on ipv6 multicast attributes - container mipv6mcast-items { + // Module Part number + leaf partNumber { + config "false"; - // Added containment as a singleton: Prefix=mipv6mcast - // Acquired From Package rtmap - uses rtmap_MatchIPv6Mcast-group; + type eqpt_PartNum; + description "The card part number"; } - // Match rule based on route nexthops - container mrtnh-items { + // Module VID + leaf vdrId { + config "false"; - // Added containment as a singleton: Prefix=mrtnh - // Acquired From Package rtmap - uses rtmap_MatchRtNh-group; + type eqpt_ModVid; + description "The card vdrId"; } - // Match rule based on route nexthops ipv6 - container mrtnhv6-items { + // module actual draw power + leaf powerActualDraw { + config "false"; - // Added containment as a singleton: Prefix=mrtnhv6 - // Acquired From Package rtmap - uses rtmap_MatchRtNhV6-group; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // Match rule based on route sources - container mrtsrc-items { + // module allocated power + leaf powerAllocated { + config "false"; - // Added containment as a singleton: Prefix=mrtsrc - // Acquired From Package rtmap - uses rtmap_MatchRtSrc-group; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Match rule based on route sources ipv6 - container mrtsrcv6-items { + // Information about each card firmware + container running-items { - // Added containment as a singleton: Prefix=mrtsrcv6 - // Acquired From Package rtmap - uses rtmap_MatchRtSrcV6-group; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // Match rule based on route types - container mrttype-items { - list MatchRtType-list { - key "routeT"; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; - // Added containment: Prefix=mrttype - // Acquired From Package rtmap - uses rtmap_MatchRtType-group; + uses eqpt_Ejec-group; + description "Ejector list"; } + description "Ejector"; } - // Match rule based on route tag - container mrttag-items { - list MatchRtTag-list { - key "tag"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment: Prefix=mrttag - // Acquired From Package rtmap - uses rtmap_MatchRtTag-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } - // Match rule based on source protocol - container msrcprot-items { - list MatchSrcProto-list { - key "proto"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Added containment: Prefix=msrcprot - // Acquired From Package rtmap - uses rtmap_MatchSrcProto-group; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Match rule based on pervasive routes - container mrtpervasive-items { - - // Added containment as a singleton: Prefix=mrtpervasive - // Acquired From Package rtmap - uses rtmap_MatchRtPervasive-group; - } + // Fabric facing external IO port + container fabport-items { - // Match rule based on AS Path Access List - container mrtacclist-items { + list FabP-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=mrtacclist - // Acquired From Package rtmap - uses rtmap_MatchAsPathAccessList-group; + uses eqpt_FabP-group; + description "The fabric port information list"; + } + description "The fabric port information"; } - // Match rule based on route metric - container mrtmetric-items { - list MatchRtMetric-list { - key "measure deviation"; + // Leaf (compute, WAN, services) facing external IO port + container leafport-items { - // Added containment: Prefix=mrtmetric - // Acquired From Package rtmap - uses rtmap_MatchRtMetric-group; + list LeafP-list { + config "false"; + key "id"; + + uses eqpt_LeafP-group; + description "The access port information list"; } + description "The access port information"; } - // Match rule based on route asn - container mrtasn-items { - list MatchRtAsn-list { - key "asn"; + // Extension chassis port connected to hosts + container hostextport-items { - // Added containment: Prefix=mrtasn - // Acquired From Package rtmap - uses rtmap_MatchRtAsn-group; + list ExtChHP-list { + config "false"; + key "id"; + + uses eqpt_ExtChHP-group; + description "Extended Chassis Host Port list"; } + description "Extended Chassis Host Port"; } - // Match rule based on route Interface - container mrtif-items { - list MatchRtIf-list { + // Extension chassis port connected to Leaf + container leafextport-items { + + list ExtChFP-list { + config "false"; key "id"; - // Added containment: Prefix=mrtif - // Acquired From Package rtmap - uses rtmap_MatchRtIf-group; + uses eqpt_ExtChFP-group; + description "Extended Chassis Fabric Port list"; } + description "Extended Chassis Fabric Port"; } - // Match rule based on Ospf-area - container mrtospf-items { - list MatchRtOspf-list { - key "area"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Added containment: Prefix=mrtospf - // Acquired From Package rtmap - uses rtmap_MatchRtOspf-group; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Route map Continue - container scontinue-items { + // Sprom Linecard + container splc-items { - // Added containment as a singleton: Prefix=scontinue - // Acquired From Package rtmap - uses rtmap_Continue-group; + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Set rule based on regular communities - container sregcomm-items { + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=sregcomm - // Acquired From Package rtmap - uses rtmap_SetRegComm-group; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Set rule based on generic extended communities - container sextcomm-items { - - // Added containment as a singleton: Prefix=sextcomm - // Acquired From Package rtmap - uses rtmap_SetExtComm-group; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - // Set rule based on cost communities - container sextcommcost-items { - list SetExtCommCost-list { - key "commCrit commId"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=sextcommcost - // Acquired From Package rtmap - uses rtmap_SetExtCommCost-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // Set rule based on color community - container sextcommcolor-items { + // Flash memory unit + container flash-items { - // Added containment as a singleton: Prefix=sextcommcolor - // Acquired From Package rtmap - uses rtmap_SetExtCommColor-group; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Set rule based on community list (for deletion) - container scommlist-items { + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Added containment as a singleton: Prefix=scommlist - // Acquired From Package rtmap - uses rtmap_SetCommList-group; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Set rule based on community list (for deletion) - container sextcommlist-items { - - // Added containment as a singleton: Prefix=sextcommlist - // Acquired From Package rtmap - uses rtmap_SetExtCommList-group; - } + grouping eqpt_FabP-group { + description "The fabric port information"; - // Set rule based on route targets communities - container srtt-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=srtt - // Acquired From Package rtmap - uses rtmap_SetRttComm-group; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set rule based on route distance - container srtdist-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=srtdist - // Acquired From Package rtmap - uses rtmap_SetRtDist-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set rule based on route tag - container srttag-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=srttag - // Acquired From Package rtmap - uses rtmap_SetRtTag-group; + type eqpt_PortT; + description "The port type"; } - - // Set rule based on weight - container sweight-items { - - // Added containment as a singleton: Prefix=sweight - // Acquired From Package rtmap - uses rtmap_SetWeight-group; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } - // Set rule based on label-index - container slblindex-items { + // ***************** MOs ******************* MO to send Adj info to dbgrelem from policyelem + container remotePort-items { + list RemotePort-list { + config "false"; + key "lldpAdjEpInstId"; - // Added containment as a singleton: Prefix=slblindex - // Acquired From Package rtmap - uses rtmap_SetLabelIndex-group; + uses dbg_RemotePort-group; + description "Remote Port Debug Information list"; + } + description "Remote Port Debug Information"; } - // Set rule based on preference - container spref-items { + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=spref - // Acquired From Package rtmap - uses rtmap_SetPref-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } + } - // Set rule based on metric - container smetric-items { - - // Added containment as a singleton: Prefix=smetric - // Acquired From Package rtmap - uses rtmap_SetMetric-group; - } + grouping dbg_RemotePort-group { + description "Remote Port Debug Information"; - // Set rule based on metric type - container smetrict-items { + // Neighbor port description + leaf remotePortDesc { + config "false"; - // Added containment as a singleton: Prefix=smetrict - // Acquired From Package rtmap - uses rtmap_SetMetricType-group; + type naming_Descr; + description "Description of the Remote Port"; } - container sdamp-items { + // Neighbor system description + leaf remoteSysDesc { + config "false"; - // Added containment as a singleton: Prefix=sdamp - // Acquired From Package rtmap - uses rtmap_SetDampeningType-group; + type naming_Descr; + description "Description of the Remote System"; + } + leaf remoteIp { + config "false"; + type address_Ip; + description "IP Address of the Remote Node"; } - container sprec-items { + // Local Interface ID of the port + leaf LocalIfid { + config "false"; - // Added containment as a singleton: Prefix=sprec - // Acquired From Package rtmap - uses rtmap_SetPrecedence-group; + type nw_IfId; + description "Interface ID of the Local Port"; + } + leaf lldpAdjEpInstId { + config "false"; + type string; + description "Instance ID of the LLDP Adjancy Object"; } + } - container sprecv6-items { + grouping eqpt_LeafP-group { + description "The access port information"; - // Added containment as a singleton: Prefix=sprecv6 - // Acquired From Package rtmap - uses rtmap_SetV6Precedence-group; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set rule based on ospf-nssa - container snssa-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=snssa - // Acquired From Package rtmap - uses rtmap_SetOspfNssa-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set rule based on ospf forwarding address - container sfwdaddr-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=sfwdaddr - // Acquired From Package rtmap - uses rtmap_SetOspfFwdAddr-group; + type eqpt_PortT; + description "The port type"; + } + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } - // Set rule based on next hop - container nh-items { - list SetNh-list { - key "addr"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment: Prefix=nh - // Acquired From Package rtmap - uses rtmap_SetNh-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } + } - // Set rule based on next hop peer-address - container nhpa-items { - - // Added containment as a singleton: Prefix=nhpa - // Acquired From Package rtmap - uses rtmap_SetNhPeerAddr-group; - } + grouping eqpt_ExtChHP-group { + description "Extended Chassis Host Port"; - // Set rule based on as-path prepend - container setaspathprepend-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=setaspathprepend - // Acquired From Package rtmap - uses rtmap_SetPrepend-group; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set Prepend Last As - container setaspathlastas-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=setaspathlastas - // Acquired From Package rtmap - uses rtmap_SetPrependLastAs-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set Prepend Tag - container setaspathtag-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=setaspathtag - // Acquired From Package rtmap - uses rtmap_SetAsPathTag-group; + type eqpt_PortT; + description "The port type"; } - - // Set rule based on origin type - container origin-items { - - // Added containment as a singleton: Prefix=origin - // Acquired From Package rtmap - uses rtmap_SetOrigin-group; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } } - grouping rtmap_MatchRegComm-group { + grouping eqpt_ExtChFP-group { + description "Extended Chassis Fabric Port"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRegComm->type - // Type is an MO-Defined-Type + // Type of port leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_PortT; + description "The port type"; } - - // criteria - // Inherited From rtmap:MatchComm - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; - - // Type is an MO-Defined-Type - type rtmap_Criteria; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } + } - // Rel-def from RegCommAtt - container rsregCommAtt-items { + grouping eqpt_SpromLc-group { + description "The linecard sprom information"; - // Abstract containment of rsregCommAtt derived from rtmap:MatchRegComm - list RsRegCommAtt-list { - key "tDn"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=rsregCommAtt - // Acquired From Package rtmap - uses rtmap_RsRegCommAtt_source-group; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - } - - grouping rtmap_MatchExtComm-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Vendor; + description "Vendor"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Revision; + description "Revision"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchExtComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Serial; + description "Serial Number"; } - // criteria - // Inherited From rtmap:MatchComm - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Criteria; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def from ExtCommAtt - container rsextCommAtt-items { - - // Abstract containment of rsextCommAtt derived from rtmap:MatchExtComm - list RsExtCommAtt-list { - key "tDn"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=rsextCommAtt - // Acquired From Package rtmap - uses rtmap_RsExtCommAtt_source-group; - } + type eqpt_MemT; + description "The memory type"; } - } - - grouping rtmap_MatchRtDst-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // capacity + leaf cap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Capacity; + description "The memory capacity"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // access: RO/RW + leaf acc { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Acc; + description "The memory access type"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtDst->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Rel-def from RtDstAtt - container rsrtDstAtt-items { - - // Abstract containment of rsrtDstAtt derived from rtmap:MatchRtDst - list RsRtDstAtt-list { - key "tDn"; + // sprom Common Block + container spcmn-items { - // Added containment: Prefix=rsrtDstAtt - // Acquired From Package rtmap - uses rtmap_RsRtDstAtt_source-group; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - } - - grouping rtmap_MatchRtDstV6-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sprom Linecard block + container splcblk-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_SpromLcBlk-group; + description "Sprom linecard block information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // sprom Port Data Interface + container sppd-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_SpPd-group; + description "The sprom port data information"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtDstV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; } - // Rel-def from RtDstV6Att - container rsrtDstV6Att-items { - - // Abstract containment of rsrtDstV6Att derived from rtmap:MatchRtDstV6 - list RsRtDstV6Att-list { - key "tDn"; + // Sprom Sensor block + container spsensorblk-items { - // Added containment: Prefix=rsrtDstV6Att - // Acquired From Package rtmap - uses rtmap_RsRtDstV6Att_source-group; - } + uses eqpt_SpSensorBlk-group; + description "The sprom sensor block information"; } } - grouping rtmap_MatchIPv4Mcast-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Modified by Override: rtmap:MatchIPMcast->name - // Type is an MO-Defined-Type - leaf name { + grouping eqpt_SpromLcBlk-group { + description "Sprom linecard block information"; + leaf fbits { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint64; + description "The sprom linecard block feature bits"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:MatchIPMcast->descr - // Type is an MO-Defined-Type - leaf descr { + leaf hwCBits { config "false"; - description "descr"; - - // Type is an MO-Defined-Type - type naming_Descr { - length "0..32"; - } + type uint64; + description "The sprom linecard block hardware change bits"; } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchIPv4Mcast->type - // Modified by Override: rtmap:MatchIPMcast->type - // Type is an MO-Defined-Type - leaf type { + leaf crdIdx { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; + type uint16; + description "The sprom linecard block card index"; } - leaf groupAddr { - type address_Ip; + leaf macB { + config "false"; + type string; + description "The sprom linecard block MAC address base"; } - leaf groupStartAddr { - type address_Ip; + leaf macL { + config "false"; + type uint16; + description "The sprom linecard block number of MACs"; } - leaf groupEndAddr { - type address_Ip; + leaf eobcN { + config "false"; + type uint16; + description "The sprom linecard block number of EOBC connections"; } - leaf rp { - type address_Ip; + leaf epldN { + config "false"; + type uint16; + description "The sprom linecard block EPLD number"; } - - // rp type ASM/Bidir - // Inherited From rtmap:MatchIPMcast - // Type is an MO-Defined-Type - leaf rpType { - description "rp type ASM/Bidir"; - - // Type is an MO-Defined-Type - type rtmap_rpTypeT; + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom linecard block max connector power"; } - leaf sourceAddr { - type address_Ip; + leaf coolRq { + config "false"; + type uint16; + description "The sprom linecard block cooling requirement"; } - } - - grouping rtmap_MatchIPv6Mcast-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Modified by Override: rtmap:MatchIPMcast->name - // Type is an MO-Defined-Type - leaf name { + leaf ambT { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint16; + description "The sprom linecard block ambient temperature"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:MatchIPMcast->descr - // Type is an MO-Defined-Type - leaf descr { + leaf sensor1 { config "false"; - description "descr"; - - // Type is an MO-Defined-Type - type naming_Descr { - length "0..32"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchIPv6Mcast->type - // Modified by Override: rtmap:MatchIPMcast->type - // Type is an MO-Defined-Type - leaf type { + leaf sensor2 { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupAddr { - type address_Ip; + leaf sensor3 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupStartAddr { - type address_Ip; + leaf sensor4 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupEndAddr { - type address_Ip; + leaf sensor5 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf rp { - type address_Ip; + leaf sensor6 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // rp type ASM/Bidir - // Inherited From rtmap:MatchIPMcast - // Type is an MO-Defined-Type - leaf rpType { - description "rp type ASM/Bidir"; - - // Type is an MO-Defined-Type - type rtmap_rpTypeT; + leaf sensor7 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf sourceAddr { - type address_Ip; + leaf sensor8 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping rtmap_MatchRtNh-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtNh->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; } - // Rel-def from RtNhAtt - container rsrtNhAtt-items { - - // Abstract containment of rsrtNhAtt derived from rtmap:MatchRtNh - list RsRtNhAtt-list { - key "tDn"; + // sprom Port Data Interface + container sppd-items { - // Added containment: Prefix=rsrtNhAtt - // Acquired From Package rtmap - uses rtmap_RsRtNhAtt_source-group; - } + uses eqpt_SpPd-group; + description "The sprom port data information"; } } - grouping rtmap_MatchRtNhV6-group { + grouping eqpt_LEM-group { + description "The line card information"; + leaf lemid { + config "false"; + type uint32; + description "LEM Module Id"; + } + leaf breakoutFactor { + config "false"; + type uint32; + default "1"; + description "The LEM card breakout factor"; + } + leaf purgeLemCfg { + config "false"; + type boolean; + description "Purge Config for LEM"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtNhV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Model; + description "Model"; } - // Rel-def from RtNhV6Att - container rsrtNhV6Att-items { - - // Abstract containment of rsrtNhV6Att derived from rtmap:MatchRtNhV6 - list RsRtNhV6Att-list { - key "tDn"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rsrtNhV6Att - // Acquired From Package rtmap - uses rtmap_RsRtNhV6Att_source-group; - } + type eqpt_Revision; + description "Revision"; } - } - - grouping rtmap_MatchRtSrc-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtSrc->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type cap_Version; + description "Hardware Version"; } - // Rel-def from RtSrcAtt - container rsrtSrcAtt-items { - - // Abstract containment of rsrtSrcAtt derived from rtmap:MatchRtSrc - list RsRtSrcAtt-list { - key "tDn"; + // Type of card + leaf type { + config "false"; - // Added containment: Prefix=rsrtSrcAtt - // Acquired From Package rtmap - uses rtmap_RsRtSrcAtt_source-group; - } + type eqpt_CardT; + default "lemcard"; + description "The card type"; } - } - grouping rtmap_MatchRtSrcV6-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Card status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_COpSt; + description "The card operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_CardId; + description "The card software card identifier"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtSrcV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Number of ports on the card + leaf numP { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Rel-def from RtSrcV6Att - container rsrtSrcV6Att-items { - - // Abstract containment of rsrtSrcV6Att derived from rtmap:MatchRtSrcV6 - list RsRtSrcV6Att-list { - key "tDn"; + // mac address base + leaf macB { + config "false"; - // Added containment: Prefix=rsrtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RsRtSrcV6Att_source-group; - } + type eqpt_MacAddr; + description "The card MAC address base"; } - } - - grouping rtmap_MatchRtType-group { - // Route types - // Type is an MO-Defined-Type - leaf routeT { - description "Route Type"; + // mac address end + leaf macE { + config "false"; - // Type is an MO-Defined-Type - type rtmap_RouteT; + type eqpt_MacAddr; + description "The card MAC address end"; } - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Revision; + description "The card software revision"; } - } - grouping rtmap_MatchRtTag-group { + // Module Part number + leaf partNumber { + config "false"; - // Route tag - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + type eqpt_PartNum; + description "The card part number"; + } - // Type is an MO-Defined-Type - type rtmap_RouteTag; + // Module VID + leaf vdrId { + config "false"; + + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtTag->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } - } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - grouping rtmap_MatchSrcProto-group { - leaf proto { - type string { - length "1..32"; + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchSrcProto->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping rtmap_MatchRtPervasive-group { + grouping eqpt_FCSlot-group { + description "The fabric card slot information"; - // Route pervasive - // Type is an MO-Defined-Type - leaf pervasive { - description "Pervasive"; + // Poweroff config + leaf poweroff { + config "false"; - // Type is an MO-Defined-Type - type rtmap_RoutePervasive; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtPervasive->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; - } - } - - grouping rtmap_MatchAsPathAccessList-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "The physical slot identifier"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchAsPathAccessList->type - // Type is an MO-Defined-Type + // type of the slot leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_SlotT; + default "fcslot"; + description "The fabric card type"; } - // Rel-def from RtAsPathAccAtt - container rsrtAsPathAccAtt-items { - - // Abstract containment of rsrtAsPathAccAtt derived from rtmap:MatchAsPathAccessList - list RsRtAsPathAccAtt-list { - key "tDn"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Added containment: Prefix=rsrtAsPathAccAtt - // Acquired From Package rtmap - uses rtmap_RsRtAsPathAccAtt_source-group; - } + type eqpt_SlotOpSt; + description "The slot operational status"; } - } - - grouping rtmap_MatchRtMetric-group { - // Route metric measure - // Type is an MO-Defined-Type - leaf measure { - description "Route Metric Measure"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Route metric deviation - // Type is an MO-Defined-Type - leaf deviation { - description "Route Metric Deviation"; + // Fabric Card, connecting different io cards + container fc-items { - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + uses eqpt_FC-group; + description "The fabric card information"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtMetric->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_MatchRtAsn-group { - leaf asn { - type string; - } + grouping eqpt_FC-group { + description "The fabric card information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtAsn->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_MatchRtIf-group { - - // Route asn - // Type is an MO-Defined-Type - leaf id { - description "Route If"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtIf->type - // Type is an MO-Defined-Type + // Hardware version for this fru + leaf hwVer { + config "false"; + + type cap_Version; + description "Hardware Version"; + } + + // Type of card leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_CardT; + default "fabriccard"; + description "The card type"; } - } - grouping rtmap_MatchRtOspf-group { + // Card status + leaf operSt { + config "false"; - // Route ospf - // Type is an MO-Defined-Type - leaf area { - description "OSPF Area"; + type eqpt_COpSt; + description "The card operational status"; + } - // Type is an MO-Defined-Type - type rtmap_OSPFArea; + // Software card ID + leaf swCId { + config "false"; + + type eqpt_CardId; + description "The card software card identifier"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of ports on the card + leaf numP { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtOspf->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Revision; + description "The card software revision"; } - } - - grouping rtmap_Continue-group { - // Continue - // Type is an MO-Defined-Type - leaf continue { - description "continue"; + // Module Part number + leaf partNumber { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Order; + type eqpt_PartNum; + description "The card part number"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Module VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_ModVid; + description "The card vdrId"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:Continue->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - } - - grouping rtmap_SetRegComm-group { - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // No Community Attribute - // Type is an MO-Defined-Type - leaf noCommAttr { - description "No Community Attribute"; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRegComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_EpcP-group; + description "The EPC port information list"; + } + description "The EPC port information"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + // Sprom Linecard + container splc-items { - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; - } + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Item in the community list - container item-items { - list Item-list { - key "community"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Added containment: Prefix=item - // Acquired From Package rtregcom - uses rtregcom_Item-group; + uses eqpt_Asic-group; + description "The Asic information list"; } + description "The Asic information"; } - } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - grouping rtmap_SetCommItem-group { - leaf community { - type mtx_array_community; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - } - - grouping rtregcom_Item-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Flash-group; + description "The flash memory information"; } - leaf community { - type mtx_array_community; + + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping rtmap_SetExtComm-group { + grouping eqpt_SysCSlot-group { + description "The system controller module slot information"; - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // No Community Attribute - // Type is an MO-Defined-Type - leaf noCommAttr { - description "No Community Attribute"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Scope; + type eqpt_Id; + description "The physical slot identifier"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotT; + default "scslot"; + description "The system controller slot type"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // System Controller Card + container sc-items { - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_SysC-group; + description "The system controller module information"; } - // Item in the community list - container item-items { - list Item-list { - key "scope community"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + container rtoosSlot-items { - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; - } + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetExtCommCost-group { + grouping eqpt_SysC-group { + description "The system controller module information"; - // Set criteria for IGP or Pre-bestpath - // Type is an MO-Defined-Type - leaf commCrit { - description "Criteria"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_Id; + description "ID"; } - // Community Id - // Type is an MO-Defined-Type - leaf commId { - description "Community Id"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityId; + type eqpt_Vendor; + description "Vendor"; } - // Community Value - // Type is an MO-Defined-Type - leaf commValue { - description "Community Value"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + type eqpt_Model; + description "Model"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Revision; + description "Revision"; + } + + // The device serial number. + leaf ser { + config "false"; + + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtCommCost->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Type of card + leaf type { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_CardT; + default "sysctrlcard"; + description "The card type"; } - } - grouping rtmap_SetExtCommColor-group { - leaf commValue { - type uint32 { - range "1..4294967295"; - } - } - } + // Card status + leaf operSt { + config "false"; - grouping rtmap_SetCommList-group { + type eqpt_COpSt; + description "The card operational status"; + } - // Delete Matching Communities - // Type is an MO-Defined-Type - leaf delete { - description "Delete Matching Communities"; + // Redundancy state + leaf rdSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_RdSt; + description "The card redundancy state"; } - // Inherited From pol:Obj - // Modified by Override: rtmap:SetCommList->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_CardId; + description "The card software card identifier"; + } + + // Number of ports on the card + leaf numP { + config "false"; + + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetCommList->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Revision; + description "The card software revision"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Module Part number + leaf partNumber { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_PartNum; + description "The card part number"; } - } - - grouping rtmap_SetExtCommList-group { - // Delete Matching Communities - // Type is an MO-Defined-Type - leaf delete { - description "Delete Matching Ext Communities"; + // Module VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: rtmap:SetExtCommList->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtCommList->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - } - grouping rtmap_SetRttComm-group { - - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_EpcP-group; + description "The EPC port information list"; } + description "The EPC port information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRttComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Sprom Linecard + container splc-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Item in the community list - container item-items { - list Item-list { - key "scope community"; - - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - } - grouping rtmap_SetRtDist-group { - - // Route Administrative Distance for IGP or EBGP - // Type is an MO-Defined-Type - leaf dist { - description "Distance"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type rtmap_RouteDist; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Route Administrative Distance for Internal - // Type is an MO-Defined-Type - leaf distI { - description "Distance internal"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type rtmap_RouteDist; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Route Administrative Distance for local - // Type is an MO-Defined-Type - leaf distL { - description "Distance local"; - - // Type is an MO-Defined-Type - type rtmap_RouteDist; - } + grouping eqpt_PsuSlot-group { + description "The power supply slot information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..10"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRtDist->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Id; + description "The physical slot identifier"; } - } - grouping rtmap_SetRtTag-group { + // type of the slot + leaf type { + config "false"; - // Tag value - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + type eqpt_SlotT; + default "psuslot"; + description "The power supply slot type"; + } - // Type is an MO-Defined-Type - type rtmap_RouteTag; + // slot status: is it empty or inserted + leaf operSt { + config "false"; + + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power supply slot + container psu-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Psu-group; + description "The power supply unit information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRtTag->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetWeight-group { + grouping eqpt_Psu-group { + description "The power supply unit information"; - // Weight value - // Type is an MO-Defined-Type - leaf weight { - description "Weight"; + // Power supply status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Weight; + type eqpt_OpSt; + description "The power supply unit operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Power supply capacity in Amps + leaf cap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Amps; + description "The power supply unit capacity"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Actual drawn/output current in Amps + leaf drawnCurr { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Amps; + description "The power supply unit actual drawn/output current"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetWeight->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Power supply voltage source + leaf vSrc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_VSrc; + description "The power supply unit voltage source"; } - } - grouping rtmap_SetLabelIndex-group { - - // Label Index value - // Type is an MO-Defined-Type - leaf index { - description "Label Index"; + // Power supply voltage + leaf volt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Index; + type eqpt_Volts; + description "The power supply unit voltage"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Power supply fan operational status + leaf fanOpSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_OpSt; + description "The power supply unit fan operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Power supply fan air direction + leaf fanDirection { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_AirDir; + description "The power supply unit fan air direction"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetLabelIndex->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Actual Input current in Amps + leaf inputCurr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Amps; + description "The power supply unit input current"; } - } - - grouping rtmap_SetPref-group { - // Preference value - // Type is an MO-Defined-Type - leaf localPref { - description "Local Preference"; + // power supply VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_LocalPref; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // power supply input voltage + leaf vIn { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Volts; + description "The power supply input voltage"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power supply output voltage + leaf vOut { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Volts; + description "The power supply output voltage"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPref->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // power supply input watts + leaf pIn { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "The power supply input watts"; } - } - grouping rtmap_SetMetric-group { + // power supply output watts + leaf pOut { + config "false"; - // Metric value for bandwidth - // Type is an MO-Defined-Type - leaf metric { - description "Metric"; + type eqpt_Watts; + description "The power supply output watts"; + } - // Type is an MO-Defined-Type - type rtmap_MetricS; + // power supply input amps + leaf iIn { + config "false"; + + type eqpt_Amps; + description "The power supply input amps"; } - // Metric value for delay - // Type is an MO-Defined-Type - leaf metricD { - description "Metric delay"; + // power supply output amps + leaf iOut { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricD; + type eqpt_Amps; + description "The power supply output amps"; + } + leaf softwareAlarm { + config "false"; + type boolean; + description "It is shown if there is power supply software alarm"; + } + leaf hardwareAlarm { + config "false"; + type string; + description "It is shown if there is power supply hardware alarm"; + } + leaf typeCordConnected { + config "false"; + type string; + description "The power supply type cord connected"; } - // Metric value for reliability - // Type is an MO-Defined-Type - leaf metricR { - description "Metric rlblty"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricR; + type eqpt_Id; + description "ID"; } - // Metric value for load - // Type is an MO-Defined-Type - leaf metricL { - description "Metric load"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricL; + type eqpt_Vendor; + description "Vendor"; } - // Metric value for mtu - // Type is an MO-Defined-Type - leaf metricM { - description "Metric mtu"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricM; + type eqpt_Model; + description "Model"; } - // is BGP config - // Type is an MO-Defined-Type - leaf isBGP { - description "is BGP config"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Proto; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetMetric->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; + } + + // Represents an fan in PSU + container psfan-items { + list PsFan-list { + config "false"; + key "id"; + + uses eqpt_PsFan-group; + description "The fan in PSU information list"; + } + description "The fan in PSU information"; } } - grouping rtmap_SetMetricType-group { + grouping eqpt_PsFan-group { + description "The fan in PSU information"; - // Metric Type - // Type is an MO-Defined-Type - leaf metricT { - description "Metric Type"; + // Fan operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricT; + type eqpt_OpSt; + description "The fan operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Fan direction + leaf dir { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_PsuFanDir; + description "The fan air direction"; + } + leaf speedInRpm { + config "false"; + type uint32; + description "The fan speed in rpm"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id { + range "1..10"; + } + description "The fan identifier"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetMetricType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Vendor; + description "Vendor"; } - } - grouping rtmap_SetDampeningType-group { + // The device model + leaf model { + config "false"; - // Dampening Halflife - // Type is an MO-Defined-Type - leaf halflife { - description "Dampening Halfife"; + type eqpt_Model; + description "Model"; + } - // Type is an MO-Defined-Type - type rtmap_HalfLife; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Dampening Reuse - // Type is an MO-Defined-Type - leaf reuse { - description "Dampening Reuse"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Reuse; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Dampening Supress - // Type is an MO-Defined-Type - leaf supress { - description "Dampening Supress"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Supress; + type naming_Descr; + description "Description of the specified attribute"; } - // Dampening Duration - // Type is an MO-Defined-Type - leaf duration { - description "Dampening Duration"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Duration; + type cap_Version; + description "Hardware Version"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping eqpt_FtSlot-group { + description "The fan tray slot information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..6"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetDampeningType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Id; + description "The physical slot identifier"; } - } - grouping rtmap_SetPrecedence-group { + // type of the slot + leaf type { + config "false"; - // Precedence Name - // Type is an MO-Defined-Type - leaf precname { - description "Precedence Name"; + type eqpt_SlotT; + default "fantray"; + description "The fan tray slot type"; + } - // Type is an MO-Defined-Type - type rtmap_PrecName; + // slot status: is it empty or inserted + leaf operSt { + config "false"; + + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Represents an inventoried fan tray + container ft-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Ft-group; + description "The fan tray information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrecedence->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetV6Precedence-group { + grouping eqpt_Ft-group { + description "The fan tray information"; - // Precedence Name - // Type is an MO-Defined-Type - leaf precname { - description "Precedence Name"; + // Fan tray operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_PrecName; + type eqpt_OpSt; + description "The fan tray operational status"; + } + leaf fanName { + config "false"; + type string; + description "The fan tray name"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // power supply VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_ModVid; + description "The fan vdrId"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // fan module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that fan module actually draw"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetV6Precedence->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // fan module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "It is the power value that power supply allocated to fan module"; } - } - grouping rtmap_SetOspfNssa-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..4"; } + description "The fan tray identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOspfNssa->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetOspfFwdAddr-group { - leaf fwdAddr { - type address_Ip; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOspfFwdAddr->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; } - } - grouping rtmap_SetNh-group { - leaf addr { - type address_Ip; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; + + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Represents a fan in a fan tray + container fan-items { + list Fan-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Fan-group; + description "The fan information list"; } + description "The fan information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetNh->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container spfan-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromFan-group; + description "The fan sprom information"; } } - grouping rtmap_SetNhPeerAddr-group { + grouping eqpt_Fan-group { + description "The fan information"; - // IPv4 Next hop peer address - // Type is an MO-Defined-Type - leaf v4PeerAddr { - description "Set Next Hop V4 Peer Address"; + // Fan operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_OpSt; + description "The fan operational status"; } - // IPv6 Next hop peer address - // Type is an MO-Defined-Type - leaf v6PeerAddr { - description "Set Next Hop V6 Peer Address"; + // Fan direction + leaf dir { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_AirDir; + description "The fan air direction"; } - - // IPv4 Next hop Unchanged - // Type is an MO-Defined-Type - leaf v4Unchange { - description "Set IPv4 Next Hop Unchanged"; - - // Type is an MO-Defined-Type - type rtmap_AdminSt; + leaf speedInRpm { + config "false"; + type uint32; + description "The fan speed in rpm"; } - - // IPv6 Next hop Unchanged - // Type is an MO-Defined-Type - leaf v6Unchange { - description "Set IPv6 Next Hop Unchanged"; - - // Type is an MO-Defined-Type - type rtmap_AdminSt; + leaf speedInPercent { + config "false"; + type uint32; + description "The fan speed in percentage"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..10"; } + description "The fan identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetNhPeerAddr->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetPrepend-group { - leaf as { - type string; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; - } - - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrepend->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_SetT; + description "Description of the specified attribute"; } } - grouping rtmap_SetPrependLastAs-group { - - // As Path Last As - // Type is an MO-Defined-Type - leaf lastas { - description "LastAs"; - - // Type is an MO-Defined-Type - type rtmap_RouteLastAs; - } + grouping eqpt_SpromFan-group { + description "The fan sprom information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrependLastAs->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetAsPathTag-group { - - // Set as path - // Type is an MO-Defined-Type - leaf tag { - description "Set as path tag"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Serial; + description "Serial Number"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetAsPathTag->type - // Type is an MO-Defined-Type + // Type of the memory leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_MemT; + description "The memory type"; } - } - grouping rtmap_SetOrigin-group { + // capacity + leaf cap { + config "false"; - // Metric Type - // Type is an MO-Defined-Type - leaf originT { - description "Origin Type"; + type eqpt_Capacity; + description "The memory capacity"; + } - // Type is an MO-Defined-Type - type rtmap_OriginT; + // access: RO/RW + leaf acc { + config "false"; + + type eqpt_Acc; + description "The memory access type"; } - // Remote ASN - // Type is an MO-Defined-Type - leaf asn { - description "Autonomous System Number"; + // Operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtcom_AS; + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // sprom Common Block + container spcmn-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sprom FAN block + container spfanblk-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_SpromFanBlk-group; + description "The sprom fan block information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOrigin->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Fan Serial Number + container spfansn-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromFanSN-group; + description "The sprom fan serial number information"; } } - grouping rtmap_ExpandedComList-group { - leaf regex { - type string { - length "0..63"; - } + grouping eqpt_SpromFanBlk-group { + description "The sprom fan block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom fan block feature bits"; } - leaf expcommname { - type string { - length "0..63"; + leaf hwCBits { + config "false"; + type uint64; + description "The sprom fan block hardware change bits"; + } + leaf stackMIB { + config "false"; + type uint16; + description "The sprom fan block stack MIB idnetifier"; + } + leaf coolCap { + config "false"; + type uint16; + description "The sprom fan block cooling capacity"; + } + leaf ambTemp { + config "false"; + type uint16; + description "The sprom fan block ambient temperature"; + } + leaf hpPwrCon { + config "false"; + type uint16; + description "The sprom fan block HP mode power consumption"; + } + leaf hpCoolCon { + config "false"; + type uint16; + description "The sprom fan block HP mode cooling consumption"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; + } + } + + grouping eqpt_SpromFanSN-group { + description "The sprom fan serial number information"; + + // Serial Number + leaf serNum { + config "false"; + + type eqpt_Serial; + description "The sprom fan serial number"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; + } + } + + grouping eqpt_SpromBP-group { + description "The backplane sprom information"; + + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // Deny or Permit - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Action; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Model; + description "Model"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Revision; + description "Revision"; } - } - grouping rtpfx_RuleV4-group { - - // Inherited From pol:Obj - // Modified by Override: rtpfx:RuleV4->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Serial; + description "Serial Number"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtpfx:RuleV4->descr - // Type is an MO-Defined-Type leaf descr { - description "descr"; + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtpfx - uses rtpfx_Entry-group; - } + type eqpt_MemT; + description "The memory type"; } - // Rel-def target from RtDstAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtDstAtt-items { - - // Abstract containment of rtrtmapRtDstAtt derived from rtpfx:Rule - list RtRtmapRtDstAtt-list { - config "false"; - key "tDn"; + // capacity + leaf cap { + config "false"; - // Added containment: Prefix=rtrtmapRtDstAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstAtt_target-group; - } + type eqpt_Capacity; + description "The memory capacity"; } - // Rel-def target from RtDstV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtDstV6Att-items { - - // Abstract containment of rtrtmapRtDstV6Att derived from rtpfx:Rule - list RtRtmapRtDstV6Att-list { - config "false"; - key "tDn"; + // access: RO/RW + leaf acc { + config "false"; - // Added containment: Prefix=rtrtmapRtDstV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstV6Att_target-group; - } + type eqpt_Acc; + description "The memory access type"; } - // Rel-def target from RtNhAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtNhAtt-items { - - // Abstract containment of rtrtmapRtNhAtt derived from rtpfx:Rule - list RtRtmapRtNhAtt-list { - config "false"; - key "tDn"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtrtmapRtNhAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhAtt_target-group; - } + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Rel-def target from RtNhV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtNhV6Att-items { - - // Abstract containment of rtrtmapRtNhV6Att derived from rtpfx:Rule - list RtRtmapRtNhV6Att-list { - config "false"; - key "tDn"; + // sprom Common Block + container spcmn-items { - // Added containment: Prefix=rtrtmapRtNhV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhV6Att_target-group; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // Rel-def target from RtSrcAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtSrcAtt-items { + // Sprom BP block + container spbpblk-items { - // Abstract containment of rtrtmapRtSrcAtt derived from rtpfx:Rule - list RtRtmapRtSrcAtt-list { - config "false"; - key "tDn"; + uses eqpt_SpromBPBlk-group; + description "The sprom backplane block information"; + } + } - // Added containment: Prefix=rtrtmapRtSrcAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcAtt_target-group; - } + grouping eqpt_SpromBPBlk-group { + description "The sprom backplane block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom backplane block feature bits"; + } + leaf hwCBits { + config "false"; + type uint64; + description "The sprom backplane block hardware change bits"; + } + leaf macB { + config "false"; + type string; + description "The sprom backplane block MAC address base"; + } + leaf macL { + config "false"; + type uint16; + description "The sprom backplane block number of MACs"; + } + leaf stackMIB { + config "false"; + type uint16; + description "The sprom backplane block stack MIB identifier"; + } + leaf oemEprise { + config "false"; + type uint16; + description "The sprom backplane block OEM enterprise identifier"; + } + leaf oemMIB { + config "false"; + type uint16; + description "The sprom backplane block OEM MIB offset"; + } + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom backplane block maximum connector power"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; } + } - // Rel-def target from RtSrcV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtSrcV6Att-items { + grouping eqpt_BSlot-group { + description "Board Slot"; - // Abstract containment of rtrtmapRtSrcV6Att derived from rtpfx:Rule - list RtRtmapRtSrcV6Att-list { - config "false"; - key "tDn"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcV6Att_target-group; + type eqpt_Id { + range "1..666"; } - } - } - - grouping rtpfx_Entry-group { - leaf pfx { - type address_Ip; - } - leaf mask { - type address_Ip; + description "ID"; } - // criteria, exact match or inexact match - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtpfx_Criteria; + type naming_Descr; + description "Description of the specified attribute"; } - // If the criteria is not an exact match, use a range to - // describe the prefix list range - // Type is an MO-Defined-Type - leaf fromPfxLen { - description "Start of Prefix Length"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type eqpt_Id; + description "The physical slot identifier"; } - // Type is an MO-Defined-Type - leaf toPfxLen { - description "End of Prefix Length"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type eqpt_SlotT; + default "bslot"; + description "The slot type"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotOpSt; + description "The slot operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Board represents the motherboard of the Controller + container board-items { - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + uses eqpt_Board-group; + description "Board Equipment"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtflt_Action; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtpfx_RuleV6-group { + grouping eqpt_Board-group { + description "Board Equipment"; - // Inherited From pol:Obj - // Modified by Override: rtpfx:RuleV6->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtpfx:RuleV6->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type eqpt_Vendor; + description "Vendor"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // The device model + leaf model { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtpfx - uses rtpfx_Entry-group; - } + type eqpt_Model; + description "Model"; } - // Rel-def target from RtDstAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtDstAtt-items { - - // Abstract containment of rtrtmapRtDstAtt derived from rtpfx:Rule - list RtRtmapRtDstAtt-list { - config "false"; - key "tDn"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rtrtmapRtDstAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstAtt_target-group; - } + type eqpt_Revision; + description "Revision"; } - // Rel-def target from RtDstV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtDstV6Att-items { - - // Abstract containment of rtrtmapRtDstV6Att derived from rtpfx:Rule - list RtRtmapRtDstV6Att-list { - config "false"; - key "tDn"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=rtrtmapRtDstV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstV6Att_target-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Rel-def target from RtNhAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtNhAtt-items { - - // Abstract containment of rtrtmapRtNhAtt derived from rtpfx:Rule - list RtRtmapRtNhAtt-list { - config "false"; - key "tDn"; + leaf descr { + config "false"; - // Added containment: Prefix=rtrtmapRtNhAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhAtt_target-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from RtNhV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtNhV6Att-items { - - // Abstract containment of rtrtmapRtNhV6Att derived from rtpfx:Rule - list RtRtmapRtNhV6Att-list { - config "false"; - key "tDn"; + // Type of card + leaf type { + config "false"; - // Added containment: Prefix=rtrtmapRtNhV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhV6Att_target-group; - } + type eqpt_CardT; + description "The card type"; } - // Rel-def target from RtSrcAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtSrcAtt-items { - - // Abstract containment of rtrtmapRtSrcAtt derived from rtpfx:Rule - list RtRtmapRtSrcAtt-list { - config "false"; - key "tDn"; + // Card status + leaf operSt { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcAtt_target-group; - } + type eqpt_COpSt; + description "The card operational status"; } - // Rel-def target from RtSrcV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtSrcV6Att-items { - - // Abstract containment of rtrtmapRtSrcV6Att derived from rtpfx:Rule - list RtRtmapRtSrcV6Att-list { - config "false"; - key "tDn"; + // Software card ID + leaf swCId { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcV6Att_target-group; - } + type eqpt_CardId; + description "The card software card identifier"; } - } - grouping rtregcom_Rule-group { + // Number of ports on the card + leaf numP { + config "false"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // mac address end + leaf macE { + config "false"; + + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtregcom:Rule->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Firmware revision. + leaf fwVer { + config "false"; - // Type is an MO-Defined-Type - type rtcom_ComT; + type eqpt_Revision; + description "The card firmware revision"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtcom_Mode; + type eqpt_Revision; + description "The card software revision"; } - // Regular community list entry - container ent-items { - list Entry-list { - key "order"; + // Module Part number + leaf partNumber { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtregcom - uses rtregcom_Entry-group; - } + type eqpt_PartNum; + description "The card part number"; } - // Rel-def target from RegCommAtt - // Inherited From rtregcom:Rule - container rtRegCommAtt-items { + // Module VID + leaf vdrId { + config "false"; - // Added containment as a singleton: Prefix=rtRegCommAtt - // Acquired From Package rtmap - uses rtmap_RtRegCommAtt_target-group; + type eqpt_ModVid; + description "The card vdrId"; } - } - - grouping rtregcom_Entry-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtflt_Action; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } - leaf regex { - type string { + container cpu-items { + list CPU-list { + config "false"; + key "id"; + + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Item in the community list - container item-items { - list Item-list { - key "community"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=item - // Acquired From Package rtregcom - uses rtregcom_Item-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - } - grouping srcintf_Entity-group { - container dns-items { - list DnsSrcIf-list { - key "vrf"; + // Flash memory unit + container flash-items { - // Added containment: Prefix=dns - // Acquired From Package srcintf - uses srcintf_DnsSrcIf-group; - } + uses eqpt_Flash-group; + description "The flash memory information"; } - container tftp-items { - list Tftp-list { - key "vrf"; - // Added containment: Prefix=tftp - // Acquired From Package srcintf - uses srcintf_Tftp-group; - } + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping srcintf_DnsSrcIf-group { + grouping eqpt_NSlot-group { + description "Nic Slot"; - // Source interface - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:DnsSrcIf->srcIf - // Type is an MO-Defined-Type - leaf srcIf { - description "DNS Source Interface"; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; + } + + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // vrf name - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:DnsSrcIf->vrf - // Type is an MO-Defined-Type - leaf vrf { - description "DNS Source VRF"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Id; + description "The physical slot identifier"; } - } - - grouping srcintf_Tftp-group { - // Source interface - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:Tftp->srcIf - // Type is an MO-Defined-Type - leaf srcIf { - description "TFTP Source Interface"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_SlotT; + default "nslot"; + description "The slot type"; } - // vrf name - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:Tftp->vrf - // Type is an MO-Defined-Type - leaf vrf { - description "TFTP Source VRF"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_SlotOpSt; + description "The slot operational status"; } - } - - grouping swpkgs_Install-group { - // Input Request from the user - container rpmaction-items { + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Added containment as a singleton: Prefix=rpmaction - // Acquired From Package swpkgs - uses swpkgs_RpmActionReq-group; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Information about the packages present in the system - container rpminfo-items { - list RpmInfo-list { + // Nic represents the NIC Card + container nic-items { + list Nic-list { config "false"; - key "name"; + key "id"; - // Added containment: Prefix=rpminfo - // Acquired From Package swpkgs - uses swpkgs_RpmInfo-group; + uses eqpt_Nic-group; + description "Nic list"; } + description "Nic"; } - } - grouping swpkgs_RpmActionReq-group { - - // To Add/Activate/Deactivate/Commit/Remove a RPM package - // Type is an MO-Defined-Type - leaf pkgAction { - description "Package action on RPM package"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type swpkgs_PackageAction; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } + } - // URL of the package - // Type is an MO-Defined-Type - leaf url { - description "URL of the package"; + grouping eqpt_Nic-group { + description "Nic"; - // Type is an MO-Defined-Type - type reference_URI; - } - leaf lastActionStatus { + // Identifier for the item + leaf id { config "false"; - type string; + + type eqpt_Id; + description "ID"; } - } - grouping swpkgs_RpmInfo-group { - leaf name { + // The vendor manufacturing this device. + leaf vendor { config "false"; - type string; + + type eqpt_Vendor; + description "Vendor"; } - // Operational state of the package - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type swpkgs_OperState; + type eqpt_Model; + description "Model"; } - // Last Package action - // Type is an MO-Defined-Type - leaf lastAction { + // The device revision. + leaf rev { config "false"; - description "Last action on the package"; - // Type is an MO-Defined-Type - type swpkgs_PackageAction; + type eqpt_Revision; + description "Revision"; } - // Last Action Result on the package - // Type is an MO-Defined-Type - leaf lastActionResult { + // The device serial number. + leaf ser { config "false"; - description "Result of last action"; - // Type is an MO-Defined-Type - type swpkgs_PackageActionResult; + type eqpt_Serial; + description "Serial Number"; } - leaf lastActionFailedReason { + leaf mfgTm { config "false"; - type string; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - } - - grouping sysmgr_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Type of card + leaf type { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_CardT; + description "The card type"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Card status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_COpSt; + description "The card operational status"; } - // System state - container sys-items { + // Software card ID + leaf swCId { + config "false"; - // Added containment as a singleton: Prefix=sys - // Acquired From Package sysmgr - uses sysmgr_SysSt-group; + type eqpt_CardId; + description "The card software card identifier"; } - // Holds sysmgr control plane entity information - container sysCfg-items { + // Number of ports on the card + leaf numP { + config "false"; - // Added containment as a singleton: Prefix=sysCfg - // Acquired From Package sysmgr - uses sysmgr_SysCfgSt-group; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Holder for cores policy - container core-items { - list Cores-list { - config "false"; - key "dest"; + // mac address end + leaf macE { + config "false"; - // Added containment: Prefix=core - // Acquired From Package sysmgrp - uses sysmgrp_Cores-group; + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - } - - grouping sysmgr_SysSt-group { - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // power state of this card + leaf pwrSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_PwrState; + description "The power state of this card"; } - // Sup state - container sup-items { - list SupSt-list { - config "false"; - key "type"; + // The Firmware revision. + leaf fwVer { + config "false"; - // Added containment: Prefix=sup - // Acquired From Package sysmgr - uses sysmgr_SupSt-group; - } + type eqpt_Revision; + description "The card firmware revision"; } - // Firmware state - container image-items { - list FwSt-list { - config "false"; - key "type"; + // The Software revision. + leaf swVer { + config "false"; - // Added containment: Prefix=image - // Acquired From Package sysmgr - uses sysmgr_FwSt-group; - } + type eqpt_Revision; + description "The card software revision"; } - } - - grouping sysmgr_SupSt-group { - // Local/Remote - // Type is an MO-Defined-Type - leaf type { + // Module Part number + leaf partNumber { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type sysmgr_SupT; + type eqpt_PartNum; + description "The card part number"; } - // Oper state - // Type is an MO-Defined-Type - leaf operSt { + // Module VID + leaf vdrId { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type sysmgr_SupSt; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // module actual draw power + leaf powerActualDraw { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - } - grouping sysmgr_FwSt-group { - - // Type of the firmware - // Type is an MO-Defined-Type - leaf type { + // module allocated power + leaf powerAllocated { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type sysmgr_FwT; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // The firmware mode in which we are running, either - // it is recovery or regular mode - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + // External Ext Port for Controller + container eaport-items { + list ExtAP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_FwMode; + uses eqpt_ExtAP-group; + description "ExtAP list"; + } + description "ExtAP"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - } - grouping sysmgr_SysCfgSt-group { + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // configuration mode - // Type is an MO-Defined-Type - leaf cfgMode { - config "false"; - description "Configuration Mode"; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; + } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_CfgMode; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - // operational data mode - // Type is an MO-Defined-Type - leaf operDataMode { - config "false"; - description "Operational Data Mode"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_OperDataMode; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; + } + description "The dual in-line memory module(DIMM) information"; } - } - grouping sysmgrp_Cores-group { - leaf dest { - config "false"; - type string; + // Flash memory unit + container flash-items { + + uses eqpt_Flash-group; + description "The flash memory information"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + grouping eqpt_ExtAP-group { + description "ExtAP"; + + // port status + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_OpSt; + description "Operational Status"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Identifier for the item + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - } - grouping sysmgr_ShowVersion-group { - leaf copyRight { - config "false"; - type string; - } - leaf biosVersion { - config "false"; - type string; - } - leaf nxosVersion { - config "false"; - type string; - } - leaf biosCompileTime { - config "false"; - type string; - } - leaf nxosImageFile { - config "false"; - type string; - } - leaf nxosCompileTime { - config "false"; - type string; - } - leaf bootflashSize { - config "false"; - type uint32; - } - leaf kernelUptime { - config "false"; - type string; - } - leaf lastResetTime { - config "false"; - type string; - } - leaf lastResetReason { - config "false"; - type string; - } - leaf lastResetSysVersion { - config "false"; - type string; - } - leaf lastResetService { - config "false"; - type string; - } - leaf plugin { - config "false"; - type string; - } - leaf activePackage { + // Type of port + leaf type { config "false"; - type string; + + type eqpt_PortT; + description "The port type"; } } - grouping tcpudp_Entity-group { + grouping eqpt_Storage-group { + description "Storage Equipment"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf fileSystem { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type comp_DelimitedString; + description "File System"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf blocks { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Capacity; + description "Blocks"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf used { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Capacity; + description "Capacity Used"; } - // This objects hold per tcpudp instance information. There is - // only one instance of tcpudp running in the system today - container inst-items { + leaf available { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package tcpudp - uses tcpudp_Inst-group; + type eqpt_Capacity; + description "Capacity Available"; + } + leaf capUtilized { + config "false"; + type uint8; + description "Capacity Utilized"; } - } - - grouping tcpudp_Inst-group { - // Set time to wait on new TCP connections - // Type is an MO-Defined-Type - leaf synWaitTime { - description "Set time to wait on new TCP connections"; + leaf mount { + config "false"; - // Type is an MO-Defined-Type - type tcpudp_SynwaitTime; + type comp_DelimitedString; + description "Mounted On"; } - // Enable path-MTU discovery on TCP - // Type is an MO-Defined-Type - leaf pathMtuDiscovery { - description "Enable path-MTU discovery on TCP"; + // port status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_OpSt; + description "Operational Status"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping eqpt_ExtCh-group { + description "FEX"; - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // State of the extended chassis + leaf extChSt { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_ExtChSt; + description "State"; } - } - grouping terminal_Terminal-group { - - // Line MO is the MO inside which type of line either vty or console - // would be organize - container ln-items { + // Part number of the extended chassis + leaf partNum { + config "false"; - // Added containment as a singleton: Prefix=ln - // Acquired From Package terminal - uses terminal_Line-group; + type eqpt_PartNum; + description "TBD"; } - } - grouping terminal_Line-group { - - // Console MO is to consolidate the console specific MO and its - // properties which is propretary for the vsh session which is - // spawned via console port - container cons-items { + // MAC address of the extended chassis + leaf macAddr { + config "false"; - // Added containment as a singleton: Prefix=cons - // Acquired From Package terminal - uses terminal_Console-group; + type eqpt_MacAddr; + description "MAC Address"; } - // VTY MO is to consolidate the VTY specific MO and its - // properties which is propretary for the vsh session which is - // spawned via mgmt/telnet ip to box - container vty-items { + // Number of macs supported + leaf numMacs { + config "false"; - // Added containment as a singleton: Prefix=vty - // Acquired From Package terminal - uses terminal_Vty-group; + type eqpt_ExtChNumMacs; + description "MACs Supported"; } - } - - grouping terminal_Console-group { - // Organizes the exec timeout specific properties - container execTmeout-items { + // Number of uplink ports supported + leaf numUplinkP { + config "false"; - // Added containment as a singleton: Prefix=execTmeout - // Acquired From Package terminal - uses terminal_ExecTimeout-group; + type eqpt_ExtChNumUplinkP; + description "Number of Uplink Ports"; } - // Organizes the console terminal width specific properties - container wdth-items { + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Added containment as a singleton: Prefix=wdth - // Acquired From Package terminal - uses terminal_Width-group; + type eqpt_Vendor; + description "Vendor"; } - // Organizes the console terminal length specific properties - container lgth-items { + // The device model + leaf model { + config "false"; - // Added containment as a singleton: Prefix=lgth - // Acquired From Package terminal - uses terminal_Length-group; + type eqpt_Model; + description "Model"; } - // Organizes the console terminal speed specific properties - container speed-items { + // The device revision. + leaf rev { + config "false"; - // Added containment as a singleton: Prefix=speed - // Acquired From Package terminal - uses terminal_Speed-group; + type eqpt_Revision; + description "Revision"; } - // Organizes the databits number properties - container databits-items { + // The device serial number. + leaf ser { + config "false"; - // Added containment as a singleton: Prefix=databits - // Acquired From Package terminal - uses terminal_DataBits-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Organizes the async line stopbits properties - container stopbits-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=stopbits - // Acquired From Package terminal - uses terminal_StopBits-group; + type eqpt_Id { + range "101..199"; + } + description "ID"; } - // Organizes the terminal parity properties - container parity-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=parity - // Acquired From Package terminal - uses terminal_Parity-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping terminal_ExecTimeout-group { - // Inherited From terminal:Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Information about extended chassis firmware + container running-items { - // Type is an MO-Defined-Type - type terminal_TimeoutT; + uses firmware_ExtChRunning-group; + description "Extended Chassis Running Status"; } - } - grouping terminal_Width-group { - - // Type is an MO-Defined-Type - leaf termwidth { - description "Configure width of the display terminal"; + // Locator LED on extended chassis components + container locled-items { + list ExtChLocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type terminal_TermSize { - range "51..511"; + uses eqpt_ExtChLocLed-group; + description "Extended Chassis Locator LED list"; } + description "Extended Chassis Locator LED"; } - } - - grouping terminal_Length-group { - // Type is an MO-Defined-Type - leaf termlength { - description "Configure number of lines to display on terminal"; + // Extended chassis card slot + container extchslot-items { + list ExtChCardSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type terminal_TermSize { - range "0..511"; + uses eqpt_ExtChCardSlot-group; + description "FEX Slot list"; } + description "FEX Slot"; } - } - grouping terminal_Speed-group { - leaf speed { - type uint32 { - range "9600..115200"; - } - default "115200"; - } - } + // power supply slot + container psuslot-items { + list PsuSlot-list { + config "false"; + key "id"; - grouping terminal_DataBits-group { - leaf dataBits { - type uint32 { - range "5..8"; + uses eqpt_PsuSlot-group; + description "The power supply slot information list"; } - default "8"; + description "The power supply slot information"; } - } - grouping terminal_StopBits-group { - leaf stopBits { - type uint32 { - range "1"; + // fan tray slot + container ftslot-items { + list FtSlot-list { + config "false"; + key "id"; + + uses eqpt_FtSlot-group; + description "The fan tray slot information list"; } - default "1"; + description "The fan tray slot information"; } - } - grouping terminal_Parity-group { + // Sprom Backplane Unit block + container spbp-items { - // Type is an MO-Defined-Type - leaf parity { - description "databits numbers"; + uses eqpt_SpromBP-group; + description "The backplane sprom information"; + } - // Type is an MO-Defined-Type - type terminal_TermParity; + // Sprom Supervisor + container spsup-items { + + uses eqpt_SpromSup-group; + description "The supervisor sprom information"; } } - grouping terminal_Vty-group { + grouping firmware_ExtChRunning-group { + description "Extended Chassis Running Status"; - // Organizes the exec timeout specific properties - container execTmeout-items { + // Loader version + leaf loaderVer { + config "false"; - // Added containment as a singleton: Prefix=execTmeout - // Acquired From Package terminal - uses terminal_ExecTimeout-group; + type cap_Version; + description "A property that indicates Loader Version"; } - // Organizes the VTY session's absolute timeout specific properties - container absTmeout-items { + // Running firmware version. + leaf version { + config "false"; - // Added containment as a singleton: Prefix=absTmeout - // Acquired From Package terminal - uses terminal_AbsTimeout-group; + type cap_Version; + description "Version"; } - - // Organizes the VTY session's limit specific properties - container ssLmt-items { - - // Added containment as a singleton: Prefix=ssLmt - // Acquired From Package terminal - uses terminal_SesLmt-group; + leaf internalLabel { + config "false"; + type string; + description "Internal Label"; } - // Organizes the VTY session's logout warning specific properties - container lgoutWarning-items { + // Running firmware type. + leaf type { + config "false"; - // Added containment as a singleton: Prefix=lgoutWarning - // Acquired From Package terminal - uses terminal_LogoutWarning-group; + type firmware_Type; + description "Type"; } - } - - grouping terminal_AbsTimeout-group { - // Inherited From terminal:Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Running firmware mode. + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type terminal_TimeoutT; + type firmware_RunningMode; + description "Mode"; + } + leaf ts { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp"; } - } - - grouping terminal_SesLmt-group { - // Type is an MO-Defined-Type - leaf sesLmt { - description "Configure maximum number of concurrent vsh sessions allowed"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type terminal_Limit { - range "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping terminal_LogoutWarning-group { + grouping eqpt_ExtChLocLed-group { + description "Extended Chassis Locator LED"; - // Type is an MO-Defined-Type - leaf lgtWarn { - description "Configure logout warning time"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type terminal_Limit { - range "0..60"; - } + type eqpt_Id; + description "ID"; } - } - grouping terminal_TerminalLog-group { - leaf logShowCommand { - type boolean; - } - } + // The device model + leaf model { + config "false"; - grouping test_CRule-group { + type eqpt_Model; + description "Model"; + } - // Prof. Name - // Type is an MO-Defined-Type - leaf peChunkName { + leaf descr { config "false"; - description "Secondary Chunk Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf testclientChunkName { + // Color status of an LED + leaf color { config "false"; - description "Secondary Chunk Name"; - // Type is an MO-Defined-Type - type naming_Name; + type eqpt_Color; + description "The LED Color"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Operational status of an LED + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_LedOpSt; + description "The LED operational Status"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Admin status - Used to locate + leaf adminSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_AdSt; + description "The locator LED admin status"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + grouping eqpt_ExtChCardSlot-group { + description "FEX Slot"; + + // Identifier for the item + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type eqpt_Id { + range "1"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { + // Physical Slot ID + leaf physId { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type eqpt_Id; + description "The physical slot identifier"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { + // type of the slot + leaf type { config "false"; - description "Frequency"; - // Type is an MO-Defined-Type - type test_Freq; + type eqpt_SlotT; + default "extchslot"; + description "The slot type"; } - } - grouping test_CRslt-group { - - // Trigger for this result - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf trig { + // slot status: is it empty or inserted + leaf operSt { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Test operational status - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf operSt { + // location of the slot in the chassis (front/back) + leaf loc { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Test status qualifier, deprecate this XXX - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "Operational State Qualifier"; + // Module on extension chassis + container extchc-items { - // Type is an MO-Defined-Type - type test_OperStQual; - } - leaf ts { - config "false"; - type string; + uses eqpt_ExtChCard-group; + description "Extended Chassis Module"; } - // Prof. Name - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type naming_Name; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping tunnel_If-group { - leaf src { + grouping eqpt_ExtChCard-group { + description "Extended Chassis Module"; + + // Module serial number + leaf modSerial { config "false"; - type address_Ip; + + type eqpt_Serial; + description "Serial Number"; } - leaf dest { + + // Module vendor + leaf modVendor { config "false"; - type address_Ip; + + type eqpt_Vendor; + description "Vendor"; } - // Tunnel type - // Type is an MO-Defined-Type - leaf tType { + // Module model + leaf modModel { config "false"; - description "Tunnel Type"; - // Type is an MO-Defined-Type - type tunnel_TunnelQual; + type eqpt_Model; + description "Model"; } - // Tunnel VRF name - // Type is an MO-Defined-Type - leaf vrfName { + // Module Part number + leaf partNum { config "false"; - description "VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_PartNum; + description "Module Part Number"; } - // Tunnel MTU - // Type is an MO-Defined-Type - leaf cfgdMtu { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type tunnel_ConfMtu; + type eqpt_Vendor; + description "Vendor"; } - // Tunnel keep-alive period - // Type is an MO-Defined-Type - leaf keepAlvIntvl { + // The device model + leaf model { config "false"; - description "Keep Alive Interval"; - // Type is an MO-Defined-Type - type tunnel_KeepAlvIntvl; + type eqpt_Model; + description "Model"; } - // Tunnel keep-alive retries - // Type is an MO-Defined-Type - leaf keepAlvRetries { + // The device revision. + leaf rev { config "false"; - description "Keep Alive Retries"; - // Type is an MO-Defined-Type - type tunnel_KeepAlvRetries; + type eqpt_Revision; + description "Revision"; } - // Tunnel administrative state - // Type is an MO-Defined-Type - leaf adminSt { + // The device serial number. + leaf ser { config "false"; - description "Administrative State"; - // Type is an MO-Defined-Type - type tunnel_AdminSt; + type eqpt_Serial; + description "Serial Number"; } - // Tunnel type - // Type is an MO-Defined-Type - leaf type { + // Identifier for the item + leaf id { config "false"; - description "Endpoint Type"; - // Type is an MO-Defined-Type - type tunnel_EpT; + type eqpt_Id; + description "ID"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Tunnel layer: L2 or L3 - // Type is an MO-Defined-Type - leaf tLayer { + leaf descr { config "false"; - description "Layer"; - // Type is an MO-Defined-Type - type tunnel_LayerT; + type naming_Descr; + description "Description of the specified attribute"; } - leaf mac { + + // Type of card + leaf type { config "false"; - type address_Mac; + + type eqpt_CardT; + default "extchcard"; + description "Type"; } - // Tunnel operational state - // Type is an MO-Defined-Type + // Card status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type tunnel_OperSt; + type eqpt_COpSt; + description "The card operational status"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Redundancy state + leaf rdSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_RdSt; + description "The card redundancy state"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Software card ID + leaf swCId { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type eqpt_CardId; + description "The card software card identifier"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // Number of ports on the card + leaf numP { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // console policy + container consolep-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses eqpt_ConsoleP-group; + description "Console Policy"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Global Ejector policy under eqpt entity + container ejector-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses eqpt_Ejector-group; + description "Ejector Policy"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Represents an fan direction mismatch enabler + container fanproperties-items { - // Type is an MO-Defined-Type - type nw_OperErrQual; + uses eqpt_FanProperties-group; + description "The fan properties enablers like fan direction mismatch and fan presence simulation enablers"; } - // This objects hold per vtp instance information. There is only - // one instance of vtp running in the system today - container inst-items { + // Represents an inventoried fan zone + container fanzone-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package vtp - uses vtp_Inst-group; + uses eqpt_FanZone-group; + description "The fan zone information"; } - } - grouping vtp_Inst-group { - leaf domain { - type string; - } - leaf version { - type uint32 { - range "1..2"; - } - default "1"; - } - leaf password { - type string; - } - leaf filePath { - type string; - default "bootflash:/vlan.dat"; + // Power supply group policy + container psgp-items { + + uses eqpt_PsgP-group; + description "The power supply group policy information"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Policy container for slot + container slot-items { + list SlotP-list { + config "false"; + key "type id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses eqpt_SlotP-group; + description "The slot policy information list"; } + description "The slot policy information"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping eqpt_ConsoleP-group { + description "Console Policy"; - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // num of databits per character + leaf dataBits { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_DataBits; + description "Data Bits"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + // timeout for an inactive session in minutes + leaf inactiveIntvl { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type eqpt_InactiveIntvl; + description "Inactive Interval"; } - } - - grouping nbm_NbmTop-group { - container conf-items { + // Terminal parity none, even or odd + leaf parity { + config "false"; - // Added containment as a singleton: Prefix=conf - // Acquired From Package nbm - uses nbm_ConfTables-group; + type eqpt_Parity; + description "Parity"; } - container show-items { + // transmit and receive speed on console port + leaf baudRate { + config "false"; - // Added containment as a singleton: Prefix=show - // Acquired From Package nbm - uses nbm_ShowTables-group; + type eqpt_BaudRate; + description "Baud Rate"; } - } - - grouping nbm_ConfTables-group { - container grouprangelist-items { + // Async line stopbits + leaf stopBits { + config "false"; - // Added containment as a singleton: Prefix=grouprangelist - // Acquired From Package nbm - uses nbm_GroupRangeList-group; + type eqpt_StopBits; + description "Stop Bits"; } - container interfaces-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=interfaces - // Acquired From Package nbm - uses nbm_Interfaces-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container global-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalConf-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Top MO for branching everything under - container flowpolicytable-items { - - // Added containment as a singleton: Prefix=flowpolicytable - // Acquired From Package nbm - uses nbm_FlowPolicyTable-group; - } + grouping eqpt_Ejector-group { + description "Ejector Policy"; - // HOST POLICIES - container hostpolicytable-items { + // Auto shutdown on ejector open + leaf autoShutdown { - // Added containment as a singleton: Prefix=hostpolicytable - // Acquired From Package nbm - uses nbm_HostPolicyTable-group; + type eqpt_AutoShutdown; + description "Auto Shutdown on Ejector Open"; } - } - grouping nbm_GroupRangeList-group { - container dom-items { - list GroupRangeDom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GroupRangeDom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_GroupRangeDom-group { + grouping eqpt_FanProperties-group { + description "The fan properties enablers like fan direction mismatch and fan presence simulation enablers"; + leaf directionMismatch { + type boolean; + description "The fan direction mismatch enabler"; + } + leaf fanPresence { + type boolean; + description "Flag to simulate fan presence"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - container g-items { - list GroupRange-list { - key "group groupMask"; - - // Added containment: Prefix=g - // Acquired From Package nbm - uses nbm_GroupRange-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_GroupRange-group { - - // Type is an MO-Defined-Type - leaf group { - description "ASM Range Multicast Group."; - - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; - } - - // Type is an MO-Defined-Type - leaf groupMask { - description "ASM Range Group Mask as integer."; - - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + grouping eqpt_FanZone-group { + description "The fan zone information"; + leaf zoneSpeed { + type uint32; + description "The fan zone speed"; } - // Type is an MO-Defined-Type - leaf rangeType { - description "ASM Range Type - SSM or ASM."; + // Fan air filter + leaf airFilter { - // Type is an MO-Defined-Type - type nbm_nbmGroupRangeType; + type eqpt_AirFilter; + description "The fan air filter"; } - } - grouping nbm_Interfaces-group { - container dom-items { - list InterfacesDom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_InterfacesDom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_InterfacesDom-group { + grouping eqpt_PsgP-group { + description "The power supply group policy information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Admin redundancy mode + leaf adminRdnM { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_PsRdnM; + description "The power supply group admin redundancy mode"; } - container if-items { - list If-list { - key "if"; - // Added containment: Prefix=if - // Acquired From Package nbm - uses nbm_If-group; - } - } - } + // The power supply redundancy operational mode + leaf operRdnM { + config "false"; - grouping nbm_If-group { + type eqpt_PsRdnM; + description "The power supply group operational redundancy mode"; + } - // Type is an MO-Defined-Type - leaf if { - description "Interface if-index."; + // total power capacity in watts. It depends on the + // redundancy mode and is equal to one of cumCap, + // psRdCap, gridRdCap, FullRdCap + leaf tc { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmIf; + type eqpt_Watts; + description "The power supply group total capacity"; } - // Type is an MO-Defined-Type - leaf role { - description "Link Role."; + // Reserved power in watts + leaf rsdPwr { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmLinkRole; + type eqpt_Watts; + description "The power supply group reserved power"; } - } - grouping nbm_GlobalConf-group { - container dom-items { - list GlobalConfDom-list { - key "name"; + // Allocated power in watts + leaf alPwr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GlobalConfDom-group; - } + type eqpt_Watts; + description "The power supply group allocated power"; } - } - - grouping nbm_GlobalConfDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Available power in watts + leaf avPwr { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Watts; + description "The power supply group available power"; + } + leaf unit { + config "false"; + type string; + description "The power supply unit"; } - container global-items { + // Available power under various redundancy modes + // Cumulative power available in non-redundant mode. + // It is obtained by summing the individual power + // provided by all present and functioning psu + leaf nRdnCap { + config "false"; - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalConfig-group; + type eqpt_Watts; + description "The power supply group non-redundant capacity"; } - } - - grouping nbm_GlobalConfig-group { - // Type is an MO-Defined-Type - leaf operMode { - description "NBM Operation mode."; + // power capacity under power supply redundancy, also called + // N+1 redundancy. It is the sum of lowest N rated psu + leaf psRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmOperationalMode; + type eqpt_Watts; + description "The power supply group N+1 redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultSenderHostPolicy { - description "Default Allow or Deny policy for Sender hosts."; + // power capacity under AC power redundancy + leaf acRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type eqpt_Watts; + description "AC Redundant Capacity"; } - // Type is an MO-Defined-Type - leaf defaultReceiverHostPolicy { - description "Default Allow or Deny policy for Receiver hosts."; + // power capacity under grid redundancy, also called input + // src redundancy. It is calculated as the minimum of grid + // A and grid B capacity. It is relevant for psu which + // can take two independent inputs. For single input psu, + // grid redundancy is calculated as half of cumulative + // capacity + leaf grdRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type eqpt_Watts; + description "The power supply group grid redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultPimHostPolicy { - description "Default Allow or Deny policy for PIM groups."; + // Power capacity under full redundancy. It is calculated + // as the minimum of ps and grid redundancy + leaf flRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; - } - leaf defaultflowBw { - type uint32; - default "0"; + type eqpt_Watts; + description "The power supply group full redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultflowBwUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + // Total Grid-A (first half of PS slots) power capability + leaf grdACap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; - } - leaf defaultDscp { - type uint32; - default "0"; - } - leaf unicastBwPercent { - type uint8 { - range "0..100"; - } - default "0"; - } - leaf beaconAck { - type string; - default "0"; - } - leaf subscriptionId { - type uint32; - default "0"; + type eqpt_Watts; + description "The power supply Grid-A total power capacity"; } - } - grouping nbm_FlowPolicyTable-group { - container dom-items { - list FlowPolicyDom-list { - key "name"; + // Total Grid-B (second half of PS slots) power capability + leaf grdBCap { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_FlowPolicyDom-group; - } + type eqpt_Watts; + description "The power supply Grid-B total power capacity"; } - } - - grouping nbm_FlowPolicyDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Total actual input (actual draw) + leaf inputDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Watts; + description "The power supply total power input (actual draw)"; } - // Holds NBM configuration - container name-items { - list FlowPolicy-list { - key "name"; + // Total actual output (actual draw) + leaf outputDraw { + config "false"; - // Added containment: Prefix=name - // Acquired From Package nbm - uses nbm_FlowPolicy-group; - } + type eqpt_Watts; + description "The power supply total power output (actual draw)"; + } + leaf cordsConnected { + config "false"; + type boolean; + description "It is shown if all inlet cords connected"; } - } - grouping nbm_FlowPolicy-group { leaf name { - type string; - } - leaf bw { - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf bwUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + leaf descr { - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; - } - leaf dscp { - type uint32; - default "0"; + type naming_Descr; + description "Description of the specified attribute"; } - container bgn-items { - list FlowPolicyRange-list { - key "groupBegin groupEnd"; - // Added containment: Prefix=bgn - // Acquired From Package nbm - uses nbm_FlowPolicyRange-group; - } + container rspsuInstPolCons-items { + + uses eqpt_RsPsuInstPolCons_source-group; + description "The power supply group policy attachment"; } } - grouping nbm_FlowPolicyRange-group { + grouping eqpt_SlotP-group { + description "The slot policy information"; - // Type is an MO-Defined-Type - leaf groupBegin { - description "Flow Policy Group range start."; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type eqpt_SlotT; + description "The slop policy type"; } - // Type is an MO-Defined-Type - leaf groupEnd { - description "Flow Policy Group range end."; + // logical slot id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type eqpt_Id; + description "The slot policy logical identifier"; } - } - - grouping nbm_HostPolicyTable-group { - container dom-items { - list HostPolicyDom-list { - key "name"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_HostPolicyDom-group; - } - } - } + // Controls + leaf ctrl { + config "false"; - grouping nbm_HostPolicyDom-group { + type eqpt_SlotControl; + description "The slot policy controls"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container sender-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=sender - // Acquired From Package nbm - uses nbm_SenderHostPolicyTable-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - container receiver-items { + grouping lcm_Entity-group { + description "lcm entity"; - // Added containment as a singleton: Prefix=receiver - // Acquired From Package nbm - uses nbm_ReceiverHostPolicyTable-group; + // Hold the global configuration of system module + container sysmod-items { + + uses lcm_SysMod-group; + description "lcm system module object"; } - container pim-items { + // Container for all the ecmp template config data in the system. + container ecmptemplate-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package nbm - uses nbm_PimHostPolicyTable-group; + uses lcm_EcmpTemplateEntity-group; + description "Ecmp Template Config Entity"; } - } - grouping nbm_SenderHostPolicyTable-group { - container seq-items { - list SenderHostPolicy-list { - key "seqNum"; + // This object configs module logging level + container modloglevel-items { - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_SenderHostPolicy-group; - } + uses lcm_ModLogLevel-group; + description "Config module logging level"; } - } - grouping nbm_SenderHostPolicy-group { + // This object configs hardware profile muticast optimization + container mcastopt-items { - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + uses lcm_McastOpt-group; + description "Config hardware profile muticast optimization"; + } - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + // Container for all the port type config data in the system. + container slotcfg-items { + + uses lcm_SlotCfgEntity-group; + description "Slot Config Entity"; } - // Type is an MO-Defined-Type - leaf host { - description "Host IP Address"; + // Container for all the vxlan|mpls or acl-stats or acl-eg-ext config data in the system. + container vxlanmplsacl-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses lcm_VxlanMplsAclEntity-group; + description "vxlan|mpls or acl-stats or acl-eg-ext Config Entity"; } + } - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + grouping lcm_SysMod-group { + description "lcm system module object"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + leaf moduleFailureAction { + + type lcm_ModuleFailureAction; + description "Configure module action on failure"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + leaf moduleEmonEnhanced { - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_ModuleEmonEnhanced; + description "Configure module emon enhanced status"; } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + leaf moduleEmonEnhancedSlowTimeout { - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type lcm_ModuleEmonEnhancedSlowTimeout; + description "Configure module emon enhanced slow timeout status"; } } - grouping nbm_ReceiverHostPolicyTable-group { - - // Receiver Policy - container seq-items { - list ReceiverHostPolicy-list { - key "seqNum"; + grouping lcm_EcmpTemplateEntity-group { + description "Ecmp Template Config Entity"; + container module-items { + list EcmpTemplateModule-list { + key "id"; - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_ReceiverHostPolicy-group; + uses lcm_EcmpTemplateModule-group; + description "MO to hold config for module Ecmp Template list"; } + description "MO to hold config for module Ecmp Template"; } } - grouping nbm_ReceiverHostPolicy-group { + grouping lcm_EcmpTemplateModule-group { + description "MO to hold config for module Ecmp Template"; - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + leaf id { - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + type lcm_moduleNumber; + description "Module identifier for ecmp template property"; } - // Type is an MO-Defined-Type - leaf host { - description "Host IP Address"; + leaf ecmpTemplateL3vpn { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type lcm_EcmpTemplateL3vpn; + description "ecmp template l3vpn config state for the module [no/yes]"; } + } - // Type is an MO-Defined-Type - leaf source { - description "Host IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } + grouping lcm_ModLogLevel-group { + description "Config module logging level"; - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + // logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type lcm_LoggingLevel; + description "Logging Level"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + // logging type + leaf loggingType { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_LoggingType; + description "Logging type"; } + } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + grouping lcm_McastOpt-group { + description "Config hardware profile muticast optimization"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + // multicast Optimization + leaf multicastOptimization { + + type lcm_MulticastOptimization; + description "enable or disable muticast optimization"; } } - grouping nbm_PimHostPolicyTable-group { - - // External Receiver Host Policy - container seq-items { - list PimHostPolicy-list { - key "seqNum"; + grouping lcm_SlotCfgEntity-group { + description "Slot Config Entity"; + container slot-items { + list SlotInst-list { + key "id"; - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_PimHostPolicy-group; + uses lcm_SlotInst-group; + description "MO to hold config for slot list"; } + description "MO to hold config for slot"; } } - grouping nbm_PimHostPolicy-group { + grouping lcm_SlotInst-group { + description "MO to hold config for slot"; - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + leaf id { - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + type lcm_moduleNumber; + description "Module identifier for Slot property"; } - // Type is an MO-Defined-Type - leaf source { - description "Host IP Address"; + container portcfg-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses lcm_PortCfg-group; + description "MO to hold config for slot port type"; } + } - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + grouping lcm_PortCfg-group { + description "MO to hold config for slot port type"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + leaf portRange { + + type lcm_PortRange; + description "port range to config port type"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + leaf portType { - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_PortType; + description "port type to config [ethernet/fc]"; } + } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + grouping lcm_VxlanMplsAclEntity-group { + description "vxlan|mpls or acl-stats or acl-eg-ext Config Entity"; + container module-items { + list VxlanMplsAclModule-list { + key "id"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + uses lcm_VxlanMplsAclModule-group; + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext list"; + } + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext"; } } - grouping nbm_ShowTables-group { + grouping lcm_VxlanMplsAclModule-group { + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext"; - container appliedpolicies-items { + leaf id { - // Added containment as a singleton: Prefix=appliedpolicies - // Acquired From Package nbm - uses nbm_AppliedPolicyTable-group; + type lcm_ProfModAllId; + description "Module identifier for vxlan|mpls or acl-stats or acl-eg-ext property"; } - container flows-items { + leaf profVxlanMpls { - // Added containment as a singleton: Prefix=flows - // Acquired From Package nbm - uses nbm_FlowsTable-group; + type lcm_ProfVxlanMpls; + description "vxlan or mpls config status [no/vxlan/mpls] for the module"; } - container stats-items { + leaf profAclStats { - // Added containment as a singleton: Prefix=stats - // Acquired From Package nbm - uses nbm_StatsTable-group; + type lcm_ProfAclStats; + description "acl-stats config status [no/yes] for the module"; } - // OPER GLOBAL - container global-items { + leaf profAclEgExt { - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalShow-group; + type lcm_ProfAclEgExt; + description "acl-eg-ext config status [no/yes] for the module"; } + } - container endpoints-items { - - // Added containment as a singleton: Prefix=endpoints - // Acquired From Package nbm - uses nbm_EndPointsTable-group; + grouping platform_Entity-group { + description "Platform Entity"; + leaf descr { + type string; + description "Container to hold platform data of apps"; } - } - grouping nbm_AppliedPolicyTable-group { - container dom-items { - list AppliedPolicyDom-list { - key "name"; + leaf profileMode { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_AppliedPolicyDom-group; - } + type platform_HwProfile; + description "Hardware profile mode for platform entity "; } - } - - grouping nbm_AppliedPolicyDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf profileFrontPortmode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_FrontPortmode; + description "Hardware profile front portmode for platform entity "; } - // APPLIED Policy Oper MO - container host-items { + leaf profileTuple { - // Added containment as a singleton: Prefix=host - // Acquired From Package nbm - uses nbm_AppliedHostPolicy-group; + type platform_Tuple; + description "Profile tuple for platform entity"; } - } - grouping nbm_AppliedHostPolicy-group { - container seq-items { - list AppliedPolicy-list { - config "false"; - key "seqNum policyType if"; + leaf unicastSyslogThreshold { - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_AppliedPolicy-group; - } + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for unicast cases. The default is 90 percent of the total available shared buffer"; } - } - grouping nbm_AppliedPolicy-group { - leaf seqNum { - config "false"; - type uint64; + leaf lpmMaxLimit { + + type platform_LpmMaxLimits; + description "Maximum limit for LPM routes"; } - // Type is an MO-Defined-Type - leaf policyType { - config "false"; - description "Sender, Local Receiver, or External Receiver"; + leaf aclTapAggregation { - // Type is an MO-Defined-Type - type nbm_nbmPolicyType; + type platform_AclTapAggregation; + description "Configure tap-aggregation feature"; } - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface to which policy is applicable"; + leaf unicastMaxLimit { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ifName { - config "false"; - type string; + type platform_UnicastMaxLimit; + description "Maximum limit for unicast LPM routes"; } - // Type is an MO-Defined-Type - leaf isActive { - config "false"; - description "Applied ACTIVE or PASSIVE."; + leaf multicastMaxLimit { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + type platform_MulticastMaxLimit; + description "Maximum limit for multicast LPM routes"; } - } - grouping nbm_FlowsTable-group { - container dom-items { - list FlowsDom-list { - key "name"; + leaf multicastServiceReflectPort { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_FlowsDom-group; - } + type platform_multicastServiceReflectPort; + description "mcast service-reflect port"; } - } - grouping nbm_FlowsDom-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf multicastRpfCheckOptimization { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_AdminState; + description "mcast rpf check optimization"; } - // Holds NBM configuration - container s-items { - list NbmFlow-list { - config "false"; - key "source group"; + leaf highMulticastPriority { - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_NbmFlow-group; - } + type platform_AdminState; + description "high mcast priority"; } - } - - grouping nbm_NbmFlow-group { - // Properties - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "source IP Address"; + leaf pstatCfg { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_PstatCfg; + description "pstat enable"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group being sent"; + leaf multicastSyslogThreshold { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for multicast cases. The default is 90 percent of the total available shared buffer"; } - // Type is an MO-Defined-Type - leaf ingressIf { - config "false"; - description "ingress Interface"; + leaf IPV6alpmCarveValue { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ingressIfName { - config "false"; - type string; - } - leaf egressIfCount { - config "false"; - type uint32; - } - leaf flowPol { - config "false"; - type string; - } - leaf bwKbps { - config "false"; - type uint64; - } - leaf dscp { - config "false"; - type uint32; - } - leaf qid { - config "false"; - type uint32; + type platform_IPV6alpmCarveValues; + description "Hardware profile ipv6 alpm carve-value"; } - // Type is an MO-Defined-Type - leaf isFhr { - config "false"; - description "Signals if this switch is FHR for this flow"; + leaf ipv6LpmMaxEntries { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; - } - leaf tStamp { - config "false"; - type uint64; - } - leaf bucket { - config "false"; - type uint16; + type platform_IPv6LpmRange; + description "Maximum limit for IPv6 LPM routes"; } - // MO FOR OIFs - container oif-items { - list OifList-list { - config "false"; - key "oif"; + leaf routingMode { - // Added containment: Prefix=oif - // Acquired From Package nbm - uses nbm_OifList-group; - } + type platform_RoutingMode; + description "Routing mode"; } - } - grouping nbm_OifList-group { + leaf pcLbAlgo { - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "OIF Interface"; + type platform_PcLbAlgo; + description "Pc load-balance internal algorithm"; + } - // Type is an MO-Defined-Type - type nbm_nbmIf; + leaf pcLbRes { + + type platform_PcLbRes; + description "Pc load-balance resilient"; } - leaf oifName { - config "false"; - type string; + + leaf pcFastConv { + + type platform_PcFastConv; + description "Port-channel Fast Convergence"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver. Only LHR Need publish this"; + leaf pcScaleFanout { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_PcScaleFanout; + description "Port-channel Scale Fanout"; } - leaf oifTstamp { - config "false"; - type uint64; + leaf dot1qTunnelTransit { + type boolean; + default "false"; + description "Enable Dot1Q tunnel transit for multi-tag Ethernet frames"; } - } - grouping nbm_StatsTable-group { - container dom-items { - list StatsDom-list { - key "name"; + leaf pcMplsLbLabelIp { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_StatsDom-group; - } + type platform_PcMplsLbLabelIp; + description "Mpls load-balance label ip"; } - } - - grouping nbm_StatsDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf pcMplsLbLabelOnly { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_PcMplsLbLabelOnly; + description "Mpls load-balance label only"; } - // Holds NBM configuration - container s-items { - list StatsEntry-list { - config "false"; - key "source group"; + // valif for n3ktoronly + leaf urpfStatus { - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_StatsEntry-group; - } + type nw_AdminSt; + description "Unicast Reverse Path Forwarding Status"; } - } - - grouping nbm_StatsEntry-group { - // Properties - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "source IP Address"; + leaf unknownUnicastFlood { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type nw_AdminSt; + description "Hardware flood post-routed traffic on SVI if dest-mac->layer2-port binding unknown"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "destination IP Address"; + // valid for n9knontahoe + leaf qosMinBuffer { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf allowedPkts { - config "false"; - type uint64; + type platform_QosMinBuffer; + description "qos min-buffer qos-group"; } - leaf allowedBytes { - config "false"; - type uint64; + + leaf switchingMode { + + type platform_SwitchingMode; + description "Corresponds to the global switching mode. Default is cut-through"; } - leaf deniedPkts { - config "false"; - type uint64; + + leaf switchingFabricSpeed { + + type platform_FabricSpeed; + description "Corresponds to the switching fabric speed."; } - leaf deniedBytes { - config "false"; - type uint64; + + leaf mcastNlb { + + type platform_McastNlb; + description "Used to enable/disable hardware profile multicast nlb"; } - leaf totalPkts { - config "false"; - type uint64; + + leaf disParseErr { + + type platform_DisParseErr; + description "Used to disable/enable hardware profile disable parse-err"; } - leaf totalBytes { - config "false"; - type uint64; + + leaf mldSnooping { + + type platform_MldSnooping; + description "Used to enable/disable system mld snooping"; } - leaf tStamp { - config "false"; - type uint64; + + leaf mcastFlexStats { + + type platform_McastFlexStats; + description "Used to enable/disable hardware profile multicast flex-stats"; } - } - grouping nbm_GlobalShow-group { - container dom-items { - list GlobalShowDom-list { - key "name"; + leaf sviFlexStats { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GlobalShowDom-group; - } + type platform_SviFlexStats; + description "Used to enable/disable hardware profile si flex-stats"; } - } - grouping nbm_GlobalShowDom-group { + leaf sviAndSiFlexStats { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type platform_SviAndSiFlexStats; + description "Used to enable/disable hardware profile sviandsi flex-stats"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf iRaclSize { + + type platform_tcamLabelSize; + description "To set the ingress RACL TCAM label size to 9 bits and the default value is 6 bits"; } - container global-items { + leaf iBdIfaclLblOpt { - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalOper-group; + type platform_QosLabelOpt; + description "To optimize the ingress QOS Ingress BD IFACL label size"; } - } - grouping nbm_GlobalOper-group { - leaf initBeacon { - config "false"; - type uint64; + leaf globalTxSpan { + + type platform_GlobalTxSpan; + description "Used to enable/disable hardware multicast global tx span"; } - leaf apiVer { + + leaf appliedRoutingMode { config "false"; - type uint8; - default "1"; + + type platform_RoutingMode; + description "Actual routing mode that got applied"; } - leaf adminSt { - config "false"; - type uint8; - default "1"; + leaf ingRepRoundRobin { + type boolean; + description "Round-Robin hashing of underlay-paths for VXLAN ingress-replication peers"; } - // Type is an MO-Defined-Type - leaf operMode { - config "false"; - description "NBM Operation mode."; + // valid for n3ktoronly + leaf pbrSkipSelfIp { - // Type is an MO-Defined-Type - type nbm_nbmOperationalMode; + type nw_AdminSt; + default "disabled"; + description "Configure Skipping PBR for self-ip packets"; } - } - grouping nbm_EndPointsTable-group { - container dom-items { - list EpiDom-list { - key "name"; + leaf mcastLpmMaxEntries { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_EpiDom-group; - } + type platform_McastLpmMaxEntriesType; + description "Maximum limit for multicast LPM routes"; } - } - - grouping nbm_EpiDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf systemFabricMode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_FabricMode; + description "Corresponds to the system fabric mode"; } - container h-items { - list EndPoint-list { - config "false"; - key "hostIp if"; - // Added containment: Prefix=h - // Acquired From Package nbm - uses nbm_EndPoint-group; - } - } - } + leaf switchMode { - grouping nbm_EndPoint-group { + type platform_SwitchMode; + description "Corresponds to the switch mode(N3K/N9K)"; + } - // Properties - // Type is an MO-Defined-Type - leaf hostIp { - config "false"; - description "Endpoint IP Address."; + leaf mroutingPerfMode { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_MroutingPerfMode; + description "Corresponds to enabling/disabling mrouting performance mode"; } - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface index where endpoint is attached."; + leaf mroutingDisableSecRouteUpd { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ifName { - config "false"; - type string; + type platform_MroutingDisableSecRouteUpd; + description "Corresponds to enabling/disabling second route update"; } - // Type is an MO-Defined-Type - leaf role { - config "false"; - description "End Point Role. This can be Unknown when discovered via ARP. And specific role when known."; + leaf mroutingDisableL2Upd { - // Type is an MO-Defined-Type - type nbm_nbmEndpointRole; + type platform_MroutingDisableL2Upd; + description "Corresponds to enabling/disabling l2 update"; } - container arp-items { + leaf unicastTrace { - // Added containment as a singleton: Prefix=arp - // Acquired From Package nbm - uses nbm_EndPointArp-group; + type platform_UnicastTrace; + description "Used to enable/disable unicast trace"; } - container g-items { - list EndPointSender-list { - config "false"; - key "group"; - - // Added containment: Prefix=g - // Acquired From Package nbm - uses nbm_EndPointSender-group; + leaf hwLouResThreshold { + type uint16 { + range "1..50"; } + default "5"; + description "Hardware Lou Resource Threshold value."; + } + leaf accessListMatchInnerHeader { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + description "Used to enable/disable hardware access-list match inner-header"; } - container s-items { - list EndPointReceiver-list { - config "false"; - key "source group"; - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_EndPointReceiver-group; + leaf mplsAdjStatsMode { + + type platform_MplsStatsType; + description "Corresponds to MPLS Adjacency stats type"; + } + + leaf mplsCfgEcmpMode { + + type platform_MplsEcmpMode; + description "Used to enable/disable extended-ecmp for MPLS on RX-series Linecards N9K"; + } + leaf wrrUnicastBw { + type uint8 { + range "0..100"; } + default "50"; + description "WRR Unicast Bandwidth Value"; } - } - - grouping nbm_EndPointArp-group { - // Type is an MO-Defined-Type - leaf mac { - config "false"; - description "MAC Address of the endpoint."; + leaf tcamSyslogThreshold { - // Type is an MO-Defined-Type - type nbm_nbmMacAddr; - } - leaf tStamp { - config "false"; - type uint64; + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for TCAM. The default is 90 percent of the total available shared buffer"; } - } - grouping nbm_EndPointSender-group { + leaf mcastRaclBridge { - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group being sent by this endpoint."; + type platform_AdminState; + description "Apply permit/drop for mcast bridged pkt"; + } - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf serviceTemplateName { + + type platform_TcamTemplateName; + description "Name of the user-defined service template"; } - // Type is an MO-Defined-Type - leaf isExt { - config "false"; - description "Is this an External Sender."; + // Port-channel Load-Balance Related Properties + container pclb-items { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + uses platform_LoadBalance-group; + description "Port-Channel Load-Balance"; } - // Type is an MO-Defined-Type - leaf faultReason { - config "false"; - description "Signals reason of fault if any."; + // Hardware Profile Related Properties + container profile-items { - // Type is an MO-Defined-Type - type nbm_nbmFaultType; + uses platform_Profile-group; + description "Platform Profile"; } - leaf tStamp { - config "false"; - type uint64; + + // congestion-control properties [default value = (0xFFFF * 208){no of cells * no of bytes for each cell}] + container globalrandomdetect-items { + + uses platform_GlobalRandomDetect-group; + description "Congestion-control Random-detect"; } - } - grouping nbm_EndPointReceiver-group { + // TCAM resource utilization on the module + container mod-items { + list TcamStatsModule-list { + config "false"; + key "module"; - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "Source requested by this receiver. 0.0.0.0 in case of *."; + uses platform_TcamStatsModule-group; + description "represents module for which TCAM resource utilization is required list"; + } + description "represents module for which TCAM resource utilization is required"; + } + container nve-items { + list NVE-list { + key "id"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_NVE-group; + description "Nve Configs list"; + } + description "Nve Configs"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group requested by this receiver."; + container forwardingmode-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_ForwardingMode-group; + description "Forwarding Mode Property"; } - // Type is an MO-Defined-Type - leaf isExt { - config "false"; - description "Is this an External Receiver."; + // ECMP related properties + container ecmp-items { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + uses platform_Ecmp-group; + description "represents hardware related ecmp properties"; } - // Type is an MO-Defined-Type - leaf faultReason { - config "false"; - description "Signals reason of fault if any."; + // Hardware Qos Related Properties + container qos-items { - // Type is an MO-Defined-Type - type nbm_nbmFaultType; + uses platform_Qos-group; + description "Hardware qos type"; } - // Type is an MO-Defined-Type - leaf owner { - config "false"; - description "IGMP or Static receiver."; + // PFC Wd Related Properties + container priorflowctrlwd-items { - // Type is an MO-Defined-Type - type nbm_nbmRcvOwner; + uses platform_PriorFlowCtrlWd-group; + description "PFC WD config"; } - leaf tStamp { - config "false"; - type uint64; - } - } - - grouping nbm_NbmCcTable-group { - // Holds NBM CC - container eif-items { - list NbmCcFlowEntity-list { - config "false"; - key "egressIf srcIP dstIP"; + container wredqueue-items { - // Added containment: Prefix=eif - // Acquired From Package nbm - uses nbm_NbmCcFlowEntity-group; - } + uses platform_WredQueue-group; + description "Enable queue based ECN marking"; } - container srcip-items { - list SenderCcTable-list { - config "false"; - key "srcIP destIP"; - // Added containment: Prefix=srcip - // Acquired From Package nbm - uses nbm_SenderCcTable-group; - } + // Rate Limiter Related Properties + container ratelimiter-items { + + uses platform_RateLimiter-group; + description "Rate Limiter container for the platform entity "; } - container repip-items { - list ReceiverCcTable-list { - config "false"; - key "reporterIP srcIP destIP"; - // Added containment: Prefix=repip - // Acquired From Package nbm - uses nbm_ReceiverCcTable-group; + // TCAM Template Related Properties + container template-items { + list TcamTemplate-list { + key "name"; + + uses platform_TcamTemplate-group; + description "Manages the user defined tcam template list"; } + description "Manages the user defined tcam template"; } - } - grouping nbm_NbmCcFlowEntity-group { + // Container for all the BDs to hold platform data in the system. + container bd-items { - // Properties - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP Address"; + uses platform_BdEntity-group; + description "Bridge domain"; + } - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + // Container for all the interfaces in the system. + container intf-items { + + uses platform_Intf-group; + description "Interface"; } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + // This object configs platform logging level + container loglevel-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_LogLevel-group; + description "Config Platform logging level"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver"; + // Container for all the power off config data in the system. + container poweroffEntity-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_PoweroffEntity-group; + description "Poweroff Module Config"; } - // Type is an MO-Defined-Type - leaf ingressIf { - config "false"; - description "ingress Interface"; + container sysmemth-items { - // Type is an MO-Defined-Type - type nbm_nbmIf; + uses platform_SysMemTh-group; + description "System Memory Threshold"; } - // Type is an MO-Defined-Type - leaf egressIf { - config "false"; - description "egress Interface"; + // Container for all the tcam regions in the system. + container tcamRegion-items { - // Type is an MO-Defined-Type - type nbm_nbmIf; + uses platform_TcamRegion-group; + description "Tcam region type"; } - leaf dscp { - config "false"; - type uint32; + + container latencymonitor-items { + + uses platform_LatencyMonitor-group; + description "Latency Monitor Property"; } - // Type is an MO-Defined-Type - leaf bandwidthUnit { - config "false"; - description "bandwidth units - Mbps, Kbps, or Gbps"; + container buffermonitor-items { - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; + uses platform_BufferMonitor-group; + description "Buffer Monitor Property"; } - leaf bandwidth { - config "false"; - type uint32; + + container pfcmmubuffer-items { + + uses platform_PfcMmuBuffer-group; + description "Pfc mmu buffer Property"; } - leaf queueId { - config "false"; - type uint8; + + // Container for all udf . + container udf-items { + + uses platform_UdfEntity-group; + description "UdfEntity"; } } - grouping nbm_SenderCcTable-group { + grouping platform_LoadBalance-group { + description "Port-Channel Load-Balance"; - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP address"; + leaf loadBalanceAlgo { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_LoadBalanceAlgo; + description "src-dst based load balancing parameters"; } - // Type is an MO-Defined-Type - leaf destIP { - config "false"; - description "dest IP address"; + leaf concatenation { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_Concatenation; + description "Enable/Disable load-balancing concatenation parameter"; } - leaf iif { - config "false"; - type uint8; + + leaf rotate { + + type platform_Rotate; + description "Hash-input of load balancing rotate parameter"; } - leaf dummyproperty1 { - config "false"; - type uint32; + leaf fex { + type boolean; + description "fex based load balancing parameter"; } - leaf dummyproperty2 { - config "false"; - type uint32; + + leaf symmetry { + + type platform_Symmetry; + description "load balancing symmetry parameter"; } - leaf dummyproperty3 { - config "false"; - type uint32; + + leaf encapsulation { + + type platform_Encapsulation; + description "load balancing encapsulation parameter"; } } - grouping nbm_ReceiverCcTable-group { + grouping platform_Profile-group { + description "Platform Profile"; - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP address"; + // valid for MTC + leaf spanBufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_ThresPercentage; + description "buffer span threshold"; } - // Type is an MO-Defined-Type - leaf destIP { - config "false"; - description "destination IP address"; + leaf qosGrp0BufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf oif { - config "false"; - type uint8; + type platform_ThresPercentage; + description "buffer qos group 0 threshold"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver CC Table"; + leaf qosGrp1BufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf dummyproperty1 { - config "false"; - type uint32; - } - leaf dummyproperty2 { - config "false"; - type uint32; + type platform_ThresPercentage; + description "buffer qos group 1 threshold"; } - leaf dummyproperty3 { - config "false"; - type uint32; + + leaf qosGrp2BufferThresh { + + type platform_ThresPercentage; + description "buffer qos group 2 threshold"; } - } - grouping nbm_NbmFlowsTable-group { - leaf mode { - type string; + leaf qosGrp3BufferThresh { + + type platform_ThresPercentage; + description "buffer qos group 3 threshold"; } - // Holds NBM configuration - container flowOp-items { - list NbmFlowEntity-list { - key "flowOp srcIP dstIP egressIf"; + leaf qosGrp4BufferThresh { - // Added containment: Prefix=flowOp - // Acquired From Package nbm - uses nbm_NbmFlowEntity-group; - } + type platform_ThresPercentage; + description "buffer qos group 4 threshold"; } - // Counter MO - container srcIP-items { - list NbmOifCounter-list { - config "false"; - key "srcIP dstIP"; + // Hardware Profile Related Properties + container module-items { + list Module-list { + key "moduleId"; - // Added containment: Prefix=srcIP - // Acquired From Package nbm - uses nbm_NbmOifCounter-group; + uses platform_Module-group; + description "Module list"; } + description "Module"; } - // MO FOR IIF CHANGE - UNUSED FOR NOW - container iif-items { - list NbmUpdateIif-list { - key "newIngressIf srcIP dstIP"; + // Packet Drop Related Properties + container packetdrop-items { - // Added containment: Prefix=iif - // Acquired From Package nbm - uses nbm_NbmUpdateIif-group; - } + uses platform_PacketDrop-group; + description "Packet Drop config"; } } - grouping nbm_NbmFlowEntity-group { + grouping platform_Module-group { + description "Module"; - // Properties - // Type is an MO-Defined-Type - leaf controllerIP { - description "Controller IP Address"; + leaf moduleId { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_slotNumber; + description "Module number on the switch"; } - // Type is an MO-Defined-Type - leaf controllerVIP { - description "Controller Virtual IP Address"; + leaf infoPortThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_portThresPercentage; + description "buffer info port-threshold threshold"; } - // Type is an MO-Defined-Type - leaf flowOp { - description "Operation Type"; + leaf infoPollInt { - // Type is an MO-Defined-Type - type nbm_nbmFlowOperEn; + type platform_Interval; + description "buffer info poll-interval timer"; } + } - // Type is an MO-Defined-Type - leaf srcIP { - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + grouping platform_PacketDrop-group { + description "Packet Drop config"; + leaf preTriggerSampling { + type uint8 { + range "1..16"; + } + default "8"; + description "Packet Drop Pre-Sampling Rate"; } - - // Type is an MO-Defined-Type - leaf dstIP { - description "destination IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf postTriggerSampling { + type uint8 { + range "1..16"; + } + default "16"; + description "Packet Drop Post-Sampling Rate"; } - // Type is an MO-Defined-Type - leaf reporterIP { - description "Reporter IP Address for Receiver"; + leaf dropTrigger { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_TriggerType; + description "Packet Drop Trigger"; } - // Type is an MO-Defined-Type - leaf ingressIf { - description "ingress Interface"; + leaf sourceScope { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type platform_SourceScope; + description "Packet Drop Capture Scope"; } - // Type is an MO-Defined-Type - leaf egressIf { - description "egress Interface"; + leaf sourceInterface { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type nw_IfId; + description "Capture Entity"; } - leaf egressIfCount { - type uint32; + leaf sourceInterfaceQosGrp { + type uint8 { + range "0..8"; + } + default "0"; + description "Capture Entity QosGroup"; } - leaf seqNum { - type uint32; + leaf captureCount { + type uint16 { + range "2..1024"; + } + default "304"; + description "Packet Drop Capture Count"; } - leaf dscp { - type uint32; + leaf captureTimer { + type uint16 { + range "1..429"; + } + description "Packet Drop Capture Timer (Micro-Seconds)"; + } + leaf packetDropEnable { + type boolean; + default "false"; + description "Packet Drop Enable"; } - // Type is an MO-Defined-Type - leaf bandwidthUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + // Profile Related Properties + container dropprofile-items { + list DropProfile-list { + key "profileName"; - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; + uses platform_DropProfile-group; + description "Packet Drop config list"; + } + description "Packet Drop config"; } - leaf bandwidth { - type uint32; + } + + grouping platform_DropProfile-group { + description "Packet Drop config"; + leaf profileName { + type string { + length "1..40"; + } + description "Packet Drop Profile Name"; } - leaf queueId { - type uint8; + leaf startThreshold { + type uint16 { + range "0..65535"; + } + default "0"; + description "Packet Drop Profile Start-Threshold"; } - leaf switchIif { - type uint8; + leaf stopThreshold { + type uint16 { + range "0..65535"; + } default "0"; + description "Packet Drop Profile Stop-Threshold"; } - } - - grouping nbm_NbmOifCounter-group { - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP Address"; + // Profile Interface Related Properties + container profileinterface-items { + list ProfileInterface-list { + key "profileInterface"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_ProfileInterface-group; + description "Packet Drop config list"; + } + description "Packet Drop config"; } + } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + grouping platform_ProfileInterface-group { + description "Packet Drop config"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf profileInterface { + + type nw_IfId; + description "Packet Drop Profile Interface"; } - leaf oifCount { - config "false"; - type uint32; + leaf qosGrp0 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 0"; + } + leaf qosGrp1 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 1"; + } + leaf qosGrp2 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 2"; + } + leaf qosGrp3 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 3"; + } + leaf qosGrp4 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 4"; + } + leaf qosGrp5 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 5"; + } + leaf qosGrp6 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 6"; + } + leaf qosGrp7 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 7"; + } + leaf monitorAllQgrps { + type boolean; + default "false"; + description "Packet Drop Profile Monitor Qgrp"; } } - grouping nbm_NbmUpdateIif-group { - - // Type is an MO-Defined-Type - leaf srcIP { - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + grouping platform_GlobalRandomDetect-group { + description "Congestion-control Random-detect"; + leaf minThreshold { + type uint32; + default "13631280"; + description "Global-buffer min Threshold"; } - // Type is an MO-Defined-Type - leaf dstIP { - description "destination IP Address"; + leaf minThresholdUnit { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_ThresUnit; + description "Global-buffer max Threshold unit"; + } + leaf maxThreshold { + type uint32; + default "13631280"; + description "Global-buffer max Threshold"; } - // Type is an MO-Defined-Type - leaf newIngressIf { - description "New Ingress Interface"; + leaf maxThresholdUnit { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type platform_ThresUnit; + description "Global-buffer min Threshold unit"; } - // Type is an MO-Defined-Type - leaf prevIngressIf { - description "Prev Ingress Interface"; + leaf forwardNonEcn { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf seqNum { - type uint32; + type platform_ConfigState; + description "Forward non ECN capable traffic without WRED dropping"; } } - grouping nbm_NbmStats-group { + grouping platform_TcamStatsModule-group { + description "represents module for which TCAM resource utilization is required"; + leaf module { + config "false"; + type uint16; + description "module number for which TCAM resource utilization is required"; + } - // Holds NBM configuration - container srcIP-items { - list NbmStatsEntity-list { + // TCAM resource utilization on the asic instance + container inst-items { + list TcamStatsInst-list { config "false"; - key "srcIP dstIP"; + key "instance"; - // Added containment: Prefix=srcIP - // Acquired From Package nbm - uses nbm_NbmStatsEntity-group; + uses platform_TcamStatsInst-group; + description "represents aisc instance number on the module list"; } + description "represents aisc instance number on the module"; } } - grouping nbm_NbmStatsEntity-group { - - // Properties - // Type is an MO-Defined-Type - leaf srcIP { + grouping platform_TcamStatsInst-group { + description "represents aisc instance number on the module"; + leaf instance { config "false"; - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type uint16; + description "instance number"; } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + // TCAM regions on the asic instance + container region-items { + list TcamStatsRegion-list { + config "false"; + key "regionName"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf allowedPkts { - config "false"; - type uint64; - } - leaf allowedBytes { - config "false"; - type uint64; - } - leaf deniedPkts { - config "false"; - type uint64; - } - leaf deniedBytes { - config "false"; - type uint64; - } - leaf totalPkts { - config "false"; - type uint64; + uses platform_TcamStatsRegion-group; + description "represents TCAM Region name on the asic instance list"; + } + description "represents TCAM Region name on the asic instance"; } - leaf totalBytes { + } + + grouping platform_TcamStatsRegion-group { + description "represents TCAM Region name on the asic instance"; + leaf regionName { config "false"; - type uint64; + type string; + description "TCAM region name"; } - leaf tStamp { + leaf regionSize { config "false"; - type uint64; - } - } - - grouping boot_Boot-group { - - // boot poap - // Type is an MO-Defined-Type - leaf poap { - description "Boot Poap Enable Disable"; - - // Type is an MO-Defined-Type - type boot_Poap; + type uint16; + description "carved size of TCAM region"; } - container image-items { + // TCAM utilization values for the regions + container utilization-items { - // Added containment as a singleton: Prefix=image - // Acquired From Package boot - uses boot_Image-group; + uses platform_TcamResourceUtilization-group; + description "represents TCAM resouce utilization for the region"; } } - grouping boot_Image-group { - leaf sup1 { - type string; - } - leaf sup2 { - type string; + grouping platform_TcamResourceUtilization-group { + description "represents TCAM resouce utilization for the region"; + leaf used { + config "false"; + type uint16; + description "overall used entries for the region"; } - leaf image_err { + leaf free { config "false"; - type string; - default "success"; + type uint16; + description "overall free entries for the region"; } - leaf sup1NextReload { + leaf percent { config "false"; - type string; + type decimal64 { + fraction-digits 6; + } + description "overall percent utilization for the region"; } - leaf sup2NextReload { + leaf ipv4Used { config "false"; - type string; + type uint16; + description "number of ipv4 access-list entries in the region"; } - } - - grouping eqpt_Ch-group { - - // Role of this chassis - // Type is an MO-Defined-Type - leaf role { + leaf ipv4Percent { config "false"; - description "The role of this chassis"; - - // Type is an MO-Defined-Type - type top_NodeRole; + type decimal64 { + fraction-digits 6; + } + description "Ipv4 percent utilization of the region"; + } + leaf ipv6Used { + config "false"; + type uint16; + description "number of ipv6 access-list entries in the region"; } - - // Operational status of chassis - // Type is an MO-Defined-Type - leaf operSt { + leaf ipv6Percent { config "false"; - description "The chassis operational state"; - - // Type is an MO-Defined-Type - type eqpt_ChOperSt; + type decimal64 { + fraction-digits 6; + } + description "Ipv6 percent utilization of the region"; } - - // Chassis operational status qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf macUsed { config "false"; - description "The chassis operational state qualifier"; - - // Type is an MO-Defined-Type - type eqpt_OperStQual; + type uint16; + description "number of mac access-list entries in the region"; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + leaf macPercent { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type decimal64 { + fraction-digits 6; + } + description "mac percent utilization of the region"; } - - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + leaf allUsed { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint16; + description "all used entries in the region"; } - - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + leaf allPercent { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type decimal64 { + fraction-digits 6; + } + description "all percent utilization of the region"; } - - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + leaf otherUsed { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint16; + description "used other entries in the region"; } - leaf mfgTm { + leaf otherPercent { config "false"; - type string; - default "0"; + type decimal64 { + fraction-digits 6; + } + description "other percent utilization of the region"; } + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type + grouping platform_NVE-group { + description "Nve Configs"; leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + type uint16; + description "int nve"; + } + leaf ipmcIndexSize { + type uint32 { + range "1000..7000"; } + default "3000"; + description "global ipmc index size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf overlayVlanId { - // Type is an MO-Defined-Type - type naming_Descr; + type l2_VlanBitmap; + description "nve overlay vlan id range"; } - - // Ejector policy - container ejpol-items { - list EjPol-list { - config "false"; + container infravlan-items { + list InfraVlan-list { key "id"; - // Added containment: Prefix=ejpol - // Acquired From Package eqpt - uses eqpt_EjPol-group; + uses platform_InfraVlan-group; + description "InfraVlan Config list"; } + description "InfraVlan Config"; } + } - // supervisor slot - container supslot-items { - list SupCSlot-list { - config "false"; - key "id"; + grouping platform_InfraVlan-group { + description "InfraVlan Config"; - // Added containment: Prefix=supslot - // Acquired From Package eqpt - uses eqpt_SupCSlot-group; - } + leaf id { + + type platform_infraVlanId; + description "Id for all vlans that are infravlan enabled"; } - // line card slot - container lcslot-items { - list LCSlot-list { - config "false"; - key "id"; + leaf force { - // Added containment: Prefix=lcslot - // Acquired From Package eqpt - uses eqpt_LCSlot-group; - } + type platform_infraVlanForce; + description "Force flag if infra vlan added by force"; } + } - // fabric card slot - container fcslot-items { - list FCSlot-list { - config "false"; - key "id"; + grouping platform_ForwardingMode-group { + description "Forwarding Mode Property"; - // Added containment: Prefix=fcslot - // Acquired From Package eqpt - uses eqpt_FCSlot-group; - } + // description + leaf forwardingModeType { + + type platform_forwardingModeSelector; + description "Forwarding Mode Type"; } - // system controller slot - container scslot-items { - list SysCSlot-list { - config "false"; - key "id"; + leaf lpmEntryWarp { - // Added containment: Prefix=scslot - // Acquired From Package eqpt - uses eqpt_SysCSlot-group; - } + type platform_forwardingModeLpmEntryWarp; + description "Forwarding Mode Warp LPM Entry"; } - // power supply slot - container psuslot-items { - list PsuSlot-list { - config "false"; - key "id"; + leaf hostEntryWarp { - // Added containment: Prefix=psuslot - // Acquired From Package eqpt - uses eqpt_PsuSlot-group; - } + type platform_forwardingModeHostEntryWarp; + description "Forwarding Mode Warp Host Entry"; } - // fan tray slot - container ftslot-items { - list FtSlot-list { - config "false"; - key "id"; + leaf l2EntryWarp { - // Added containment: Prefix=ftslot - // Acquired From Package eqpt - uses eqpt_FtSlot-group; - } + type platform_forwardingModeL2EntryWarp; + description "Forwarding Mode Warp L2 Entry"; } - // Sprom Backplane Unit block - container spbp-items { + leaf mcstEntryWarp { - // Added containment as a singleton: Prefix=spbp - // Acquired From Package eqpt - uses eqpt_SpromBP-group; + type platform_forwardingModeMcstEntryWarp; + description "Forwarding Mode Warp Mcast Entry"; } - // Board slot - container bslot-items { + leaf lpmEntryNormal { - // Added containment as a singleton: Prefix=bslot - // Acquired From Package eqpt - uses eqpt_BSlot-group; + type platform_forwardingModeLpmEntryNormal; + description "Forwarding Mode Normal LPM Entry"; } - // Nic slot - container nslot-items { - list NSlot-list { - config "false"; - key "id"; + leaf mcstEntryNormal { - // Added containment: Prefix=nslot - // Acquired From Package eqpt - uses eqpt_NSlot-group; - } + type platform_forwardingModeMcstEntryNormal; + description "Forwarding Mode Normal Mcast Entry"; } - // Storage represents the storage of the Controller - container p-items { - list Storage-list { - config "false"; - key "mount fileSystem"; + leaf fwdModeCfgFailed { + config "false"; - // Added containment: Prefix=p - // Acquired From Package eqpt - uses eqpt_Storage-group; - } + type platform_forwardingModeConfigFailed; + description "Forwarding Mode Config Failed"; } } - grouping eqpt_EjPol-group { + grouping platform_Ecmp-group { + description "represents hardware related ecmp properties"; - // Auto shutdown on ejector open - // Type is an MO-Defined-Type - leaf autoSh { - config "false"; - description "Auto Shutdown on Ejector Open"; + leaf ecmpResilientMode { - // Type is an MO-Defined-Type - type eqpt_AdSt; + type platform_AdminState; + description "Configure ECMP resilient mode"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf ecmpReuse { - // Type is an MO-Defined-Type - type eqpt_Id; + type platform_AdminState; + description "Enable ECMP reuse to scale"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf ecmpAutoRecoveryThreshold { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_Percent; + description "Configure ECMP Auto recovery mode"; } + } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + grouping platform_Qos-group { + description "Hardware qos type"; - // Type is an MO-Defined-Type - type eqpt_Model; + // Buffer peak configuraion for counter0 classes + leaf bufPeakMonitorCnt0Class0 { + + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 0"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf bufPeakMonitorCnt0Class1 { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 1"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf bufPeakMonitorCnt0Class2 { - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { - config "false"; - type string; - default "0"; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 2"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf bufPeakMonitorCnt0Class3 { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 3"; } - } - - grouping eqpt_SupCSlot-group { - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { - config "false"; - description "Poweroff Config"; + leaf bufPeakMonitorCnt0Class4 { - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 4"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf bufPeakMonitorCnt0Class5 { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 5"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf bufPeakMonitorCnt0Class6 { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 6"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { - config "false"; - description "The physical slot identifier"; + leaf bufPeakMonitorCnt0Class7 { - // Type is an MO-Defined-Type - type eqpt_Id; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 7"; + } + leaf macIpgVal { + type uint16 { + range "12..63"; + } + default "12"; + description "To configure MAC IPG Value in bytes"; + } + leaf dppMaxNumPkts { + type uint32 { + range "1..1023"; + } + default "120"; + description "To configure the max number of packets to prioritize"; + } + leaf dppAgePeriod { + type uint32 { + range "5000..1000000"; + } + default "5000"; + description "To configure DPP aging period in microseconds"; + } + leaf etrapAgePeriod { + type uint32 { + range "1..1000000"; + } + default "50"; + description "To configure ETRAP aging period in microseconds"; + } + leaf etrapBandwidthThreshold { + type uint32 { + range "1..1073741824"; + } + default "500"; + description "To configure ETRAP aging period in bytes"; + } + leaf etrapByteCount { + type uint32 { + range "1..1048575"; + } + default "1048555"; + description "To configure number of bytes to become elephant flow"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:SupCSlot->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The supervisor slot type"; + // Per output queue drops configuration + leaf oqDropsType { - // Type is an MO-Defined-Type - type eqpt_SlotT; + type platform_OqDropsType; + description "Type of per output queue drops"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // AFD Profile configuration + leaf qosAfdNSBuffProfile { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type platform_QosAfdBufferProfileOptions; + description "To configure approximate fair dropping profile"; + } + leaf qNoisePercent { + type uint16 { + range "0..100"; + } + default "20"; + description "To configure queue noise threshold in percentage"; + } + leaf pgHdrmReserve { + type uint8 { + range "20..100"; + } + default "100"; + description "Percent of Hdrm to reserve"; + } + leaf pgMinValue { + type uint8 { + range "0..32"; + } + default "0"; + description "PG Min Value"; + } + leaf pgNoMin { + type boolean; + default "false"; + description "PG no-min"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + leaf classify { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type platform_ConfigState; + description "Qos classification"; } - // Sup Card, containing CPU running control plane - container sup-items { + leaf ipg { - // Added containment as a singleton: Prefix=sup - // Acquired From Package eqpt - uses eqpt_SupC-group; + type platform_ConfigState; + description "Include IPG in shape/police"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - container rtoosSlot-items { + leaf pgShare { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type platform_ConfigState; + default "Enabled"; + description "PG Shared Buffer Usage"; + } + leaf burstDetectMaxRecords { + type uint16 { + range "200..2000"; + } + default "1000"; + description "Configure the max number of burst records to monitor"; } - } - grouping eqpt_SupC-group { + leaf burstDetectRiseThreshold { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_Threshold; + description "Threshold bytes to start monitoring burst"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + leaf burstDetectRiseThreshUnit { + + type platform_ThreshUnit; + description "Units for rise-threshold value"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf burstDetectFallThreshold { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_Threshold; + description "Threshold bytes to stop monitoring burst"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf burstDetectFallThreshUnit { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_ThreshUnit; + description "Units for fall-threshold value"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf nsBufferProfile { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_BufferProfileOptions; + description "Qos NS Buffer Profile"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf eoqStatsClass { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_QosGroup; + description "Qos eoq Stats Class Qos Group"; } - leaf mfgTm { - config "false"; - type string; + leaf nodropQueueYellowThresh { + type uint32; default "0"; + description "No-drop PG's Queue yellow threshold"; } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf nodropQueueGreenThresh { + type uint32; + default "0"; + description "No-drop PG's Queue green threshold"; } - - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + leaf nodropQueueGreenThreshFx { + type uint32; + default "0"; + description "No-drop PG's Queue green threshold for FX platforms"; + } + leaf nodropPgSize { + type uint32; + default "0"; + description "Configure No-drop Pool Group size"; + } + leaf nodropPgRedThresh { + type uint32; + default "0"; + description "Configure No-drop PG red threshold"; + } + leaf nodropPgYellowThresh { + type uint32; + default "0"; + description "Configure No-drop PG yellow threshold"; + } + leaf nodropPgGreenThresh { + type uint32; + default "0"; + description "Configure No-drop PG green threshold"; + } + leaf nodropPgSizeFx { + type uint32; + default "0"; + description "Configure No-drop Pool Group size for FX platforms"; + } + leaf cpuSize { + type uint16 { + range "0..1500"; + } + default "0"; + description "CPU Pool Group threshold"; + } + leaf lCpuSize { + type uint16 { + range "0..10000"; + } + default "0"; + description "LCPU Pool Group threshold"; + } + leaf spanSize { + type uint32 { + range "0..10000"; + } + default "0"; + description "Span Pool Group size"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:SupC->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + leaf inputBufferPeak { - // Type is an MO-Defined-Type - type eqpt_CardT; + type platform_PeakCountType; + description "peak counter type"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + leaf mcQosGroup3Traffic { - // Type is an MO-Defined-Type - type eqpt_COpSt; + type platform_QosGroupVal; + description "Qos-group to which to divert qos-group-3 Multicast traffic"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { - config "false"; - description "The card redundancy state"; + leaf pfcMcDrop { - // Type is an MO-Defined-Type - type eqpt_RdSt; + type platform_ConfigState; + description "Drop mcast/bcast traffic on no-drop configured class"; } + container counter-items { + list QosOqStatsConfiguration-list { + key "counterNumber"; - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + uses platform_QosOqStatsConfiguration-group; + description "represents module for which TCAM resource utilization is required list"; + } + description "represents module for which TCAM resource utilization is required"; + } + } - // Type is an MO-Defined-Type - type eqpt_CardId; + grouping platform_QosOqStatsConfiguration-group { + description "represents module for which TCAM resource utilization is required"; + leaf counterNumber { + type uint16 { + range "0..9"; + } + description "Use per port counter number"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // Qos group for which queuing statistics is to be configured + leaf qosGrpForQueuingStatistics { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type platform_QosGroupForQueuingStatistics; + description "Qos group for which queuing statistics is to be configured"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { - config "false"; - description "The card MAC address base"; + // Oq stats type + leaf oqStatsType { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type platform_OqStatsType; + description "Type of per output queue statistics"; } + } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + grouping platform_PriorFlowCtrlWd-group { + description "PFC WD config"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + leaf cfgMode { + + type platform_ConfigOnOff; + description "PFC WD enabled"; } - leaf upTs { - config "false"; - type string; + leaf interval { + type uint16 { + range "100..1000"; + } + default "100"; + description "PFC WD poll interval"; } - - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; - - // Type is an MO-Defined-Type - type eqpt_PwrState; + leaf shutdownMultiplier { + type uint8 { + range "1..10"; + } + default "1"; + description "PFC WD Shutdown multiplier"; } - - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + leaf autoRestoreMultiplier { + type uint8 { + range "0..100"; + } + default "10"; + description "PFC WD Auto shutdown multiplier"; + } + leaf fixedRestoreMultiplier { + type uint8 { + range "0..100"; + } + default "0"; + description "PFC WD Fixed shutdown multiplier"; + } + leaf internalIntfMultiplier { + type uint8 { + range "0..10"; + } + default "2"; + description "PFC WD Internal interface multiplier"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + leaf forcedOn { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type platform_ConfigOnOff; + description "PFC WD forced on"; } + } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + grouping platform_WredQueue-group { + description "Enable queue based ECN marking"; + leaf qosGroup0 { + type boolean; + description "Enable queue based ECN marking for qos-group0"; + } + leaf qosGroup1 { + type boolean; + description "Enable queue based ECN marking for qos-group1"; + } + leaf qosGroup2 { + type boolean; + description "Enable queue based ECN marking for qos-group2"; + } + leaf qosGroup3 { + type boolean; + description "Enable queue based ECN marking for qos-group3"; + } + leaf qosGroup4 { + type boolean; + description "Enable queue based ECN marking for qos-group4"; + } + leaf qosGroup5 { + type boolean; + description "Enable queue based ECN marking for qos-group5"; + } + leaf qosGroup6 { + type boolean; + description "Enable queue based ECN marking for qos-group6"; + } + leaf qosGroup7 { + type boolean; + description "Enable queue based ECN marking for qos-group7"; + } + } - // Type is an MO-Defined-Type - type eqpt_ModVid; + grouping platform_RateLimiter-group { + description "Rate Limiter container for the platform entity "; + leaf rate { + type uint32 { + range "0..100000000"; + } + description "rate value in kbit per sec"; } + leaf module { + type uint32; + description "module number for which rate is being configured"; + } + } - // Information about each card firmware - container running-items { + grouping platform_TcamTemplate-group { + description "Manages the user defined tcam template"; - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + leaf name { + + type platform_TcamTemplateName; + description "Name of the user-defined tcam template"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + leaf refTemplate { - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type platform_RefTemplate; + description "Select a default template as reference"; } + } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + grouping platform_BdEntity-group { + description "Bridge domain"; + leaf descr { + config "false"; + type string; + description "Bridge Domain description"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { - config "false"; - key "id"; + // Layer2 Bridge-domain + container bd-items { + list Bd-list { + key "fabEncap"; - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; + uses platform_Bd-group; + description "vlan object list"; } + description "vlan object"; } + } - // External management port - container mgmt-items { - list MgmtP-list { - config "false"; - key "id"; + grouping platform_Bd-group { + description "vlan object"; + leaf fabEncap { + type string; + description "Fabric Encapsulation for Bridge Domain"; + } + } - // Added containment: Prefix=mgmt - // Acquired From Package eqpt - uses eqpt_MgmtP-group; - } + grouping platform_Intf-group { + description "Interface"; + leaf descr { + config "false"; + type string; + description "Interface platform data"; } - // External (debug) console port - container console-items { - list ConsP-list { - config "false"; + // This object holds platfrom information at an + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=console - // Acquired From Package eqpt - uses eqpt_ConsP-group; + uses platform_If-group; + description "Platform data per interface list"; } + description "Platform data per interface"; } + } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; - - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + grouping platform_If-group { + description "Platform data per interface"; + leaf stormCtrlCpuArp { + type uint16 { + range "0..40000"; } + default "0"; + description "set arp traffic rate on this interface"; } - // Sprom Supervisor - container spsup-items { + leaf name { - // Added containment as a singleton: Prefix=spsup - // Acquired From Package eqpt - uses eqpt_SpromSup-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + leaf descr { - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + type naming_Descr1024; + description "Description"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + container mcast-items { - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + uses platform_Multicast-group; + description "Multicast Slow Receive"; } - // Flash memory unit - container flash-items { + container eltmIf-items { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + uses eltm_If-group; + description "Eltm Interface"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping firmware_CardRunning-group { + grouping platform_Multicast-group { + description "Multicast Slow Receive"; - // Bios version - // Type is an MO-Defined-Type - leaf biosVer { - config "false"; - description "A property that indicates Loader Version"; + leaf mcastSlowRcv { - // Type is an MO-Defined-Type - type cap_Version; + type platform_mcastSlowRcvState; + description "mcast slow-receiver port"; } + } - // Expected Component version - // Type is an MO-Defined-Type - leaf expectedVer { + grouping eltm_If-group { + description "Eltm Interface"; + + // hw bd id (allocated for l3 ports, port-channels) + leaf hwBdId { config "false"; - description "A property that indicates Expected Loader Version"; - // Type is an MO-Defined-Type - type cap_Version; + type l2_DomOperId; + description "Hw Bd Id (allocated for L3 Ports, Port-channels)"; } + } - // running version Operational State - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "A property that indicates Operational State"; + grouping platform_LogLevel-group { + description "Config Platform logging level"; - // Type is an MO-Defined-Type - type firmware_RunningOperSt; + // logging leve + leaf loggingLevel { + + type platform_LoggingLevel; + description "Logging Level"; } - // Interim version - // Type is an MO-Defined-Type - leaf interimVer { + // logging type + leaf loggingType { config "false"; - description "A property that indicates Interim Version"; - // Type is an MO-Defined-Type - type cap_Version; + type platform_LoggingType; + description "Logging type"; } + } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + grouping platform_PoweroffEntity-group { + description "Poweroff Module Config"; + leaf descr { config "false"; - description "Version"; + type string; + description "Poweroff config description"; + } + container poweroffModule-items { + list PoweroffModule-list { + key "id"; - // Type is an MO-Defined-Type - type cap_Version; + uses platform_PoweroffModule-group; + description "MO to hold config for all powered off modules list"; + } + description "MO to hold config for all powered off modules"; } - leaf internalLabel { - config "false"; - type string; + } + + grouping platform_PoweroffModule-group { + description "MO to hold config for all powered off modules"; + + leaf id { + + type platform_moduleNumberSt; + description "Module identifier for power off property"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf poweroffStatus { - // Type is an MO-Defined-Type - type firmware_Type; + type platform_poweroffSt; + description "Power off config state for the module [yes/no]"; } + } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + grouping platform_SysMemTh-group { + description "System Memory Threshold"; - // Type is an MO-Defined-Type - type firmware_RunningMode; + // Minor System Memory Threshold + leaf memThMinor { + + type platform_SysMemThVal; + description "Minor System Memory Threshold"; } - leaf ts { - config "false"; - type string; + + // Severe System Memory Threshold + leaf memThSevere { + + type platform_SysMemThVal; + description "Severe System Memory Threshold"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Critical System Memory Threshold + leaf memThCritical { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_SysMemThVal; + description "Critical System Memory Threshold"; } } - grouping eqpt_Ejec-group { + grouping platform_TcamRegion-group { + description "Tcam region type"; - // Status of ejector - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf ingFlowRedirectSize { - // Type is an MO-Defined-Type - type eqpt_EjSt; + type platform_tcamRegionSize; + description "Size of Egress region in ACX"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Ejec->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf eRaclSize { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..2"; - } + type platform_tcamRegionSize; + description "Egress RACL TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf vpcConvergenceSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "VPC TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf raclLiteSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "RACL TCAM region size"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf ipv6IfaclSize { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_tcamRegionSize; + description "IPv6 Interface ACL TCAM region size"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf eIpv6RaclSize { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_tcamRegionSize; + description "Egress IPv6 RACL TCAM region size"; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + leaf ifaclLiteSize { + + type platform_tcamRegionSize; + description "Interface ACL Lite TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf vaclSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "Virtual ACL TCAM region size"; } - } - grouping eqpt_EobcP-group { + leaf ifaclSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "Interface ACL TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf eVaclSize { + + type platform_tcamRegionSize; + description "Egress VACL TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf qosSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "QOS TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf raclSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "RACL TCAM region size"; } - } - grouping eqpt_EpcP-group { + leaf ingFlowSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_flowTcamRegionSize; + description "Ingress Flow TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf natSize { + + type platform_tcamRegionSize; + description "NAT TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf tcpNatSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_TcpNatTcamRegionSize; + description "TCP NAT TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf macIfaclSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "MAC Interface ACL TCAM region size"; } - } - grouping eqpt_MgmtP-group { + leaf eQosSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "Egress Qos TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf eIpv6QosSize { + + type platform_tcamRegionSize; + description "Egress IPV6 Qos TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf eMacQosSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "Egress Mac Qos TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf eQosLiteSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "Egress Qos Lite TCAM region size"; } - } - grouping eqpt_ConsP-group { + leaf ipsgSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "IPSG TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf ipv6QosSize { + + type platform_tcamRegionSize; + description "IPV6 QoS TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf ipv6RaclSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "IPV6 RACL TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf mcastBidirSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "MCAST BIDIR TCAM region size"; } - } - grouping eqpt_Sensor-group { + leaf macVqosSize { - // Type of the sensor - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The equipment sensor type"; + type platform_tcamRegionSize; + description "MAC VLAN QoS TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_SensorT; + leaf fcoeIngressSize { + + type platform_tcamRegionSize; + description "Ingress FCoE Counters size"; } - // Major threshold - // Type is an MO-Defined-Type - leaf majorThresh { - config "false"; - description "The equipment sensor major threshold"; + leaf fcoeEgressSize { - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type platform_tcamRegionSize; + description "Egress FCoE Counters size"; } - // Minor threshold - // Type is an MO-Defined-Type - leaf minorThresh { - config "false"; - description "The equipment sensor minor threshold"; + leaf ifaclUdfSize { - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type platform_tcamRegionSize; + description "IPV4 IFACL SPAN UDF size"; } - // oper state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The equipment sensor operational status"; + leaf ipv6L3qosSize { - // Type is an MO-Defined-Type - type eqpt_SensorOpSt; + type platform_tcamRegionSize; + description "IPV6 L3 QoS TCAM region size"; } - // Temperature Value - // Type is an MO-Defined-Type - leaf tempValue { - config "false"; - description "The equipment sensor temperature value"; + leaf ipv6VaclSize { - // Type is an MO-Defined-Type - type eqpt_TempValue; + type platform_tcamRegionSize; + description "IPV6 VACL TCAM region size"; } - leaf unit { - config "false"; - type string; + + leaf ipv6VqosSize { + + type platform_tcamRegionSize; + description "IPV6 VLAN QoS TCAM region size"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sensor->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The equipment sensor identifier"; + leaf macL3qosSize { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..32"; - } + type platform_tcamRegionSize; + description "MAC L3 QoS TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf macQosSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "MAC QoS TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf macVaclSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "MAC VACL TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf mplsSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "MPLS TCAM region size"; } - } - grouping eqpt_SpromSup-group { + leaf openflowSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The sprom identifier"; + type platform_tcamRegionSize; + description "OPENFLOW TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + leaf openflowLiteSize { + + type platform_tcamRegionSize; + description "OPENFLOW Lite TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf qosIntraLiteSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "QoS Intra Lite TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf raclUdfSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "IPV4 RACL SPAN UDF TCAM region size"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf vaclLiteSize { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_tcamRegionSize; + description "VACL Lite TCAM region size"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf vqosSize { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_tcamRegionSize; + description "VLAN QoS TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf vqosIntraLiteSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "VLAN QoS Intra Lite TCAM region size"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The memory type"; + leaf vxlanp2pSize { - // Type is an MO-Defined-Type - type eqpt_MemT; + type platform_tcamRegionSize; + description "VXLAN P2P TCAM region size"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The memory capacity"; + leaf coppSize { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type platform_tcamRegionSize; + description "Ingress Copp TCAM region size"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { - config "false"; - description "The memory access type"; + leaf coppSystemSize { - // Type is an MO-Defined-Type - type eqpt_Acc; + type platform_tcamRegionSize; + description "Copp System TCAM region size"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The memory operational status"; + leaf l3qosIntraLiteSize { - // Type is an MO-Defined-Type - type eqpt_OpSt; + type platform_tcamRegionSize; + description "L3 QoS Intra Lite TCAM region size"; } - leaf numBlk { - config "false"; - type uint16; + + leaf sviSize { + + type platform_tcamRegionSize; + description "Ingress SVI Counters TCAM region size"; } - // sprom Common Block - container spcmn-items { + leaf arpaclSize { - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type platform_tcamRegionSize; + description "ARP ACL TCAM region size"; } - // Sprom Supervisor block - container spsupblk-items { + leaf pbrSize { - // Added containment as a singleton: Prefix=spsupblk - // Acquired From Package eqpt - uses eqpt_SpromSupBlk-group; + type platform_tcamRegionSize; + description "IPV4 PBR TCAM region size"; } - // sprom Port Data Interface - container sppd-items { + leaf ipv6PbrSize { - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + type platform_tcamRegionSize; + description "IPV6 PBR TCAM region size"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + leaf supSize { - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + type platform_tcamRegionSize; + description "SUP TCAM region size"; } - // Sprom Sensor block - container spsensorblk-items { + leaf qoslblSize { - // Added containment as a singleton: Prefix=spsensorblk - // Acquired From Package eqpt - uses eqpt_SpSensorBlk-group; + type platform_tcamRegionSize; + description "Qos Label TCAM region size"; } - } - grouping eqpt_SpCmnBlk-group { - leaf size { - config "false"; - type uint16; + leaf ipv6SpanSize { + + type platform_tcamRegionSize; + description "IPV6 SPAN TCAM region size"; } - leaf count { - config "false"; - type uint16; + + leaf ipv6SpanL2Size { + + type platform_tcamRegionSize; + description "IPV6 L2 SPAN TCAM region size"; } - leaf major { - config "false"; - type uint16; + + leaf ipv6SupSize { + + type platform_tcamRegionSize; + description "IPV6 SUP TCAM region size"; } - leaf minor { - config "false"; - type uint16; + + leaf fhsSize { + + type platform_tcamRegionSize; + description "FHS TCAM region size"; } - leaf oem { - config "false"; - type string; + + leaf n9kArpaclSize { + + type platform_tcamRegionSize; + description "n9k-arp-acl TCAM region size"; } - leaf pdNum { - config "false"; - type string; + leaf mplsDoublewide { + type boolean; + description "MPLS double-wide TCAM region"; } - leaf serNum { - config "false"; - type string; + leaf openflowDoublewide { + type boolean; + description "Openflow double-wide TCAM region"; } - leaf prtNum { + + leaf cfgFault { config "false"; - type string; + + type platform_TcamRegionCfgFault; + description "TcamRegion carving fault"; } - leaf pRev { + leaf cfgFaultMsg { config "false"; - type string; + type string { + length "1..2048"; + } + description "TcamRegion carving fault message"; } - leaf mfgDev { + + leaf cfgFaultBmp { config "false"; - type string; + + type platform_TcamRegionCfgFaultBmp; + description "TCAM region config fault bit map"; } - leaf hwVer { + leaf reinitDefaults { config "false"; - type string; + type boolean; + description "Re-initializing default values"; } - leaf mfgBits { - config "false"; - type uint16; + + // WARNING: MO Type "base:Uint32Array128" is unknown in the source model + /* + property { + MTEPKG platform; + MTEMO TcamRegion; + MTESRC /dev/shm/irvine/REL_9_3_2_83/app_bi/model/specific/mo/switch/platform/pltfm/tcam_region.xml; + name tcamRegionSizesArray0To127; + type base:Uint32Array128; + mod implicit; + owner oper; + label Tcam Region Sizes of regions 0-127 to be sent from backend(pltfm_config) to frontend; } - leaf engBits { - config "false"; - type uint16; + */ + + + // WARNING: MO Type "base:Uint32Array128" is unknown in the source model + /* + property { + MTEPKG platform; + MTEMO TcamRegion; + MTESRC /dev/shm/irvine/REL_9_3_2_83/app_bi/model/specific/mo/switch/platform/pltfm/tcam_region.xml; + name tcamRegionSizesArray128To255; + type base:Uint32Array128; + mod implicit; + owner oper; + label Tcam Region Sizes of regions 128-255 to be sent from backend(pltfm_config) to frontend; } - leaf pwrCon { - config "false"; - type int16; + */ + + } + + grouping platform_LatencyMonitor-group { + description "Latency Monitor Property"; + + // description + leaf sampling { + + type platform_latencyMonitorSampling; + description "Latency Monitor Sampling"; } - leaf rmaFl { - config "false"; - type string; + + leaf latencyMonitorThreshholdAvg { + + type platform_latencyMonitorThreshholdAv; + description "Average latency monitor threshold"; } - leaf clei { - config "false"; - type string; + + leaf latencyMonitorThreshholdMax { + + type platform_latencyMonitorThreshholdMx; + description "Maximum latency monitor threshold"; } - leaf vdrId { - config "false"; - type string; + + leaf latencyMonitorState { + + type platform_latencyMonitorSt; + description "Latency monitor state"; } - leaf sig { - config "false"; - type uint16; + } + + grouping platform_BufferMonitor-group { + description "Buffer Monitor Property"; + + // description + leaf sampling { + + type platform_bufferMonitorSampling; + description "Buffer Monitor Sampling"; } - leaf ver { - config "false"; - type uint16; + + leaf bufferMonitorThreshhold { + + type platform_bufferMonitorThreshhold; + description "Buffer monitor threshold"; } - leaf len { - config "false"; - type uint16; + + leaf bufferMonitorState { + + type platform_bufferMonitorSt; + description "Buffer monitor state"; } - leaf cksum { - config "false"; - type uint16; + + leaf bufferMonitorMode { + + type platform_bufferMonitorMd; + description "Buffer monitor mode"; } } - grouping eqpt_SpromSupBlk-group { - leaf fbits { - config "false"; - type uint64; + grouping platform_PfcMmuBuffer-group { + description "Pfc mmu buffer Property"; + + // description + leaf mmuBufferState { + + type platform_pfcMmuBufferSt; + description "Pfc Buffer monitor state"; } - leaf hwCBits { - config "false"; - type uint64; + + leaf bufferReservation { + + type platform_pfcMmuBufferRes; + description "Percentage of shared pool buffers to be reserved"; } - leaf crdIdx { + + leaf cfgFault { config "false"; - type uint16; + + type platform_pfcMmuCfgFault; + description "Fault handling for pfc mmu buffer config"; } - leaf macB { - config "false"; + } + + grouping platform_UdfEntity-group { + description "UdfEntity"; + leaf descr { type string; + description "UdfEntity Description"; } - leaf macL { - config "false"; - type uint16; - } - leaf eobcN { - config "false"; - type uint16; + container udf-items { + list Udf-list { + key "name"; + + uses platform_Udf-group; + description "Udf list"; + } + description "Udf"; } - leaf epldN { - config "false"; - type uint16; + } + + grouping platform_Udf-group { + description "Udf"; + leaf name { + type string { + length "1..16"; + } + description "Udf Name"; } - leaf maxCPwr { - config "false"; - type uint16; + + leaf offsetBase { + + type platform_UdfOffsetBase; + description "Offset Base"; } - leaf coolRq { - config "false"; - type uint16; + leaf offsetPosition { + type uint8 { + range "0..127"; + } + description "offsetPosition from base 0-127"; } - leaf ambT { - config "false"; - type uint16; + leaf offsetLength { + type uint8 { + range "1..2"; + } + description "offsetLength 1-2"; } - leaf sensor1 { - config "false"; - type string; + leaf qualifySpan { + type boolean; + default "false"; + description "qualifySpan"; } - leaf sensor2 { - config "false"; - type string; + leaf qualifySpanV6 { + type boolean; + default "false"; + description "qualifySpanV6"; } - leaf sensor3 { - config "false"; - type string; + leaf qualifySpanV6L2 { + type boolean; + default "false"; + description "qualifySpanV6L2"; } - leaf sensor4 { - config "false"; - type string; + leaf qualifyIfacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for IFACL region"; } - leaf sensor5 { - config "false"; - type string; + leaf qualifyRacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for RACL region"; } - leaf sensor6 { - config "false"; - type string; + leaf qualifyVacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for VACL region"; } - leaf sensor7 { + + // Fault handling related + leaf cfgFault { config "false"; - type string; + + type platform_UdfCfgFault; + description "cfgFault"; } - leaf sensor8 { + } + + grouping satm_Entity-group { + description "Satellite Manager Entity"; + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf sig { + + // - Admin state + leaf adminSt { config "false"; - type uint16; + + type nw_AdminSt; + description "Admin State"; } - leaf ver { + + // Operational state + leaf operSt { config "false"; - type uint16; + + type nw_EntOperSt; + description "Operational State"; } - leaf len { - config "false"; - type uint16; + + // Discovered extended chassis + container dextch-items { + list DExtCh-list { + config "false"; + key "vendor model ser"; + + uses satm_DExtCh-group; + description "Discovered Extended Chassis list"; + } + description "Discovered Extended Chassis"; } - leaf cksum { - config "false"; - type uint16; + + // Configure FEX + container fex-items { + list Fex-list { + key "id"; + + uses satm_Fex-group; + description "FEX Configuration list"; + } + description "FEX Configuration"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { + // Fabric port definition + container fabp-items { + list FabP-list { config "false"; key "id"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; + uses satm_FabP-group; + description "Fabric Port list"; } + description "Fabric Port"; } + } - // sprom Port Data Interface - container sppd-items { + grouping satm_DExtCh-group { + description "Discovered Extended Chassis"; - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Operational state + leaf operSt { + config "false"; + + type satm_ExtChOperSt; + description "Operational State"; } - } - grouping eqpt_SpSd-group { + // Extended chassis software version + leaf ver { + config "false"; - // Major Threshold - // Type is an MO-Defined-Type - leaf majTh { + type cap_Version; + description "Software Version"; + } + + // Switch software version + leaf swVer { config "false"; - description "The sensor data sprom major threshold"; - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type cap_Version; + description "Switch Software Version"; } - // Minor Threshold - // Type is an MO-Defined-Type - leaf minTh { + // Interim extended chassis software version + leaf intVer { config "false"; - description "The sensor data sprom minor threshold"; - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type cap_Version; + description "Interim Software Version"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Interim switch software version + leaf swIntVer { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type cap_Version; + description "Interim Switch Software Version"; + } + + // Extended chassis software generation + leaf swGen { + config "false"; + + type satm_SwGen; + description "Software Generation"; + } + + // Control channel fabric port + leaf controlFPort { + config "false"; + + type nw_IfId; + description "Control Channel Fabric Port"; } // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf vendor { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type type eqpt_Vendor; + description "Vendor"; } // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf model { config "false"; - description "Model"; - // Type is an MO-Defined-Type type eqpt_Model; + description "Model"; } // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf rev { config "false"; - description "Revision"; - // Type is an MO-Defined-Type type eqpt_Revision; + description "Revision"; } // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf ser { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type type eqpt_Serial; + description "Serial Number"; } - leaf mfgTm { + + // Identifier for the item + leaf id { config "false"; - type string; - default "0"; + + type eqpt_Id { + range "101..199"; + } + description "ID"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } - grouping eqpt_SpPd-group { - leaf prtTy { + grouping satm_Fex-group { + description "FEX Configuration"; + leaf id { + type uint32 { + range "101..199"; + } + description "FEX number"; + } + leaf descr { + type string { + length "0..22"; + } + description "FEX description"; + } + leaf serialNumber { + type string { + length "0..20"; + } + description "Chassis serial number"; + } + } + + grouping satm_FabP-group { + description "Fabric Port"; + + // Interface ID of port + leaf id { config "false"; - type uint16; + + type nw_IfId; + description "ID"; } - leaf numPts { + + // Fabric port operational state + leaf operSt { + config "false"; + + type satm_OperSt; + description "Operational State"; + } + + // Extended chassis id + leaf extChId { + config "false"; + + type eqpt_ExtChId; + description "Extended Chassis ID"; + } + + // Fabric port FSM state + leaf fsmSt { + config "false"; + + type satm_FpFsmSt; + description "Fabric FSM State"; + } + leaf remoteLinkId { config "false"; type uint16; + description "Remote Link ID of the Fabric Port"; } - } - grouping eqpt_SpSensorBlk-group { - leaf sensor9 { + // Fabric port flags + leaf flags { config "false"; - type string; + + type satm_FportFlags; + description "Fabric Port Flags"; } - leaf sensor10 { + + // Satellite manager host port + container hostp-items { + list HostP-list { + config "false"; + key "id"; + + uses satm_HostP-group; + description "Host Port list"; + } + description "Host Port"; + } + + // Remote fcot definition + container remotefcot-items { + + uses satm_RemoteFcot-group; + description "Remote Fcot"; + } + + // Remote X2 fcot definition + container remotefcotx2-items { + + uses satm_RemoteFcotX2-group; + description "Remote X2 Fcot"; + } + } + + grouping satm_HostP-group { + description "Host Port"; + + // Interface ID of port + leaf id { config "false"; - type string; + + type nw_IfId; + description "ID"; } - leaf sensor11 { + + // Operational state + leaf operSt { config "false"; - type string; + + type satm_HpOperSt; + description "Operational State"; } - leaf sensor12 { + + // Fabric port + leaf fabricPort { config "false"; - type string; + + type nw_IfId; + description "Fabric Port"; } - leaf sensor13 { + } + + grouping satm_RemoteFcot-group { + description "Remote Fcot"; + leaf isFcotPresent { config "false"; - type string; + type boolean; + description "Presence Status"; } - leaf sensor14 { + + // Fcot state + leaf state { config "false"; - type string; + + type ethpm_FcotState; + description "State"; } - leaf sensor15 { + + // Fcot flags + leaf flags { config "false"; - type string; + + type ethpm_FcotFlags; + description "Flags"; } - leaf sensor16 { + + // Fcot type + leaf type { config "false"; - type string; + + type ethpm_FcotType; + description "Type"; } - leaf sensor17 { + leaf typeName { config "false"; type string; + description "Type Name"; } - leaf sensor18 { + leaf xcvrId { config "false"; - type string; + type uint8; + description "Transceiver ID"; } - leaf sensor19 { + leaf xcvrExtId { config "false"; - type string; + type uint8; + description "Transceiver Extended ID"; } - leaf sensor20 { + leaf connectType { config "false"; - type string; + type uint8; + description "Connector Type"; } - leaf sensor21 { + + // Xcvr code field + leaf xcvrCode { config "false"; - type string; + + type ethpm_SfpXcvrCodeBytes; + description "Transceiver Code"; } - leaf sensor22 { + leaf encoding { config "false"; - type string; + type uint8; + description "Encoding"; } - leaf sensor23 { + leaf brIn100MHz { config "false"; - type string; + type uint8; + description "Baud Rate"; } - leaf sensor24 { + leaf baseResvd1 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor25 { + leaf distInKmFor9u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor26 { + leaf distIn100mFor9u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor27 { + leaf distIn10mFor50u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor28 { + leaf distIn10mFor60u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor29 { + leaf distIn1mForCu { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor30 { + leaf baseResvd2 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor31 { + leaf vendorName { config "false"; type string; + description "Vendor Name"; } - leaf sensor32 { + leaf baseResvd3 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor33 { + leaf vendorPn { config "false"; type string; + description "Vendor Part Number"; } - leaf sensor34 { + leaf vendorRev { config "false"; type string; + description "Vendor Revision"; } - leaf sensor35 { + + // Reserved field 4 + leaf baseResvd4 { config "false"; - type string; + + type ethpm_SfpReserved4Array; + description "Base Reserved Field"; } - leaf sensor36 { + leaf ccid { config "false"; - type string; + type uint8; + description "CCID"; } - leaf sensor37 { + + // Extended option + leaf extOption { config "false"; - type string; + + type ethpm_SfpExtendedOptionBytes; + description "Extended Option"; } - leaf sensor38 { + leaf brMaxMargin { config "false"; - type string; + type uint8; + description "Baud Rate Maximum Margin"; } - leaf sensor39 { + leaf brMinMargin { config "false"; - type string; + type uint8; + description "Baud Rate Minimum Margin"; } - leaf sensor40 { + leaf vendorSn { config "false"; type string; } - leaf sig { + leaf dateCode { config "false"; - type uint16; + type string; } - leaf ver { + leaf diagMonType { config "false"; - type uint16; + type uint8; } - leaf len { + leaf enhOption { config "false"; - type uint16; + type uint8; } - leaf cksum { + leaf ccex { config "false"; - type uint16; + type uint8; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + // Vendor data + leaf vendorData { + config "false"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + type ethpm_X2VendorDataBytes; + description "TBD"; } - } - - grouping eqpt_Asic-group { - - // Type of asic - // Type is an MO-Defined-Type - leaf type { + leaf maxSpeed { config "false"; - description "The Asic type"; - - // Type is an MO-Defined-Type - type eqpt_AsicT; + type uint32; } - - // Asic status - // Type is an MO-Defined-Type - leaf operSt { + leaf minSpeed { config "false"; - description "The Asic operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint32; } - - // Asic numSlices - // Type is an MO-Defined-Type - leaf numSlices { + leaf fcotNum { config "false"; - description "The number of slices in this Asic"; - - // Type is an MO-Defined-Type - type eqpt_AsicNumSlices; + type uint8; } - - // Asic Capability - // Type is an MO-Defined-Type - leaf capabilities { + leaf gigEthCC { config "false"; - description "The Asic capabilities"; - - // Type is an MO-Defined-Type - type eqpt_AsicCapability; + type uint8; } - - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Asic->id - // Type is an MO-Defined-Type - leaf id { + leaf fCTxType { config "false"; - description "The Asic identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type uint8; } + } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + grouping satm_RemoteFcotX2-group { + description "Remote X2 Fcot"; + leaf isFcotPresent { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type boolean; + description "Presence Status"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Fcot state + leaf state { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type ethpm_FcotState; + description "State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Fcot flags + leaf flags { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type ethpm_FcotFlags; + description "Flags"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Fcot type + leaf type { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type ethpm_FcotType; + description "Type"; } - leaf mfgTm { + leaf typeName { config "false"; type string; - default "0"; - } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Type Name"; } - } - - grouping eqpt_CPU-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ACPU->id - // Type is an MO-Defined-Type - leaf id { + leaf connectType { config "false"; - description "The CPU identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1"; - } + type uint8; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + leaf bitEncoding { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint8; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Bit rate (Mbps) + leaf bitRateMbps { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type ethpm_X2BitRateBytes; + description "TBD"; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf protocolType { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint8; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // 10G eth code + leaf xgEthCode { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { - config "false"; - type string; - default "0"; + type ethpm_X2XgEthCodeBytes; + description "TBD"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Sonet SDH code + leaf sonetSdhCode { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ethpm_X2SonetSdhCodeBytes; + description "TBD"; } - // Socket designation - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf sock { + // 10G fc code + leaf xgFcCode { config "false"; - description "The CPU socket designation"; - // Type is an MO-Defined-Type - type eqpt_Sock; + type ethpm_X2XbFcCodeBytes; + description "TBD"; } - // Architecture of the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf arch { + // Range + leaf range { config "false"; - description "The CPU architecture"; - // Type is a Local-MO-Defined-Type - type eqpt_Arch_CPU_arch; + type ethpm_X2RangeBytes; + description "TBD"; } - // CPU speed - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf speed { + // Fibre type + leaf fibreType { config "false"; - description "The CPU Speed in Giga Hz"; - // Type is an MO-Defined-Type - type eqpt_Speed; + type ethpm_X2FibreTypeBytes; + description "TBD"; } - // Number of cores on the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf cores { + // Wavelength channel 0 + leaf waveLenCh0 { config "false"; - description "The number of cores within the CPU"; - // Type is an MO-Defined-Type - type eqpt_Cores; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - // Number of cores enabled on the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf coresEn { - config "false"; - description "The number of cores enabled within the CPU"; - - // Type is an MO-Defined-Type - type eqpt_Cores; - } - leaf thrds { + // Wavelength channel 1 + leaf waveLenCh1 { config "false"; - type uint16; - } - container core-items { - list Core-list { - config "false"; - key "id"; - // Added containment: Prefix=core - // Acquired From Package eqpt - uses eqpt_Core-group; - } + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - } - grouping eqpt_Core-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Wavelength channel 2 + leaf waveLenCh2 { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Wavelength channel 3 + leaf waveLenCh3 { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + leaf vendorName { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type string; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf vendorPn { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type string; } - - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + leaf vendorRev { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type string; } - leaf mfgTm { + leaf vendorSerNo { config "false"; type string; - default "0"; } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + leaf dateCode { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; } - } - - grouping eqpt_Dimm-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + leaf fiveVStressEnv { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint8; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + leaf ciscoPid { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type string; } - - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + leaf ciscoVid { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type string; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf ciscoSN { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type string; } - - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + leaf ciscoPN { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type string; } - leaf mfgTm { + leaf ciscoRev { config "false"; type string; - default "0"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Extended vendor specific info + leaf extVendorSpecific { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ethpm_X2ExtendedVendorSpecificInfoBytes; + description "TBD"; } - - // Type of the memory - // Inherited From eqpt:Mem - // Modified by Override: eqpt:Dimm->type - // Type is an MO-Defined-Type - leaf type { + leaf maxSpeed { config "false"; - description "The dual in-line memory module(DIMM) type"; - - // Type is an MO-Defined-Type - type eqpt_MemT; + type uint32; } - - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + leaf minSpeed { config "false"; - description "The memory capacity"; - - // Type is an MO-Defined-Type - type eqpt_Capacity; + type uint32; } - - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + leaf fcotNum { config "false"; - description "The memory access type"; - - // Type is an MO-Defined-Type - type eqpt_Acc; + type uint8; } - - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + leaf fcotType { config "false"; - description "The memory operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; } } - grouping eqpt_Flash-group { + grouping adjacency_Entity-group { + description "Adjacency Entity"; - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_AdminSt; + description "Admin State"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Operational state + leaf operSt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_EntOperSt; + description "Operational State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + container inst-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses adjacency_Inst-group; + description "Adjacency Instance"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping adjacency_Inst-group { + description "Adjacency Instance"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { + leaf name { config "false"; - type string; - default "0"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Administrative state + leaf adminSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Type of the memory - // Inherited From eqpt:Mem - // Modified by Override: eqpt:Flash->type - // Type is an MO-Defined-Type - leaf type { + // Instance controls + leaf ctrl { config "false"; - description "The flash memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_InstCtrl; + description "Controls"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The memory capacity"; + // Ephemeral data + container dom-items { - // Type is an MO-Defined-Type - type eqpt_Capacity; + // Ephemeral data + list Dom-list { + config "false"; + key "name"; + + uses adjacency_Dom-group; + description "Adjacency Domain list"; + } + description "Adjacency Domain"; } + } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + grouping adjacency_Dom-group { + description "Adjacency Domain"; + + // Ephemeral data + leaf name { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The memory operational status"; + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses adjacency_Db-group; + description "Database list"; + } + description "Database"; } } - grouping eqpt_Obfl-group { + grouping adjacency_Db-group { + description "Database"; - // Set the obfl log parameters - // Type is an MO-Defined-Type - leaf logT { + // Ephemeral data + leaf type { config "false"; - description "Log Type"; - // Type is an MO-Defined-Type - type eqpt_LogType; + type adjacency_DbT; + description "Type"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf name { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // Ephemeral data + container if-items { - // Type is an MO-Defined-Type - type eqpt_Vendor; + // Ephemeral data + list If-list { + config "false"; + key "ifId"; + + uses adjacency_If-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Ephemeral data + container subnetprefix-items { - // Type is an MO-Defined-Type - type eqpt_Model; + uses adjacency_SubnetPrefix-group; + description "Subnet Prefix"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // Ephemeral data + container aggrprefix-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses adjacency_AggregatePrefix-group; + description "Aggregate Prefix"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping adjacency_If-group { + description "Adjacency Interface"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { + // Ephemeral data + leaf ifId { config "false"; - type string; - default "0"; + + type nw_IfId; + description "Logical Interface ID"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Ephemeral data + container ip-items { - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + list AdjEp-list { + config "false"; + key "ip"; + + uses adjacency_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } } - grouping eqpt_LCSlot-group { - leaf purgeCfg { + grouping adjacency_AdjEp-group { + description "Adjacency"; + leaf ip { config "false"; - type boolean; + type address_Ip; + description "Address"; } - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { + // Ephemeral data + leaf mac { config "false"; - description "Poweroff Config"; - - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + type address_Mac; + description "MAC"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf operSt { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type adjacency_AdjOperSt; + description "Operational State"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf physIfId { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Physical Interface ID"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf source { config "false"; - description "The physical slot identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type string; + description "Source"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:LCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Flags that this ep has + // Ephemeral data + leaf flags { config "false"; - description "The type of line card slot"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type adjacency_AdjFlags; + description "Flags"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + grouping adjacency_SubnetPrefix-group { + description "Subnet Prefix"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + // Ephemeral data + container if-items { + + // Ephemeral data + list IfSubnetPrfx-list { + config "false"; + key "ifId"; + + uses adjacency_IfSubnetPrfx-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } + } - // Line Card (IO card), containing io ports - container lc-items { + grouping adjacency_IfSubnetPrfx-group { + description "Adjacency Interface"; - // Added containment as a singleton: Prefix=lc - // Acquired From Package eqpt - uses eqpt_LC-group; + // Ephemeral data + leaf ifId { + config "false"; + + type nw_IfId; + description "Logical Interface ID"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - container rtoosSlot-items { + // Ephemeral data + container ip-items { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + list SubPrfxEp-list { + config "false"; + key "ip"; + + uses adjacency_SubPrfxEp-group; + description "Subnet Prefix list"; + } + description "Subnet Prefix"; } } - // Has Polymorphic containment of abstract object eqpt:IoP - grouping eqpt_LC-group { - leaf breakoutFactor { + grouping adjacency_SubPrfxEp-group { + description "Subnet Prefix"; + leaf ip { config "false"; - type uint32; - default "1"; + type address_Ip; + description "Address"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf aggLen { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "Aggregate Length"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf nhCount { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "nh count"; } + } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + grouping adjacency_AggregatePrefix-group { + description "Aggregate Prefix"; - // Type is an MO-Defined-Type - type eqpt_Model; + // Ephemeral data + container if-items { + + // Ephemeral data + list IfAggrPrfx-list { + config "false"; + key "ifId"; + + uses adjacency_IfAggrPrfx-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } + } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + grouping adjacency_IfAggrPrfx-group { + description "Adjacency Interface"; + + // Ephemeral data + leaf ifId { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_IfId; + description "Logical Interface ID"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + // Ephemeral data + container ip-items { - // Type is an MO-Defined-Type - type eqpt_Serial; + // Ephemeral data + list AggrPrfxEp-list { + config "false"; + key "ip"; + + uses adjacency_AggrPrfxEp-group; + description "Subnet Prefix list"; + } + description "Subnet Prefix"; } - leaf mfgTm { + } + + grouping adjacency_AggrPrfxEp-group { + description "Subnet Prefix"; + leaf ip { config "false"; - type string; - default "0"; + type address_Ip; + description "Address"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf refCount { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Reference count"; } + } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; + grouping arp_Entity-group { + description "ARP Entity"; - // Type is an MO-Defined-Type - type cap_Version; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:LC->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_AdminSt; + description "Admin State"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "The card operational status"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + type nw_EntOperSt; + description "Operational State"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // This object holds per arp instance information. There is + // only one instance of arp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type eqpt_CardId; + uses arp_Inst-group; + description "ARP Instance"; } + } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + grouping arp_Inst-group { + description "ARP Instance"; - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Timeout + leaf timeout { + + type arp_Timeout; + description "ARP Global Timeout"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { - config "false"; - description "The card MAC address base"; + // Evpn-Timeout + leaf evpn_timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type arp_EvpnTimeout; + description "Refresh in EVPN on host moves"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // Suppression Timeout + leaf suppression_timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; - } - leaf upTs { - config "false"; - type string; + type arp_SuppressionTimeout; + description "Suppression Timeout"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + // Off list Timeout + leaf offListTimeout { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type arp_OffListTimeout; + description "Off-list timeout"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + // RARP fabric forwarding + leaf rarpFabricFwding { - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_AdminSt; + default "disabled"; + description "RARP Fabric Forwarding"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // RARP Fabric Fwding Rate + leaf rarpFabricFwdingRate { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type arp_RarpForwadingRate; + description "RARP Fabric Forwarding Rate"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // ARP Cache Limit + leaf cacheLimit { - // Type is an MO-Defined-Type - type eqpt_ModVid; + type arp_ArpCacheLimit; + description "Cache Limit"; } - // Information about each card firmware - container running-items { + // ARP Cache SysLog Rate + leaf cacheSyslogRate { - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + type arp_ArpCacheSyslogRate; + description "Cache Syslog Rate"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + // COS for ARP packet + leaf ipArpCos { - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type arp_IpArpCos; + description "COS for ARP packet"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; + // ARP Logging Level + leaf loggingLevel { - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + type arp_LoggingLevel; + description "Logging Level"; } - // Fabric facing external IO port - // Polymorphic containment of derivative object eqpt:FabP (from eqpt:IoP) - container fabport-items { + // Adjacency Manager Logging Level + leaf adjLoggingLevel { - // Abstract containment of eqpt:FabP derived from eqpt:IoP - list FabP-list { - config "false"; - key "id"; + type arp_LoggingLevel; + description "Adjacency Events Logging Level"; + } - // Added containment: Prefix=fabport - // Acquired From Package eqpt - uses eqpt_FabP-group; - } + leaf ipAdjRouteDistance { + + type arp_AdjRouteDist; + description "IP Adjacency Route Distance"; } - // Leaf (compute, WAN, services) facing external IO port - // Polymorphic containment of derivative object eqpt:LeafP (from eqpt:IoP) - container leafport-items { + // Enable / Disable allow-static-arp-outside-subnet + leaf allowStaticArpOutsideSubnet { - // Abstract containment of eqpt:LeafP derived from eqpt:IoP - list LeafP-list { - config "false"; - key "id"; + type nw_AdminSt; + default "disabled"; + description "Allow Static ARP Outside Subnet"; + } - // Added containment: Prefix=leafport - // Acquired From Package eqpt - uses eqpt_LeafP-group; - } + // Enable / Disable arp sw-replication + leaf arpUnnumSviSwReplication { + + type nw_AdminSt; + default "disabled"; + description "ARP Packets Replication In Software For Unnumbered SVI"; } - // Extension chassis port connected to hosts - // Polymorphic containment of derivative object eqpt:ExtChHP (from eqpt:IoP) - container hostextport-items { + // Config error in this MO + leaf configErr { + config "false"; - // Abstract containment of eqpt:ExtChHP derived from eqpt:IoP - list ExtChHP-list { - config "false"; - key "id"; + type arp_ConfigErrInst; + description "Config Error Inst"; + } - // Added containment: Prefix=hostextport - // Acquired From Package eqpt - uses eqpt_ExtChHP-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Extension chassis port connected to Leaf - // Polymorphic containment of derivative object eqpt:ExtChFP (from eqpt:IoP) - container leafextport-items { + // Administrative state + leaf adminSt { - // Abstract containment of eqpt:ExtChFP derived from eqpt:IoP - list ExtChFP-list { - config "false"; - key "id"; + type nw_AdminSt; + description "Admin State"; + } - // Added containment: Prefix=leafextport - // Acquired From Package eqpt - uses eqpt_ExtChFP-group; - } + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // Holds GlobalStats information + // Ephemeral data + container globalstats-items { - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + uses arp_GlobalStats-group; + description "Global Statistics"; } - // Sprom Linecard - container splc-items { + // This object holds the arp related statistics for L2 Interface + // Ephemeral data + container l2stats-items { - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + uses arp_L2Stats-group; + description "This Object Holds The ARP Related Statistics For L2 Interface"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // This object holds per ARP domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + uses arp_Dom-group; + description "This Object Holds Per ARP Domain (vrf) Information list"; } + description "This Object Holds Per ARP Domain (vrf) Information"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // IpV4 Glean throttling MO + container ipgleanthrottle-items { + + uses arp_Ipv4Throttle-group; + description "Ipv4 throttling"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + // This object holds the size of the Log Tables for + // various types of ARP events + container evtLogs-items { + list EventLogs-list { + key "eventType"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + uses arp_EventLogs-group; + description "ARP Event Logging list"; } + description "ARP Event Logging"; } - // Flash memory unit - container flash-items { + // This object holds IP ARP Sync for VPC + container vpc-items { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + uses arp_Vpc-group; + description "Ip Arp Synchronize"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Holds Suppression-cache table oper data + // Ephemeral data + container db-items { + + // Ephemeral data + list DbSupCache-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + uses arp_DbSupCache-group; + description " This Object Holds Suppression-Cache Database list"; + } + description " This Object Holds Suppression-Cache Database"; } } - grouping eqpt_FabP-group { + grouping arp_GlobalStats-group { + description "Global Statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf name { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Administrative state + // Ephemeral data + leaf adminSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Instance controls + // Ephemeral data + leaf ctrl { config "false"; - description "The port type"; - // Type is an MO-Defined-Type - type eqpt_PortT; + type nw_InstCtrl; + description "Controls"; } - leaf speed { - config "false"; - type uint64; + + // Holds controller-statistics information + // Ephemeral data + container controllerstats-items { + + uses arp_ControllerStats-group; + description "ARP Controller Statistics"; } - // ***************** MOs ******************* MO to send Adj info to dbgrelem from policyelem - container remotePort-items { - list RemotePort-list { - config "false"; - key "lldpAdjEpInstId"; + // Holds VPC related statistics information + // Ephemeral data + container vpcstats-items { - // Added containment: Prefix=remotePort - // Acquired From Package dbg - uses dbg_RemotePort-group; - } + uses arp_VpcStats-group; + description "ARP VPC statistics"; } - } - grouping dbg_RemotePort-group { + // Holds Tunnel statistics information + // Ephemeral data + container tunnelstats-items { - // Neighbor port description - // Type is an MO-Defined-Type - leaf remotePortDesc { - config "false"; - description "Description of the Remote Port"; + uses arp_TunnelStats-group; + description "ARP Tunnel statistics"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Holds Suppression-cache related statistics + // Ephemeral data + container supcachestats-items { + + uses arp_SupCacheStats-group; + description "ARP suppression cache statistics"; } - // Neighbor system description - // Type is an MO-Defined-Type - leaf remoteSysDesc { - config "false"; - description "Description of the Remote System"; + // Holds open-flow error statistics + // Ephemeral data + container ofastats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses arp_OfaStats-group; + description "ARP Open-flow Error statistics"; } - leaf remoteIp { + } + + grouping arp_ControllerStats-group { + description "ARP Controller Statistics"; + + // Ephemeral data + leaf adjAddCount { config "false"; - type address_Ip; + type uint64; + description "ARP Controller Adjacency Add Count"; } - // Local Interface ID of the port - // Type is an MO-Defined-Type - leaf LocalIfid { + // Ephemeral data + leaf adjDelCount { config "false"; - description "Interface ID of the Local Port"; + type uint64; + description "ARP Controller Adjacency Delete Count"; + } - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf adjAddErrorCount { + config "false"; + type uint64; + description "ARP Controller Adjacency Add Error Count"; } - leaf lldpAdjEpInstId { + + // Ephemeral data + leaf adjDelErrorCount { config "false"; - type string; + type uint64; + description "ARP Controller Adjacency Delete Error Count"; } } - grouping eqpt_LeafP-group { + grouping arp_VpcStats-group { + description "ARP VPC statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf cfsPullDropSinceOff { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type uint64; + description "CFS request dropped as feature is off"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cfsPushDropSinceOff { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "CFS push message drop as the feature is off"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf sendIgnorePullReqCfsoe { config "false"; - description "The port type"; + type uint64; + description "Ignore to send pull request using CFSoE as the feature is off"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf sendIgnorePushMsgCfsoe { + config "false"; + type uint64; + description "Ignore to send push message using CFSoE as the feature is off"; } - leaf speed { + + // Ephemeral data + leaf imFailCFSPayload { config "false"; type uint64; + description "IM api failed while processing CFS payload"; } - } - grouping eqpt_ExtChHP-group { + // Ephemeral data + leaf mcecmFailCFSPayload { + config "false"; + type uint64; + description "MCECM api failed while processing CFS payload"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf invalidMctPcCFSPayload { config "false"; - description "ID"; + type uint64; + description "Invalid MCT port-channel iod while processing CFS payload"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf ptLookFailCFSPayload { + config "false"; + type uint64; + description "PT lookup failed while processing CFS payload"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cfsRspFailInvalidMct { config "false"; - description "Description"; + type uint64; + description "Sending CFS response failed due to invalid MCT iod while processing CFS payload"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf cfsRspFailCfsPayload { + config "false"; + type uint64; + description "Sending CFS response failed while processing CFS payload"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf retrieveVpcFailPushMsg { config "false"; - description "The port type"; + type uint64; + description "Unabled to retrieve VPC id from ifindex while sending push message"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf retIfindexFrmVpcFail { + config "false"; + type uint64; + description "Unabled to retrieve ifindex from vpc id while processing CFS payload"; } - leaf speed { + + // Ephemeral data + leaf retIfindexFrmVpcFailSync { config "false"; type uint64; + description "Unabled to retrieve VPC id from ifindex while doing periodic sync"; } - } - grouping eqpt_ExtChFP-group { + // Ephemeral data + leaf rspSentCfsoe { + config "false"; + type uint64; + description "Response sent via CFSoE"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf rspRecvCfsoe { config "false"; - description "ID"; + type uint64; + description "Response received via CFSoE"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf rspRecvCfsoeErr { + config "false"; + type uint64; + description "Response received via CFSoE with errors"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf recvCfsoe { config "false"; - description "Description"; + type uint64; + description "Received message via CFSoE"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf sentFailCfsoe { + config "false"; + type uint64; + description "Send message failed via CFSoE"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf mcecmSendApiFailCfsoe { config "false"; - description "The port type"; + type uint64; + description "MCECM send api failed via CFSoE"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf sendCfsoe { + config "false"; + type uint64; + description "Send message succeeded via CFSoE"; } - leaf speed { + + // Ephemeral data + leaf vmctPktDropCount { config "false"; type uint64; + description "Total virtual-mct packets dropped"; + } + + // Holds VPC SYNC related statistics + // Ephemeral data + container syncstats-items { + + uses arp_VpcSyncStats-group; + description "ARP VPC Sync statistics"; } } - grouping eqpt_SpromLc-group { + grouping arp_VpcSyncStats-group { + description "ARP VPC Sync statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf ptAddFailOfflist { config "false"; - description "The sprom identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type uint64; + description "PT add failed while processing offlist"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf mallocFailOfflistDb { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; + description "Memory alloc failed while processing offlist database"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf timerCreateFailOfflistDb { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Timer create failed while processing offlist database"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf adjAddFailOfflistDb { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description "Adjacency addition failed while processing offlist database"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf ptLookupFailOfflistDb { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "PT lookup failed while processing offlist database"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf vlanMismatchOfflistDb { config "false"; - description "The memory type"; - - // Type is an MO-Defined-Type - type eqpt_MemT; + type uint64; + description "VLAN mismatch while processing offlist database"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // Ephemeral data + leaf invalidSviOfflistDb { config "false"; - description "The memory capacity"; - - // Type is an MO-Defined-Type - type eqpt_Capacity; + type uint64; + description "SVI is invalid while processing offlist database"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // Ephemeral data + leaf sviDownOfflistDb { config "false"; - description "The memory access type"; - - // Type is an MO-Defined-Type - type eqpt_Acc; + type uint64; + description "SVI is down while processing offlist database"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf mctDownOfflistDb { config "false"; - description "The memory operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint64; + description "MCT is down while processing offlist database"; } - leaf numBlk { + + // Ephemeral data + leaf ctxTypeInvalidOfflistDb { config "false"; - type uint16; + type uint64; + description "Context type is invalid while processing offlist database"; } - // sprom Common Block - container spcmn-items { - - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + // Ephemeral data + leaf vrfInvalidOfflistDb { + config "false"; + type uint64; + description "VRF is invalid while processing offlist database"; } - // Sprom Linecard block - container splcblk-items { + // Ephemeral data + leaf invalidIpOfflistDb { + config "false"; + type uint64; + description "IP address is invalid while processing offlist database"; + } - // Added containment as a singleton: Prefix=splcblk - // Acquired From Package eqpt - uses eqpt_SpromLcBlk-group; + // Ephemeral data + leaf ipSanityFailOfflistDb { + config "false"; + type uint64; + description "IP address sanity failed while processing offlist database"; } - // sprom Port Data Interface - container sppd-items { + // Ephemeral data + leaf macSanityFailOfflistDb { + config "false"; + type uint64; + description "MAC address sanity failed while processing offlist database"; + } - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Ephemeral data + leaf ownRouterMacOfflistDb { + config "false"; + type uint64; + description "Our own router mac while processing offlist database"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + // Ephemeral data + leaf ownIpOfflistDb { + config "false"; + type uint64; + description "Our own ip address while processing offlist database"; + } - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + // Ephemeral data + leaf ownvIpOfflistDb { + config "false"; + type uint64; + description "Our own virtual ip address while processing offlist database"; } - // Sprom Sensor block - container spsensorblk-items { + // Ephemeral data + leaf adjCreateFailOfflistDb { + config "false"; + type uint64; + description "Create adjacency failed while processing offlist database"; + } - // Added containment as a singleton: Prefix=spsensorblk - // Acquired From Package eqpt - uses eqpt_SpSensorBlk-group; + // Ephemeral data + leaf subnetMismatchOfflistDb { + config "false"; + type uint64; + description "Subnet mismatch while processing offlist database"; } - } - grouping eqpt_SpromLcBlk-group { - leaf fbits { + // Ephemeral data + leaf dupEntryOfflistDb { config "false"; type uint64; + description "Entry exists while processing offlist database"; } - leaf hwCBits { + + // Ephemeral data + leaf ipNotEnOfflistDb { config "false"; type uint64; + description "IP not enabled on interface while processing offlist database"; } - leaf crdIdx { + + // Ephemeral data + leaf totDropOfflistDb { config "false"; - type uint16; + type uint64; + description "Total drop count while processing offlist database"; } - leaf macB { + + // Ephemeral data + leaf totDontDropOfflistDb { config "false"; - type string; + type uint64; + description "Total don't drop count while processing offlist database"; } - leaf macL { + + // Ephemeral data + leaf totAdjAddOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacency additions in offlist database"; } - leaf eobcN { + + // Ephemeral data + leaf totAdjDelOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacency deletions in offlist database"; } - leaf epldN { + + // Ephemeral data + leaf totAdjIgnoredOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacencies ignored as they already exists in offlist database"; } - leaf maxCPwr { + + // Ephemeral data + leaf totAdjFrmPeerToAdd { config "false"; - type uint16; + type uint64; + description "Total adjacencies received from the peer to add"; } - leaf coolRq { + + // Ephemeral data + leaf totAdjFrmPeerToDel { config "false"; - type uint16; + type uint64; + description "Total adjacencies received from the peer to delete"; } - leaf ambT { + + // Ephemeral data + leaf totAdjSentPeriodically { config "false"; - type uint16; + type uint64; + description "Total gross adjacencies sent periodically"; } - leaf sensor1 { + + // Ephemeral data + leaf totAdjPeerToAdd { config "false"; - type string; + type uint64; + description "Total adjacencies sent to the peer to add"; } - leaf sensor2 { + + // Ephemeral data + leaf totAdjPeerToDel { config "false"; - type string; + type uint64; + description "Total adjacencies sent to the peer to del"; } - leaf sensor3 { + + // Ephemeral data + leaf totPeriodicSyncAdj { config "false"; - type string; + type uint64; + description "Total periodic sync adjacencies"; } - leaf sensor4 { + + // Ephemeral data + leaf totAdjAddFailDuringSyncSend { config "false"; - type string; + type uint64; + description "Total no of failures in adding adjacenies while periodic sync send"; } - leaf sensor5 { + + // Ephemeral data + leaf totDropDuringSyncInvalidSvi { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of invalid svi"; } - leaf sensor6 { + + // Ephemeral data + leaf totDropSyncSviDown { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of svi being down"; } - leaf sensor7 { + + // Ephemeral data + leaf totDropSyncInvalidCtxt { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of invalid context"; } - leaf sensor8 { + + // Ephemeral data + leaf totDropSyncNullAdj { config "false"; - type string; + type uint64; + description "Total no of drops while processing sync because of NULL Adjacencies"; } - leaf sig { + + // Ephemeral data + leaf totDropSyncNullIp { config "false"; - type uint16; + type uint64; + description "Total no of drops while processing sync because of NULL IP"; } - leaf ver { + + // Ephemeral data + leaf totSyncAdjAddL2SupCache { config "false"; - type uint16; + type uint64; + description "Total periodic sync adjacencies added for L2 suppression case"; } - leaf len { + + // Ephemeral data + leaf totSyncStopBcastPkt { config "false"; - type uint16; + type uint64; + description "Total periodic sync broadcast packet stopped from syncing to peer"; } - leaf cksum { + + // Ephemeral data + leaf totVmctOrphanSyncDropCount { config "false"; - type uint16; + type uint64; + description "Total virtual-mct orphan hosts stopped from syncing to peer"; } + } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + grouping arp_TunnelStats-group { + description "ARP Tunnel statistics"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + // Ephemeral data + leaf totTunnelRcvd { + config "false"; + type uint64; + description "Total tunneled packets received"; } - // sprom Port Data Interface - container sppd-items { + // Ephemeral data + leaf rxForIngressVpc { + config "false"; + type uint64; + description "Tunneled packets rx for ingress vPC"; + } - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Ephemeral data + leaf rxIngressforGpc { + config "false"; + type uint64; + description "Tunneled packets rx for ingress GPC"; } - } - grouping eqpt_FCSlot-group { + // Ephemeral data + leaf rxIngressOrphanVpc { + config "false"; + type uint64; + description "Tunneled Packets rx for ingress orphan vPC"; + } - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { + // Ephemeral data + leaf rxIngressOrphanVpcPlus { config "false"; - description "Poweroff Config"; + type uint64; + description "Tunneled Packets rx for ingress orphan vPC+"; + } - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + // Ephemeral data + leaf totPackSent { + config "false"; + type uint64; + description "Total tunneled packets sent"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf pktSentArpSnoop { config "false"; - description "ID"; + type uint64; + description "Tunneled packets Sent for ARP Snoop"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf pktSentNonlocalVip { + config "false"; + type uint64; + description "Tunneled packets sent for Non-Local VIP"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf pktSentPeerGway { config "false"; - description "Description"; + type uint64; + description "Tunneled Packets sent for Peer Gateway"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf txIngressVpc { + config "false"; + type uint64; + description "Tunneled packets tx for ingress vPC"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf txIngressGpc { config "false"; - description "The physical slot identifier"; + type uint64; + description "Tunneled packets tx for ingress GPC"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + // Ephemeral data + leaf txIngressOrphanVpc { + config "false"; + type uint64; + description "Tunneled Packets tx for ingress orphan vPC"; + } + + // Ephemeral data + leaf txIngressOrphanVpcPlus { + config "false"; + type uint64; + description "Tunneled Packets tx for ingress orphan vPC+"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:FCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf totRecvDropped { config "false"; - description "The fabric card type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type uint64; + description "Total tunnel packets recv dropped"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf totSendDropped { config "false"; - description "The slot operational status"; - - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type uint64; + description "Total tunnel packets send dropped"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // Ephemeral data + leaf sendFailDrop { config "false"; - description "The location of the slot in the chassis"; - - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type uint64; + description "Drops due to send failed"; } - // Fabric Card, connecting different io cards - container fc-items { - - // Added containment as a singleton: Prefix=fc - // Acquired From Package eqpt - uses eqpt_FC-group; + // Ephemeral data + leaf rcvdInvalidVer { + config "false"; + type uint64; + description "Received packet with invalid version"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - container rtoosSlot-items { - - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + leaf rcvdInvalidPayloadType { + config "false"; + type uint64; + description "Received packet with invalid payload type"; } - } - - grouping eqpt_FC-group { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf rcvdMctIf { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Received packet on non mct interface"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf rcvdInvalidIngressPort { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Ephemeral data + leaf dropSentInvalidPort { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint64; + description "Drop send packets for invalid ingress port"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf dropRecvInvalidGpcCore { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Drop recv pkt, invalid GPC of core switch"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf dropRecvInvalidGpcPeer { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description "Drop recv pkt, invalid GPC of peer switch"; } - leaf mfgTm { + + // Ephemeral data + leaf dropRecvFailRetrieveGpc { config "false"; - type string; - default "0"; + type uint64; + description "Drop recv pkt, failed in retrieving the GPC"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf dropSendFailRetrieveGpc { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "Drop send pkt, failed in retrieving the GPC"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // Ephemeral data + leaf failRetrieveVpcId { config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + type uint64; + description "Failed to retrieve vPC ID while processing"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:FC->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf imApiFail { config "false"; - description "The card type"; - - // Type is an MO-Defined-Type - type eqpt_CardT; + type uint64; + description "IM api failed while processing"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf invalidContext { config "false"; - description "The card operational status"; + type uint64; + description "Invalid context while processing"; + } - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Ephemeral data + leaf dropMctDown { + config "false"; + type uint64; + description "Drop since MCT Down"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Ephemeral data + leaf recvDropMbufFail { config "false"; - description "The card software card identifier"; + type uint64; + description "Drop recv packets as mbuf operation failed"; + } - // Type is an MO-Defined-Type - type eqpt_CardId; + // Ephemeral data + leaf sendDropMbufFail { + config "false"; + type uint64; + description "Drop send packets as mbuf operation failed"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Ephemeral data + leaf tunnelFailed { config "false"; - description "The number of ports on the card"; + type uint64; + description "Cannot tunnel a incoming tunneled packet"; + } - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Ephemeral data + leaf tunnelFailCENetwork { + config "false"; + type uint64; + description "Cannot tunnel in a CE network"; } - leaf upTs { + leaf mcecmKeyNotFound { config "false"; - type string; + type uint64; + description "MCEC_ID to PHY_IF_INDEX not found in DB"; } + } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + grouping arp_SupCacheStats-group { + description "ARP suppression cache statistics"; - // Type is an MO-Defined-Type - type eqpt_PwrState; + // Ephemeral data + leaf requests { + config "false"; + type uint64; + description "Requests"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + // Ephemeral data + leaf requestsL2 { config "false"; - description "The card software revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Requests on L2"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + // Ephemeral data + leaf gratuitous { config "false"; - description "The card part number"; - - // Type is an MO-Defined-Type - type eqpt_PartNum; + type uint64; + description "Gratuitous"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // Ephemeral data + leaf gratuitousL2 { config "false"; - description "The card vdrId"; - - // Type is an MO-Defined-Type - type eqpt_ModVid; + type uint64; + description "Gratuitous on L2"; } - // Information about each card firmware - container running-items { - - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + // Ephemeral data + leaf fwdRequestsL3 { + config "false"; + type uint64; + description "Forwarded Requests"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; - - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + // Ephemeral data + leaf fwdRepliesL3 { + config "false"; + type uint64; + description "Forwarded Replies"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + // Ephemeral data + leaf fwdRequestOnCorePort { + config "false"; + type uint64; + description "Forwarded Request on core port"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; - } + // Ephemeral data + leaf fwdReplyOnCorePort { + config "false"; + type uint64; + description "Forwarded reply on core port"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; - - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + // Ephemeral data + leaf sentDrop { + config "false"; + type uint64; + description "Send drop"; } - // Sprom Linecard - container splc-items { - - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + // Ephemeral data + leaf sentReqL2 { + config "false"; + type uint64; + description "Sent Request L2"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; - - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + // Ephemeral data + leaf sentReplyL2 { + config "false"; + type uint64; + description "Sent reply L2"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // Ephemeral data + leaf sentReqCoreL2 { + config "false"; + type uint64; + description "Sent Req core L2"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; - - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Ephemeral data + leaf sentReplyCoreL2 { + config "false"; + type uint64; + description "Sent reply core L2"; } - // Flash memory unit - container flash-items { - - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + // Ephemeral data + leaf sentDropL2 { + config "false"; + type uint64; + description "Sent drop L2"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { - - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + // Ephemeral data + leaf recvReqL3 { + config "false"; + type uint64; + description "Receive req L3"; } - } - - grouping eqpt_SysCSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf recvReplyL3 { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type uint64; + description "Receive Reply L3"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf recvLocalReqL3 { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "Receive local req L3"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf recvLocalReplyL3 { config "false"; - description "The physical slot identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Receive local reply L3"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:SysCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf recvGratArp { config "false"; - description "The system controller slot type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type uint64; + description "Receive grat ARP"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf recvDrop { config "false"; - description "The slot operational status"; - - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type uint64; + description "Receive drop"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // Ephemeral data + leaf recvRequestL2 { config "false"; - description "The location of the slot in the chassis"; + type uint64; + description "Receive request L2"; + } - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + // Ephemeral data + leaf recvReplyL2 { + config "false"; + type uint64; + description "Receive reply L2"; } - // System Controller Card - container sc-items { + // Ephemeral data + leaf recvGratArpL2 { + config "false"; + type uint64; + description "Receive grat ARP L2"; + } - // Added containment as a singleton: Prefix=sc - // Acquired From Package eqpt - uses eqpt_SysC-group; + // Ephemeral data + leaf recvDropL2 { + config "false"; + type uint64; + description "Receive drop L2"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - container rtoosSlot-items { + // Ephemeral data + leaf localEntryAdds { + config "false"; + type uint64; + description "Local entry adds"; + } - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + leaf localEntryDel { + config "false"; + type uint64; + description "Local entry deletes"; } } - grouping eqpt_SysC-group { + grouping arp_OfaStats-group { + description "ARP Open-flow Error statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf dpAdjErrDel { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Controller Deleting DP adjacency error"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf cpMacMismatchErrDel { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; + description "CP adjacency MAC mismatch error while delete"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Ephemeral data + leaf cpNullMacErrDel { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint64; + description "CP adjacency NULL mac error while delete"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf cpNoAdjErrDel { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "No adjacency found while delete"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf cpCpNhMismatchErrDel { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description " CP adjacency NH mismatch error while delete"; } - leaf mfgTm { + + // Ephemeral data + leaf cpAdjDelFailureErr { config "false"; - type string; - default "0"; + type uint64; + description "Other errors"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cpNullMacErrAdd { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "CP adjacency NULL mac error while Adding"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // Ephemeral data + leaf cpDpMacMismatchErrAdd { config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + type uint64; + description "DP adjacency already present with different mac"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:SysC->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf cpCpMacMismatchErrAdd { config "false"; - description "The card type"; - - // Type is an MO-Defined-Type - type eqpt_CardT; + type uint64; + description "CP adjacency already present with different mac"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf cpAddFirstErr { config "false"; - description "The card operational status"; - - // Type is an MO-Defined-Type - type eqpt_COpSt; + type uint64; + description "CP adjacency added first"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { + // Ephemeral data + leaf dpOverwriteCpErr { config "false"; - description "The card redundancy state"; + type uint64; + description "Overwriting CP adjacency with DP"; + } - // Type is an MO-Defined-Type - type eqpt_RdSt; + // Ephemeral data + leaf dpCpNhMismatchErrAdd { + config "false"; + type uint64; + description "DP adjacency already present with different NH"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Ephemeral data + leaf cpCpNhMismatchErrAdd { config "false"; - description "The card software card identifier"; + type uint64; + description "CP adjacency already present with different NH"; + } - // Type is an MO-Defined-Type - type eqpt_CardId; + // Ephemeral data + leaf cpDpNhMismatchErrAdd { + config "false"; + type uint64; + description "Overwriting CP adj with DP with different NH"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Ephemeral data + leaf cpAdjAddFailureErr { config "false"; - description "The number of ports on the card"; + type uint64; + description "Other errors for Add"; + } - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Ephemeral data + leaf peerIPLookupRecPhyIod { + config "false"; + type uint64; + description "NVE Peer IP lookup for Rec Phy Iod"; } - leaf upTs { + + // Ephemeral data + leaf peerIPIPv6RecPhyIod { config "false"; - type string; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { + // Ephemeral data + leaf peerIPLookupAdjPhyIod { config "false"; - description "The power state of this card"; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; + } - // Type is an MO-Defined-Type - type eqpt_PwrState; + // Ephemeral data + leaf peerIPIPv6AdjPhyIod { + config "false"; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + // Ephemeral data + leaf barrierResponseErr { config "false"; - description "The card software revision"; + type uint64; + description "Barrier responses"; + } + } - // Type is an MO-Defined-Type - type eqpt_Revision; + grouping arp_L2Stats-group { + description "This Object Holds The ARP Related Statistics For L2 Interface"; + + // Ephemeral data + container if-items { + + // Ephemeral data + list L2If-list { + config "false"; + key "id"; + + uses arp_L2If-group; + description "ARP L2 Interface list"; + } + description "ARP L2 Interface"; } + } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + grouping arp_L2If-group { + description "ARP L2 Interface"; + + leaf id { config "false"; - description "The card part number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_IfId; + description "Interface ID"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // ARP_L2_PORT_STATS_RX_TOTAL + // Ephemeral data + leaf pktRecL2Int { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type nw_Counter32; + description "Packet Received on L2 interface"; } + } - // Information about each card firmware - container running-items { - - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + grouping arp_Dom-group { + description "This Object Holds Per ARP Domain (vrf) Information"; + leaf encap { + type string; + description "Encapsulation"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; + leaf name { - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { + // ARP databases + // Ephemeral data + container db-items { + + // Ephemeral data + list Db-list { config "false"; - key "id"; + key "type"; - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; + uses arp_Db-group; + description "Database list"; } + description "Database"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; + // This object holds arp information that is operated at a + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + uses arp_If-group; + description "ARP Interface list"; } + description "ARP Interface"; } + } - // Sprom Linecard - container splc-items { + grouping arp_Db-group { + description "Database"; - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + // Type of the repository + // Ephemeral data + leaf type { + config "false"; + + type arp_DbT; + description "Type"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + leaf name { + config "false"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container cpu-items { - list CPU-list { + + // Arp adjacency definitions + // Ephemeral data + container adj-items { + + // Ephemeral data + list AdjEp-list { config "false"; - key "id"; + key "ifId ip"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; + uses arp_AdjEp-group; + description "Adjacency list"; } + description "Adjacency"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping arp_AdjEp-group { + description "Adjacency"; + leaf ip { + config "false"; + type address_Ip; + description "Address"; + } - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + // Ephemeral data + leaf mac { + config "false"; + type address_Mac; + description "MAC"; + } + + // Ephemeral data + leaf upTS { + config "false"; + type union { + type string; + type uint64; } + description "ARP Entry Age"; } - // Flash memory unit - container flash-items { + // Logical interface that this ep is associated with + leaf ifId { + config "false"; - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type nw_IfId; + description "Logical Interface ID"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Operational state + // Ephemeral data + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type arp_AdjOperSt; + description "Operational State"; } - } - - grouping eqpt_PsuSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:PsuSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Physical interface that this ep is associated with + // Ephemeral data + leaf physIfId { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type nw_IfId; + description "Physical Interface ID"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Flags that this ep has + // Ephemeral data + leaf flags { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type arp_AdjFlags; + description "Flags"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + leaf name { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:PsuSlot->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The power supply slot type"; + grouping arp_If-group { + description "ARP Interface"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + // Timeout + leaf timeout { + + type arp_Timeout; + description "ARP Timeout"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // Gratuitous ARP request + leaf gratuitousRequest { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_AdminSt; + description "Gratuitous ARP Request"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // Gratuitous ARP Update + leaf gratuitousUpdate { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_AdminSt; + description "Gratuitous ARP Update"; } - // power supply slot - container psu-items { + // Gratuitous ARP HSRP Duplicate + leaf gratuitousHsrpDup { - // Added containment as a singleton: Prefix=psu - // Acquired From Package eqpt - uses eqpt_Psu-group; + type nw_AdminSt; + description "Gratuitous ARP HSRP Duplicate"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - container rtoosSlot-items { + // Proxy ARP + leaf proxyArp { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_AdminSt; + default "disabled"; + description "Proxy ARP"; } - } - grouping eqpt_Psu-group { + // Local Proxy ARP + leaf localProxyArp { - // Power supply status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The power supply unit operational status"; + type nw_AdminSt; + default "disabled"; + description "Local Proxy ARP"; + } - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Local Proxy ARP without HW Flooding + leaf localProxyArpNoHwFlood { + + type nw_AdminSt; + default "disabled"; + description "Local Proxy ARP w/o HW Flooding"; } - // Power supply capacity in Amps - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The power supply unit capacity"; + // Delete adjacency on MAC delete without refresh + leaf deleteAdjOnMacDelete { - // Type is an MO-Defined-Type - type eqpt_Amps; + type nw_AdminSt; + default "disabled"; + description "Delete Adjacency On MAC Delete w/o Refresh"; } - // Actual drawn/output current in Amps - // Type is an MO-Defined-Type - leaf drawnCurr { - config "false"; - description "The power supply unit actual drawn/output current"; + // Set refresh timer for MAC delete adjacency request + leaf refreshTimerForMacDelete { - // Type is an MO-Defined-Type - type eqpt_Amps; + type arp_MacDelTimeout; + description "Set Refresh Timer For MAC Delete Adjacency"; } - // Power supply voltage source - // Type is an MO-Defined-Type - leaf vSrc { - config "false"; - description "The power supply unit voltage source"; + // Enable duplicate IP detection across VLANs for IP + // unnumbered SVIs + leaf duplicateIpDetectionForUnnumberedSvi { - // Type is an MO-Defined-Type - type eqpt_VSrc; + type nw_AdminSt; + default "disabled"; + description + "Enable Duplicate IP Detection Across VLANs for + IP Unnumbered SVIs"; } - // Power supply voltage - // Type is an MO-Defined-Type - leaf volt { + // Config error in this MO + leaf configError { config "false"; - description "The power supply unit voltage"; - // Type is an MO-Defined-Type - type eqpt_Volts; + type arp_ConfigErr; + description "Config Error"; } - // Power supply fan operational status - // Type is an MO-Defined-Type - leaf fanOpSt { - config "false"; - description "The power supply unit fan operational status"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Power supply fan air direction - // Type is an MO-Defined-Type - leaf fanDirection { - config "false"; - description "The power supply unit fan air direction"; + // Static arp adjacency definitions + container sadj-items { + list StAdjEp-list { + key "ip"; - // Type is an MO-Defined-Type - type eqpt_AirDir; + uses arp_StAdjEp-group; + description "ARP Static Adjacency list"; + } + description "ARP Static Adjacency"; } - // Actual Input current in Amps - // Type is an MO-Defined-Type - leaf inputCurr { - config "false"; - description "The power supply unit input current"; + // This object holds the arp if related tx statistics + // Ephemeral data + container ifstatstx-items { - // Type is an MO-Defined-Type - type eqpt_Amps; + uses arp_IfStatsTx-group; + description "This Object Holds The ARP Related Transmit Statistics For Interface"; } - // power supply VID - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // This object holds the arp if related rx statistics + // Ephemeral data + container ifstatsrx-items { - // Type is an MO-Defined-Type - type eqpt_ModVid; + uses arp_IfStatsRx-group; + description "This Object Holds the ARP Related Receive Statistics For the Interface"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // This object holds the arp if related adj statistics + // Ephemeral data + container ifstatsadj-items { - // Type is an MO-Defined-Type - type eqpt_Id; + uses arp_IfStatsAdj-group; + description "This Object Holds The ARP Related Adjacency Statistics For Interface"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // This object holds the arp if related misc statistics + // Ephemeral data + container ifstatsmisc-items { - // Type is an MO-Defined-Type - type eqpt_Vendor; + uses arp_IfStatsMisc-group; + description "This Object Holds The ARP Related Miscellaneous Statistics For Interface"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // This object holds the arp related Multihoming(MH) statistics + // Ephemeral data + container ifstatsmh-items { - // Type is an MO-Defined-Type - type eqpt_Model; + uses arp_IfStatsMH-group; + description "This Object Holds The ARP Related Multihoming(MH) Statistics For Interface"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + grouping arp_StAdjEp-group { + description "ARP Static Adjacency"; + + // Operational state + leaf operSt { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type arp_StAdjOperSt; + description "Operational State"; } - leaf mfgTm { + + // Operational state qualifier + leaf operStQual { config "false"; - type string; - default "0"; + + type arp_StAdjOperStQual; + description "Operational State Qualifier"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf ip { + type address_Ip; + description "Address"; + } + leaf mac { + type address_Mac; + description "MAC"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; + container rtfvEpDefRefToStAdjEp-items { - // Type is an MO-Defined-Type - type cap_Version; + list RtFvEpDefRefToStAdjEp-list { + config "false"; + key "tDn"; + + uses fv_RtFvEpDefRefToStAdjEp_target-group; + } } } - grouping eqpt_FtSlot-group { + grouping arp_IfStatsTx-group { + description "This Object Holds The ARP Related Transmit Statistics For Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:FtSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_COUNT + // Ephemeral data + leaf pktSent { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..6"; - } + type nw_Counter32; + description "ARP Packet Send Total Count"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SEND_REQ_COUNT + // Ephemeral data + leaf pktSentReq { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Send Request Count"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // ARP_PKT_SEND_REPLY_COUNT + // Ephemeral data + leaf pktSentRsp { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Packet Send Reply Count"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:FtSlot->type - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_SEND_REQ_COUNT_L2 + // Ephemeral data + leaf pktSentReqL2 { config "false"; - description "The fan tray slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_Counter32; + description "ARP Packet Send Request Count On L2"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_SEND_REPLY_COUNT_L2 + // Ephemeral data + leaf pktSentRspL2 { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_Counter32; + description "ARP Packet Send Reply Count On L2"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // ARP_PKT_SEND_GRAT_REQ_COUNT + // Ephemeral data + leaf pktSentGratReq { config "false"; - description "The location of the slot in the chassis"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_Counter32; + description "ARP Packet Send Gratuitous Request Count"; } - // Represents an inventoried fan tray - container ft-items { + // ARP_PKT_SEND_TUNNEL_COUNT + // Ephemeral data + leaf pktSentTunnel { + config "false"; - // Added containment as a singleton: Prefix=ft - // Acquired From Package eqpt - uses eqpt_Ft-group; + type nw_Counter32; + description "ARP Packet Send Tunnel Count"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - container rtoosSlot-items { + // ARP_PKT_SEND_DROP_COUNT + // Ephemeral data + leaf pktSentDrop { + config "false"; - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_Counter32; + description "ARP Packet Send Drop Count"; } - } - grouping eqpt_Ft-group { + // ARP_PKT_SEND_SRVRPORT_COUNT + // Ephemeral data + leaf pktSendSrvPort { + config "false"; - // Fan tray operational status - // Type is an MO-Defined-Type - leaf operSt { + type nw_Counter32; + description "ARP Packet Send Server Port Count"; + } + + // ARP_PKT_SEND_FBRCPORT_COUNT + // Ephemeral data + leaf pktSendFbrcPort { config "false"; - description "The fan tray operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Send Fabric Port Count"; } - leaf fanName { + + // ARP_PKT_SEND_FIXUP_CORE_COUNT + // Ephemeral data + leaf pktSendFixupCore { config "false"; - type string; + + type nw_Counter32; + description "ARP Packet Send Fixup Core Count"; } - // power supply VID - // Type is an MO-Defined-Type - leaf vdrId { + // ARP_PKT_SEND_FIXUP_SERVER_COUNT + // Ephemeral data + leaf pktSendFixupServer { config "false"; - description "The fan vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type nw_Counter32; + description "ARP Packet Send Fixup Server Count"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Ft->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_FIXUP_RARP_COUNT + // Ephemeral data + leaf pktSendFixupRarp { config "false"; - description "The fan tray identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..4"; - } + type nw_Counter32; + description "ARP Packet Send Fixup Rarp Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_SEND_ANYCAST_GLEAN_COUNT + // Ephemeral data + leaf pktSendAnyCastGlean { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Send Anycast Glean Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_SEND_FAIL_INVALID_PKT_COUNT + // Ephemeral data + leaf pktSentFailInvPkt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Packet Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_SEND_FAIL_MBUF_OP_COUNT + // Ephemeral data + leaf pktSentFailMbufOp { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Send Fail Mbuf Operation Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_SEND_FAIL_NO_IFINDEX_COUNT + // Ephemeral data + leaf pktSentFailNoIfindex { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Ifindex Count"; } - leaf mfgTm { + + // ARP_PKT_SEND_FAIL_UNSUPPORTED_INT_COUNT + // Ephemeral data + leaf pktSentFailUnsupportedInt { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Packet Send Fail On Unsupported Interface Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SEND_FAIL_IM_DOWN_COUNT + // Ephemeral data + leaf pktSentFailImDown { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Send Fail On Interface Down Count"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // ARP_PKT_SEND_FAIL_INVALID_SRC_IP_COUNT + // Ephemeral data + leaf pktSentFailInvSrcIp { config "false"; - description "Hardware Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Source IP Count"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + // ARP_PKT_SEND_FAIL_INVALID_DEST_IP_COUNT + // Ephemeral data + leaf pktSentFailInvDstIp { + config "false"; - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type nw_Counter32; + description "ARP Packet Send Fail Invalid Destination IP Count"; } - // Represents a fan in a fan tray - container fan-items { - list Fan-list { - config "false"; - key "id"; + // ARP_PKT_SEND_FAIL_OWN_IP_COUNT + // Ephemeral data + leaf pktSentFailOwnIp { + config "false"; - // Added containment: Prefix=fan - // Acquired From Package eqpt - uses eqpt_Fan-group; - } + type nw_Counter32; + description "ARP Packet Send Fail Own IP Count"; + } + + // ARP_PKT_SEND_FAIL_CONTEXT_NOT_CREATED_COUNT + // Ephemeral data + leaf pktSentFailCtxtNotCreated { + config "false"; + + type nw_Counter32; + description "ARP Packet Send Fail Context Not Created Count"; } - container spfan-items { + // ARP_PKT_SEND_FAIL_BAD_CONTEXT_ID_COUNT + // Ephemeral data + leaf pktSentFailBadCtxtId { + config "false"; - // Added containment as a singleton: Prefix=spfan - // Acquired From Package eqpt - uses eqpt_SpromFan-group; + type nw_Counter32; + description "ARP Packet Send Fail Bad Context Id Count"; } - } - grouping eqpt_Fan-group { + // ARP_PKT_SEND_FAIL_UNATTACHED_IP_COUNT + // Ephemeral data + leaf pktSentFailUnattachedIp { + config "false"; - // Fan operational status - // Type is an MO-Defined-Type - leaf operSt { + type nw_Counter32; + description "ARP Packet Send Fail Unattached IP Count"; + } + + // ARP_PKT_SEND_FAIL_ADJ_ADD_FAILURE_COUNT + // Ephemeral data + leaf pktSentFailAdjAddFailure { config "false"; - description "The fan operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Send Fail Adjacency Add Failure Count"; } - // Fan direction - // Type is an MO-Defined-Type - leaf dir { + // ARP_PKT_SEND_FAIL_NO_SRC_IP_COUNT + // Ephemeral data + leaf pktSentFailNoSrcIp { config "false"; - description "The fan air direction"; - // Type is an MO-Defined-Type - type eqpt_AirDir; + type nw_Counter32; + description "ARP Packet Send Fail No Source IP Count"; } - leaf speedInRpm { + + // ARP_PKT_SEND_FAIL_NO_MAC_COUNT + // Ephemeral data + leaf pktSentFailNoMac { config "false"; - type uint32; + + type nw_Counter32; + description "ARP Packet Send Fail No Mac Count"; } - leaf speedInPercent { + + // ARP_PKT_SEND_FAIL_CLIENT_ENQUEUE_FAILED_COUNT + // Ephemeral data + leaf pktSentFailClientEnqFailed { config "false"; - type uint32; + + type nw_Counter32; + description "ARP Packet Send Fail Client Enqueue Failed Count"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Fan->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_FAIL_PROXY_DEST_NOT_REACHABLE_COUNT + // Ephemeral data + leaf pktSentFailProxyDstNotRchbl { config "false"; - description "The fan identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type nw_Counter32; + description "ARP Packet Send Fail Proxy Destination Not Reachable Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_DEST_NOT_REACHABLE_COUNT + // Ephemeral data + leaf pktSkipRespEnhancedProxyDestNotReach { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Skip Response Enhanced Proxy Destination Not Reachable Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_L2PORT_TRACK_COUNT + // Ephemeral data + leaf pktSkipRespEnhancedProxyL2portTrack { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Skip Response Enhanced Proxy L2 Port Track Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_SEND_FAIL_INVALID_LOCAL_PROXY_COUNT + // Ephemeral data + leaf pktSentFailInvLocalProxy { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Local Proxy Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_SEND_FAIL_INVALID_PROXY_COUNT + // Ephemeral data + leaf pktSentFailInvProxy { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Proxy Count"; } - leaf mfgTm { + + // ARP_PKT_SEND_FAIL_VIP_GROUP_NOT_ACTIVE_COUNT + // Ephemeral data + leaf pktSentFailVipGroupNotActive { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Packet Send Fail VIP Group Not Active Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SKIP_REFRESH_OVER_CORE_AND_FLOOD_TO_SERVER + // Ephemeral data + leaf pktRefreshFloodToServerSkipCore { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Refresh pkts flooded to the server but skipped over core Count"; } } - grouping eqpt_SpromFan-group { + grouping arp_IfStatsRx-group { + description "This Object Holds the ARP Related Receive Statistics For the Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_RECV_COUNT + // Ephemeral data + leaf pktRcvd { config "false"; - description "The sprom identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type nw_Counter32; + description "ARP Packet Received Total Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_RECV_REQ_COUNT + // Ephemeral data + leaf pktRcvdReq { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Received Request Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_RECV_REPLY_COUNT + // Ephemeral data + leaf pktRcvdRsp { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Received Reply Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_RECV_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdProxyArp { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Received Proxy ARP Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_RECV_LOCAL_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdLocalProxyArp { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Local Proxy ARP Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_RECV_ENHANCED_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyArp { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy ARP Count"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_RECV_ENHANCED_PROXY_ANYCAST_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyAnycastArp { config "false"; - description "The memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy Anycast ARP Count"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // ARP_PKT_RECV_ENHANCED_PROXY_L2PORT_TRACK_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyL2portTrackArp { config "false"; - description "The memory capacity"; - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy L2 Port Track ARP Count"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // ARP_PKT_RECV_SRVRPORT_COUNT + // Ephemeral data + leaf pktRcvdServerPort { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type nw_Counter32; + description "ARP Packet Received Server Port Count"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_RECV_REQ_COUNT_L2 + // Ephemeral data + leaf pktRcvdReqL2 { config "false"; - description "The memory operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; - } - leaf numBlk { - config "false"; - type uint16; + type nw_Counter32; + description "ARP Packet Received Request Count On L2"; } - // sprom Common Block - container spcmn-items { + // ARP_PKT_RECV_REPLY_COUNT_L2 + // Ephemeral data + leaf pktRcvdRspL2 { + config "false"; - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type nw_Counter32; + description "ARP Packet Received Reply Count On L2"; } - // Sprom FAN block - container spfanblk-items { + // ARP_PKT_RECV_TUNNEL_COUNT + // Ephemeral data + leaf pktRcvdTunnel { + config "false"; - // Added containment as a singleton: Prefix=spfanblk - // Acquired From Package eqpt - uses eqpt_SpromFanBlk-group; + type nw_Counter32; + description "ARP Packet Received Tunnel Count"; } - // Fan Serial Number - container spfansn-items { + // ARP_PKT_RECV_FASTPATH_COUNT + // Ephemeral data + leaf pktRcvdFastpath { + config "false"; - // Added containment as a singleton: Prefix=spfansn - // Acquired From Package eqpt - uses eqpt_SpromFanSN-group; + type nw_Counter32; + description "ARP Packet Received Fastpath Count"; } - } - grouping eqpt_SpromFanBlk-group { - leaf fbits { + // ARP_PKT_RECV_SNOOP_COUNT + // Ephemeral data + leaf pktRcvdSnoop { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Snoop Count"; } - leaf hwCBits { + + // ARP_PKT_RECV_DROP_COUNT + // Ephemeral data + leaf pktRcvdDrp { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Drop Count"; } - leaf stackMIB { + + // ARP_PKT_RECV_DROP_BAD_IF_COUNT + // Ephemeral data + leaf pktRcvdDrpBadIf { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Interface Count"; } - leaf coolCap { + + // ARP_PKT_RECV_DROP_BAD_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Length Count"; } - leaf ambTemp { + + // ARP_PKT_RECV_DROP_BAD_PROTO_COUNT + // Ephemeral data + leaf pktRcvdDrpBadProto { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Protocol Count"; } - leaf hpPwrCon { + + // ARP_PKT_RECV_DROP_BAD_HRD_TYPE + // Ephemeral data + leaf pktRcvdDropBadHrd { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Hardware Type Count"; } - leaf hpCoolCon { + + // ARP_PKT_RECV_DROP_BAD_L2ADDR_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadL2AddrLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Layer 2 Address Length Count"; } - leaf sig { + + // ARP_PKT_RECV_DROP_BAD_L3ADDR_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadL3AddrLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Layer 3 Length Count"; } - leaf ver { + + // ARP_PKT_RECV_DROP_INVAL_SRC_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpInvalSrcIp { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Invalid Source IP Count"; } - leaf len { + + // ARP_PKT_RECV_DROP_DIR_BCAST_COUNT + // Ephemeral data + leaf pktRcvdDrpDirBcast { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Direct Broadcast Count"; } - leaf cksum { + + // ARP_PKT_RECV_DROP_INVAL_DST_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpInvalDstIp { config "false"; - type uint16; - } - } - grouping eqpt_SpromFanSN-group { + type nw_Counter32; + description "ARP Packet Received Drop Invalid Destination IP Count"; + } - // Serial Number - // Type is an MO-Defined-Type - leaf serNum { + // ARP_PKT_RECV_DROP_BAD_SRC_MAC_COUNT + // Ephemeral data + leaf pktRcvdDrpBadSrcMac { config "false"; - description "The sprom fan serial number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Drop Bad Source Mac Count"; } - leaf sig { + + // ARP_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf pktRcvdDrpOwnSrcMac { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Own Source Mac Count"; } - leaf ver { + + // ARP_PKT_RECV_DROP_OWN_SRC_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpOwnSrcIp { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Own Source IP Count"; } - leaf len { + + // ARP_PKT_RECV_DROP_ARP_IF_NO_MEM_COUNT + // Ephemeral data + leaf pktRcvdDrpArpIfNoMem { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop ARP Interface No Memory Count"; } - leaf cksum { + + // ARP_PKT_RECV_DROP_NOT_FOR_US_COUNT + // Ephemeral data + leaf pktRcvdDrpNotForUs { config "false"; - type uint16; - } - } - grouping eqpt_SpromBP-group { + type nw_Counter32; + description "ARP Packet Received Drop Not For Us Count"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_RECV_LEARN_AND_DROP_NOT_FOR_US_COUNT + // Ephemeral data + leaf pktRcvdLearnAndDropNotForUs { config "false"; - description "The sprom identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type nw_Counter32; + description "ARP Packet Received Learn And Drop Not For Us Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_RECV_DROP_SUBNET_MISMATCH_COUNT + // Ephemeral data + leaf pktRcvdDrpSubnetMismatch { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Received Drop Subnet Mismatch Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_RECV_DROP_NOT_INITIALIZED_COUNT + // Ephemeral data + leaf pktRcvdDrpNotInit { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Received Drop Not Initialized Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_RECV_DROP_BAD_CONTEXT_COUNT + // Ephemeral data + leaf pktRcvdDrpBadCtxt { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Received Drop Bad Context Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_RECV_DROP_CONTEXT_NOT_CREATED_COUNT + // Ephemeral data + leaf pktRcvdDrpCtxtNotCreated { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Drop Context Not Created Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_RECV_DROP_L2_LOCAL_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdDrpL2LocalProxyArp { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Received Drop L2 Local Proxy ARP Count"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_RECV_DROP_L2_PURE_L2_PKT_COUNT + // Ephemeral data + leaf pktRcvdDrpL2PureL2Pkt { config "false"; - description "The memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_Counter32; + description "ARP Packet Received Drop L2 Pure L2 Packet Count"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // ARP_PKT_RECV_DROP_L2_PORT_UNTRUSTED_COUNT + // Ephemeral data + leaf pktRcvdDrpL2PrtUntrusted { config "false"; - description "The memory capacity"; - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_Counter32; + description "ARP Packet Received Drop L2 Port Untrusted Count"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // ARP_PKT_RECV_DROP_STANDBY_FHRP_VIP_COUNT + // Ephemeral data + leaf pktRcvdDrpStdbyFhrpVip { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type nw_Counter32; + description "ARP Packet Received Drop Standby FHRP VIP Count"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_RECV_DROP_GRAT_ON_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdDrpGratOnProxyArp { config "false"; - description "The memory operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Received Drop Gratuitous On Proxy ARP Count"; } - leaf numBlk { + + // ARP_PKT_RECV_DROP_ARP_REQUEST_IGNORE_COUNT + // Ephemeral data + leaf pktRcvdDrpArpRequestIgnore { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop ARP Request Ignore Count"; } - // sprom Common Block - container spcmn-items { + // ARP_PKT_RECV_DROP_L2FM_QUERY_FAIL_COUNT + // Ephemeral data + leaf pktRcvdDrpL2FmQueryFail { + config "false"; - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type nw_Counter32; + description "ARP Packet Received Drop L2FM Query Fail Count"; } - // Sprom BP block - container spbpblk-items { + // ARP_PKT_RECV_DROP_TUNNEL_FAIL_COUNT + // Ephemeral data + leaf pktRcvdDrpTunnelFail { + config "false"; - // Added containment as a singleton: Prefix=spbpblk - // Acquired From Package eqpt - uses eqpt_SpromBPBlk-group; + type nw_Counter32; + description "ARP Packet Received Drop Tunnel Fail Count"; } - } - grouping eqpt_SpromBPBlk-group { - leaf fbits { + // ARP_PKT_RECV_DROP_RSP_ON_HSRP_STANDBY_HSRP_ACTIVE_VMAC + // Ephemeral data + leaf pktRcvdDrpRspOnHsrpStbyActiveVmac { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Drop Response On HSRP Standby With HSRP Active Vmac Count"; } - leaf hwCBits { + + // ARP_PKT_RECV_FAIL_IM_DOWN_COUNT + // Ephemeral data + leaf pktRcvdFailImDown { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Fail Interface Down Count"; } - leaf macB { + + // ARP_PKT_RECV_GLEAN_REQ_COUNT + // Ephemeral data + leaf pktRcvdGleanReqCount { config "false"; - type string; + + type nw_Counter32; + description "Glean Requests Received Count"; } - leaf macL { + + // ARP_PKT_REFRESH_REQUESTS_RECV_FROM_CLIENTS + // Ephemeral data + leaf pktRfrshReqRecFrmClients { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Refresh requests from clients"; } - leaf stackMIB { + + // ARP_PKT_RECV_SIGNALS_FROM_L2RIB + // Ephemeral data + leaf pktRcvdSigFrmL2rib { config "false"; - type uint16; + + type nw_Counter32; + description "Number of Signals received from L2rib"; } - leaf oemEprise { + } + + grouping arp_IfStatsAdj-group { + description "This Object Holds The ARP Related Adjacency Statistics For Interface"; + + // ARP_ADJ_ADD_COUNT + // Ephemeral data + leaf adjAdd { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Add Count"; } - leaf oemMIB { + + // ARP_ADJ_DEL_COUNT + // Ephemeral data + leaf adjDel { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Delete Count"; } - leaf maxCPwr { + + // ARP_ADJ_TIMEOUT_COUNT + // Ephemeral data + leaf adjTimeout { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Timeout Count"; } - leaf sig { + } + + grouping arp_IfStatsMisc-group { + description "This Object Holds The ARP Related Miscellaneous Statistics For Interface"; + + // ARP_CLIENT_MSG_COUNT + // Ephemeral data + leaf clientMsg { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Client Message Count"; } - leaf ver { + + // ARP_CLIENT_MSG_FAIL_COUNT + // Ephemeral data + leaf clientMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Client Message Fail Count"; } - leaf len { + + // ARP_IF_TIMEOUT_MSG_FAIL_COUNT + // Ephemeral data + leaf ifTimeoutMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Interface Timeout Message Fail Count"; } - leaf cksum { + + // ARP_IF_STATUS_MSG_FAIL_COUNT + // Ephemeral data + leaf ifStatusMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Interface Status Message Fail Count"; } } - grouping eqpt_BSlot-group { + grouping arp_IfStatsMH-group { + description "This Object Holds The ARP Related Multihoming(MH) Statistics For Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // ARP_MH_PS_RECV_ADD_FROM_L2RIB + // Ephemeral data + leaf recvaddfrml2rib { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type nw_Counter32; + description "ARP Received Peer Sync Add From L2RIB"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // ARP_MH_PS_PROCESS_ADD_FROM_L2RIB + // Ephemeral data + leaf processaddfrml2rib { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Processed Peer Sync Add From L2RIB"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // ARP_MH_PS_RECV_DEL_FROM_L2RIB + // Ephemeral data + leaf recvdelfrml2rib { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Received Peer Sync Delete From L2RIB"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:BSlot->type - // Type is an MO-Defined-Type - leaf type { + // ARP_MH_PS_PROCESS_DEL_FROM_L2RIB + // Ephemeral data + leaf processdelfrml2rib { config "false"; - description "The slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_Counter32; + description "ARP Processed Peer Sync Delete From L2RIB"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // ARP_MH_PS_RECV_PC_SHUT_FROM_L2RIB + // Ephemeral data + leaf recvpcshutfrml2rib { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_Counter32; + description "ARP Received Port Channel Shut From L2RIB"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // ARP_MH_PS_PROCESS_PC_SHUT_FROM_L2RIB + // Ephemeral data + leaf processpcshutfrml2rib { config "false"; - description "The location of the slot in the chassis"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_Counter32; + description "ARP Processed Port Channel Shut From L2RIB"; } - // Board represents the motherboard of the Controller - container board-items { + // ARP_MH_PS_RECV_REMOTE_UPD_FROM_L2RIB + // Ephemeral data + leaf recvremoteupdfrml2rib { + config "false"; - // Added containment as a singleton: Prefix=board - // Acquired From Package eqpt - uses eqpt_Board-group; + type nw_Counter32; + description "ARP Received Remote Update From L2RIB"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - // Inherited From eqpt:BSlot - container rtoosSlot-items { + // ARP_MH_PS_PROCESS_REMOTE_UPD_FROM_L2RIB + // Ephemeral data + leaf processremoteupdfrml2rib { + config "false"; - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_Counter32; + description "ARP Processed Remote Update From L2RIB"; } - } - - grouping eqpt_Board-group { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // ARP_MH_PS_ADD_ERR_INVALID_FLAGS + // Ephemeral data + leaf psadderrinvalidflags { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Multihoming Add Error Invalid Flag"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_MH_PS_DEL_ERR_INVALID_FLAGS + // Ephemeral data + leaf psdelerrinvalidflags { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Multihoming Delete Error Invalid Flag"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_MH_PS_ADD_ERR_INVALID_CURR_STATE + // Ephemeral data + leaf psadderrinvalidcurrstate { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Multihoming Add Error Current State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_MH_PS_DEL_ERR_INVALID_CURR_STATE + // Ephemeral data + leaf psdelerrinvalidcurrstate { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Multihoming Delete Error Current State"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_MH_PS_DEL_ERR_MAC_MISMATCH + // Ephemeral data + leaf psdelerrmacmismatch { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Delete Mac Mismatch"; } - leaf mfgTm { + + // ARP_MH_PS_DEL_ERR_SEC_DEL_FROM_L2RIB + // Ephemeral data + leaf psdelerrsecdelfrml2rib { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Second Delete From L2RIB"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_MH_PS_DEL_ERR_FOR_TL_ROUTE + // Ephemeral data + leaf psdelerrfortlroute { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Delete For True Local Route"; } - // Type of card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf type { + // ARP_MH_TL_DEL_ERR_FOR_PSRO_ROUTE + // Ephemeral data + leaf tldelerrforpsroroute { config "false"; - description "The card type"; - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_Counter32; + description "ARP Multihoming Error True Local Delete For Peer Sync Re-originate Route"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + grouping arp_Ipv4Throttle-group { + description "Ipv4 throttling"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Enable / Disable glean throttling + leaf adminSt { + + type nw_AdminSt; + default "disabled"; + description "Glean throttle state"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // Threshold for syslog for number of packets hitting the entry + leaf syslog { - // Type is an MO-Defined-Type - type eqpt_CardId; + type arp_SyslogCnt; + description "Glean Throttle Syslog For Number Of Packets"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // Max throttle packets count. Crossing this threshold, + // packet will not be throttled for a particular adjacency + leaf maxPacket { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type arp_MaxPacket; + description "Glean throttle packet count"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // Timeout for throttle setting for a particular adjacency + leaf timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type arp_ThrottleTimeout; + description "Ipv4 Glean Throttle Timeout"; } - leaf upTs { - config "false"; - type string; + } + + grouping arp_EventLogs-group { + description "ARP Event Logging"; + + // Event LogType + leaf eventType { + + type arp_EventType; + description "Sync Event Log Type"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + // Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type arp_EventLogSize; + description "Sync Event Log Size"; } + } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { - config "false"; - description "The card firmware revision"; + grouping arp_Vpc-group { + description "Ip Arp Synchronize"; - // Type is an MO-Defined-Type - type eqpt_Revision; + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system + container dom-items { + list VpcDom-list { + key "domainId"; + + uses arp_VpcDom-group; + description "VPC Domain list"; + } + description "VPC Domain"; } + } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + grouping arp_VpcDom-group { + description "VPC Domain"; - // Type is an MO-Defined-Type - type eqpt_Revision; + // VPC Domain ID + leaf domainId { + + type vpc_DomId; + description "TBD"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // Enable/Disable IP ARP SYNC + leaf arpSync { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_AdminSt; + default "disabled"; + description "IP ARP Sync"; } + } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + grouping arp_DbSupCache-group { + description " This Object Holds Suppression-Cache Database"; + + // Type of the repository + // Ephemeral data + leaf type { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type arp_DbT; + description "Database Type"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + leaf name { + config "false"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // ASIC information container - container asic-items { - list Asic-list { + // Holds Suppression-cache vlan related information + // Ephemeral data + container vlan-items { + + // Ephemeral data + list SupCacheVlan-list { config "false"; key "id"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + uses arp_SupCacheVlan-group; + description "This Object Holds Suppression Cache Table Vlan list"; } + description "This Object Holds Suppression Cache Table Vlan"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; + } - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + grouping arp_SupCacheVlan-group { + description "This Object Holds Suppression Cache Table Vlan"; + + // vlan id + // Ephemeral data + leaf id { + config "false"; + + type stp_VlanId; + description "VLAN id"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + // Suppression ARP Mode + // Ephemeral data + leaf suppressArpMode { + config "false"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + type arp_SuppressArpMode; + description "Suppression ARP mode"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Flash memory unit - container flash-items { + // - Admin state + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type nw_AdminSt; + description "Admin State"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type nw_EntOperSt; + description "Operational State"; } - } - grouping eqpt_NSlot-group { + // Holds suppression-cache entry information + // Ephemeral data + container ip-items { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Ephemeral data + list SupCacheEntry-list { + config "false"; + key "ip"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + uses arp_SupCacheEntry-group; + description "This Object Holds Suppression Cache Entry list"; } + description "This Object Holds Suppression Cache Entry"; } + } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + grouping arp_SupCacheEntry-group { + description "This Object Holds Suppression Cache Entry"; + + // Ephemeral data + leaf ip { config "false"; - description "Description"; + type address_Ip; + description "IP Address"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // IRP Entry flags + // Ephemeral data + leaf flags { + config "false"; + + type arp_SupCacheFlag; + description "Flags"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf mac { config "false"; - description "The physical slot identifier"; + type address_Mac; + description "MAC Address"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + // Ephemeral data + leaf upTS { + config "false"; + type union { + type string; + type uint64; + } + description "ARP Entry Up Time"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:NSlot->type - // Type is an MO-Defined-Type - leaf type { + // Physical Interface ID + // Ephemeral data + leaf phyid { config "false"; - description "The slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_IfId; + description "Physical Interface ID"; } + leaf remotevtepaddr { + config "false"; + type string; + description "Remote Vtep Address"; + } + } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type + grouping bfd_Entity-group { + description "BFD Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state leaf operSt { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_EntOperSt; + description "Operational State"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // This objects hold per bfd instance information. + container inst-items { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + uses bfd_Inst-group; + description "BFD Instance"; } + } - // Nic represents the NIC Card - container nic-items { - list Nic-list { - config "false"; - key "id"; + grouping bfd_Inst-group { + description "BFD Instance"; - // Added containment: Prefix=nic - // Acquired From Package eqpt - uses eqpt_Nic-group; - } + // Loopback interface to be used for bfd echo frames + leaf echoIf { + + type nw_IfId; + description "Echo Interface to be used for BFD echo frames"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - // Inherited From eqpt:BSlot - // Inherited From eqpt:NSlot - container rtoosSlot-items { + // Startup timer interval. + leaf startupIntvl { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type bfd_StartupIntvl; + description "Startup timer Interval"; } - } - grouping eqpt_Nic-group { + // Slow mode timer interval. This is the interval at which + // BFD control packets are sent. + leaf slowIntvl { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type bfd_SlowIntvl; + description "Slow timer Interval"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_AdminSt; + description "Admin State"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_InstCtrl; + description "Controls"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // This object holds bfd interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type eqpt_Revision; + uses bfd_If-group; + description "BFD Interface list"; + } + description "BFD Interface"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + // This objects hold per address family bfd instance information + container af-items { + list InstAf-list { + key "type"; - // Type is an MO-Defined-Type - type eqpt_Serial; + uses bfd_InstAf-group; + description "Instance Address Family list"; + } + description "Instance Address Family"; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + // This objects hold Multihop bfd instance information + container mhop-items { + + uses bfd_Mhop-group; + description "Multihop Sessions"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This object holds keepalive policy information + container ka-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses bfd_KaP-group; + description "Keepalive Policy information is held in this object"; } - // Type of card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + // This object holds bfd session information + container session-items { + list Sess-list { + config "false"; + key "discr"; - // Type is an MO-Defined-Type - type eqpt_CardT; + uses bfd_Sess-group; + description "BFD Session list"; + } + description "BFD Session"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + grouping bfd_If-group { + description "BFD Interface"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Enable/disable echo mode for interface + leaf echoAdminSt { + + type nw_AdminSt; + description "Echo Mode Admin State of BFD Interface"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_CardId; + type bfd_IfControl; + description "Interface Controls"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // BFD track-member-link + leaf trkMbrLnk { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type bfd_TrkMbrLnk; + description "Track Member Link Enable Disable on bfd interface"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // BFD Start Time + leaf stTm { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_StTm; + description "BFD Start timeout"; } - leaf upTs { - config "false"; - type string; + leaf dst { + type address_Ipv4; + description "Destination IP Address"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { - config "false"; - description "The card firmware revision"; + leaf descr { - // Type is an MO-Defined-Type - type eqpt_Revision; + type naming_Descr1024; + description "Description"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_IfAdminSt; + description "Admin State"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // This object holds authentication policy information + container auth-items { - // Type is an MO-Defined-Type - type eqpt_ModVid; + uses bfd_AuthP-group; + description "Authentication Policy"; } - // External Ext Port for Controller - container eaport-items { - list ExtAP-list { - config "false"; - key "id"; + // This object holds per address family bfd interface information + container af-items { + list IfAf-list { + key "type"; - // Added containment: Prefix=eaport - // Acquired From Package eqpt - uses eqpt_ExtAP-group; + uses bfd_IfAf-group; + description "Interface Address Family list"; } + description "Interface Address Family"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // Neighbor MacEntry + container nbr-items { + list Nbr-list { + key "srcip destip"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + uses bfd_Nbr-group; + description "Neighbor Entry list"; } + description "Neighbor Entry"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // This object holds interface keepalive policy information + container ifka-items { - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + uses bfd_IfKaP-group; + description "Interface Keepalive Policy"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping bfd_AuthP-group { + description "Authentication Policy"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Interop Attribute + leaf authInterop { + + type bfd_AuthInterop; + description "Auth Interop Enable Disable on BFD Interface"; } - // Flash memory unit - container flash-items { + // Authentication type + leaf type { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type bfd_AuthT; + description "Authentication Type of the BFD session"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Authentication key id + leaf keyId { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type bfd_AuthKeyId; + description "Authentication Key ID to be used in the BFD session"; } - } - grouping eqpt_ExtAP-group { + // Authentication Hex key Size + leaf hexKeySize { - // port status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + type bfd_AuthHexKeySize; + description "A property to indicate Authentication Hex Key Size"; + } - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Authentication hex key + leaf hexKey { + + type bfd_AuthHexKey; + description "A property to indicate Authentication Hex Key for the BFD session"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type bfd_AuthKey; + description "A property to indicate Authentication Key for the BFD session"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf descr { - // Type is an MO-Defined-Type - type eqpt_PortT; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping eqpt_Storage-group { + grouping bfd_IfAf-group { + description "Interface Address Family"; - // Type is an MO-Defined-Type - leaf fileSystem { - config "false"; - description "File System"; + // Enable/disable sessions for interface address family + leaf adminSt { - // Type is an MO-Defined-Type - type comp_DelimitedString; + type nw_AdminSt; + description "Admin State for Interface Address family"; } - // Type is an MO-Defined-Type - leaf blocks { - config "false"; - description "Blocks"; + // Enable/disable echo mode for interface address family + leaf echoAdminSt { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_AdminSt; + description "Echo Mode Admin State for Interface Address family"; } - // Type is an MO-Defined-Type - leaf used { - config "false"; - description "Capacity Used"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type bfd_IfControl; + description "Interface Controls"; } - // Type is an MO-Defined-Type - leaf available { - config "false"; - description "Capacity Available"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Capacity; - } - leaf capUtilized { - config "false"; - type uint8; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf mount { - config "false"; - description "Mounted On"; + // Type + leaf type { - // Type is an MO-Defined-Type - type comp_DelimitedString; + type bfd_AfT; + description "Type of the Address Family"; } - // port status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + // This object holds authentication policy information + container auth-items { - // Type is an MO-Defined-Type - type eqpt_OpSt; + uses bfd_AuthP-group; + description "Authentication Policy"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds interface keepalive policy information + container ifka-items { - // Type is an MO-Defined-Type - type naming_Name; + uses bfd_IfKaP-group; + description "Interface Keepalive Policy"; } } - grouping eqpt_ExtCh-group { + grouping bfd_IfKaP-group { + description "Interface Keepalive Policy"; - // State of the extended chassis - // Type is an MO-Defined-Type - leaf extChSt { - config "false"; - description "State"; + // Desired minimum tx interval. This is the minimum interval, + // in ms, that the system would like to use when transmitting + // BFD control packets. + leaf minTxIntvl { - // Type is an MO-Defined-Type - type eqpt_ExtChSt; + type bfd_IfMinTxIntvl; + description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; } - // Part number of the extended chassis - // Type is an MO-Defined-Type - leaf partNum { - config "false"; - description "TBD"; + // Required minimum rx interval. This is the minimum interval, + // in ms, between received BFD control packets that this + // system is capable of supporting. + leaf minRxIntvl { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_IfMinRxIntvl; + description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; } - // MAC address of the extended chassis - // Type is an MO-Defined-Type - leaf macAddr { - config "false"; - description "MAC Address"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_IfDetectMult; + description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; } - // Number of macs supported - // Type is an MO-Defined-Type - leaf numMacs { - config "false"; - description "MACs Supported"; + // Echo rx interval. This is the minimum interval, in ms, + // between received BFD echo packets that this system is + // capable of supporting. + leaf echoRxIntvl { - // Type is an MO-Defined-Type - type eqpt_ExtChNumMacs; + type bfd_EchoRxIntvl; + description "Echo Rx Interval. This is the minimum interval, in ms, between received BFD echo packets that this system is capable of supporting."; } + } - // Number of uplink ports supported - // Type is an MO-Defined-Type - leaf numUplinkP { - config "false"; - description "Number of Uplink Ports"; + grouping bfd_Nbr-group { + description "Neighbor Entry"; + leaf srcip { + type address_Ip; + description "Source IP Address of BFD neighbor "; + } + leaf destip { + type address_Ip; + description "Destination IP Address of BFD neighbor"; + } + } - // Type is an MO-Defined-Type - type eqpt_ExtChNumUplinkP; + grouping bfd_InstAf-group { + description "Instance Address Family"; + + // Slow mode timer interval. This is the interval at which + // BFD control packets are sent. + leaf slowIntvl { + + type bfd_SlowIntvl; + description "Slow timer Interval"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Type + leaf type { - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_AfT; + description "Type of the Address Family"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // This object holds keepalive policy information + container ka-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses bfd_KaP-group; + description "Keepalive Policy information is held in this object"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping bfd_KaP-group { + description "Keepalive Policy information is held in this object"; - // Type is an MO-Defined-Type - type eqpt_Serial; + // Desired minimum tx interval. This is the minimum interval, + // in ms, that the system would like to use when transmitting + // BFD control packets. + leaf minTxIntvl { + + type bfd_MinTxIntvl; + description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + // Required minimum rx interval. This is the minimum interval, + // in ms, between received BFD control packets that this + // system is capable of supporting. + leaf minRxIntvl { + + type bfd_MinRxIntvl; + description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ExtCh->id - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Type is an MO-Defined-Type - type eqpt_Id { - range "101..199"; - } + type bfd_DetectMult; + description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Echo rx interval. This is the minimum interval, in ms, + // between received BFD echo packets that this system is + // capable of supporting. + leaf echoRxIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_EchoRxIntvl; + description "Echo Rx Interval. This is the minimum interval,in ms, between received BFD echo packets that this system is capable of supporting."; } + } - // Information about extended chassis firmware - container running-items { + grouping bfd_Mhop-group { + description "Multihop Sessions"; - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_ExtChRunning-group; + // Desired minimum tx interval. This is the minimum interval, in ms, + // that the system would like to use when transmitting BFD control packets. + leaf minTxIntvl { + + type bfd_MhMinTxIntvl; + description "Desired Minimum TX Interval"; } - // Locator LED on extended chassis components - container locled-items { - list ExtChLocLed-list { - config "false"; - key "id"; + // Required minimum rx interval. This is the minimum interval, in ms, + // between received BFD control packets that this system is capable of supporting. + leaf minRxIntvl { - // Added containment: Prefix=locled - // Acquired From Package eqpt - uses eqpt_ExtChLocLed-group; - } + type bfd_MhMinRxIntvl; + description "Required Minimum RX Interval"; } - // Extended chassis card slot - container extchslot-items { - list ExtChCardSlot-list { - config "false"; - key "id"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Added containment: Prefix=extchslot - // Acquired From Package eqpt - uses eqpt_ExtChCardSlot-group; - } + type bfd_DetectMult; + description "Detection Multiplier"; } + } - // power supply slot - container psuslot-items { - list PsuSlot-list { - config "false"; - key "id"; + grouping bfd_Sess-group { + description "BFD Session"; - // Added containment: Prefix=psuslot - // Acquired From Package eqpt - uses eqpt_PsuSlot-group; - } + // Local session identifier + leaf discr { + config "false"; + + type bfd_Discr; + description "Local Session Identifier of the BFD session"; } - // fan tray slot - container ftslot-items { - list FtSlot-list { - config "false"; - key "id"; + // Remote session identifier + leaf remoteDiscr { + config "false"; - // Added containment: Prefix=ftslot - // Acquired From Package eqpt - uses eqpt_FtSlot-group; - } + type bfd_Discr; + description "Remote Session Identifier of the BFD session"; } - // Sprom Backplane Unit block - container spbp-items { + // Async mode source port + leaf asyncPort { + config "false"; - // Added containment as a singleton: Prefix=spbp - // Acquired From Package eqpt - uses eqpt_SpromBP-group; + type l4_Port; + description "Asynchronous mode Source Port"; } - // Sprom Supervisor - container spsup-items { + // Echo mode source port + leaf echoPort { + config "false"; + + type l4_Port; + description "Echo mode Source Port"; + } + leaf localMac { + config "false"; + type address_Mac; + description "Local MAC Address"; + } + leaf remoteMac { + config "false"; + type address_Mac; + description "Remote MAC Address"; + } + + // Interface id + leaf ifId { + config "false"; - // Added containment as a singleton: Prefix=spsup - // Acquired From Package eqpt - uses eqpt_SpromSup-group; + type nw_IfId; + description "Interface ID associated with the BFD session"; } - } - - grouping firmware_ExtChRunning-group { - // Loader version - // Type is an MO-Defined-Type - leaf loaderVer { + // Interface ordinal + leaf iod { config "false"; - description "A property that indicates Loader Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Iod; + description "Interface ordinal associated with the BFD session"; } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + // L3 context name + leaf vrfName { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type cap_Version; + type l3_VrfName; + description "L3 Context Name"; } - leaf internalLabel { + leaf srcAddr { config "false"; - type string; + type address_Ip; + description "Source IP Address"; } - - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { + leaf destAddr { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type firmware_Type; + type address_Ip; + description "Destination IP Address"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { + // Local value of tx interval + leaf localTxIntvl { config "false"; - description "Mode"; - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type bfd_MinTxIntvl; + description "Local Value of Tx Interval"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { + // Local value of rx interval + leaf localRxIntvl { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_MinRxIntvl; + description "Local Value of Rx Interval"; } - } - grouping eqpt_ExtChLocLed-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Local value of detection multiplier + leaf localDetectMult { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_DetectMult; + description "Local value of Detection Multiplier"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Active value of tx interval + leaf txIntvl { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type bfd_MinTxIntvl; + description "Active Value of Tx Interval"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Active value of echo tx interval + leaf echoTxIntvl { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_MinTxIntvl; + description "Active Value of Echo Tx Interval"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Active value of rx interval + leaf rxIntvl { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_MinRxIntvl; + description "Active Value of Rx Interval"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Active value of slow interval + leaf slowIntvl { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type bfd_SlowIntvl; + description "Active value of Slow Interval"; } - leaf mfgTm { + + // Active value of detection multiplier + leaf detectMult { config "false"; - type string; - default "0"; + + type bfd_DetectMult; + description "Active value of Detection Multiplier"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Active value of auth type + leaf authType { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_AuthT; + description "Active value of Authentication Type"; } - // Color status of an LED - // Inherited From eqpt:Led - // Type is an MO-Defined-Type - leaf color { + // Authentication sequence number + leaf authSeqno { config "false"; - description "The LED Color"; - // Type is an MO-Defined-Type - type eqpt_Color; + type bfd_AuthSeqno; + description "Authentication Sequence Number"; } - // Operational status of an LED - // Inherited From eqpt:Led - // Type is an MO-Defined-Type + // Oper (protocol) state leaf operSt { config "false"; - description "The LED operational Status"; - // Type is an MO-Defined-Type - type eqpt_LedOpSt; + type bfd_OperSt; + description "Operational State"; } - // LED type - // Inherited From eqpt:Led - // Type is an MO-Defined-Type - leaf type { + // Remote oper state + leaf remoteOperSt { config "false"; - description "The LED type"; - // Type is an MO-Defined-Type - type eqpt_LedType; + type bfd_OperSt; + description "Remote Operational State"; } - // Admin status - Used to locate - // Inherited From eqpt:ALocLed - // Type is an MO-Defined-Type - leaf adminSt { + // Protocol diag code + leaf diag { config "false"; - description "The locator LED admin status"; - // Type is an MO-Defined-Type - type eqpt_AdSt; + type bfd_DiagCode; + description "Protocol Diagnostic code"; } - } - - grouping eqpt_ExtChCardSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ExtChCardSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Packet flags + leaf flags { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1"; - } + type bfd_PktFlags; + description "Packet Flags"; } - - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + leaf lastTransTime { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type union { + type string; + type uint64; + } + description "Transition Time. Last time when protocol state changed"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Last diag code + leaf lastDiag { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_DiagCode; + description "Last Diagnostic code"; } - - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:ExtChCardSlot->type - // Type is an MO-Defined-Type - leaf type { + leaf lastDownTime { config "false"; - description "The slot type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type union { + type string; + type uint64; + } + description "Last Down Time"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // This object holds bfd session stats information + container stats-items { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + uses bfd_SessStats-group; + description "BFD Session Stats"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // This object holds bfd last packet information. This signifies + // peer view of the session. + container peerv-items { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + uses bfd_PeerV-group; + description "BFD Peer View"; } - // Module on extension chassis - container extchc-items { + // This object holds app information per bfd session + container app-items { + list SessApp-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=extchc - // Acquired From Package eqpt - uses eqpt_ExtChCard-group; + uses bfd_SessApp-group; + description "BFD Session App list"; + } + description "BFD Session App"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - container rtoosSlot-items { + container rsmbrSess-items { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + list RsMbrSess-list { + key "tDn"; + + uses bfd_RsMbrSess_source-group; + description "Port-Channel Member Sessions list"; + } + description "Port-Channel Member Sessions"; } } - grouping eqpt_ExtChCard-group { + grouping bfd_SessStats-group { + description "BFD Session Stats"; - // Module serial number - // Type is an MO-Defined-Type - leaf modSerial { + // Packets received + leaf rxCnt { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter64; + description "Packets Received"; } - // Module vendor - // Type is an MO-Defined-Type - leaf modVendor { + // Average interval between received packets + leaf rxAvg { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type bfd_PktInterval; + description "Packets Average Receive Interval, which is the average interval between received packets "; } - // Module model - // Type is an MO-Defined-Type - leaf modModel { + // Minimum interval between received packets + leaf rxMin { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_PktInterval; + description "Packets Minimum Receive Interval"; } - // Module Part number - // Type is an MO-Defined-Type - leaf partNum { + // Maximum interval between received packets + leaf rxMax { config "false"; - description "Module Part Number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_PktInterval; + description "Packets Maximum Receive Interval"; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + leaf lastRxPkt { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type union { + type string; + type uint64; + } + description "Last packet received timestamp"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + // Packets transmitted + leaf txCnt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter64; + description "Packets Transmitted"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + // Average interval between transmitted packets + leaf txAvg { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_PktInterval; + description "Packets Average Transmit Interval, which is average interval between transmitted packets"; } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + // Minimum interval between transmitted packets + leaf txMin { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type bfd_PktInterval; + description "Packets Minimum Transmit Interval"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Maximum interval between transmitted packets + leaf txMax { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_PktInterval; + description "Packets Maximum Transmit Interval"; } - leaf mfgTm { + leaf lastTxPkt { config "false"; - type string; - default "0"; + type union { + type string; + type uint64; + } + description "Last packet transmitted timestamp"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Number of times session has gone into up state + leaf upCnt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Up Count is the number of times session has gone into up state"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:ExtChCard->type - // Type is an MO-Defined-Type - leaf type { + // Number of times session has gone into down state + leaf downCnt { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_Counter32; + description "Down Count is the number of times session has gone into down state"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + grouping bfd_PeerV-group { + description "BFD Peer View"; + + // Diag Code in last packet + leaf diag { config "false"; - description "The card operational status"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + type bfd_DiagCode; + description "Diagnostic Code in Last Packet"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { + // Protocol state in last packet + leaf operSt { config "false"; - description "The card redundancy state"; - // Type is an MO-Defined-Type - type eqpt_RdSt; + type bfd_OperSt; + description "Protocol State in Last Packet"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Flags in last packet + leaf flags { config "false"; - description "The card software card identifier"; - // Type is an MO-Defined-Type - type eqpt_CardId; + type bfd_PktFlags; + description "Flags in Last Packet"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Detect multiplier in last packet + leaf detectMult { config "false"; - description "The number of ports on the card"; - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type bfd_DetectMult; + description "Detect Multiplier in Last Packet"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { + // My discriminator in last packet + leaf myDisc { config "false"; - description "The card MAC address base"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_Discr; + description "My Discriminator in Last Packet"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { + // Your discriminator in last packet + leaf yourDisc { config "false"; - description "The card MAC address end"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_Discr; + description "Your Discriminator in Last Packet"; } - leaf upTs { + + // Min tx interval in last packet + leaf minTx { config "false"; - type string; + + type bfd_MinTxIntvl; + description "Minimum Tx Interval in Last Packet"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { + // Min rx interval in last packet + leaf minRx { config "false"; - description "The power state of this card"; - // Type is an MO-Defined-Type - type eqpt_PwrState; + type bfd_MinRxIntvl; + description "Minimum Rx Interval in Last Packet"; } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { + // Min echo interval in last packet + leaf minEcho { config "false"; - description "The card firmware revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_MinRxIntvl; + description "Minimum Echo Interval in Last Packet"; } + } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + grouping bfd_SessApp-group { + description "BFD Session App"; + + // Application ID + leaf id { config "false"; - description "The card software revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_AppId; + description "Application ID of the app associated with the BFD session"; + } + leaf name { + config "false"; + type string; + description "Application Name of the app associated with the BFD session"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + // Application sap ID + leaf sapId { config "false"; - description "The card part number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_SapId; + description "Application SAP ID of the app associated with the BFD session"; + } + leaf descr { + config "false"; + type string; + description "Application Description"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // Application session flags + leaf flags { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type bfd_AppFlags; + description "Application Session Flags"; } - // Extension chassis port connected to hosts - container hostextport-items { - list ExtChHP-list { - config "false"; - key "id"; + // Application private data + leaf data { + config "false"; - // Added containment: Prefix=hostextport - // Acquired From Package eqpt - uses eqpt_ExtChHP-group; + type bfd_AppData; + description "Application Private Data"; + } + leaf autoExpTime { + config "false"; + type union { + type string; + type uint64; } + description "Application Auto-Expiry Timestamp"; } + } - // Extension chassis port connected to Leaf - container leafextport-items { - list ExtChFP-list { - config "false"; - key "id"; + grouping cfs_Entity-group { + description "Cfs Entity"; - // Added containment: Prefix=leafextport - // Acquired From Package eqpt - uses eqpt_ExtChFP-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + type nw_AdminSt; + description "Admin State"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + type nw_EntOperSt; + description "Operational State"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // This objects hold cfs instance information. + container inst-items { + + uses cfs_Inst-group; + description "CFS Instance"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping cfs_Inst-group { + description "CFS Instance"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Enable CFS distribution + leaf distribute { + + type cfs_AdminSt; + description "Enable CFS distribution"; } - // Flash memory unit - container flash-items { + // Enable CFS distribution over Ethernet + leaf ethDist { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over Ethernet"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Enable CFS distribution over IPv4 + leaf ipv4Dist { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over IPv4"; } - } - grouping eqpt_Entity-group { + // Enable CFS distribution over IPv6 + leaf ipv6Dist { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over IPv6"; + } + leaf ipv4Mcast { + type address_Ipv4; + default "239.255.70.83"; + description "cfs IPv4 mcast address"; + } + leaf ipv6Mcast { + type address_Ipv6; + default "ff15::efff:4653"; + description "cfs IPv6 mcast address"; + } + container region-items { + list Region-list { + key "regId"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses cfs_Region-group; + description "CFS Region list"; } + description "CFS Region"; } + } - // console policy - container consolep-items { - - // Added containment as a singleton: Prefix=consolep - // Acquired From Package eqpt - uses eqpt_ConsoleP-group; - } + grouping cfs_Region-group { + description "CFS Region"; - // Power supply group policy - container psgp-items { + leaf regId { - // Added containment as a singleton: Prefix=psgp - // Acquired From Package eqpt - uses eqpt_PsgP-group; + type cfs_RegId; + description "CFS Region ID"; } + container app-items { + list App-list { + key "appName"; - // Policy container for slot - container slot-items { - list SlotP-list { - config "false"; - key "type id"; - - // Added containment: Prefix=slot - // Acquired From Package eqpt - uses eqpt_SlotP-group; + uses cfs_App-group; + description "CFS Appname list"; } + description "CFS Appname"; } } - grouping eqpt_ConsoleP-group { + grouping cfs_App-group { + description "CFS Appname"; + leaf appName { + type string; + description "CFS Appname ID"; + } + } - // num of databits per character - // Type is an MO-Defined-Type - leaf dataBits { - config "false"; - description "Data Bits"; + grouping dot1x_Entity-group { + description "Dot1x entity information"; - // Type is an MO-Defined-Type - type eqpt_DataBits; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // timeout for an inactive session in minutes - // Type is an MO-Defined-Type - leaf inactiveIntvl { - config "false"; - description "Inactive Interval"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_InactiveIntvl; + type nw_AdminSt; + description "Admin State"; } - // Terminal parity none, even or odd - // Type is an MO-Defined-Type - leaf parity { + // Operational state + leaf operSt { config "false"; - description "Parity"; - // Type is an MO-Defined-Type - type eqpt_Parity; + type nw_EntOperSt; + description "Operational State"; } - // transmit and receive speed on console port - // Type is an MO-Defined-Type - leaf baudRate { + // Operational errors qualifier + leaf operErr { config "false"; - description "Baud Rate"; - // Type is an MO-Defined-Type - type eqpt_BaudRate; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Async line stopbits - // Type is an MO-Defined-Type - leaf stopBits { - config "false"; - description "Stop Bits"; + // This objects hold per dot1x instance information. There is + // only one instance of dot1x running in the system today + container inst-items { - // Type is an MO-Defined-Type - type eqpt_StopBits; + uses dot1x_Inst-group; + description "Dot1x instance information"; + } + } + + grouping dot1x_Inst-group { + description "Dot1x instance information"; + leaf sysAuthCtrl { + type boolean; + default "true"; + description "Dot1x sys-auth-control"; + } + leaf radAcct { + type boolean; + default "false"; + description "Dot1x radius accounting"; + } + + // Dot1x Mac-Move + leaf macMove { + + type dot1x_MacMove; + description "Dot1x mac-move setting"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - } - grouping eqpt_PsgP-group { - - // Admin redundancy mode - // Type is an MO-Defined-Type - leaf adminRdnM { - description "The power supply group admin redundancy mode"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_PsRdnM; + type nw_InstCtrl; + description "Controls"; } - // The power supply redundancy operational mode - // Type is an MO-Defined-Type - leaf operRdnM { + // Operational errors qualifier + leaf operErr { config "false"; - description "The power supply group operational redundancy mode"; - // Type is an MO-Defined-Type - type eqpt_PsRdnM; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // total power capacity in watts. It depends on the - // redundancy mode and is equal to one of cumCap, - // psRdCap, gridRdCap, FullRdCap - // Type is an MO-Defined-Type - leaf tc { - config "false"; - description "The power supply group total capacity"; + // This object holds dot1x information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_If-group; + description "Dot1x interface information list"; + } + description "Dot1x interface information"; } - // Reserved power in watts - // Type is an MO-Defined-Type - leaf rsdPwr { - config "false"; - description "The power supply group reserved power"; + // This objects holds AAA Authentication Groups + container authconfig-items { - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_AuthConfig-group; + description "Dot1x-AAA Authentication Group information"; } - // Allocated power in watts - // Type is an MO-Defined-Type - leaf alPwr { - config "false"; - description "The power supply group allocated power"; + // This objects holds AAA Accounting Groups + container acctconfig-items { - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_AcctConfig-group; + description "Dot1x-AAA Accounting Group information"; } + } - // Available power in watts - // Type is an MO-Defined-Type - leaf avPwr { - config "false"; - description "The power supply group available power"; + grouping dot1x_If-group { + description "Dot1x interface information"; - // Type is an MO-Defined-Type - type eqpt_Watts; - } - leaf unit { - config "false"; - type string; + // Dot1x Host Mode + leaf hostMode { + + type dot1x_HostMode; + description "Dot1x host mode type"; } - // Available power under various redundancy modes - // Cumulative power available in non-redundant mode. - // It is obtained by summing the individual power - // provided by all present and functioning psu - // Type is an MO-Defined-Type - leaf nRdnCap { - config "false"; - description "The power supply group non-redundant capacity"; + // Dot1x Pae Type + leaf paeType { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_PaeType; + description "Role of dot1x authenticating entity"; } - // power capacity under power supply redundancy, also called - // N+1 redundancy. It is the sum of lowest N rated psu - // Type is an MO-Defined-Type - leaf psRdnCap { - config "false"; - description "The power supply group N+1 redundant capacity"; + // Dot1x MAC Auth Bypass + leaf macAuthBypass { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MacAuthBypass; + description "Dot1x mac auth bypass"; } - // power capacity under AC power redundancy - // Type is an MO-Defined-Type - leaf acRdnCap { - config "false"; - description "AC Redundant Capacity"; + // Dot1x Max Reauth Request + leaf maxReauthReq { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MaxReauthReq; + description "Maximum re-authentication attempts before failing"; } - // power capacity under grid redundancy, also called input - // src redundancy. It is calculated as the minimum of grid - // A and grid B capacity. It is relevant for psu which - // can take two independent inputs. For single input psu, - // grid redundancy is calculated as half of cumulative - // capacity - // Type is an MO-Defined-Type - leaf grdRdnCap { - config "false"; - description "The power supply group grid redundant capacity"; + // Dot1x Max Request + leaf maxReq { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MaxReq; + description "Maximum retries to initiate authentication"; } - // Power capacity under full redundancy. It is calculated - // as the minimum of ps and grid redundancy - // Type is an MO-Defined-Type - leaf flRdnCap { - config "false"; - description "The power supply group full redundant capacity"; + // Dot1x Port Control + leaf portCtrl { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_PortCtrl; + description "Dot1x port control mode"; + } + leaf reAuth { + type boolean; + default "false"; + description "Enable or disable reauthentication for this port"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dot1x Timeout: Quiet Period + leaf quietPeriod { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type dot1x_QuietPeriod; + description "Dot1x timeout quiet period"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Dot1x Timeout: Rate limit period + leaf rateLimitPeriod { - // Type is an MO-Defined-Type - type naming_Descr; + type dot1x_RateLimitPeriod; + description "Dot1x timeout rate limit period"; } - // Rel-def from psuInstPolCons - container rspsuInstPolCons-items { + // Dot1x Timeout: Re-auth Period + leaf reAuthPeriod { - // Added containment as a singleton: Prefix=rspsuInstPolCons - // Acquired From Package eqpt - uses eqpt_RsPsuInstPolCons_source-group; + type dot1x_ReAuthPeriod; + description "Dot1x timeout re-auth period"; } - } - grouping eqpt_SlotP-group { + // Dot1x Timeout: Server Timeout + leaf serverTimeout { - // type of the slot - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The slop policy type"; + type dot1x_ServerTimeout; + description "Dot1x timeout server timeout"; + } - // Type is an MO-Defined-Type - type eqpt_SlotT; + // Dot1x Timeout: Supplicant Timeout + leaf suppTimeout { + + type dot1x_SuppTimeout; + description "Dot1x timeout supplicant timeout"; } - // logical slot id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The slot policy logical identifier"; + // Dot1x Timeout: Tx Period + leaf txPeriod { - // Type is an MO-Defined-Type - type eqpt_Id; + type dot1x_TxPeriod; + description "Dot1x timeout tx period"; } - // Controls - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "The slot policy controls"; + // Dot1x Timeout: Inactivity Period + leaf inactivityPeriod { - // Type is an MO-Defined-Type - type eqpt_SlotControl; + type dot1x_InactivityPeriod; + description "Dot1x timeout inactivity period"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; + + type naming_Descr1024; description "Description"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping eqptcapacity_Entity-group { + // Administrative state + leaf adminSt { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type nw_IfAdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping eqptdiag_Entity-group { + grouping dot1x_AuthConfig-group { + description "Dot1x-AAA Authentication Group information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type naming_Descr; + description "TBD"; } - // Diag Group to Diag Test Mappings - container grptests-items { - list GrpTests-list { - config "false"; - key "subjClass model grp"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=grptests - // Acquired From Package eqptdiagp - uses eqptdiagp_GrpTests-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Diag rule for bootup and health tests - container rule-items { - list Rule-list { - config "false"; - key "type trig"; + leaf descr { - // Added containment: Prefix=rule - // Acquired From Package eqptdiag - uses eqptdiag_Rule-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping eqptdiagp_GrpTests-group { - leaf subjClass { - config "false"; - type string; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Model - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model of the Subject"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type eqpt_Model; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Diag group name - // Type is an MO-Defined-Type - leaf grp { - config "false"; - description "Diag Test Group"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type eqptdiag_AllGrpsT; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Bitmap of tests that are in the diag test group for the givel - // class and model of the subject - // Type is an MO-Defined-Type - leaf testBm { - config "false"; - description "CLass Name of the Subject"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type eqptdiag_TypeBm; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type naming_Descr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type naming_Descr; + type aaa_ProviderGroupName; + description "Provider Group"; } } - grouping eqptdiag_Rule-group { + grouping dot1x_AcctConfig-group { + description "Dot1x-AAA Accounting Group information"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { - config "false"; - description "Trigger"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type test_Trig; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { - config "false"; - description "Frequency"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type test_Freq; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Test type - // Inherited From eqptdiag:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type eqptdiag_Type; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Diag subject - container subj-items { - list Subj-list { - config "false"; - key "oDn"; + leaf providerGroup4 { - // Added containment: Prefix=subj - // Acquired From Package eqptdiag - uses eqptdiag_Subj-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping eqptdiag_Subj-group { - // Object primary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oPk { - config "false"; - description "Object Primary Key"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type test_PInstId; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Object secondary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oSk { - config "false"; - description "Object Secondary Key"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type test_PInstId; - } - leaf oDn { - config "false"; - type string; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Consolidated operational state of the test - // on this subject - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type test_OperSt; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Prof. Name - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type naming_Name; + type aaa_ProviderGroupName; + description "Provider Group"; } + } - // Diag result - container rslt-items { - list Rslt-list { - config "false"; - key "ts"; - - // Added containment: Prefix=rslt - // Acquired From Package eqptdiag - uses eqptdiag_Rslt-group; - } - } + grouping hsrp_Entity-group { + description "HSRP Entity"; - // Port test stats - container portteststats-items { + leaf name { - // Added containment as a singleton: Prefix=portteststats - // Acquired From Package eqptdiag - uses eqptdiag_PortTestStats-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping eqptdiag_Rslt-group { - - // Trigger for this result - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf trig { - config "false"; - description "Trigger"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type test_Trig; + type nw_AdminSt; + description "Admin State"; } - // Test operational status - // Inherited From test:Rslt - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type nw_EntOperSt; + description "Operational State"; } - // Test status qualifier, deprecate this XXX - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "Operational State Qualifier"; + // This objects holds HSRP instance information. There is only one instance of HSRP supported currently + container inst-items { - // Type is an MO-Defined-Type - type test_OperStQual; - } - leaf ts { - config "false"; - type string; + uses hsrp_Inst-group; + description "HSRP Instance"; } + } + + grouping hsrp_Inst-group { + description "HSRP Instance"; - // Prof. Name - // Inherited From test:Rslt - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping eqptdiag_PortTestStats-group { - - // Packets Sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Packets Sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_AdminSt; + description "Admin State"; } - // Packets Received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Packets Received"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_InstCtrl; + description "Controls"; } - // Packets Dropped - // Type is an MO-Defined-Type - leaf pktDrop { - config "false"; - description "Packets Dropped"; + // This object holds interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses hsrp_If-group; + description "Interface with HSRP Enabled list"; + } + description "Interface with HSRP Enabled"; } } - grouping leqpt_LooseNode-group { + grouping hsrp_If-group { + description "Interface with HSRP Enabled"; - // A unique identifier for this object - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description " Property has READ-Create access."; + // Hsrp version + leaf version { - // Type is an MO-Defined-Type - type fabric_LooseNodeId; + type hsrp_HsrpVersion; + description "Hsrp version"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "TBD"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type hsrp_IfControl; + description "Controls"; } - // System Name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "TBD"; + // Use-Bia Scope + leaf biaScope { - // Type is an MO-Defined-Type - type naming_Descr; + type hsrp_BiaScopeType; + description "Use-Bia Scope"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Rel-def target from epDefToLooseNode - // Inherited From leqpt:LooseNode - container rtfvEpDefToLooseNode-items { + leaf descr { - // Abstract containment of rtfvEpDefToLooseNode derived from leqpt:LooseNode - list RtFvEpDefToLooseNode-list { - config "false"; - key "tDn"; + type naming_Descr1024; + description "Description"; + } - // Added containment: Prefix=rtfvEpDefToLooseNode - // Acquired From Package fv - uses fv_RtFvEpDefToLooseNode_target-group; - } + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Rel-def target from lsNodeAtt - // Inherited From leqpt:LooseNode - container rtfvLsNodeAtt-items { + // Administrative state + leaf adminSt { - // Abstract containment of rtfvLsNodeAtt derived from leqpt:LooseNode - list RtFvLsNodeAtt-list { - config "false"; - key "tDn"; + type nw_IfAdminSt; + description "Admin State"; + } + container grp-items { + list Group-list { + key "id af"; - // Added containment: Prefix=rtfvLsNodeAtt - // Acquired From Package fv - uses fv_RtFvLsNodeAtt_target-group; + uses hsrp_Group-group; + description "HSRP Virtual Router list"; } + description "HSRP Virtual Router"; } - // Rel-def target from tunnelToLooseNode - // Inherited From leqpt:LooseNode - container rttunnelTunnelToLooseNode-items { - - // Abstract containment of rttunnelTunnelToLooseNode derived from leqpt:LooseNode - list RtTunnelTunnelToLooseNode-list { - config "false"; - key "tDn"; + container rtvrfMbr-items { - // Added containment: Prefix=rttunnelTunnelToLooseNode - // Acquired From Package tunnel - uses tunnel_RtTunnelTunnelToLooseNode_target-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Rel-def from LsNodeToIf - container rslsNodeToIf-items { + grouping hsrp_Group-group { + description "HSRP Virtual Router"; - // Abstract containment of rslsNodeToIf derived from leqpt:LooseNode - list RsLsNodeToIf-list { - config "false"; - key "tDn"; + // HSRP Group ID + leaf id { - // Added containment: Prefix=rslsNodeToIf - // Acquired From Package leqpt - uses leqpt_RsLsNodeToIf_source-group; - } + type hsrp_GroupId; + description "Group Id"; } - // Rel-def from LsAttLink - container rslsAttLink-items { + // HSRP Address Family + leaf af { - // Added containment as a singleton: Prefix=rslsAttLink - // Acquired From Package leqpt - uses leqpt_RsLsAttLink_source-group; + type hsrp_GroupAf; + description "Group Address Family"; } - } - - grouping platform_Entity-group { - leaf descr { - type string; + leaf ip { + type address_Ip; + description "Primary IP Address"; } - // Type is an MO-Defined-Type - leaf profileMode { - description "Hardware profile mode for platform entity "; + // HSRP primary IP Obtain Mode + leaf ipObtainMode { - // Type is an MO-Defined-Type - type platform_HwProfile; + type hsrp_GrpIpObtainMode; + description "IP Obtain Mode"; } - // Type is an MO-Defined-Type - leaf profileTuple { - description "Profile tuple for platform entity"; + // Control Bits + leaf ctrl { - // Type is an MO-Defined-Type - type platform_Tuple; + type hsrp_GrpControl; + description "Group control bits"; } - // Type is an MO-Defined-Type - leaf unicastSyslogThreshold { - description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for unicast cases. The default is 90 percent of the total available shared buffer"; + // Minimum Preemption delay before this group can preempt a high priority Active + leaf preemptDelayMin { - // Type is an MO-Defined-Type - type platform_Percentage; + type hsrp_PreemptDelay; + description "Miminum delay before preempt"; } - // Type is an MO-Defined-Type - leaf lpmMaxLimit { - description "Maximum limit for LPM routes"; + // Preemption delay after a switch reboot before this group can preempt a High priority Active + leaf preemptDelayReload { - // Type is an MO-Defined-Type - type platform_LpmMaxLimits; + type hsrp_PreemptDelay; + description "Preempt delay after a switch reload"; } - // Type is an MO-Defined-Type - leaf unicastMaxLimit { - description "Maximum limit for unicast LPM routes"; + // Maximum number of seconds to allow IP redundancy clients to prevent preemption @@@ Dont expose thi to user + leaf preemptDelaySync { - // Type is an MO-Defined-Type - type platform_UnicastMaxLimit; + type hsrp_PreemptDelay; + description "Wait for IP redundancy clients"; } - // Type is an MO-Defined-Type - leaf multicastMaxLimit { - description "Maximum limit for multicast LPM routes"; + // HSRP Hello packet interval + leaf helloIntvl { - // Type is an MO-Defined-Type - type platform_MulticastMaxLimit; + type hsrp_HelloIntvl; + description "Hello Interval"; } - // Type is an MO-Defined-Type - leaf multicastServiceReflectPort { - description "mcast service-reflect port"; + // HSRP Hold interval + leaf holdIntvl { - // Type is an MO-Defined-Type - type platform_multicastServiceReflectPort; + type hsrp_HoldIntvl; + description "Hold Interval"; } - // Type is an MO-Defined-Type - leaf multicastSyslogThreshold { - description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for multicast cases. The default is 90 percent of the total available shared buffer"; + // Grouph Priority + leaf prio { - // Type is an MO-Defined-Type - type platform_Percentage; + type hsrp_GrpPrio; + description "Group Priority"; } - // Type is an MO-Defined-Type - leaf IPV6alpmCarveValue { - description "Hardware profile ipv6 alpm carve-value"; + // forwarding lower threshold + leaf fwdLwrThrld { - // Type is an MO-Defined-Type - type platform_IPV6alpmCarveValues; + type hsrp_GrpPrio; + description "Fowarding Lower Threshold"; } - // Type is an MO-Defined-Type - leaf routingMode { - description "Routing mode"; + // forwarding upper threshold + leaf fwdUprThrld { - // Type is an MO-Defined-Type - type platform_RoutingMode; + type hsrp_GrpPrio; + description "Forwarding Upper Threshold"; } - // Type is an MO-Defined-Type - leaf pcLbAlgo { - description "Pc load-balance internal algorithm"; + // HSRP master name for the group + leaf name { - // Type is an MO-Defined-Type - type platform_PcLbAlgo; + type hsrp_GrpName; + description "Master name string"; } - // valif for n3ktoronly - // Type is an MO-Defined-Type - leaf urpfStatus { - description "Unicast Reverse Path Forwarding Status"; + // HSRP Slave/follow config the group + leaf follow { - // Type is an MO-Defined-Type - type nw_AdminSt; + type hsrp_GrpName; + description "Master name string to follow"; } - // valid for n9knontahoe - // Type is an MO-Defined-Type - leaf qosMinBuffer { - description "qos min-buffer qos-group"; + // HSRP authentication type for the group + leaf type { - // Type is an MO-Defined-Type - type platform_QosMinBuffer; + type hsrp_AuthT; + description "Authentication Type for the group"; } - // Type is an MO-Defined-Type - leaf switchingMode { - description "Corresponds to the global switching mode. Default is cut-through"; + // HSRP authentication key for the group + leaf key { - // Type is an MO-Defined-Type - type platform_SwitchingMode; + type hsrp_AuthKey; + description "Authentication key for the group"; } - - // Type is an MO-Defined-Type - leaf switchingFabricSpeed { - description "Corresponds to the switching fabric speed"; - - // Type is an MO-Defined-Type - type platform_FabricSpeed; + leaf mac { + type address_Mac; + description "Configured MAC address for the group"; } - // TCAM resource utilization on the module - container mod-items { - list TcamStatsModule-list { - config "false"; - key "module"; + // Class for HSRP secondary vips + container addr-items { + list Addr-list { + key "ip"; - // Added containment: Prefix=mod - // Acquired From Package platform - uses platform_TcamStatsModule-group; + uses hsrp_Addr-group; + description "HSRP Secondary VIP list"; } + description "HSRP Secondary VIP"; } - container nve-items { - list NVE-list { - key "id"; + } - // Added containment: Prefix=nve - // Acquired From Package platform - uses platform_NVE-group; - } + grouping hsrp_Addr-group { + description "HSRP Secondary VIP"; + leaf ip { + type address_Ip; + description "Secondary IP Address"; } + } - // Container for all the BDs to hold platform data in the system. - container bd-items { - - // Added containment as a singleton: Prefix=bd - // Acquired From Package platform - uses platform_BdEntity-group; - } + grouping icmpv4_Entity-group { + description "ICMPv4 Entity"; - // Container for all the interfaces in the system. - container intf-items { + leaf name { - // Added containment as a singleton: Prefix=intf - // Acquired From Package platform - uses platform_Intf-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Container for all the power off config data in the system. - container poweroffEntity-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=poweroffEntity - // Acquired From Package platform - uses platform_PoweroffEntity-group; + type nw_AdminSt; + description "Admin State"; } - // Container for all the tcam regions in the system. - container tcamRegion-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=tcamRegion - // Acquired From Package platform - uses platform_TcamRegion-group; + type nw_EntOperSt; + description "Operational State"; } - container latencymonitor-items { + // This objects hold per icmpv4 instance information. There is + // only one instance of icmpv4 running in the system today + container inst-items { - // Added containment as a singleton: Prefix=latencymonitor - // Acquired From Package platform - uses platform_LatencyMonitor-group; + uses icmpv4_Inst-group; + description "ICMPv4 Instance"; } + } - container buffermonitor-items { + grouping icmpv4_Inst-group { + description "ICMPv4 Instance"; - // Added containment as a singleton: Prefix=buffermonitor - // Acquired From Package platform - uses platform_BufferMonitor-group; - } - } + leaf name { - grouping platform_TcamStatsModule-group { - leaf module { - config "false"; - type uint16; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // TCAM resource utilization on the asic instance - container inst-items { - list TcamStatsInst-list { - config "false"; - key "instance"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=inst - // Acquired From Package platform - uses platform_TcamStatsInst-group; - } + type nw_AdminSt; + description "Admin State"; } - } - grouping platform_TcamStatsInst-group { - leaf instance { - config "false"; - type uint16; + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // TCAM regions on the asic instance - container region-items { - list TcamStatsRegion-list { - config "false"; - key "regionName"; + // This objects hold per icmpv4 layer3 domain (vrf) + // information + container dom-items { + list Dom-list { + key "name"; - // Added containment: Prefix=region - // Acquired From Package platform - uses platform_TcamStatsRegion-group; + uses icmpv4_Dom-group; + description "ICMPv4 Domain list"; } + description "ICMPv4 Domain"; } } - grouping platform_TcamStatsRegion-group { - leaf regionName { - config "false"; - type string; - } - leaf regionSize { - config "false"; - type uint16; - } - - // TCAM utilization values for the regions - container utilization-items { + grouping icmpv4_Dom-group { + description "ICMPv4 Domain"; - // Added containment as a singleton: Prefix=utilization - // Acquired From Package platform - uses platform_TcamResourceUtilization-group; - } - } + leaf name { - grouping platform_TcamResourceUtilization-group { - leaf used { - config "false"; - type uint16; - } - leaf free { - config "false"; - type uint16; - } - leaf percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf ipv4Used { - config "false"; - type uint16; - } - leaf ipv4Percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf ipv6Used { - config "false"; - type uint16; - } - leaf ipv6Percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf macUsed { - config "false"; - type uint16; - } - leaf macPercent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf allUsed { - config "false"; - type uint16; - } - leaf allPercent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf otherUsed { - config "false"; - type uint16; - } - leaf otherPercent { - config "false"; - type decimal64 { - fraction-digits 2; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - } - grouping platform_NVE-group { - leaf id { - type uint16; - } - container infravlan-items { - list InfraVlan-list { + // This object holds icmp information that is operated at a + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=infravlan - // Acquired From Package platform - uses platform_InfraVlan-group; + uses icmpv4_If-group; + description "ICMPv4 Interface list"; } + description "ICMPv4 Interface"; } } - grouping platform_InfraVlan-group { + grouping icmpv4_If-group { + description "ICMPv4 Interface"; - // Type is an MO-Defined-Type + // Interface ID of this endpoint leaf id { - description "Id for all vlans that are infravlan enabled"; - // Type is an MO-Defined-Type - type platform_infraVlanId; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Type is an MO-Defined-Type - leaf force { - description "Force flag if infra vlan added by force"; + // Interface controls + // Default value handled in local MO type + leaf ctrl { - // Type is an MO-Defined-Type - type platform_infraVlanForce; + // Type is a Local-MO-Defined-Type + type icmp_IfControl_If_ctrl; + description "Controls"; } - } - grouping platform_BdEntity-group { - leaf descr { - config "false"; - type string; + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Layer2 Bridge-domain - container bd-items { - list Bd-list { - key "fabEncap"; + grouping icmpv6_Entity-group { + description "ICMPv6 Entity"; - // Added containment: Prefix=bd - // Acquired From Package platform - uses platform_Bd-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping platform_Bd-group { - leaf fabEncap { - type string; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - } - grouping platform_Intf-group { - leaf descr { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } - // This object holds platfrom information at an - // interface level - container if-items { - list If-list { - key "id"; + // This objects hold per icmpv6 instance information. There is + // only one instance of icmpv6 running in the system today + container inst-items { - // Added containment: Prefix=if - // Acquired From Package platform - uses platform_If-group; - } + uses icmpv6_Inst-group; + description "ICMPv6 Instance"; } } - grouping platform_If-group { + grouping icmpv6_Inst-group { + description "ICMPv6 Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type icmpv6_OperSt; + description "Operational State"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Adjacency stale timer + leaf adjStaleTimer { - // Type is an MO-Defined-Type - type naming_Descr1024; + type icmpv6_AdjStaleTimer; + description "Adjacency stale timer"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Adjacency stale timer with icmp option + leaf adjStaleTimerIcmp { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Ipv6 adjacency stale timer with ICMP option"; } - container eltmIf-items { + leaf name { - // Added containment as a singleton: Prefix=eltmIf - // Acquired From Package eltm - uses eltm_If-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - // Inherited From platform:If - container rtvrfMbr-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - // Inherited From platform:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_InstCtrl; + description "Controls"; } - } - - grouping eltm_If-group { - // hw bd id (allocated for l3 ports, port-channels) - // Type is an MO-Defined-Type - leaf hwBdId { - config "false"; - description "Hw Bd Id (allocated for L3 Ports, Port-channels)"; + // This object holds icmpv6 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type l2_DomOperId; + uses icmpv6_If-group; + description "ICMPV6 Interface list"; + } + description "ICMPV6 Interface"; } - } + container logs-items { + list ICMPv6EventLogs-list { + key "eventType"; - grouping platform_PoweroffEntity-group { - leaf descr { - config "false"; - type string; + uses icmpv6_ICMPv6EventLogs-group; + description "ICMPv6 Event History Logging list"; + } + description "ICMPv6 Event History Logging"; } - container poweroffModule-items { - list PoweroffModule-list { - key "id"; - // Added containment: Prefix=poweroffModule - // Acquired From Package platform - uses platform_PoweroffModule-group; - } + // Interface statistics icmpv6 common packet counters (global and per-i/f) + // Ephemeral data + container ifstats-items { + + uses icmpv6_IfStats-group; + description "ICMPv6 interface statistics"; } } - grouping platform_PoweroffModule-group { + grouping icmpv6_If-group { + description "ICMPV6 Interface"; - // Type is an MO-Defined-Type - leaf id { - description "Module identifier for power off property"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type platform_moduleNumberSt; + type icmpv6_IfControl; + description "Controls"; } - // Type is an MO-Defined-Type - leaf poweroffStatus { - description "Power off config state for the module [yes/no]"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type platform_poweroffSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - - grouping platform_TcamRegion-group { - // description - // Type is an MO-Defined-Type - leaf eRaclSize { - description "Egress RACL TCAM region size"; + // Interface statistics icmpv6 common packet counters (global and per-i/f) + // Ephemeral data + container ifstats-items { - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + uses icmpv6_IfStats-group; + description "ICMPv6 interface statistics"; } - // Type is an MO-Defined-Type - leaf vpcConvergenceSize { - description "VPC TCAM region size"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Type is an MO-Defined-Type - leaf raclLiteSize { - description "RACL TCAM region size"; + grouping icmpv6_IfStats-group { + description "ICMPv6 interface statistics"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { + config "false"; + + type nw_Counter64; + description "Total messages sent"; } - // Type is an MO-Defined-Type - leaf ipv6IfaclSize { - description "IPv6 Interface ACL TCAM region size"; + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Total messages received"; } - // Type is an MO-Defined-Type - leaf eIpv6RaclSize { - description "Egress IPv6 RACL TCAM region size"; + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Error messages sent"; } - // Type is an MO-Defined-Type - leaf ifaclLiteSize { - description "Interface ACL Lite TCAM region size"; + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Error messages received"; } - // Type is an MO-Defined-Type - leaf vaclSize { - description "Virtual ACL TCAM region size"; + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Interface Down Drop Count sent"; } - // Type is an MO-Defined-Type - leaf ifaclSize { - description "Interface ACL TCAM region size"; + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Interface Down Drop Count received"; } - // Type is an MO-Defined-Type - leaf eVaclSize { - description "Egress VACL TCAM region size"; + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - // Type is an MO-Defined-Type - leaf qosSize { - description "QOS TCAM region size"; + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - // Type is an MO-Defined-Type - leaf raclSize { - description "RACL TCAM region size"; + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Type is an MO-Defined-Type - leaf ingFlowSize { - description "Ingress Flow TCAM region size"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_flowTcamRegionSize; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Type is an MO-Defined-Type - leaf natSize { - description "NAT TCAM region size"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - } - - grouping platform_LatencyMonitor-group { - // description - // Type is an MO-Defined-Type - leaf sampling { - description "Latency Monitor Sampling"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorSampling; + type nw_Counter64; + description "Destination Unreachables sent"; } - // Type is an MO-Defined-Type - leaf latencyMonitorThreshholdAvg { - description "Average latency monitor threshold"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorThreshholdAv; + type nw_Counter64; + description "Destination Unreachables received"; } - // Type is an MO-Defined-Type - leaf latencyMonitorThreshholdMax { - description "Maximum latency monitor threshold"; + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorThreshholdMx; + type nw_Counter64; + description "Administratively Prohibited sent"; } - // Type is an MO-Defined-Type - leaf latencyMonitorState { - description "Latency monitor state"; + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorSt; + type nw_Counter64; + description "Administratively Prohibited received"; } - } - - grouping platform_BufferMonitor-group { - // description - // Type is an MO-Defined-Type - leaf sampling { - description "Buffer Monitor Sampling"; + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorSampling; + type nw_Counter64; + description "Time Exceeded sent "; } - // Type is an MO-Defined-Type - leaf bufferMonitorThreshhold { - description "Buffer monitor threshold"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorThreshhold; + type nw_Counter64; + description "Time Exceeded received"; } - // Type is an MO-Defined-Type - leaf bufferMonitorState { - description "Buffer monitor state"; + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorSt; + type nw_Counter64; + description "Parameter Problems sent"; } - // Type is an MO-Defined-Type - leaf bufferMonitorMode { - description "Buffer monitor mode"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorMd; + type nw_Counter64; + description "Parameter Problems received"; } - } - - grouping satm_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Echo Request sent"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter64; + description "Echo Request received"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_Counter64; + description "Echo Replies sent"; } - // Discovered extended chassis - container dextch-items { - list DExtCh-list { - config "false"; - key "vendor model ser"; + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { + config "false"; - // Added containment: Prefix=dextch - // Acquired From Package satm - uses satm_DExtCh-group; - } + type nw_Counter64; + description "Echo Replies received"; } - // Fabric port definition - container fabp-items { - list FabP-list { - config "false"; - key "id"; + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { + config "false"; - // Added containment: Prefix=fabp - // Acquired From Package satm - uses satm_FabP-group; - } + type nw_Counter64; + description "Redirects sent"; } - } - - grouping satm_DExtCh-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_ExtChOperSt; + type nw_Counter64; + description "Redirects received"; } - // Extended chassis software version - // Type is an MO-Defined-Type - leaf ver { + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - description "Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Packet Too Big sent"; } - // Switch software version - // Type is an MO-Defined-Type - leaf swVer { + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - description "Switch Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Packet Too Big received"; } - // Interim extended chassis software version - // Type is an MO-Defined-Type - leaf intVer { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Interim Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Router Advertisements sent"; } - // Interim switch software version - // Type is an MO-Defined-Type - leaf swIntVer { + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { config "false"; - description "Interim Switch Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Router Advertisements received"; } - // Extended chassis software generation - // Type is an MO-Defined-Type - leaf swGen { + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { config "false"; - description "Software Generation"; - // Type is an MO-Defined-Type - type satm_SwGen; + type nw_Counter64; + description "Router Solicitations sent"; } - // Control channel fabric port - // Type is an MO-Defined-Type - leaf controlFPort { + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { config "false"; - description "Control Channel Fabric Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Router Solicitations received"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter64; + description "Neighbor Advertisements sent"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter64; + description "Neighbor Advertisements received"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter64; + description "Neighbor Solicitations sent"; } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter64; + description "Neighbor Solicitations received"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: satm:DExtCh->id - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type - leaf id { + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "101..199"; - } + type nw_Counter64; + description "Duplicate router RA received"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT + // Ephemeral data + leaf fastpthRcvd { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Fastpath Packets"; } - } - - grouping satm_FabP-group { - // Interface ID of port - // Type is an MO-Defined-Type - leaf id { + // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT + // Ephemeral data + leaf fastpathDsbleIgnRcvd { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } - // Fabric port operational state - // Type is an MO-Defined-Type - leaf operSt { + // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT + // Ephemeral data + leaf fastpathOtherIgnRcvd { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_OperSt; + type nw_Counter64; + description "Ignored fastpath packets - others"; } - // Extended chassis id - // Type is an MO-Defined-Type - leaf extChId { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT + // Ephemeral data + leaf mldV1QueriesSent { config "false"; - description "Extended Chassis ID"; - // Type is an MO-Defined-Type - type eqpt_ExtChId; + type nw_Counter64; + description "V1 queries sent"; } - // Fabric port FSM state - // Type is an MO-Defined-Type - leaf fsmSt { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT + // Ephemeral data + leaf mldV1QueriesRecv { config "false"; - description "Fabric FSM State"; - // Type is an MO-Defined-Type - type satm_FpFsmSt; + type nw_Counter64; + description "V1 queries received"; } - leaf remoteLinkId { + + // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT + // Ephemeral data + leaf mldV2QueriesSent { config "false"; - type uint16; + + type nw_Counter64; + description "V2 queries sent"; } - // Fabric port flags - // Type is an MO-Defined-Type - leaf flags { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT + // Ephemeral data + leaf mldV2QueriesRecv { config "false"; - description "Fabric Port Flags"; - // Type is an MO-Defined-Type - type satm_FportFlags; + type nw_Counter64; + description "V2 queries received"; } - // Satellite manager host port - container hostp-items { - list HostP-list { - config "false"; - key "id"; + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV1ReportsSent { + config "false"; - // Added containment: Prefix=hostp - // Acquired From Package satm - uses satm_HostP-group; - } + type nw_Counter64; + description "V1 reports sent"; } - // Remote fcot definition - container remotefcot-items { + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV1ReportsRecv { + config "false"; - // Added containment as a singleton: Prefix=remotefcot - // Acquired From Package satm - uses satm_RemoteFcot-group; + type nw_Counter64; + description "V1 reports received"; } - // Remote X2 fcot definition - container remotefcotx2-items { + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV2ReportsSent { + config "false"; - // Added containment as a singleton: Prefix=remotefcotx2 - // Acquired From Package satm - uses satm_RemoteFcotX2-group; + type nw_Counter64; + description "V2 reports sent"; } - } - grouping satm_HostP-group { - - // Interface ID of port - // Type is an MO-Defined-Type - leaf id { + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV2ReportsRecv { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "V2 reports received"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT + // Ephemeral data + leaf mldV1LeavesSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_HpOperSt; + type nw_Counter64; + description "V1 leaves sent"; } - // Fabric port - // Type is an MO-Defined-Type - leaf fabricPort { + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT + // Ephemeral data + leaf mldV1LeavesRecv { config "false"; - description "Fabric Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "V1 leaves received"; } } - grouping satm_RemoteFcot-group { - leaf isFcotPresent { - config "false"; - type boolean; - } + grouping icmpv6_ICMPv6EventLogs-group { + description "ICMPv6 Event History Logging"; - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + // Type of Event + leaf eventType { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type icmpv6_EventType; + description "Event Log Type"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Type of Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type icmpv6_EventLogSize; + description "Event Log Size"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + grouping igmpsnoop_Entity-group { + description "Holds IGMP Snooping Entity Information"; - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; - type string; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf xcvrId { - config "false"; - type uint8; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf xcvrExtId { + + // Operational state + leaf operSt { config "false"; - type uint8; + + type nw_EntOperSt; + description "Operational State"; } - leaf connectType { + + // Operational errors qualifier + leaf operErr { config "false"; - type uint8; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Xcvr code field - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf xcvrCode { - config "false"; - description "Transceiver Code"; + // This objects hold per igmp instance information. There is only + // one instance of igmp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type ethpm_SfpXcvrCodeBytes; + uses igmpsnoop_Inst-group; + description "Holds IGMP Snooping Instance information"; } - leaf encoding { - config "false"; - type uint8; + } + + grouping igmpsnoop_Inst-group { + description "Holds IGMP Snooping Instance information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf brIn100MHz { - config "false"; - type uint8; + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf baseResvd1 { - config "false"; - type uint8; + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - leaf distInKmFor9u { + + // Operational errors qualifier + leaf operErr { config "false"; - type uint8; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf distIn100mFor9u { + + // All router multicast group address (GIPo), outer multicast + // encapsulation ip address + leaf allRtrMcastEncap { config "false"; - type uint8; + + type mcast_GrpIp; + description "All Router Multicast Encapsulation"; } - leaf distIn10mFor50u { + + // Flags + leaf flags { config "false"; - type uint8; + + type ipmcsnoop_InstFlags; + description "Flags"; } - leaf distIn10mFor60u { - config "false"; - type uint8; + + // This objects hold per igmp domain information + container dom-items { + + uses igmpsnoop_Dom-group; + description "Holds IGMP Snooping Domain information"; } - leaf distIn1mForCu { - config "false"; - type uint8; + + // This objects hold per Instance statistics operational + // information. This is a singleton within Instance + container inststats-items { + + uses igmpsnoop_InstStats-group; + description "Holds statistics data per Igmpsnoop Instance"; } - leaf baseResvd2 { + } + + grouping igmpsnoop_Dom-group { + description "Holds IGMP Snooping Domain information"; + leaf operCfgRecovery { config "false"; - type uint8; + type boolean; + description "Running configuration recovery"; } - leaf vendorName { - config "false"; - type string; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "IP Multicast snooping domain name"; } - leaf baseResvd3 { + + // Id for this domain @@@ This comes from the domain id assigned by the + // PE for the bridge domain + leaf id { config "false"; - type uint8; + + type l2_DomId; + description "Operational domain identifier"; } - leaf vendorPn { - config "false"; + leaf encap { type string; + description "L2 Domain Fabric Encapsulation"; } - leaf vendorRev { + + // Admin State + leaf adminSt { config "false"; - type string; + + type nw_AdminSt; + description "Administrative State"; } - // Reserved field 4 - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf baseResvd4 { - config "false"; - description "Base Reserved Field"; + // Controls + leaf ctrl { - // Type is an MO-Defined-Type - type ethpm_SfpReserved4Array; + type ipmcsnoop_DomControl; + description "Controls for IP milticast domains"; } - leaf ccid { + + // Flags + leaf flags { config "false"; - type uint8; + + type ipmcsnoop_DomFlags; + description "Flags for IP milticast domains"; } - // Extended option - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf extOption { + // Forwarding mode + leaf fwdMode { config "false"; - description "Extended Option"; - // Type is an MO-Defined-Type - type ethpm_SfpExtendedOptionBytes; + type ipmcsnoop_FwdMode; + description "Operating Fowarding Mode"; } - leaf brMaxMargin { + + // Number of router interfaces + leaf numRtrIf { config "false"; - type uint8; + + type nw_Counter32; + description "Multicast Router Interfaces"; } - leaf brMinMargin { + + // Number of multicast groups + leaf numMcGrp { config "false"; - type uint8; + + type nw_Counter32; + description "Number of Multicast Groups"; } - leaf vendorSn { + + // Number of Source groups + leaf numSrcGrp { config "false"; - type string; + + type nw_Counter32; + description "Number of Multicast Source Groups"; } - leaf dateCode { + leaf grpFlushTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Group Flush No Querier Timestamp"; } - leaf diagMonType { + leaf nextQueryTs { config "false"; - type uint8; + type union { + type string; + type uint64; + } + description "Next Query Timestamp"; } - leaf enhOption { + leaf nextQueryExpTs { config "false"; - type uint8; + type union { + type string; + type uint64; + } + description "Next Query Timestamp"; } - leaf ccex { + + // Mrtr Epg Id used when sending packets to mrtr port + leaf mrtrEpgId { config "false"; - type uint8; + + type l2_DomId; + description "Mrouter Endpoint Group ID"; } - // Vendor data - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorData { - config "false"; - description "TBD"; + // IGMP database + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type ethpm_X2VendorDataBytes; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses igmpsnoop_Db-group; + description "Database record with type of data to display list"; + } + description "Database record with type of data to display"; } - leaf maxSpeed { - config "false"; - type uint32; + + // This objects hold per igmp domain statistics operational + // information. This is a singleton within a Dom + container domstats-items { + + uses igmpsnoop_DomStats-group; + description "Holds statistics data per Igmpsnoop Domain"; } - leaf minSpeed { - config "false"; - type uint32; + + // Multicast router if that is configured statically + container strtrif-items { + list StRtrIf-list { + config "false"; + key "id"; + + uses igmpsnoop_StRtrIf-group; + description "Holds IGMP Static Router Interface configuration information list"; + } + description "Holds IGMP Static Router Interface configuration information"; } - leaf fcotNum { - config "false"; - type uint8; + + // Multicast router if @@@ Mulitcast router if in the BD. These can be either + // configured by the admin or discovered through protocols + // like PIM, IGMP. + container rtrif-items { + list RtrIf-list { + config "false"; + key "id"; + + uses igmpsnoop_RtrIf-group; + description "Holds configuration information for Router Interface list"; + } + description "Holds configuration information for Router Interface"; } - leaf gigEthCC { - config "false"; - type uint8; + + // This objects is the parent for vlan config mode params + container vlan-items { + list Vlan-list { + key "vlanid"; + + uses igmpsnoop_Vlan-group; + description "Holds IGMP snooping vlan configurations list"; + } + description "Holds IGMP snooping vlan configurations"; } - leaf fCTxType { - config "false"; - type uint8; + + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; + + uses igmpsnoop_Intf-group; + description "Holds IGMP snooping Interface configurations list"; + } + description "Holds IGMP snooping Interface configurations"; } - } - grouping satm_RemoteFcotX2-group { - leaf isFcotPresent { - config "false"; - type boolean; + // This objects holds configurable params in + // bridge domain config mode + container bd-items { + list BD-list { + key "bdid"; + + uses igmpsnoop_BD-group; + description "Holds IGMP Snooping Bridge Domain Configurations list"; + } + description "Holds IGMP Snooping Bridge Domain Configurations"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + // This objects holds configurable params in global config mode + container gl-items { - // Type is an MO-Defined-Type - type ethpm_FcotState; + uses igmpsnoop_Gl-group; + description "Holds IGMP Snooping Configurations in Global Configuration Mode"; } + } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { + grouping igmpsnoop_Db-group { + description "Database record with type of data to display"; + + // Ephemeral data + leaf name { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type + // Type of the repository + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; - type string; - } - leaf connectType { - config "false"; - type uint8; + type ipmcsnoop_DbT; + description "Database Type identifying the oper data to display"; } - leaf bitEncoding { + + // Ephemeral data + leaf totalMacCount { config "false"; - type uint8; + type uint32; + description "Total mac count"; } - // Bit rate (Mbps) - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf bitRateMbps { - config "false"; - description "TBD"; + // igmpsnoop global records + // Ephemeral data + container gsnoop-items { - // Type is an MO-Defined-Type - type ethpm_X2BitRateBytes; - } - leaf protocolType { - config "false"; - type uint8; + uses igmpsnoop_GSnoopRec-group; + description "Holds IGMP Snooping Global Parameters"; } - // 10G eth code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgEthCode { - config "false"; - description "TBD"; + // igmpsnoop Vlan records + // Ephemeral data + container vsnoop-items { - // Type is an MO-Defined-Type - type ethpm_X2XgEthCodeBytes; + // Ephemeral data + list VSnoopRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VSnoopRec-group; + description "Holds IGMP Snooping Parameters per Vlan list"; + } + description "Holds IGMP Snooping Parameters per Vlan"; } - // Sonet SDH code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf sonetSdhCode { - config "false"; - description "TBD"; + // Vlan record + // Ephemeral data + container vlanrec-items { - // Type is an MO-Defined-Type - type ethpm_X2SonetSdhCodeBytes; + // Ephemeral data + list VlanRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VlanRec-group; + description "Holds IGMP Snooping Vlan Record list"; + } + description "Holds IGMP Snooping Vlan Record"; } - // 10G fc code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgFcCode { - config "false"; - description "TBD"; + // Mrouter record + // Ephemeral data + container mrouter-items { - // Type is an MO-Defined-Type - type ethpm_X2XbFcCodeBytes; + // Ephemeral data + list MRouterRec-list { + config "false"; + key "vlanid interface"; + + uses igmpsnoop_MRouterRec-group; + description "Holds IGMP Snooping Static Multicast Router Record list"; + } + description "Holds IGMP Snooping Static Multicast Router Record"; } - // Range - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf range { - config "false"; - description "TBD"; + // Explicit Tracking record + // Ephemeral data + container expTrack-items { - // Type is an MO-Defined-Type - type ethpm_X2RangeBytes; + // Ephemeral data + list ExpTrackRec-list { + config "false"; + key "vlanid grpAddr srcAddr intf"; + + uses igmpsnoop_ExpTrackRec-group; + description "Holds IGMP Snooping Explicit Host Tracking Record list"; + } + description "Holds IGMP Snooping Explicit Host Tracking Record"; } - // Fibre type - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf fibreType { - config "false"; - description "TBD"; + // Vlan statistics MO + // Ephemeral data + container vstats-items { - // Type is an MO-Defined-Type - type ethpm_X2FibreTypeBytes; + // Ephemeral data + list VlanStatsRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VlanStatsRec-group; + description "Holds IGMP Snooping Per Vlan Statistics list"; + } + description "Holds IGMP Snooping Per Vlan Statistics"; } - // Wavelength channel 0 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh0 { - config "false"; - description "TBD"; + // Ephemeral data + container gstats-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses igmpsnoop_GStatsRec-group; + description "Holds IGMP Snooping Global Statistics"; } - // Wavelength channel 1 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh1 { - config "false"; - description "TBD"; + // Report policy MO + // Ephemeral data + container policy-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list ReportPolicyStats-list { + config "false"; + key "vlanid qcount"; + + uses igmpsnoop_ReportPolicyStats-group; + description "Holds IGMP Snooping Report Policy Statistics list"; + } + description "Holds IGMP Snooping Report Policy Statistics"; } - // Wavelength channel 2 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh2 { - config "false"; - description "TBD"; + // Group MO + // Ephemeral data + container group-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list IgmpsnGroupRec-list { + config "false"; + key "vlanid groupaddr sourceaddr ifname"; + + uses igmpsnoop_IgmpsnGroupRec-group; + description "Holds IGMP Snooping Group Record list"; + } + description "Holds IGMP Snooping Group Record"; } - // Wavelength channel 3 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh3 { - config "false"; - description "TBD"; + // Multicast Group records + // Ephemeral data + container mcgrp-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list McGrpRec-list { + config "false"; + key "addr"; + + uses igmpsnoop_McGrpRec-group; + description "Holds IGMP Snooping Group Information list"; + } + description "Holds IGMP Snooping Group Information"; } - leaf vendorName { - config "false"; - type string; + + // Multicast Group records + // Ephemeral data + container querier-items { + + // Ephemeral data + list QuerierRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_QuerierRec-group; + description "Holds IGMP Snooping querier specific information list"; + } + description "Holds IGMP Snooping querier specific information"; } - leaf vendorPn { + } + + grouping igmpsnoop_GSnoopRec-group { + description "Holds IGMP Snooping Global Parameters"; + + // Ephemeral data + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf vendorRev { + + // Ephemeral data + leaf snooping { config "false"; - type string; + type boolean; + description "Global Snooping Enabled Disabled"; } - leaf vendorSerNo { + + // Ephemeral data + leaf omf { config "false"; - type string; + type boolean; + description "Global Optimized Multicast Flooding"; } - leaf dateCode { + + // Ephemeral data + leaf grepsup { config "false"; - type string; + type boolean; + description "Global Report Suppression"; } - leaf fiveVStressEnv { + + // Ephemeral data + leaf gv3repsup { config "false"; - type uint8; + type boolean; + description "Gloabl v3 Report Suppression"; } - leaf ciscoPid { + + // Ephemeral data + leaf glinklocalgrpsup { config "false"; - type string; + type boolean; + description "Global Logical Link Suppression"; } - leaf ciscoVid { + + // Ephemeral data + leaf groupTimeout { config "false"; - type string; + type uint32; + description "Group Timeout "; } - leaf ciscoSN { + + // Ephemeral data + leaf proxyGeneralQuery { config "false"; - type string; + type boolean; + description "Global Proxy Queries"; } - leaf ciscoPN { + + // Ephemeral data + leaf gmaxResponseTime { config "false"; - type string; + type uint32; + description "Max Response Time"; } - leaf ciscoRev { + } + + grouping igmpsnoop_VSnoopRec-group { + description "Holds IGMP Snooping Parameters per Vlan"; + + // Ephemeral data + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Extended vendor specific info - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf extVendorSpecific { + // Ephemeral data + leaf lkpmode { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type ethpm_X2ExtendedVendorSpecificInfoBytes; + type ipmcsnoop_LkpModeT; + description "Lookup Mode"; } - leaf maxSpeed { + + // Ephemeral data + leaf snoopOn { config "false"; - type uint32; + type boolean; + description "Indicates if Vlan Snooping is Enabled/Disabled"; } - leaf minSpeed { + + // Ephemeral data + leaf repsup { config "false"; - type uint32; + type boolean; + description "Vlan Report Suppression"; } - leaf fcotNum { + + // Ephemeral data + leaf v3repsup { config "false"; - type uint8; + type boolean; + description "Vlan v3 Report Suppression"; } - leaf fcotType { + + // Ephemeral data + leaf vlinklocalgrpsup { config "false"; - type uint8; + type boolean; + description "Vlan logical link Group Suppressison"; } - leaf gigEthCC { + + // Ephemeral data + leaf omf_enabled { config "false"; - type uint8; + type boolean; + description "Vlan Optimized Multicast Flooding"; } - } - grouping adjacency_Entity-group { + // Ephemeral data + leaf vlanid { + config "false"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Last member query interval + // Ephemeral data + leaf lastMbrIntvl { + config "false"; + + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Querier version + // Ephemeral data + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_Ver; + description "Current IGMP Version"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Querier IP Address + // Ephemeral data + leaf addr { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type mcast_QuerierIp; + description "Querier IP Address"; } - container inst-items { + // Query interval + // Ephemeral data + leaf queryIntvl { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package adjacency - uses adjacency_Inst-group; + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping adjacency_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Robustness factor + // Ephemeral data + leaf robustFac { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mcast_RobustFactor; + description "Robustness Factor"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf routePortcnt { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Route Port Count"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Ephemeral data + leaf groupcnt { config "false"; - description "Controls"; + type uint32; + description "Groups Under This Vlan"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf vpcFunction { + config "false"; + type boolean; + description "Indicates if VPC Function is Enabled"; } - container dom-items { - list Dom-list { - config "false"; - key "name"; - // Added containment: Prefix=dom - // Acquired From Package adjacency - uses adjacency_Dom-group; - } + // Ephemeral data + leaf fastleave { + config "false"; + type boolean; + description "Indicates if Fast-leave is Enabled"; } } - grouping adjacency_Dom-group { + grouping igmpsnoop_VlanRec-group { + description "Holds IGMP Snooping Vlan Record"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf vlanid { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - container db-items { - list Db-list { + + // Ephemeral data + leaf macCount { + config "false"; + type uint32; + description "MAC Entries Count for a Vlan Identifier"; + } + + // MAC record + // Ephemeral data + container mac-items { + + // Ephemeral data + list MacRec-list { config "false"; - key "type"; + key "macAddress"; - // Added containment: Prefix=db - // Acquired From Package adjacency - uses adjacency_Db-group; + uses igmpsnoop_MacRec-group; + description "Holds IGMP Snooping MAC-Address Record list"; } + description "Holds IGMP Snooping MAC-Address Record"; } } - grouping adjacency_Db-group { + grouping igmpsnoop_MacRec-group { + description "Holds IGMP Snooping MAC-Address Record"; + + // Ephemeral data + leaf macAddress { + config "false"; + type address_Mac; + description "MAC Address of the Outgoing Interface"; + } - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type adjacency_DbT; + type ipmcsnoop_MacType; + description "Type of MAC Address"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf age { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Seconds Since Last Seen"; } - container if-items { - list If-list { + + // MAC-OIF record + // Ephemeral data + container oif-items { + + // Ephemeral data + list MacOifRec-list { config "false"; - key "ifId"; + key "oif"; - // Added containment: Prefix=if - // Acquired From Package adjacency - uses adjacency_If-group; + uses igmpsnoop_MacOifRec-group; + description "Holds IGMP Snooping MAC-Address OIF Record list"; } + description "Holds IGMP Snooping MAC-Address OIF Record"; } } - grouping adjacency_If-group { + grouping igmpsnoop_MacOifRec-group { + description "Holds IGMP Snooping MAC-Address OIF Record"; - // Type is an MO-Defined-Type - leaf ifId { + // Ephemeral data + leaf oif { config "false"; - description "Logical Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; - } - container ip-items { - list AdjEp-list { - config "false"; - key "ip"; - - // Added containment: Prefix=ip - // Acquired From Package adjacency - uses adjacency_AdjEp-group; - } + description "Outgoing Interface for a MAC Address"; } } - grouping adjacency_AdjEp-group { - leaf ip { - config "false"; - type address_Ip; - } - leaf mac { - config "false"; - type address_Mac; - } + grouping igmpsnoop_MRouterRec-group { + description "Holds IGMP Snooping Static Multicast Router Record"; - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf type { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type adjacency_AdjOperSt; + type ipmcsnoop_MrouteType; + description "Specify the Type of Mroute for a VLAN/BD"; } - // Type is an MO-Defined-Type - leaf physIfId { + // Ephemeral data + leaf interface { config "false"; - description "Physical Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Specify the Interface Port of Mroute for a VLAN/BD"; } - leaf source { + + // Ephemeral data + leaf uptime { config "false"; type string; + description "Specify the Uptime of Mroute for a VLAN/BD"; } - // Flags that this ep has - // Type is an MO-Defined-Type - leaf flags { + // Ephemeral data + leaf expTime { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type adjacency_AdjFlags; + type string; + description "Specify the Expiry timestamp of Mroute for a VLAN/BD"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf vlanid { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } } - grouping arp_Entity-group { + grouping igmpsnoop_ExpTrackRec-group { + description "Holds IGMP Snooping Explicit Host Tracking Record"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf vlanid { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf intf { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_IfId; + description "Interface Identifier. Supported types are ethernet-like, port/channel, Vlan interfaces."; } - // This object holds per arp instance information. There is - // only one instance of arp running in the system today - container inst-items { + // Ephemeral data + leaf reporter { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package arp - uses arp_Inst-group; + type ipmcsnoop_Reporter; + description "Report IP Address"; } - } - - grouping arp_Inst-group { - - // Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "ARP Global Timeout"; - // Type is an MO-Defined-Type - type arp_Timeout; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Uptime Timestamp"; } - // Evpn-Timeout - // Type is an MO-Defined-Type - leaf evpn_timeout { - description "Refresh in EVPN on host moves"; - - // Type is an MO-Defined-Type - type arp_EvpnTimeout; + // Ephemeral data + leaf lastJoin { + config "false"; + type union { + type string; + type uint64; + } + description "Last join Timestamp"; } - // Suppression Timeout - // Type is an MO-Defined-Type - leaf suppression_timeout { - description "Suppression Timeout"; - - // Type is an MO-Defined-Type - type arp_SuppressionTimeout; + // Ephemeral data + leaf expires { + config "false"; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - // Off list Timeout - // Type is an MO-Defined-Type - leaf offListTimeout { - description "Off-list timeout"; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source IP Address"; + } - // Type is an MO-Defined-Type - type arp_OffListTimeout; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group IP Address"; } - // RARP fabric forwarding - // Type is an MO-Defined-Type - leaf rarpFabricFwding { - description "RARP Fabric Forwarding"; + // Ephemeral data + leaf version { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_VersionT; + description "Version v3/v2"; } - // RARP Fabric Fwding Rate - // Type is an MO-Defined-Type - leaf rarpFabricFwdingRate { - description "RARP Fabric Forwarding Rate"; - - // Type is an MO-Defined-Type - type arp_RarpForwadingRate; + // Ephemeral data + leaf numReports { + config "false"; + type uint32; + description "Number of Reports Sent"; } + } - // ARP Cache Limit - // Type is an MO-Defined-Type - leaf cacheLimit { - description "Cache Limit"; + grouping igmpsnoop_VlanStatsRec-group { + description "Holds IGMP Snooping Per Vlan Statistics"; - // Type is an MO-Defined-Type - type arp_ArpCacheLimit; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Uptime Timestamp"; } - // ARP Cache SysLog Rate - // Type is an MO-Defined-Type - leaf cacheSyslogRate { - description "Cache Syslog Rate"; - - // Type is an MO-Defined-Type - type arp_ArpCacheSyslogRate; + // Ephemeral data + leaf vpr { + config "false"; + type uint32; + description "Packets Received"; } - // ARP Logging Level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging Level"; + // Ephemeral data + leaf v1rr { + config "false"; + type uint32; + description "IGMPv1 Reports Received"; + } - // Type is an MO-Defined-Type - type arp_LoggingLevel; + // Ephemeral data + leaf v2rr { + config "false"; + type uint32; + description "IGMPv2 Reports Received"; } - // Adjacency Manager Logging Level - // Type is an MO-Defined-Type - leaf adjLoggingLevel { - description "Adjacency Events Logging Level"; + // Ephemeral data + leaf v3rr { + config "false"; + type uint32; + description "IGMPv3 Reports Received"; + } - // Type is an MO-Defined-Type - type arp_LoggingLevel; + // Ephemeral data + leaf v3qr { + config "false"; + type uint32; + description "IGMPv3 Queries Received"; } - // Type is an MO-Defined-Type - leaf ipAdjRouteDistance { - description "IP Adjacency Route Distance"; + // Ephemeral data + leaf v2lr { + config "false"; + type uint32; + description "IGMPv2 Leave Received"; + } - // Type is an MO-Defined-Type - type arp_AdjRouteDist; + // Ephemeral data + leaf phr { + config "false"; + type uint32; + description "PIM HELLOs Received count"; } - // Enable / Disable allow-static-arp-outside-subnet - // Type is an MO-Defined-Type - leaf allowStaticArpOutsideSubnet { - description "Allow Static ARP Outside Subnet"; + // Ephemeral data + leaf irr { + config "false"; + type uint32; + description "Invalid Reports Received"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf iqr { + config "false"; + type uint32; + description "Invalid Queries Received"; } - // Enable / Disable arp sw-replication - // Type is an MO-Defined-Type - leaf arpUnnumSviSwReplication { - description "ARP Packets Replication In Software For Unnumbered SVI"; + // Ephemeral data + leaf v2ls { + config "false"; + type uint32; + description "IGMPv2 Leaves Suppressed"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf v3gs { + config "false"; + type uint32; + description "IGMPv3 Group records Suppressed"; } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configErr { + // Ephemeral data + leaf vmr { config "false"; - description "Config Error Inst"; + type uint32; + description "Report Version mismatch"; + } - // Type is an MO-Defined-Type - type arp_ConfigErrInst; + // Ephemeral data + leaf upr { + config "false"; + type uint32; + description "Unknown Packets Received"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf qo { + config "false"; + type uint32; + description "Queries Originated"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf v2ro { + config "false"; + type uint32; + description "IGMPv2 Proxy-Reports Originated"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf v2lo { + config "false"; + type uint32; + description "IGMPv2 Proxy-Leaves Originated"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf v3ro { + config "false"; + type uint32; + description "IGMPv3 Proxy-Reports Originated"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf vpsr { + config "false"; + type uint32; + description "Packets Sent to routers"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf str { + config "false"; + type uint32; + description "STP TCN Received"; } - // Holds GlobalStats information - container globalstats-items { + // Ephemeral data + leaf cps { + config "false"; + type uint32; + description "CFS Packets Sent"; + } - // Added containment as a singleton: Prefix=globalstats - // Acquired From Package arp - uses arp_GlobalStats-group; + // Ephemeral data + leaf cpr { + config "false"; + type uint32; + description "CFS Packets Received"; } - // This object holds per ARP domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Ephemeral data + leaf cpe { + config "false"; + type uint32; + description "CFS Packets Errored"; + } - // Added containment: Prefix=dom - // Acquired From Package arp - uses arp_Dom-group; - } + // Ephemeral data + leaf mps { + config "false"; + type uint32; + description "MCT Packets Sent"; } - // IpV4 Glean throttling MO - container ipgleanthrottle-items { + // Ephemeral data + leaf mpr { + config "false"; + type uint32; + description "MCT Packets Received"; + } - // Added containment as a singleton: Prefix=ipgleanthrottle - // Acquired From Package arp - uses arp_Ipv4Throttle-group; + // Ephemeral data + leaf mpe { + config "false"; + type uint32; + description "MCT Packets Errored"; } - // This object holds the size of the Log Tables for - // various types of ARP events - container evtLogs-items { - list EventLogs-list { - key "eventType"; + // Ephemeral data + leaf v1qr { + config "false"; + type uint32; + description "IGMPv1 Queries Received"; + } - // Added containment: Prefix=evtLogs - // Acquired From Package arp - uses arp_EventLogs-group; - } + // Ephemeral data + leaf v2qr { + config "false"; + type uint32; + description "IGMPv2 Queries Received"; } - // This object holds IP ARP Sync for VPC - container vpc-items { + // Ephemeral data + leaf v1rs { + config "false"; + type uint32; + description "IGMPv1 Reports Suppressed"; + } - // Added containment as a singleton: Prefix=vpc - // Acquired From Package arp - uses arp_Vpc-group; + // Ephemeral data + leaf v2rs { + config "false"; + type uint32; + description "IGMPv2 Reports Suppressed"; } - // Holds Suppression-cache table oper data - container db-items { - list DbSupCache-list { - config "false"; - key "type"; + // Ephemeral data + leaf vlanid { + config "false"; - // Added containment: Prefix=db - // Acquired From Package arp - uses arp_DbSupCache-group; - } + type ipmcsnoop_Vlanid; + description "Vlan identifier"; } } - grouping arp_GlobalStats-group { + grouping igmpsnoop_GStatsRec-group { + description "Holds IGMP Snooping Global Statistics"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf pr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Global Packets Received"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf invPkt { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Global Packets Errored"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Ephemeral data + leaf pnv { config "false"; - description "Controls"; + type uint32; + description "Global Packets for Non-Snooped Vlans"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf loopBkPkt { + config "false"; + type uint32; + description "Global Packets Loopbacked"; } - // Holds controller-statistics information - container controllerstats-items { + // Ephemeral data + leaf mrdLoopBk { + config "false"; + type uint32; + description "Global MRD Loopback Packets"; + } - // Added containment as a singleton: Prefix=controllerstats - // Acquired From Package arp - uses arp_ControllerStats-group; + // Ephemeral data + leaf pf { + config "false"; + type uint32; + description "Global Packets flooded"; } - // Holds VPC related statistics information - container vpcstats-items { + // Ephemeral data + leaf vpcDrQs { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Sent"; + } - // Added containment as a singleton: Prefix=vpcstats - // Acquired From Package arp - uses arp_VpcStats-group; + // Ephemeral data + leaf vpcDrQr { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Received"; } - // Holds Tunnel statistics information - container tunnelstats-items { + // Ephemeral data + leaf vpcDrQf { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Failed"; + } - // Added containment as a singleton: Prefix=tunnelstats - // Acquired From Package arp - uses arp_TunnelStats-group; + // Ephemeral data + leaf vpcDrUs { + config "false"; + type uint32; + description "Global vPC PIM DR updates Sent"; } - // Holds Suppression-cache related statistics - container supcachestats-items { + // Ephemeral data + leaf vpcDrUr { + config "false"; + type uint32; + description "Global vPC PIM DR updates Received"; + } - // Added containment as a singleton: Prefix=supcachestats - // Acquired From Package arp - uses arp_SupCacheStats-group; + // Ephemeral data + leaf vpcDrUf { + config "false"; + type uint32; + description "Global vPC PIM DR updates Failed"; } - // Holds open-flow error statistics - container ofastats-items { + // Ephemeral data + leaf vpcCfsSf { + config "false"; + type uint32; + description "Global vPC CFS send fail"; + } - // Added containment as a singleton: Prefix=ofastats - // Acquired From Package arp - uses arp_OfaStats-group; + // Ephemeral data + leaf vpcCfsRs { + config "false"; + type uint32; + description "GlobalvPC CFS message response Sent"; } - } - grouping arp_ControllerStats-group { - leaf adjAddCount { + // Ephemeral data + leaf vpcCfsRr { config "false"; - type uint64; + type uint32; + description "GlobalvPC CFS message response Received"; } - leaf adjDelCount { + + // Ephemeral data + leaf vpcCfsRf { config "false"; - type uint64; + type uint32; + description "Global vPC CFS message response Failed"; } - leaf adjAddErrorCount { + + // Ephemeral data + leaf vpcCfsRfp { config "false"; - type uint64; + type uint32; + description "Global vPC CFS message response fail peer-link down"; } - leaf adjDelErrorCount { + + // Ephemeral data + leaf vpcCfsUrls { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Sent"; } - } - grouping arp_VpcStats-group { - leaf cfsPullDropSinceOff { + // Ephemeral data + leaf vpcCfsUrR { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Received"; } - leaf cfsPushDropSinceOff { + + // Ephemeral data + leaf vpcCfsCrlF { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Failed"; } - leaf sendIgnorePullReqCfsoe { + + // Ephemeral data + leaf vpccfsrls { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Sent"; } - leaf sendIgnorePushMsgCfsoe { + + // Ephemeral data + leaf vpccfsrlr { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Received"; } - leaf imFailCFSPayload { + + // Ephemeral data + leaf vpccfsrlf { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Failed"; } - leaf mcecmFailCFSPayload { + + // Ephemeral data + leaf invIod { config "false"; - type uint64; + type uint32; + description "Global invalid IOD Packets"; } - leaf invalidMctPcCFSPayload { + + // Ephemeral data + leaf stptcnr { config "false"; - type uint64; + type uint32; + description "Global STP TCN Messages Received"; } - leaf ptLookFailCFSPayload { + + // Ephemeral data + leaf imapif { config "false"; - type uint64; + type uint32; + description "Global IM API Failed"; } - leaf cfsRspFailInvalidMct { + + // Ephemeral data + leaf mfreqr { config "false"; - type uint64; + type uint32; + description "Global MFDM Download Requests Received"; } - leaf cfsRspFailCfsPayload { + + // Ephemeral data + leaf mfcmps { config "false"; - type uint64; + type uint32; + description "Global MFDM Download Complete Sent"; } - leaf retrieveVpcFailPushMsg { + + // Ephemeral data + leaf mfdgcmps { config "false"; - type uint64; + type uint32; + description "Global MFDM Downgrade Complete Sent"; } - leaf retIfindexFrmVpcFail { + + // Ephemeral data + leaf bufsnt { config "false"; - type uint64; + type uint32; + description "Global Number of Buffers Sent to MFDM"; } - leaf retIfindexFrmVpcFailSync { + + // Ephemeral data + leaf bufackr { config "false"; - type uint64; + type uint32; + description "Global Number of Buffer Acks Received from MFDM"; } - leaf rspSentCfsoe { + + // Ephemeral data + leaf vpcmismatch { config "false"; - type uint64; + type uint32; + description "Global VPC-incr-type Mismatch"; } - leaf rspRecvCfsoe { + } + + grouping igmpsnoop_ReportPolicyStats-group { + description "Holds IGMP Snooping Report Policy Statistics"; + + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - leaf rspRecvCfsoeErr { + + // Ephemeral data + leaf rpmType { config "false"; - type uint64; + type uint32; + description "RPM Type"; } - leaf recvCfsoe { + + // Ephemeral data + leaf policyName { config "false"; - type uint64; + + type ipmcsnoop_PolicyNameT; + description "Policy Name"; } - leaf sentFailCfsoe { + + // Ephemeral data + leaf qcount { config "false"; - type uint64; + type uint32; + description "Queue Count"; } - leaf mcecmSendApiFailCfsoe { + + // Ephemeral data + leaf acceptCount { config "false"; - type uint64; + type uint32; + description "Queue Accept Count"; } - leaf sendCfsoe { + + // Ephemeral data + leaf rejectCount { config "false"; - type uint64; + type uint32; + description "Queue Reject Count"; } + } - // Holds VPC SYNC related statistics - container syncstats-items { + grouping igmpsnoop_IgmpsnGroupRec-group { + description "Holds IGMP Snooping Group Record"; - // Added containment as a singleton: Prefix=syncstats - // Acquired From Package arp - uses arp_VpcSyncStats-group; + // Ephemeral data + leaf ifname { + config "false"; + + type nw_IfId; + description "Interace name for the Group. Supported interfaces include Ethernet-like, Port/Channel, Loopback"; } - } - grouping arp_VpcSyncStats-group { - leaf ptAddFailOfflist { + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - leaf mallocFailOfflistDb { + + // Ephemeral data + leaf sourceaddr { config "false"; - type uint64; + type address_Ip; + description "Specify Source IP Address"; } - leaf timerCreateFailOfflistDb { + + // Ephemeral data + leaf groupaddr { config "false"; - type uint64; + type address_Ip; + description "Specify Group Address"; } - leaf adjAddFailOfflistDb { + + // Ephemeral data + leaf ver { config "false"; - type uint64; + type string; + description "Current Version Configured"; } - leaf ptLookupFailOfflistDb { + + // Ephemeral data + leaf sportType { config "false"; - type uint64; + type string; + description "Source Port Type"; } - leaf vlanMismatchOfflistDb { + + // Ephemeral data + leaf gportType { config "false"; - type uint64; + type string; + description "Group Port Type"; } - leaf invalidSviOfflistDb { + + // Ephemeral data + leaf rportType { config "false"; - type uint64; + type string; + description "router Port Type"; } - leaf sviDownOfflistDb { + + // Ephemeral data + leaf rifname { config "false"; - type uint64; + type string; + description "(*,G) interface name"; } - leaf mctDownOfflistDb { + } + + grouping igmpsnoop_McGrpRec-group { + description "Holds IGMP Snooping Group Information"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf ctxTypeInvalidOfflistDb { + + // Group address + // Ephemeral data + leaf addr { config "false"; - type uint64; + + type mcast_GrpIp; + description "Multicast Group Address"; } - leaf vrfInvalidOfflistDb { + + // Version + // Ephemeral data + leaf ver { config "false"; - type uint64; + + type mcast_Ver; + description "Version"; } - leaf invalidIpOfflistDb { + + // Latest reporter + // Ephemeral data + leaf latReporter { config "false"; - type uint64; + + type ipmcsnoop_Reporter; + description "Latest Reporter"; } - leaf ipSanityFailOfflistDb { + + // Ephemeral data + leaf oldHostTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Old Host Timestamp"; } - leaf macSanityFailOfflistDb { + + // Ephemeral data + leaf reportTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Group Report Timer Timestamp"; } - leaf ownRouterMacOfflistDb { + + // Number of Sources + // Ephemeral data + leaf numSrc { config "false"; - type uint64; + + type nw_Counter32; + description "Num of Sources"; } - leaf ownIpOfflistDb { - config "false"; - type uint64; + + // EPG entries in mcast group record + // Ephemeral data + container epg-items { + + // Ephemeral data + list EpgRec-list { + config "false"; + key "fabEncap"; + + uses igmpsnoop_EpgRec-group; + description "Holds IGMP Snooping Per Group Endpoint Record list"; + } + description "Holds IGMP Snooping Per Group Endpoint Record"; } - leaf ownvIpOfflistDb { - config "false"; - type uint64; + + // IGMP report record snooped by igmp-snoop application + // Ephemeral data + container rep-items { + + // Ephemeral data + list ReportRec-list { + config "false"; + key "mcastSrc ver"; + + uses igmpsnoop_ReportRec-group; + description "Holds Report Policy Specific Record list"; + } + description "Holds Report Policy Specific Record"; } - leaf adjCreateFailOfflistDb { + } + + grouping igmpsnoop_EpgRec-group { + description "Holds IGMP Snooping Per Group Endpoint Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf subnetMismatchOfflistDb { + + // Ephemeral data + leaf fabEncap { config "false"; - type uint64; + type string; + description "Fabric Encapsulation"; } - leaf dupEntryOfflistDb { + + // Epg id, identified using the circuit endpoint + // id in the system + // Ephemeral data + leaf id { config "false"; - type uint64; + + type l2_DomId; + description "Endpoint Group ID"; } - leaf ipNotEnOfflistDb { + + // Multicast group address (GIPO'), Outer multicast + // encapsulation ip address for this layer2 domain + // Ephemeral data + leaf mcastEncap { config "false"; - type uint64; + + type mcast_GrpIp; + description "Multicat Encapsulation"; } - leaf totDropOfflistDb { - config "false"; - type uint64; + + // IGMP report record snooped by igmp-snoop application + // Ephemeral data + container rep-items { + + // Ephemeral data + list ReportRec-list { + config "false"; + key "mcastSrc ver"; + + uses igmpsnoop_ReportRec-group; + description "Holds Report Policy Specific Record list"; + } + description "Holds Report Policy Specific Record"; } - leaf totDontDropOfflistDb { + } + + grouping igmpsnoop_ReportRec-group { + description "Holds Report Policy Specific Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totAdjAddOfflistDb { + + // Multicast traffic source + // Ephemeral data + leaf mcastSrc { config "false"; - type uint64; + + type ipmcsnoop_McastSrc; + description "Multicast Source Address"; } - leaf totAdjDelOfflistDb { + + // Version + // Ephemeral data + leaf ver { config "false"; - type uint64; + + type mcast_Ver; + description "Version"; } - leaf totAdjIgnoredOfflistDb { + + // Filter mode + // Ephemeral data + leaf filtMode { config "false"; - type uint64; + + type mcast_FiltMode; + description "Filter Mode"; } - leaf totAdjFrmPeerToAdd { + + // Filter mode + // Ephemeral data + leaf flags { config "false"; - type uint64; + + type ipmcsnoop_RepFlags; + description "Flags"; } - leaf totAdjFrmPeerToDel { - config "false"; - type uint64; + + // OIF list (outgoing interface list) + // Ephemeral data + container oif-items { + + // Ephemeral data + list OIFRec-list { + config "false"; + key "id"; + + uses igmpsnoop_OIFRec-group; + description "Holds Outgoing Interface Record list"; + } + description "Holds Outgoing Interface Record"; } - leaf totAdjSentPeriodically { + } + + grouping igmpsnoop_OIFRec-group { + description "Holds Outgoing Interface Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totAdjPeerToAdd { + + // Multicast traffic source + // Ephemeral data + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "ID"; } - leaf totAdjPeerToDel { + + // Ephemeral data + leaf numGqMiss { config "false"; - type uint64; + type uint16; + description "Num of General Query Missed"; } - leaf totPeriodicSyncAdj { + + // Ephemeral data + leaf expireTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Port Expire Timestamp"; } - leaf totAdjAddFailDuringSyncSend { - config "false"; - type uint64; + + // Host Record List (Used for Explicit Host Tracking) + // Ephemeral data + container host-items { + + // Ephemeral data + list HostRec-list { + config "false"; + key "addr"; + + uses igmpsnoop_HostRec-group; + description "Holds Explicit Host Tracking Record list"; + } + description "Holds Explicit Host Tracking Record"; } - leaf totDropDuringSyncInvalidSvi { + } + + grouping igmpsnoop_HostRec-group { + description "Holds Explicit Host Tracking Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totDropSyncSviDown { + + // Ephemeral data + leaf addr { config "false"; - type uint64; + type address_Ip; + description "Host Address"; } - leaf totDropSyncInvalidCtxt { + + // Ephemeral data + leaf upTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Up Timestamp"; } - leaf totDropSyncNullAdj { + + // Ephemeral data + leaf lastJoinTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Join Timestamp"; } - leaf totDropSyncNullIp { + + // Ephemeral data + leaf nextExpiryTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Next Expiry Timestamp"; } - leaf totSyncAdjAddL2SupCache { + } + + grouping igmpsnoop_QuerierRec-group { + description "Holds IGMP Snooping querier specific information"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totSyncStopBcastPkt { + + // Ephemeral data + leaf timeout { config "false"; - type uint64; + + type mcast_QuerierTimeout; + description "Querier Timeout in Seconds"; } - } - grouping arp_TunnelStats-group { - leaf totTunnelRcvd { + // Last member query interval + // Ephemeral data + leaf lastMbrIntvl { config "false"; - type uint64; + + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval in Seconds"; } - leaf rxForIngressVpc { + + // Ephemeral data + leaf ver { config "false"; - type uint64; + type string; + description "Querier Version"; } - leaf rxIngressforGpc { + + // Querier IP address + // Ephemeral data + leaf addr { config "false"; - type uint64; + + type mcast_QuerierIp; + description "Querier IP Address"; } - leaf rxIngressOrphanVpc { + + // Query interval + // Ephemeral data + leaf queryIntvl { config "false"; - type uint64; + + type mcast_QueryIntvl; + description "Query Interval in seconds"; } - leaf rxIngressOrphanVpcPlus { + + // Query response interval + // Ephemeral data + leaf rspIntvl { config "false"; - type uint64; + + type mcast_QueryRspIntvl; + description "Query Response Interval in Seconds"; } - leaf totPackSent { + + // Robustness factor + // Ephemeral data + leaf robustFac { config "false"; - type uint64; + + type mcast_RobustFactor; + description "Robustness Factor"; } - leaf pktSentArpSnoop { + + // Startup query interval + // Ephemeral data + leaf startQueryIntvl { config "false"; - type uint64; + + type mcast_StartQueryIntvl; + description "Startup Query Interval Time in Seconds"; } - leaf pktSentNonlocalVip { + + // Startup query count + // Ephemeral data + leaf startQueryCnt { config "false"; - type uint64; + + type mcast_QueryCnt; + description "Startup Query Count"; } - leaf pktSentPeerGway { + + // Ephemeral data + leaf port { config "false"; - type uint64; + type string; + description "Querier Switch Port Type"; } - leaf txIngressVpc { + + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan on Which Querier is Configured"; } - leaf txIngressGpc { + + // Ephemeral data + leaf expTime { config "false"; - type uint64; + type string; + description "Specify the Expiry Timestamp of Querier"; } - leaf txIngressOrphanVpc { + } + + grouping igmpsnoop_DomStats-group { + description "Holds statistics data per Igmpsnoop Domain"; + + // V1 Reports received + leaf v1RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Received"; } - leaf txIngressOrphanVpcPlus { + + // V2 Reports received + leaf v2RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Received"; } - leaf totRecvDropped { + + // V2 Leave received + leaf v2LeaveRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leave Received"; } - leaf totSendDropped { + + // V1 Query received + leaf v1QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Query Received"; } - leaf sendFailDrop { + + // V2 Query received + leaf v2QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Query Received"; } - leaf rcvdInvalidVer { + + // V1 Reports suppressed + leaf v1RepSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Suppressed"; } - leaf rcvdInvalidPayloadType { + + // V2 Reports suppressed + leaf v2RepSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Suppressed"; } - leaf rcvdMctIf { + + // V2 leaves suppressed + leaf v2LeaveSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leaves Suppressed"; } - leaf rcvdInvalidIngressPort { + + // v1 Proxy Report Originated + leaf v1RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Originated"; } - leaf dropSentInvalidPort { + + // v2 Proxy Report Originated + leaf v2RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Originated"; } - leaf dropRecvInvalidGpcCore { + + // v2 Proxy Leave Originated + leaf v2LeaveOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leaves Originated"; } - leaf dropRecvInvalidGpcPeer { + + // V3 Reports received + leaf v3RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Reports Received"; } - leaf dropRecvFailRetrieveGpc { + + // V3 Query received + leaf v3QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Query Received"; } - leaf dropSendFailRetrieveGpc { + + // V3 Group Record suppressed + leaf v3GrpRecSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Group Records Suppressed"; } - leaf failRetrieveVpcId { + + // v3 Proxy Report Originated + leaf v3RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Reports Originated"; } - leaf imApiFail { + leaf lastClearTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - leaf invalidContext { + + // packets received + leaf pktsRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Packets Received"; } - leaf dropMctDown { + + // Pim Hello Rcvd + leaf pimHelloRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Pim Hello Received"; } - leaf recvDropMbufFail { + + // Invalid Query Rcvd + leaf invQueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Invalid Query Received"; } - leaf sendDropMbufFail { + + // Invalid Report Rcvd + leaf invRepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Invalid Report Received"; } - leaf tunnelFailed { + + // Version Mismatch Rcvd + leaf verMisMatchRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Version Mismatch Received"; } - leaf tunnelFailCENetwork { + + // Unknown Packets Rcvd + leaf unknPktRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Unknown Packets Received"; } - leaf mcecmKeyNotFound { + + // Query Originated + leaf queryPktsOrig { config "false"; - type uint64; + + type nw_Counter32; + description "Query Packets Originated"; } - } - grouping arp_SupCacheStats-group { - leaf requests { + // Packets Sent to Router Ports + leaf pktsToRport { config "false"; - type uint64; + + type nw_Counter32; + description "Packets to Router Ports"; } - leaf requestsL2 { + + // VPC Sync Packets Sent to Peer + leaf vpcSyncSent { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Sent"; } - leaf gratuitous { + + // VPC Sync Packets Rcvd from Peer + leaf vpcSyncRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Received"; } - leaf gratuitousL2 { + + // VPC Sync Packets Failed to send to Peer + leaf vpcSyncFail { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Failed"; } - leaf fwdRequestsL3 { + + // MRD Sync Packets Sent to Peer + leaf mrdSyncSent { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Sent"; } - leaf fwdRepliesL3 { + + // MRD Sync Packets Rcvd from Peer + leaf mrdSyncRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Received"; } - leaf fwdRequestOnCorePort { + + // MRD Sync Packets Failed to send to Peer + leaf mrdSyncFail { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Failed"; } - leaf fwdReplyOnCorePort { + } + + grouping igmpsnoop_StRtrIf-group { + description "Holds IGMP Static Router Interface configuration information"; + + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf sentDrop { + + leaf descr { config "false"; - type uint64; + + type naming_Descr1024; + description "Description"; } - leaf sentReqL2 { + + // Interface ID of this endpoint + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - leaf sentReplyL2 { + + // Administrative state + leaf adminSt { config "false"; - type uint64; + + type nw_IfAdminSt; + description "Admin State"; } - leaf sentReqCoreL2 { + leaf encap { config "false"; - type uint64; + type string; + description "Enable Encapsulation when flooding packets"; } - leaf sentReplyCoreL2 { - config "false"; - type uint64; + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - leaf sentDropL2 { + } + + grouping igmpsnoop_RtrIf-group { + description "Holds configuration information for Router Interface"; + + // Identifier for the if + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Router interface identifier"; } - leaf recvReqL3 { + + // Life cycle control + leaf lcC { config "false"; - type uint64; + + type ipmcsnoop_LcC; + description "Life Cycle Control"; } - leaf recvReplyL3 { + leaf upTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Up transition Timestamp"; } - leaf recvLocalReqL3 { + leaf nextExpiryTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Next Expiry Timestamp"; } - leaf recvLocalReplyL3 { - config "false"; - type uint64; + } + + grouping igmpsnoop_Vlan-group { + description "Holds IGMP snooping vlan configurations"; + + leaf vlanid { + + type nw_IfId; + description "Vlan ID for IGMP Snooping Configuration"; } - leaf recvGratArp { - config "false"; - type uint64; + leaf rprtFldAllIntf { + type boolean; + description "Enable Report-Flood on all Active Interfaces of VLAN"; } - leaf recvDrop { - config "false"; - type uint64; + + // Circuit endpoint representing EPG + container cktep-items { + list CktEp-list { + key "encap"; + + uses igmpsnoop_CktEp-group; + description "Represents Endpoint Encapsulation for a circuit list"; + } + description "Represents Endpoint Encapsulation for a circuit"; } - leaf recvRequestL2 { - config "false"; - type uint64; + + // Multicast Snoop Configured statically + container mcgrp-items { + list StMcGrp-list { + key "addr"; + + uses igmpsnoop_StMcGrp-group; + description "Holds Static IP Multicast Group Information list"; + } + description "Holds Static IP Multicast Group Information"; } - leaf recvReplyL2 { - config "false"; - type uint64; + + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; + + uses igmpsnoop_Intf-group; + description "Holds IGMP snooping Interface configurations list"; + } + description "Holds IGMP snooping Interface configurations"; } - leaf recvGratArpL2 { - config "false"; - type uint64; + + container igmpsnbase-items { + + uses igmpsnoop_IgmpsnBase-group; + description "Holds IGMP Snooping Parameters for all Configuration Modes"; } - leaf recvDropL2 { - config "false"; - type uint64; + + // This objects holds IGMP snooping timers for vlan + container gTimers-items { + + uses igmpsnoop_GTimers-group; + description "Holds Global IGMP Snooping Timers"; } - leaf localEntryAdds { - config "false"; - type uint64; + + // This objects holds multicast mac address table params + container mactable-items { + list MacTable-list { + key "macAddress"; + + uses igmpsnoop_MacTable-group; + description "Holds IGMP Snooping Mac-Address Table Configurations list"; + } + description "Holds IGMP Snooping Mac-Address Table Configurations"; } - leaf localEntryDel { - config "false"; - type uint64; + + // This objects holds multicast router snoop params + container mrouter-items { + + uses igmpsnoop_MRouter-group; + description "Holds IGMP Snooping Static Multicast Router Configurations"; } - } - grouping arp_OfaStats-group { - leaf dpAdjErrDel { - config "false"; - type uint64; + // This objects holds multicast proxy snoop params + container proxy-items { + + uses igmpsnoop_Proxy-group; + description "Holds IGMP Snooping Proxy Configurations"; } - leaf cpMacMismatchErrDel { - config "false"; - type uint64; + + // Querier policy + container querierp-items { + + uses igmpsnoop_QuerierP-group; + description "Holds IGMP Snooping Querier Policy Configurations"; } - leaf cpNullMacErrDel { - config "false"; - type uint64; + + // Querier state + container querierst-items { + + uses igmpsnoop_QuerierSt-group; + description "Holds IGMP Snooping Querier State Configurations"; } - leaf cpNoAdjErrDel { - config "false"; - type uint64; + + // Route control policy for igmp multicast snoop. + container actrl-items { + + uses igmpsnoop_ACtrl-group; + description "Holds IGMP Snooping Access Control Policy Configurations"; } - leaf cpCpNhMismatchErrDel { - config "false"; - type uint64; + + // Report policy for igmp multicast snoop + container rpolicy-items { + list RPolicy-list { + key "rtMap"; + + uses igmpsnoop_RPolicy-group; + description "Holds IGMP Snooping Report Policy Configurations list"; + } + description "Holds IGMP Snooping Report Policy Configurations"; } - leaf cpAdjDelFailureErr { - config "false"; - type uint64; + } + + grouping igmpsnoop_CktEp-group { + description "Represents Endpoint Encapsulation for a circuit"; + leaf encap { + type string; + description "Fabric Encapsulation"; } - leaf cpNullMacErrAdd { - config "false"; - type uint64; + } + + grouping igmpsnoop_StMcGrp-group { + description "Holds Static IP Multicast Group Information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf cpDpMacMismatchErrAdd { - config "false"; - type uint64; + + // Multicast group address + leaf addr { + + type mcast_GrpIp; + description "Multicast Group IP Address"; } - leaf cpCpMacMismatchErrAdd { - config "false"; - type uint64; + + // IPMC Source IP + container src-items { + list McSrc-list { + key "id"; + + uses igmpsnoop_McSrc-group; + description "Holds IGMP Snooping Source Specific Information list"; + } + description "Holds IGMP Snooping Source Specific Information"; } - leaf cpAddFirstErr { - config "false"; - type uint64; + + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; + + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } - leaf dpOverwriteCpErr { - config "false"; - type uint64; + } + + grouping igmpsnoop_McSrc-group { + description "Holds IGMP Snooping Source Specific Information"; + + // Multicast traffic source + leaf id { + + type ipmcsnoop_McastSrc; + description "Multicast Source IP Address"; } - leaf dpCpNhMismatchErrAdd { - config "false"; - type uint64; + + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; + + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } - leaf cpCpNhMismatchErrAdd { - config "false"; - type uint64; + } + + grouping igmpsnoop_TgtIf-group { + description "Holds Outgoing Interface Information"; + leaf vsi { + type boolean; + description "Specifies if this interface is VSI"; } - leaf cpDpNhMismatchErrAdd { - config "false"; - type uint64; + leaf accGrp { + type boolean; + description "Specifies if this interface is Access group"; } - leaf cpAdjAddFailureErr { - config "false"; - type uint64; + leaf pfxList { + type boolean; + description "Specifies prefix list route map for this interface"; } - leaf barrierResponseErr { - config "false"; - type uint64; + + // Target interface Id + leaf id { + + type nw_IfId; + description "Multicast Source IP Address"; } } - grouping arp_Dom-group { - leaf encap { - type string; - } + grouping igmpsnoop_Intf-group { + description "Holds IGMP snooping Interface configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // ARP databases - container db-items { - list Db-list { - config "false"; - key "type"; + leaf descr { - // Added containment: Prefix=db - // Acquired From Package arp - uses arp_Db-group; - } + type naming_Descr1024; + description "Description"; } - // This object holds arp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Interface ID of this endpoint + leaf id { - // Added containment: Prefix=if - // Acquired From Package arp - uses arp_If-group; - } + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping arp_Db-group { - - // Type of the repository - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type arp_DbT; + type nw_IfAdminSt; + description "Admin State"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf rtrGrdVlanId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_RtrGrdVlanIdT; + description "Router-Guard Vlan Identifier"; + } + leaf rtrGrdEnable { + type boolean; + description "Indicates if Router-Guard is Enabled on the Interface"; + } + leaf reportFlood { + type boolean; + description "Indicates if Report Flood is Enabled on the Interface"; } - // Arp adjacency definitions - container adj-items { - list AdjEp-list { - config "false"; - key "ifId ip"; + container rtvrfMbr-items { - // Added containment: Prefix=adj - // Acquired From Package arp - uses arp_AdjEp-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping arp_AdjEp-group { - leaf ip { - config "false"; - type address_Ip; + grouping igmpsnoop_IgmpsnBase-group { + description "Holds IGMP Snooping Parameters for all Configuration Modes"; + leaf lookupMac { + type boolean; + description "Indicates if Layer-2 Multicast Lookup Mac is Enabled"; } - leaf mac { - config "false"; - type address_Mac; + + leaf llGrpSuppr { + + type ipmcsnoop_LlGrpSuppr; + description "Link Local Group Suppression"; } - leaf upTS { - config "false"; - type string; + + leaf reportSuppr { + + type ipmcsnoop_ReportSuppr; + description "IGMPv1/v2 report Suppression for VLAN"; } - // Logical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Logical Interface ID"; + leaf v3ReportSuppr { - // Type is an MO-Defined-Type - type nw_IfId; + type ipmcsnoop_V3ReportSuppr; + description "IGMPv3 Report Suppression and Proxy Reporting"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf expTracking { - // Type is an MO-Defined-Type - type arp_AdjOperSt; + type ipmcsnoop_ExpTracking; + description "Configures Explicit Host for a VLAN"; } - // Physical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf physIfId { - config "false"; - description "Physical Interface ID"; + leaf igmpSnoop { - // Type is an MO-Defined-Type - type nw_IfId; + type ipmcsnoop_IgmpSnoop; + description "Enable/Disable IGMP Snooping Globally"; } - // Flags that this ep has - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf minVer { - // Type is an MO-Defined-Type - type arp_AdjFlags; + type ipmcsnoop_MinVer; + description "Minimum IGMP Version Supported"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf maxGrp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_MaxGrp; + description "Maximum Groups per Interface"; } } - grouping arp_If-group { + grouping igmpsnoop_GTimers-group { + description "Holds Global IGMP Snooping Timers"; - // Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "ARP Timeout"; + leaf fastLeave { - // Type is an MO-Defined-Type - type arp_Timeout; + type ipmcsnoop_FastLeave; + description "Indicates if Fastleave is Enabled"; } - // Gratuitous ARP request - // Type is an MO-Defined-Type - leaf gratuitousRequest { - description "Gratuitous ARP Request"; + // Group timeout + // Default value handled in local MO type + leaf grpTimeout { - // Type is an MO-Defined-Type - type nw_AdminSt; + // Type is a Local-MO-Defined-Type + type mcast_GrpTimeout_GTimers_grpTimeout { + range "0"; + } + description "Group Membership Timeout"; } - // Gratuitous ARP Update - // Type is an MO-Defined-Type - leaf gratuitousUpdate { - description "Gratuitous ARP Update"; + leaf maxGqMiss { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_MaxGqMiss; + description "Maximum General Query Miss Count"; } - - // Gratuitous ARP HSRP Duplicate - // Type is an MO-Defined-Type - leaf gratuitousHsrpDup { - description "Gratuitous ARP HSRP Duplicate"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf useGrpAddr { + type boolean; + description "Use Group IP Address for Proxy-Leave"; } + } - // Proxy ARP - // Type is an MO-Defined-Type - leaf proxyArp { - description "Proxy ARP"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping igmpsnoop_MacTable-group { + description "Holds IGMP Snooping Mac-Address Table Configurations"; + leaf macAddress { + type address_Mac; + description "Specify MAC Address for a VLAN/BD"; } - // Local Proxy ARP - // Type is an MO-Defined-Type - leaf localProxyArp { - description "Local Proxy ARP"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // Local Proxy ARP without HW Flooding - // Type is an MO-Defined-Type - leaf localProxyArpNoHwFlood { - description "Local Proxy ARP w/o HW Flooding"; + uses igmpsnoop_MIf-group; + description "Holds IGMP Snooping Multicast Router's Interface Configurations list"; + } + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; + } + } - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping igmpsnoop_MIf-group { + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; + leaf intf { + type string; + description "Interface for Static-Mrouter"; + } + leaf vsi { + type boolean; + description "Specify Interface is VSI"; } + } - // Delete adjacency on MAC delete without refresh - // Type is an MO-Defined-Type - leaf deleteAdjOnMacDelete { - description "Delete Adjacency On MAC Delete w/o Refresh"; + grouping igmpsnoop_MRouter-group { + description "Holds IGMP Snooping Static Multicast Router Configurations"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Global property + leaf vpcPeerLink { + + type ipmcsnoop_Vpc; + description "Specify vpc-peer-link as Static Mrouter for all VLAN/BD"; } - // Set refresh timer for MAC delete adjacency request - // Type is an MO-Defined-Type - leaf refreshTimerForMacDelete { - description "Set Refresh Timer For MAC Delete Adjacency"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type arp_MacDelTimeout; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // Enable duplicate IP detection across VLANs for IP - // unnumbered SVIs - // Type is an MO-Defined-Type - leaf duplicateIpDetectionForUnnumberedSvi { - description - "Enable Duplicate IP Detection Across VLANs for - IP Unnumbered SVIs"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + uses igmpsnoop_MIf-group; + description "Holds IGMP Snooping Multicast Router's Interface Configurations list"; + } + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; } + } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config Error"; + grouping igmpsnoop_Proxy-group { + description "Holds IGMP Snooping Proxy Configurations"; - // Type is an MO-Defined-Type - type arp_ConfigErr; + leaf maxRespTime { + + type ipmcsnoop_Mrt; + description "Configures MRT for Switch's Proxy General-Queries"; } + } + + grouping igmpsnoop_QuerierP-group { + description "Holds IGMP Snooping Querier Policy Configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Querier version + leaf ver { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_Ver; + description "Version"; } - // Static arp adjacency definitions - container sadj-items { - list StAdjEp-list { - key "ip"; + // Querier IP address + leaf addr { - // Added containment: Prefix=sadj - // Acquired From Package arp - uses arp_StAdjEp-group; - } + type mcast_QuerierIp; + description "Address"; } - // This object holds the arp if related tx statistics - container ifstatstx-items { + // Query interval + leaf queryIntvl { - // Added containment as a singleton: Prefix=ifstatstx - // Acquired From Package arp - uses arp_IfStatsTx-group; + type mcast_QueryIntvl; + description "Query Interval"; } - // This object holds the arp if related rx statistics - container ifstatsrx-items { + // Query response interval + leaf rspIntvl { - // Added containment as a singleton: Prefix=ifstatsrx - // Acquired From Package arp - uses arp_IfStatsRx-group; + type mcast_QueryRspIntvl { + range "1..25"; + } + description "Response Interval of Querier"; } - // This object holds the arp if related adj statistics - container ifstatsadj-items { + // Robustness factor + leaf robustFac { - // Added containment as a singleton: Prefix=ifstatsadj - // Acquired From Package arp - uses arp_IfStatsAdj-group; + type mcast_RobustFactor; + description "Robustness Factor"; } - // This object holds the arp if related misc statistics - container ifstatsmisc-items { + // Startup query interval + leaf startQueryIntvl { - // Added containment as a singleton: Prefix=ifstatsmisc - // Acquired From Package arp - uses arp_IfStatsMisc-group; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // This object holds the arp related Multihoming(MH) statistics - container ifstatsmh-items { + // Startup query count + leaf startQueryCnt { - // Added containment as a singleton: Prefix=ifstatsmh - // Acquired From Package arp - uses arp_IfStatsMH-group; + type mcast_QueryCnt; + description "Startup Query Count"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - container rtvrfMbr-items { + // Last member query interval + leaf lastMbrIntvl { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Querier timeout + leaf timeout { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } } - grouping arp_StAdjEp-group { + grouping igmpsnoop_QuerierSt-group { + description "Holds IGMP Snooping Querier State Configurations"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type arp_StAdjOperSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf descr { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type arp_StAdjOperStQual; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Querier version + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf ip { - type address_Ip; - } - leaf mac { - type address_Mac; + type mcast_Ver; + description "Version"; } - // Rel-def target from CtrlrAdjEpToStAdjEp - // Inherited From arp:StAdjEp - container rtCtrlrAdjEpToStAdjEp-items { + // Querier IP address + leaf addr { + config "false"; - // Added containment as a singleton: Prefix=rtCtrlrAdjEpToStAdjEp - // Acquired From Package lldp - uses lldp_RtCtrlrAdjEpToStAdjEp_target-group; + type mcast_QuerierIp; + description "Address"; } - // Rel-def target from EpDefRefToStAdjEp - // Inherited From arp:StAdjEp - container rtfvEpDefRefToStAdjEp-items { - - // Abstract containment of rtfvEpDefRefToStAdjEp derived from arp:StAdjEp - list RtFvEpDefRefToStAdjEp-list { - config "false"; - key "tDn"; + // Query interval + leaf queryIntvl { + config "false"; - // Added containment: Prefix=rtfvEpDefRefToStAdjEp - // Acquired From Package fv - uses fv_RtFvEpDefRefToStAdjEp_target-group; - } + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping arp_IfStatsTx-group { - // ARP_PKT_SEND_COUNT - // Type is an MO-Defined-Type - leaf pktSent { + // Query response interval + leaf rspIntvl { config "false"; - description "ARP Packet Send Total Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QueryRspIntvl; + description "Response Interval of Querier"; } - // ARP_PKT_SEND_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktSentReq { + // Robustness factor + leaf robustFac { config "false"; - description "ARP Packet Send Request Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_RobustFactor; + description "Robustness Factor"; } - // ARP_PKT_SEND_REPLY_COUNT - // Type is an MO-Defined-Type - leaf pktSentRsp { + // Startup query interval + leaf startQueryIntvl { config "false"; - description "ARP Packet Send Reply Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // ARP_PKT_SEND_REQ_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktSentReqL2 { + // Startup query count + leaf startQueryCnt { config "false"; - description "ARP Packet Send Request Count On L2"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QueryCnt; + description "Startup Query Count"; } - // ARP_PKT_SEND_REPLY_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktSentRspL2 { + // Last member query interval + leaf lastMbrIntvl { config "false"; - description "ARP Packet Send Reply Count On L2"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // ARP_PKT_SEND_GRAT_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktSentGratReq { + // Querier timeout + leaf timeout { config "false"; - description "ARP Packet Send Gratuitous Request Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } - // ARP_PKT_SEND_TUNNEL_COUNT - // Type is an MO-Defined-Type - leaf pktSentTunnel { + // Interface on which the querier is present + leaf if { config "false"; - description "ARP Packet Send Tunnel Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "Interface on which querier is present"; } - // ARP_PKT_SEND_DROP_COUNT - // Type is an MO-Defined-Type - leaf pktSentDrop { + // Querier flags + leaf flags { config "false"; - description "ARP Packet Send Drop Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_QuerierFlags; + description "Querier Flags presenting different states"; } + } - // ARP_PKT_SEND_SRVRPORT_COUNT - // Type is an MO-Defined-Type - leaf pktSendSrvPort { - config "false"; - description "ARP Packet Send Server Port Count"; + grouping igmpsnoop_ACtrl-group { + description "Holds IGMP Snooping Access Control Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ARP_PKT_SEND_FBRCPORT_COUNT - // Type is an MO-Defined-Type - leaf pktSendFbrcPort { - config "false"; - description "ARP Packet Send Fabric Port Count"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter32; + type naming_Descr; + description "Description of the specified attribute"; } - // ARP_PKT_SEND_FIXUP_CORE_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupCore { - config "false"; - description "ARP Packet Send Fixup Core Count"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type nw_Counter32; + type rtctrl_RtCtrlDir; + description "Direction"; + } + leaf rtMap { + type string; + description "Route Map"; } - // ARP_PKT_SEND_FIXUP_SERVER_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupServer { - config "false"; - description "ARP Packet Send Fixup Server Count"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // ARP_PKT_SEND_FIXUP_RARP_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupRarp { - config "false"; - description "ARP Packet Send Fixup Rarp Count"; + grouping igmpsnoop_RPolicy-group { + description "Holds IGMP Snooping Report Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Route map name to control the distribution + leaf rtMap { + + type igmpsnoop_RtMapType; + description "Route Map Name to control the distribution"; } - // ARP_PKT_SEND_ANYCAST_GLEAN_COUNT - // Type is an MO-Defined-Type - leaf pktSendAnyCastGlean { - config "false"; - description "ARP Packet Send Anycast Glean Count"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // ARP_PKT_SEND_FAIL_INVALID_PKT_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvPkt { - config "false"; - description "ARP Packet Send Fail Invalid Packet Count"; + grouping igmpsnoop_BD-group { + description "Holds IGMP Snooping Bridge Domain Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf bdid { + + type nw_IfId; + description "Bridge Domain Identifier"; } + } - // ARP_PKT_SEND_FAIL_MBUF_OP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailMbufOp { - config "false"; - description "ARP Packet Send Fail Mbuf Operation Count"; + grouping igmpsnoop_Gl-group { + description "Holds IGMP Snooping Configurations in Global Configuration Mode"; + container eventHist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_EventHistory-group; + description "Holds IGMP Snooping Event-History Buffer Configurations list"; + } + description "Holds IGMP Snooping Event-History Buffer Configurations"; } - // ARP_PKT_SEND_FAIL_NO_IFINDEX_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoIfindex { - config "false"; - description "ARP Packet Send Fail Invalid Ifindex Count"; + container rtrgrd-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_RtrGrd-group; + description "Holds Router Guard Configuration for all switchports or specific vlan"; } - // ARP_PKT_SEND_FAIL_UNSUPPORTED_INT_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailUnsupportedInt { - config "false"; - description "ARP Packet Send Fail On Unsupported Interface Count"; + container igmpsnbase-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_IgmpsnBase-group; + description "Holds IGMP Snooping Parameters for all Configuration Modes"; } - // ARP_PKT_SEND_FAIL_IM_DOWN_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailImDown { - config "false"; - description "ARP Packet Send Fail On Interface Down Count"; + // This objects holds traffic related snooping params + container mctraf-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_McTraf-group; + description "Holds IGMP Snooping Multicast Traffic Configurations"; } - // ARP_PKT_SEND_FAIL_INVALID_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvSrcIp { - config "false"; - description "ARP Packet Send Fail Invalid Source IP Count"; + // This objects holds IGMP snooping timers for vlan + container gTimers-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GTimers-group; + description "Holds Global IGMP Snooping Timers"; } - // ARP_PKT_SEND_FAIL_INVALID_DEST_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvDstIp { - config "false"; - description "ARP Packet Send Fail Invalid Destination IP Count"; + // This objects holds vlan specific IGMP snooping params + container gvlan-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GVlan-group; + description "Holds IGMP Snooping Vlan Specific Configurations"; } - // ARP_PKT_SEND_FAIL_OWN_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailOwnIp { - config "false"; - description "ARP Packet Send Fail Own IP Count"; + // This Object holds global debug + container gdebug-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GDebug-group; + description "Holds IGMP Snooping Debugs Enabling Configuration"; } - // ARP_PKT_SEND_FAIL_CONTEXT_NOT_CREATED_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailCtxtNotCreated { - config "false"; - description "ARP Packet Send Fail Context Not Created Count"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_MRouter-group; + description "Holds IGMP Snooping Static Multicast Router Configurations"; } - // ARP_PKT_SEND_FAIL_BAD_CONTEXT_ID_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailBadCtxtId { - config "false"; - description "ARP Packet Send Fail Bad Context Id Count"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_Proxy-group; + description "Holds IGMP Snooping Proxy Configurations"; } + } - // ARP_PKT_SEND_FAIL_UNATTACHED_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailUnattachedIp { - config "false"; - description "ARP Packet Send Fail Unattached IP Count"; + grouping igmpsnoop_EventHistory-group { + description "Holds IGMP Snooping Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf type { + + type igmpsnoop_EhType; + description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; } - // ARP_PKT_SEND_FAIL_ADJ_ADD_FAILURE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailAdjAddFailure { - config "false"; - description "ARP Packet Send Fail Adjacency Add Failure Count"; + leaf size { - // Type is an MO-Defined-Type - type nw_Counter32; + type igmpsnoop_Size; + description "configures buffer size in text/kb"; } + } - // ARP_PKT_SEND_FAIL_NO_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoSrcIp { - config "false"; - description "ARP Packet Send Fail No Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping igmpsnoop_RtrGrd-group { + description "Holds Router Guard Configuration for all switchports or specific vlan"; + leaf state { + type boolean; + description "Configures Router Guard for Multicast packets on all switchports"; } + } - // ARP_PKT_SEND_FAIL_NO_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoMac { - config "false"; - description "ARP Packet Send Fail No Mac Count"; + grouping igmpsnoop_McTraf-group { + description "Holds IGMP Snooping Multicast Traffic Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf holddownTimer { + + type mcast_HolddownTimer; + description "Configures Initial Holddown Period After Switchover/Restart"; } - // ARP_PKT_SEND_FAIL_CLIENT_ENQUEUE_FAILED_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailClientEnqFailed { - config "false"; - description "ARP Packet Send Fail Client Enqueue Failed Count"; + leaf vpcPeerLinkExc { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_VpcPlExclude; + description "Exclude vPC Peer-link for Routed Multicast Traffic"; } - // ARP_PKT_SEND_FAIL_PROXY_DEST_NOT_REACHABLE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailProxyDstNotRchbl { - config "false"; - description "ARP Packet Send Fail Proxy Destination Not Reachable Count"; + leaf ccMode { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_CcMode; + description "Enter MFDM Congestion Control Mode"; } + } - // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_DEST_NOT_REACHABLE_COUNT - // Type is an MO-Defined-Type - leaf pktSkipRespEnhancedProxyDestNotReach { - config "false"; - description "ARP Packet Skip Response Enhanced Proxy Destination Not Reachable Count"; + grouping igmpsnoop_GVlan-group { + description "Holds IGMP Snooping Vlan Specific Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf disableNveStRtrPort { + + type ipmcsnoop_DisableNveStRtrPort; + description "Disable NVE Static Router Port"; } - // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_L2PORT_TRACK_COUNT - // Type is an MO-Defined-Type - leaf pktSkipRespEnhancedProxyL2portTrack { - config "false"; - description "ARP Packet Skip Response Enhanced Proxy L2 Port Track Count"; + leaf vxlan { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_Vxlan; + description "Enable IGMP Snooping on all VXLAN Ports "; } - // ARP_PKT_SEND_FAIL_INVALID_LOCAL_PROXY_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvLocalProxy { - config "false"; - description "ARP Packet Send Fail Invalid Local Proxy Count"; + leaf vxlanUmcDropVlan { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_VxlanVlanRange; + description "Drop Unknown Multicast Traffic on Vlan(s)"; } + } - // ARP_PKT_SEND_FAIL_INVALID_PROXY_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvProxy { - config "false"; - description "ARP Packet Send Fail Invalid Proxy Count"; + grouping igmpsnoop_GDebug-group { + description "Holds IGMP Snooping Debugs Enabling Configuration"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf syslogThreshold { + + type ipmcsnoop_SyslogThrshold; + description "IGMP Snooping Syslog Threshold Percentage"; } - // ARP_PKT_SEND_FAIL_VIP_GROUP_NOT_ACTIVE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailVipGroupNotActive { - config "false"; - description "ARP Packet Send Fail VIP Group Not Active Count"; + leaf selfMacCheck { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_SelfMacCheck; + description "Enable IGMP Snooping Self-mac-check Loopback"; } } - grouping arp_IfStatsRx-group { + grouping igmpsnoop_InstStats-group { + description "Holds statistics data per Igmpsnoop Instance"; - // ARP_PKT_RECV_COUNT - // Type is an MO-Defined-Type - leaf pktRcvd { + // Total Number of multicast groups + leaf totNumMcGrp { config "false"; - description "ARP Packet Received Total Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Total Number of Multicast Groups"; } - // ARP_PKT_RECV_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdReq { + // Invalid packets received + leaf invPktsRcvd { config "false"; - description "ARP Packet Received Request Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Invalid Packets Received"; } - // ARP_PKT_RECV_REPLY_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdRsp { + // Loopback packets received + leaf lpbkPktsRcvd { config "false"; - description "ARP Packet Received Reply Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Loopback Packets Received"; } - // ARP_PKT_RECV_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdProxyArp { + // packets Flooded + leaf pktsFlooded { config "false"; - description "ARP Packet Received Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Packets Flooded"; } - // ARP_PKT_RECV_LOCAL_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdLocalProxyArp { + // MRD Loopback packets received + leaf mrdLpbkPktsRcvd { config "false"; - description "ARP Packet Received Local Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "MRD Loopback Packets Received"; } - // ARP_PKT_RECV_ENHANCED_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyArp { + // No Vlan DB packets received + leaf noVlanDbPktsRcvd { config "false"; - description "ARP Packet Received Enhanced Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Vlan Db Packets Received"; } - // ARP_PKT_RECV_ENHANCED_PROXY_ANYCAST_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyAnycastArp { + // Vpc Peer packets sent + leaf vpcPeerPktsSent { config "false"; - description "ARP Packet Received Enhanced Proxy Anycast ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Sent"; } - // ARP_PKT_RECV_ENHANCED_PROXY_L2PORT_TRACK_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyL2portTrackArp { + // Vpc Peer packets received + leaf vpcPeerPktsRcvd { config "false"; - description "ARP Packet Received Enhanced Proxy L2 Port Track ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Received"; } - // ARP_PKT_RECV_SRVRPORT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdServerPort { + // Vpc Peer packets send Fail + leaf vpcPeerPktsSentFail { config "false"; - description "ARP Packet Received Server Port Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Send Fail"; } - // ARP_PKT_RECV_REQ_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktRcvdReqL2 { + // Vpc Peer packets receive Fail + leaf vpcPeerPktsRcvdFail { config "false"; - description "ARP Packet Received Request Count On L2"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Receive Fail"; } + } - // ARP_PKT_RECV_REPLY_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktRcvdRspL2 { - config "false"; - description "ARP Packet Received Reply Count On L2"; + grouping m6rib_Entity-group { + description "Holds M6RIB entity information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // This objects hold per m6rib instance information + container inst-items { + + uses m6rib_Inst-group; + description "This objects hold per M6RIB instance information"; } + } - // ARP_PKT_RECV_TUNNEL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdTunnel { - config "false"; - description "ARP Packet Received Tunnel Count"; + grouping m6rib_Inst-group { + description "This objects hold per M6RIB instance information"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + // This object holds m6rib route db information + // Ephemeral data + container db-items { - // ARP_PKT_RECV_FASTPATH_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdFastpath { - config "false"; - description "ARP Packet Received Fastpath Count"; + // Ephemeral data + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_Db-group; + description "Holds M6RIB Oper Database list"; + } + description "Holds M6RIB Oper Database"; } - // ARP_PKT_RECV_SNOOP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdSnoop { - config "false"; - description "ARP Packet Received Snoop Count"; + // This objects hold per MRIB information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_Dom-group; + description "This objects hold per MRIB information list"; + } + description "This objects hold per MRIB information"; } - // ARP_PKT_RECV_DROP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrp { - config "false"; - description "ARP Packet Received Drop Count"; + // This object holds m6rib route db information + // Ephemeral data + container routedb-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_RouteDb-group; + description "This object holds M6RIB route database information"; } + } - // ARP_PKT_RECV_DROP_BAD_IF_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadIf { + grouping m6rib_Db-group { + description "Holds M6RIB Oper Database"; + + // db type + // Ephemeral data + leaf type { config "false"; - description "ARP Packet Received Drop Bad Interface Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type m6rib_DbT; + description "Database type identifier"; } - // ARP_PKT_RECV_DROP_BAD_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadLen { - config "false"; - description "ARP Packet Received Drop Bad Length Count"; + // This object holds m6rib client information + // Ephemeral data + container client-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ClntEntity-list { + config "false"; + key "name"; + + uses m6rib_ClntEntity-group; + description "Represents M6RIB Client list"; + } + description "Represents M6RIB Client"; } - // ARP_PKT_RECV_DROP_BAD_PROTO_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadProto { - config "false"; - description "ARP Packet Received Drop Bad Protocol Count"; + // This object holds m6rib memory information + // Ephemeral data + container memest-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_MemEstimate-group; + description "M6RIB Parent Class for Memeory Details"; } - // ARP_PKT_RECV_DROP_BAD_HRD_TYPE - // Type is an MO-Defined-Type - leaf pktRcvdDropBadHrd { - config "false"; - description "ARP Packet Received Drop Bad Hardware Type Count"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses m6rib_Vrf-group; + description "This objects holds M6RIB context level information list"; + } + description "This objects holds M6RIB context level information"; } + } - // ARP_PKT_RECV_DROP_BAD_L2ADDR_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadL2AddrLen { - config "false"; - description "ARP Packet Received Drop Bad Layer 2 Address Length Count"; + grouping m6rib_ClntEntity-group { + description "Represents M6RIB Client"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf name { + config "false"; + type string; + description "Client Name"; } - // ARP_PKT_RECV_DROP_BAD_L3ADDR_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadL3AddrLen { + // Ephemeral data + leaf id { config "false"; - description "ARP Packet Received Drop Bad Layer 3 Length Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client Identifier"; } - // ARP_PKT_RECV_DROP_INVAL_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpInvalSrcIp { + // Ephemeral data + leaf pid { config "false"; - description "ARP Packet Received Drop Invalid Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client Process Identifier"; } - // ARP_PKT_RECV_DROP_DIR_BCAST_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpDirBcast { + // Ephemeral data + leaf mtsSapId { config "false"; - description "ARP Packet Received Drop Direct Broadcast Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client MTS SAP Identifier"; } - // ARP_PKT_RECV_DROP_INVAL_DST_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpInvalDstIp { + // Ephemeral data + leaf shMemName { config "false"; - description "ARP Packet Received Drop Invalid Destination IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Client Shared memory name"; } - // ARP_PKT_RECV_DROP_BAD_SRC_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadSrcMac { + // Ephemeral data + leaf notify { config "false"; - description "ARP Packet Received Drop Bad Source Mac Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Flag to indicate if client wants notifications"; } - // ARP_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpOwnSrcMac { + // Ephemeral data + leaf staleTimerRunning { config "false"; - description "ARP Packet Received Drop Own Source Mac Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Flag to indicate if stale timer is running"; } - // ARP_PKT_RECV_DROP_OWN_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpOwnSrcIp { + // Ephemeral data + leaf ssmOwner { config "false"; - description "ARP Packet Received Drop Own Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol owner of SSM-Ranges Flag"; } - // ARP_PKT_RECV_DROP_ARP_IF_NO_MEM_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpArpIfNoMem { + // Ephemeral data + leaf bidirOwner { config "false"; - description "ARP Packet Received Drop ARP Interface No Memory Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of Bidir-Modes Flag"; } - // ARP_PKT_RECV_DROP_NOT_FOR_US_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpNotForUs { + // Ephemeral data + leaf staticOwner { config "false"; - description "ARP Packet Received Drop Not For Us Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of Static-OIFs Flag"; } - // ARP_PKT_RECV_LEARN_AND_DROP_NOT_FOR_US_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdLearnAndDropNotForUs { + // Ephemeral data + leaf sharedOnlyOwner { config "false"; - description "ARP Packet Received Learn And Drop Not For Us Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of shared-tree Flag"; } - // ARP_PKT_RECV_DROP_SUBNET_MISMATCH_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpSubnetMismatch { + // Ephemeral data + leaf localJoinOwner { config "false"; - description "ARP Packet Received Drop Subnet Mismatch Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for Local Groups Flag"; } - // ARP_PKT_RECV_DROP_NOT_INITIALIZED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpNotInit { + // Ephemeral data + leaf externalOwner { config "false"; - description "ARP Packet Received Drop Not Initialized Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for External Routes Flag"; } - // ARP_PKT_RECV_DROP_BAD_CONTEXT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadCtxt { + // Ephemeral data + leaf attachedOwner { config "false"; - description "ARP Packet Received Drop Bad Context Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for Attached Routes Flag"; } - // ARP_PKT_RECV_DROP_CONTEXT_NOT_CREATED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpCtxtNotCreated { + // Ephemeral data + leaf fabricOwner { config "false"; - description "ARP Packet Received Drop Context Not Created Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol owner setting Fabric Flag"; } - // ARP_PKT_RECV_DROP_L2_LOCAL_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2LocalProxyArp { - config "false"; - description "ARP Packet Received Drop L2 Local Proxy ARP Count"; + // MO for Client notifications + // Ephemeral data + container cnotify-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ClientNotify-list { + config "false"; + key "notifyName"; + + uses m6rib_ClientNotify-group; + description "Holds M6RIB Client Notification Details list"; + } + description "Holds M6RIB Client Notification Details"; } + } - // ARP_PKT_RECV_DROP_L2_PURE_L2_PKT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2PureL2Pkt { - config "false"; - description "ARP Packet Received Drop L2 Pure L2 Packet Count"; + grouping m6rib_ClientNotify-group { + description "Holds M6RIB Client Notification Details"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf notifyName { + config "false"; + type string; + description "Client Notification Name"; } - // ARP_PKT_RECV_DROP_L2_PORT_UNTRUSTED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2PrtUntrusted { + // Ephemeral data + leaf sent { config "false"; - description "ARP Packet Received Drop L2 Port Untrusted Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Sent"; } - // ARP_PKT_RECV_DROP_STANDBY_FHRP_VIP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpStdbyFhrpVip { + // Ephemeral data + leaf fail { config "false"; - description "ARP Packet Received Drop Standby FHRP VIP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Failed"; } - // ARP_PKT_RECV_DROP_GRAT_ON_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpGratOnProxyArp { + // Ephemeral data + leaf rcvd { config "false"; - description "ARP Packet Received Drop Gratuitous On Proxy ARP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Received"; } - // ARP_PKT_RECV_DROP_ARP_REQUEST_IGNORE_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpArpRequestIgnore { + // Ephemeral data + leaf ackRcvd { config "false"; - description "ARP Packet Received Drop ARP Request Ignore Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement received"; } - // ARP_PKT_RECV_DROP_L2FM_QUERY_FAIL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2FmQueryFail { + // Ephemeral data + leaf ackSent { config "false"; - description "ARP Packet Received Drop L2FM Query Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement sent"; } - // ARP_PKT_RECV_DROP_TUNNEL_FAIL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpTunnelFail { + // Ephemeral data + leaf ackFail { config "false"; - description "ARP Packet Received Drop Tunnel Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement failed"; } + } - // ARP_PKT_RECV_DROP_RSP_ON_HSRP_STANDBY_HSRP_ACTIVE_VMAC - // Type is an MO-Defined-Type - leaf pktRcvdDrpRspOnHsrpStbyActiveVmac { - config "false"; - description "ARP Packet Received Drop Response On HSRP Standby With HSRP Active Vmac Count"; + grouping m6rib_MemEstimate-group { + description "M6RIB Parent Class for Memeory Details"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + // Current maximum memory available + // Ephemeral data + container currmaxgrp-items { - // ARP_PKT_RECV_FAIL_IM_DOWN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdFailImDown { - config "false"; - description "ARP Packet Received Fail Interface Down Count"; + // Ephemeral data + list CurrMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_CurrMaxMB-group; + description "Holds Current Maximum memory available information list"; + } + description "Holds Current Maximum memory available information"; } - // ARP_PKT_RECV_GLEAN_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdGleanReqCount { - config "false"; - description "Glean Requests Received Count"; + // In-Use maximum memory + // Ephemeral data + container inusegrp-items { + + // Ephemeral data + list InUseKB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_InUseKB-group; + description "Holds In-Use Memory Information list"; + } + description "Holds In-Use Memory Information"; } - // ARP_PKT_REFRESH_REQUESTS_RECV_FROM_CLIENTS - // Type is an MO-Defined-Type - leaf pktRfrshReqRecFrmClients { - config "false"; - description "ARP Packet Received Refresh requests from clients"; + // Configured maximum memory + // Ephemeral data + container configmaxgrp-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ConfiguredMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; + + uses m6rib_ConfiguredMaxMB-group; + description "Holds Maximum Configured Memory Information list"; + } + description "Holds Maximum Configured Memory Information"; } - // ARP_PKT_RECV_SIGNALS_FROM_L2RIB - // Type is an MO-Defined-Type - leaf pktRcvdSigFrmL2rib { - config "false"; - description "Number of Signals received from L2rib"; + // Estimate maximum memory required + // Ephemeral data + container estgrp-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list EstMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; + + uses m6rib_EstMaxMB-group; + description "Holds Maximum Estimated Memory Information list"; + } + description "Holds Maximum Estimated Memory Information"; } } - grouping arp_IfStatsAdj-group { + grouping m6rib_CurrMaxMB-group { + description "Holds Current Maximum memory available information"; - // ARP_ADJ_ADD_COUNT - // Type is an MO-Defined-Type - leaf adjAdd { + // Ephemeral data + leaf max { config "false"; - description "ARP Adjacency Add Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_ADJ_DEL_COUNT - // Type is an MO-Defined-Type - leaf adjDel { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Adjacency Delete Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_ADJ_TIMEOUT_COUNT - // Type is an MO-Defined-Type - leaf adjTimeout { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Adjacency Timeout Count"; + type uint32; + description "Sources per Group"; + } - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf oifPerEntry { + config "false"; + type uint32; + description "OIFs per Entry"; } } - grouping arp_IfStatsMisc-group { + grouping m6rib_InUseKB-group { + description "Holds In-Use Memory Information"; - // ARP_CLIENT_MSG_COUNT - // Type is an MO-Defined-Type - leaf clientMsg { + // Ephemeral data + leaf max { config "false"; - description "ARP Client Message Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_CLIENT_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf clientMsgFail { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Client Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_IF_TIMEOUT_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf ifTimeoutMsgFail { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Interface Timeout Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_IF_STATUS_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf ifStatusMsgFail { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Interface Status Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } } - grouping arp_IfStatsMH-group { + grouping m6rib_ConfiguredMaxMB-group { + description "Holds Maximum Configured Memory Information"; - // ARP_MH_PS_RECV_ADD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvaddfrml2rib { + // Ephemeral data + leaf max { config "false"; - description "ARP Received Peer Sync Add From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_MH_PS_PROCESS_ADD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processaddfrml2rib { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Processed Peer Sync Add From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_MH_PS_RECV_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvdelfrml2rib { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Received Peer Sync Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_MH_PS_PROCESS_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processdelfrml2rib { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Processed Peer Sync Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } + } - // ARP_MH_PS_RECV_PC_SHUT_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvpcshutfrml2rib { - config "false"; - description "ARP Received Port Channel Shut From L2RIB"; + grouping m6rib_EstMaxMB-group { + description "Holds Maximum Estimated Memory Information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf max { + config "false"; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_MH_PS_PROCESS_PC_SHUT_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processpcshutfrml2rib { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Processed Port Channel Shut From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_MH_PS_RECV_REMOTE_UPD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvremoteupdfrml2rib { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Received Remote Update From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_MH_PS_PROCESS_REMOTE_UPD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processremoteupdfrml2rib { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Processed Remote Update From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } + } - // ARP_MH_PS_ADD_ERR_INVALID_FLAGS - // Type is an MO-Defined-Type - leaf psadderrinvalidflags { - config "false"; - description "ARP Multihoming Add Error Invalid Flag"; + grouping m6rib_Vrf-group { + description "This objects holds M6RIB context level information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf name { + config "false"; + type string; + description "Vrf Name"; } - // ARP_MH_PS_DEL_ERR_INVALID_FLAGS - // Type is an MO-Defined-Type - leaf psdelerrinvalidflags { + // Ephemeral data + leaf cid { config "false"; - description "ARP Multihoming Delete Error Invalid Flag"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Vrf Identifier"; } - // ARP_MH_PS_ADD_ERR_INVALID_CURR_STATE - // Type is an MO-Defined-Type - leaf psadderrinvalidcurrstate { + // Ephemeral data + leaf tableId { config "false"; - description "ARP Multihoming Add Error Current State"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Table Identifier"; } - // ARP_MH_PS_DEL_ERR_INVALID_CURR_STATE - // Type is an MO-Defined-Type - leaf psdelerrinvalidcurrstate { + // Ephemeral data + leaf totalNumRoutes { config "false"; - description "ARP Multihoming Delete Error Current State"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Total Number of Routes"; } - // ARP_MH_PS_DEL_ERR_MAC_MISMATCH - // Type is an MO-Defined-Type - leaf psdelerrmacmismatch { + // Ephemeral data + leaf totalNumGroups { config "false"; - description "ARP Multihoming Error Peer Sync Delete Mac Mismatch"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Total Number of Groups"; } - // ARP_MH_PS_DEL_ERR_SEC_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf psdelerrsecdelfrml2rib { + // Ephemeral data + leaf starGRoute { config "false"; - description "ARP Multihoming Error Peer Sync Second Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Star G Count"; } - // ARP_MH_PS_DEL_ERR_FOR_TL_ROUTE - // Type is an MO-Defined-Type - leaf psdelerrfortlroute { + // Ephemeral data + leaf sgRoute { config "false"; - description "ARP Multihoming Error Peer Sync Delete For True Local Route"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "SG Route Count"; } - // ARP_MH_TL_DEL_ERR_FOR_PSRO_ROUTE - // Type is an MO-Defined-Type - leaf tldelerrforpsroroute { + // Ephemeral data + leaf starGPrfx { config "false"; - description "ARP Multihoming Error True Local Delete For Peer Sync Re-originate Route"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Star-G Route Prefix"; } - } - grouping arp_Ipv4Throttle-group { + // This object holds m6rib route group information + // Ephemeral data + container group-items { - // Enable / Disable glean throttling - // Type is an MO-Defined-Type - leaf adminSt { - description "Glean throttle state"; + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses m6rib_Group-group; + description "This object holds M6RIB route group information list"; + } + description "This object holds M6RIB route group information"; } + } - // Threshold for syslog for number of packets hitting the entry - // Type is an MO-Defined-Type - leaf syslog { - description "Glean Throttle Syslog For Number Of Packets"; + grouping m6rib_Group-group { + description "This object holds M6RIB route group information"; - // Type is an MO-Defined-Type - type arp_SyslogCnt; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group Address"; } - // Max throttle packets count. Crossing this threshold, - // packet will not be throttled for a particular adjacency - // Type is an MO-Defined-Type - leaf maxPacket { - description "Glean throttle packet count"; - - // Type is an MO-Defined-Type - type arp_MaxPacket; + // Ephemeral data + leaf grpMasklen { + config "false"; + type uint32; + description "Group Mask Length"; } - // Timeout for throttle setting for a particular adjacency - // Type is an MO-Defined-Type - leaf timeout { - description "Ipv4 Glean Throttle Timeout"; - - // Type is an MO-Defined-Type - type arp_ThrottleTimeout; + // Ephemeral data + leaf bidir { + config "false"; + type boolean; + description "Bidirectional Flag"; } - } - grouping arp_EventLogs-group { - - // Event LogType - // Type is an MO-Defined-Type - leaf eventType { - description "Sync Event Log Type"; - - // Type is an MO-Defined-Type - type arp_EventType; - } + // This object holds m6rib route source information + // Ephemeral data + container source-items { - // Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Sync Event Log Size"; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; - // Type is an MO-Defined-Type - type arp_EventLogSize; + uses m6rib_Source-group; + description "This object holds M6RIB Route Source information list"; + } + description "This object holds M6RIB Route Source information"; } } - grouping arp_Vpc-group { - - // This objects hold per vpc domain information. There is only - // one vpc domain that is configurable in the system - container dom-items { - list VpcDom-list { - key "domainId"; + grouping m6rib_Source-group { + description "This object holds M6RIB Route Source information"; - // Added containment: Prefix=dom - // Acquired From Package arp - uses arp_VpcDom-group; - } + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source IPv6 Address"; } - } - - grouping arp_VpcDom-group { - // VPC Domain ID - // Type is an MO-Defined-Type - leaf domainId { - description "TBD"; + // Ephemeral data + leaf pending { + config "false"; + type boolean; + description "Pending flag"; + } - // Type is an MO-Defined-Type - type vpc_DomId; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Route Uptime in HH:MM:SS format"; } - // Enable/Disable IP ARP SYNC - // Type is an MO-Defined-Type - leaf arpSync { - description "IP ARP Sync"; + // Ephemeral data + leaf oifcount { + config "false"; + type uint32; + description "Outgoing Interface Count"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf statsPkts { + config "false"; + type uint32; + description "Packets Forwarded by IPv6"; } - } - grouping arp_DbSupCache-group { + // Ephemeral data + leaf statsBytes { + config "false"; + type uint32; + description "Byte Count of Packets IPv6 forwarded"; + } - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf statsRateBuf { config "false"; - description "Database Type"; + type string; + description "Rate Buffer Count of IPv6 packets forwarded"; + } - // Type is an MO-Defined-Type - type arp_DbT; + // Ephemeral data + leaf lispSrcRloc { + config "false"; + type string; + description "Lisp Source Rloc Count"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf routeIif { config "false"; - description "Name"; + type string; + description "Route Incoming Interface"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf rpfNbr { + config "false"; + type address_Ip; + description "RPF Neighbor IPv6 Address"; } - // Holds Suppression-cache vlan related information - container vlan-items { - list SupCacheVlan-list { - config "false"; - key "id"; + // Ephemeral data + leaf internal { + config "false"; + type boolean; + description "RPF Internal Flag"; + } - // Added containment: Prefix=vlan - // Acquired From Package arp - uses arp_SupCacheVlan-group; + // Ephemeral data + leaf rpfNbrUptime { + config "false"; + type union { + type string; + type uint64; } + description "RPF Neighbor uptime"; } - } - - grouping arp_SupCacheVlan-group { - // vlan id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf fabricOif { config "false"; - description "VLAN id"; - - // Type is an MO-Defined-Type - type stp_VlanId; + type boolean; + description "Fabric OIF Flag"; } - // Suppression ARP Mode - // Type is an MO-Defined-Type - leaf suppressArpMode { + // Ephemeral data + leaf fabricLoser { config "false"; - description "Suppression ARP mode"; - - // Type is an MO-Defined-Type - type arp_SuppressArpMode; + type boolean; + description "Fabric Loser Flag"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf numVpcSviOifs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Number of vpc svi OIFs"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf routeMdtIod { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type boolean; + description "Route MDT IOD Flag"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf mdtEncapIndex { config "false"; - description "Operational State"; + type uint32; + description "MDT Encap Index"; + } - // Type is an MO-Defined-Type - type nw_EntOperSt; + // This object holds m6rib mpib information + // Ephemeral data + container mpib-items { + + // Ephemeral data + list Mpib-list { + config "false"; + key "mpibName"; + + uses m6rib_Mpib-group; + description "This object holds M6RIB route owner information list"; + } + description "This object holds M6RIB route owner information"; } - // Holds suppression-cache entry information - container ip-items { - list SupCacheEntry-list { + // This object holds m6rib OIF information + // Ephemeral data + container oif-items { + + // Ephemeral data + list Oif-list { config "false"; - key "ip"; + key "oifName"; - // Added containment: Prefix=ip - // Acquired From Package arp - uses arp_SupCacheEntry-group; + uses m6rib_Oif-group; + description "This object holds M6RIB Outgoing Interface information list"; } + description "This object holds M6RIB Outgoing Interface information"; } } - grouping arp_SupCacheEntry-group { - leaf ip { + grouping m6rib_Mpib-group { + description "This object holds M6RIB route owner information"; + + // Ephemeral data + leaf mpibName { config "false"; - type address_Ip; + type string; + description "MPIB name"; } - // IRP Entry flags - // Type is an MO-Defined-Type - leaf flags { + // Ephemeral data + leaf oifCount { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type arp_SupCacheFlag; + type uint32; + description "OIF count"; } - leaf mac { + + // Ephemeral data + leaf staleRoute { config "false"; - type address_Mac; + type boolean; + description "Stale Route Flag"; } - leaf upTS { + } + + grouping m6rib_Oif-group { + description "This object holds M6RIB Outgoing Interface information"; + + // Ephemeral data + leaf oifName { config "false"; type string; + description "OIF name"; } - // Physical Interface ID - // Type is an MO-Defined-Type - leaf phyid { + // Ephemeral data + leaf oifUptime { config "false"; - description "Physical Interface ID"; + type string; + description "OIF Uptime in HH:MM:SS Format"; + } - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf oifRPF { + config "false"; + type boolean; + description "OIF RPF flag"; } - leaf remotevtepaddr { + + // Ephemeral data + leaf oifLispEncapEntries { config "false"; - type string; + type uint32; + description "Lisp Encap Entries Count"; } - } - grouping bfd_Entity-group { + // This object holds lisp encap information + // Ephemeral data + container lispencap-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list LispEncap-list { + config "false"; + key "index"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses m6rib_LispEncap-group; + description "This object holds lisp encap information list"; } + description "This object holds lisp encap information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds m6rib OIF MPIB information + // Ephemeral data + container oifmpib-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + list OifMpib-list { + config "false"; + key "oifMpibName"; + + uses m6rib_OifMpib-group; + description "This object holds M6RIB Outgoing Interface owner information list"; + } + description "This object holds M6RIB Outgoing Interface owner information"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping m6rib_LispEncap-group { + description "This object holds lisp encap information"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + // Ephemeral data + leaf index { + config "false"; + type uint32; + description "Lisp Encap Index"; } - // This objects hold per bfd instance information. - container inst-items { + // Ephemeral data + leaf srcRloc { + config "false"; + type address_Ip; + description "Source remote location"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package bfd - uses bfd_Inst-group; + // Ephemeral data + leaf dstRloc { + config "false"; + type address_Ip; + description "Destination remote location"; } } - grouping bfd_Inst-group { - - // Loopback interface to be used for bfd echo frames - // Type is an MO-Defined-Type - leaf echoIf { - description "Echo Interface to be used for BFD echo frames"; + grouping m6rib_OifMpib-group { + description "This object holds M6RIB Outgoing Interface owner information"; - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf oifMpibName { + config "false"; + type string; + description "OIF MPIB name"; } - // Startup timer interval. - // Type is an MO-Defined-Type - leaf startupIntvl { - description "Startup timer Interval"; - - // Type is an MO-Defined-Type - type bfd_StartupIntvl; + // Ephemeral data + leaf staleOif { + config "false"; + type boolean; + description "Stale OIF Flag"; } - // Slow mode timer interval. This is the interval at which - // BFD control packets are sent. - // Type is an MO-Defined-Type - leaf slowIntvl { - description "Slow timer Interval"; - - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + // Ephemeral data + leaf vpcSvi { + config "false"; + type boolean; + description "VPC SVI Flag"; } + } + + grouping m6rib_Dom-group { + description "This objects hold per MRIB information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Admin State leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Per-Dom Controls leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtdmc_DomCtrl; + description "Domain Controls"; } - // This object holds bfd interface information - container if-items { - list If-list { - key "id"; + // Protocol packet MTU + leaf mtu { - // Added containment: Prefix=if - // Acquired From Package bfd - uses bfd_If-group; - } + type rtdmc_Mtu; + description "Maximum Transmission Unit"; } - // This objects hold per address family bfd instance information - container af-items { - list InstAf-list { - key "type"; + // Auto Enable + leaf autoEnable { - // Added containment: Prefix=af - // Acquired From Package bfd - uses bfd_InstAf-group; - } + type rtdmc_AutoEnable; + description "Auto Enable"; } - - // This object holds keepalive policy information - container ka-items { - - // Added containment as a singleton: Prefix=ka - // Acquired From Package bfd - uses bfd_KaP-group; + leaf logNbhChng { + type boolean; + description "Log Neighbhor changes"; + } + leaf flushRoutes { + type boolean; + description "Flush Routes"; + } + leaf bfd { + type boolean; + description "BFD"; } - // This object holds bfd session information - container session-items { - list Sess-list { - config "false"; - key "discr"; + leaf jpDelay { - // Added containment: Prefix=session - // Acquired From Package bfd - uses bfd_Sess-group; - } + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - } - grouping bfd_If-group { - - // Enable/disable echo mode for interface - // Type is an MO-Defined-Type - leaf echoAdminSt { - description "Echo Mode Admin State of BFD Interface"; + leaf regRateLmt { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Interface Controls"; + // This object holds m6rib config information + container config-items { - // Type is an MO-Defined-Type - type bfd_IfControl; + uses m6rib_Config-group; + description "This object holds M6RIB config information"; } - // BFD track-member-link - // Type is an MO-Defined-Type - leaf trkMbrLnk { - description "Track Member Link Enable Disable on bfd interface"; + // This object holds m6rib rpf-meter config information + container rpfmeter-items { - // Type is an MO-Defined-Type - type bfd_TrkMbrLnk; + uses m6rib_RpfMeter-group; + description "Holds M6RIB rpf-meter config information"; } - // BFD Start Time - // Type is an MO-Defined-Type - leaf stTm { - description "BFD Start timeout"; + // This object holds m6rib last-hop-meter config information + container lasthopmeter-items { - // Type is an MO-Defined-Type - type bfd_StTm; - } - leaf dst { - type address_Ipv4; + uses m6rib_LastHopMeter-group; + description "M6RIB last hop meter Configuration information"; } + container eventhist-items { + list EventHistory-list { + key "type"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses m6rib_EventHistory-group; + description "Holds Configuration details of event-history buffers list"; } + description "Holds Configuration details of event-history buffers"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds m6rib Notify information + container loglevel-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses m6rib_LogLevel-group; + description "Holds M6RIB logging level information"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // This object holds m6rib Notify information + container notify-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses m6rib_Notify-group; + description "This object holds m6rib Notify information"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds global config for mrib + container trace-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses m6rib_Trace-group; + description "This object holds global configuration for Bintrace"; } + } - // This object holds authentication policy information - container auth-items { - - // Added containment as a singleton: Prefix=auth - // Acquired From Package bfd - uses bfd_AuthP-group; - } + grouping m6rib_Config-group { + description "This object holds M6RIB config information"; - // This object holds per address family bfd interface information - container af-items { - list IfAf-list { - key "type"; + // Holddown Enable + leaf holdEnable { - // Added containment: Prefix=af - // Acquired From Package bfd - uses bfd_IfAf-group; - } + type m6rib_HoldAdminSt; + description "Holddown Enable"; } - // Neighbor MacEntry - container nbr-items { - list Nbr-list { - key "srcip destip"; + // Holddown second + leaf holddown { - // Added containment: Prefix=nbr - // Acquired From Package bfd - uses bfd_Nbr-group; - } + type m6rib_HoldDownType; + description "holddown second"; + } + leaf compressBit { + type boolean; + description "M6RIB Compress Bitfield"; } - // This object holds interface keepalive policy information - container ifka-items { + // Mfdm-buffer-route-count size + leaf mfdmSize { - // Added containment as a singleton: Prefix=ifka - // Acquired From Package bfd - uses bfd_IfKaP-group; + type m6rib_MfdmSize; + description "Mfdm buffer route size"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - container rtvrfMbr-items { + // Multipath Mode + leaf mode { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type m6rib_MultipathMode; + description "M6RIB ECMP Multicast load splitting"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Multipath Resilient + leaf modeResilient { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type m6rib_ResilientType; + description "Multipath Resilient RPF interface mode"; } } - grouping bfd_AuthP-group { + grouping m6rib_RpfMeter-group { + description "Holds M6RIB rpf-meter config information"; + leaf hwDropAll { + type boolean; + description "hardware drop all configuration"; + } - // Authentication type - // Type is an MO-Defined-Type - leaf type { - description "Authentication Type of the BFD session"; + leaf kbps { - // Type is an MO-Defined-Type - type bfd_AuthT; + type m6rib_Kbps; + description "rpf-meter in killobytes/seconds"; } - // Authentication key id - // Type is an MO-Defined-Type - leaf keyId { - description "Authentication Key ID to be used in the BFD session"; + leaf burstSize { - // Type is an MO-Defined-Type - type bfd_AuthKeyId; + type m6rib_BurstSize; + description "rpf-meter in killobytes"; } + } - // Authentication Hex key Size - // Type is an MO-Defined-Type - leaf hexKeySize { - description "A property to indicate Authentication Hex Key Size"; + grouping m6rib_LastHopMeter-group { + description "M6RIB last hop meter Configuration information"; - // Type is an MO-Defined-Type - type bfd_AuthHexKeySize; + leaf kbps { + + type m6rib_Kbps; + description "rpf-meter in killobytes/seconds"; } - // Authentication hex key - // Type is an MO-Defined-Type - leaf hexKey { - description "A property to indicate Authentication Hex Key for the BFD session"; + leaf burstSize { - // Type is an MO-Defined-Type - type bfd_AuthHexKey; + type m6rib_BurstSize; + description "rpf-meter in killobytes"; } + } - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "A property to indicate Authentication Key for the BFD session"; + grouping m6rib_EventHistory-group { + description "Holds Configuration details of event-history buffers"; - // Type is an MO-Defined-Type - type bfd_AuthKey; + leaf type { + + type m6rib_EhType; + description "configures type of event history"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf size { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type m6rib_Size; + description "configures buffer size in text/kb"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping m6rib_LogLevel-group { + description "Holds M6RIB logging level information"; - // Type is an MO-Defined-Type - type naming_Descr; + // logging leve + leaf level { + + type m6rib_LogLevel; + description "Logging Level"; + } + leaf type { + type string; + description "Logging type"; } } - grouping bfd_IfAf-group { + grouping m6rib_Notify-group { + description "This object holds m6rib Notify information"; - // Enable/disable sessions for interface address family - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State for Interface Address family"; + // Notify interval + leaf interval { - // Type is an MO-Defined-Type - type nw_AdminSt; + type m6rib_Interval; + description "Notify Interval"; } + } - // Enable/disable echo mode for interface address family - // Type is an MO-Defined-Type - leaf echoAdminSt { - description "Echo Mode Admin State for Interface Address family"; + grouping m6rib_Trace-group { + description "This object holds global configuration for Bintrace"; + leaf traceEnable { + type boolean; + description "Configure multicast and enable bintrace"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // trace entries + leaf traceEntryCnt { + + type m6rib_TraceCountType; + description "Update number of bintrace entries"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Interface Controls"; + // trace records + leaf traceRecCnt { - // Type is an MO-Defined-Type - type bfd_IfControl; + type m6rib_TraceCountType; + description "Update number of bintrace record per entry"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping m6rib_RouteDb-group { + description "This object holds M6RIB route database information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { + + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses m6rib_Vrf-group; + description "This objects holds M6RIB context level information list"; } + description "This objects holds M6RIB context level information"; } + } - // Type - // Inherited From bfd:Af - // Type is an MO-Defined-Type - leaf type { - description "Type of the Address Family"; + grouping macsec_Entity-group { + description "Macsec control plane entity"; - // Type is an MO-Defined-Type - type bfd_AfT; + // This objects hold per macsec instance information. There is + // only one instance of macsec running in the system today + container inst-items { + + uses macsec_Inst-group; + description "Macsec Instance object"; } + } - // This object holds authentication policy information - container auth-items { + grouping macsec_Inst-group { + description "Macsec Instance object"; - // Added containment as a singleton: Prefix=auth - // Acquired From Package bfd - uses bfd_AuthP-group; + // macsec shutdown + leaf macsecShutdown { + + type macsec_MacsecShutdown; + description "Enable or disable Macsec Shutdown"; } + container if-items { + list If-list { + key "id"; - // This object holds interface keepalive policy information - container ifka-items { + uses macsec_If-group; + description "Interface for Macsec keychain CLI list"; + } + description "Interface for Macsec keychain CLI"; + } + container eapol-items { + list Eapol-list { + key "id"; - // Added containment as a singleton: Prefix=ifka - // Acquired From Package bfd - uses bfd_IfKaP-group; + uses macsec_Eapol-group; + description "Interface for Macsec Eapol mac-address CLI list"; + } + description "Interface for Macsec Eapol mac-address CLI"; + } + + // This object holds macsec information that is operated at a + // interface level + container policy-items { + list Policy-list { + key "policyName"; + + uses macsec_Policy-group; + description "Macsec Policy Instance list"; + } + description "Macsec Policy Instance"; } } - grouping bfd_IfKaP-group { + grouping macsec_If-group { + description "Interface for Macsec keychain CLI"; - // Desired minimum tx interval. This is the minimum interval, - // in ms, that the system would like to use when transmitting - // BFD control packets. - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; + // Key Chain Name + leaf keychainName { - // Type is an MO-Defined-Type - type bfd_IfMinTxIntvl; + type macsec_KeyChainName; + description "Name of Macsec Key Chain"; } - // Required minimum rx interval. This is the minimum interval, - // in ms, between received BFD control packets that this - // system is capable of supporting. - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; + // Policy Name + leaf policyName { - // Type is an MO-Defined-Type - type bfd_IfMinRxIntvl; + type macsec_PolicyName; + description "Name of Macsec Policy"; } - // Detection multiplier. This is the desired detection time - // multiplier for BFD packets on the local system. - // Type is an MO-Defined-Type - leaf detectMult { - description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; + // Fallback Key Chain Name + leaf fallbackKeychainName { - // Type is an MO-Defined-Type - type bfd_IfDetectMult; + type macsec_KeyChainName; + description "Name of Macsec Fallback Key Chain"; } - // Echo rx interval. This is the minimum interval, in ms, - // between received BFD echo packets that this system is - // capable of supporting. - // Type is an MO-Defined-Type - leaf echoRxIntvl { - description "Echo Rx Interval. This is the minimum interval, in ms, between received BFD echo packets that this system is capable of supporting."; + // Interface Index + leaf id { - // Type is an MO-Defined-Type - type bfd_EchoRxIntvl; + type nw_IfId; + description "Interface Index"; } } - grouping bfd_Nbr-group { - leaf srcip { - type address_Ip; + grouping macsec_Eapol-group { + description "Interface for Macsec Eapol mac-address CLI"; + leaf macAddress { + type address_Mac; + default "03:00:00:c2:80:01"; + description "Macsec EAPOL Mac Address"; } - leaf destip { - type address_Ip; + + // Ether type + leaf etherType { + + type macsec_EtherType; + description "Macsec EAPOL Ether Type"; + } + + // Interface Index + leaf id { + + type nw_IfId; + description "Interface Index"; } } - grouping bfd_InstAf-group { + grouping macsec_Policy-group { + description "Macsec Policy Instance"; - // Slow mode timer interval. This is the interval at which - // BFD control packets are sent. - // Type is an MO-Defined-Type - leaf slowIntvl { - description "Slow timer Interval"; + // Policy Name + leaf policyName { - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + type macsec_PolicyName; + description "Name of Macsec Policy"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Key Server Priority + leaf keySvrPrio { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type macsec_KeySvrPrio; + description "Key Server Priority for Macsec Policy"; } - // Type - // Inherited From bfd:Af - // Type is an MO-Defined-Type - leaf type { - description "Type of the Address Family"; + // Confidentiality Offset + leaf confOffset { - // Type is an MO-Defined-Type - type bfd_AfT; + type macsec_ConfOffset; + description "Confidentiality Offset for Macsec Policy"; } - // This object holds keepalive policy information - container ka-items { + // Security Policy + leaf secPolicy { - // Added containment as a singleton: Prefix=ka - // Acquired From Package bfd - uses bfd_KaP-group; + type macsec_SecPolicy; + description "Security Policy for Macsec Policy"; } - } - - grouping bfd_KaP-group { - // Desired minimum tx interval. This is the minimum interval, - // in ms, that the system would like to use when transmitting - // BFD control packets. - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; + // Replay Protection Window Size + leaf replayWindow { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type macsec_ReplayWindow; + description "Replay Window for Macsec Policy"; } - // Required minimum rx interval. This is the minimum interval, - // in ms, between received BFD control packets that this - // system is capable of supporting. - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; + // Cipher Suite + leaf cipherSuite { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type macsec_CipherSuite; + description "Cipher Suite for Macsec Policy"; } - // Detection multiplier. This is the desired detection time - // multiplier for BFD packets on the local system. - // Type is an MO-Defined-Type - leaf detectMult { - description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; + // SAK expiry time + leaf sakExpiryTime { - // Type is an MO-Defined-Type - type bfd_DetectMult; + type macsec_SakExpiryTime; + description "Security Association Key Expiry Time for Macsec Policy"; } - // Echo rx interval. This is the minimum interval, in ms, - // between received BFD echo packets that this system is - // capable of supporting. - // Type is an MO-Defined-Type - leaf echoRxIntvl { - description "Echo Rx Interval. This is the minimum interval,in ms, between received BFD echo packets that this system is capable of supporting."; + // Include icv indicator + leaf includeIcvParam { - // Type is an MO-Defined-Type - type bfd_EchoRxIntvl; + type macsec_IncludeIcvParam; + description "Include ICV Indicator paramset in MKPDU for Macsec Policy"; } } - grouping bfd_Sess-group { + grouping mcastfwd_Entity-group { + description "Holds Multicast Forwarding Entity Information"; - // Local session identifier - // Type is an MO-Defined-Type - leaf discr { - config "false"; - description "Local Session Identifier of the BFD session"; + leaf name { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Remote session identifier - // Type is an MO-Defined-Type - leaf remoteDiscr { - config "false"; - description "Remote Session Identifier of the BFD session"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_Discr; + type nw_AdminSt; + description "Admin State"; } - // Async mode source port - // Type is an MO-Defined-Type - leaf asyncPort { + // Operational state + leaf operSt { config "false"; - description "Asynchronous mode Source Port"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_EntOperSt; + description "Operational State"; } - // Echo mode source port - // Type is an MO-Defined-Type - leaf echoPort { + // Operational errors qualifier + leaf operErr { config "false"; - description "Echo mode Source Port"; - // Type is an MO-Defined-Type - type l4_Port; - } - leaf localMac { - config "false"; - type address_Mac; - } - leaf remoteMac { - config "false"; - type address_Mac; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Interface id - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Interface ID associated with the BFD session"; + // This objects hold per mcastfwd instance information. There is only + // one instance of mcastfwd running in the system today + container inst-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mcastfwd_Inst-group; + description "Holds Multicast Forwarding Instance information"; } + } - // Interface ordinal - // Type is an MO-Defined-Type - leaf iod { - config "false"; - description "Interface ordinal associated with the BFD session"; + grouping mcastfwd_Inst-group { + description "Holds Multicast Forwarding Instance information"; - // Type is an MO-Defined-Type - type nw_Iod; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // L3 context name - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "L3 Context Name"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf srcAddr { - config "false"; - type address_Ip; + type nw_AdminSt; + description "Admin State"; } - leaf destAddr { - config "false"; - type address_Ip; + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Local value of tx interval - // Type is an MO-Defined-Type - leaf localTxIntvl { + // Operational errors qualifier + leaf operErr { config "false"; - description "Local Value of Tx Interval"; - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Local value of rx interval - // Type is an MO-Defined-Type - leaf localRxIntvl { - config "false"; - description "Local Value of Rx Interval"; + // Inter Packet Delay + leaf jpDelay { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type rtdmc_JPDelay; + description "Inter Packet Delay"; } - // Local value of detection multiplier - // Type is an MO-Defined-Type - leaf localDetectMult { - config "false"; - description "Local value of Detection Multiplier"; + // Null Register Inter Batch Delay + leaf nrDelay { - // Type is an MO-Defined-Type - type bfd_DetectMult; + type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } - // Active value of tx interval - // Type is an MO-Defined-Type - leaf txIntvl { - config "false"; - description "Active Value of Tx Interval"; + // Number of routes in a null register + leaf nrNumRt { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type rtdmc_NRNumRt; + description "Null Register Number of Routes"; + } + leaf regStop { + type boolean; + description "Register until stops"; } - // Active value of echo tx interval - // Type is an MO-Defined-Type - leaf echoTxIntvl { - config "false"; - description "Active Value of Echo Tx Interval"; + // This objects hold per igmp domain information + container dom-items { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + uses mcastfwd_Dom-group; + description "Holds Multicast Forwarding Domain information"; } + container eventhist-items { + list EventHistory-list { + key "type"; - // Active value of rx interval - // Type is an MO-Defined-Type - leaf rxIntvl { - config "false"; - description "Active Value of Rx Interval"; + uses mcastfwd_EventHistory-group; + description "Holds Multicast Forwarding Event-History Buffer Configurations list"; + } + description "Holds Multicast Forwarding Event-History Buffer Configurations"; + } - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + container loglevel-items { + + uses mcastfwd_LogLevel-group; + description "Configures logging level"; } - // Active value of slow interval - // Type is an MO-Defined-Type - leaf slowIntvl { - config "false"; - description "Active value of Slow Interval"; + container swrepli-items { - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + uses mcastfwd_SwRepli-group; + description "Configures software replicate"; } + } - // Active value of detection multiplier - // Type is an MO-Defined-Type - leaf detectMult { - config "false"; - description "Active value of Detection Multiplier"; + grouping mcastfwd_Dom-group { + description "Holds Multicast Forwarding Domain information"; - // Type is an MO-Defined-Type - type bfd_DetectMult; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Active value of auth type - // Type is an MO-Defined-Type - leaf authType { - config "false"; - description "Active value of Authentication Type"; + // Admin State + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_AuthT; + type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Authentication sequence number - // Type is an MO-Defined-Type - leaf authSeqno { - config "false"; - description "Authentication Sequence Number"; + // Per-Dom Controls + leaf ctrl { - // Type is an MO-Defined-Type - type bfd_AuthSeqno; + type rtdmc_DomCtrl; + description "Domain Controls"; } - // Oper (protocol) state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Protocol packet MTU + leaf mtu { - // Type is an MO-Defined-Type - type bfd_OperSt; + type rtdmc_Mtu; + description "Maximum Transmission Unit"; } - // Remote oper state - // Type is an MO-Defined-Type - leaf remoteOperSt { - config "false"; - description "Remote Operational State"; + // Auto Enable + leaf autoEnable { - // Type is an MO-Defined-Type - type bfd_OperSt; + type rtdmc_AutoEnable; + description "Auto Enable"; + } + leaf logNbhChng { + type boolean; + description "Log Neighbhor changes"; + } + leaf flushRoutes { + type boolean; + description "Flush Routes"; + } + leaf bfd { + type boolean; + description "BFD"; } - // Protocol diag code - // Type is an MO-Defined-Type - leaf diag { - config "false"; - description "Protocol Diagnostic code"; + leaf jpDelay { - // Type is an MO-Defined-Type - type bfd_DiagCode; + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - // Packet flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Packet Flags"; + leaf regRateLmt { - // Type is an MO-Defined-Type - type bfd_PktFlags; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; } - leaf lastTransTime { - config "false"; - type string; + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } + } - // Last diag code - // Type is an MO-Defined-Type - leaf lastDiag { - config "false"; - description "Last Diagnostic code"; + grouping mcastfwd_EventHistory-group { + description "Holds Multicast Forwarding Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type bfd_DiagCode; - } - leaf lastDownTime { - config "false"; - type string; + leaf type { + + type mcastfwd_EhType; + description "Configures type of event history"; } - // This object holds bfd session stats information - container stats-items { + leaf size { - // Added containment as a singleton: Prefix=stats - // Acquired From Package bfd - uses bfd_SessStats-group; + type mcastfwd_Size; + description "Configures buffer size in text/kb"; } + } - // This object holds bfd last packet information. This signifies - // peer view of the session. - container peerv-items { + grouping mcastfwd_LogLevel-group { + description "Configures logging level"; - // Added containment as a singleton: Prefix=peerv - // Acquired From Package bfd - uses bfd_PeerV-group; + leaf lvltype { + + type mcastfwd_LvlType; + description "Configures type of logging level"; } - // This object holds app information per bfd session - container app-items { - list SessApp-list { - config "false"; - key "id"; + leaf level { - // Added containment: Prefix=app - // Acquired From Package bfd - uses bfd_SessApp-group; - } + type mcastfwd_Level; + description "Configures level values from 0-7"; } + } - // Rel-def from mbrSess - container rsmbrSess-items { + grouping mcastfwd_SwRepli-group { + description "Configures software replicate"; - // Abstract containment of rsmbrSess derived from bfd:Sess - list RsMbrSess-list { - key "tDn"; + leaf type { - // Added containment: Prefix=rsmbrSess - // Acquired From Package bfd - uses bfd_RsMbrSess_source-group; - } + type mcastfwd_SwRep; + description "Enable software replication of PIM ASM leak packets and incoming interface"; } } - grouping bfd_SessStats-group { + grouping mld_Entity-group { + description "MLD Entity"; - // Packets received - // Type is an MO-Defined-Type - leaf rxCnt { - config "false"; - description "Packets Received"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Average interval between received packets - // Type is an MO-Defined-Type - leaf rxAvg { - config "false"; - description "Packets Average Receive Interval, which is the average interval between received packets "; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_AdminSt; + description "Admin State"; } - // Minimum interval between received packets - // Type is an MO-Defined-Type - leaf rxMin { + // Operational state + leaf operSt { config "false"; - description "Packets Minimum Receive Interval"; - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_EntOperSt; + description "Operational State"; } - // Maximum interval between received packets - // Type is an MO-Defined-Type - leaf rxMax { - config "false"; - description "Packets Maximum Receive Interval"; + // This objects hold per mld instance information. There is only + // one instance of mld running in the system today + container inst-items { - // Type is an MO-Defined-Type - type bfd_PktInterval; + uses mld_Inst-group; + description "MLD Instance"; } - leaf lastRxPkt { - config "false"; - type string; + } + + grouping mld_Inst-group { + description "MLD Instance"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Packets transmitted - // Type is an MO-Defined-Type - leaf txCnt { - config "false"; - description "Packets Transmitted"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Average interval between transmitted packets - // Type is an MO-Defined-Type - leaf txAvg { - config "false"; - description "Packets Average Transmit Interval, which is average interval between transmitted packets"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_InstCtrl; + description "Controls"; } - // Minimum interval between transmitted packets - // Type is an MO-Defined-Type - leaf txMin { - config "false"; - description "Packets Minimum Transmit Interval"; + // Control + leaf instCtrl { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type ipmc_InstCtrl; + description "Inst Controls"; } - // Maximum interval between transmitted packets - // Type is an MO-Defined-Type - leaf txMax { - config "false"; - description "Packets Maximum Transmit Interval"; + // Bootup route add delay to RIB + leaf bootupDelay { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type ipmc_BootupDelay; + description "Bootup Route Add Delay"; } - leaf lastTxPkt { - config "false"; - type string; + leaf flushRoute { + type boolean; + description "Flush Routes on Restart"; + } + leaf rtrAlert { + type boolean; + description "Enforce Router Alert"; + } + leaf anyQueryDest { + type boolean; + description "Allow any destination-IP for General Queries "; } - // Number of times session has gone into up state - // Type is an MO-Defined-Type - leaf upCnt { - config "false"; - description "Up Count is the number of times session has gone into up state"; + // syslog-Threshold + leaf syslogThreshold { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmc_SyslogThresT; + description "IGMP table syslog threshold percentage"; + } + leaf spoofCheck { + type boolean; + description "Enable spoof check for IGMP"; + } + leaf strictQuerElect { + type boolean; + description "Consider subnet check for L3 igmp querier election"; } - // Number of times session has gone into down state - // Type is an MO-Defined-Type - leaf downCnt { - config "false"; - description "Down Count is the number of times session has gone into down state"; + // This objects hold per mld domain information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mld_Dom-group; + description "This object holds MLD domain information list"; + } + description "This object holds MLD domain information"; + } + container eventhist-items { + list EventHistory-list { + key "type"; + + uses mld_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; + } + description "This object holds configuration details of event-history buffers"; } } - grouping bfd_PeerV-group { + grouping mld_Dom-group { + description "This object holds MLD domain information"; - // Diag Code in last packet - // Type is an MO-Defined-Type - leaf diag { - config "false"; - description "Diagnostic Code in Last Packet"; + leaf name { - // Type is an MO-Defined-Type - type bfd_DiagCode; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Protocol state in last packet - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Protocol State in Last Packet"; + // This objects hold per mld interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type bfd_OperSt; + uses mld_If-group; + description "This object holds per MLD interface information list"; + } + description "This object holds per MLD interface information"; } - // Flags in last packet - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags in Last Packet"; + // This objects hold per mld domain information + container ssmxlate-items { + list SsmXlate-list { + key "srcAddr grpPfx"; - // Type is an MO-Defined-Type - type bfd_PktFlags; + uses mld_SsmXlate-group; + description "Holds Source Specific Multicast (SSM) translation information list"; + } + description "Holds Source Specific Multicast (SSM) translation information"; } + } - // Detect multiplier in last packet - // Type is an MO-Defined-Type - leaf detectMult { - config "false"; - description "Detect Multiplier in Last Packet"; + grouping mld_If-group { + description "This object holds per MLD interface information"; - // Type is an MO-Defined-Type - type bfd_DetectMult; + leaf mldVersion { + + type mld_Ver; + description "MLD supported version"; } - // My discriminator in last packet - // Type is an MO-Defined-Type - leaf myDisc { - config "false"; - description "My Discriminator in Last Packet"; + leaf name { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Your discriminator in last packet - // Type is an MO-Defined-Type - leaf yourDisc { - config "false"; - description "Your Discriminator in Last Packet"; + leaf descr { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Descr1024; + description "Description"; } - // Min tx interval in last packet - // Type is an MO-Defined-Type - leaf minTx { - config "false"; - description "Minimum Tx Interval in Last Packet"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Min rx interval in last packet - // Type is an MO-Defined-Type - leaf minRx { - config "false"; - description "Minimum Rx Interval in Last Packet"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type nw_IfAdminSt; + description "Admin State"; } - // Min echo interval in last packet - // Type is an MO-Defined-Type - leaf minEcho { - config "false"; - description "Minimum Echo Interval in Last Packet"; + // Interface Control + leaf ifCtrl { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type ipmc_IfCtrl; + description "Controls"; } - } - grouping bfd_SessApp-group { + // Group Timeout + leaf grpTimeout { - // Application ID - // Type is an MO-Defined-Type - leaf id { + type ipmc_GrpTimeout; + description "Group Membership Timeout"; + } + leaf actQuer { config "false"; - description "Application ID of the app associated with the BFD session"; - - // Type is an MO-Defined-Type - type bfd_AppId; + type address_Ip; + description "IGMP active querier IP"; } - leaf name { + leaf nextQuerTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "IGMP next query time"; } - // Application sap ID - // Type is an MO-Defined-Type - leaf sapId { + // Flags + leaf flags { config "false"; - description "Application SAP ID of the app associated with the BFD session"; - // Type is an MO-Defined-Type - type bfd_SapId; + type ipmc_IfFlags; + description "Flags"; } - leaf descr { - config "false"; - type string; + leaf entryCount { + type uint32; + description "Dynamic entry count"; } - - // Application session flags - // Type is an MO-Defined-Type - leaf flags { + leaf stEntryCount { + type uint32; + description "Static Entry count"; + } + leaf querExpiry { config "false"; - description "Application Session Flags"; - - // Type is an MO-Defined-Type - type bfd_AppFlags; + type union { + type string; + type uint64; + } + description "Querier expiry time"; + } + leaf reportLl { + type boolean; + description "Report link local"; + } + leaf immediateLeave { + type boolean; + description "Fast leave"; } - // Application private data - // Type is an MO-Defined-Type - leaf data { - config "false"; - description "Application Private Data"; + // Allow v3 ASM + leaf allowv3Asm { - // Type is an MO-Defined-Type - type bfd_AppData; + type ipmc_Allowv3AsmType; + description "Allow v3 ASM"; } - leaf autoExpTime { - config "false"; - type string; + leaf suppressv3Gsq { + type boolean; + description "Suppress v3 GSQ"; } - } - - grouping hsrp_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This objects hold IP Multicast Group JoinType information + container jointype-items { + list JoinType-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mld_JoinType-group; + description "This object holds IP Multicast Group JoinType information list"; } + description "This object holds IP Multicast Group JoinType information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds resource (router state) limit policy + // to limit amount of multicast routing state on the router + container limit-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mld_ResP-group; + description "Holds Resource policy to limit amount of multicast routing state on the router"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This object holds mld reports policy state per Interface + container reppol-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses mld_RepP-group; + description "This object holds mld reports policy state per Interface"; } - // This objects holds HSRP instance information. There is only one instance of HSRP supported currently - container inst-items { + // This object holds static mld reports policy state per Interface + container streppol-items { + list StRepP-list { + key "joinType"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package hsrp - uses hsrp_Inst-group; + uses mld_StRepP-group; + description "Holds Static MLD report policy list"; + } + description "Holds Static MLD report policy"; } - } - - grouping hsrp_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object holds querier information per interface + container querierp-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses mld_QuerierP-group; + description "Holds MLD querier information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping mld_JoinType-group { + description "This object holds IP Multicast Group JoinType information"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Join Type of the groups + leaf type { + + type ipmc_JoinType; + description "Join Type of the groups"; } - // This object holds interface information - container if-items { - list If-list { - key "id"; + // This objects hold IP Multicast Group version information + container ver-items { + list Version-list { + key "version"; - // Added containment: Prefix=if - // Acquired From Package hsrp - uses hsrp_If-group; + uses mld_Version-group; + description "This object holds IP Multicast Group version information list"; } + description "This object holds IP Multicast Group version information"; } } - grouping hsrp_If-group { + grouping mld_Version-group { + description "This object holds IP Multicast Group version information"; - // Hsrp version - // Type is an MO-Defined-Type + // MLD version leaf version { - description "Hsrp version"; - // Type is an MO-Defined-Type - type hsrp_HsrpVersion; + type ipmc_Ver; + description "Group version"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds mld group configuration per Interface + container group-items { + list Group-list { + key "grp"; - // Type is an MO-Defined-Type - type hsrp_IfControl; + uses mld_Group-group; + description "MLD group information per interface list"; + } + description "MLD group information per interface"; } + } - // Use-Bia Scope - // Type is an MO-Defined-Type - leaf biaScope { - description "Use-Bia Scope"; + grouping mld_Group-group { + description "MLD group information per interface"; + leaf grp { + type address_Ip; + description "Route address name for choosing groups"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is used"; + } - // Type is an MO-Defined-Type - type hsrp_BiaScopeType; + // This object holds static mld source per group + container source-items { + list Source-list { + key "src"; + + uses mld_Source-group; + description "This object holds static mld source per group list"; + } + description "This object holds static mld source per group"; } - leaf isCreate { - config "false"; - type uint8; - default "0"; + } + + grouping mld_Source-group { + description "This object holds static mld source per group"; + leaf src { + type address_Ip; + description "Source IP address"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is used"; } + } + + grouping mld_ResP-group { + description "Holds Resource policy to limit amount of multicast routing state on the router"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Maximum Multicast Entries + leaf max { - // Type is an MO-Defined-Type - type nw_IfId; + type mcast_NumEntries; + description "Maximum Multicast Entries"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Reserved Multicast Entries + leaf rsvd { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_NumEntries; + description "Reserved Multicast Entries"; } - container grp-items { - list Group-list { - key "id af"; - - // Added containment: Prefix=grp - // Acquired From Package hsrp - uses hsrp_Group-group; - } + leaf rtMap { + type string; + description "Reserved Entries Route Map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + grouping mld_RepP-group { + description "This object holds mld reports policy state per Interface"; + leaf rtMap { + type string; + description "Route Map"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + leaf pfxList { + type string; + description "Prefix List"; + } + leaf useAccessGrpCommand { + type boolean; + description "Flag to use access-group"; } } - grouping hsrp_Group-group { - - // HSRP Group ID - // Type is an MO-Defined-Type - leaf id { - description "Group Id"; - - // Type is an MO-Defined-Type - type hsrp_GroupId; + grouping mld_StRepP-group { + description "Holds Static MLD report policy"; + leaf rtMap { + type string; + description "Route Map"; } - - // HSRP Address Family - // Type is an MO-Defined-Type - leaf af { - description "Group Address Family"; - - // Type is an MO-Defined-Type - type hsrp_GroupAf; + leaf pfxList { + type string; + description "Prefix List"; } - leaf ip { - type address_Ip; + leaf useAccessGrpCommand { + type boolean; + description "Flag to use access-group"; } - // HSRP primary IP Obtain Mode - // Type is an MO-Defined-Type - leaf ipObtainMode { - description "IP Obtain Mode"; + // Join Type of the groups + leaf joinType { - // Type is an MO-Defined-Type - type hsrp_GrpIpObtainMode; + type ipmc_JoinType; + description "Join Type of Groups"; } + } - // Control Bits - // Type is an MO-Defined-Type - leaf ctrl { - description "Group control bits"; - - // Type is an MO-Defined-Type - type hsrp_GrpControl; - } + grouping mld_QuerierP-group { + description "Holds MLD querier information"; - // Minimum Preemption delay before this group can preempt a high priority Active - // Type is an MO-Defined-Type - leaf preemptDelayMin { - description "Miminum delay before preempt"; + leaf name { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Preemption delay after a switch reboot before this group can preempt a High priority Active - // Type is an MO-Defined-Type - leaf preemptDelayReload { - description "Preempt delay after a switch reload"; + leaf descr { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type naming_Descr; + description "Description of the specified attribute"; } - // Maximum number of seconds to allow IP redundancy clients to prevent preemption @@@ Dont expose thi to user - // Type is an MO-Defined-Type - leaf preemptDelaySync { - description "Wait for IP redundancy clients"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type mcast_QuerierIp; + description "Address"; } - // HSRP Hello packet interval - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type hsrp_HelloIntvl; + type mcast_QueryIntvl; + description "Query Interval"; } - // HSRP Hold interval - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // Query response interval + leaf rspIntvl { - // Type is an MO-Defined-Type - type hsrp_HoldIntvl; + type mcast_QueryRspIntvl; + description "Response Interval of Querier"; } - // Grouph Priority - // Type is an MO-Defined-Type - leaf prio { - description "Group Priority"; + // Robustness factor + leaf robustFac { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_RobustFactor; + description "Robustness Factor"; } - // forwarding lower threshold - // Type is an MO-Defined-Type - leaf fwdLwrThrld { - description "Fowarding Lower Threshold"; + // Startup query interval + leaf startQueryIntvl { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // forwarding upper threshold - // Type is an MO-Defined-Type - leaf fwdUprThrld { - description "Forwarding Upper Threshold"; + // Startup query count + leaf startQueryCnt { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_QueryCnt; + description "Startup Query Count"; } - // HSRP master name for the group - // Type is an MO-Defined-Type - leaf name { - description "Master name string"; + // Querier timeout + leaf querierTimeout { - // Type is an MO-Defined-Type - type hsrp_GrpName; + type mcast_QuerierTimeout; + description "Querier Timeout"; } - // HSRP Slave/follow config the group - // Type is an MO-Defined-Type - leaf follow { - description "Master name string to follow"; + // Last member query count + leaf lastMbrCnt { - // Type is an MO-Defined-Type - type hsrp_GrpName; + type mcast_LastMbrQueryCnt; + description "Last Member Query Count"; } - // HSRP authentication type for the group - // Type is an MO-Defined-Type - leaf type { - description "Authentication Type for the group"; + // Last member response time + leaf lastMbrRespTime { - // Type is an MO-Defined-Type - type hsrp_AuthT; + type mcast_LastMbrRespTime; + description "Last Member Response Time"; } + } - // HSRP authentication key for the group - // Type is an MO-Defined-Type - leaf key { - description "Authentication key for the group"; + grouping mld_SsmXlate-group { + description "Holds Source Specific Multicast (SSM) translation information"; - // Type is an MO-Defined-Type - type hsrp_AuthKey; + // Group IP Prefix address + leaf grpPfx { + + type mcast_GrpIp; + description "Address"; } - leaf mac { - type address_Mac; + leaf srcAddr { + type address_Ip; + description "Address"; } + } - // Class for HSRP secondary vips - container addr-items { - list Addr-list { - key "ip"; + grouping mld_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Added containment: Prefix=addr - // Acquired From Package hsrp - uses hsrp_Addr-group; - } + leaf type { + + type mld_EhType; + description "Configures type of event history"; } - } - grouping hsrp_Addr-group { - leaf ip { - type address_Ip; + leaf size { + + type mld_Size; + description "Configures buffer size in text per kb"; } } - grouping icmpv4_Entity-group { + grouping mldsnoop_Entity-group { + description "Holds MLD Snooping Entity Information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per icmpv4 instance information. There is - // only one instance of icmpv4 running in the system today + // This objects hold per mld instance information. There is only + // one instance of mld running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package icmpv4 - uses icmpv4_Inst-group; + uses mldsnoop_Inst-group; + description "Holds MLD Snooping Instance information"; } } - grouping icmpv4_Inst-group { + grouping mldsnoop_Inst-group { + description "Holds MLD Snooping Instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // This objects hold per icmpv4 layer3 domain (vrf) - // information + // All router multicast group address (GIPo), outer multicast + // encapsulation ip address + leaf allRtrMcastEncap { + config "false"; + + type mcast_GrpIp; + description "All Router Multicast Encapsulation"; + } + + // Flags + leaf flags { + config "false"; + + type ipmcsnoop_InstFlags; + description "Flags"; + } + + // This objects hold per mld domain information container dom-items { - list Dom-list { - key "name"; - // Added containment: Prefix=dom - // Acquired From Package icmpv4 - uses icmpv4_Dom-group; - } + uses mldsnoop_Dom-group; + description "Holds MLD Snooping Domain information"; + } + + // This objects hold per Instance statistics operational + // information. This is a singleton within Instance + container inststats-items { + + uses mldsnoop_InstStats-group; + description "Instance Statistics"; } } - grouping icmpv4_Dom-group { + grouping mldsnoop_Dom-group { + description "Holds MLD Snooping Domain information"; + leaf operCfgRecovery { + config "false"; + type boolean; + description "Running configuration recovery"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "IP Multicast snooping domain name"; } - // This object holds icmp information that is operated at a - // interface level - container if-items { - list If-list { + // Id for this domain @@@ This comes from the domain id assigned by the + // PE for the bridge domain + leaf id { + config "false"; + + type l2_DomId; + description "Operational domain identifier"; + } + leaf encap { + type string; + description "L2 Domain Fabric Encapsulation"; + } + + // Admin State + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Administrative State"; + } + + // Controls + leaf ctrl { + + type ipmcsnoop_DomControl; + description "Controls for IP milticast domains"; + } + + // IGMP database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses mldsnoop_Db-group; + description "Database list"; + } + description "Database"; + } + + // This objects hold per mld domain statistics operational + // information. This is a singleton within a Dom + container domstats-items { + + uses mldsnoop_DomStats-group; + description "Domain Statistics"; + } + + // Multicast router if that is configured statically + container strtrif-items { + list StRtrIf-list { + config "false"; key "id"; - // Added containment: Prefix=if - // Acquired From Package icmpv4 - uses icmpv4_If-group; + uses mldsnoop_StRtrIf-group; + description "MLD Static Router Interface list"; } + description "MLD Static Router Interface"; } - } - grouping icmpv4_If-group { + // Multicast router if @@@ Mulitcast router if in the BD. These can be either + // configured by the admin or discovered through protocols + // like PIM, IGMP, MLD + container rtrif-items { + list RtrIf-list { + config "false"; + key "id"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses mldsnoop_RtrIf-group; + description "Router Interface list"; + } + description "Router Interface"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // This objects is the parent for vlan config mode params + container vlan-items { + list Vlan-list { + key "vlanid"; + + uses mldsnoop_Vlan-group; + description "Holds MLD snooping vlan configurations list"; } + description "Holds MLD snooping vlan configurations"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses mldsnoop_Intf-group; + description "Holds MLD snooping Interface configurations list"; + } + description "Holds MLD snooping Interface configurations"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // This objects holds configurable params in + // bridge domain config mode + container bd-items { + list BD-list { + key "bdid"; - // Type is an MO-Defined-Type - type nw_IfId; + uses mldsnoop_BD-group; + description "Holds MLD Snooping Bridge Domain Configurations list"; + } + description "Holds MLD Snooping Bridge Domain Configurations"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This objects holds configurable params in global config mode + container gl-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses mldsnoop_Gl-group; + description "Holds MLD Snooping Configurations in Global Configuration Mode"; } + } - // Interface controls - // Inherited From icmp:If - // Modified by Override: icmpv4:If->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + grouping mldsnoop_Db-group { + description "Database"; - // Type is a Local-MO-Defined-Type - type icmp_IfControl_If_ctrl; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - container rtvrfMbr-items { + // Type of the repository + leaf type { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type ipmcsnoop_DbT; + description "Database Type identifying the oper data to display"; + } + leaf totalMacCount { + config "false"; + type uint32; + description "Total mac count"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Multicast Group records + container mcgrp-items { + list McGrpRec-list { config "false"; - key "tDn"; + key "addr"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses mldsnoop_McGrpRec-group; + description "Multicast Group Record list"; } + description "Multicast Group Record"; } } - grouping icmpv6_Entity-group { + grouping mldsnoop_McGrpRec-group { + description "Multicast Group Record"; + + leaf mldVersion { + config "false"; + + type mld_Ver; + description "Mld snooping version"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Group address + leaf addr { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_GrpIp; + description "Multicast Group Address"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // EPG entries in mcast group record + container epg-items { + list EpgRec-list { + config "false"; + key "fabEncap"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses mldsnoop_EpgRec-group; + description "Endpoint Group Record list"; + } + description "Endpoint Group Record"; } - // This objects hold per icmpv6 instance information. There is - // only one instance of icmpv6 running in the system today - container inst-items { + // MLD report record snooped by mld-snoop application + container rep-items { + list ReportRec-list { + config "false"; + key "mcastSrc mldVersion"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package icmpv6 - uses icmpv6_Inst-group; + uses mldsnoop_ReportRec-group; + description "Report Record list"; + } + description "Report Record"; } } - grouping icmpv6_Inst-group { + grouping mldsnoop_EpgRec-group { + description "Endpoint Group Record"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type icmpv6_OperSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf fabEncap { + config "false"; + type string; + description "Fabric Encapsulation"; } - // Adjacency stale timer - // Type is an MO-Defined-Type - leaf adjStaleTimer { - description "Adjacency stale timer"; + // Epg id, identified using the circuit endpoint + // id in the system + leaf id { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_AdjStaleTimer; + type l2_DomId; + description "Endpoint Group ID"; } - // Adjacency stale timer with icmp option - // Type is an MO-Defined-Type - leaf adjStaleTimerIcmp { - description "Ipv6 adjacency stale timer with ICMP option"; + // MLD report record snooped by mld-snoop application + container rep-items { + list ReportRec-list { + config "false"; + key "mcastSrc mldVersion"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mldsnoop_ReportRec-group; + description "Report Record list"; + } + description "Report Record"; } + } - // ICMPv6 Logging Level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging Level"; + grouping mldsnoop_ReportRec-group { + description "Report Record"; + + leaf mldVersion { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_LoggingLevel; + type mld_Ver; + description "Mld snooping version"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Multicast traffic source + leaf mcastSrc { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_McastSrc; + description "Multicast Source Address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Filter mode + leaf filtMode { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type mcast_FiltMode; + description "Filter Mode"; } - // This object holds icmpv6 information that is operated at a - // interface level - container if-items { - list If-list { + // Filter mode + leaf flags { + config "false"; + + type ipmcsnoop_RepFlags; + description "Flags"; + } + + // OIF list (outgoing interface list) + container oif-items { + list OIFRec-list { + config "false"; key "id"; - // Added containment: Prefix=if - // Acquired From Package icmpv6 - uses icmpv6_If-group; + uses mldsnoop_OIFRec-group; + description "OIF Record list"; } + description "OIF Record"; } - container logs-items { - list ICMPv6EventLogs-list { - key "eventType"; + } + + grouping mldsnoop_OIFRec-group { + description "OIF Record"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Multicast traffic source + leaf id { + config "false"; - // Added containment: Prefix=logs - // Acquired From Package icmpv6 - uses icmpv6_ICMPv6EventLogs-group; - } + type nw_IfId; + description "ID"; } - // Interface statistics icmpv6 common packet counters (global and per-i/f) - container ifstats-items { + // Host Record List (Used for Explicit Host Tracking) + container host-items { + list HostRec-list { + config "false"; + key "addr"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package icmpv6 - uses icmpv6_IfStats-group; + uses mldsnoop_HostRec-group; + description "Host Record list"; + } + description "Host Record"; } } - grouping icmpv6_If-group { + grouping mldsnoop_HostRec-group { + description "Host Record"; - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_IfControl; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf addr { + config "false"; + type address_Ip; + description "Host Address"; } + } + + grouping mldsnoop_DomStats-group { + description "Domain Statistics"; + } + + grouping mldsnoop_StRtrIf-group { + description "MLD Static Router Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; + config "false"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; + config "false"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } - - // Interface statistics icmpv6 common packet counters (global and per-i/f) - container ifstats-items { - - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package icmpv6 - uses icmpv6_IfStats-group; + leaf encap { + config "false"; + type string; + description "Enable Encapsulation when flooding packets"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } - grouping icmpv6_IfStats-group { + grouping mldsnoop_RtrIf-group { + description "Router Interface"; - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { + // Identifier for the if + leaf id { config "false"; - description "Total messages sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Router interface identifier"; } + } - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { - config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; - } + grouping mldsnoop_Vlan-group { + description "Holds MLD snooping vlan configurations"; - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { - config "false"; - description "Error messages sent"; + leaf vlanid { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Vlan ID for MLD Snooping Configuration"; } - - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { - config "false"; - description "Error messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf rprtFldAllIntf { + type boolean; + description "Enable Report-Flood on all Active Interfaces of VLAN"; } - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { - config "false"; - description "Interface Down Drop Count sent"; + leaf mldSnoop { - // Type is an MO-Defined-Type - type nw_Counter64; + type mldsnoop_MldSnoopVlan; + description "Enable/Disable MLD Snooping per Vlan"; } - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { - config "false"; - description "Interface Down Drop Count received"; + // Circuit endpoint representing EPG + container cktep-items { + list CktEp-list { + key "encap"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_CktEp-group; + description "Represents Endpoint Encapsulation for a circuit list"; + } + description "Represents Endpoint Encapsulation for a circuit"; } - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { - config "false"; - description "Adjacency not recovered from AM after HA"; + // Multicast Snoop Configured statically + container mcgrp-items { + list StMcGrp-list { + key "addr"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_StMcGrp-group; + description "Holds Static IP Multicast Group Information list"; + } + description "Holds Static IP Multicast Group Information"; } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { - config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_Intf-group; + description "Holds MLD snooping Interface configurations list"; + } + description "Holds MLD snooping Interface configurations"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { - config "false"; - description "Pkts dropped as source mac addr is own"; + container mldsnbase-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MldsnBase-group; + description "Holds MLD Snooping Parameters for all Configuration Modes"; } - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { - config "false"; - description "Pkts dropped as tgt ip addr is not own"; + // This objects holds MLD snooping timers for vlan + container gtimers-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_GTimers-group; + description "Holds Global MLD Snooping Timers"; } - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { - config "false"; - description "Pkts dropped as src ip addr is not own"; + // This objects holds multicast mac address table params + container mactable-items { + list MacTable-list { + key "macAddress"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MacTable-group; + description "Holds MLD Snooping Mac-Address Table Configurations list"; + } + description "Holds MLD Snooping Mac-Address Table Configurations"; } - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { - config "false"; - description "Destination Unreachables sent"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MRouter-group; + description "Holds MLD Snooping Static Multicast Router Configurations"; } - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { - config "false"; - description "Destination Unreachables received"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_Proxy-group; + description "Holds MLD Snooping Proxy Configurations"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { - config "false"; - description "Administratively Prohibited sent"; + // Querier policy + container querierp-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_QuerierP-group; + description "Holds MLD Snooping Querier Policy Configurations"; } - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { - config "false"; - description "Administratively Prohibited received"; + // Route control policy for mld multicast snoop. + container actrl-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_ACtrl-group; + description "Holds MLD Snooping Access Control Policy Configurations"; } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + // Report policy for mld multicast snoop + container rpolicy-items { + list RPolicy-list { + key "rtMap"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_RPolicy-group; + description "Holds MLD Snooping Report Policy Configurations list"; + } + description "Holds MLD Snooping Report Policy Configurations"; } + } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_CktEp-group { + description "Represents Endpoint Encapsulation for a circuit"; + leaf encap { + type string; + description "Fabric Encapsulation"; } + } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { - config "false"; - description "Parameter Problems sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; - } + grouping mldsnoop_StMcGrp-group { + description "Holds Static IP Multicast Group Information"; - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { - config "false"; - description "Parameter Problems received"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // Multicast group address + leaf addr { - // Type is an MO-Defined-Type - type nw_Counter64; + type mcast_GrpIp; + description "Multicast Group IP Address"; } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; + // IPMC Source IP + container src-items { + list McSrc-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_McSrc-group; + description "Holds MLD Snooping Source Specific Information list"; + } + description "Holds MLD Snooping Source Specific Information"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + grouping mldsnoop_McSrc-group { + description "Holds MLD Snooping Source Specific Information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Multicast traffic source + leaf id { + + type ipmcsnoop_McastSrc; + description "Multicast Source IP Address"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { - config "false"; - description "Redirects sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { - config "false"; - description "Redirects received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_TgtIf-group { + description "Holds Outgoing Interface Information"; + leaf vsi { + type boolean; + description "Specifies if this interface is VSI"; + } + leaf accGrp { + type boolean; + description "Specifies if this interface is Access group"; + } + leaf pfxList { + type boolean; + description "Specifies prefix list route map for this interface"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Target interface Id + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Multicast Source IP Address"; } + } - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + grouping mldsnoop_Intf-group { + description "Holds MLD snooping Interface configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { - config "false"; - description "Router Advertisements sent"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr1024; + description "Description"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { - config "false"; - description "Router Solicitations sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfAdminSt; + description "Admin State"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { - config "false"; - description "Router Solicitations received"; + leaf rtrGrdVlanId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_RtrGrdVlanIdT; + description "Router-Guard Vlan Identifier"; + } + leaf rtrGrdEnable { + type boolean; + description "Indicates if Router-Guard is Enabled on the Interface"; + } + leaf reportFlood { + type boolean; + description "Indicates if Report Flood is Enabled on the Interface"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + grouping mldsnoop_MldsnBase-group { + description "Holds MLD Snooping Parameters for all Configuration Modes"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf v2ReportSuppr { + + type mldsnoop_V2ReportSuppr; + description "MLDv2 Report Suppression and Proxy Reporting"; } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + leaf llGrpSuppr { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_LlGrpSuppr; + description "Link Local Group Suppression"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + leaf reportSuppr { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_ReportSuppr; + description "IGMPv1/v2 report Suppression for VLAN"; } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + leaf expTracking { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_ExpTracking; + description "Configures Explicit Host for a VLAN"; } + } - // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpthRcvd { - config "false"; - description "Fastpath Packets"; + grouping mldsnoop_GTimers-group { + description "Holds Global MLD Snooping Timers"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf fastLeave { + + type ipmcsnoop_FastLeave; + description "Indicates if Fastleave is Enabled"; } - // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathDsbleIgnRcvd { - config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; + // Group timeout + // Default value handled in local MO type + leaf grpTimeout { - // Type is an MO-Defined-Type - type nw_Counter64; + // Type is a Local-MO-Defined-Type + type mcast_GrpTimeout_GTimers_grpTimeout { + range "0..10081"; + } + description "Group Membership Timeout"; } - // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathOtherIgnRcvd { - config "false"; - description "Ignored fastpath packets - others"; + leaf maxGqMiss { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_MaxGqMiss; + description "Maximum General Query Miss Count"; } + leaf useGrpAddr { + type boolean; + description "Use Group IP Address for Proxy-Leave"; + } + } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesSent { - config "false"; - description "V1 queries sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_MacTable-group { + description "Holds MLD Snooping Mac-Address Table Configurations"; + leaf macAddress { + type address_Mac; + description "Specify MAC Address for a VLAN/BD"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesRecv { - config "false"; - description "V1 queries received"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesSent { - config "false"; - description "V2 queries sent"; + uses mldsnoop_MIf-group; + description "Holds MLD Snooping Multicast Router's Interface Configurations list"; + } + description "Holds MLD Snooping Multicast Router's Interface Configurations"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_MIf-group { + description "Holds MLD Snooping Multicast Router's Interface Configurations"; + leaf intf { + type string; + description "Interface for Static-Mrouter"; + } + leaf vsi { + type boolean; + description "Specify Interface is VSI"; } + } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesRecv { - config "false"; - description "V2 queries received"; + grouping mldsnoop_MRouter-group { + description "Holds MLD Snooping Static Multicast Router Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Global property + leaf vpcPeerLink { + + type ipmcsnoop_Vpc; + description "Specify vpc-peer-link as Static Mrouter for all VLAN/BD"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsSent { - config "false"; - description "V1 reports sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsRecv { - config "false"; - description "V1 reports received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MIf-group; + description "Holds MLD Snooping Multicast Router's Interface Configurations list"; + } + description "Holds MLD Snooping Multicast Router's Interface Configurations"; } + } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsSent { - config "false"; - description "V2 reports sent"; + grouping mldsnoop_Proxy-group { + description "Holds MLD Snooping Proxy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf maxRespTime { + + type ipmcsnoop_Mrt; + description "Configures MRT for Switch's Proxy General-Queries"; } + } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsRecv { - config "false"; - description "V2 reports received"; + grouping mldsnoop_QuerierP-group { + description "Holds MLD Snooping Querier Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf mldsnVer { + + type mldsnoop_Ver; + description "MLD snooping version"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesSent { - config "false"; - description "V1 leaves sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesRecv { - config "false"; - description "V1 leaves received"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping icmpv6_ICMPv6EventLogs-group { - // Type of Event - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type icmpv6_EventType; + type mcast_QuerierIp; + description "Address"; } - // Type of Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type icmpv6_EventLogSize; + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping igmpsnoop_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Query response interval + leaf rspIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type mcast_QueryRspIntvl { + range "1..25"; } + description "Response Interval of Querier"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Robustness factor + leaf robustFac { - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_RobustFactor; + description "Robustness Factor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Startup query interval + leaf startQueryIntvl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Startup query count + leaf startQueryCnt { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type mcast_QueryCnt; + description "Startup Query Count"; } - // This objects hold per igmp instance information. There is only - // one instance of igmp running in the system today - container inst-items { + // Last member query interval + leaf lastMbrIntvl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package igmpsnoop - uses igmpsnoop_Inst-group; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; + } + + // Querier timeout + leaf timeout { + + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } } - grouping igmpsnoop_Inst-group { + grouping mldsnoop_ACtrl-group { + description "Holds MLD Snooping Access Control Policy Configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtctrl_RtCtrlDir; + description "Direction"; } - - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + leaf rtMap { + type string; + description "Route Map"; } - // All router multicast group address (GIPo), outer multicast - // encapsulation ip address - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf allRtrMcastEncap { - config "false"; - description "All Router Multicast Encapsulation"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Flags - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type ipmcsnoop_InstFlags; - } + grouping mldsnoop_RPolicy-group { + description "Holds MLD Snooping Report Policy Configurations"; - // This objects hold per igmp domain information - container dom-items { + // Route map name to control the distribution + leaf rtMap { - // Added containment as a singleton: Prefix=dom - // Acquired From Package igmpsnoop - uses igmpsnoop_Dom-group; + type mldsnoop_RtMapType; + description "Route Map Name to control the distribution"; } - // This objects hold per Instance statistics operational - // information. This is a singleton within Instance - container inststats-items { + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Added containment as a singleton: Prefix=inststats - // Acquired From Package igmpsnoop - uses igmpsnoop_InstStats-group; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } } - grouping igmpsnoop_Dom-group { - leaf operCfgRecovery { - config "false"; - type boolean; + grouping mldsnoop_BD-group { + description "Holds MLD Snooping Bridge Domain Configurations"; + + leaf bdid { + + type nw_IfId; + description "Bridge Domain Identifier"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ipmcsnoop:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping mldsnoop_Gl-group { + description "Holds MLD Snooping Configurations in Global Configuration Mode"; + container eventhist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mldsnoop_EventHistory-group; + description "Holds MLD Snooping Event-History Buffer Configurations list"; } + description "Holds MLD Snooping Event-History Buffer Configurations"; } - // Id for this domain @@@ This comes from the domain id assigned by the - // PE for the bridge domain - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + container rtrgrd-items { - // Type is an MO-Defined-Type - type l2_DomId; - } - leaf encap { - type string; + uses mldsnoop_RtrGrd-group; + description "Holds Router Guard Configuration for all switchports or specific vlan"; } - // Admin State - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container mldsnbase-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mldsnoop_MldsnBase-group; + description "Holds MLD Snooping Parameters for all Configuration Modes"; } - // Controls - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This objects holds traffic related snooping params + container mctraf-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; + uses mldsnoop_McTraf-group; + description "Holds MLD Snooping Multicast Traffic Configurations"; } - // Flags - // Inherited From ipmcsnoop:Dom - // Modified by Override: igmpsnoop:Dom->flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // This objects holds MLD snooping timers for vlan + container gtimers-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + uses mldsnoop_GTimers-group; + description "Holds Global MLD Snooping Timers"; } - // Forwarding mode - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf fwdMode { - config "false"; - description "Fowarding Mode"; + // This objects holds vlan specific MLD snooping params + container gvlan-items { - // Type is an MO-Defined-Type - type ipmcsnoop_FwdMode; + uses mldsnoop_GVlan-group; + description "Holds MLD Snooping Vlan Specific Configurations"; } - // Number of router interfaces - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numRtrIf { - config "false"; - description "Router Interfaces"; + // This Object holds global debug + container gdebug-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mldsnoop_GDebug-group; + description "Holds MLD Snooping Debugs Enabling Configuration"; } - // Number of multicast groups - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numMcGrp { - config "false"; - description "Multicast Groups"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mldsnoop_MRouter-group; + description "Holds MLD Snooping Static Multicast Router Configurations"; } - // Number of Source groups - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numSrcGrp { - config "false"; - description "Multicast Groups"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter32; - } - leaf grpFlushTs { - config "false"; - type string; - } - leaf nextQueryTs { - config "false"; - type string; - } - leaf nextQueryExpTs { - config "false"; - type string; + uses mldsnoop_Proxy-group; + description "Holds MLD Snooping Proxy Configurations"; } + } - // Mrtr Epg Id used when sending packets to mrtr port - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf mrtrEpgId { - config "false"; - description "Mrouter Endpoint Group ID"; + grouping mldsnoop_EventHistory-group { + description "Holds MLD Snooping Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type l2_DomId; + leaf type { + + type mldsnoop_EhType; + description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; } - // IGMP database - container db-items { - list Db-list { - config "false"; - key "type"; + leaf size { - // Added containment: Prefix=db - // Acquired From Package igmpsnoop - uses igmpsnoop_Db-group; - } + type mldsnoop_Size; + description "configures buffer size in text/kb"; } + } - // This objects hold per igmp domain statistics operational - // information. This is a singleton within a Dom - container domstats-items { - - // Added containment as a singleton: Prefix=domstats - // Acquired From Package igmpsnoop - uses igmpsnoop_DomStats-group; + grouping mldsnoop_RtrGrd-group { + description "Holds Router Guard Configuration for all switchports or specific vlan"; + leaf state { + type boolean; + description "Configures Router Guard for Multicast packets on all switchports"; } + } - // Multicast router if that is configured statically - container strtrif-items { - list StRtrIf-list { - config "false"; - key "id"; + grouping mldsnoop_McTraf-group { + description "Holds MLD Snooping Multicast Traffic Configurations"; - // Added containment: Prefix=strtrif - // Acquired From Package igmpsnoop - uses igmpsnoop_StRtrIf-group; - } + leaf holddownTimer { + + type mcast_HolddownTimer; + description "Configures Initial Holddown Period After Switchover/Restart"; } - // Multicast router if @@@ Mulitcast router if in the BD. These can be either - // configured by the admin or discovered through protocols - // like PIM, IGMP. - container rtrif-items { - list RtrIf-list { - config "false"; - key "id"; + leaf ccMode { - // Added containment: Prefix=rtrif - // Acquired From Package igmpsnoop - uses igmpsnoop_RtrIf-group; - } + type ipmcsnoop_CcMode; + description "Enter MFDM Congestion Control Mode"; } + } - // This objects is the parent for vlan config mode params - container vlan-items { - list Vlan-list { - key "vlanid"; + grouping mldsnoop_GVlan-group { + description "Holds MLD Snooping Vlan Specific Configurations"; - // Added containment: Prefix=vlan - // Acquired From Package igmpsnoop - uses igmpsnoop_Vlan-group; - } + leaf mldSnoop { + + type mldsnoop_MldSnoopGl; + description "Enable/Disable MLD Snooping globally"; } - // This objects holds configurable params in bridge domain config mode - container bd-items { - list BD-list { - key "bdid"; + leaf disableNveStRtrPort { - // Added containment: Prefix=bd - // Acquired From Package igmpsnoop - uses igmpsnoop_BD-group; - } + type ipmcsnoop_DisableNveStRtrPort; + description "Disable NVE Static Router Port"; } - // This objects holds configurable params in global config mode - container gl-items { + leaf vxlanUmcDropVlan { - // Added containment as a singleton: Prefix=gl - // Acquired From Package igmpsnoop - uses igmpsnoop_Gl-group; + type ipmcsnoop_VxlanVlanRange; + description "Drop Unknown Multicast Traffic on Vlan(s)"; } } - grouping igmpsnoop_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + grouping mldsnoop_GDebug-group { + description "Holds MLD Snooping Debugs Enabling Configuration"; - // Type of the repository - // Inherited From ipmcsnoop:Db - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Database Type"; + leaf syslogThreshold { - // Type is an MO-Defined-Type - type ipmcsnoop_DbT; - } - leaf totalMacCount { - config "false"; - type uint32; + type ipmcsnoop_SyslogThrshold; + description "IGMP Snooping Syslog Threshold Percentage"; } + } - // igmpsnoop global records - container gsnoop-items { + grouping mldsnoop_InstStats-group { + description "Instance Statistics"; + } - // Added containment as a singleton: Prefix=gsnoop - // Acquired From Package igmpsnoop - uses igmpsnoop_GSnoopRec-group; - } + grouping mplsldp_LDP-group { + description "MPLS LDP Entity, anchoring all LDP specific MOs"; - // igmpsnoop Vlan records - container vsnoop-items { - list VSnoopRec-list { - config "false"; - key "vlanid"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=vsnoop - // Acquired From Package igmpsnoop - uses igmpsnoop_VSnoopRec-group; - } + type nw_AdminSt; + description "Admin State"; } - // Vlan record - container vlanrec-items { - list VlanRec-list { - config "false"; - key "vlanid"; + // Platform wide LDP state + container ldpbindings-items { - // Added containment: Prefix=vlanrec - // Acquired From Package igmpsnoop - uses igmpsnoop_VlanRec-group; - } + uses mplsldp_LdpBindings-group; + description "Global LDP binding state"; } - // Mrouter record - container mrouter-items { - list MRouterRec-list { - config "false"; - key "vlanid interface"; + // Neibgbor discovery operational state + container discovery_state-items { - // Added containment: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouterRec-group; - } + uses mplsldp_DiscoveryState-group; + description "Neibgbor discovery operational state"; } - // Explicit Tracking record - container expTrack-items { - list ExpTrackRec-list { - config "false"; - key "vlanid grpAddr srcAddr intf"; + // Platform wide LDP state + container global-items { - // Added containment: Prefix=expTrack - // Acquired From Package igmpsnoop - uses igmpsnoop_ExpTrackRec-group; - } + uses mplsldp_Global-group; + description "Platform wide LDP configuration and state"; } - // Vlan statistics MO - container vstats-items { - list VlanStatsRec-list { - config "false"; - key "vlanid"; + // Contains LDP IGP synchronization information + container igp_sync-items { - // Added containment: Prefix=vstats - // Acquired From Package igmpsnoop - uses igmpsnoop_VlanStatsRec-group; - } + uses mplsldp_IgpSync-group; + description "IGP Synchronization Information"; } - container gstats-items { + // LDP Label Advertisements + container advlbl-items { - // Added containment as a singleton: Prefix=gstats - // Acquired From Package igmpsnoop - uses igmpsnoop_GStatsRec-group; + uses mplsldp_AdvLbl-group; + description "Control if labels are advertised. When this MO exists, labels are advertised (the default). When this MO does not exist, no labels will be advertised to neighbors."; } - // Report policy MO - container policy-items { - list ReportPolicyStats-list { - config "false"; - key "vlanid qcount"; + // LDP Label Advertisements for prefix list + container advlblpfx-items { + list AdvLblPfx-list { + key "pfxList"; - // Added containment: Prefix=policy - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportPolicyStats-group; + uses mplsldp_AdvLblPfx-group; + description "Advertises local labels for some destination prefixes list"; } + description "Advertises local labels for some destination prefixes"; } - // Group MO - container group-items { - list IgmpsnGroupRec-list { - config "false"; - key "vlanid groupaddr sourceaddr ifname"; + // LDP Label Advertisements interface + container advlblintf-items { + list AdvLblIntf-list { + key "interface"; - // Added containment: Prefix=group - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnGroupRec-group; + uses mplsldp_AdvLblIntf-group; + description "Advertises local labels for a particular interface list"; } + description "Advertises local labels for a particular interface"; } - // Multicast Group records - container mcgrp-items { - list McGrpRec-list { - config "false"; - key "addr"; + // LDP Session backoff parameters + container backoffparams-items { - // Added containment: Prefix=mcgrp - // Acquired From Package igmpsnoop - uses igmpsnoop_McGrpRec-group; - } + uses mplsldp_BackoffParams-group; + description "LDP Session backoff parameters"; } - // Multicast Group records - container querier-items { - list QuerierRec-list { - config "false"; - key "vlanid"; + // LDP Discovery + container discovery-items { - // Added containment: Prefix=querier - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierRec-group; - } + uses mplsldp_Discovery-group; + description "Anchors configuration related to LDP neighbor discovery"; } - } - - grouping igmpsnoop_GSnoopRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // LDP Explicit Null + container explicitnull-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf snooping { - config "false"; - type boolean; - } - leaf omf { - config "false"; - type boolean; - } - leaf grepsup { - config "false"; - type boolean; - } - leaf gv3repsup { - config "false"; - type boolean; - } - leaf glinklocalgrpsup { - config "false"; - type boolean; - } - leaf groupTimeout { - config "false"; - type uint32; - } - leaf proxyGeneralQuery { - config "false"; - type boolean; - } - leaf gmaxResponseTime { - config "false"; - type uint32; + uses mplsldp_ExplicitNull-group; + description "LDP Explicit Null advertises an explicit-null label in situations where an implicit-null label would normally be advertised"; } - } - - grouping igmpsnoop_VSnoopRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // LDP Explicit Null for prefix list + container explnullforlist-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf lkpmode { - config "false"; - type string; - } - leaf snoopOn { - config "false"; - type boolean; - } - leaf repsup { - config "false"; - type boolean; - } - leaf v3repsup { - config "false"; - type boolean; - } - leaf vlinklocalgrpsup { - config "false"; - type boolean; - } - leaf omf_enabled { - config "false"; - type boolean; + uses mplsldp_ExplNullForList-group; + description "Controls which label bindings will be advertised as explicit-null rather than inplicit-null"; } - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Explicit Null to access list + container explnulltolist-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_ExplNullToList-group; + description "Controls to which neighbors label bindings will be advertised as explicit-null rather than implicit-null"; } - // Last member query interval - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + // LDP Graceful restart + container gr-items { - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + uses mplsldp_Gr-group; + description "LDP Graceful restart parameters"; } - // Querier version - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // LDP session holdtime + container holdtime-items { - // Type is an MO-Defined-Type - type mcast_Ver; + uses mplsldp_HoldTime-group; + description "LDP session holdtime parameters"; } - // Querier IP address - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; + // LDP logging neighbor, password, rollover changes + container logging-items { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + uses mplsldp_Logging-group; + description "LDP logging parameters"; } - // Query interval - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf queryIntvl { - config "false"; - description "Query Interval"; + // LDP default route + container defaultroute-items { - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + uses mplsldp_DefaultRoute-group; + description "Allow MPLS forwarding for ip default route"; } - // Robustness factor - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; + // LDP neighbor Parameters + container neighbor-items { + list Neighbor-list { + key "nbrAddr"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; - } - leaf routePortcnt { - config "false"; - type uint32; - } - leaf groupcnt { - config "false"; - type uint32; - } - leaf vpcFunction { - config "false"; - type boolean; - } - leaf fastleave { - config "false"; - type boolean; + uses mplsldp_Neighbor-group; + description "LDP neighbor parameters class list"; + } + description "LDP neighbor parameters class"; } - } - - grouping igmpsnoop_VlanRec-group { - // Inherited From ipmcsnoop:AVlanRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Password + container password-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf macCount { - config "false"; - type uint32; + uses mplsldp_Password-group; + description "Anchors configuration related to LDP password parameters"; } - // MAC record - container mac-items { - list MacRec-list { - config "false"; - key "macAddress"; + // LDP router id + container routerid-items { - // Added containment: Prefix=mac - // Acquired From Package igmpsnoop - uses igmpsnoop_MacRec-group; - } + uses mplsldp_RouterId-group; + description "LDP router id class"; } - } - grouping igmpsnoop_MacRec-group { - leaf macAddress { - config "false"; - type address_Mac; + // LDP session protection + container sessprot-items { + + uses mplsldp_SessProt-group; + description "Enables LDP sessions to be protected during a link failure. It protects all LDP sessions, unless you specify a prefix list"; } - // Inherited From ipmcsnoop:AMacRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type of MAC address"; + // LDP label allocate global + container labelallocate-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MacType; - } - leaf age { - config "false"; - type uint32; + uses mplsldp_LabelAllocate-group; + description "Configures local label allocation filters for MPLS LDP"; } - // MAC-OIF record - container oif-items { - list MacOifRec-list { + // Peers operational state + container peers-items { + list Peers-list { config "false"; - key "oif"; + key "peerLsrId"; - // Added containment: Prefix=oif - // Acquired From Package igmpsnoop - uses igmpsnoop_MacOifRec-group; + uses mplsldp_Peers-group; + description "Peers operational state list"; } + description "Peers operational state"; } - } - - grouping igmpsnoop_MacOifRec-group { - // Inherited From ipmcsnoop:AMacOif - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "Outgoing interface for a MAC address"; + // This object holds MPLS LDP information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_If-group; + description "Object holds LDP information that is operated at interface level list"; + } + description "Object holds LDP information that is operated at interface level"; } } - grouping igmpsnoop_MRouterRec-group { + grouping mplsldp_LdpBindings-group { + description "Global LDP binding state"; - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Specify the type of mroute for a VLAN/BD"; + // Per address family operational state + container address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MrouteType; + uses mplsldp_BindingAddressFamilies-group; + description "Per address family operational state"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf interface { - config "false"; - description "Specify the interface port of mroute for a VLAN/BD"; + grouping mplsldp_BindingAddressFamilies-group { + description "Per address family operational state"; - // Type is an MO-Defined-Type - type nw_IfId; + // Containing data related to the IPv4 address family + container ipv4-items { + + uses mplsldp_BindingIpv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf uptime { - config "false"; - description "Specify the uptime of mroute for a VLAN/BD"; + grouping mplsldp_BindingIpv4-group { + description "Containing data related to the IPv4 address family"; + + // LDP address and label binding information + container bindings-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + uses mplsldp_BindingList-group; + description "LDP address and label binding information"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf expTime { + grouping mplsldp_BindingList-group { + description "LDP address and label binding information"; + + leaf localLabelFilteringSpecifications { config "false"; - description "Specify the expiry of mroute for a VLAN/BD"; - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + type mplsldp_LocalLabelFilteringSpecifications; + description "LDP Local Label Filtering Specifications"; } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Advertisement Specifications + container advertisement_specifications-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_BindingAdvertisementSpecifications-group; + description "LDP Advertisement Specifications"; } - } - grouping igmpsnoop_ExpTrackRec-group { + // List of address bindings learned by LDP + // Ephemeral data + container address-items { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Ephemeral data + list BindingAddress-list { + config "false"; + key "address"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mplsldp_BindingAddress-group; + description "List of address bindings learned by LDP list"; } + description "List of address bindings learned by LDP"; } + } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf vlanid { + grouping mplsldp_BindingAdvertisementSpecifications-group { + description "LDP Advertisement Specifications"; + leaf oldStyleAssignmentOfPrefixAcls { config "false"; - description "Vlan ID"; - - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + type boolean; + description "LDP Advertisement Specifications - Old Style Assignment of Prefix ACLs to Entries"; } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf intf { + leaf peerAcl { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Peer ACL"; } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf reporter { + leaf prefixAcl { config "false"; - description "Report IP"; - // Type is an MO-Defined-Type - type ipmcsnoop_Reporter; - } - leaf uptime { - config "false"; - type string; - } - leaf lastJoin { - config "false"; - type string; - } - leaf expires { - config "false"; - type string; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Prefix ACL"; } - leaf srcAddr { + } + + grouping mplsldp_BindingAddress-group { + description "List of address bindings learned by LDP"; + + // Ephemeral data + leaf address { config "false"; type address_Ip; + description "The IPv4 address learned from an Address message received from or advertised to a peer"; } - leaf grpAddr { + + // Ephemeral data + leaf localtag { config "false"; - type address_Ip; + + type mplsldp_LocalBindingTag; + description "The label value in the local binding"; } - leaf version { - config "false"; - type string; + + // List of LDP peers from which this address is received + // Ephemeral data + container peer-items { + + // Ephemeral data + list BindingPeer-list { + config "false"; + key "lsrId"; + + uses mplsldp_BindingPeer-group; + description "LDP peer from which this address is received list"; + } + description "LDP peer from which this address is received"; } - leaf numReports { - config "false"; - type uint32; + + // List of LDP peer to which this binding is advertised + // Ephemeral data + container advertisedtolist-items { + + // Ephemeral data + list BindingAdvertisedToList-list { + config "false"; + key "lsrId"; + + uses mplsldp_BindingAdvertisedToList-group; + description "LDP peer to which this address is advertised list"; + } + description "LDP peer to which this address is advertised"; } } - grouping igmpsnoop_VlanStatsRec-group { - leaf uptime { - config "false"; - type string; - } - leaf vpr { - config "false"; - type uint32; - } - leaf v1rr { - config "false"; - type uint32; - } - leaf v2rr { - config "false"; - type uint32; - } - leaf v3rr { - config "false"; - type uint32; - } - leaf v3qr { + grouping mplsldp_BindingPeer-group { + description "LDP peer from which this address is received"; + + // Ephemeral data + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf v2lr { + + // Ephemeral data + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf phr { + + // Ephemeral data + leaf remotetag { config "false"; - type uint32; + + type mplsldp_RemoteBindingTag; + description "The label value in the remote binding"; } - leaf irr { + } + + grouping mplsldp_BindingAdvertisedToList-group { + description "LDP peer to which this address is advertised"; + + // Ephemeral data + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf iqr { + + // Ephemeral data + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf v2ls { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryState-group { + description "Neibgbor discovery operational state"; + + // List of interfaces for LDP Basic Descovery + container interfaces-items { + list Interfaces-list { + config "false"; + key "ifIdString"; + + uses mplsldp_Interfaces-group; + description "List of interfaces for LDP Basic Discovery list"; + } + description "List of interfaces for LDP Basic Discovery"; } - leaf v3gs { - config "false"; - type uint32; + + // List of targeted neighbors for extended discovery + container targeted-items { + list Targeted-list { + config "false"; + key "name"; + + uses mplsldp_Targeted-group; + description "List of targeted neighbors for extended discovery list"; + } + description "List of targeted neighbors for extended discovery"; } - leaf vmr { + } + + grouping mplsldp_Interfaces-group { + description "List of interfaces for LDP Basic Discovery"; + + leaf ifId { config "false"; - type uint32; + + type nw_IfId; + description "Interface id used for LDP Basic Discovery"; } - leaf upr { + + leaf ifIdString { config "false"; - type uint32; + + type mplsldp_InterfaceString; + description "Interface id name used for LDP Basic Discovery"; } - leaf qo { + + leaf interfaceStatus { config "false"; - type uint32; + + type mplsldp_InterfaceStatus; + description "Discovery interface status"; } - leaf v2ro { + + leaf interfaceEnableStatus { config "false"; - type uint32; + + type mplsldp_InterfaceEnableStatus; + description "Discovery interface enable status"; } - leaf v2lo { + leaf nexthello { config "false"; type uint32; + description "The time when the next Hello message will be sent (s)"; } - leaf v3ro { + leaf helloInterval { config "false"; type uint32; + description "LDP adjacency hello interval (s)"; } - leaf vpsr { + leaf transportIpAddress { config "false"; - type uint32; + type address_Ip; + description "LDP adjacency transport IP address"; } - leaf str { + + leaf clients { config "false"; - type uint32; + + type mplsldp_IntfClients; + description "Hello adjacency clients"; } - leaf cps { - config "false"; - type uint32; + + // Per address family operational state + container discovery_address_families-items { + + uses mplsldp_DiscoveryAddressFamilies-group; + description "Per address family operational state"; } - leaf cpr { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container discovery_ipv4-items { + + uses mplsldp_DiscoveryIpv4-group; + description "Containing data related to the IPv4 address family"; } - leaf cpe { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryIpv4-group { + description "Containing data related to the IPv4 address family"; + + // Containing a list of hello adjacencies + container hello_adjacencies-items { + + uses mplsldp_HelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } - leaf mps { - config "false"; - type uint32; + } + + grouping mplsldp_HelloAdjacencies-group { + description "Containing a list of hello adjacencies"; + + // List of hello adjacencies + container hello_adjacency-items { + + uses mplsldp_HelloAdjacency-group; + description "List of hello adjacencies"; } - leaf mpr { + } + + grouping mplsldp_HelloAdjacency-group { + description "List of hello adjacencies"; + leaf adjacentaddress { config "false"; - type uint32; + type address_Ip; + description "Neighbor address of the hello adjacency"; } - leaf mpe { + leaf transportaddress { config "false"; - type uint32; + type address_Ip; + description "Transport address of the hello adjacency"; } - leaf v1qr { + leaf reachabilityaddress { config "false"; - type uint32; + type address_Ip; + description "Reachability address of the hello adjacency"; } - leaf v2qr { + leaf nexthello { config "false"; - type uint32; + type uint16; + description "The time when the next Hello message will be sent (s)"; } - leaf v1rs { + + leaf password { config "false"; - type uint32; + + type mplsldp_LdpPasswordStatus; + description "Hello adjacency password information"; } - leaf v2rs { - config "false"; - type uint32; + + // Containing hello holdtime state information + container hello_holdtime-items { + + uses mplsldp_HelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Inherited From ipmcsnoop:AVlanStats - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan id"; + // A container containing an absolute reference to an LDP peer + container ldp_peer-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_LdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } } - grouping igmpsnoop_GStatsRec-group { - leaf pr { - config "false"; - type uint32; - } - leaf invPkt { - config "false"; - type uint32; - } - leaf pnv { - config "false"; - type uint32; - } - leaf loopBkPkt { - config "false"; - type uint32; - } - leaf mrdLoopBk { + grouping mplsldp_HelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { config "false"; type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - leaf pf { + leaf negotiated { config "false"; type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - leaf vpcDrQs { + leaf holdtime { config "false"; type uint32; + description "The current holdtime for this LSR (s)"; } - leaf vpcDrQr { + leaf remaining { config "false"; type uint32; + description "The time remaining until the holdtime timer expires (s)"; } - leaf vpcDrQf { + } + + grouping mplsldp_LdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcDrUs { + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcDrUr { + } + + grouping mplsldp_Targeted-group { + description "List of targeted neighbors for extended discovery"; + + leaf name { config "false"; - type uint32; + + type mplsldp_TargetedHelloIdentifier; + description "The targeted hello entry identifier"; } - leaf vpcDrUf { + + leaf interfaceState { config "false"; - type uint32; + + type mplsldp_TargetedInterfaceState; + description "Targeted Hello State"; } - leaf vpcCfsSf { + + leaf transmissionState { config "false"; - type uint32; + + type mplsldp_InterfaceStatus; + description "Targeted Hello Transmission State"; } - leaf vpcCfsRs { + leaf helloInterval { config "false"; type uint32; + description "LDP adjacency hello interval (s)"; } - leaf vpcCfsRr { + leaf transportIpAddress { config "false"; - type uint32; + type address_Ip; + description "LDP adjacency transport IP address"; } - leaf vpcCfsRf { - config "false"; - type uint32; + + // Per address family operational state + container tgt_address_families-items { + + uses mplsldp_TargetedAddressFamilies-group; + description "Per address family operational state"; } - leaf vpcCfsRfp { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container targeted_ipv4-items { + + uses mplsldp_TargetedIpv4-group; + description "Containing data related to the IPv4 address family"; } - leaf vpcCfsUrls { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedIpv4-group { + description "Containing data related to the IPv4 address family"; + + // Containing a list of hello adjacencies + container targeted_hello_adjacencies-items { + + uses mplsldp_TargetedHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } - leaf vpcCfsUrR { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; + + // List of hello adjacencies + container targeted_hello_adjacency-items { + + uses mplsldp_TargetedHelloAdjacency-group; + description "List of hello adjacencies"; } - leaf vpcCfsCrlF { + } + + grouping mplsldp_TargetedHelloAdjacency-group { + description "List of hello adjacencies"; + leaf adjacentaddress { config "false"; - type uint32; + type address_Ip; + description "Neighbor address of the hello adjacency"; } - leaf vpccfsrls { + leaf transportaddress { config "false"; - type uint32; + type address_Ip; + description "Transport address of the hello adjacency"; } - leaf vpccfsrlr { + leaf reachabilityaddress { config "false"; - type uint32; + type address_Ip; + description "Reachability address of the hello adjacency"; } - leaf vpccfsrlf { + leaf nexthello { config "false"; - type uint32; + type uint16; + description "The time when the next Hello message will be sent (s)"; } - leaf invIod { + + leaf password { config "false"; - type uint32; + + type mplsldp_LdpPasswordStatus; + description "Hello adjacency password information"; } - leaf stptcnr { - config "false"; - type uint32; + + // Containing hello holdtime state information + container targeted_hello_holdtime-items { + + uses mplsldp_TargetedHelloHoldtime-group; + description "Containing hello holdtime state information"; } - leaf imapif { - config "false"; - type uint32; + + // A container containing an absolute reference to an LDP peer + container targeted_ldp_peer-items { + + uses mplsldp_TargetedLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } - leaf mfreqr { + } + + grouping mplsldp_TargetedHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { config "false"; type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - leaf mfcmps { + leaf negotiated { config "false"; type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - leaf mfdgcmps { + leaf holdtime { config "false"; type uint32; + description "The current holdtime for this LSR (s)"; } - leaf bufsnt { + leaf remaining { config "false"; type uint32; + description "The time remaining until the holdtime timer expires (s)"; } - leaf bufackr { + } + + grouping mplsldp_TargetedLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcmismatch { + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_ReportPolicyStats-group { + grouping mplsldp_Global-group { + description "Platform wide LDP configuration and state"; - // Inherited From ipmcsnoop:AIgmpsnReportPolicy - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan id "; + // Per address family operational state + container address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf rpmType { - config "false"; - type uint32; + uses mplsldp_AddressFamilies-group; + description "Per address family operational state"; } - leaf policyName { - config "false"; - type string; + + // Contains LDP backoff configuration information + container backoff-items { + + uses mplsldp_Backoff-group; + description "LDP Backoff Configuration Information"; } - leaf qcount { - config "false"; - type uint32; + + // Contains LDP graceful restart configuration information + container graceful_restart_state-items { + + uses mplsldp_GracefulRestartState-group; + description "LDP Graceful Restart Configuration Information"; } - leaf acceptCount { - config "false"; - type uint32; + + // Contains LDP capabilities information + container capabilities-items { + list Capabilities-list { + config "false"; + key "capability"; + + uses mplsldp_Capabilities-group; + description "LDP Capabilities Information list"; + } + description "LDP Capabilities Information"; } - leaf rejectCount { - config "false"; - type uint32; + + // Contains LDP configuration parameters Information + container parameters-items { + + uses mplsldp_Parameters-group; + description "LDP Configuration Parameters Information"; } } - grouping igmpsnoop_IgmpsnGroupRec-group { + grouping mplsldp_AddressFamilies-group { + description "Per address family operational state"; - // Inherited From ipmcsnoop:AIgmpsnGroupRec - // Type is an MO-Defined-Type - leaf ifname { - config "false"; - description "Specify interace name"; + // Containing data related to the IPv4 address family + container ipv4-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_Ipv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AIgmpsnGroupRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + grouping mplsldp_Ipv4-group { + description "Containing data related to the IPv4 address family"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf sourceaddr { - config "false"; - type address_Ip; + // LDP address and label binding information + container bindings-items { + + uses mplsldp_Bindings-group; + description "LDP address and label binding information"; } - leaf groupaddr { + } + + grouping mplsldp_Bindings-group { + description "LDP address and label binding information"; + + leaf localLabelFilteringSpecifications { config "false"; - type address_Ip; + + type mplsldp_LocalLabelFilteringSpecifications; + description "LDP Local Label Filtering Specifications"; } - leaf ver { - config "false"; - type string; + + // List of address bindings learned by LDP + container address-items { + list Address-list { + config "false"; + key "address"; + + uses mplsldp_Address-group; + description "List of address bindings learned by LDP list"; + } + description "List of address bindings learned by LDP"; } - leaf sportType { - config "false"; - type string; + + // Contains LDP Bindings Summary Information + container summary-items { + list Summary-list { + config "false"; + key "peer"; + + uses mplsldp_Summary-group; + description "LDP Bindings Summary Information list"; + } + description "LDP Bindings Summary Information"; } - leaf gportType { + } + + grouping mplsldp_Address-group { + description "List of address bindings learned by LDP"; + leaf address { config "false"; - type string; + type address_Ip; + description "The IPv4 address learned from an Address message received from or advertised to a peer"; } - leaf rportType { + + leaf localtag { config "false"; - type string; + + type mplsldp_LocalBindingTag; + description "The label value in the local binding"; } - leaf rifname { - config "false"; - type string; + + // LDP Advertisement Specifications + container advertisement_specifications-items { + + uses mplsldp_AdvertisementSpecifications-group; + description "LDP Advertisement Specifications"; } - } - grouping igmpsnoop_McGrpRec-group { + // List of LDP peers from which this address is received + container peer-items { + list Peer-list { + config "false"; + key "lsrId"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + uses mplsldp_Peer-group; + description "LDP peer from which this address is received list"; + } + description "LDP peer from which this address is received"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // List of LDP peer to which this binding is advertised + container advertised_to_list-items { + list AdvertisedToList-list { + config "false"; + key "lsrId"; + + uses mplsldp_AdvertisedToList-group; + description "LDP peer to which this address is advertised list"; } + description "LDP peer to which this address is advertised"; } + } - // Group address - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf addr { + grouping mplsldp_AdvertisementSpecifications-group { + description "LDP Advertisement Specifications"; + leaf oldStyleAssignmentOfPrefixAcls { config "false"; - description "Multicast Group Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type boolean; + description "LDP Advertisement Specifications - Old Style Assignment of Prefix ACLs to Entries"; } - // Version - // Inherited From ipmcsnoop:McGrpRec - // Modified by Override: igmpsnoop:McGrpRec->ver - // Type is an MO-Defined-Type - leaf ver { + leaf peerAcl { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Peer ACL"; } - // Latest reporter - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf latReporter { + leaf prefixAcl { config "false"; - description "Latest Reporter"; - // Type is an MO-Defined-Type - type ipmcsnoop_Reporter; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Prefix ACL"; } - leaf oldHostTs { + } + + grouping mplsldp_Peer-group { + description "LDP peer from which this address is received"; + leaf lsrId { config "false"; - type string; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf reportTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - // Number of Sources - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf numSrc { + leaf remotetag { config "false"; - description "Num of Sources"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_RemoteBindingTag; + description "The label value in the remote binding"; } + } - // EPG entries in mcast group record - container epg-items { - list EpgRec-list { - config "false"; - key "fabEncap"; - - // Added containment: Prefix=epg - // Acquired From Package igmpsnoop - uses igmpsnoop_EpgRec-group; - } + grouping mplsldp_AdvertisedToList-group { + description "LDP peer to which this address is advertised"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - - // IGMP report record snooped by igmp-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; - - // Added containment: Prefix=rep - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportRec-group; - } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_EpgRec-group { + grouping mplsldp_Summary-group { + description "LDP Bindings Summary Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf peer { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_BindingSummaryPeerType; + description "LDP Bindings Summary - Peer"; } - leaf fabEncap { + leaf totalPrefixes { config "false"; - type string; + type uint32; + description "LDP Bindings Summary - Total Number of Prefixes"; } - - // Epg id, identified using the circuit endpoint - // id in the system - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf id { + leaf totalInLabels { config "false"; - description "Endpoint Group ID"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint32; + description "LDP Bindings Summary - Total Number of In Labels"; + } + leaf totalOutLabels { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Number of Out Labels"; + } + leaf totalTibRouteAllocated { + config "false"; + type uint32; + description "LDP Bindings Summary - Total tib Route Info Allocated"; + } + leaf totalPreviousTibRemoteLabelEntries { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Previous tib Remote Label Entries"; + } + leaf currentPreviousTibRemoteLabelEntries { + config "false"; + type uint32; + description "LDP Bindings Summary - Current Previous tib Remote Label Entries"; + } + leaf totalPreviousTibRemoteLabelQueues { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Previous tib Remote Label Queues"; } + leaf currentPreviousTibRemoteLabelQueues { + config "false"; + type uint32; + description "LDP Bindings Summary - Current Previous tib Remote Label Queues"; + } + } - // Multicast group address (GIPO'), Outer multicast - // encapsulation ip address for this layer2 domain - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf mcastEncap { + grouping mplsldp_Backoff-group { + description "LDP Backoff Configuration Information"; + + leaf initialBackoff { config "false"; - description "Multicat Encapsulation"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + type mplsldp_InitBackoff; + description "LDP Session Initial Backoff (s)"; } - // IGMP report record snooped by igmp-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf maximumBackoff { + config "false"; - // Added containment: Prefix=rep - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportRec-group; - } + type mplsldp_MaxBackoff; + description "LDP Session Maximum Backoff (s)"; } } - grouping igmpsnoop_ReportRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + grouping mplsldp_GracefulRestartState-group { + description "LDP Graceful Restart Configuration Information"; + leaf adminConfig { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type boolean; + description "Is LDP graceful restart enabled or not ?"; } - // Multicast traffic source - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf mcastSrc { + leaf forwardingHolding { config "false"; - description "Multicast Source Address"; - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type mplsldp_FwdHoldTime; + description "Interval for keeping the node in recovery mode (s)"; } - // Version - // Inherited From ipmcsnoop:ReportRec - // Modified by Override: igmpsnoop:ReportRec->ver - // Type is an MO-Defined-Type - leaf ver { + leaf maxRecovery { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type mplsldp_RecoveryTime; + description "Time for the remote peer to maintain the MPLS forwarding state after the local node has succesfully reconnected (s)"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf filtMode { + leaf neighborLiveness { config "false"; - description "Filter Mode"; - // Type is an MO-Defined-Type - type mcast_FiltMode; + type mplsldp_NbrLiveTime; + description "Time for which the remote LDP peers will wait for the local node to reconnect after a failure (s)"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Contains list of LDP down neighbor information + container down_neighbor-items { + list DownNeighbor-list { + config "false"; + key "peerlsrId"; - // Type is an MO-Defined-Type - type ipmcsnoop_RepFlags; + uses mplsldp_DownNeighbor-group; + description "List of LDP Down Neighbor Information list"; + } + description "List of LDP Down Neighbor Information"; } - // OIF list (outgoing interface list) - container oif-items { - list OIFRec-list { + // Contains list of LDP graceful restart enabled session information + container grsession-items { + list GrSession-list { config "false"; - key "id"; + key "lsrId"; - // Added containment: Prefix=oif - // Acquired From Package igmpsnoop - uses igmpsnoop_OIFRec-group; + uses mplsldp_GrSession-group; + description "List of LDP Graceful Restart Enabled Session Information list"; } + description "List of LDP Graceful Restart Enabled Session Information"; } } - grouping igmpsnoop_OIFRec-group { + grouping mplsldp_DownNeighbor-group { + description "List of LDP Down Neighbor Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf status { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_DownNeighborStatus; + description "Down neighbor status"; } - - // Multicast traffic source - // Inherited From ipmcsnoop:OIFRec - // Type is an MO-Defined-Type - leaf id { + leaf peerlsrId { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf numGqMiss { + leaf peerlabelSpaceId { config "false"; - type uint16; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf expireTs { + leaf locallsrId { config "false"; - type string; + type address_Ip; + description "The LSR ID of the local LDP identifier, as a portion of the local LDP ID"; } - - // Host Record List (Used for Explicit Host Tracking) - container host-items { - list HostRec-list { - config "false"; - key "addr"; - - // Added containment: Prefix=host - // Acquired From Package igmpsnoop - uses igmpsnoop_HostRec-group; - } + leaf locallabelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the local LDP identifier, as a portion of the local LDP ID"; } } - grouping igmpsnoop_HostRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf addr { + grouping mplsldp_GrSession-group { + description "List of LDP Graceful Restart Enabled Session Information"; + leaf lsrId { config "false"; type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf upTs { - config "false"; - type string; - } - leaf lastJoinTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf nextExpiryTs { + + leaf state { config "false"; - type string; + + type mplsldp_PeerStateType; + description "Graceful restart enabled session state"; } } - grouping igmpsnoop_QuerierRec-group { + grouping mplsldp_Capabilities-group { + description "LDP Capabilities Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf capability { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf timeout { + grouping mplsldp_Parameters-group { + description "LDP Configuration Parameters Information"; + + leaf featureSetManagerState { config "false"; - description "Timeout"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type mplsldp_FeaturesetManagerStateType; + description "LDP Configuration Parameters - Feature Set Manager State"; } - - // Last member query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf lastMbrIntvl { + leaf protocolVersion { config "false"; - description "Last Member Query Interval"; - - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type uint32; + default "1"; + description "LDP Configuration Parameters - Protocol Version"; } - leaf ver { + leaf sessionHoldTime { config "false"; - type string; + type uint32; + default "180"; + description "LDP Configuration Parameters - Session Hold Time (s)"; } - // Querier IP address - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf addr { + leaf overrideSessionHoldTime { config "false"; - description "Address"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Override Adjacency Session Hold Time"; + } + leaf keepAliveInterval { + config "false"; + type uint32; + default "60"; + description "LDP Configuration Parameters - Keep Alive Interval (s)"; + } + leaf discoveryHelloHoldTime { + config "false"; + type uint32; + default "15"; + description "LDP Configuration Parameters - Discovery Hello Hold Time (s)"; + } + leaf discoveryHelloInterval { + config "false"; + type uint32; + default "5"; + description "LDP Configuration Parameters - Discovery Hello Interval (s)"; + } + leaf discoveryTargetedHelloHoldTime { + config "false"; + type uint32; + default "90"; + description "LDP Configuration Parameters - Discovery Targeted Hello Hold Time (s)"; + } + leaf discoveryTargetedHelloInterval { + config "false"; + type uint32; + default "10"; + description "LDP Configuration Parameters - Discovery Targeted Hello Interval (s)"; } - // Query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf queryIntvl { + leaf acceptingTargetedHellos { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Accepting Targeted Hellos"; } - // Query response interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf rspIntvl { + leaf targetedHellosAcl { config "false"; - description "Response Interval"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type mplsldp_AclType; + description "LDP Configuration Parameters - Targeted Hello ACL"; } - // Robustness factor - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf robustFac { + leaf omittingTransportAddressOptionTransmittedHellos { config "false"; - description "Robustness Factor"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Omitting transport address option in transmitted hellos ?"; } - // Startup query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf startQueryIntvl { + leaf ignoringTransportAddressOptionReceivedHellos { config "false"; - description "Startup Query Interval"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Ignoring transport address option in received hellos"; } - // Startup query count - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf startQueryCnt { + leaf acceptingUndirectedHellosNonbroadcastAddresses { config "false"; - description "Startup Query Count"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Accepting undirected hellos to non-broadcast addresses"; } - leaf port { + leaf downstreamOnDemandMaxHopCount { config "false"; - type string; + type uint8; + default "255"; + description "LDP Configuration Parameters - Downstream on Demand Max Hop Count"; } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf vlanid { + leaf protocolType { config "false"; - description "Vlan ID"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + type mplsldp_ParametersProtocolType; + description "LDP Configuration Parameters - Protocol Type"; } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf expTime { + leaf loopDetection { config "false"; - description "Specify the expiry of querier mo"; - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + type mplsldp_LoopDetectionType; + description "LDP Loop Detection Enabled ?"; + } + + // Contains LDP Configuration Parameters Information - Features + container features-items { + list Features-list { + config "false"; + key "feature"; + + uses mplsldp_Features-group; + description " LDP Configuration Parameters - Features list"; + } + description " LDP Configuration Parameters - Features"; } } - grouping igmpsnoop_DomStats-group { + grouping mplsldp_Features-group { + description " LDP Configuration Parameters - Features"; - // V1 Reports received - // Type is an MO-Defined-Type - leaf v1RepRcvd { + leaf feature { config "false"; - description "V1 Reports Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_FeatureType; + description "LDP Configuration Parameters - Feature Name"; } + } - // V2 Reports received - // Type is an MO-Defined-Type - leaf v2RepRcvd { - config "false"; - description "V2 Reports Received"; + grouping mplsldp_IgpSync-group { + description "IGP Synchronization Information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Per interface IGP synchronization information + container igp_sync_interface-items { + list IgpSyncInterface-list { + config "false"; + key "ifIdString"; + + uses mplsldp_IgpSyncInterface-group; + description "Per interface IGP synchronization information list"; + } + description "Per interface IGP synchronization information"; } + } - // V2 Leave received - // Type is an MO-Defined-Type - leaf v2LeaveRcvd { + grouping mplsldp_IgpSyncInterface-group { + description "Per interface IGP synchronization information"; + + leaf ifIdString { config "false"; - description "V2 Leave Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_InterfaceString; + description "Interface id name used for IGP synchronization"; } - // V1 Query received - // Type is an MO-Defined-Type - leaf v1QueryRcvd { + leaf ifId { config "false"; - description "V1 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "LDP IGP Synchronization Interface Id"; } - // V2 Query received - // Type is an MO-Defined-Type - leaf v2QueryRcvd { + leaf status { config "false"; - description "V2 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpStatusType; + description "LDP IGP Synchronization Status"; } - // V1 Reports suppressed - // Type is an MO-Defined-Type - leaf v1RepSupr { + leaf syncEnableStatus { config "false"; - description "V1 Reports Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpSyncEnableType; + description "LDP IGP Synchronization Enable Status"; } - // V2 Reports suppressed - // Type is an MO-Defined-Type - leaf v2RepSupr { + leaf syncStatus { config "false"; - description "V2 Reports Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpSyncStatusType; + description "LDP IGP Synchronization Sync Status"; } - // V2 leaves suppressed - // Type is an MO-Defined-Type - leaf v2LeaveSupr { + leaf peerStatus { config "false"; - description "V2 Leaves Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpPeerStatusType; + description "LDP IGP Synchronization Peer Reachable Status"; } - - // v1 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v1RepOrig { + leaf syncDelayTime { config "false"; - description "V1 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "LDP IGP Synchronization Delay Time Value (s)"; } - - // v2 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v2RepOrig { + leaf syncDelayTimeLeft { config "false"; - description "V2 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "LDP IGP Synchronization Delay Time Left Value (s)"; } - - // v2 Proxy Leave Originated - // Type is an MO-Defined-Type - leaf v2LeaveOrig { + leaf igpHoldDownTime { config "false"; - description "V2 Leaves Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "LDP IGP Synchronization IGP Hold Down Time (ms)"; } - - // V3 Reports received - // Type is an MO-Defined-Type - leaf v3RepRcvd { + leaf grEnabled { config "false"; - description "V3 Reports Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "LDP Discovery Information - Graceful Enabled for Session"; } - // V3 Query received - // Type is an MO-Defined-Type - leaf v3QueryRcvd { + leaf igpEnabled { config "false"; - description "V3 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_IgpEnabledType; + description "LDP Discovery Information - IGP that Enabled Sync"; } - // V3 Group Record suppressed - // Type is an MO-Defined-Type - leaf v3GrpRecSupr { - config "false"; - description "V3 Group Records Suppressed"; + // LDP IGP Sync Peer information + container igp_sync_peer-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_IgpSyncPeer-group; + description "LDP IGP Sync Peer Information"; } + } - // v3 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v3RepOrig { + grouping mplsldp_IgpSyncPeer-group { + description "LDP IGP Sync Peer Information"; + leaf lsrId { config "false"; - description "V3 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf lastClearTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } + } - // packets received - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pktsRcvd { - config "false"; - description "Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping mplsldp_AdvLbl-group { + description "Control if labels are advertised. When this MO exists, labels are advertised (the default). When this MO does not exist, no labels will be advertised to neighbors."; + leaf advLbl { + type boolean; + default "true"; + description "The advLbl property enables the label advertisements"; } + } - // Pim Hello Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pimHelloRcvd { - config "false"; - description "Pim Hello Received"; + grouping mplsldp_AdvLblPfx-group { + description "Advertises local labels for some destination prefixes"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on destination prefixes"; } - // Invalid Query Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf invQueryRcvd { - config "false"; - description "Invalid Query Received"; + leaf peerPfxList { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on LDP peers"; } + } - // Invalid Report Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf invRepRcvd { - config "false"; - description "Invalid Report Received"; + grouping mplsldp_AdvLblIntf-group { + description "Advertises local labels for a particular interface"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf interface { + + type nw_IfId; + description "Advertise /32 interface address"; } + } - // Version Mismatch Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf verMisMatchRcvd { - config "false"; - description "Version Mismatch Received"; + grouping mplsldp_BackoffParams-group { + description "LDP Session backoff parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf initBackoff { + + type mplsldp_InitBackoff; + description "Initial session backoff time (seconds)"; } - // Unknown Packets Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf unknPktRcvd { - config "false"; - description "Unknown Packets Received"; + leaf maxBackoff { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_MaxBackoff; + description "Maximum session backoff time (seconds)"; } + } - // Query Originated - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf queryPktsOrig { - config "false"; - description "Query Packets Originated"; + grouping mplsldp_Discovery-group { + description "Anchors configuration related to LDP neighbor discovery"; - // Type is an MO-Defined-Type - type nw_Counter32; + // LDP Discovery Hello + container discoveryhello-items { + + uses mplsldp_DiscoveryHello-group; + description "LDP Discovery hello parameters"; } - // Packets Sent to Router Ports - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pktsToRport { - config "false"; - description "Packets to Router Ports"; + // LDP Discovery Targeted Hello + container discoverytgthello-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_DiscoveryTgtHello-group; + description "LDP Discovery Targeted Hello parameters"; } + } - // VPC Sync Packets Sent to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncSent { - config "false"; - description "VPC Sync Packets Sent"; + grouping mplsldp_DiscoveryHello-group { + description "LDP Discovery hello parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf helloHoldtime { + + type mplsldp_HelloHoldTime; + description "LDP discovery Hello holdtime defines the period of time that a discovered LDP neighbor is remembered without receipt of an LDP hello message from the neighbor. The range is from 1 to 65535 seconds"; } - // VPC Sync Packets Rcvd from Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncRcvd { - config "false"; - description "VPC Sync Packets Received"; + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_IntvlTime; + description "LDP discovery Hello interval defines the period of time between the sending of consecutive hello messages. The range is from 1 to 65535 seconds"; } + } - // VPC Sync Packets Failed to send to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncFail { - config "false"; - description "VPC Sync Packets Failed"; + grouping mplsldp_DiscoveryTgtHello-group { + description "LDP Discovery Targeted Hello parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf tgtHelloHoldtime { + + type mplsldp_TgtHoldTime; + description "LDP discovery Targeted Hello holdtime defines the period of time that a discovered LDP neighbor is remembered without receipt of an LDP hello message from the neighbor. The range is from 1 to 65535 seconds"; } - // MRD Sync Packets Sent to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncSent { - config "false"; - description "MRD Sync Packets Sent"; + leaf tgtHelloIntvl { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_TgtIntvlTime; + description "LDP discovery Targeted Hello interval defines the period of time between the sending of consecutive hello messages. The range is from 1 to 65535 seconds"; } - // MRD Sync Packets Rcvd from Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncRcvd { - config "false"; - description "MRD Sync Packets Received"; + // LDP Discovery target hello accept + container distgthelloaccept-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_DisTgtHelloAccept-group; + description "LDP Discovery target hello accept parameters"; } + } - // MRD Sync Packets Failed to send to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncFail { - config "false"; - description "MRD Sync Packets Failed"; + grouping mplsldp_DisTgtHelloAccept-group { + description "LDP Discovery target hello accept parameters"; + leaf accept { + type boolean; + default "true"; + description "The accept property configures the router to respond to requests for targeted-hello messages from all neighbors"; + } - // Type is an MO-Defined-Type - type nw_Counter32; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Neighbor prefix list to specify acceptable targeted hello sources"; } } - grouping igmpsnoop_StRtrIf-group { + grouping mplsldp_ExplicitNull-group { + description "LDP Explicit Null advertises an explicit-null label in situations where an implicit-null label would normally be advertised"; + leaf explicitNull { + type boolean; + default "true"; + description "The explicitNull property advertises Explicit Null label in place of Implicit Null"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping mplsldp_ExplNullForList-group { + description "Controls which label bindings will be advertised as explicit-null rather than inplicit-null"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf forPfxList { + + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on destination prefixes"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf toPfxList { - // Type is an MO-Defined-Type - type naming_Descr1024; + type mplsldp_LdpPrefixListName; + description "Access list specifying controls on LDP peers"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + grouping mplsldp_ExplNullToList-group { + description "Controls to which neighbors label bindings will be advertised as explicit-null rather than implicit-null"; - // Type is an MO-Defined-Type - type nw_IfId; - } + leaf toPfxList { - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + type mplsldp_LdpPrefixListName; + description "Access list specifying controls on LDP peers"; + } + } - // Type is an MO-Defined-Type - type nw_IfAdminSt; + grouping mplsldp_Gr-group { + description "LDP Graceful restart parameters"; + leaf graceful { + type boolean; + default "true"; + description "The graceful property configures LDP graceful restart"; } - leaf encap { - config "false"; - type string; + + leaf forwardingHoldtime { + + type mplsldp_FwdHoldTime; + description "LDP forwarding state holding time. Specifies the amount of time the MPLS forwarding state should be preserved after the control plane restarts."; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - container rtvrfMbr-items { + leaf recoveryTime { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mplsldp_RecoveryTime; + description "LDP maximum recovery time. Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished."; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf neighborLivenessTime { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mplsldp_NbrLiveTime; + description "LDP Neighbor-Liveness time. Specifies the amount of time a router should wait for an LDP session to be reestablished."; } } - grouping igmpsnoop_RtrIf-group { + grouping mplsldp_HoldTime-group { + description "LDP session holdtime parameters"; + leaf infinite { + type boolean; + default "false"; + description "Ignore LDP session holdtime"; + } - // Identifier for the if - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf sessionHoldTime { - // Type is an MO-Defined-Type - type nw_IfId; + type mplsldp_SessionHoldTime; + description "LDP session holdtime specifies how long an LDP session is maintained in the absence of LDP messages from the session peer. The range is from 15 to 65535 seconds"; } + } - // Life cycle control - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf lcC { - config "false"; - description "Life Cycle Control"; + grouping mplsldp_Logging-group { + description "LDP logging parameters"; + leaf nbrChanges { + type boolean; + default "true"; + description "Log LDP neighbor state changes"; + } + leaf config { + type boolean; + default "true"; + description "Log LDP password configuration changes"; + } - // Type is an MO-Defined-Type - type ipmcsnoop_LcC; + leaf configRateLimit { + + type mplsldp_RateLimit; + description "LDP logging password configuration rate limit"; } - leaf upTs { - config "false"; - type string; + leaf rollover { + type boolean; + default "true"; + description "Log LDP password rollover events"; } - leaf nextExpiryTs { - config "false"; - type string; + + leaf rolloverRateLimit { + + type mplsldp_RateLimit; + description "LDP logging password rollover rate limit"; } } - grouping igmpsnoop_Vlan-group { + grouping mplsldp_DefaultRoute-group { + description "Allow MPLS forwarding for ip default route"; + leaf defaultRoute { + type boolean; + default "true"; + description "Allow MPLS forwarding for ip default route"; + } + } - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan ID"; + grouping mplsldp_Neighbor-group { + description "LDP neighbor parameters class"; + leaf nbrAddr { + type address_Ip; + description "IP address for LDP neighbor"; + } + leaf implicitWithdraw { + type boolean; + default "false"; + description "Enable LDP neighbor implicit withdraw"; + } - // Type is an MO-Defined-Type - type nw_IfId; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Specifies the prefix list to be used to filter label bindings for the specified LDP neighbor."; + } + leaf targeted { + type boolean; + default "false"; + description "Establish LDP targeted session"; } + } - // Circuit endpoint representing EPG - container cktep-items { - list CktEp-list { - key "encap"; + grouping mplsldp_Password-group { + description "Anchors configuration related to LDP password parameters"; - // Added containment: Prefix=cktep - // Acquired From Package igmpsnoop - uses igmpsnoop_CktEp-group; - } + // LDP Password fallback class + container passwordfallback-items { + + uses mplsldp_PasswordFallback-group; + description "Configures a backup MD5 keychain for peers that have no keychain configured"; } - // Multicast Snoop Configured statically - container mcgrp-items { - list StMcGrp-list { - key "addr"; + // LDP Password option + container passwordoption-items { + list PasswordOption-list { + key "seqNum"; - // Added containment: Prefix=mcgrp - // Acquired From Package igmpsnoop - uses igmpsnoop_StMcGrp-group; + uses mplsldp_PasswordOption-group; + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list list"; } + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list"; } - container igmpsnbase-items { + // LDP Password required + container passwordrequired-items { - // Added containment as a singleton: Prefix=igmpsnbase - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnBase-group; + uses mplsldp_PasswordRequired-group; + description "Specifies that LDP must use a password when establishing a session between LDP peers."; } + } - // This objects holds IGMP snooping timers for vlan - container gTimers-items { + grouping mplsldp_PasswordFallback-group { + description "Configures a backup MD5 keychain for peers that have no keychain configured"; + leaf keyChain { + type string; + description "The key-chain keychain-name keyword-argument pair specifies a keychain of multiple MD5 keys to be used for the LDP sessions."; + } + } - // Added containment as a singleton: Prefix=gTimers - // Acquired From Package igmpsnoop - uses igmpsnoop_GTimers-group; + grouping mplsldp_PasswordOption-group { + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list"; + + leaf seqNum { + + type mplsldp_SeqNum; + description "The number argument defines the order in which the prefix lists are evaluated in the determination of a neighbor password. The valid range is from 1 to 32767."; } - // This objects holds multicast mac address table params - container mactable-items { - list MacTable-list { - key "macAddress"; + leaf pfxList { - // Added containment: Prefix=mactable - // Acquired From Package igmpsnoop - uses igmpsnoop_MacTable-group; - } + type mplsldp_LdpPrefixListName; + description "Specifies the name of the prefix list that includes the LDP router IDs of those neighbors for which the password applies"; + } + leaf keyChain { + type string; + description "Specifies a keychain of multiple MD5 keys to be used for the LDP sessions."; } + } - // This objects holds multicast router snoop params - container mrouter-items { + grouping mplsldp_PasswordRequired-group { + description "Specifies that LDP must use a password when establishing a session between LDP peers."; + leaf required { + type boolean; + default "true"; + description "Specifies that LDP must use a password when establishing a session between LDP peers."; + } - // Added containment as a singleton: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouter-group; + leaf reqPfxList { + + type mplsldp_LdpPrefixListName; + description "Specifies a prefix list, which specifies that a password is mandatory only for LDP sessions with neighbors whose LDP router IDs are permitted by the list"; } + } + + grouping mplsldp_RouterId-group { + description "LDP router id class"; + leaf force { + type boolean; + default "false"; + description "LDP router id force keyword enables the router ID to take effect more quickly"; + } + + leaf if { - // This objects holds multicast proxy snoop params - container proxy-items { + type nw_IfId; + description "Specifies the preferred interface for determining the LDP router ID, which is typically determined the next time that the interface is shut down or the address is deconfigured"; + } + } - // Added containment as a singleton: Prefix=proxy - // Acquired From Package igmpsnoop - uses igmpsnoop_Proxy-group; + grouping mplsldp_SessProt-group { + description "Enables LDP sessions to be protected during a link failure. It protects all LDP sessions, unless you specify a prefix list"; + leaf infinite { + type boolean; + default "false"; + description "The infinite keyword allows the LDP targeted hello adjacency to exist indefinitely following the loss of the LDP link hello adjacency."; } - // Querier policy - container querierp-items { + leaf duration { - // Added containment as a singleton: Prefix=querierp - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierP-group; + type mplsldp_ProtectDuration; + description "The duration keyword enables you to specify how long the router should retain the LDP targeted hello adjacency following the loss of the LDP link hello adjacency. The range is from 30 to 2,147,483 seconds."; } - // Querier state - container querierst-items { + leaf pfxList { - // Added containment as a singleton: Prefix=querierst - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierSt-group; + type mplsldp_LdpPrefixListName; + description "Prefix list for LDP peers that should be protected. Session protection is then enabled for the peer routers in that prefix list"; } + } - // Route control policy for igmp multicast snoop. - container actrl-items { + grouping mplsldp_LabelAllocate-group { + description "Configures local label allocation filters for MPLS LDP"; - // Added containment as a singleton: Prefix=actrl - // Acquired From Package igmpsnoop - uses igmpsnoop_ACtrl-group; + leaf lblAllocT { + + type mplsldp_LblAllocT; + description "Specifies label allocation type"; } - // Report policy for igmp multicast snoop - container rpolicy-items { - list RPolicy-list { - key "rtMap"; + leaf pfxList { - // Added containment: Prefix=rpolicy - // Acquired From Package igmpsnoop - uses igmpsnoop_RPolicy-group; - } + type mplsldp_LdpPrefixListName; + description "Specifies a prefix list to be used as a filter for MPLS LDP local label allocation."; } } - grouping igmpsnoop_CktEp-group { - leaf encap { - type string; + grouping mplsldp_Peers-group { + description "Peers operational state"; + leaf peerLsrId { + config "false"; + type address_Ip; + description "The LSR ID of peer, as a portion of the peer LDP ID"; + } + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of local LDP, as a portion of the local LDP ID"; + } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of local LDP, as a portion of the local LDP ID"; } - } - - grouping igmpsnoop_StMcGrp-group { - // Inherited From nw:Conn - // Modified by Override: mcast:Grp->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf peerState { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_PeerStateType; + description "LDP Neighbor Information - Peer State"; } - // Multicast group address - // Inherited From mcast:Grp - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + leaf peerHoldTime { + config "false"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + type mplsldp_HelloHoldTime; + description "LDP Neighbor Information - Peer Hold Time (ms)"; + } + leaf keepAliveInterval { + config "false"; + type uint32; + description "LDP Neighbor Information - Keep Alive Interval (ms)"; + } + leaf nextKeepAlive { + config "false"; + type uint32; + description "Time to send the next KeepAlive message"; } - // IPMC Source IP - container src-items { - list McSrc-list { - key "id"; + leaf labelAdvertisementMode { + config "false"; - // Added containment: Prefix=src - // Acquired From Package igmpsnoop - uses igmpsnoop_McSrc-group; - } + type mplsldp_LabelAdvertisementModeType; + description "Label advertisement mode"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + leaf clients { + config "false"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + type mplsldp_NeighborPeerClientType; + description "LDP Neighbor Information - Clients"; } - } - - grouping igmpsnoop_McSrc-group { - // Multicast traffic source - // Inherited From ipmcsnoop:McSrc - // Type is an MO-Defined-Type - leaf id { - description "Multicast Source IP"; + leaf password { + config "false"; - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type mplsldp_LdpPasswordStatus; + description "LDP peer password information"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // List of interfaces for LDP Basic Descovery + container discovery_interfaces-items { + list DiscoverySourcesInterfaces-list { + config "false"; + key "ifIdString"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + uses mplsldp_DiscoverySourcesInterfaces-group; + description "List of interfaces for LDP Basic Descovery list"; } + description "List of interfaces for LDP Basic Descovery"; } - } - grouping igmpsnoop_TgtIf-group { - leaf vsi { - type boolean; - } - leaf accGrp { - type boolean; - } - leaf pfxList { - type boolean; + // List of targeted interfaces for LDP Basic Descovery + container discovery_targeted-items { + list TargetedDiscoverySourcesInterfaces-list { + config "false"; + key "name"; + + uses mplsldp_TargetedDiscoverySourcesInterfaces-group; + description "List of interfaces for LDP Basic Descovery list"; + } + description "List of interfaces for LDP Basic Descovery"; } - // Target interface Id - // Inherited From ipmcsnoop:TgtIf - // Type is an MO-Defined-Type - leaf id { - description "Multicast Source IP"; + // Neighbor Session Protection Information + container session_protection-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_PeerSessionProtection-group; + description "Neighbor session protection details"; } - } - grouping igmpsnoop_IgmpsnBase-group { - leaf lookupMac { - type boolean; + // Operational state information learned from the peer + container received_peer_state-items { + + uses mplsldp_ReceivedPeerState-group; + description "Operational state information learned from the peer"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf llGrpSuppr { - description "Link local groups suppression"; + container peer_capabilities-items { - // Type is an MO-Defined-Type - type ipmcsnoop_LlGrpSuppr; + uses mplsldp_PeerCapabilities-group; + description "Per peer capabilities"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf reportSuppr { - description "v1/v2 report suppression"; + // TCP connection state + container tcp-items { - // Type is an MO-Defined-Type - type ipmcsnoop_ReportSuppr; + uses mplsldp_TcpConnection-group; + description "TCP connection state"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf v3ReportSuppr { - description "v3 report suppression"; + // Peer connection information + container connection-items { - // Type is an MO-Defined-Type - type ipmcsnoop_V3ReportSuppr; + uses mplsldp_Connection-group; + description "Peer connection information"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf expTracking { - description "Explicit tracking"; + grouping mplsldp_DiscoverySourcesInterfaces-group { + description "List of interfaces for LDP Basic Descovery"; - // Type is an MO-Defined-Type - type ipmcsnoop_ExpTracking; + leaf ifIdString { + config "false"; + + type mplsldp_InterfaceString; + description "Interface id name used for LDP Basic Discovery"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf igmpSnoop { - description "Enable/Disable igmp snooping global mode"; + // Per address family operational state + container peer_address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_IgmpSnoop; + uses mplsldp_PeerAddressFamilies-group; + description "Per address family operational state"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf minVer { - description "Minimum IGMP version"; + grouping mplsldp_PeerAddressFamilies-group { + description "Per address family operational state"; - // Type is an MO-Defined-Type - type ipmcsnoop_MinVer; + // Containing data related to the IPv4 address family + container peer_ipv4-items { + + uses mplsldp_PeerIpv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf maxGrp { - description "Maximum Groups per interface"; + grouping mplsldp_PeerIpv4-group { + description "Containing data related to the IPv4 address family"; - // Type is an MO-Defined-Type - type ipmcsnoop_MaxGrp; + // Containing a list of hello adjacencies + container peer_hello_adjacencies-items { + + uses mplsldp_PeerHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } } - grouping igmpsnoop_GTimers-group { + grouping mplsldp_PeerHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf fastLeave { - description "Fast leave"; + // List of hello adjacencies + container peer_hello_adjacency-items { - // Type is an MO-Defined-Type - type ipmcsnoop_FastLeave; + uses mplsldp_PeerHelloAdjacency-group; + description "List of hello adjacencies"; } + } - // Group timeout - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf grpTimeout { - description "Group Timeout"; + grouping mplsldp_PeerHelloAdjacency-group { + description "List of hello adjacencies"; + leaf localaddress { + config "false"; + type address_Ip; + description "Local address of the hello adjacency"; + } + leaf adjacentaddress { + config "false"; + type address_Ip; + description "Neighbor address of the hello adjacency"; + } - // Type is an MO-Defined-Type - type mcast_GrpTimeout; + // Containing hello holdtime state information + container peer_hello_holdtime-items { + + uses mplsldp_PeerHelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf maxGqMiss { - description "Max GQ Miss time"; + // A container containing an absolute reference to an LDP peer + container ldp_peer-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MaxGqMiss; + uses mplsldp_DiscoveryLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } } - grouping igmpsnoop_MacTable-group { - leaf macAddress { - type address_Mac; + grouping mplsldp_PeerHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { + config "false"; + type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; - - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + leaf negotiated { + config "false"; + type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - container mif-items { - list MIf-list { - key "intf"; - - // Added containment: Prefix=mif - // Acquired From Package igmpsnoop - uses igmpsnoop_MIf-group; - } + leaf holdtime { + config "false"; + type uint32; + description "The current holdtime for this LSR (s)"; + } + leaf remaining { + config "false"; + type uint32; + description "The time remaining until the holdtime timer expires (s)"; } } - grouping igmpsnoop_MIf-group { - leaf intf { - type string; + grouping mplsldp_DiscoveryLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vsi { - type boolean; + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_MRouter-group { + grouping mplsldp_TargetedDiscoverySourcesInterfaces-group { + description "List of interfaces for LDP Basic Descovery"; - // Global property - // Inherited From ipmcsnoop:Amrouter - // Type is an MO-Defined-Type - leaf vpcPeerLink { - description "Specify vpc-peer-link as static mrouter for all VLAN/BD"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vpc; + type mplsldp_TargetedHelloIdentifier; + description "The targeted hello entry identifier"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // Per address family operational state + container targeted_peer_address_families-items { - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + uses mplsldp_TargetedPeerAddressFamilies-group; + description "Per address family operational state"; } - container mif-items { - list MIf-list { - key "intf"; + } - // Added containment: Prefix=mif - // Acquired From Package igmpsnoop - uses igmpsnoop_MIf-group; - } + grouping mplsldp_TargetedPeerAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container targeted_peer_ipv4-items { + + uses mplsldp_TargetedPeerIpv4-group; + description "Containing data related to the IPv4 address family"; } } - grouping igmpsnoop_Proxy-group { + grouping mplsldp_TargetedPeerIpv4-group { + description "Containing data related to the IPv4 address family"; - // Inherited From ipmcsnoop:AProxy - // Type is an MO-Defined-Type - leaf maxRespTime { - description "configures mrt for switch's proxy general-queries"; + // Containing a list of hello adjacencies + container targeted_peer_hello_adjacencies-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Mrt; + uses mplsldp_TargetedPeerHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } } - grouping igmpsnoop_QuerierP-group { + grouping mplsldp_TargetedPeerHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of hello adjacencies + container targeted_peer_hello_adjacency-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses mplsldp_TargetedPeerHelloAdjacency-group; + description "List of hello adjacencies"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping mplsldp_TargetedPeerHelloAdjacency-group { + description "List of hello adjacencies"; + leaf localaddress { + config "false"; + type address_Ip; + description "Local address of the hello adjacency"; + } + leaf adjacentaddress { + config "false"; + type address_Ip; + description "Neighbor address of the hello adjacency"; + } + leaf nexthello { + config "false"; + type uint32; + description "The time when the next Hello message will be sent (s)"; + } - // Type is an MO-Defined-Type - type naming_Descr; + leaf interfaceState { + config "false"; + + type mplsldp_TargetedInterfaceState; + description "Targeted Hello State"; } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: igmpsnoop:QuerierP->ver - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Containing hello holdtime state information + container targeted_peer_hello_holdtime-items { - // Type is an MO-Defined-Type - type mcast_Ver; + uses mplsldp_TargetedPeerHelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // A container containing an absolute reference to an LDP peer + container targeted_ldp_peer-items { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + uses mplsldp_TargetedDiscoveryLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } + } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - description "Query Interval"; + grouping mplsldp_TargetedPeerHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { + config "false"; + type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; + } + leaf negotiated { + config "false"; + type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; + } + leaf holdtime { + config "false"; + type uint32; + description "The current holdtime for this LSR (s)"; + } + leaf remaining { + config "false"; + type uint32; + description "The time remaining until the holdtime timer expires (s)"; + } + } - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + grouping mplsldp_TargetedDiscoveryLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; + } + } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - description "Response Interval"; + grouping mplsldp_PeerSessionProtection-group { + description "Neighbor session protection details"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + leaf peerProtectionState { + config "false"; + + type mplsldp_NeighborPeerProtectionState; + description "LDP Neighbor Information - Peer Protection State"; + } + leaf peerProtectionDuration { + config "false"; + type uint32; + description "LDP Neighbor Information - Peer Protection Duration (s)"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - description "Robustness Factor"; + leaf peerProtectionAcl { + config "false"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_AclType; + description "LDP Neighbor Information - Peer Protection ACL Name"; } + } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - description "Startup Query Interval"; + grouping mplsldp_ReceivedPeerState-group { + description "Operational state information learned from the peer"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + // Per peer graceful restart attributes + container graceful_restart-items { + + uses mplsldp_GracefulRestart-group; + description "Operational state information learned from the peer"; } + } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - description "Startup Query Count"; + grouping mplsldp_GracefulRestart-group { + description "Operational state information learned from the peer"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + leaf state { + config "false"; + + type mplsldp_GrStateType; + description "Graceful Restart State"; + } + leaf neighborLivenessTimer { + config "false"; + type uint32; + description "Neighbor Liveness Timer (s)"; + } + leaf maxRecoveryTime { + config "false"; + type uint32; + description "Max Recovery Time (s)"; + } + leaf forwardingStateHoldingTime { + config "false"; + type uint32; + description "Forwarding State Holding Time (s)"; } + } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - description "Last Member Query Interval"; + grouping mplsldp_PeerCapabilities-group { + description "Per peer capabilities"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + // Per peer capabilities received + container capabilities_received-items { + list CapabilitiesReceived-list { + config "false"; + key "capability"; + + uses mplsldp_CapabilitiesReceived-group; + description "Per peer capabilities received list"; + } + description "Per peer capabilities received"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Per peer capabilities sent + container capabilities_sent-items { + list CapabilitiesSent-list { + config "false"; + key "capability"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + uses mplsldp_CapabilitiesSent-group; + description "Per peer capabilities received list"; + } + description "Per peer capabilities received"; } } - grouping igmpsnoop_QuerierSt-group { + grouping mplsldp_CapabilitiesReceived-group { + description "Per peer capabilities received"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf capability { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + grouping mplsldp_CapabilitiesSent-group { + description "Per peer capabilities received"; + + leaf capability { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: igmpsnoop:QuerierSt->ver - // Type is an MO-Defined-Type - leaf ver { + grouping mplsldp_TcpConnection-group { + description "TCP connection state"; + leaf remoteTcpAddress { config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; + type address_Ip; + description "TCP connection state remote TCP Address"; } - - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { + leaf remoteTcpPort { config "false"; - description "Address"; - - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type uint32; + description "TCP connection state remote TCP port"; + } + leaf localTcpAddress { + config "false"; + type address_Ip; + description "TCP connection state local TCP Address"; } + leaf localTcpPort { + config "false"; + type uint32; + description "TCP connection state local TCP port"; + } + } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { + grouping mplsldp_Connection-group { + description "Peer connection information"; + + leaf protocolState { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type mplsldp_ProtocolStateType; + description "LDP peer protocol state"; } - - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { + leaf messagesSent { config "false"; - description "Response Interval"; + type uint32; + description "Total messages sent to peer"; + } + leaf messagesReceived { + config "false"; + type uint32; + description "Total messages received by peer"; + } + } - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + grouping mplsldp_If-group { + description "Object holds LDP information that is operated at interface level"; + leaf mplsIp { + type boolean; + default "false"; + description "The mplsIp property enables MPLS LDP on the specified interface"; + } + leaf igpAuto { + type boolean; + default "true"; + description "Enables MPLS LDP interior gateway protocol autoconfig"; + } + leaf igpSync { + type boolean; + default "true"; + description "Enables MPLS LDP interior gateway protocol sync"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; + leaf delayTime { - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_DelayTime; + description "Configures a delay time for MPLS LDP IGP synchronization on the specified interface."; + } + leaf discTrnspIntf { + type boolean; + default "false"; + description "Use interface address for LDP transport address"; + } + leaf discTrnspIp { + type address_Ip; + description "IP address to use for LDP transport address"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - config "false"; - description "Startup Query Interval"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - config "false"; - description "Startup Query Count"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type mcast_QueryCnt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + grouping mpls_Entity-group { + description "Root MPLS Manager entity anchoring general MPLS MOs"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - config "false"; - description "Timeout"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type nw_AdminSt; + description "Admin State"; } - // Interface on which the querier is present - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf if { + // Operational state + leaf operSt { config "false"; - description "Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Querier flags - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // This object holds mpls information that is operated at a + // interface level + container If-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type ipmcsnoop_QuerierFlags; + uses mpls_If-group; + description "MPLS Protocol Interface list"; + } + description "MPLS Protocol Interface"; } } - grouping igmpsnoop_ACtrl-group { + grouping mpls_If-group { + description "MPLS Protocol Interface"; + + leaf operSt { + config "false"; + + type mpls_OperSt; + description "Administrative State of Interface"; + } + leaf deleted { + config "false"; + type boolean; + default "true"; + description "Is this MO pending deletion"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { + + type naming_Descr1024; description "Description"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type rtctrl_RtCtrlDir; + type nw_IfAdminSt; + description "Admin State"; } - leaf rtMap { - type string; + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + grouping mplsstatic_Entity-group { + description "Root MPLS Static entity anchoring MPLS Static MOs"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping igmpsnoop_RPolicy-group { + // - Admin state + leaf adminSt { - // Route map name to control the distribution - // Type is an MO-Defined-Type - leaf rtMap { - description "Route Map Name to control the distribution"; + type nw_AdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type igmpsnoop_RtMapType; + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // MPLS Static address family domain + container af-items { + list Af-list { + key "type"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + uses mplsstatic_Af-group; + description "MPLS Static Address Family list"; } + description "MPLS Static Address Family"; } } - grouping igmpsnoop_BD-group { + grouping mplsstatic_Af-group { + description "MPLS Static Address Family"; - // Type is an MO-Defined-Type - leaf bdid { - description "Bridge Domain Id"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type mplsstatic_AfT; + description "Type of Address Family (IPv4, IPv6, etc.)"; } - } - grouping igmpsnoop_Gl-group { - container eventHist-items { - list EventHistory-list { - key "type"; + leaf name { - // Added containment: Prefix=eventHist - // Acquired From Package igmpsnoop - uses igmpsnoop_EventHistory-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container igmpsnbase-items { + // Prefix local label + container pfxlabel-items { + list PfxLclLbl-list { + key "label"; - // Added containment as a singleton: Prefix=igmpsnbase - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnBase-group; + uses mplsstatic_PfxLclLbl-group; + description "Local Label for an IP Prefix (IPv4 or IPv6) list"; + } + description "Local Label for an IP Prefix (IPv4 or IPv6)"; } - // This objects holds traffic related snooping params - container mctraf-items { + // Named LSP + container lsp-items { + list NamedLSP-list { + key "name"; - // Added containment as a singleton: Prefix=mctraf - // Acquired From Package igmpsnoop - uses igmpsnoop_McTraf-group; + uses mplsstatic_NamedLSP-group; + description "Parent of LSPs with Names list"; + } + description "Parent of LSPs with Names"; } + } - // This objects holds IGMP snooping timers for vlan - container gTimers-items { - - // Added containment as a singleton: Prefix=gTimers - // Acquired From Package igmpsnoop - uses igmpsnoop_GTimers-group; + grouping mplsstatic_PfxLclLbl-group { + description "Local Label for an IP Prefix (IPv4 or IPv6)"; + leaf pfx { + type address_Ip; + description "Local Label Prefix/Subnet"; } - // This objects holds vlan specific IGMP snooping params - container gvlan-items { + leaf label { - // Added containment as a singleton: Prefix=gvlan - // Acquired From Package igmpsnoop - uses igmpsnoop_GVlan-group; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // This Object holds global debug - container gdebug-items { + // This object holds primary nexthop information + // for prefix local label + container nh-items { - // Added containment as a singleton: Prefix=gdebug - // Acquired From Package igmpsnoop - uses igmpsnoop_GDebug-group; + uses mplsstatic_Nh-group; + description "Next Hop Information For Prefix Local Label"; } - // This objects holds multicast router snoop params - container mrouter-items { + // This object holds auto resolve nexthop information + // for prefix local label + container autoresolvenh-items { - // Added containment as a singleton: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouter-group; + uses mplsstatic_AutoResolveNh-group; + description "Auto-Resolved Next Hop"; } - // This objects holds multicast proxy snoop params - container proxy-items { + // This object holds backup nexthop information + // for prefix local label + container backupnh-items { - // Added containment as a singleton: Prefix=proxy - // Acquired From Package igmpsnoop - uses igmpsnoop_Proxy-group; + uses mplsstatic_BackupNh-group; + description "Backup Next Hop Information For Prefix Local Label"; } } - grouping igmpsnoop_EventHistory-group { + grouping mplsstatic_Nh-group { + description "Next Hop Information For Prefix Local Label"; - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; + leaf outLbl { - // Type is an MO-Defined-Type - type igmpsnoop_EhType; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } - - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; - - // Type is an MO-Defined-Type - type igmpsnoop_Size; + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; } } - grouping igmpsnoop_McTraf-group { + grouping mplsstatic_AutoResolveNh-group { + description "Auto-Resolved Next Hop"; - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf holddownTimer { - description "Holddown Timer"; + leaf outLbl { - // Type is an MO-Defined-Type - type mcast_HolddownTimer; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } + } - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf optMcFlood { - description "Opt multicast flood"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; - } + grouping mplsstatic_BackupNh-group { + description "Backup Next Hop Information For Prefix Local Label"; - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf manyToOneEnh { - description "Many to one enhance"; + leaf outLbl { - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } - - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf vpcPeerLinkExc { - description "vpc-peer-link-exc"; - - // Type is an MO-Defined-Type - type ipmcsnoop_VpcPlExclude; + leaf nhAddr { + type address_Ip; + description "Backup Next Hop IP Address"; } - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf ccMode { - description "cc-mode"; + leaf if { - // Type is an MO-Defined-Type - type ipmcsnoop_CcMode; + type nw_IfId; + description "Backup Next Hop Interface"; } } - grouping igmpsnoop_GVlan-group { - - // Inherited From ipmcsnoop:AGVlan - // Type is an MO-Defined-Type - leaf disableNveStRtrPort { - description "Disable NVE Static Router port"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DisableNveStRtrPort; - } + grouping mplsstatic_NamedLSP-group { + description "Parent of LSPs with Names"; - // Inherited From ipmcsnoop:AGVlan - // Type is an MO-Defined-Type - leaf vxlan { - description "Enable IGMP snooping on all vxlan ports "; + leaf name { - // Type is an MO-Defined-Type - type ipmcsnoop_Vxlan; + type mplsstatic_LspName; + description "Name of the Parent LSP"; } - } - - grouping igmpsnoop_GDebug-group { - // Inherited From ipmcsnoop:AGDebug - // Type is an MO-Defined-Type - leaf syslogThreshold { - description " syslog threshold percentage"; + // Cross-connect local label + container xclabel-items { + list XcLclLbl-list { + key "label"; - // Type is an MO-Defined-Type - type ipmcsnoop_SyslogThrshold; + uses mplsstatic_XcLclLbl-group; + description "Local Label for Cross-Connect list"; + } + description "Local Label for Cross-Connect"; } - // Inherited From ipmcsnoop:AGDebug - // Type is an MO-Defined-Type - leaf selfMacCheck { - description "Enable IGMP snooping self-mac-check loopback"; + // Policy local label + container pollabel-items { + list PolicyLclLbl-list { + key "label"; - // Type is an MO-Defined-Type - type ipmcsnoop_SelfMacCheck; + uses mplsstatic_PolicyLclLbl-group; + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6) list"; + } + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6)"; } } - grouping igmpsnoop_InstStats-group { + grouping mplsstatic_XcLclLbl-group { + description "Local Label for Cross-Connect"; - // Total Number of multicast groups - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf totNumMcGrp { - config "false"; - description "Total Number of Multicast Groups"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_LspName; + description "Cross-Connect Label LSP Name"; } - // Invalid packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf invPktsRcvd { - config "false"; - description "Invalid Packets Received"; + leaf label { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // Loopback packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf lpbkPktsRcvd { - config "false"; - description "Loopback Packets Received"; + // This object holds primary nexthop information + // for cross-connect local label + container nh-items { + list XcNh-list { + key "pathId"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsstatic_XcNh-group; + description "Next Hop Information For Cross-Connect FECs list"; + } + description "Next Hop Information For Cross-Connect FECs"; } + } - // packets Flooded - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf pktsFlooded { - config "false"; - description "Packets Flooded"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } + grouping mplsstatic_XcNh-group { + description "Next Hop Information For Cross-Connect FECs"; - // MRD Loopback packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf mrdLpbkPktsRcvd { - config "false"; - description "MRD Loopback Packets Received"; + leaf outLblStack { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_OutLblStack; + description "Outgoing label stack"; } + leaf pathId { + type uint16; + description "Cross-Connect FEC Next Hop Path identifier"; + } + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; + } + } - // No Vlan DB packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf noVlanDbPktsRcvd { - config "false"; - description "No Vlan Db Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping mplsstatic_PolicyLclLbl-group { + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6)"; + leaf pfx { + type address_Ip; + description "Policy-Based Local Label Prefix/Subnet"; } - // Vpc Peer packets sent - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsSent { - config "false"; - description "VPC Peer Packets Sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_LspName; + description "Policy-Based Local Label LSP Name"; } - // Vpc Peer packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsRcvd { - config "false"; - description "VPC Peer Packets Received"; + leaf label { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // Vpc Peer packets send Fail - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsSentFail { - config "false"; - description "VPC Peer Packets Send Fail"; + // This object holds primary nexthop information + // for policy local label + container nh-items { + list PolNh-list { + key "pathId"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsstatic_PolNh-group; + description "Next Hop for Policy FECs list"; + } + description "Next Hop for Policy FECs"; } + } - // Vpc Peer packets receive Fail - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsRcvdFail { - config "false"; - description "VPC Peer Packets Receive Fail"; + grouping mplsstatic_PolNh-group { + description "Next Hop for Policy FECs"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf outLblStack { + + type mplsstatic_OutLblStack; + description "Outgoing Label Stack"; + } + leaf pathId { + type uint16; + description "Policy FEC Next Hop Path Identifier"; + } + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; } } - grouping m6rib_Entity-group { + grouping ulib_LabelTable-group { + description "Label Table. Contains aggregate properties for allocated labels and anchors children that describe the allocated labels"; - // This objects hold per m6rib instance information - container inst-items { + leaf operLabels { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package m6rib - uses m6rib_Inst-group; + type ulib_LabelCnt; + description "Total Number of Labels"; } - } - grouping m6rib_Inst-group { + leaf operIPv4Prefixes { + config "false"; - // This object holds m6rib route db information - container db-items { - list Db-list { - config "false"; - key "type"; + type ulib_LabelCnt; + description "Total Number of IPv4 Prefixes"; + } - // Added containment: Prefix=db - // Acquired From Package m6rib - uses m6rib_Db-group; - } + leaf operIPv6Prefixes { + config "false"; + + type ulib_LabelCnt; + description "Total Number of IPv6 Prefixes"; } - // This objects hold per MRIB information - container dom-items { - list Dom-list { - config "false"; - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package m6rib - uses m6rib_Dom-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // This object holds m6rib route db information - container routedb-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=routedb - // Acquired From Package m6rib - uses m6rib_RouteDb-group; + type nw_AdminSt; + description "Admin State"; } - } - - grouping m6rib_Db-group { - // db type - // Type is an MO-Defined-Type - leaf type { + // Operational state + leaf operSt { config "false"; - description "Database type identifier"; - // Type is an MO-Defined-Type - type m6rib_DbT; + type nw_EntOperSt; + description "Operational State"; } - // This object holds m6rib client information + // Label Table Clients container client-items { - list ClntEntity-list { + list Clients-list { config "false"; key "name"; - // Added containment: Prefix=client - // Acquired From Package m6rib - uses m6rib_ClntEntity-group; + uses ulib_Clients-group; + description "Label Table Clients: other components on the same device acting as clients to the ULIB service list"; } + description "Label Table Clients: other components on the same device acting as clients to the ULIB service"; } - // This object holds m6rib memory information - container memest-items { + // Label Range + container lblrange-items { - // Added containment as a singleton: Prefix=memest - // Acquired From Package m6rib - uses m6rib_MemEstimate-group; + uses ulib_LblRange-group; + description "Allowed MPLS label ranges for dynamically allocated and statically configured labels"; } - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { + // Labels + // Ephemeral data + container lbl-items { + + // Ephemeral data + list Labels-list { config "false"; - key "name"; + key "label"; - // Added containment: Prefix=vrf - // Acquired From Package m6rib - uses m6rib_Vrf-group; + uses ulib_Labels-group; + description "A single MPLS label list"; } + description "A single MPLS label"; } } - grouping m6rib_ClntEntity-group { + grouping ulib_Clients-group { + description "Label Table Clients: other components on the same device acting as clients to the ULIB service"; + leaf name { config "false"; - type string; + + type ulib_ClientName; + description "Name of the ulib client"; } - leaf id { + leaf index { config "false"; type uint32; + description "Index of the ulib client"; } - leaf pid { + leaf uuid { config "false"; type uint32; + description "UUID of the ulib client"; } - leaf mtsSapId { + leaf mtsSap { config "false"; type uint32; + description "MTS-SAP of the client"; } - leaf shMemName { + leaf staleTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Time to wait for clients to reclaim resources before cleaning"; } - leaf notify { + + leaf flag { config "false"; - type boolean; + + type ulib_ClientFlag; + description "Internal flags for the client"; } - leaf staleTimerRunning { + leaf regMsg { config "false"; - type boolean; + type uint32; + description "Number of register messages received from the client"; } - leaf ssmOwner { + leaf convMsg { config "false"; - type boolean; + type uint32; + description "Number of convergence messages received from the client"; } - leaf bidirOwner { + leaf fecMsg { config "false"; - type boolean; + type uint32; + description "Number of FEC messages received from the client"; } - leaf staticOwner { + leaf fecAdd { config "false"; - type boolean; + type uint32; + description "Number of FECs added by the client"; } - leaf sharedOnlyOwner { + leaf ileAdd { config "false"; - type boolean; + type uint32; + description "Number of ILEs created by the client"; } - leaf localJoinOwner { + leaf fecDel { config "false"; - type boolean; + type uint32; + description "Number of FECs deleted by the client"; } - leaf externalOwner { + leaf ileDel { config "false"; - type boolean; + type uint32; + description "Number of ILEs deleted by the client"; } - leaf attachedOwner { + leaf lastXid { config "false"; - type boolean; + type uint32; + description "Last transaction id sent in a FEC transaction by the client"; } - leaf fabricOwner { + leaf fecAck { config "false"; - type boolean; + type uint32; + description "Number of FEC Acknowledgement messages sent to the client"; } + } - // MO for Client notifications - container cnotify-items { - list ClientNotify-list { - config "false"; - key "notifyName"; + grouping ulib_LblRange-group { + description "Allowed MPLS label ranges for dynamically allocated and statically configured labels"; - // Added containment: Prefix=cnotify - // Acquired From Package m6rib - uses m6rib_ClientNotify-group; - } + // Config : Dynamic Label Range + leaf dynLblMin { + + type ulib_DynLblMin; + description "Minimum dynamic label, configured value"; } - } - grouping m6rib_ClientNotify-group { - leaf notifyName { + leaf dynLblMax { + + type ulib_DynLblMax; + description "Maximum dynamic label, configured value"; + } + + // Config : Static Label Range + leaf staticLblMin { + + type ulib_LabelVal; + description "Minimum Static Label, configured value"; + } + + leaf staticLblMax { + + type ulib_LabelVal; + description "Maximum Static Label, configured value"; + } + + // Oper : Dynamic Label Range + leaf operDynLblMin { config "false"; - type string; + + type ulib_LabelVal; + description "Minimum dynamic label, operational value"; } - leaf sent { + + leaf operDynLblMax { config "false"; - type uint64; + + type ulib_LabelVal; + description "Maximum dynamic label, operational value"; } - leaf fail { + + // Oper : Static Label Range + leaf operStaticLblMin { config "false"; - type uint64; + + type ulib_LabelVal; + description "Minimum static label, operational value"; } - leaf rcvd { + + leaf operStaticLblMax { config "false"; - type uint64; + + type ulib_LabelVal; + description "Maximum static label, operational value"; } - leaf ackRcvd { + + // Fault : Static Labels Out Of Range + leaf operStaticLblsOutOfRange { config "false"; - type uint64; + + type ulib_LabelCnt; + description "Number of static labels that are no longer inside the static range due to a change in the configured ranges."; } - leaf ackSent { + } + + grouping ulib_Labels-group { + description "A single MPLS label"; + + // Ephemeral data + leaf label { + config "false"; + type uint32; + description "Label value"; + } + + // Ephemeral data + leaf fecType { + config "false"; + + type ulib_FecType; + description "Corresponding FEC type"; + } + + // Ephemeral data + leaf labelByteStats { config "false"; type uint64; + description "Sum of packet lengths in bytes for incoming packets with this label"; } - leaf ackFail { + + // Ephemeral data + leaf labelPacketStats { config "false"; type uint64; + description "Count of incoming packets with this label"; } - } - grouping m6rib_MemEstimate-group { + // IPv4 FEC + // Ephemeral data + container FecIPv4-items { - // Current maximum memory available - container currmaxgrp-items { - list CurrMaxMB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + uses ulib_FecIPv4-group; + description "Represents an MPLS IPv4 FEC"; + } - // Added containment: Prefix=currmaxgrp - // Acquired From Package m6rib - uses m6rib_CurrMaxMB-group; - } + // IPv6 FEC + // Ephemeral data + container FecIPv6-items { + + uses ulib_FecIPv6-group; + description "Represents an MPLS IPv6 FEC"; + } + + // Policy IPv4 FEC + // Ephemeral data + container FecPolicyIPv4-items { + + uses ulib_FecPolicyIPv4-group; + description "Represents a Policy MPLS IPv4 FEC"; + } + + // Policy IPv6 FEC + // Ephemeral data + container FecPolicyIPv6-items { + + uses ulib_FecPolicyIPv6-group; + description "Represents a Policy MPLS IPv6 FEC"; + } + + // None FEC + // Ephemeral data + container FecNone-items { + + uses ulib_FecNone-group; + description "Represents a 'None' FEC; a FEC that is only defined by an incoming label"; + } + + // SR-TE FEC + // Ephemeral data + container FecSRTE-items { + + uses ulib_FecSRTE-group; + description "Represents an SR-TE FEC"; + } + + // Per-CE FEC + // Ephemeral data + container FecPerCE-items { + + uses ulib_FecPerCE-group; + description "Represents a Per-CE FEC"; + } + + // Reserved FEC + // Ephemeral data + container FecReserved-items { + + uses ulib_FecReserved-group; + description "Placeholder for a reserved FEC number. This is not a real instantiated FEC."; } - // In-Use maximum memory - container inusegrp-items { - list InUseKB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + // Deagg FEC + // Ephemeral data + container FecDeagg-items { - // Added containment: Prefix=inusegrp - // Acquired From Package m6rib - uses m6rib_InUseKB-group; - } + uses ulib_FecDeagg-group; + description "Represents a Deaggregate (Per-VRF) FEC"; } - // Configured maximum memory - container configmaxgrp-items { - list ConfiguredMaxMB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + // ADJ_SID FEC + // Ephemeral data + container FecAdjSID-items { - // Added containment: Prefix=configmaxgrp - // Acquired From Package m6rib - uses m6rib_ConfiguredMaxMB-group; - } + uses ulib_FecAdjSID-group; + description "Represents an Adjacency SID FEC. Used in Segment-Routing for associating a SID with an adjacency"; } - // Estimate maximum memory required - container estgrp-items { - list EstMaxMB-list { + // NHLFE + // Ephemeral data + container Nhlfe-items { + + // Ephemeral data + list Nhlfe-list { config "false"; - key "grpCount srcPerGrp oifPerEntry"; + key "idx"; - // Added containment: Prefix=estgrp - // Acquired From Package m6rib - uses m6rib_EstMaxMB-group; + uses ulib_Nhlfe-group; + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding list"; } + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding"; } } - grouping m6rib_CurrMaxMB-group { - leaf max { - config "false"; - type uint64; - } - leaf grpCount { + grouping ulib_FecIPv4-group { + description "Represents an MPLS IPv4 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf srcPerGrp { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf oifPerEntry { + + // Ephemeral data + leaf tableId { config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - } - grouping m6rib_InUseKB-group { - leaf max { + // Ephemeral data + leaf prefix { config "false"; - type uint64; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf grpCount { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf srcPerGrp { + } + + grouping ulib_FecIPv6-group { + description "Represents an MPLS IPv6 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf oifPerEntry { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - } - grouping m6rib_ConfiguredMaxMB-group { - leaf max { + // Ephemeral data + leaf tableId { config "false"; - type uint64; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf grpCount { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf srcPerGrp { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf oifPerEntry { + } + + grouping ulib_FecPolicyIPv4-group { + description "Represents a Policy MPLS IPv4 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - } - grouping m6rib_EstMaxMB-group { - leaf max { + // Ephemeral data + leaf state { config "false"; - type uint64; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf grpCount { + + // Ephemeral data + leaf tableId { config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf srcPerGrp { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf oifPerEntry { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } } - grouping m6rib_Vrf-group { - leaf name { + grouping ulib_FecPolicyIPv6-group { + description "Represents a Policy MPLS IPv6 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type string; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf cid { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } + + // Ephemeral data leaf tableId { config "false"; - type string; - } - leaf totalNumRoutes { - config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf totalNumGroups { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf starGRoute { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf sgRoute { + } + + grouping ulib_FecNone-group { + description "Represents a 'None' FEC; a FEC that is only defined by an incoming label"; + + // Ephemeral data + leaf label { config "false"; type uint32; + description "None - Forwarding Equivalence Class (FEC) MPLS Label"; } - leaf starGPrfx { + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "None - Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib route group information - container group-items { - list Group-list { - config "false"; - key "grpAddr"; + // Ephemeral data + leaf state { + config "false"; - // Added containment: Prefix=group - // Acquired From Package m6rib - uses m6rib_Group-group; - } + type ulib_FecState; + description "None - Forwarding Equivalence Class (FEC) State"; } } - grouping m6rib_Group-group { - leaf grpAddr { - config "false"; - type address_Ip; - } - leaf grpMasklen { + grouping ulib_FecSRTE-group { + description "Represents an SR-TE FEC"; + + // Ephemeral data + leaf id { config "false"; type uint32; + description "SRTE - Forwarding Equivalence Class (FEC) Identifier"; } - leaf bidir { + + // Ephemeral data + leaf fecType { config "false"; - type boolean; + + type ulib_FecType; + description "SRTE - Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib route source information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + // Ephemeral data + leaf state { + config "false"; - // Added containment: Prefix=source - // Acquired From Package m6rib - uses m6rib_Source-group; - } + type ulib_FecState; + description "SRTE - Forwarding Equivalence Class (FEC) State"; } } - grouping m6rib_Source-group { - leaf srcAddr { - config "false"; - type address_Ip; - } - leaf pending { - config "false"; - type boolean; - } - leaf uptime { + grouping ulib_FecPerCE-group { + description "Represents a Per-CE FEC"; + + // Ephemeral data + leaf nextHopSet { config "false"; - type string; + type uint32; + description "Per-CE Forwarding Equivalence Class (FEC) Next-Hop Set Id"; } - leaf oifcount { + + // Ephemeral data + leaf addressFamily { config "false"; - type uint32; + + type ulib_EphemeralAddressFamily; + description "Per-CE Forwarding Equivalence Class (FEC) Address Family"; } - leaf statsPkts { + + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf statsBytes { + + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf statsRateBuf { + + leaf tableId { config "false"; - type string; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf lispSrcRloc { + } + + grouping ulib_FecReserved-group { + description "Placeholder for a reserved FEC number. This is not a real instantiated FEC."; + + // Ephemeral data + leaf fecType { config "false"; - type string; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf routeIif { + + // Ephemeral data + leaf state { config "false"; - type string; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf rpfNbr { + + // Ephemeral data + leaf tableId { config "false"; - type address_Ip; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf internal { + } + + grouping ulib_FecDeagg-group { + description "Represents a Deaggregate (Per-VRF) FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type boolean; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf rpfNbrUptime { + + // Ephemeral data + leaf state { config "false"; - type string; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf fabricOif { + + // Ephemeral data + leaf tableId { config "false"; - type boolean; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf fabricLoser { + } + + grouping ulib_FecAdjSID-group { + description "Represents an Adjacency SID FEC. Used in Segment-Routing for associating a SID with an adjacency"; + + // Ephemeral data + leaf ifIndex { config "false"; - type boolean; + type uint32; + description "Adjacency SID Forwarding Equivalence Class (FEC) Interface Index"; } - leaf numVpcSviOifs { + + // Ephemeral data + leaf appId { config "false"; type uint32; + description "Adjacency SID Forwarding Equivalence Class (FEC) Application Id"; } - leaf routeMdtIod { + + // Ephemeral data + leaf nextHop { config "false"; - type boolean; + type address_Ip; + description "Adjacency SID Forwarding Equivalence Class (FEC) Next-hop IP Address"; } - leaf mdtEncapIndex { + + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib mpib information - container mpib-items { - list Mpib-list { - config "false"; - key "mpibName"; + leaf state { + config "false"; - // Added containment: Prefix=mpib - // Acquired From Package m6rib - uses m6rib_Mpib-group; - } + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - // This object holds m6rib OIF information - container oif-items { - list Oif-list { - config "false"; - key "oifName"; + leaf tableId { + config "false"; - // Added containment: Prefix=oif - // Acquired From Package m6rib - uses m6rib_Oif-group; - } + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } } - grouping m6rib_Mpib-group { - leaf mpibName { + grouping ulib_Nhlfe-group { + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding"; + + // Ephemeral data + leaf idx { config "false"; - type string; + type uint32; + description "Next Hop Label Forwarding Entry (NHLFE) Index"; } - leaf oifCount { + + // Ephemeral data + leaf ip { config "false"; - type uint32; + type address_Ip; + description "Next Hop Label Forwarding Entry (NHLFE) IP address"; } - leaf staleRoute { + + // Ephemeral data + leaf outLabel { config "false"; - type boolean; + + type ulib_OutLblStack; + description "Next Hop Label Forwarding Entry (NHLFE) Outgoing MPLS label"; } - } - grouping m6rib_Oif-group { - leaf oifName { + // Ephemeral data + leaf interface { config "false"; - type string; + + type ulib_InterfaceStr; + description "Next Hop Label Forwarding Entry (NHLFE) Outgoing Interface"; } - leaf oifUptime { + + // Ephemeral data + leaf outLabelByteStats { config "false"; - type string; + type uint64; + description "Sum of packet lengths in bytes for packets traversing this NHLFE"; } - leaf oifRPF { + + // Ephemeral data + leaf outLabelPacketStats { config "false"; - type boolean; + type uint64; + description "Count of outgoing packets traversing this NHLFE"; } - leaf oifLispEncapEntries { + leaf weight { config "false"; type uint32; + description "Weight of Nexthop Element"; } + } - // This object holds lisp encap information - container lispencap-items { - list LispEncap-list { - config "false"; - key "index"; + grouping mrib_Entity-group { + description "Holds MRIB entity information"; - // Added containment: Prefix=lispencap - // Acquired From Package m6rib - uses m6rib_LispEncap-group; - } + // This objects hold per mrib instance information + container inst-items { + + uses mrib_Inst-group; + description "Holds per MRIB instance information"; } + } - // This object holds m6rib OIF MPIB information - container oifmpib-items { - list OifMpib-list { - config "false"; - key "oifMpibName"; + grouping mrib_Inst-group { + description "Holds per MRIB instance information"; - // Added containment: Prefix=oifmpib - // Acquired From Package m6rib - uses m6rib_OifMpib-group; + // This objects hold per MRIB information + container dom-items { + list Dom-list { + key "name"; + + uses mrib_Dom-group; + description "This objects holds MRIB vrf domain level information list"; } + description "This objects holds MRIB vrf domain level information"; } - } - grouping m6rib_LispEncap-group { - leaf index { - config "false"; - type uint32; - } - leaf srcRloc { - config "false"; - type address_Ip; - } - leaf dstRloc { - config "false"; - type address_Ip; - } - } + container loglevel-items { - grouping m6rib_OifMpib-group { - leaf oifMpibName { - config "false"; - type string; - } - leaf staleOif { - config "false"; - type boolean; + uses mrib_LogLevel-group; + description "Configure logging level"; } - leaf vpcSvi { - config "false"; - type boolean; + + // This object holds mrib route db information + // Ephemeral data + container routeDb-items { + + uses mrib_RouteDb-group; + description "This object holds MRIB route database information"; } } - grouping m6rib_Dom-group { + grouping mrib_Dom-group { + description "This objects holds MRIB vrf domain level information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - config "false"; - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; + description "Domain Controls"; } // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf mtu { - config "false"; - description "Maximum Transmission Unit"; - // Type is an MO-Defined-Type type rtdmc_Mtu; + description "Maximum Transmission Unit"; } // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf autoEnable { - config "false"; - description "Auto Enable"; - // Type is an MO-Defined-Type type rtdmc_AutoEnable; + description "Auto Enable"; } leaf logNbhChng { - config "false"; type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { - config "false"; type boolean; + description "Flush Routes"; } leaf bfd { - config "false"; type boolean; + description "BFD"; } - // This object holds m6rib config information - container config-items { + leaf jpDelay { - // Added containment as a singleton: Prefix=config - // Acquired From Package m6rib - uses m6rib_Config-group; + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - // This object holds m6rib rpf-meter config information - container rpfmeter-items { + leaf regRateLmt { - // Added containment as a singleton: Prefix=rpfmeter - // Acquired From Package m6rib - uses m6rib_RpfMeter-group; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } - // This object holds m6rib last-hop-meter config information - container lasthopmeter-items { + // This object holds mrib config information + container config-items { - // Added containment as a singleton: Prefix=lasthopmeter - // Acquired From Package m6rib - uses m6rib_LastHopMeter-group; + uses mrib_Config-group; + description "Holds MRIB config information"; } - container eventhist-items { + container eventHist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package m6rib - uses m6rib_EventHistory-group; + uses mrib_EventHistory-group; + description "Configure event-history buffers list"; } + description "Configure event-history buffers"; } + container rpfselect-items { + list RpfSelect-list { + key "vrfName srcPfx"; - // This object holds m6rib Notify information - container loglevel-items { - - // Added containment as a singleton: Prefix=loglevel - // Acquired From Package m6rib - uses m6rib_LogLevel-group; + uses mrib_RpfSelect-group; + description "Configure IP multicast RPF select configuration list"; + } + description "Configure IP multicast RPF select configuration"; } - // This object holds m6rib Notify information - container notify-items { + // This object holds global config for mrib + container trace-items { - // Added containment as a singleton: Prefix=notify - // Acquired From Package m6rib - uses m6rib_Notify-group; + uses mrib_Trace-group; + description "This object holds global configuration for Bintrace"; } } - grouping m6rib_Config-group { + grouping mrib_Config-group { + description "Holds MRIB config information"; // Holddown Enable - // Type is an MO-Defined-Type leaf holdEnable { - description "Holddown Enable"; - // Type is an MO-Defined-Type - type m6rib_HoldAdminSt; + type mrib_HoldAdminSt; + description "Holddown Enable"; } // Holddown second - // Type is an MO-Defined-Type leaf holddown { - description "holddown second"; - // Type is an MO-Defined-Type - type m6rib_HoldDownType; - } - leaf compressBit { - type boolean; + type mrib_HoldDownType; + description "holddown second"; } - } - grouping m6rib_RpfMeter-group { - leaf hwDropAll { - type boolean; + // Mode Enable + leaf ModeEnable { + + type mrib_ModeAdminSt; + description "Mode Enable"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf kbps { - description "rpf-meter in killobytes/seconds"; + // Multipath Mode + leaf Mode { - // Type is an MO-Defined-Type - type m6rib_Kbps; + type mrib_MultipathMode; + description "MRIB Multipath Mode"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf burstSize { - description "rpf-meter in killobytes"; + // Multipath Resilient + leaf modeResilient { - // Type is an MO-Defined-Type - type m6rib_BurstSize; + type mrib_ResilientType; + description "MRIB Multipath Resilient"; } - } - grouping m6rib_LastHopMeter-group { - - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf kbps { - description "rpf-meter in killobytes/seconds"; + // Mfdm-buffer-route type + leaf mfdmType { - // Type is an MO-Defined-Type - type m6rib_Kbps; + type mrib_MfdmType; + description "Mfdm buffer route type"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf burstSize { - description "rpf-meter in killobytes"; + // Mfdm-buffer-route-count size + leaf mfdmSize { - // Type is an MO-Defined-Type - type m6rib_BurstSize; + type mrib_MfdmSize; + description "Mfdm buffer route size"; } } - grouping m6rib_EventHistory-group { + grouping mrib_EventHistory-group { + description "Configure event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type - type m6rib_EhType; + type mrib_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { + + type mrib_Size; description "configures buffer size in text/kb"; + } + } - // Type is an MO-Defined-Type - type m6rib_Size; + grouping mrib_RpfSelect-group { + description "Configure IP multicast RPF select configuration"; + leaf srcPfx { + type address_Ip; + description "Source IP prefix address"; + } + + // Vrf name + leaf vrfName { + + type l3_VrfName; + description "Vrf Name for RPF check"; } } - grouping m6rib_LogLevel-group { + grouping mrib_Trace-group { + description "This object holds global configuration for Bintrace"; + leaf traceEnable { + type boolean; + description "Configure multicast and enable bintrace"; + } - // logging leve - // Type is an MO-Defined-Type - leaf level { - description "Logging Level"; + // trace entries + leaf traceEntryCnt { - // Type is an MO-Defined-Type - type m6rib_LogLevel; + type mrib_TraceCountType; + description "Update number of bintrace entries"; } - leaf type { - type string; + + // trace records + leaf traceRecCnt { + + type mrib_TraceCountType; + description "Update number of bintrace record per entry"; } } - grouping m6rib_Notify-group { + grouping mrib_LogLevel-group { + description "Configure logging level"; - // Notify interval - // Type is an MO-Defined-Type - leaf interval { - description "Notify Interval"; + leaf type { - // Type is an MO-Defined-Type - type m6rib_Interval; + type mrib_LogType; + description "Configures logging type"; + } + + leaf level { + + type mrib_LvlType; + description "Configures level values from 0-7"; } } - grouping m6rib_RouteDb-group { + grouping mrib_RouteDb-group { + description "This object holds MRIB route database information"; // This objects hold per pim domain (vrf) information + // Ephemeral data container vrf-items { + + // Ephemeral data list Vrf-list { config "false"; key "name"; - // Added containment: Prefix=vrf - // Acquired From Package m6rib - uses m6rib_Vrf-group; + uses mrib_Vrf-group; + description "This object holds per MRIB domain (vrf) information list"; } + description "This object holds per MRIB domain (vrf) information"; } } - grouping macsec_Entity-group { + grouping mrib_Vrf-group { + description "This object holds per MRIB domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + config "false"; + type string; + description "Vrf Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf totalNumRoutes { + config "false"; + type uint32; + description "Total Number of Routes"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf starGRoute { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type uint32; + description "Star G Count"; } - // This objects hold per macsec instance information. There is - // only one instance of macsec running in the system today - container inst-items { + // Ephemeral data + leaf sgRoute { + config "false"; + type uint32; + description "SG Count"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package macsec - uses macsec_Inst-group; + // Ephemeral data + leaf starGPrfx { + config "false"; + type uint32; + description "Star G Prefix"; } - } - grouping macsec_Inst-group { + // This object holds mrib route group information + // Ephemeral data + container group-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mrib_Group-group; + description "Holds MRIB route group information list"; } + description "Holds MRIB route group information"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping mrib_Group-group { + description "Holds MRIB route group information"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group Address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf grpMasklen { + config "false"; + type uint32; + description "Group Mask Length"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf bidir { + config "false"; + type boolean; + description "Bidirectional flag"; } - } - grouping mcastfwd_Entity-group { + // This object holds mrib route source information + // Ephemeral data + container source-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mrib_Source-group; + description "This object holds MRIB route source information list"; } + description "This object holds MRIB route source information"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping mrib_Source-group { + description "This object holds MRIB route source information"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source Address"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf pending { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type boolean; + description "Pending flag"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { + // Ephemeral data + leaf uptime { config "false"; - description "Operational Errors Qualifier"; + type union { + type string; + type uint64; + } + description "Uptime"; + } - // Type is an MO-Defined-Type - type nw_OperErrQual; + // Ephemeral data + leaf oifcount { + config "false"; + type uint32; + description "OIF Count"; } - // This objects hold per mcastfwd instance information. There is only - // one instance of mcastfwd running in the system today - container inst-items { + // Ephemeral data + leaf statsPkts { + config "false"; + type uint32; + description "Statistics packets"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package mcastfwd - uses mcastfwd_Inst-group; + // Ephemeral data + leaf statsBytes { + config "false"; + type uint32; + description "Statistics Bytes"; } - } - grouping mcastfwd_Inst-group { + // Ephemeral data + leaf statsRateBuf { + config "false"; + type string; + description "Statistics Rate Buffer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf lispSrcRloc { + config "false"; + type string; + description "lisp source rloc"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf routeIif { + config "false"; + type string; + description "Route Incoming Interface"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf rpfNbr { + config "false"; + type string; + description "RPF Neighbor"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf internal { + config "false"; + type boolean; + description "Internal"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf rpfNbrUptime { + config "false"; + type union { + type string; + type uint64; + } + description "uptime of RPF neighbor"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf fabricOif { + config "false"; + type boolean; + description "Fabric OIF"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + // Ephemeral data + leaf fabricLoser { config "false"; - description "Operational Errors Qualifier"; + type boolean; + description "Fabric Loser"; + } - // Type is an MO-Defined-Type - type nw_OperErrQual; + // Ephemeral data + leaf numVpcSviOifs { + config "false"; + type uint32; + description "Number of vpc svi OIFs"; } - // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf jpDelay { - description "Inter Packet Delay"; + // Ephemeral data + leaf routeMdtIod { + config "false"; + type boolean; + description "Route MDT IOD"; + } - // Type is an MO-Defined-Type - type rtdmc_JPDelay; + // Ephemeral data + leaf mdtEncapIndex { + config "false"; + type uint32; + description "MDT Encap Index"; } - // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf nrDelay { - description "Null Register Inter Batch Delay"; + // This object holds mrib mpib information + // Ephemeral data + container mpib-items { - // Type is an MO-Defined-Type - type rtdmc_NRDelay; + // Ephemeral data + list Mpib-list { + config "false"; + key "mpibName"; + + uses mrib_Mpib-group; + description "This object holds MPIB information list"; + } + description "This object holds MPIB information"; } - // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf nrNumRt { - description "Null Register Number of Routes"; + // This object holds mrib OIF information + // Ephemeral data + container oif-items { - // Type is an MO-Defined-Type - type rtdmc_NRNumRt; - } - leaf regStop { - type boolean; + // Ephemeral data + list Oif-list { + config "false"; + key "oifName"; + + uses mrib_Oif-group; + description "This object holds MRIB OIF information list"; + } + description "This object holds MRIB OIF information"; } + } - // This objects hold per igmp domain information - container dom-items { + grouping mrib_Mpib-group { + description "This object holds MPIB information"; - // Added containment as a singleton: Prefix=dom - // Acquired From Package mcastfwd - uses mcastfwd_Dom-group; + // Ephemeral data + leaf mpibName { + config "false"; + type string; + description "MPIB name"; } - container eventhist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package mcastfwd - uses mcastfwd_EventHistory-group; - } + // Ephemeral data + leaf oifCount { + config "false"; + type uint32; + description "OIF count"; + } + + // Ephemeral data + leaf staleRoute { + config "false"; + type boolean; + description "Stale Route"; } } - grouping mcastfwd_Dom-group { + grouping mrib_Oif-group { + description "This object holds MRIB OIF information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf oifName { + config "false"; + type string; + description "OIF name"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Ephemeral data + leaf oifUptime { + config "false"; + type union { + type string; + type uint64; } + description "OIF Uptime"; } - // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf oifRPF { + config "false"; + type boolean; + description "OIF RPF"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf oifLispEncapEntries { + config "false"; + type uint32; + description "Lisp Encap Entries Count"; } - // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf ctrl { - description "Domain Controls"; + // This object holds lisp encap information + // Ephemeral data + container lispEncap-items { - // Type is an MO-Defined-Type - type rtdmc_DomCtrl; + // Ephemeral data + list LispEncap-list { + config "false"; + key "index"; + + uses mrib_LispEncap-group; + description "This object holds Lisp Encapsulation information list"; + } + description "This object holds Lisp Encapsulation information"; } - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - description "Maximum Transmission Unit"; + // This object holds mrib OIF MPIB information + // Ephemeral data + container oifMpib-items { - // Type is an MO-Defined-Type - type rtdmc_Mtu; + // Ephemeral data + list OifMpib-list { + config "false"; + key "oifMpibName"; + + uses mrib_OifMpib-group; + description "This object holds MRIB OIF MPIB information list"; + } + description "This object holds MRIB OIF MPIB information"; } + } - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - description "Auto Enable"; + grouping mrib_LispEncap-group { + description "This object holds Lisp Encapsulation information"; - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; - } - leaf logNbhChng { - type boolean; + // Ephemeral data + leaf index { + config "false"; + type uint32; + description "Lisp Encap Index"; } - leaf flushRoutes { - type boolean; + + // Ephemeral data + leaf srcRloc { + config "false"; + type address_Ip; + description "Source remote location"; } - leaf bfd { - type boolean; + + // Ephemeral data + leaf dstRloc { + config "false"; + type address_Ip; + description "Destination remote location"; } } - grouping mcastfwd_EventHistory-group { - - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + grouping mrib_OifMpib-group { + description "This object holds MRIB OIF MPIB information"; - // Type is an MO-Defined-Type - type mcastfwd_EhType; + // Ephemeral data + leaf oifMpibName { + config "false"; + type string; + description "OIF MPIB name"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text/kb"; + // Ephemeral data + leaf staleOif { + config "false"; + type boolean; + description "Flag indicating if OIF is Stale"; + } - // Type is an MO-Defined-Type - type mcastfwd_Size; + // Ephemeral data + leaf VpcSvi { + config "false"; + type boolean; + description "Flag indicating VPC SVI"; } } - grouping mldsnoop_Entity-group { + grouping msdp_Entity-group { + description "Holds MSDP control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per mld instance information. There is only - // one instance of mld running in the system today + // This objects hold per MSDP instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package mldsnoop - uses mldsnoop_Inst-group; + uses msdp_Inst-group; + description "Holds per MSDP instance information"; } } - grouping mldsnoop_Inst-group { + grouping msdp_Inst-group { + description "Holds per MSDP instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - config "false"; - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // All router multicast group address (GIPo), outer multicast - // encapsulation ip address - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf allRtrMcastEncap { - config "false"; - description "All Router Multicast Encapsulation"; + // This objects hold per domain (vrf) MSDP information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + uses msdp_Dom-group; + description "Holds per domain (vrf) MSDP information list"; + } + description "Holds per domain (vrf) MSDP information"; } - // Flags - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + container loglevel-items { - // Type is an MO-Defined-Type - type ipmcsnoop_InstFlags; + uses msdp_LogLevel-group; + description "Configure logging level"; } + } - // This objects hold per mld snooping domain information - container dom-items { - list Dom-list { - config "false"; - key "encap"; + grouping msdp_Dom-group { + description "Holds per domain (vrf) MSDP information"; - // Added containment: Prefix=dom - // Acquired From Package mldsnoop - uses mldsnoop_Dom-group; - } + leaf origIf { + + type nw_IfId; + description "Originator Interface identifying IP address in RP field of Source-Active message. Supported interfaces include Ethernet-like, port/channel, loopback and vlan interfaces"; } - // This objects hold per Instance statistics operational - // information. This is a singleton within Instance - container inststats-items { + leaf srcActiveMsgIntvl { - // Added containment as a singleton: Prefix=inststats - // Acquired From Package mldsnoop - uses mldsnoop_InstStats-group; + type msdp_SrcActiveMsgIntvl; + description "Source Active message Interval"; } - } - grouping mldsnoop_Dom-group { + leaf reConnIntvl { + + type msdp_ReConnIntvl; + description "Reconnect Interval"; + } + + leaf ctrl { + + type msdp_DomCtrl; + description "Flush routes"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ipmcsnoop:Dom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Id for this domain @@@ This comes from the domain id assigned by the - // PE for the bridge domain - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // msdp databases + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type l2_DomId; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses msdp_Db-group; + description "Holds information about MSDP Database list"; + } + description "Holds information about MSDP Database"; } - leaf encap { - config "false"; - type string; + + // This object holds group limt and source range info + container maxgrp-items { + list MaxGrpP-list { + key "srcPfx"; + + uses msdp_MaxGrpP-group; + description "Holds group limit and source range information list"; + } + description "Holds group limit and source range information"; } + container eventHist-items { + list EventHistory-list { + key "type"; - // Admin State - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + uses msdp_EventHistory-group; + description "Configure event-history buffers list"; + } + description "Configure event-history buffers"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // This object holds MSDP information pertaining to a peer + container peer-items { + list Peer-list { + key "addr"; + + uses msdp_Peer-group; + description "Holds MSDP information pertaining to a peer list"; + } + description "Holds MSDP information pertaining to a peer"; } - // Controls - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + container interleakp-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; + uses msdp_InterLeakP-group; + description "Holds information of Redistribution policy"; } + } - // Flags - // Inherited From ipmcsnoop:Dom - // Modified by Override: mldsnoop:Dom->flags - // Type is an MO-Defined-Type - leaf flags { + grouping msdp_Db-group { + description "Holds information about MSDP Database"; + + // Type of the repository + // Ephemeral data + leaf type { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + type msdp_DbT; + description "Indicates different database type for different show command"; } - // IGMP database - container db-items { - list Db-list { - config "false"; - key "type"; + // Ephemeral data + leaf name { + config "false"; - // Added containment: Prefix=db - // Acquired From Package mldsnoop - uses mldsnoop_Db-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // This objects hold per mld domain statistics operational - // information. This is a singleton within a Dom - container domstats-items { - - // Added containment as a singleton: Prefix=domstats - // Acquired From Package mldsnoop - uses mldsnoop_DomStats-group; - } + // This object holds the MSDP SA-Cache related information + // Ephemeral data + container src-items { - // Multicast router if that is configured statically - container strtrif-items { - list StRtrIf-list { + // Ephemeral data + list Route-list { config "false"; - key "id"; + key "src grp rp"; - // Added containment: Prefix=strtrif - // Acquired From Package mldsnoop - uses mldsnoop_StRtrIf-group; + uses msdp_Route-group; + description "Holds the MSDP SA-Cache related information list"; } + description "Holds the MSDP SA-Cache related information"; } - // Multicast router if @@@ Mulitcast router if in the BD. These can be either - // configured by the admin or discovered through protocols - // like PIM, IGMP, MLD - container rtrif-items { - list RtrIf-list { + // This class holds information of learnt sources + // Ephemeral data + container source-items { + + // Ephemeral data + list Source-list { config "false"; - key "id"; + key "addr"; - // Added containment: Prefix=rtrif - // Acquired From Package mldsnoop - uses mldsnoop_RtrIf-group; + uses msdp_Source-group; + description "Holds information of MSDP sources list"; } + description "Holds information of MSDP sources"; } + } - // Querier policy - container querierp-items { + grouping msdp_Route-group { + description "Holds the MSDP SA-Cache related information"; - // Added containment as a singleton: Prefix=querierp - // Acquired From Package mldsnoop - uses mldsnoop_QuerierP-group; + // Ephemeral data + leaf src { + config "false"; + type address_Ip; + description "Source Address"; } - // Querier state - container querierst-items { + // Ephemeral data + leaf grp { + config "false"; + type address_Ip; + description "Group Address"; + } - // Added containment as a singleton: Prefix=querierst - // Acquired From Package mldsnoop - uses mldsnoop_QuerierSt-group; + // Ephemeral data + leaf rp { + config "false"; + type address_Ip; + description "RP Address"; } - } - grouping mldsnoop_Db-group { + // Ephemeral data + leaf peer { + config "false"; + type address_Ip; + description "IP address of MSDP Peer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf asn { config "false"; - description "Name"; + type string; + description "AS Number"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Ephemeral data + leaf createTs { + config "false"; + type union { + type string; + type uint64; } + description "Creation timestamp of the entry"; } - // Type of the repository - // Inherited From ipmcsnoop:Db - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf expireTs { config "false"; - description "Database Type"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DbT; + type union { + type string; + type uint64; + } + description "Expiry timestamp of the entry"; } - leaf totalMacCount { + + // Ephemeral data + leaf saCnt { config "false"; type uint32; + description "Source-Active Message Request Count"; } - // Multicast Group records - container mcgrp-items { - list McGrpRec-list { - config "false"; - key "addr"; - - // Added containment: Prefix=mcgrp - // Acquired From Package mldsnoop - uses mldsnoop_McGrpRec-group; - } + // Ephemeral data + leaf dataPkt { + config "false"; + type uint32; + description "Count of data packets forwarded"; } } - grouping mldsnoop_McGrpRec-group { + grouping msdp_Source-group { + description "Holds information of MSDP sources"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf addr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type address_Ip; + description "Source Address"; } - // Group address - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf addr { + // Ephemeral data + leaf grpCnt { config "false"; - description "Multicast Group Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type uint32; + description "Number of groups learnt"; } - // Version - // Inherited From ipmcsnoop:McGrpRec - // Modified by Override: mldsnoop:McGrpRec->ver - // Type is an MO-Defined-Type - leaf ver { + // Ephemeral data + leaf grpLimit { config "false"; - description "Version"; + type uint32; + description "Configured group limit"; + } - // Type is an MO-Defined-Type - type mcast_Ver; + // Ephemeral data + leaf srcPfx { + config "false"; + type address_Ip; + description "Source prefix of the corresponding group limit"; } - // EPG entries in mcast group record - container epg-items { - list EpgRec-list { - config "false"; - key "fabEncap"; + // Ephemeral data + leaf violations { + config "false"; + type uint32; + description "Source group exceeds the maximum group limit configured."; + } + } - // Added containment: Prefix=epg - // Acquired From Package mldsnoop - uses mldsnoop_EpgRec-group; - } + grouping msdp_MaxGrpP-group { + description "Holds group limit and source range information"; + leaf srcPfx { + type address_Ip; + description "Source prefix"; } - // MLD report record snooped by mld-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf maxGrp { - // Added containment: Prefix=rep - // Acquired From Package mldsnoop - uses mldsnoop_ReportRec-group; - } + type msdp_MaxGrpLimit; + description "Max Group count"; } - } - - grouping mldsnoop_EpgRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - leaf fabEncap { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } + } - // Epg id, identified using the circuit endpoint - // id in the system - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Endpoint Group ID"; + grouping msdp_EventHistory-group { + description "Configure event-history buffers"; - // Type is an MO-Defined-Type - type l2_DomId; + leaf type { + + type msdp_EhType; + description "configures type of event history"; } - // MLD report record snooped by mld-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf size { - // Added containment: Prefix=rep - // Acquired From Package mldsnoop - uses mldsnoop_ReportRec-group; - } + type msdp_Size; + description "configures buffer size in text/kb"; } } - grouping mldsnoop_ReportRec-group { + grouping msdp_Peer-group { + description "Holds MSDP information pertaining to a peer"; + leaf addr { + type address_Ip; + description "IP address of MSDP Peer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Administrative state up/down + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Administrative state enabled/disabled"; } - // Multicast traffic source - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf mcastSrc { - config "false"; - description "Multicast Source Address"; + // source interface + leaf srcIf { - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type nw_IfId; + description "Source Interface. Supported interfaces include Ethernet-like, port/channel, loopback and vlan interfaces"; } - // Version - // Inherited From ipmcsnoop:ReportRec - // Modified by Override: mldsnoop:ReportRec->ver - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Remote ASN + leaf asn { - // Type is an MO-Defined-Type - type mcast_Ver; + type msdp_Asn; + description "Autonomous System Number"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf filtMode { - config "false"; - description "Filter Mode"; + // sa-limit + leaf srcActiveMsgLimit { - // Type is an MO-Defined-Type - type mcast_FiltMode; + type msdp_SrcActiveMsgLimit; + description "Source Active msg Limit"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Type is an MO-Defined-Type - type ipmcsnoop_RepFlags; + type msdp_KaIntvl; + description "Keepalive interval, how often you send keepalives"; } - // OIF list (outgoing interface list) - container oif-items { - list OIFRec-list { - config "false"; - key "id"; + // Keepalive timeout + leaf kaTimeout { - // Added containment: Prefix=oif - // Acquired From Package mldsnoop - uses mldsnoop_OIFRec-group; - } + type msdp_KaTimeout; + description "Keepalive Timeout"; } - } - grouping mldsnoop_OIFRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Operationsl state + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type msdp_OperSt; + description "Operational Status"; } - // Multicast traffic source - // Inherited From ipmcsnoop:OIFRec - // Type is an MO-Defined-Type - leaf id { + // Remote port of TCP connection to this peer + leaf remPort { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type l4_Port; + description "Remote TCP connection port to this peer"; } - // Host Record List (Used for Explicit Host Tracking) - container host-items { - list HostRec-list { - config "false"; - key "addr"; + // Local port of TCP connection to this peer + leaf localPort { + config "false"; - // Added containment: Prefix=host - // Acquired From Package mldsnoop - uses mldsnoop_HostRec-group; - } + type l4_Port; + description "Local TCP connection port to this peer"; } - } - grouping mldsnoop_HostRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Reason for last reset + leaf lastResetOperQual { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type msdp_LastResetT; + description "Reason for last reset"; + } + leaf discontinuityTs { + config "false"; + type union { + type string; + type uint64; } + description "Discontinuity Time"; } - leaf addr { + leaf upTs { config "false"; - type address_Ip; + type union { + type string; + type uint64; + } + description "Uptime"; } - } - - grouping mldsnoop_DomStats-group; - - grouping mldsnoop_StRtrIf-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + leaf connTmrTs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "Connect Timer Timestamp"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Count of established transitions + leaf establishTransitions { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_Counter32; + description "Count of established transitions"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf encap { - config "false"; - type string; + + // This object holds authentication policy information + container auth-items { + + uses msdp_AuthP-group; + description "Holds Authentication Policy information"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - container rtvrfMbr-items { + // This object holds mesh group information + container meshgrp-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses msdp_MeshGrp-group; + description "Holds mesh group policy information"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // SA policy MO + container rtctrl-items { + list RtCtrlP-list { + key "direction"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses msdp_RtCtrlP-group; + description "Source Active Route Control policy list"; } + description "Source Active Route Control policy"; + } + + // This object holds the MSDP peer related statistics + // Ephemeral data + container peerstats-items { + + uses msdp_PeerStats-group; + description "Holds the MSDP peer related statistics"; } } - grouping mldsnoop_RtrIf-group { + grouping msdp_AuthP-group { + description "Holds Authentication Policy information"; - // Identifier for the if - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Authentication type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type msdp_AuthT; + description "Authentication type"; } - } - grouping mldsnoop_QuerierP-group { + // Authentication key + leaf key { + + type msdp_AuthKey; + description "Authentication key"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: mldsnoop:QuerierP->ver - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; - } + grouping msdp_MeshGrp-group { + description "Holds mesh group policy information"; - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; + // Mesh Group name + leaf grpName { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type msdp_GrpNameT; + description "Mesh Group Name"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - config "false"; - description "Query Interval"; + leaf name { - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - config "false"; - description "Response Interval"; + leaf descr { - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; - - // Type is an MO-Defined-Type - type mcast_RobustFactor; - } + grouping msdp_RtCtrlP-group { + description "Source Active Route Control policy"; - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - config "false"; - description "Startup Query Interval"; + // Prefix list to control the distribution + leaf pfxList { - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type msdp_PrefixT; + description "Prefix list to control the distribution"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - config "false"; - description "Startup Query Count"; + leaf name { - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + leaf descr { - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type naming_Descr; + description "Description of the specified attribute"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - config "false"; - description "Timeout"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type rtctrl_RtCtrlDir; + description "Direction"; + } + leaf rtMap { + type string; + description "Route Map"; } } - grouping mldsnoop_QuerierSt-group { + grouping msdp_PeerStats-group { + description "Holds the MSDP peer related statistics"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf lastMessageRcvd { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type union { + type string; + type uint64; } + description "Last Message Received Timestamp"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // Count of SA requests received + // Ephemeral data + leaf saReqRcvd { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Count of SA Request Received"; } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: mldsnoop:QuerierSt->ver - // Type is an MO-Defined-Type - leaf ver { + // Count of SA requests sent + // Ephemeral data + leaf saReqSent { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type nw_Counter32; + description " Count of SA Request Sent"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { + // Count of SA responses received + // Ephemeral data + leaf saRspRcvd { config "false"; - description "Address"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type nw_Counter32; + description "Count of SA Response Received"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { + // Count of SA responses sent + // Ephemeral data + leaf saRspSent { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type nw_Counter32; + description "Count of SA Response Sent"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { + // Count of control messages received + // Ephemeral data + leaf ctrlMessagesRcvd { config "false"; - description "Response Interval"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type nw_Counter32; + description "Count of Control Messages Received"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { + // Count of control messages sent + // Ephemeral data + leaf ctrlMessagesSent { config "false"; - description "Robustness Factor"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type nw_Counter32; + description "Count of Control Messages Sent"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { + // Count of data packets received + // Ephemeral data + leaf dataMessagesRcvd { config "false"; - description "Startup Query Interval"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type nw_Counter32; + description "Count of Data Messages Received"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { + // Count of data packets sent + // Ephemeral data + leaf dataMessagesSent { config "false"; - description "Startup Query Count"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type nw_Counter32; + description "Count of Data Messages Sent"; } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { + // Count of notifications received + // Ephemeral data + leaf notifRcvd { config "false"; - description "Last Member Query Interval"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type nw_Counter32; + description "Count of SA Notifications Received"; } - // Querier flags - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf flags { + // Count of SA notifications sent + // Ephemeral data + leaf notifSent { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmcsnoop_QuerierFlags; + type nw_Counter32; + description "Count of SA Notifications Sent"; } - } - grouping mldsnoop_InstStats-group; + // Count of keepalive messages received + // Ephemeral data + leaf kaRcvd { + config "false"; - grouping mpls_Entity-group { + type nw_Counter32; + description "Count of Keepalives Received"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Count of keepalive messages sent + // Ephemeral data + leaf kaSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter32; + description "Count of Keepalives Sent"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Count of RPF check failures + // Ephemeral data + leaf rpfChkFail { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter32; + description "Count of RPF Check Failures"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Count of connection attempts + // Ephemeral data + leaf connAttempts { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_Counter32; + description "Count of Connection Attempts"; } - // This object holds mpls information that is operated at a - // interface level - container If-items { - list If-list { - key "id"; + // Count of SA-cache entries learnt from this peer + // Ephemeral data + leaf rtCnt { + config "false"; - // Added containment: Prefix=If - // Acquired From Package mpls - uses mpls_If-group; - } + type nw_Counter32; + description "Count of SG cache entries learnt"; } } - grouping mpls_If-group { + grouping msdp_InterLeakP-group { + description "Holds information of Redistribution policy"; - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Administrative state of interface"; + leaf pfxList { - // Type is an MO-Defined-Type - type mpls_OperSt; + type msdp_PrefixT; + description "pfxlist name"; } - leaf deleted { - config "false"; - type boolean; + + leaf srcLeak { + + type msdp_Source; + description "Source of route leak distribution"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type nw_IfId; + type rtleak_Scope; + description "Scope"; } - - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_IfAdminSt; + leaf rtMap { + type string; + description "Route Map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - container rtvrfMbr-items { + grouping msdp_LogLevel-group { + description "Configure logging level"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf type { + + type msdp_LogType; + description "Configures logging type"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf level { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type msdp_LvlType; + description "Configures log level"; } } - grouping mplsstatic_Entity-group { + grouping mvpn_Entity-group { + description "Holds MVPN control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // MPLS Static address family domain - container af-items { - list Af-list { - key "type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=af - // Acquired From Package mplsstatic - uses mplsstatic_Af-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - grouping mplsstatic_Af-group { - - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type of address family (IPv4, IPv6, etc.)"; + // This object holds per mvpn instance information + container inst-items { - // Type is an MO-Defined-Type - type mplsstatic_AfT; + uses mvpn_Inst-group; + description "Holds per MVPN instance information"; } + } + + grouping mvpn_Inst-group { + description "Holds per MVPN instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Prefix local label - container pfxlabel-items { - list PfxLclLbl-list { - key "label"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=pfxlabel - // Acquired From Package mplsstatic - uses mplsstatic_PfxLclLbl-group; - } + type nw_AdminSt; + description "Admin State"; } - // Named LSP - container lsp-items { - list NamedLSP-list { - key "name"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=lsp - // Acquired From Package mplsstatic - uses mplsstatic_NamedLSP-group; - } + type nw_InstCtrl; + description "Controls"; } - } - grouping mplsstatic_PfxLclLbl-group { - leaf pfx { - type address_Ip; + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + // Inter Packet Delay + leaf jpDelay { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type rtdmc_JPDelay; + description "Inter Packet Delay"; } - // This object holds primary nexthop information - // for prefix local label - container nh-items { + // Null Register Inter Batch Delay + leaf nrDelay { - // Added containment as a singleton: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_Nh-group; + type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } - // This object holds auto resolve nexthop information - // for prefix local label - container autoresolvenh-items { + // Number of routes in a null register + leaf nrNumRt { - // Added containment as a singleton: Prefix=autoresolvenh - // Acquired From Package mplsstatic - uses mplsstatic_AutoResolveNh-group; + type rtdmc_NRNumRt; + description "Null Register Number of Routes"; + } + leaf regStop { + type boolean; + description "Register until stops"; } - // This object holds backup nexthop information - // for prefix local label - container backupnh-items { + // This object holds per mvpn domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Added containment as a singleton: Prefix=backupnh - // Acquired From Package mplsstatic - uses mplsstatic_BackupNh-group; + uses mvpn_Dom-group; + description "Holds per mvpn domain (vrf) information list"; + } + description "Holds per mvpn domain (vrf) information"; } } - grouping mplsstatic_Nh-group { - - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; - - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + grouping mvpn_Dom-group { + description "Holds per mvpn domain (vrf) information"; + leaf asmUseSharedTree { + type boolean; + description "ASM use shared tree configured"; } - leaf nhAddr { - type address_Ip; + leaf enforceBGPmdtSafi { + type boolean; + default "true"; + description "Depend on BGP MDT SAFI for auto-discovery"; } - } - grouping mplsstatic_AutoResolveNh-group { - - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; + leaf pimHelloIntvl { - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + type mvpn_PimHelloIntvl; + description "PIM hello interval used between peers"; } - } - - grouping mplsstatic_BackupNh-group { - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; + leaf pimJoinPruneIntvl { - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + type mvpn_PimJPIntvl; + description "Join-Prune interval used between peers"; } - leaf nhAddr { + leaf mdtDefaultGroup { type address_Ip; + description "IP multicast group address"; + } + leaf mdtDefaultEnabled { + type boolean; + description "This property helps us manage mdtDefaultGroup property"; } - // Type is an MO-Defined-Type - leaf if { - description "Next Hop Interface"; + leaf mdtSourceIntf { - // Type is an MO-Defined-Type type nw_IfId; + description "Source interface to be used in the backbone network"; } - } - - grouping mplsstatic_NamedLSP-group { - leaf name { - type string; + leaf mdtSrcEnabled { + type boolean; + description "This property helps us manage mdtSourceIntf property"; } - // Cross-connect local label - container xclabel-items { - list XcLclLbl-list { - key "label"; + leaf name { - // Added containment: Prefix=xclabel - // Acquired From Package mplsstatic - uses mplsstatic_XcLclLbl-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Policy local label - container pollabel-items { - list PolicyLclLbl-list { - key "label"; + // This object holds Data MDT settings per group + // address in a dom + container group-items { + list DataGrp-list { + key "grpAddr"; - // Added containment: Prefix=pollabel - // Acquired From Package mplsstatic - uses mplsstatic_PolicyLclLbl-group; + uses mvpn_DataGrp-group; + description "This Object holds MDT data per Group Information list"; } + description "This Object holds MDT data per Group Information"; } } - grouping mplsstatic_XcLclLbl-group { - leaf name { - type string; + grouping mvpn_DataGrp-group { + description "This Object holds MDT data per Group Information"; + leaf grpAddr { + type address_Ip; + description + "List of group range prefixes, only + multicast allowed"; } - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + leaf rtMap { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type mvpn_RtMapType; + description "Route Map Name to control the distribution"; } + } - // This object holds primary nexthop information - // for cross-connect local label - container nh-items { - list XcNh-list { - key "pathId"; + grouping nd_Entity-group { + description "Neighbor Discover Entity"; - // Added containment: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_XcNh-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping mplsstatic_XcNh-group { - leaf outLblStack { - type string; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf pathId { - type uint16; + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - leaf nhAddr { - type address_Ip; + + // This objects hold per nd instance information. There is + // only one instance of nd running in the system today + container inst-items { + + uses nd_Inst-group; + description "Neighbor Discovery Instance"; } } - grouping mplsstatic_PolicyLclLbl-group { - leaf pfx { - type address_Ip; - } - leaf name { - type string; - } + grouping nd_Inst-group { + description "Neighbor Discovery Instance"; - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + // Solicitated neighbor advertisement + leaf solicitNghbrAdvertisement { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type nw_AdminSt; + default "disabled"; + description "Solicit neighbor advertisement"; } - // This object holds primary nexthop information - // for policy local label - container nh-items { - list PolNh-list { - key "pathId"; + // Solicitated neighbor advertisement with complete entry + leaf acceptSolicitNghbrEntry { - // Added containment: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_PolNh-group; - } + type nd_SolicitAcceptValue; + description "Accept or no-accept entry in Solicit neighbor advertisement"; } - } - grouping mplsstatic_PolNh-group { - leaf outLblStack { - type string; + // Solicitated neighbor advertisement Probe value Probe Value as 0 means no-probe + leaf probeIntervalForSolicitNghbr { + + type nd_SolicitProbeValue; + description "Probe interval"; } - leaf pathId { - type uint16; + + // Aging timer for nd cached entires + leaf agingInterval { + + type nd_AgingInterval; + description "Aging Interval"; } - leaf nhAddr { - type address_Ip; + + // Off-list timer for neighbor discovery + leaf offListTimeout { + + type nd_OffListTimeout; + description "Off-list timeout"; } - } - grouping ulib_LabelTable-group { + // IPv6 Route Distance + leaf ipv6AdjRouteDistance { - // Type is an MO-Defined-Type - leaf operLabels { - config "false"; - description "Total Number of Labels"; + type nd_adjRouteDist; + description "Ipv6 Adjacency Route Distance"; + } - // Type is an MO-Defined-Type - type ulib_LabelCnt; + // ND Cache Limit + leaf cacheLimit { + + type nd_NdCacheLimit; + description "Cache Limit"; } - // Type is an MO-Defined-Type - leaf operIPv4Prefixes { - config "false"; - description "Total Number of IPv4 Prefixes"; + // ND Cache SysLog Rate + leaf cacheSyslogRate { - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nd_NdCacheSyslogRate; + description "Cache Syslog Rate"; } - // Type is an MO-Defined-Type - leaf operIPv6Prefixes { + // Config error in this MO + leaf configErr { config "false"; - description "Total Number of IPv6 Prefixes"; - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nd_ConfigErrInst; + description "Config error Inst"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_InstCtrl; + description "Controls"; } - // Label Table Clients - container client-items { - list Clients-list { - config "false"; + // This objects hold per ND domain (vrf) information + container dom-items { + list Dom-list { key "name"; - // Added containment: Prefix=client - // Acquired From Package ulib - uses ulib_Clients-group; + uses nd_Dom-group; + description "Neighbor Discovery Domain list"; } + description "Neighbor Discovery Domain"; } - // Label Range - container lblrange-items { + // Glean throttling helps to discard packets at line card when + // adjacency of the next hop is getting resolved. + // Ref: + // Guide: Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide + // Chapter: Configuring IPv4 + container ipv6gleanthrottle-items { - // Added containment as a singleton: Prefix=lblrange - // Acquired From Package ulib - uses ulib_LblRange-group; + uses nd_IpV6Throttle-group; + description "IPV6 throttling"; } - // Labels - container lbl-items { - list Labels-list { - config "false"; - key "label"; + // This object holds IPv6 ND Sync for VPC + container vpc-items { - // Added containment: Prefix=lbl - // Acquired From Package ulib - uses ulib_Labels-group; - } + uses nd_Vpc-group; + description "Ipv6 Nd Synchronize"; } - } - grouping ulib_Clients-group { - leaf name { - config "false"; - type string; - } - leaf index { - config "false"; - type uint32; - } - leaf uuid { - config "false"; - type uint32; - } - leaf mtsSap { - config "false"; - type uint32; - } - leaf staleTime { - config "false"; - type string; + // Ephemeral data + container l2stat-items { + + uses nd_L2Stat-group; + description "L2 Interface Statistics"; } - // Type is an MO-Defined-Type - leaf flag { - config "false"; - description "Internal flags for the client"; + // Ephemeral data + container offliststat-items { - // Type is an MO-Defined-Type - type ulib_ClientFlag; - } - leaf regMsg { - config "false"; - type uint32; - } - leaf convMsg { - config "false"; - type uint32; - } - leaf fecMsg { - config "false"; - type uint32; - } - leaf fecAdd { - config "false"; - type uint32; - } - leaf ileAdd { - config "false"; - type uint32; + // Ephemeral data + list OffListVlan-list { + config "false"; + key "vlanId addr"; + + uses nd_OffListVlan-group; + description "ND offlist vlan statistics list"; + } + description "ND offlist vlan statistics"; } - leaf fecDel { - config "false"; - type uint32; + + // Ephemeral data + container proxystat-items { + + uses nd_ProxyStat-group; + description "ND Proxy Statistics"; } - leaf ileDel { - config "false"; - type uint32; + + // icmpv6 packet counters (global) + // Ephemeral data + container glblpktstats-items { + + uses nd_GlobalTrafficStats-group; + description "ICMPv6/ND global traffic counters"; } - leaf lastXid { - config "false"; - type uint32; + + // Link Local Global VADDR statistics + // Ephemeral data + container vaddrllstat-items { + + // Ephemeral data + list VaddrLinkLocalStat-list { + config "false"; + key "vAddr"; + + uses nd_VaddrLinkLocalStat-group; + description "ICMPv6/ND link local vaddr statistics list"; + } + description "ICMPv6/ND link local vaddr statistics"; } - leaf fecAck { - config "false"; - type uint32; + + // Ephemeral data + container vpcstat-items { + + uses nd_VPCStat-group; + description "ND/ICMPv6 VPC statistics"; } } - grouping ulib_LblRange-group { + grouping nd_Dom-group { + description "Neighbor Discovery Domain"; - // Config : Dynamic Label Range - // Type is an MO-Defined-Type - leaf dynLblMin { - description "Minimum dynamic label, configured value"; + leaf name { - // Type is an MO-Defined-Type - type ulib_DynLblMin; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf dynLblMax { - description "Maximum dynamic label, configured value"; + // ND databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ulib_DynLblMax; + uses nd_Db-group; + description "Database list"; + } + description "Database"; } - // Config : Static Label Range - // Type is an MO-Defined-Type - leaf staticLblMin { - description "Minimum Static Label, configured value"; + // This object holds nd information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_If-group; + description "Neighbor Discovery Interface list"; + } + description "Neighbor Discovery Interface"; } - // Type is an MO-Defined-Type - leaf staticLblMax { - description "Maximum Static Label, configured value"; - - // Type is an MO-Defined-Type - type ulib_LabelVal; - } + // Only Global level VADDR statistics + // Ephemeral data + container vaddrstatglobal-items { - // Oper : Dynamic Label Range - // Type is an MO-Defined-Type - leaf operDynLblMin { - config "false"; - description "Minimum dynamic label, operational value"; + // Ephemeral data + list VaddrGlobalStat-list { + config "false"; + key "vAddr"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_VaddrGlobalStat-group; + description "ND offlist vlan statistics list"; + } + description "ND offlist vlan statistics"; } + } - // Type is an MO-Defined-Type - leaf operDynLblMax { + grouping nd_Db-group { + description "Database"; + + // Type of the repository + leaf type { config "false"; - description "Maximum dynamic label, operational value"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type nd_DbT; + description "Type"; } - // Oper : Static Label Range - // Type is an MO-Defined-Type - leaf operStaticLblMin { + leaf name { config "false"; - description "Minimum static label, operational value"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf operStaticLblMax { - config "false"; - description "Maximum static label, operational value"; + // ND adjacency definitions + container adj-items { + list AdjEp-list { + config "false"; + key "ifId addr"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } + } - // Fault : Static Labels Out Of Range - // Type is an MO-Defined-Type - leaf operStaticLblsOutOfRange { + grouping nd_AdjEp-group { + description "Adjacency"; + + // Logical interface that this ep is associated with + leaf ifId { config "false"; - description "Number of static labels that are no longer inside the static range due to a change in the configured ranges."; - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nw_IfId; + description "Logical Interface ID"; } - } - grouping ulib_Labels-group { - leaf label { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nd_AdjOperSt; + description "Operational State"; } - leaf fecType { + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf labelByteStats { + leaf addr { config "false"; - type uint64; + type address_Ip; + description "IPv6 address"; } - leaf labelPacketStats { + + // Mac address + leaf mac { config "false"; - type uint64; + + type nd_AdjMac; + description "MAC"; } + } - // IPv4 FEC - container FecIPv4-items { + grouping nd_If-group { + description "Neighbor Discovery Interface"; - // Added containment as a singleton: Prefix=FecIPv4 - // Acquired From Package ulib - uses ulib_FecIPv4-group; + // Extract next hop MAC address embedded in IPV6 address + leaf macExtract { + + type nd_MacExtract; + description "Extract next hop MAC address"; } - // IPv6 FEC - container FecIPv6-items { + // Disable sending RDNSS in + // Router-Advertisement messages + leaf dnsSuppress { - // Added containment as a singleton: Prefix=FecIPv6 - // Acquired From Package ulib - uses ulib_FecIPv6-group; + type nw_AdminSt; + default "disabled"; + description "Do not send RDNSS in router advertisement"; } - // Policy IPv4 FEC - container FecPolicyIPv4-items { + // Disable sending DNSSL (DNS search-list) in + // Router-Advertisement messages + leaf dnsSearchListSuppress { - // Added containment as a singleton: Prefix=FecPolicyIPv4 - // Acquired From Package ulib - uses ulib_FecPolicyIPv4-group; + type nw_AdminSt; + default "disabled"; + description "Do not send DNSSL in router advertisement"; } - // Policy IPv6 FEC - container FecPolicyIPv6-items { + // Disable sending Route Information Options in RA messages + leaf routeSuppress { - // Added containment as a singleton: Prefix=FecPolicyIPv6 - // Acquired From Package ulib - uses ulib_FecPolicyIPv6-group; + type nw_AdminSt; + default "disabled"; + description "Do Not send Route Information in RA"; } - // None FEC - container FecNone-items { + // Set Default Router Preference Value (RFC 4191) + leaf routerPreference { - // Added containment as a singleton: Prefix=FecNone - // Acquired From Package ulib - uses ulib_FecNone-group; + type nd_RtPrefForCmd; + default "unspecified"; + description "Set Router Preference (RFC 4191)"; } - // SR-TE FEC - container FecSRTE-items { + // Interface controls for: + // redirects, managed-config-flag, other-config-flag, + // supress-ra, supress-ra-mtu + leaf ctrl { - // Added containment as a singleton: Prefix=FecSRTE - // Acquired From Package ulib - uses ulib_FecSRTE-group; + type nd_IfControl; + description "Controls"; } - // Per-CE FEC - container FecPerCE-items { + // Neighbor Solicitation: Sent by a node to determine the + // link-layer address of a neighbor, or to verify that a + // neighbor is still reachable via a cached link-layer + // address. Neighbor Solicitations are also used for + // Duplicate Address Detection. Retransmission interval between IPv6 neighbor + // solication messages + leaf nsIntvl { - // Added containment as a singleton: Prefix=FecPerCE - // Acquired From Package ulib - uses ulib_FecPerCE-group; + type nd_NsIntvl; + description "Neighbor Solicit Interval"; } - // Reserved FEC - container FecReserved-items { + // Retransmission retry count sending neighbor + // soliciation messages + // + // Routers send out Router Advertisement messages + // periodically, or in response to Router Solicitations Interval between sending ICMPv6 router advertisement + // messages + leaf raIntvl { - // Added containment as a singleton: Prefix=FecReserved - // Acquired From Package ulib - uses ulib_FecReserved-group; + type nd_RaIntvl; + description "Router Advertisement Interval"; } - // Deagg FEC - container FecDeagg-items { + // Interval between RA transmissions minimum + leaf raIntvlMin { - // Added containment as a singleton: Prefix=FecDeagg - // Acquired From Package ulib - uses ulib_FecDeagg-group; + type nd_RaIntvlMin; + description "Router Advertisement Interval Minimum"; } - // ADJ_SID FEC - container FecAdjSID-items { + // Router Advertisement (RA) messages also contain Internet + // parameters such as the hop limit that hosts should + // use in outgoing packets and, optionally, link parameters + // such as the link MTU. This facilitates centralized + // administration of critical parameters that can be set on + // routers and automatically propagated to all attached + // hosts Hop limit + leaf hopLimit { - // Added containment as a singleton: Prefix=FecAdjSID - // Acquired From Package ulib - uses ulib_FecAdjSID-group; + type nd_HopLimit; + description "Hop limit"; } - // NHLFE - container Nhlfe-items { - list Nhlfe-list { - config "false"; - key "idx"; + // Link MTU (sent in RA message) + leaf mtu { - // Added containment: Prefix=Nhlfe - // Acquired From Package ulib - uses ulib_Nhlfe-group; - } + type nd_Mtu; + description "MTU"; } - } - grouping ulib_FecIPv4-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; - } - } + // Router Lifetime. The lifetime associated with the + // default router in units of seconds. + leaf raLifetime { - grouping ulib_FecIPv6-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; + type nd_RaLifetime; + description "Router Advertisement lifetime"; } - } - grouping ulib_FecPolicyIPv4-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; - } - } + // Reachable time. The time, in milliseconds, that a + // node assumes a neighbor is reachable after having + // received a reachability confirmation. Used by the + // Neighbor Unreachability Detection algorithm + leaf reachableTime { - grouping ulib_FecPolicyIPv6-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; + type nd_ReachableTime; + description "Reachable time"; } - leaf tableId { - config "false"; - type string; + + // Retransmit timer. The time, in milliseconds, between + // retransmitted Neighbor Solicitation messages. Used + // by address resolution and the Neighbor Unreachability + // Detection algorithm. A value of zero means unspecified + // (by this router) + leaf retransTimer { + + type nd_RetransTimer; + description "Retransmit timer"; } - leaf prefix { - config "false"; - type string; + + // Duplicate address detection attempts limit + leaf dadAttempts { + + type nd_DadAttempts; + description "Dad attempts"; } - leaf maskLength { - config "false"; - type uint8; + + // Discover host from DADNS + leaf dadnsInterval { + + type nd_DadnsInverval; + description "Dadns interval"; } - } - grouping ulib_FecNone-group { - leaf label { + // To Handle the config fault for this MO + leaf configError { config "false"; - type uint32; + + type nd_ConfigErr; + default "noerror"; + description "Config error"; } - leaf fecType { - config "false"; - type string; + + // Delete adj on mac delete notif without probe + leaf delAdjOnMacDel { + + type nw_AdminSt; + default "disabled"; + description "Delete adj on mac delete notif without probe"; } - leaf state { - config "false"; - type string; + leaf bootFileUrl { + type string { + length "0..128"; + } + description "The URL for a boot file in string"; } - } - grouping ulib_FecSRTE-group { + // Interface ID of this endpoint leaf id { - config "false"; - type uint32; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - } - grouping ulib_FecPerCE-group { - leaf nextHopSet { - config "false"; - type uint32; - } - leaf addressFamily { - config "false"; - type string; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping ulib_FecReserved-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - } + // Static ND adjacency definitions + container sadj-items { + list StAdjEp-list { + config "false"; + key "addr"; - grouping ulib_FecDeagg-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; + uses nd_StAdjEp-group; + description "ND Static Adjacency list"; + } + description "ND Static Adjacency"; } - } - grouping ulib_FecAdjSID-group { - leaf ifIndex { - config "false"; - type uint32; - } - leaf appId { - config "false"; - type uint32; - } - leaf nextHop { - config "false"; - type address_Ip; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - } + // DNS Search-list statistics + // Ephemeral data + container dnsslif-items { - grouping ulib_Nhlfe-group { - leaf idx { - config "false"; - type uint32; - } - leaf ip { - config "false"; - type string; - } - leaf outLabel { - config "false"; - type string; - } - leaf interface { - config "false"; - type string; - } - leaf outLabelByteStats { - config "false"; - type uint64; - } - leaf outLabelPacketStats { - config "false"; - type uint64; + uses nd_DNSIfSearchListStats-group; + description "ND interface DNS statistics"; } - } - grouping mrib_Entity-group { + // DNS Server statistics + // Ephemeral data + container dnsstat-items { - // This objects hold per mrib instance information - container inst-items { + uses nd_DNSIfStats-group; + description "ND interface DNS statistics"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package mrib - uses mrib_Inst-group; + // This object holds all IPv6 ND Routes as children + container routes-items { + + uses nd_IfRoutes-group; + description "Ipv6 Nd Route All"; } - } - grouping mrib_Inst-group { + // This object holds IPv6 ICMP Neighbor oper related properties + // Ephemeral data + container ngbrdata-items { - // This objects hold per MRIB information - container dom-items { - list Dom-list { + // Ephemeral data + list NeighborData-list { config "false"; - key "name"; + key "ngbrAddr"; - // Added containment: Prefix=dom - // Acquired From Package mrib - uses mrib_Dom-group; + uses nd_NeighborData-group; + description "IPv6 ICMP Neighbor Data list"; } + description "IPv6 ICMP Neighbor Data"; } + container ndlocalproxy-items { + list NdLocalProxy-list { + key "prefix"; - // This object holds mrib route db information - container routeDb-items { - - // Added containment as a singleton: Prefix=routeDb - // Acquired From Package mrib - uses mrib_RouteDb-group; + uses nd_NdLocalProxy-group; + description "IPv6 ND Local Proxy With No Hardware Flooding list"; + } + description "IPv6 ND Local Proxy With No Hardware Flooding"; } - } - - grouping mrib_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // A list of prefixes to be placed in Prefix Information + // options in Router Advertisement messages sent from the + // interface. + container pfx-items { + list Pfx-list { + key "addr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nd_Pfx-group; + description "Prefix to be advertised list"; } + description "Prefix to be advertised"; } - // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container defpfx-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_DefaultPrefix-group; + description "Default Prefix to be advertised"; } - // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Domain Controls"; + // ND DNS Server + container dns-items { + list RouteAdvDNSServer-list { + key "dnsServerAddr dnsSequenceNum"; + + uses nd_RouteAdvDNSServer-group; + description "Route advertisement DNS server list"; + } + description "Route advertisement DNS server"; + } + + // ND DNS Search List + container dnssl-items { + list RouteAdvDNSSearchList-list { + key "dnsSearchListName dnsSequenceNum"; - // Type is an MO-Defined-Type - type rtdmc_DomCtrl; + uses nd_RouteAdvDNSSearchList-group; + description "Route advertisement DNS search list list"; + } + description "Route advertisement DNS search list"; } - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "Maximum Transmission Unit"; + // Ephemeral data + container rtrstat-items { - // Type is an MO-Defined-Type - type rtdmc_Mtu; + // Ephemeral data + list RouterStat-list { + config "false"; + key "routerAddr"; + + uses nd_RouterStat-group; + description "Router statistics list"; + } + description "Router statistics"; } - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - config "false"; - description "Auto Enable"; + // Interface statistics ND packet counters (per-i/f) + // Ephemeral data + container ifstats-items { - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; - } - leaf logNbhChng { - config "false"; - type boolean; - } - leaf flushRoutes { - config "false"; - type boolean; - } - leaf bfd { - config "false"; - type boolean; + uses nd_IfStats-group; + description "interface statistics"; } - // This object holds mrib config information - container config-items { + // VADDR Statistics per i/f for specific client + // Ephemeral data + container vaddrstat-items { - // Added containment as a singleton: Prefix=config - // Acquired From Package mrib - uses mrib_Config-group; - } - container eventHist-items { - list EventHistory-list { - key "type"; + // Ephemeral data + list VaddrStat-list { + config "false"; + key "vaddrProto"; - // Added containment: Prefix=eventHist - // Acquired From Package mrib - uses mrib_EventHistory-group; + uses nd_VaddrStat-group; + description "ND VADDR statistics list"; } + description "ND VADDR statistics"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping mrib_Config-group { + grouping nd_StAdjEp-group { + description "ND Static Adjacency"; - // Holddown Enable - // Type is an MO-Defined-Type - leaf holdEnable { + // Operational state + leaf operSt { config "false"; - description "Holddown Enable"; - // Type is an MO-Defined-Type - type mrib_HoldAdminSt; + type nd_StAdjOperSt; + description "Operational State"; } - // Holddown second - // Type is an MO-Defined-Type - leaf holddown { + // Operational state qualifier + leaf operStQual { config "false"; - description "holddown second"; - // Type is an MO-Defined-Type - type mrib_HoldDownType; + type nd_StAdjOperStQual; + description "Operational State Qualifier"; } - // Mode Enable - // Type is an MO-Defined-Type - leaf ModeEnable { + leaf name { config "false"; - description "Mode Enable"; - // Type is an MO-Defined-Type - type mrib_ModeAdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - - // Multipath Mode - // Type is an MO-Defined-Type - leaf Mode { + leaf addr { config "false"; - description "MRIB Multipath Mode"; - - // Type is an MO-Defined-Type - type mrib_MultipathMode; + type address_Ip; + description "IPv6 address"; } - // Multipath Resilient - // Type is an MO-Defined-Type - leaf ModeResilient { + // Mac address + leaf mac { config "false"; - description "MRIB Multipath Resilient"; - // Type is an MO-Defined-Type - type mrib_ResilientType; + type nd_AdjMac; + description "MAC"; } - } - grouping mrib_EventHistory-group { + container rtfvEpDefRefToStAdjEpV6-items { - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history"; + list RtFvEpDefRefToStAdjEpV6-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type mrib_EhType; + uses fv_RtFvEpDefRefToStAdjEpV6_target-group; + } } + } - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; + grouping nd_DNSIfSearchListStats-group { + description "ND interface DNS statistics"; - // Type is an MO-Defined-Type - type mrib_Size; + // Ephemeral data + leaf dnsSearchListSuppress { + config "false"; + type boolean; + description "ND DNS search-list suppress"; } - } - grouping mrib_RouteDb-group { + // Ephemeral data + container server-items { - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { + // Ephemeral data + list DNSSearchListStats-list { config "false"; - key "name"; + key "dnsSearchList"; - // Added containment: Prefix=vrf - // Acquired From Package mrib - uses mrib_Vrf-group; + uses nd_DNSSearchListStats-group; + description "ND DNS search-list statistics list"; } + description "ND DNS search-list statistics"; } } - grouping mrib_Vrf-group { - leaf name { + grouping nd_DNSSearchListStats-group { + description "ND DNS search-list statistics"; + + // Ephemeral data + leaf dnsSearchList { config "false"; type string; + description "ND DNS search-list name"; } - leaf totalNumRoutes { - config "false"; - type uint32; - } - leaf starGRoute { + + // Ephemeral data + leaf dnsSearchListLife { config "false"; type uint32; + description "ND DNS search-list lifetime"; } - leaf sgRoute { + + // Ephemeral data + leaf dnsSearchListSeq { config "false"; type uint32; + description "ND DNS search-list sequence no"; } - leaf starGPrfx { + } + + grouping nd_DNSIfStats-group { + description "ND interface DNS statistics"; + + // Ephemeral data + leaf dnsServerSuppress { config "false"; - type uint32; + type boolean; + description "ND DNS server suppress"; } - // This object holds mrib route group information - container group-items { - list Group-list { + // Ephemeral data + container server-items { + + // Ephemeral data + list DNSServerStats-list { config "false"; - key "grpAddr"; + key "addr"; - // Added containment: Prefix=group - // Acquired From Package mrib - uses mrib_Group-group; + uses nd_DNSServerStats-group; + description "ND DNS server statistics list"; } + description "ND DNS server statistics"; } } - grouping mrib_Group-group { - leaf grpAddr { + grouping nd_DNSServerStats-group { + description "ND DNS server statistics"; + + // Ephemeral data + leaf addr { config "false"; type address_Ip; + description "ND DNS server name"; } - leaf grpMasklen { + + // Ephemeral data + leaf dnsServerLife { config "false"; type uint32; + description "ND DNS server lifetime"; } - leaf bidir { + + // Ephemeral data + leaf dnsServerSeq { config "false"; - type boolean; + type uint32; + description "ND DNS server sequence no"; } + } - // This object holds mrib route source information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + grouping nd_IfRoutes-group { + description "Ipv6 Nd Route All"; - // Added containment: Prefix=source - // Acquired From Package mrib - uses mrib_Source-group; + // This object holds IPv6 ND Route command related properties + container rt-items { + list Route-list { + key "ndRouteAddr"; + + uses nd_Route-group; + description "Ipv6 Nd Route (specific) list"; } + description "Ipv6 Nd Route (specific)"; } } - grouping mrib_Source-group { - leaf srcAddr { - config "false"; + grouping nd_Route-group { + description "Ipv6 Nd Route (specific)"; + leaf ndRouteAddr { type address_Ip; + description "Nd Route IPv6 address"; } - leaf pending { - config "false"; - type boolean; - } - leaf uptime { - config "false"; - type string; - } - leaf oifcount { - config "false"; - type uint32; - } - leaf statsPkts { - config "false"; - type uint32; + + // Nd Route Life Time + leaf ndRouteLifeTime { + + type nd_NdRtLifeTime; + description "Nd Route life time"; } - leaf statsBytes { - config "false"; - type uint32; + + // Nd Route Infinite Life Time + leaf ndRouteLifeTimeInfinite { + + type nw_AdminSt; + default "disabled"; + description "Nd Route life time infinite"; } - leaf statsRateBuf { - config "false"; - type string; + + // Set Default Route Preference Value for ND Route (RFC 4191) + leaf routePreference { + + type nd_RtPrefForNdRt; + description "Set Route Preference for ND Route (RFC 4191)"; } - leaf lispSrcRloc { - config "false"; - type string; + + // Verify if route is present in Route table + leaf verifyReachability { + + type nw_AdminSt; + default "disabled"; + description "Verify if route is present in Route table"; } - leaf routeIif { + } + + grouping nd_NeighborData-group { + description "IPv6 ICMP Neighbor Data"; + + // Ephemeral data + leaf ngbrAddr { config "false"; - type string; + type address_Ip; + description "IPv6 ICMP Neighbor Address"; } - leaf rpfNbr { + + // Ephemeral data + leaf ngbrAge { config "false"; type string; + description "IPv6 ICMP Neighbor Age"; } - leaf internal { + + // Ephemeral data + leaf ngbrMac { config "false"; - type boolean; + type address_Mac; + description "IPv6 ICMP Neighbor MAC"; } - leaf rpfNbrUptime { + + // Ephemeral data + leaf ngbrState { config "false"; type string; - } - leaf fabricOif { - config "false"; - type boolean; - } - leaf fabricLoser { - config "false"; - type boolean; - } - leaf numVpcSviOifs { - config "false"; - type uint32; - } - leaf routeMdtIod { - config "false"; - type boolean; - } - leaf mdtEncapIndex { - config "false"; - type uint32; + description "IPv6 ICMP Neighbor State"; } - // This object holds mrib mpib information - container mpib-items { - list Mpib-list { - config "false"; - key "mpibName"; + // IPv6 ICMP Neighbor Interface + // Ephemeral data + leaf ngbrInterface { + config "false"; - // Added containment: Prefix=mpib - // Acquired From Package mrib - uses mrib_Mpib-group; - } + type nw_IfId; + description "IPv6 ICMP Neighbor Interface"; } - // This object holds mrib OIF information - container oif-items { - list Oif-list { - config "false"; - key "oifName"; + // IPv6 ICMP Neighbor Physical Interface + // Ephemeral data + leaf ngbrPhyInterface { + config "false"; - // Added containment: Prefix=oif - // Acquired From Package mrib - uses mrib_Oif-group; - } + type nw_IfId; + description "IPv6 ICMP Neighbor Physical Interface"; } - } - grouping mrib_Mpib-group { - leaf mpibName { - config "false"; - type string; - } - leaf oifCount { + // Ephemeral data + leaf ngbrSyncedViaCFSoE { config "false"; - type uint32; + type boolean; + description "IPv6 ICMP Adjacency Synced Via CFSoE"; } - leaf staleRoute { + + // Ephemeral data + leaf ngbrThrottledViaGlean { config "false"; type boolean; + description "IPv6 ICMP Adjacency Throttled For Glean"; } } - grouping mrib_Oif-group { - leaf oifName { - config "false"; - type string; - } - leaf oifUptime { - config "false"; - type string; - } - leaf oifRPF { - config "false"; - type boolean; + grouping nd_NdLocalProxy-group { + description "IPv6 ND Local Proxy With No Hardware Flooding"; + leaf prefix { + type address_Ip; + description "Prefix"; } - leaf oifLispEncapEntries { - config "false"; - type uint32; + } + + grouping nd_Pfx-group { + description "Prefix to be advertised"; + leaf addr { + type address_Ip; + description "Prefix address"; } - // This object holds lisp encap information - container lispEncap-items { - list LispEncap-list { - config "false"; - key "index"; + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + leaf lifetime { - // Added containment: Prefix=lispEncap - // Acquired From Package mrib - uses mrib_LispEncap-group; - } + type nd_Lifetime; + description "Valid Lifetime"; } - // This object holds mrib OIF MPIB information - container oifMpib-items { - list OifMpib-list { - config "false"; - key "oifMpibName"; + // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) + leaf prefLifetime { - // Added containment: Prefix=oifMpib - // Acquired From Package mrib - uses mrib_OifMpib-group; - } + type nd_PrefLifetime; + description "Preferred Lifetime"; } - } - grouping mrib_LispEncap-group { - leaf index { - config "false"; - type uint32; - } - leaf srcRloc { - config "false"; - type address_Ip; - } - leaf dstRloc { - config "false"; - type address_Ip; - } - } + // RA prefix Controls + leaf ctrl { - grouping mrib_OifMpib-group { - leaf oifMpibName { - config "false"; - type string; - } - leaf staleOif { - config "false"; - type boolean; - } - leaf VpcSvi { - config "false"; - type boolean; + type nd_PfxControl; + description "Prefix Controls"; } } - grouping msdp_Entity-group { + grouping nd_DefaultPrefix-group { + description "Default Prefix to be advertised"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Default prefix + leaf defPrefix { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Default prefix"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Valid lifetime of the prefix default + leaf defLifetime { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nd_Lifetime; + description "Valid lifetime for default prefix"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Preferred lifetime of the prefix default + leaf defPrefLifetime { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nd_PrefLifetime; + description "Preferred lifetime for default prefix"; } - // This objects hold per MSDP instance information - container inst-items { + // Default RA prefix Controls + leaf ctrl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package msdp - uses msdp_Inst-group; + type nd_PfxControl; + description "Prefix Controls"; } } - grouping msdp_Inst-group { + grouping nd_RouteAdvDNSServer-group { + description "Route advertisement DNS server"; + leaf dnsServerAddr { + type address_Ip; + description "DNS server IPv6 address"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // DNS Server Life Time + // Default value handled in local MO type + leaf dnsServerLifeTime { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Type is a Local-MO-Defined-Type + type nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime; + description "DNS server life time"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // DNS Server Infinite Life Time + leaf dnsServerLifeTimeInfinite { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "DNS server life time infinite"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // DNS Server Sequence Number + leaf dnsSequenceNum { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nd_DNSSeqNum; + description "DNS server sequence number"; } - // This objects hold per domain (vrf) MSDP information - container dom-items { - list Dom-list { - key "name"; + // Flag to indicate if dns server is configured or not + leaf dnsServer { - // Added containment: Prefix=dom - // Acquired From Package msdp - uses msdp_Dom-group; - } + type nw_AdminSt; + default "disabled"; + description "IPv6 nd ra DNS server"; } } - grouping msdp_Dom-group { - - // Type is an MO-Defined-Type - leaf origIf { - description "Originator Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + grouping nd_RouteAdvDNSSearchList-group { + description "Route advertisement DNS search list"; + leaf dnsSearchListName { + type string; + description "DNS search list name"; } - // Type is an MO-Defined-Type - leaf srcActiveMsgIntvl { - description "Source Active message Interval"; + // DNS Search List Life Time + // Default value handled in local MO type + leaf dnsSearchListLifeTime { - // Type is an MO-Defined-Type - type msdp_SrcActiveMsgIntvl; + // Type is a Local-MO-Defined-Type + type nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime; + description "DNS search list life time"; } - // Type is an MO-Defined-Type - leaf reConnIntvl { - description "Reconnect Interval"; + // DNS Search List Infinite Life Time + leaf dnsSearchListLifeTimeInfinite { - // Type is an MO-Defined-Type - type msdp_ReConnIntvl; + type nw_AdminSt; + default "disabled"; + description "DNS search list life time infinite"; } - // Type is an MO-Defined-Type - leaf ctrl { - description "Flush routes"; + // DNS Search List Sequence Number + leaf dnsSequenceNum { - // Type is an MO-Defined-Type - type msdp_DomCtrl; + type nd_DNSSeqNum; + description "DNS search list sequence number"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Flag to indicate if dns search list is configured or not + leaf dnssl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + default "disabled"; + description "IPv6 nd ra DNS search list"; } + } - // msdp databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping nd_RouterStat-group { + description "Router statistics"; - // Added containment: Prefix=db - // Acquired From Package msdp - uses msdp_Db-group; - } + // Ephemeral data + leaf routerAddr { + config "false"; + type address_Ip; } - // This object holds group limt and source range info - container maxgrp-items { - list MaxGrpP-list { - key "srcPfx"; - - // Added containment: Prefix=maxgrp - // Acquired From Package msdp - uses msdp_MaxGrpP-group; - } + // Ephemeral data + leaf ifName { + config "false"; + type string; + description "Router address associated with nterface"; } - container eventHist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventHist - // Acquired From Package msdp - uses msdp_EventHistory-group; + // Ephemeral data + leaf lastUpdateTime { + config "false"; + type decimal64 { + fraction-digits 6; } + description "Last update time"; } - // This object holds MSDP information pertaining to a peer - container peer-items { - list Peer-list { - key "addr"; - - // Added containment: Prefix=peer - // Acquired From Package msdp - uses msdp_Peer-group; - } + // Ephemeral data + leaf hopLimit { + config "false"; + type uint32; + description "Current hop limit"; } - container interleakp-items { + // Ephemeral data + leaf lifetime { + config "false"; + type uint32; + description "Current lifetime"; + } - // Added containment as a singleton: Prefix=interleakp - // Acquired From Package msdp - uses msdp_InterLeakP-group; + // Ephemeral data + leaf addrFlag { + config "false"; + type uint16; + description "Addr flag"; } - } - grouping msdp_Db-group { + // Ephemeral data + leaf otherFlag { + config "false"; + type uint16; + description "Other flag"; + } - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf mtu { config "false"; - description "Indicates different database type for different show command"; + type uint16; + description "Mtu"; + } - // Type is an MO-Defined-Type - type msdp_DbT; + // Ephemeral data + leaf homeagentFlag { + config "false"; + type uint16; + description "Homeagent flag"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf preference { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_RouterPreference; + description "Preference flag"; } - // This object holds the MSDP SA-Cache related information - container src-items { - list Route-list { - config "false"; - key "src grp rp"; + // Ephemeral data + leaf reachableTime { + config "false"; + type uint64; + description "Reachable time"; + } - // Added containment: Prefix=src - // Acquired From Package msdp - uses msdp_Route-group; - } + // Ephemeral data + leaf retransmissionTime { + config "false"; + type uint64; + description "Retransmission time"; } - // This class holds information of learnt sources - container source-items { - list Source-list { + // Ephemeral data + container pfxstat-items { + + // Ephemeral data + list RaPrefixStat-list { config "false"; - key "addr"; + key "prefixAddr"; - // Added containment: Prefix=source - // Acquired From Package msdp - uses msdp_Source-group; + uses nd_RaPrefixStat-group; + description "RA prefix statistics list"; } + description "RA prefix statistics"; } } - grouping msdp_Route-group { - leaf src { + grouping nd_RaPrefixStat-group { + description "RA prefix statistics"; + + // Ephemeral data + leaf prefixAddr { config "false"; type address_Ip; + description "Prefix address"; } - leaf grp { + + // Ephemeral data + leaf onlinkFlag { config "false"; - type address_Ip; + type boolean; + description "Onlink flag"; } - leaf rp { + + // Ephemeral data + leaf autonomousFlag { config "false"; - type address_Ip; + type boolean; + description "Autonomous flag"; } - leaf peer { + + // Ephemeral data + leaf validLifetime { config "false"; - type address_Ip; + type uint64; + description "Valid lifetime"; } - leaf asn { + + // Ephemeral data + leaf prefLifetime { config "false"; - type string; + type uint32; + description "preferred lifetime"; } - leaf createTs { + } + + grouping nd_IfStats-group { + description "interface statistics"; + + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { config "false"; - type string; + + type nw_Counter64; + description "Total messages sent"; } - leaf expireTs { + + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { config "false"; - type string; + + type nw_Counter64; + description "Total messages received"; } - leaf saCnt { + + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { config "false"; - type uint32; + + type nw_Counter64; + description "Error messages sent"; } - leaf dataPkt { + + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Error messages received"; } - } - grouping msdp_Source-group { - leaf addr { + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { config "false"; - type address_Ip; + + type nw_Counter64; + description "Interface Down Drop Count sent"; } - leaf grpCnt { + + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Interface Down Drop Count received"; } - leaf grpLimit { + + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { config "false"; - type uint32; + + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - leaf srcPfx { + + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { config "false"; - type address_Ip; + + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - leaf violations { + + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { config "false"; - type uint32; - } - } - grouping msdp_MaxGrpP-group { - leaf srcPfx { - type address_Ip; + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Type is an MO-Defined-Type - leaf maxGrp { - description "Max Group count"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_MaxGrpLimit; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Destination Unreachables sent"; } - } - - grouping msdp_EventHistory-group { - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_EhType; + type nw_Counter64; + description "Destination Unreachables received"; } - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_Size; + type nw_Counter64; + description "Administratively Prohibited sent"; } - } - grouping msdp_Peer-group { - leaf addr { - type address_Ip; + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; + + type nw_Counter64; + description "Administratively Prohibited received"; } - // Administrative state up/down - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative state enabled/disabled"; + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter64; + description "Time Exceeded sent "; } - // source interface - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf asn { - type string; + type nw_Counter64; + description "Time Exceeded received"; } - // sa-limit - // Type is an MO-Defined-Type - leaf srcActiveMsgLimit { - description "Source Active msg Limit"; + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_SrcActiveMsgLimit; + type nw_Counter64; + description "Parameter Problems sent"; } - // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type - leaf kaIntvl { - description "Keepalive interval, how often you send keepalives"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_KaIntvl; + type nw_Counter64; + description "Parameter Problems received"; } - // Keepalive timeout - // Type is an MO-Defined-Type - leaf kaTimeout { - description "Keepalive Timeout"; + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_KaTimeout; + type nw_Counter64; + description "Echo Request sent"; } - // Operationsl state - // Type is an MO-Defined-Type - leaf operSt { + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { config "false"; - description "Operational Status"; - // Type is an MO-Defined-Type - type msdp_OperSt; + type nw_Counter64; + description "Echo Request received"; } - // Remote port of TCP connection to this peer - // Type is an MO-Defined-Type - leaf remPort { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { config "false"; - description "Remote TCP connection port to this peer"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_Counter64; + description "Echo Replies sent"; } - // Local port of TCP connection to this peer - // Type is an MO-Defined-Type - leaf localPort { + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { config "false"; - description "Local TCP connection port to this peer"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_Counter64; + description "Echo Replies received"; } - leaf lastResetOperQual { + + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { config "false"; - type string; + + type nw_Counter64; + description "Redirects sent"; } - leaf discontinuityTs { + + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { config "false"; - type string; + + type nw_Counter64; + description "Redirects received"; } - leaf upTs { + + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - type string; + + type nw_Counter64; + description "Packet Too Big sent"; } - leaf connTmrTs { + + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - type string; + + type nw_Counter64; + description "Packet Too Big received"; } - // Count of established transitions - // Type is an MO-Defined-Type - leaf establishTransitions { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Count of established transitions"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Router Advertisements sent"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Router Advertisements received"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Router Solicitations sent"; } - // This object holds authentication policy information - container auth-items { + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { + config "false"; - // Added containment as a singleton: Prefix=auth - // Acquired From Package msdp - uses msdp_AuthP-group; + type nw_Counter64; + description "Router Solicitations received"; } - // This object holds mesh group information - container meshgrp-items { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { + config "false"; - // Added containment as a singleton: Prefix=meshgrp - // Acquired From Package msdp - uses msdp_MeshGrp-group; + type nw_Counter64; + description "Neighbor Advertisements sent"; } - // SA policy MO - container rtctrl-items { - list RtCtrlP-list { - key "direction"; + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { + config "false"; - // Added containment: Prefix=rtctrl - // Acquired From Package msdp - uses msdp_RtCtrlP-group; - } + type nw_Counter64; + description "Neighbor Advertisements received"; } - // This object holds the MSDP peer related statistics - container peerstats-items { + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { + config "false"; - // Added containment as a singleton: Prefix=peerstats - // Acquired From Package msdp - uses msdp_PeerStats-group; + type nw_Counter64; + description "Neighbor Solicitations sent"; } - } - grouping msdp_AuthP-group { + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { + config "false"; - // Authentication type - // Type is an MO-Defined-Type - leaf type { - description "Authentication type"; + type nw_Counter64; + description "Neighbor Solicitations received"; + } - // Type is an MO-Defined-Type - type msdp_AuthT; + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { + config "false"; + + type nw_Counter64; + description "Duplicate router RA received"; } - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "Authentication key"; + // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT + // Ephemeral data + leaf fastpthRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_AuthKey; + type nw_Counter64; + description "Fastpath Packets"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT + // Ephemeral data + leaf fastpathDsbleIgnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT + // Ephemeral data + leaf fastpathOtherIgnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Ignored fastpath packets - others"; } - } - grouping msdp_MeshGrp-group { - leaf grpName { + // Ephemeral data + leaf lastNghbrSolicitSent { + config "false"; type string; + description "Last neighbor solicitation sent"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf lastNghbrAdvertisementSent { + config "false"; + type string; + description "Last neighbor advertisement sent"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf lastRouterAdvertisementSent { + config "false"; + type string; + description "Last router advertisement sent"; } - } - grouping msdp_RtCtrlP-group { - leaf pfxList { + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; type string; + description "Next neighbor advertisement sent"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf nsRetransmitInterval { + config "false"; + type uint64; + description "NS retransmit interval"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf ndNudRetryBase { + config "false"; + type uint64; + description "ND NUD retry base"; } - // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; - - // Type is an MO-Defined-Type - type rtctrl_RtCtrlDir; - } - leaf rtMap { - type string; + // Ephemeral data + leaf ndNudRetryInterval { + config "false"; + type uint64; + description "ND NUD retry interval"; } - } - grouping msdp_PeerStats-group { - leaf lastMessageRcvd { + // Ephemeral data + leaf ndNudRetryAttemps { config "false"; - type string; + type uint64; + description "ND NUD retry attempts"; } - // Count of SA requests received - // Type is an MO-Defined-Type - leaf saReqRcvd { + // Ephemeral data + leaf sendRedirect { config "false"; - description "Count of SA Request Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Error send redirects"; } - // Count of SA requests sent - // Type is an MO-Defined-Type - leaf saReqSent { + // Ephemeral data + leaf redirectCause { config "false"; - description " Count of SA Request Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Error redirect cause"; } - // Count of SA responses received - // Type is an MO-Defined-Type - leaf saRspRcvd { + // Ephemeral data + leaf sendUnreachables { config "false"; - description "Count of SA Response Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "ND NUD retry interval"; } - // Count of SA responses sent - // Type is an MO-Defined-Type - leaf saRspSent { + // Ephemeral data + leaf maxDadAttempts { config "false"; - description "Count of SA Response Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Maximum DAD attempts"; } - // Count of control messages received - // Type is an MO-Defined-Type - leaf ctrlMessagesRcvd { + // Ephemeral data + leaf currentDadAttempt { config "false"; - description "Count of Control Messages Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Current DAD attempt"; } - // Count of control messages sent - // Type is an MO-Defined-Type - leaf ctrlMessagesSent { + // Ephemeral data + leaf ifState { config "false"; - description "Count of Control Messages Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface state"; } - // Count of data packets received - // Type is an MO-Defined-Type - leaf dataMessagesRcvd { + // Ephemeral data + leaf ifAddr { config "false"; - description "Count of Data Messages Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface IPv6 address/s"; } - // Count of data packets sent - // Type is an MO-Defined-Type - leaf dataMessagesSent { + // Ephemeral data + leaf linkLocalAddr { config "false"; - description "Count of Data Messages Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "IPv6 link local address"; } - // Count of notifications received - // Type is an MO-Defined-Type - leaf notifRcvd { + // Ephemeral data + leaf linkLocalAddrState { config "false"; - description "Count of SA Notifications Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "IPv6 address state"; } - // Count of SA notifications sent - // Type is an MO-Defined-Type - leaf notifSent { + // Ephemeral data + leaf ndMacExtractState { config "false"; - description "Count of SA Notifications Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "ND mac-extract state"; } - // Count of keepalive messages received - // Type is an MO-Defined-Type - leaf kaRcvd { + // Ephemeral data + leaf statsLastReset { config "false"; - description "Count of Keepalives Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface statistics last reset"; } - // Count of keepalive messages sent - // Type is an MO-Defined-Type - leaf kaSent { + // Vinci specific: Proxy NA count @@@ ICMPV6_PKT_PROXY_NA_CNT + // Ephemeral data + leaf proxyNaCount { config "false"; - description "Count of Keepalives Sent"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NA count"; } - // Count of RPF check failures - // Type is an MO-Defined-Type - leaf rpfChkFail { + // Vinci specific: Proxy NA to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NA + // Ephemeral data + leaf proxyNaToBdCount { config "false"; - description "Count of RPF Check Failures"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NA to BD count"; } - // Count of connection attempts - // Type is an MO-Defined-Type - leaf connAttempts { + // Vinci specific: Proxy NS to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NS + // Ephemeral data + leaf proxyNsToBdCount { config "false"; - description "Count of Connection Attempts"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NS to BD count"; } - // Count of SA-cache entries learnt from this peer - // Type is an MO-Defined-Type - leaf rtCnt { + // Vinci specific: RARP NS Count @@@ ICMPV6_PKT_NS_SENT_FOR_RARP_CASE + // Ephemeral data + leaf rarpNsCount { config "false"; - description "Count of SG cache entries learnt"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } - } - grouping msdp_InterLeakP-group { - leaf pfxList { - type string; + type nw_Counter64; + description "RARP NS count"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + container ra-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses nd_RouterAdv-group; + description "Router advertisement"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + container vip-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nd_IfVipClientStats-group; + description "Interface virtual client"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Ephemeral data + container addr-items { - // Type is an MO-Defined-Type - type rtleak_Scope; - } - leaf rtMap { - type string; + // Ephemeral data + list IfIPv6AddrStats-list { + config "false"; + key "addr"; + + uses nd_IfIPv6AddrStats-group; + description "Interface address list"; + } + description "Interface address"; } - } - grouping nd_Entity-group { + // Ephemeral data + container pfx-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list PrefixStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nd_PrefixStats-group; + description "prefix statistics list"; } + description "prefix statistics"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + // Ephemeral data + container rt-items { - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Ephemeral data + list RouteStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses nd_RouteStats-group; + description "interface nd route statistics list"; + } + description "interface nd route statistics"; } - // This objects hold per nd instance information. There is - // only one instance of nd running in the system today - container inst-items { + // Ephemeral data + container addrtree-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package nd - uses nd_Inst-group; + // Ephemeral data + list AddrTreeStats-list { + config "false"; + key "addr"; + + uses nd_AddrTreeStats-group; + description "Address tree statistics list"; + } + description "Address tree statistics"; } } - grouping nd_Inst-group { - - // Solicitated neighbor advertisement - // Type is an MO-Defined-Type - leaf solicitNghbrAdvertisement { - description "Solicit neighbor advertisement"; + grouping nd_RouterAdv-group { + description "Router advertisement"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf raInterval { + config "false"; + type uint64; + description "Router advertisement interval"; } - // Solicitated neighbor advertisement with complete entry - // Type is an MO-Defined-Type - leaf acceptSolicitNghbrEntry { - description "Accept or no-accept entry in Solicit neighbor advertisement"; - - // Type is an MO-Defined-Type - type nd_SolicitAcceptValue; + // Ephemeral data + leaf raIntervalMin { + config "false"; + type uint64; + description "Router advertisement minimum interval"; } - // Solicitated neighbor advertisement Probe value Probe Value as 0 means no-probe - // Type is an MO-Defined-Type - leaf probeIntervalForSolicitNghbr { - description "Probe interval"; - - // Type is an MO-Defined-Type - type nd_SolicitProbeValue; + // Ephemeral data + leaf mFlag { + config "false"; + type boolean; + description "Managed address configuration flag"; } - // Aging timer for nd cached entires - // Type is an MO-Defined-Type - leaf agingInterval { - description "Aging Interval"; - - // Type is an MO-Defined-Type - type nd_AgingInterval; + // Ephemeral data + leaf oFlag { + config "false"; + type boolean; + description "Other stateful configuration flag"; } - // Off-list timer for neighbor discovery - // Type is an MO-Defined-Type - leaf offListTimeout { - description "Off-list timeout"; - - // Type is an MO-Defined-Type - type nd_OffListTimeout; + // Ephemeral data + leaf hopLimit { + config "false"; + type uint64; + description "Current hop limit"; } - // IPv6 Route Distance - // Type is an MO-Defined-Type - leaf ipv6AdjRouteDistance { - description "Ipv6 Adjacency Route Distance"; - - // Type is an MO-Defined-Type - type nd_adjRouteDist; + // Ephemeral data + leaf mtu { + config "false"; + type uint64; + description "MTU"; } - // ND Cache Limit - // Type is an MO-Defined-Type - leaf cacheLimit { - description "Cache Limit"; - - // Type is an MO-Defined-Type - type nd_NdCacheLimit; + // Ephemeral data + leaf routerLifetime { + config "false"; + type uint64; + description "Router lifetime"; } - // ND Cache SysLog Rate - // Type is an MO-Defined-Type - leaf cacheSyslogRate { - description "Cache Syslog Rate"; + // Ephemeral data + leaf reachableTime { + config "false"; + type uint64; + description "Reachable time"; + } - // Type is an MO-Defined-Type - type nd_NdCacheSyslogRate; + // Ephemeral data + leaf retransmitTime { + config "false"; + type uint64; + description "Retransmit time"; } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configErr { + // Ephemeral data + leaf suppressRa { config "false"; - description "Config error Inst"; + type boolean; + description "Suppress RA"; + } - // Type is an MO-Defined-Type - type nd_ConfigErrInst; + // Ephemeral data + leaf suppressRaMtu { + config "false"; + type boolean; + description "Suppress RA MTU"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping nd_IfVipClientStats-group { + description "Interface virtual client"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + // Ephemeral data + container vipaddr-items { - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + list IfVipAddrStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_IfVipAddrStats-group; + description "Interface virtual address list"; + } + description "Interface virtual address"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping nd_IfVipAddrStats-group { + description "Interface virtual address"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // This objects hold per ND domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Ephemeral data + leaf lastNghbrSolicitSent { + config "false"; + type string; + description "Last neighbor solicitation sent"; + } - // Added containment: Prefix=dom - // Acquired From Package nd - uses nd_Dom-group; - } + // Ephemeral data + leaf lastNghbrAdvertisementSent { + config "false"; + type string; + description "Last neighbor advertisement sent"; } - // Glean throttling helps to discard packets at line card when - // adjacency of the next hop is getting resolved. - // Ref: - // Guide: Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide - // Chapter: Configuring IPv4 - container ipv6gleanthrottle-items { + // Ephemeral data + leaf lastRouterAdvertisementSent { + config "false"; + type string; + description "Last router advertisement sent"; + } - // Added containment as a singleton: Prefix=ipv6gleanthrottle - // Acquired From Package nd - uses nd_IpV6Throttle-group; + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; + type string; + description "Next neighbor advertisement sent"; } + } - // This object holds IPv6 ND Sync for VPC - container vpc-items { + grouping nd_IfIPv6AddrStats-group { + description "Interface address"; - // Added containment as a singleton: Prefix=vpc - // Acquired From Package nd - uses nd_Vpc-group; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "IPv6 address"; } - container offliststat-items { - list OffListVlan-list { - config "false"; - key "vlanId addr"; - // Added containment: Prefix=offliststat - // Acquired From Package nd - uses nd_OffListVlan-group; - } + // Ephemeral data + leaf addrState { + config "false"; + type string; + description "IPv6 address state"; } + } - // icmpv6 packet counters (global) - container glblpktstats-items { + grouping nd_PrefixStats-group { + description "prefix statistics"; - // Added containment as a singleton: Prefix=glblpktstats - // Acquired From Package nd - uses nd_GlobalTrafficStats-group; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "Prefix address"; } - // Link Local Global VADDR statistics - container vaddrllstat-items { - list VaddrLinkLocalStat-list { - config "false"; - key "vAddr"; + // Ephemeral data + leaf maskLen { + config "false"; + type uint16; + description "Mask Length"; + } - // Added containment: Prefix=vaddrllstat - // Acquired From Package nd - uses nd_VaddrLinkLocalStat-group; - } + // Ephemeral data + leaf enabled { + config "false"; + type boolean; + description "Address enabled or not"; } - container vpcstat-items { + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf lifetime { + config "false"; - // Added containment as a singleton: Prefix=vpcstat - // Acquired From Package nd - uses nd_VPCStat-group; + type nd_Lifetime; + description "Valid Lifetime"; } - } - - grouping nd_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf prefLifetime { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_Lifetime; + description "Preferred Lifetime"; } - // ND databases - container db-items { - list Db-list { - config "false"; - key "type"; + // Ephemeral data + leaf onLink { + config "false"; + type boolean; + description "ND prefix on-link"; + } - // Added containment: Prefix=db - // Acquired From Package nd - uses nd_Db-group; - } + // Ephemeral data + leaf offLink { + config "false"; + type boolean; + description "ND prefix off-link"; } - // This object holds nd information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Ephemeral data + leaf autonomous { + config "false"; + type boolean; + description "ND prefix autonomous"; + } - // Added containment: Prefix=if - // Acquired From Package nd - uses nd_If-group; - } + // Ephemeral data + leaf rtrAddr { + config "false"; + type boolean; + description "ND prefix rtr-address"; } - // Only Global level VADDR statistics - container vaddrstatglobal-items { - list VaddrGlobalStat-list { - config "false"; - key "vAddr"; + // Ephemeral data + leaf ifAssignedAddr { + config "false"; + type boolean; + description "nd prefix interface assigned address"; + } - // Added containment: Prefix=vaddrstatglobal - // Acquired From Package nd - uses nd_VaddrGlobalStat-group; - } + // Ephemeral data + leaf refCount { + config "false"; + type uint32; + description "nd prefix reference count"; } } - grouping nd_Db-group { + grouping nd_RouteStats-group { + description "interface nd route statistics"; - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf addr { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type nd_DbT; + type address_Ip; + description "Route address"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf routePreference { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_RouterPreference; + description "Route Preference"; } - // ND adjacency definitions - container adj-items { - list AdjEp-list { - config "false"; - key "ifId addr"; + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf routeLifetime { + config "false"; - // Added containment: Prefix=adj - // Acquired From Package nd - uses nd_AdjEp-group; - } + type nd_OperNdRtLifeTime; + description "Route Lifetime"; } - } - - grouping nd_AdjEp-group { - // Logical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf ifId { + // Ephemeral data + leaf octetUnits { config "false"; - description "Logical Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type uint32; + description "Route Info Option TLV len(units of octects)"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf verifyReachability { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nd_AdjOperSt; + type boolean; + description "Reachability-verify"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf advRouteInRoute { config "false"; - description "Name"; + type boolean; + description "Adv route in Route Info Option"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf advRouteWithZeroLifetime { + config "false"; + type boolean; + description "Adv route with zero lifetime"; } + } + + grouping nd_AddrTreeStats-group { + description "Address tree statistics"; + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "IPv6 address"; } - // Mac address - // Inherited From nd:AAdjEp - // Type is an MO-Defined-Type - leaf mac { + // Ephemeral data + leaf maskLen { config "false"; - description "MAC"; - - // Type is an MO-Defined-Type - type nd_AdjMac; + type uint8; + description "Address mask length"; } - } - - grouping nd_If-group { - // Extract next hop MAC address embedded in IPV6 address - // Type is an MO-Defined-Type - leaf macExtract { - description "Extract next hop MAC address"; + // Ephemeral data + leaf addrType { + config "false"; - // Type is an MO-Defined-Type - type nd_MacExtract; + type nd_AddrType; + description "IPv6 address"; } - // Disable sending RDNSS in - // Router-Advertisement messages - // Type is an MO-Defined-Type - leaf dnsSuppress { - description "Do not send RDNSS in router advertisement"; + // Ephemeral data + leaf dadState { + config "false"; + type string; + description "Dad state"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf dadAttempt { + config "false"; + type uint16; + description "Dad attempt"; } + } - // Disable sending DNSSL (DNS search-list) in - // Router-Advertisement messages - // Type is an MO-Defined-Type - leaf dnsSearchListSuppress { - description "Do not send DNSSL in router advertisement"; + grouping nd_VaddrStat-group { + description "ND VADDR statistics"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf vaddrProto { + config "false"; + type string; + description "VADDR protocol"; } - // Disable sending Route Information Options in RA messages - // Type is an MO-Defined-Type - leaf routeSuppress { - description "Do Not send Route Information in RA"; + // Ephemeral data + leaf groupId { + config "false"; + type uint16; + description "Group id"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf clientUUID { + config "false"; + type uint32; + description "client UUID"; } - // Set Default Router Preference Value (RFC 4191) - // Type is an MO-Defined-Type - leaf routerPreference { - description "Set Router Preference (RFC 4191)"; + // Ephemeral data + leaf clientState { + config "false"; - // Type is an MO-Defined-Type - type nd_RtPrefForCmd; + type nd_VaddrClientState; + description "Client state"; } - // Interface controls for: - // redirects, managed-config-flag, other-config-flag, - // supress-ra, supress-ra-mtu - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf clientInUse { + config "false"; + type uint16; + description "Client in use"; + } - // Type is an MO-Defined-Type - type nd_IfControl; + // Ephemeral data + leaf clientActiveState { + config "false"; + type string; + description "Client active or not"; + } + leaf interface { + config "false"; + type string; + description "Interface"; + } + leaf context { + config "false"; + type string; + description "Context Name (context-id)"; } - // Neighbor Solicitation: Sent by a node to determine the - // link-layer address of a neighbor, or to verify that a - // neighbor is still reachable via a cached link-layer - // address. Neighbor Solicitations are also used for - // Duplicate Address Detection. Retransmission interval between IPv6 neighbor - // solication messages - // Type is an MO-Defined-Type - leaf nsIntvl { - description "Neighbor Solicit Interval"; + // VADDR Statistics per i/f for + // specific client(protocol) -> VIP addr + // Ephemeral data + container vip-items { - // Type is an MO-Defined-Type - type nd_NsIntvl; + // Ephemeral data + list VaddrStatVip-list { + config "false"; + key "vAddr"; + + uses nd_VaddrStatVip-group; + description "VIP statistics list"; + } + description "VIP statistics"; } + } - // Retransmission retry count sending neighbor - // soliciation messages - // - // Routers send out Router Advertisement messages - // periodically, or in response to Router Solicitations Interval between sending ICMPv6 router advertisement - // messages - // Type is an MO-Defined-Type - leaf raIntvl { - description "Router Advertisement Interval"; + grouping nd_VaddrStatVip-group { + description "VIP statistics"; - // Type is an MO-Defined-Type - type nd_RaIntvl; + // Ephemeral data + leaf vAddr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // Interval between RA transmissions minimum - // Type is an MO-Defined-Type - leaf raIntvlMin { - description "Router Advertisement Interval Minimum"; - - // Type is an MO-Defined-Type - type nd_RaIntvlMin; + // Ephemeral data + leaf virtualMac { + config "false"; + type string; + description "Virtual MAC"; } - // Router Advertisement (RA) messages also contain Internet - // parameters such as the hop limit that hosts should - // use in outgoing packets and, optionally, link parameters - // such as the link MTU. This facilitates centralized - // administration of critical parameters that can be set on - // routers and automatically propagated to all attached - // hosts Hop limit - // Type is an MO-Defined-Type - leaf hopLimit { - description "Hop limit"; + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { + config "false"; - // Type is an MO-Defined-Type - type nd_HopLimit; + type nw_Counter64; + description "Total messages sent"; } - // Link MTU (sent in RA message) - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { + config "false"; - // Type is an MO-Defined-Type - type nd_Mtu; + type nw_Counter64; + description "Total messages received"; } - // Router Lifetime. The lifetime associated with the - // default router in units of seconds. - // Type is an MO-Defined-Type - leaf raLifetime { - description "Router Advertisement lifetime"; + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { + config "false"; - // Type is an MO-Defined-Type - type nd_RaLifetime; + type nw_Counter64; + description "Error messages sent"; } - // Reachable time. The time, in milliseconds, that a - // node assumes a neighbor is reachable after having - // received a reachability confirmation. Used by the - // Neighbor Unreachability Detection algorithm - // Type is an MO-Defined-Type - leaf reachableTime { - description "Reachable time"; + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { + config "false"; - // Type is an MO-Defined-Type - type nd_ReachableTime; + type nw_Counter64; + description "Error messages received"; } - // Retransmit timer. The time, in milliseconds, between - // retransmitted Neighbor Solicitation messages. Used - // by address resolution and the Neighbor Unreachability - // Detection algorithm. A value of zero means unspecified - // (by this router) - // Type is an MO-Defined-Type - leaf retransTimer { - description "Retransmit timer"; + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { + config "false"; - // Type is an MO-Defined-Type - type nd_RetransTimer; + type nw_Counter64; + description "Interface Down Drop Count sent"; } - // Duplicate address detection attempts limit - // Type is an MO-Defined-Type - leaf dadAttempts { - description "Dad attempts"; + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { + config "false"; - // Type is an MO-Defined-Type - type nd_DadAttempts; + type nw_Counter64; + description "Interface Down Drop Count received"; } - // Discover host from DADNS - // Type is an MO-Defined-Type - leaf dadnsInterval { - description "Dadns interval"; + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { + config "false"; - // Type is an MO-Defined-Type - type nd_DadnsInverval; + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type - leaf configError { + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { config "false"; - description "Config error"; - // Type is an MO-Defined-Type - type nd_ConfigErr; + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_Counter64; + description "Destination Unreachables sent"; } - // Static ND adjacency definitions - container sadj-items { - list StAdjEp-list { - config "false"; - key "addr"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Added containment: Prefix=sadj - // Acquired From Package nd - uses nd_StAdjEp-group; - } + type nw_Counter64; + description "Destination Unreachables received"; } - // DNS Search-list statistics - container dnsslif-items { + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Added containment as a singleton: Prefix=dnsslif - // Acquired From Package nd - uses nd_DNSIfSearchListStats-group; + type nw_Counter64; + description "Administratively Prohibited sent"; } - // DNS Server statistics - container dnsstat-items { + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; - // Added containment as a singleton: Prefix=dnsstat - // Acquired From Package nd - uses nd_DNSIfStats-group; + type nw_Counter64; + description "Administratively Prohibited received"; } - // This object holds all IPv6 ND Routes as children - container routes-items { + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Added containment as a singleton: Prefix=routes - // Acquired From Package nd - uses nd_IfRoutes-group; + type nw_Counter64; + description "Time Exceeded sent "; } - // A list of prefixes to be placed in Prefix Information - // options in Router Advertisement messages sent from the - // interface. - container pfx-items { - list Pfx-list { - key "addr"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Added containment: Prefix=pfx - // Acquired From Package nd - uses nd_Pfx-group; - } + type nw_Counter64; + description "Time Exceeded received"; } - container defpfx-items { + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Added containment as a singleton: Prefix=defpfx - // Acquired From Package nd - uses nd_DefaultPrefix-group; + type nw_Counter64; + description "Parameter Problems sent"; } - // ND DNS Server - container dns-items { - list RouteAdvDNSServer-list { - key "dnsServerAddr dnsSequenceNum"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Added containment: Prefix=dns - // Acquired From Package nd - uses nd_RouteAdvDNSServer-group; - } + type nw_Counter64; + description "Parameter Problems received"; } - // ND DNS Search List - container dnssl-items { - list RouteAdvDNSSearchList-list { - key "dnsSearchListName dnsSequenceNum"; + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { + config "false"; - // Added containment: Prefix=dnssl - // Acquired From Package nd - uses nd_RouteAdvDNSSearchList-group; - } + type nw_Counter64; + description "Echo Request sent"; } - container rtrstat-items { - list RouterStat-list { - config "false"; - key "routerAddr"; - // Added containment: Prefix=rtrstat - // Acquired From Package nd - uses nd_RouterStat-group; - } + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { + config "false"; + + type nw_Counter64; + description "Echo Request received"; } - // Interface statistics ND packet counters (per-i/f) - container ifstats-items { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { + config "false"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package nd - uses nd_IfStats-group; + type nw_Counter64; + description "Echo Replies sent"; } - // VADDR Statistics per i/f for specific client - container vaddrstat-items { - list VaddrStat-list { - config "false"; - key "vaddrProto"; + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { + config "false"; - // Added containment: Prefix=vaddrstat - // Acquired From Package nd - uses nd_VaddrStat-group; - } + type nw_Counter64; + description "Echo Replies received"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - container rtvrfMbr-items { + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_Counter64; + description "Redirects sent"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_Counter64; + description "Redirects received"; } - } - - grouping nd_StAdjEp-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nd_StAdjOperSt; + type nw_Counter64; + description "Packet Too Big sent"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type nd_StAdjOperStQual; + type nw_Counter64; + description "Packet Too Big received"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Router Advertisements sent"; } - leaf addr { + + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { config "false"; - type address_Ip; + + type nw_Counter64; + description "Router Advertisements received"; } - // Mac address - // Inherited From nd:AAdjEp - // Type is an MO-Defined-Type - leaf mac { + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { config "false"; - description "MAC"; - // Type is an MO-Defined-Type - type nd_AdjMac; + type nw_Counter64; + description "Router Solicitations sent"; } - // Rel-def target from EpDefRefToStAdjEpV6 - // Inherited From nd:StAdjEp - container rtfvEpDefRefToStAdjEpV6-items { - - // Abstract containment of rtfvEpDefRefToStAdjEpV6 derived from nd:StAdjEp - list RtFvEpDefRefToStAdjEpV6-list { - config "false"; - key "tDn"; + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { + config "false"; - // Added containment: Prefix=rtfvEpDefRefToStAdjEpV6 - // Acquired From Package fv - uses fv_RtFvEpDefRefToStAdjEpV6_target-group; - } + type nw_Counter64; + description "Router Solicitations received"; } - } - grouping nd_DNSIfSearchListStats-group { - leaf dnsSearchListSuppress { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { config "false"; - type boolean; - } - container server-items { - list DNSSearchListStats-list { - config "false"; - key "dnsSearchList"; - // Added containment: Prefix=server - // Acquired From Package nd - uses nd_DNSSearchListStats-group; - } + type nw_Counter64; + description "Neighbor Advertisements sent"; } - } - grouping nd_DNSSearchListStats-group { - leaf dnsSearchList { + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { config "false"; - type string; + + type nw_Counter64; + description "Neighbor Advertisements received"; } - leaf dnsSearchListLife { + + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { config "false"; - type uint32; + + type nw_Counter64; + description "Neighbor Solicitations sent"; } - leaf dnsSearchListSeq { + + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Neighbor Solicitations received"; } - } - grouping nd_DNSIfStats-group { - leaf dnsServerSuppress { + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { config "false"; - type boolean; - } - container server-items { - list DNSServerStats-list { - config "false"; - key "addr"; - // Added containment: Prefix=server - // Acquired From Package nd - uses nd_DNSServerStats-group; - } + type nw_Counter64; + description "Duplicate router RA received"; } - } - grouping nd_DNSServerStats-group { - leaf addr { + // Ephemeral data + leaf lastNghbrSolicitSent { config "false"; - type address_Ip; + type string; + description "Last neighbor solicitation sent"; } - leaf dnsServerLife { + + // Ephemeral data + leaf lastNghbrAdvertisementSent { config "false"; - type uint32; + type string; + description "Last neighbor advertisement sent"; } - leaf dnsServerSeq { + + // Ephemeral data + leaf lastRouterAdvertisementSent { config "false"; - type uint32; + type string; + description "Last router advertisement sent"; } - } - - grouping nd_IfRoutes-group { - // This object holds IPv6 ND Route command related properties - container rt-items { - list Route-list { - key "ndRouteAddr"; - - // Added containment: Prefix=rt - // Acquired From Package nd - uses nd_Route-group; - } + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; + type string; + description "Next neighbor advertisement sent"; } } - grouping nd_Route-group { - leaf ndRouteAddr { - type address_Ip; - } - - // Nd Route Life Time - // Type is an MO-Defined-Type - leaf ndRouteLifeTime { - description "Nd Route life time"; + grouping nd_VaddrGlobalStat-group { + description "ND offlist vlan statistics"; - // Type is an MO-Defined-Type - type nd_NdRtLifeTime; + // Ephemeral data + leaf vAddr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // Nd Route Infinite Life Time - // Type is an MO-Defined-Type - leaf ndRouteLifeTimeInfinite { - description "Nd Route life time infinite"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf protocol { + config "false"; + type string; + description "Protocol"; } - // Set Default Route Preference Value for ND Route (RFC 4191) - // Type is an MO-Defined-Type - leaf routePreference { - description "Set Route Preference for ND Route (RFC 4191)"; - - // Type is an MO-Defined-Type - type nd_RtPrefForNdRt; + // Ephemeral data + leaf virtualMac { + config "false"; + type string; + description "Virtual MAC"; } - // Verify if route is present in Route table - // Type is an MO-Defined-Type - leaf verifyReachability { - description "Verify if route is present in Route table"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf groupId { + config "false"; + type uint16; + description "Group id"; } - } - grouping nd_Pfx-group { - leaf addr { - type address_Ip; + // Ephemeral data + leaf clientUUID { + config "false"; + type uint32; + description "client UUID"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf lifetime { - description "Valid Lifetime"; + // Ephemeral data + leaf clientState { + config "false"; - // Type is an MO-Defined-Type - type nd_Lifetime; + type nd_VaddrClientState; + description "Client state"; } - // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf prefLifetime { - description "Preferred Lifetime"; + // Ephemeral data + leaf clientInUse { + config "false"; + type uint16; + description "Client in use"; + } - // Type is an MO-Defined-Type - type nd_PrefLifetime; + // Ephemeral data + leaf clientActiveState { + config "false"; + type string; + description "Client active or not"; } - // RA prefix Controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Prefix Controls"; + // Ephemeral data + leaf interface { + config "false"; + type string; + description "Interface"; + } - // Type is an MO-Defined-Type - type nd_PfxControl; + // Ephemeral data + leaf context { + config "false"; + type string; + description "Context Name (context-id)"; } } - grouping nd_DefaultPrefix-group { + grouping nd_IpV6Throttle-group { + description "IPV6 throttling"; - // Default prefix - // Type is an MO-Defined-Type - leaf defPrefix { - description "Default prefix"; + // Enable / Disable glean throttling + leaf adminSt { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Glean throttle state"; } - // Valid lifetime of the prefix default - // Type is an MO-Defined-Type - leaf defLifetime { - description "Valid lifetime for default prefix"; + // Threshold for syslog for number of packets hitting the entry + leaf syslog { - // Type is an MO-Defined-Type - type nd_Lifetime; + type nd_SyslogCnt; + description "Glean throttle syslog for number of packets"; } - // Preferred lifetime of the prefix default - // Type is an MO-Defined-Type - leaf defPrefLifetime { - description "Preferred lifetime for default prefix"; + // Max throttle packets count. Crossing this threshold, + // packet will not be throttled for a particular adjacency + leaf maxPacket { - // Type is an MO-Defined-Type - type nd_PrefLifetime; + type nd_MaxPacket; + description "Glean throttle pack count"; } - // Default RA prefix Controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Prefix Controls"; + // Timeout for throttle setting for a particular adjacency + leaf timeout { - // Type is an MO-Defined-Type - type nd_PfxControl; + type nd_ThrTimeout; + description "Ipv4 glean throttle timeout"; } } - grouping nd_RouteAdvDNSServer-group { - leaf dnsServerAddr { - type address_Ip; - } + grouping nd_Vpc-group { + description "Ipv6 Nd Synchronize"; - // DNS Server Life Time - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf dnsServerLifeTime { - description "DNS server life time"; + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system + container dom-items { + list VpcDom-list { + key "domainId"; - // Type is a Local-MO-Defined-Type - type nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime; + uses nd_VpcDom-group; + description "VPC Domain list"; + } + description "VPC Domain"; } + } - // DNS Server Infinite Life Time - // Type is an MO-Defined-Type - leaf dnsServerLifeTimeInfinite { - description "DNS server life time infinite"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping nd_VpcDom-group { + description "VPC Domain"; - // DNS Server Sequence Number - // Type is an MO-Defined-Type - leaf dnsSequenceNum { - description "DNS server sequence number"; + leaf domainId { - // Type is an MO-Defined-Type - type nd_DNSSeqNum; + type vpc_DomId; + description "Respective VPC Domain"; } - // Flag to indicate if dns server is configured or not - // Type is an MO-Defined-Type - leaf dnsServer { - description "IPv6 nd ra DNS server"; + // Enable/Disable IPV6 ND SYNC + leaf ndSync { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "IPV6 ND Sync"; } } - grouping nd_RouteAdvDNSSearchList-group { - leaf dnsSearchListName { - type string; - } - - // DNS Search List Life Time - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf dnsSearchListLifeTime { - description "DNS search list life time"; + grouping nd_L2Stat-group { + description "L2 Interface Statistics"; - // Type is a Local-MO-Defined-Type - type nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime; - } + // Ephemeral data + container if-items { - // DNS Search List Infinite Life Time - // Type is an MO-Defined-Type - leaf dnsSearchListLifeTimeInfinite { - description "DNS search list life time infinite"; + // Ephemeral data + list L2If-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_L2If-group; + description "L2 Interface list"; + } + description "L2 Interface"; } + } - // DNS Search List Sequence Number - // Type is an MO-Defined-Type - leaf dnsSequenceNum { - description "DNS search list sequence number"; - - // Type is an MO-Defined-Type - type nd_DNSSeqNum; - } + grouping nd_L2If-group { + description "L2 Interface"; - // Flag to indicate if dns search list is configured or not - // Type is an MO-Defined-Type - leaf dnssl { - description "IPv6 nd ra DNS search list"; + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Interface"; } - } - grouping nd_RouterStat-group { - leaf routerAddr { - config "false"; - type address_Ip; - } - leaf ifName { - config "false"; - type string; - } - leaf lastUpdateTime { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf hopLimit { - config "false"; - type uint32; - } - leaf lifetime { - config "false"; - type uint32; - } - leaf addrFlag { + // Ephemeral data + leaf ndPackets { config "false"; - type uint16; + type uint64; + description "Total ND Packets On L2 Interface"; } - leaf otherFlag { + } + + grouping nd_OffListVlan-group { + description "ND offlist vlan statistics"; + + // Ephemeral data + leaf vlanId { config "false"; type uint16; + description "Offlist vlan id"; } - leaf mtu { + + // Ephemeral data + leaf totalOfflistEntries { config "false"; type uint16; + description "Total offlist entries for vlan"; } - leaf homeagentFlag { + + // Ephemeral data + leaf addr { config "false"; - type uint16; + type address_Ip; + description "Address"; } - // Type is an MO-Defined-Type - leaf preference { + // Ephemeral data + leaf age { config "false"; - description "Preference flag"; - - // Type is an MO-Defined-Type - type nd_RouterPreference; + type string; + description "Age"; } - leaf reachableTime { + + // Ephemeral data + leaf macAddr { config "false"; - type uint64; + type string; + description "Mac address"; } - leaf retransmissionTime { + + // Ephemeral data + leaf flags { config "false"; - type uint64; + type uint16; + description "Address"; } - container pfxstat-items { - list RaPrefixStat-list { + } + + grouping nd_ProxyStat-group { + description "ND Proxy Statistics"; + + // Ephemeral data + container vlan-items { + + // Ephemeral data + list VlanIntf-list { config "false"; - key "prefixAddr"; + key "id"; - // Added containment: Prefix=pfxstat - // Acquired From Package nd - uses nd_RaPrefixStat-group; + uses nd_VlanIntf-group; + description "Vlan Interface list"; } + description "Vlan Interface"; } } - grouping nd_RaPrefixStat-group { - leaf prefixAddr { - config "false"; - type address_Ip; - } - leaf onlinkFlag { + grouping nd_VlanIntf-group { + description "Vlan Interface"; + + // Ephemeral data + leaf id { config "false"; - type boolean; + + type nw_IfId; + description "Interface"; } - leaf autonomousFlag { - config "false"; - type boolean; + + // Ephemeral data + container if-items { + + // Ephemeral data + list PhysicalIntf-list { + config "false"; + key "id"; + + uses nd_PhysicalIntf-group; + description "Physical Interface list"; + } + description "Physical Interface"; } - leaf validLifetime { + } + + grouping nd_PhysicalIntf-group { + description "Physical Interface"; + + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Interface"; } - leaf prefLifetime { + + // Ephemeral data + leaf numProxies { config "false"; - type uint32; + type string; + description "Number of Proxies in Last 24 Hours"; } } - grouping nd_IfStats-group { + grouping nd_GlobalTrafficStats-group { + description "ICMPv6/ND global traffic counters"; // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf totSent { config "false"; - description "Total messages sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Total messages sent"; } // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf totRvcd { config "false"; - description "Total messages received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Total messages received"; } // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf errSent { config "false"; - description "Error messages sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Error messages sent"; } // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf errRcvd { config "false"; - description "Error messages received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Error messages received"; } // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf ifDownDropSent { config "false"; - description "Interface Down Drop Count sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Interface Down Drop Count sent"; } // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf ifDownDropRcvd { config "false"; - description "Interface Down Drop Count received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Interface Down Drop Count received"; } // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropHaNotRdy { config "false"; - description "Adjacency not recovered from AM after HA"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropInvldTtlMct { config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropSrcMacOwnRcvd { config "false"; - description "Pkts dropped as source mac addr is own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropTgtIpNotOwnRcvd { config "false"; - description "Pkts dropped as tgt ip addr is not own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropSrcIpNotOwnRcvd { config "false"; - description "Pkts dropped as src ip addr is not own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf destUnreachSent { config "false"; - description "Destination Unreachables sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Destination Unreachables sent"; } // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf destUnreachRcvd { config "false"; - description "Destination Unreachables received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Destination Unreachables received"; } // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf adminProhibSent { config "false"; - description "Administratively Prohibited sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Administratively Prohibited sent"; } // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf adminProhibRcvd { config "false"; - description "Administratively Prohibited received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Administratively Prohibited received"; } // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf timeExcdSent { config "false"; - description "Time Exceeded sent "; - // Type is an MO-Defined-Type type nw_Counter64; + description "Time Exceeded sent "; } // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf timeExcdRcvd { config "false"; - description "Time Exceeded received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Time Exceeded received"; } // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf parmPrblmSent { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Parameter Problems sent"; } // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf parmPrblmRcvd { config "false"; - description "Parameter Problems received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Parameter Problems received"; } // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoReqSent { config "false"; - description "Echo Request sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Request sent"; } // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoReqRcvd { config "false"; - description "Echo Request received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Request received"; } // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoRepSent { config "false"; - description "Echo Replies sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Replies sent"; } // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoRepRcvd { config "false"; - description "Echo Replies received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Replies received"; } // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf redirSent { config "false"; - description "Redirects sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Redirects sent"; } // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf redirRcvd { config "false"; - description "Redirects received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Redirects received"; } // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf tooBigSent { config "false"; - description "Packet Too Big sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Packet Too Big sent"; } // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf tooBigRcvd { config "false"; - description "Packet Too Big received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Packet Too Big received"; } // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf raSent { config "false"; - description "Router Advertisements sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Advertisements sent"; } // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf raRcvd { config "false"; - description "Router Advertisements received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Advertisements received"; } // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf rsSent { config "false"; - description "Router Solicitations sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Solicitations sent"; } // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf rsRcvd { config "false"; - description "Router Solicitations received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Solicitations received"; } // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf naSent { config "false"; - description "Neighbor Advertisements sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Advertisements sent"; } // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf naRcvd { config "false"; - description "Neighbor Advertisements received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Advertisements received"; } // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf nsSent { config "false"; - description "Neighbor Solicitations sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Solicitations sent"; } // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf nsRcvd { config "false"; - description "Neighbor Solicitations received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Solicitations received"; } // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dupRAReceived { config "false"; - description "Duplicate router RA received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Duplicate router RA received"; } // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpthRcvd { config "false"; - description "Fastpath Packets"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Fastpath Packets"; } // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpathDsbleIgnRcvd { config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpathOtherIgnRcvd { config "false"; - description "Ignored fastpath packets - others"; - // Type is an MO-Defined-Type type nw_Counter64; - } - leaf lastNghbrSolicitSent { - config "false"; - type string; - } - leaf lastNghbrAdvertisementSent { - config "false"; - type string; - } - leaf lastRouterAdvertisementSent { - config "false"; - type string; - } - leaf nextRouterAdvertisementSent { - config "false"; - type string; - } - leaf nsRetransmitInterval { - config "false"; - type uint64; - } - leaf ndNudRetryBase { - config "false"; - type uint64; - } - leaf ndNudRetryInterval { - config "false"; - type uint64; - } - leaf ndNudRetryAttemps { - config "false"; - type uint64; - } - leaf sendRedirect { - config "false"; - type boolean; - } - leaf redirectCause { - config "false"; - type uint64; - } - leaf sendUnreachables { - config "false"; - type boolean; - } - leaf maxDadAttempts { - config "false"; - type uint16; - } - leaf currentDadAttempt { - config "false"; - type uint16; - } - leaf ifState { - config "false"; - type string; - } - leaf ifAddr { - config "false"; - type string; - } - leaf linkLocalAddr { - config "false"; - type string; - } - leaf linkLocalAddrState { - config "false"; - type string; - } - leaf ndMacExtractState { - config "false"; - type string; - } - leaf statsLastReset { - config "false"; - type string; + description "Ignored fastpath packets - others"; } - // Vinci specific: Proxy NA count @@@ ICMPV6_PKT_PROXY_NA_CNT - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNaCount { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT + // Ephemeral data + leaf mldV1QueriesSent { config "false"; - description "Proxy NA count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V1 queries sent"; } - // Vinci specific: Proxy NA to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NA - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNaToBdCount { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT + // Ephemeral data + leaf mldV1QueriesRecv { config "false"; - description "Proxy NA to BD count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V1 queries received"; } - // Vinci specific: Proxy NS to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NS - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNsToBdCount { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT + // Ephemeral data + leaf mldV2QueriesSent { config "false"; - description "Proxy NS to BD count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V2 queries sent"; } - // Vinci specific: RARP NS Count @@@ ICMPV6_PKT_NS_SENT_FOR_RARP_CASE - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf rarpNsCount { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT + // Ephemeral data + leaf mldV2QueriesRecv { config "false"; - description "RARP NS count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V2 queries received"; } - container ra-items { - - // Added containment as a singleton: Prefix=ra - // Acquired From Package nd - uses nd_RouterAdv-group; - } - - container vip-items { - - // Added containment as a singleton: Prefix=vip - // Acquired From Package nd - uses nd_IfVipClientStats-group; - } - container addr-items { - list IfIPv6AddrStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=addr - // Acquired From Package nd - uses nd_IfIPv6AddrStats-group; - } - } - container pfx-items { - list PrefixStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=pfx - // Acquired From Package nd - uses nd_PrefixStats-group; - } - } - container rt-items { - list RouteStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=rt - // Acquired From Package nd - uses nd_RouteStats-group; - } - } - container addrtree-items { - list AddrTreeStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=addrtree - // Acquired From Package nd - uses nd_AddrTreeStats-group; - } - } - } - - grouping nd_RouterAdv-group { - leaf raInterval { - config "false"; - type uint64; - } - leaf raIntervalMin { - config "false"; - type uint64; - } - leaf mFlag { - config "false"; - type boolean; - } - leaf oFlag { - config "false"; - type boolean; - } - leaf hopLimit { - config "false"; - type uint64; - } - leaf mtu { - config "false"; - type uint64; - } - leaf routerLifetime { + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV1ReportsSent { config "false"; - type uint64; + + type nw_Counter64; + description "V1 reports sent"; } - leaf reachableTime { + + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV1ReportsRecv { config "false"; - type uint64; + + type nw_Counter64; + description "V1 reports received"; } - leaf retransmitTime { + + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV2ReportsSent { config "false"; - type uint64; + + type nw_Counter64; + description "V2 reports sent"; } - leaf suppressRa { + + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV2ReportsRecv { config "false"; - type boolean; + + type nw_Counter64; + description "V2 reports received"; } - leaf suppressRaMtu { + + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT + // Ephemeral data + leaf mldV1LeavesSent { config "false"; - type boolean; + + type nw_Counter64; + description "V1 leaves sent"; } - } - grouping nd_IfVipClientStats-group { - container vipaddr-items { - list IfVipAddrStats-list { - config "false"; - key "addr"; + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT + // Ephemeral data + leaf mldV1LeavesRecv { + config "false"; - // Added containment: Prefix=vipaddr - // Acquired From Package nd - uses nd_IfVipAddrStats-group; - } + type nw_Counter64; + description "V1 leaves received"; } } - grouping nd_IfVipAddrStats-group { - leaf addr { + grouping nd_VaddrLinkLocalStat-group { + description "ICMPv6/ND link local vaddr statistics"; + + // Ephemeral data + leaf vAddr { config "false"; type address_Ip; + description "Virtual IPv6 address"; } - leaf lastNghbrSolicitSent { - config "false"; - type string; - } - leaf lastNghbrAdvertisementSent { + + // Ephemeral data + leaf virtualMac { config "false"; type string; + description "Virtual MAC"; } - leaf lastRouterAdvertisementSent { + + // Ephemeral data + leaf interface { config "false"; type string; + description "Interface name"; } - leaf nextRouterAdvertisementSent { + + // Ephemeral data + leaf active { config "false"; type string; + description "Active state"; } } - grouping nd_IfIPv6AddrStats-group { - leaf addr { - config "false"; - type address_Ip; - } - leaf addrState { + grouping nd_VPCStat-group { + description "ND/ICMPv6 VPC statistics"; + + // Ephemeral data + leaf cfsStatus { config "false"; type string; + description "IPv6 ND sync status"; } - } - grouping nd_PrefixStats-group { - leaf addr { + // Ephemeral data + leaf layer3Routing { config "false"; - type address_Ip; + type string; + description "IPv6 ND L3 routing"; } - leaf maskLen { + + // Ephemeral data + leaf syncProcDropRecvPullReq { config "false"; type uint16; - } - leaf enabled { - config "false"; - type boolean; + description "Drop the received CFS pull request"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf lifetime { + // Ephemeral data + leaf syncProcDropRecvPushMsg { config "false"; - description "Valid Lifetime"; - - // Type is an MO-Defined-Type - type nd_Lifetime; + type uint16; + description "Drop the received CFS push message"; } - // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf prefLifetime { + // Ephemeral data + leaf syncIgnoreSendPullReq { config "false"; - description "Preferred Lifetime"; - - // Type is an MO-Defined-Type - type nd_Lifetime; + type uint16; + description "Ignore to send pull request using CFSoE"; } - leaf onLink { + + // Ephemeral data + leaf syncIgnoreSendPushMsg { config "false"; - type boolean; + type uint16; + description "Ignore to send push message using CFSoE"; } - leaf offLink { + + // Ephemeral data + leaf syncDropIMApiFailed { config "false"; - type boolean; + type uint16; + description "IM api failed while processing CFS payload"; } - leaf autonomous { + + // Ephemeral data + leaf syncDropMcemApiFailed { config "false"; - type boolean; + type uint16; + description "MCECM api failed while processing CFS payload"; } - leaf rtrAddr { + + // Ephemeral data + leaf syncDropInvalidPcIod { config "false"; - type boolean; + type uint16; + description "Invalid MCT port-channel iod for CFS payload"; } - leaf ifAssignedAddr { + + // Ephemeral data + leaf syncProcDropPtLookupFailed { config "false"; - type boolean; + type uint16; + description "PT lookup failed while processing CFS payload"; } - leaf refCount { + + // Ephemeral data + leaf syncProcDropRespFailedNomct { config "false"; - type uint32; + type uint16; + description "Invalid MCT iod while processing CFS payload"; } - } - grouping nd_RouteStats-group { - leaf addr { + // Ephemeral data + leaf syncProcDropRespFailed { config "false"; - type address_Ip; + type uint16; + description "Sending CFS response failed for CFS payload"; } - // Type is an MO-Defined-Type - leaf routePreference { + // Ephemeral data + leaf syncProcDropMCEMIfindexVpcConvFailed { config "false"; - description "Route Preference"; - - // Type is an MO-Defined-Type - type nd_RouterPreference; + type uint16; + description "Unabled to retrieve VPC id from ifindex for push"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf routeLifetime { + // Ephemeral data + leaf syncProcDropMCEMVpcIfindexConvFailed { config "false"; - description "Route Lifetime"; - - // Type is an MO-Defined-Type - type nd_OperNdRtLifeTime; + type uint16; + description "Unabled to retrieve ifindex from vpc id"; } - leaf octetUnits { + + // Ephemeral data + leaf PeriodicSyncProcDropMCEMIfindexVpcConvFailed { config "false"; - type uint32; + type uint16; + description "Unabled to retrieve VPC id from ifindex during periodic sync"; } - leaf verifyReachability { + + // Ephemeral data + leaf periodicSyncProcDropMCEMVpcIfindexConvFailed { config "false"; - type boolean; + type uint16; + description "Unabled to retrieve ifindex from vpc id during periodic sync"; } - leaf advRouteInRoute { + + // Ephemeral data + leaf syncProcRespSent { config "false"; - type boolean; + type uint16; + description "Response sent via CFSoE"; } - leaf advRouteWithZeroLifetime { + + // Ephemeral data + leaf syncProcRespRcvd { config "false"; - type boolean; + type uint16; + description "Response received via CFSoE"; } - } - grouping nd_AddrTreeStats-group { - leaf addr { + // Ephemeral data + leaf syncProcRespRcvdErr { config "false"; - type address_Ip; + type uint16; + description "Response received via CFSoE with errors"; } - leaf maskLen { + + // Ephemeral data + leaf syncProcRcvdMsg { config "false"; - type uint8; + type uint16; + description "Received message via CFSoE"; } - // Type is an MO-Defined-Type - leaf addrType { + // Ephemeral data + leaf syncProcSendFailed { config "false"; - description "IPv6 address"; - - // Type is an MO-Defined-Type - type nd_AddrType; + type uint16; + description "Send message failed via CFSoE"; } - leaf dadState { + + // Ephemeral data + leaf syncProcCfsRelDlvryFailed { config "false"; - type string; + type uint16; + description "MCECM send api failed via CFSoE"; } - leaf dadAttempt { + + // Ephemeral data + leaf syncProcCfsRelDlvrySuccess { config "false"; type uint16; + description "Send message succeeded via CFSoE"; } - } - grouping nd_VaddrStat-group { - leaf vaddrProto { + // Ephemeral data + leaf offlistProcDropPtAddFailed { config "false"; - type string; + type uint16; + description "PT add failed while processing offlist DB"; } - leaf groupId { + + // Ephemeral data + leaf offlistProcDropNoMem { config "false"; type uint16; + description "Memory alloc failed while processing offlist DB"; } - leaf clientUUID { + + // Ephemeral data + leaf offlistProcDropTmrCreateFailed { config "false"; - type uint32; + type uint16; + description "Timer create failed while processing offlist DB"; } - // From Interface nd:VADDRCommonField - // Type is an MO-Defined-Type - leaf clientState { + // Ephemeral data + leaf offlistProcDropAddAdjFailed { config "false"; - description "Client state"; - - // Type is an MO-Defined-Type - type nd_VaddrClientState; + type uint16; + description "Adjacency addition failed while processing offlist DB"; } - leaf clientInUse { + + // Ephemeral data + leaf offlistProcDropPtLookupFailed { config "false"; type uint16; + description "PT lookup failed while processing offlist DB"; } - leaf clientActiveState { + + // Ephemeral data + leaf offlistProcNoDropVlanMismatch { config "false"; - type string; + type uint16; + description "VLAN mismatch while processing offlist DB"; } - leaf interface { + + // Ephemeral data + leaf offlistProcDropSVIInvalid { config "false"; - type string; + type uint16; + description "SVI is invalid while processing offlist DB"; } - leaf context { + + // Ephemeral data + leaf offlistProcNoDropSVIDown { config "false"; - type string; + type uint16; + description "SVI is down while processing offlist DB"; } - // VADDR Statistics per i/f for - // specific client(protocol) -> VIP addr - container vip-items { - list VaddrStatVip-list { - config "false"; - key "vAddr"; - - // Added containment: Prefix=vip - // Acquired From Package nd - uses nd_VaddrStatVip-group; - } + // Ephemeral data + leaf offlistProcDropMCTDown { + config "false"; + type uint16; + description "MCT is down while processing offlist DB"; } - } - grouping nd_VaddrStatVip-group { - leaf vAddr { + // Ephemeral data + leaf offlistProcDropCtxtInvalid { config "false"; - type address_Ip; + type uint16; + description "Ctxt_type is invalid while processing offlist DB"; } - leaf virtualMac { + + // Ephemeral data + leaf offlistProcDropVRFInvalid { config "false"; - type string; + type uint16; + description "VRF invalid while processing offlist DB"; } - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { + // Ephemeral data + leaf offlistProcDropL3addrInvalid { config "false"; - description "Total messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IP address invalid while processing offlist DB"; } - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { + // Ephemeral data + leaf offlistProcDropL3addrSanityFailed { config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IP address sanity failed while processing offlist DB"; } - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { + // Ephemeral data + leaf offlistProcDropMacSanityFailed { config "false"; - description "Error messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "MAC sanity failed while processing offlist DB"; } - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { + // Ephemeral data + leaf offlistProcDropOwnMac { config "false"; - description "Error messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own MAC while processing offlist DB"; } - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { + // Ephemeral data + leaf offlistProcDropOwnIpv6Addr { config "false"; - description "Interface Down Drop Count sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own IPv6 address while processing offlist DB"; } - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { + // Ephemeral data + leaf offlistProcDropOwnVIPv6Addr { config "false"; - description "Interface Down Drop Count received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own VIPv6 address while processing offlist DB"; } - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { + // Ephemeral data + leaf offlistProcDropCreateAdjFailed { config "false"; - description "Adjacency not recovered from AM after HA"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Create adjacency failed while processing offlist DB"; } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { + // Ephemeral data + leaf offlistProcDropSubnetMismatch { config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Subnet mismatch while processing offlist DB"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { + // Ephemeral data + leaf offlistProcDropAdjAlreadyExist { config "false"; - description "Pkts dropped as source mac addr is own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Adj already exist while processing offlist DB"; } - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { + // Ephemeral data + leaf offlistProcNoDropIpv6Disabled { config "false"; - description "Pkts dropped as tgt ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IPv6 disabled on interface while processing offlist DB"; } - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { + // Ephemeral data + leaf offlistProcDropCount { config "false"; - description "Pkts dropped as src ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total drop count while processing offlist DB"; } - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { + // Ephemeral data + leaf offlistProcNoDropCount { config "false"; - description "Destination Unreachables sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total do not count while processing offlist DB"; } - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { + // Ephemeral data + leaf offlistProcAddAdj { config "false"; - description "Destination Unreachables received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total adjacency additions in offlist DB"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { + // Ephemeral data + leaf offlistProcDelAdj { config "false"; - description "Administratively Prohibited sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total adjacency deletion in offlist DB"; } - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { + // Ephemeral data + leaf offlistProcAdjAlreadyExist { config "false"; - description "Administratively Prohibited received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total duplicate adjacencies ignored in offlist DB"; } + } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + grouping ngmvpn_Entity-group { + description "Fabric Group Manager Entity, which hold NGMVPN entity information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { + // Operational state + leaf operSt { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_EntOperSt; + description "Operational State"; } - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { + // Operational errors qualifier + leaf operErr { config "false"; - description "Parameter Problems received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // This objects hold per ngmvpn instance information. There is only + // one instance of ngmvpn running in the system today + container inst-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses ngmvpn_Inst-group; + description "NGMVPN Instance MO"; } + } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping ngmvpn_Inst-group { + description "NGMVPN Instance MO"; + leaf overlayDistributedDr { + type boolean; + description "Overlay Distributed DR flag"; + } + leaf overlaySptOnly { + type boolean; + default "true"; + description "Overlay SPT only flag"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { - config "false"; - description "Redirects sent"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_InstCtrl; + description "Controls"; } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { + // Operational errors qualifier + leaf operErr { config "false"; - description "Redirects received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Address family type + // Ephemeral data + container af-items { - // Type is an MO-Defined-Type - type nw_Counter64; - } + // Ephemeral data + list Af-list { + config "false"; + key "type"; - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + uses ngmvpn_Af-group; + description "Specifies IPv4 or IPv6 type Address-Family list"; + } + description "Specifies IPv4 or IPv6 type Address-Family"; + } + container eventhist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ngmvpn_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; + } + description "This object holds configuration details of event-history buffers"; } + } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { + grouping ngmvpn_Af-group { + description "Specifies IPv4 or IPv6 type Address-Family"; + + // Type + // Ephemeral data + leaf type { config "false"; - description "Router Advertisements sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ngmvpn_AfT; + description "Type of Address-Family, where 0 represents IPv4 and 1 represents IPv6"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // This object holds mrib route db information + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Db-list { + config "false"; + key "dbtype"; + + uses ngmvpn_Db-group; + description "NGMVPN DB to query either ipv4 or ipv6 routes list"; + } + description "NGMVPN DB to query either ipv4 or ipv6 routes"; } + } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { + grouping ngmvpn_Db-group { + description "NGMVPN DB to query either ipv4 or ipv6 routes"; + + // Type of the repository + // Ephemeral data + leaf dbtype { config "false"; - description "Router Solicitations sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ngmvpn_DbT; + description "DB Type, where 0 represents IPv4 routes and 1 represents IPv6 routes"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { + leaf name { config "false"; - description "Router Solicitations received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vni-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Vni-list { + config "false"; + key "id"; + + uses ngmvpn_Vni-group; + description "Holds NGMVPN VNI information list"; + } + description "Holds NGMVPN VNI information"; } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses ngmvpn_Vrf-group; + description "Holds per NGMVPN domain (vrf) information list"; + } + description "Holds per NGMVPN domain (vrf) information"; } + } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + grouping ngmvpn_Vni-group { + description "Holds NGMVPN VNI information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "VNI ID"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + // Ephemeral data + container l2route-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list L2route-list { + config "false"; + key "src grp"; + + uses ngmvpn_L2route-group; + description "NGMVPN L2 route information list"; + } + description "NGMVPN L2 route information"; } + } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + grouping ngmvpn_L2route-group { + description "NGMVPN L2 route information"; - // Type is an MO-Defined-Type - type nw_Counter64; - } - leaf lastNghbrSolicitSent { + // Ephemeral data + leaf maskLen { config "false"; - type string; + type uint32; + description "Mask Length"; } - leaf lastNghbrAdvertisementSent { + + // Ephemeral data + leaf src { config "false"; - type string; + type address_Ip; + description "Source Address"; } - leaf lastRouterAdvertisementSent { + + // Ephemeral data + leaf grp { config "false"; - type string; + type address_Ip; + description "Group Address"; } - leaf nextRouterAdvertisementSent { - config "false"; - type string; + + // Fabric node + // Ephemeral data + container fabNode-items { + + // Ephemeral data + list FabNode-list { + config "false"; + key "ipAddr"; + + uses ngmvpn_FabNode-group; + description "Interested Fabric nodes list"; + } + description "Interested Fabric nodes"; } } - grouping nd_VaddrGlobalStat-group { - leaf vAddr { + grouping ngmvpn_FabNode-group { + description "Interested Fabric nodes"; + + // Ephemeral data + leaf ipAddr { config "false"; type address_Ip; + description "Fabric node IP Address"; } - leaf protocol { + } + + grouping ngmvpn_Vrf-group { + description "Holds per NGMVPN domain (vrf) information"; + + // Ephemeral data + leaf name { config "false"; type string; + description "Vrf Name"; } - leaf virtualMac { - config "false"; - type string; + + // This object holds mrib route group information + // Ephemeral data + container group-items { + + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; + + uses ngmvpn_Group-group; + description "NGMVPN Route Group list"; + } + description "NGMVPN Route Group"; } - leaf groupId { + } + + grouping ngmvpn_Group-group { + description "NGMVPN Route Group"; + + // Ephemeral data + leaf grpAddr { config "false"; - type uint16; + type address_Ip; + description "Group Address"; } - leaf clientUUID { + leaf maskLen { config "false"; type uint32; + description "Mask Length of the group address"; } - // From Interface nd:VADDRCommonField - // Type is an MO-Defined-Type - leaf clientState { - config "false"; - description "Client state"; + // This object holds mrib route group information + // Ephemeral data + container source-items { - // Type is an MO-Defined-Type - type nd_VaddrClientState; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; + + uses ngmvpn_Source-group; + description "NGMVPN Route Source address list"; + } + description "NGMVPN Route Source address"; } - leaf clientInUse { + } + + grouping ngmvpn_Source-group { + description "NGMVPN Route Source address"; + + // Ephemeral data + leaf srcAddr { config "false"; - type uint16; + type address_Ip; + description "Source Address"; } - leaf clientActiveState { + leaf maskLen { config "false"; - type string; + type uint32; + description "Mask Length of the source address"; } - leaf interface { + leaf uptime { config "false"; type string; + description "Uptime of the route"; } - leaf context { - config "false"; - type string; + + // Fabric node + // Ephemeral data + container fabNode-items { + + // Ephemeral data + list FabNode-list { + config "false"; + key "ipAddr"; + + uses ngmvpn_FabNode-group; + description "Interested Fabric nodes list"; + } + description "Interested Fabric nodes"; } } - grouping nd_IpV6Throttle-group { + grouping ngmvpn_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Enable / Disable glean throttling - // Type is an MO-Defined-Type - leaf adminSt { - description "Glean throttle state"; + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ngmvpn_EhType; + description "Configures type of event history"; } - // Threshold for syslog for number of packets hitting the entry - // Type is an MO-Defined-Type - leaf syslog { - description "Glean throttle syslog for number of packets"; + leaf size { - // Type is an MO-Defined-Type - type nd_SyslogCnt; + type ngmvpn_Size; + description "Configures buffer size in text per kb"; } + } - // Max throttle packets count. Crossing this threshold, - // packet will not be throttled for a particular adjacency - // Type is an MO-Defined-Type - leaf maxPacket { - description "Glean throttle pack count"; + grouping openflow_Entity-group { + description "Openflow Entity Object"; - // Type is an MO-Defined-Type - type nd_MaxPacket; + // Admin State of OpenFlow + leaf ofAdminSt { + + type nw_AdminSt; + default "disabled"; + description "OpenFlow Admin State"; } - // Timeout for throttle setting for a particular adjacency - // Type is an MO-Defined-Type - leaf timeout { - description "Ipv4 glean throttle timeout"; + // This object holds per openflow instance information. There is + // only one instance of openflow switch instance configuration + // allowed today + container pipeline-items { + list Inst-list { + key "pipelineId"; - // Type is an MO-Defined-Type - type nd_ThrTimeout; + uses openflow_Inst-group; + description "Openflow Switch Instance list"; + } + description "Openflow Switch Instance"; } } - grouping nd_Vpc-group { + grouping openflow_Inst-group { + description "Openflow Switch Instance"; + leaf switchId { + type uint8 { + range "1"; + } + default "1"; + description "Openflow Logical switch-id"; + } + leaf pipelineId { + type uint16 { + range "1..65535"; + } + description "Openflow Forwarding pipeline-id"; + } - // This objects hold per vpc domain information. There is only - // one vpc domain that is configurable in the system - container dom-items { - list VpcDom-list { - key "domainId"; + // This object holds openflow information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Added containment: Prefix=dom - // Acquired From Package nd - uses nd_VpcDom-group; + uses openflow_If-group; + description "OpenFlow Network Interface Port list"; + } + description "OpenFlow Network Interface Port"; + } + + container agent-items { + + uses openflow_Agent-group; + description "Openflow Agent Configuration Object"; + } + container ip-items { + list Controller-list { + key "ipaddr port vrf"; + + uses openflow_Controller-group; + description "OpenFlow Controller Config list"; } + description "OpenFlow Controller Config"; } } - grouping nd_VpcDom-group { + grouping openflow_If-group { + description "OpenFlow Network Interface Port"; - // Type is an MO-Defined-Type - leaf domainId { - description "Respective VPC Domain"; + leaf id { - // Type is an MO-Defined-Type - type vpc_DomId; + type nw_IfId; + description "To hold openflow port interface id"; } - // Enable/Disable IPV6 ND SYNC - // Type is an MO-Defined-Type - leaf ndSync { - description "IPV6 ND Sync"; + // openflow admin state of the network interface + leaf ofPort { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Track whether Openflow is enabled on the Interface"; } } - grouping nd_OffListVlan-group { - leaf vlanId { - config "false"; - type uint16; - } - leaf totalOfflistEntries { - config "false"; - type uint16; + grouping openflow_Agent-group { + description "Openflow Agent Configuration Object"; + leaf defaultMiss { + type enumeration { + enum continue-controller { + value 1; + description "continue-controller"; + } + enum continue-drop { + value 2; + description "continue-drop"; + } + enum continue-normal { + value 3; + description "continue-normal"; + } + enum controller { + value 4; + description "controller"; + } + enum drop { + value 5; + description "drop"; + } + enum normal { + value 6; + description "normal"; + } + } + default "drop"; + description "Openflow Default Miss flow action"; } - leaf addr { - config "false"; + leaf sourceIpAddr { type address_Ip; + description "Source IP Addr for Connection to OpenFlow Controller"; } - leaf age { - config "false"; - type string; + leaf statsCollectInterval { + type uint16 { + range "0..600"; + } + default "7"; + description "OpenFlow Statistics Collection Interval"; } - leaf macAddr { - config "false"; - type string; + leaf packetInPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets In Rate in PPS"; } - leaf flags { - config "false"; - type uint16; + leaf controllerBurstPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets to Controller In PPS"; } - } - - grouping nd_GlobalTrafficStats-group { - - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { - config "false"; - description "Total messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf datapathId { + type string { + length "0..20"; + } + description "OpenFlow Protocol Datapath Id"; } - - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { - config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf protoVersion { + type enumeration { + enum 1.0 { + value 1; + description "OpenFlow 1.0 Protocol"; + } + enum 1.3 { + value 2; + description "OpenFlow 1.3 Protocol"; + } + enum Negotiate { + value 3; + description "Protocol Version Negotiated"; + } + } + default "Negotiate"; + description "Openflow Protocol Version"; } - - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { - config "false"; - description "Error messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf logFlowMod { + type boolean; + default "false"; + description "OpenFlow Mod Requests Logging Enable"; } - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { - config "false"; - description "Error messages received"; + // Shutdown OpenFlow Switch + leaf shutdown { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + default "disabled"; + description "Shutdown OpenFlow Switch Instance"; } - - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { - config "false"; - description "Interface Down Drop Count sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf maxBackOff { + type uint16 { + range "1..65535"; + } + default "8"; + description "Openflow Protocol Max Backoff Timer"; } - - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { - config "false"; - description "Interface Down Drop Count received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf probeInterval { + type uint16 { + range "5..65535"; + } + default "180"; + description "Openflow Protocol Probe Interval"; } + container subswitch-items { + list SubSwitch-list { + key "subSwitchId"; - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { - config "false"; - description "Adjacency not recovered from AM after HA"; - - // Type is an MO-Defined-Type - type nw_Counter64; + uses openflow_SubSwitch-group; + description "Openflow Logical Sub-Switch Instance list"; + } + description "Openflow Logical Sub-Switch Instance"; } + } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { - config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping openflow_SubSwitch-group { + description "Openflow Logical Sub-Switch Instance"; + leaf subSwitchId { + type uint16 { + range "2..10"; + } + description "Openflow Logical Sub-switch id"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { - config "false"; - description "Pkts dropped as source mac addr is own"; + // Vlan BitMap + leaf vlan { - // Type is an MO-Defined-Type - type nw_Counter64; + type l2_VlanBitmap; + description "Openflow Logical Sub-switch Vlan Bitmap"; } - - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { - config "false"; - description "Pkts dropped as tgt ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf packetInPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets In Rate in PPS"; } - - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { - config "false"; - description "Pkts dropped as src ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf controllerBurstPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets to Controller In PPS"; } - - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { - config "false"; - description "Destination Unreachables sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf datapathId { + type string { + length "0..20"; + } + description "OpenFlow Protocol Datapath Id"; } - - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { - config "false"; - description "Destination Unreachables received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf protoVersion { + type enumeration { + enum 1.0 { + value 1; + description "OpenFlow 1.0 Protocol"; + } + enum 1.3 { + value 2; + description "OpenFlow 1.3 Protocol"; + } + enum Negotiate { + value 3; + description "Protocol Version Negotiated"; + } + } + default "Negotiate"; + description "Openflow Protocol Version"; + } + leaf logFlowMod { + type boolean; + default "false"; + description "OpenFlow Mod Requests Logging Enable"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { - config "false"; - description "Administratively Prohibited sent"; + // Shutdown OpenFlow Switch + leaf shutdown { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + default "disabled"; + description "Shutdown OpenFlow Switch Instance"; } + leaf maxBackOff { + type uint16 { + range "1..65535"; + } + default "8"; + description "Openflow Protocol Max Backoff Timer"; + } + leaf probeInterval { + type uint16 { + range "5..65535"; + } + default "180"; + description "Openflow Protocol Probe Interval"; + } + container ip-items { + list Controller-list { + key "ipaddr port vrf"; - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { - config "false"; - description "Administratively Prohibited received"; + uses openflow_Controller-group; + description "OpenFlow Controller Config list"; + } + description "OpenFlow Controller Config"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping openflow_Controller-group { + description "OpenFlow Controller Config"; + leaf ipaddr { + type address_Ip; + description "OpenFlow Controller Host IP Addr"; + } + leaf port { + type uint16 { + range "1..65535"; + } + description "OpenFlow Controller Host Port Number"; + } + leaf transport { + type enumeration { + enum tcp { + value 1; + description "Transmission Control Protocol (TCP)."; + } + enum tls { + value 2; + description "Transport Layer Security (TLS)."; + } + } + default "tcp"; + description "OpenFlow Controller Security TLS or TCP"; } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + // vrf type + leaf vrf { - // Type is an MO-Defined-Type - type nw_Counter64; + type l3_VrfName; + description "OpenFlow Channel Interface VRF type default or management or vrf name"; } + } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; + grouping ospfv3_Entity-group { + description "OSPFv3 control plane entity information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { + // Operational state + leaf operSt { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_EntOperSt; + description "Operational State"; } - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { - config "false"; - description "Parameter Problems received"; + // This object holds OSPFv3 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_If-group; + description "OSPFv3 information operated at interface level list"; + } + description "OSPFv3 information operated at interface level "; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // This object holds per OSPFv3 instance information. + container inst-items { + list Inst-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Inst-group; + description "OSPFv3 router instance information list"; + } + description "OSPFv3 router instance information"; } + } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; + grouping ospfv3_If-group { + description "OSPFv3 information operated at interface level "; - // Type is an MO-Defined-Type - type nw_Counter64; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfAdminSt; + description "Admin State"; } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + // OSPFv3 Instance name + leaf instance { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_InstanceName; + description "OSPFv3 instance name used with area command"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { + // Dom name + leaf dom { config "false"; - description "Redirects sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DomName; + description "Dom to which the interface belongs to"; + } + leaf mtuIgnore { + type boolean; + description "Disable OSPF MTU mismatch detection"; } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { - config "false"; - description "Redirects received"; + // Instance identifier under interface + leaf instanceId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_InstanceID; + description "OSPFv3 instance identifier under interface"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Passive interface control + leaf passive { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_PassiveControl; + description "Suppress routing updates on the interface"; } - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + // Network type + leaf nwT { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_NwT; + description "Network Type, can be Point-to-point or Broadcast"; } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { - config "false"; - description "Router Advertisements sent"; + // Priority, used in determining the designated router on + // this network + leaf prio { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DesigPrio; + description "Router priority, used in determining the designated router on this network"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // Cost of the interface + leaf cost { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_IfCost; + description "Cost associated with interface"; } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { - config "false"; - description "Router Solicitations sent"; + // Area to which this interface belongs to + leaf area { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_AreaId; + description "Area associated with interface"; + } + leaf advSecondary { + type boolean; + default "true"; + description "Advertise secondary IPv6 addresses"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { - config "false"; - description "Router Solicitations received"; + // Hello interval, interval between hello packets that + // OSPFv3 sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_HelloIntvl; + description "Interval between hello packets that OSPFv3 sends on the interface"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DeadIntvl; + description + "Dead interval, interval during which at least one + hello packet must be received from a neighbor before + the router declares that neighbor as down"; } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf reTxIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_ReTxIntvl; + description "Retransmit interval, the time between LSA retransmissions"; } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf txDelay { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_TxDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + container rtospfIfDefToOspfv3If-items { - // Type is an MO-Defined-Type - type nw_Counter64; + list RtOspfIfDefToOspfv3If-list { + config "false"; + key "tDn"; + + uses ospf_RtOspfIfDefToOspfv3If_target-group; + } } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpthRcvd { - config "false"; - description "Fastpath Packets"; + grouping ospfv3_Inst-group { + description "OSPFv3 router instance information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9_][A-Za-z0-9_-]{0,19}"; + } + description "Name"; } - // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathDsbleIgnRcvd { - config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathOtherIgnRcvd { - config "false"; - description "Ignored fastpath packets - others"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_InstCtrl; + description "Controls"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesSent { + // Operational errors qualifier + leaf operErr { config "false"; - description "V1 queries sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + leaf flushRoutes { + type boolean; + default "false"; + description "Flush routes on non-graceful controlled restart"; + } + leaf isolate { + type boolean; + default "false"; + description "Isolate this router from OSPFv3 perspective"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesRecv { + // Memory alert level + leaf memAlert { config "false"; - description "V1 queries received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_MemAlertLevel; + description "OSPFv3 operational memory alert level"; } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesSent { - config "false"; - description "V2 queries sent"; + // This object holds per OSPFv3 VRF information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Dom-group; + description "OSPFv3 VRF information list"; + } + description "OSPFv3 VRF information"; } + } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesRecv { - config "false"; - description "V2 queries received"; + grouping ospfv3_Dom-group { + description "OSPFv3 VRF information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; + } + description "This object holds name information"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsSent { - config "false"; - description "V1 reports sent"; + // Router id for this VRF, if this is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that VRF + leaf rtrId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ip_RtrId; + description "Router identifier for this VRF"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsRecv { - config "false"; - description "V1 reports received"; + // Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "OSPFv3 VRF administrative state"; } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsSent { + // VRF Operational state + leaf operSt { config "false"; - description "V2 reports sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_OperSt; + description "Operational state of VRF"; } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsRecv { + // Operational Router id for this VRF, if it is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that VRF + leaf operRtrId { config "false"; - description "V2 reports received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ip_RtrId; + description "Operational Router identifier for this VRF"; + } + leaf nameLookup { + type boolean; + default "false"; + description "Enable Name Lookup for OSPFv3 Neighbors"; + } + leaf passiveIntfDefault { + type boolean; + default "false"; + description "Suppress routing updates on the interface"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesSent { - config "false"; - description "V1 leaves sent"; + // This object holds OSPFv3 area information + container area-items { + list Area-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Area-group; + description "Configures OSPFv3 area properties list"; + } + description "Configures OSPFv3 area properties"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesRecv { - config "false"; - description "V1 leaves received"; + // This object holds per address family OSPFv3 VRF information + container af-items { + list DomAf-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_DomAf-group; + description "OSPFv3 VRF information of IPv6 unicast address-family list"; + } + description "OSPFv3 VRF information of IPv6 unicast address-family"; } - } - grouping nd_VaddrLinkLocalStat-group { - leaf vAddr { - config "false"; - type address_Ip; - } - leaf virtualMac { - config "false"; - type string; - } - leaf interface { - config "false"; - type string; - } - leaf active { - config "false"; - type string; + // This object holds per VRF graceful restart information + container gr-items { + + uses ospfv3_Gr-group; + description "Object holding per OSPFv3 VRF graceful restart information"; } } - grouping nd_VPCStat-group { - leaf cfsStatus { - config "false"; - type string; - } - leaf layer3Routing { - config "false"; - type string; - } - leaf syncProcDropRecvPullReq { - config "false"; - type uint16; - } - leaf syncProcDropRecvPushMsg { - config "false"; - type uint16; - } - leaf syncIgnoreSendPullReq { - config "false"; - type uint16; - } - leaf syncIgnoreSendPushMsg { - config "false"; - type uint16; - } - leaf syncDropIMApiFailed { - config "false"; - type uint16; - } - leaf syncDropMcemApiFailed { - config "false"; - type uint16; - } - leaf syncDropInvalidPcIod { - config "false"; - type uint16; - } - leaf syncProcDropPtLookupFailed { - config "false"; - type uint16; - } - leaf syncProcDropRespFailedNomct { - config "false"; - type uint16; - } - leaf syncProcDropRespFailed { - config "false"; - type uint16; - } - leaf syncProcDropMCEMIfindexVpcConvFailed { - config "false"; - type uint16; - } - leaf syncProcDropMCEMVpcIfindexConvFailed { - config "false"; - type uint16; - } - leaf PeriodicSyncProcDropMCEMIfindexVpcConvFailed { - config "false"; - type uint16; - } - leaf periodicSyncProcDropMCEMVpcIfindexConvFailed { - config "false"; - type uint16; - } - leaf syncProcRespSent { - config "false"; - type uint16; - } - leaf syncProcRespRcvd { - config "false"; - type uint16; - } - leaf syncProcRespRcvdErr { - config "false"; - type uint16; - } - leaf syncProcRcvdMsg { - config "false"; - type uint16; - } - leaf syncProcSendFailed { - config "false"; - type uint16; - } - leaf syncProcCfsRelDlvryFailed { - config "false"; - type uint16; - } - leaf syncProcCfsRelDlvrySuccess { - config "false"; - type uint16; - } - leaf offlistProcDropPtAddFailed { - config "false"; - type uint16; - } - leaf offlistProcDropNoMem { - config "false"; - type uint16; - } - leaf offlistProcDropTmrCreateFailed { - config "false"; - type uint16; - } - leaf offlistProcDropAddAdjFailed { - config "false"; - type uint16; - } - leaf offlistProcDropPtLookupFailed { - config "false"; - type uint16; - } - leaf offlistProcNoDropVlanMismatch { - config "false"; - type uint16; - } - leaf offlistProcDropSVIInvalid { - config "false"; - type uint16; - } - leaf offlistProcNoDropSVIDown { - config "false"; - type uint16; - } - leaf offlistProcDropMCTDown { - config "false"; - type uint16; - } - leaf offlistProcDropCtxtInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropVRFInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropL3addrInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropL3addrSanityFailed { - config "false"; - type uint16; - } - leaf offlistProcDropMacSanityFailed { - config "false"; - type uint16; - } - leaf offlistProcDropOwnMac { - config "false"; - type uint16; - } - leaf offlistProcDropOwnIpv6Addr { - config "false"; - type uint16; - } - leaf offlistProcDropOwnVIPv6Addr { - config "false"; - type uint16; - } - leaf offlistProcDropCreateAdjFailed { - config "false"; - type uint16; - } - leaf offlistProcDropSubnetMismatch { - config "false"; - type uint16; - } - leaf offlistProcDropAdjAlreadyExist { - config "false"; - type uint16; - } - leaf offlistProcNoDropIpv6Disabled { - config "false"; - type uint16; - } - leaf offlistProcDropCount { - config "false"; - type uint16; - } - leaf offlistProcNoDropCount { - config "false"; - type uint16; - } - leaf offlistProcAddAdj { - config "false"; - type uint16; + grouping ospfv3_Area-group { + description "Configures OSPFv3 area properties"; + + // Area id + leaf id { + + type ospfv3_AreaId; + description "Area Id as an integer or ip address"; } - leaf offlistProcDelAdj { - config "false"; - type uint16; + + // Area type (stub | nssa ) + leaf type { + + type ospfv3_AreaT; + description "Configure area type as NSSA or stub"; } - leaf offlistProcAdjAlreadyExist { - config "false"; - type uint16; + + // This object holds information about OSPFv3 virtual + // links + container vlink-items { + list Vlink-list { + key "nbrRtrId"; + + uses ospfv3_Vlink-group; + description "This object holds information about OSPFv3 virtual link list"; + } + description "This object holds information about OSPFv3 virtual link"; } } - grouping ngmvpn_Entity-group { + grouping ospfv3_Vlink-group { + description "This object holds information about OSPFv3 virtual link"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Router id associated with virtual link neighbor + leaf nbrRtrId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ip_RtrId; + description "Router id associated with virtual link neighbor"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Hello interval, interval between hello packets that + // OSPFv3 sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ospfv3_HelloIntvl; + description "Interval between hello packets that OSPFv3 sends on the interface"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type ospfv3_DeadIntvl; + description + "Dead interval, interval during which at least one + hello packet must be received from a neighbor before + the router declares that neighbor as down"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf reTxIntvl { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type ospfv3_ReTxIntvl; + description "Retransmit interval, the time between LSA retransmissions"; } - // This objects hold per ngmvpn instance information. There is only - // one instance of ngmvpn running in the system today - container inst-items { + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf txDelay { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ngmvpn - uses ngmvpn_Inst-group; + type ospfv3_TxDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } } - grouping ngmvpn_Inst-group { - leaf overlayDistributedDr { - type boolean; - } - leaf overlaySptOnly { - type boolean; - default "true"; - } + grouping ospfv3_DomAf-group { + description "OSPFv3 VRF information of IPv6 unicast address-family"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Address family type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ospfv3_AfT; + description "IPv6 unicast address family type"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Default metric + leaf defaultMetric { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type ospfv3_DefMetric; + description "Specify default metric for redistributed routes"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Distance + leaf adminDistance { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type ospfv3_AdminDist; + description "Adminitrative distance value"; } - // Address family type - container af-items { - list Af-list { - config "false"; - key "type"; + // This objects holds control distribution of default route leak policy + container defrtleak-items { - // Added containment: Prefix=af - // Acquired From Package ngmvpn - uses ngmvpn_Af-group; - } + uses ospfv3_DefRtLeakP-group; + description "Default route leak or the distribution policy"; } - container eventhist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package ngmvpn - uses ngmvpn_EventHistory-group; + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to OSPF + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; + + uses ospfv3_InterLeakP-group; + description "Redistribute information from another routing protocol list"; } + description "Redistribute information from another routing protocol"; } - } - - grouping ngmvpn_Af-group { - // Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type of Address-Family, where 0 represents IPv4 and 1 represents IPv6"; + // Leak controls related to the number of routes leaked + container leakctrl-items { - // Type is an MO-Defined-Type - type ngmvpn_AfT; + uses ospfv3_LeakCtrlP-group; + description "Maximum number of prefixes redistributed to protocol"; } + } - // This object holds mrib route db information - container db-items { - list Db-list { - config "false"; - key "dbtype"; + grouping ospfv3_DefRtLeakP-group { + description "Default route leak or the distribution policy"; - // Added containment: Prefix=db - // Acquired From Package ngmvpn - uses ngmvpn_Db-group; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + + type rtleak_Scope; + default "defrt"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Policy to control distribution of default route"; + } + leaf always { + type boolean; + description "Always advertise default leak"; } } - grouping ngmvpn_Db-group { + grouping ospfv3_InterLeakP-group { + description "Redistribute information from another routing protocol"; - // Type of the repository - // Type is an MO-Defined-Type - leaf dbtype { - config "false"; - description "DB Type, where 0 represents IPv4 routes and 1 represents IPv6 routes"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type ngmvpn_DbT; + type rtleak_Scope; + default "inter"; + description "Scope"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Policy to control distribution of default route"; } - // This objects hold per pim domain (vrf) information - container vni-items { - list Vni-list { - config "false"; - key "id"; + // Protocol from where the routes are leaked + leaf proto { - // Added containment: Prefix=vni - // Acquired From Package ngmvpn - uses ngmvpn_Vni-group; - } + type rtleak_Proto; + description "Protocol"; } - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // Added containment: Prefix=vrf - // Acquired From Package ngmvpn - uses ngmvpn_Vrf-group; - } + type rtleak_Inst; + description "Instance"; } - } - grouping ngmvpn_Vni-group { - leaf id { - config "false"; - type uint32; - } - container l2route-items { - list L2route-list { - config "false"; - key "src grp"; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { - // Added containment: Prefix=l2route - // Acquired From Package ngmvpn - uses ngmvpn_L2route-group; + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } - } - } - - grouping ngmvpn_L2route-group { - leaf maskLen { - config "false"; - type uint32; - } - leaf src { - config "false"; - type address_Ip; - } - leaf grp { - config "false"; - type address_Ip; + description "Autonomous System Number"; } - // Fabric node - container fabNode-items { - list FabNode-list { - config "false"; - key "ipAddr"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Added containment: Prefix=fabNode - // Acquired From Package ngmvpn - uses ngmvpn_FabNode-group; - } + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } - } - - grouping ngmvpn_FabNode-group { - leaf ipAddr { - config "false"; - type address_Ip; + leaf always { + type boolean; + description "Always advertise default leak"; } } - grouping ngmvpn_Vrf-group { - leaf name { - config "false"; - type string; - } + grouping ospfv3_LeakCtrlP-group { + description "Maximum number of prefixes redistributed to protocol"; - // This object holds mrib route group information - container group-items { - list Group-list { - config "false"; - key "grpAddr"; + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { - // Added containment: Prefix=group - // Acquired From Package ngmvpn - uses ngmvpn_Group-group; - } + type rtleak_Ctrl; + description "Controls"; } - } - grouping ngmvpn_Group-group { - leaf grpAddr { - config "false"; - type address_Ip; - } - leaf maskLen { - config "false"; - type uint32; + // Maximum limit on routes leaked + leaf max { + + type rtleak_MaxPfx; + description "Maximum Limit"; } - // This object holds mrib route group information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { - // Added containment: Prefix=source - // Acquired From Package ngmvpn - uses ngmvpn_Source-group; - } + type rtleak_Thresh; + description "Threshold"; } - } - grouping ngmvpn_Source-group { - leaf srcAddr { - config "false"; - type address_Ip; - } - leaf maskLen { - config "false"; - type uint32; - } - leaf uptime { - config "false"; - type string; + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { + + type rtleak_Retries; + description "Retries"; } - // Fabric node - container fabNode-items { - list FabNode-list { - config "false"; - key "ipAddr"; + // Duration between the retries + leaf duration { - // Added containment: Prefix=fabNode - // Acquired From Package ngmvpn - uses ngmvpn_FabNode-group; - } + type rtleak_Duration; + description "Duration"; } } - grouping ngmvpn_EventHistory-group { + grouping ospfv3_Gr-group { + description "Object holding per OSPFv3 VRF graceful restart information"; - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + // Graceful restart controls + leaf ctrl { - // Type is an MO-Defined-Type - type ngmvpn_EhType; + type ospfv3_GrCtrl; + description "Graceful restart controls like planned, complete and disabled state"; + } + leaf helper { + type boolean; + default "true"; + description "Graceful restart helper mode"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text per kb"; + // Graceful restart period + leaf gracePeriod { - // Type is an MO-Defined-Type - type ngmvpn_Size; + type ospfv3_GrPeriod; + description "Graceful restart period in seconds starting from 5 to 1800"; + } + leaf restartAge { + config "false"; + type uint32; + description "Graceful restart age"; } } grouping pim_Entity-group { + description "Holds PIM control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per pim instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package pim uses pim_Inst-group; + description "Holds per PIM instance information"; } } grouping pim_Inst-group { + description "Holds per PIM instance information"; + leaf evpnBorderLeaf { + type boolean; + description "EVPN Border Leaf flag"; + } leaf extraNet { type boolean; + description "Extranet RPF Lookup"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf jpDelay { - description "Inter Packet Delay"; - // Type is an MO-Defined-Type type rtdmc_JPDelay; + description "Inter Packet Delay"; } // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrDelay { - description "Null Register Inter Batch Delay"; - // Type is an MO-Defined-Type type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrNumRt { - description "Null Register Number of Routes"; - // Type is an MO-Defined-Type type rtdmc_NRNumRt; + description "Null Register Number of Routes"; } leaf regStop { type boolean; + description "Register until stops"; } // This objects hold per pim domain (vrf) information @@ -137006,94 +152601,101 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package pim uses pim_Dom-group; + description "Holds per PIM domain (vrf) information list"; } + description "Holds per PIM domain (vrf) information"; } // This object holds global config for pim container gl-items { - // Added containment as a singleton: Prefix=gl - // Acquired From Package pim uses pim_Gl-group; + description "This object holds global configuration for PIM"; } // PIM databases + // Ephemeral data container routedb-items { + + // Ephemeral data list RouteDb-list { config "false"; key "type"; - // Added containment: Prefix=routedb - // Acquired From Package pim uses pim_RouteDb-group; + description "This object holds multicast route database information list"; } + description "This object holds multicast route database information"; } } grouping pim_Dom-group { + description "Holds per PIM domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; + description "Domain Controls"; } // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf mtu { - description "Maximum Transmission Unit"; - // Type is an MO-Defined-Type type rtdmc_Mtu; + description "Maximum Transmission Unit"; } // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf autoEnable { - description "Auto Enable"; - // Type is an MO-Defined-Type type rtdmc_AutoEnable; + description "Auto Enable"; } leaf logNbhChng { type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { type boolean; + description "Flush Routes"; } leaf bfd { type boolean; + description "BFD"; + } + + leaf jpDelay { + + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; + } + + leaf regRateLmt { + + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } // This object holds policy for Anycast RP Function @@ -137101,27 +152703,30 @@ module Cisco-NX-OS-device { // and all the peer's local info Anycast RP is not supported for BSR and Auto-RP container acastrpfunc-items { - // Added containment as a singleton: Prefix=acastrpfunc - // Acquired From Package pim uses pim_AcastRPFuncP-group; + description "This object holds policy for Anycast RP Function"; + } + + container assert-items { + + uses pim_Assert-group; + description "This model is used to configure assert events for PIM"; } // This object holds policy for // Auto-RP method of RP discovery container autorp-items { - // Added containment as a singleton: Prefix=autorp - // Acquired From Package pim uses pim_AutoRPP-group; + description "This object holds policy for Auto-RP method of RP discovery"; } // This object holds policy for // Bootstrap Router method of RP discovery container bsr-items { - // Added containment as a singleton: Prefix=bsr - // Acquired From Package pim uses pim_BSRP-group; + description "Holds policy for Bootstrap Router method of RP discovery"; } // PIM databases @@ -137130,27 +152735,27 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim uses pim_Db-group; + description "This object acts as a database for multicast route information list"; } + description "This object acts as a database for multicast route information"; } // This object holds the pim dom related statistics + // Ephemeral data container domstats-items { - // Added containment as a singleton: Prefix=domstats - // Acquired From Package pim uses pim_DomStats-group; + description "This object holds the PIM domain related statistics"; } container eventHist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventHist - // Acquired From Package pim uses pim_EventHistory-group; + description "This object is used to configure event-history buffers list"; } + description "This object is used to configure event-history buffers"; } // This object holds pim information that is operated at a @@ -137159,106 +152764,89 @@ module Cisco-NX-OS-device { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package pim uses pim_If-group; + description "Holds PIM information that is operated at a interface level list"; } + description "Holds PIM information that is operated at a interface level"; } // This object holds resource (router state) limit policy // to limit amount of multicast routing state on the router container limit-items { - // Added containment as a singleton: Prefix=limit - // Acquired From Package pim uses pim_ResP-group; + description "Holds resource (router state) limit policy to limit amount of multicast routing state on the router"; } // This object holds policy for // Any Source Multicast (ASM) pattern container asm-items { - // Added containment as a singleton: Prefix=asm - // Acquired From Package pim uses pim_ASMPatP-group; + description "Holds policy for Any Source Multicast (ASM) pattern"; } // This object holds policy for // Source Specific Multicast (SSM) pattern container ssm-items { - // Added containment as a singleton: Prefix=ssm - // Acquired From Package pim uses pim_SSMPatP-group; + description "Holds policy for Source Specific Multicast (SSM) pattern"; } // This object holds policy for // Bidirectional Multicast (BiDir) pattern container bidir-items { - // Added containment as a singleton: Prefix=bidir - // Acquired From Package pim uses pim_BidirPatP-group; + description "Holds policy for Bidirectional Multicast (BiDir) pattern"; } // This object holds policy for Static RP container staticrp-items { - // Added containment as a singleton: Prefix=staticrp - // Acquired From Package pim uses pim_StaticRPP-group; + description "Holds policy for Static RP"; } // This object holds the pim control traffic stats container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim uses pim_TrafficStats-group; + description "Holds the PIM control traffic statistics"; } } grouping pim_AcastRPFuncP-group { + description "This object holds policy for Anycast RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Anycast RP Unique Local Interface - // Inherited From rtdmc:AAcastRPFuncP - // Type is an MO-Defined-Type leaf localIf { - description "Local Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Local Interface"; } // This object holds Anycast RP Peer Info @@ -137266,214 +152854,195 @@ module Cisco-NX-OS-device { list AcastRPPeer-list { key "addr rpSetAddr"; - // Added containment: Prefix=peer - // Acquired From Package pim uses pim_AcastRPPeer-group; + description "This object holds Anycast RP Peer Information list"; } + description "This object holds Anycast RP Peer Information"; } } grouping pim_AcastRPPeer-group { + description "This object holds Anycast RP Peer Information"; leaf rpSetAddr { type address_Ip; + description "IP Address of node performing the function"; } leaf addr { type address_Ip; + description "Address"; + } + } + + grouping pim_Assert-group { + description "This model is used to configure assert events for PIM"; + + // AssertRate + leaf assertRtLmt { + + type rtdmc_AssertRateLmt; + description "Configure Rate limit for pim asserts"; } } grouping pim_AutoRPP-group { + description "This object holds policy for Auto-RP method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Auto-RP Control - // Inherited From rtdmc:AAutoRPP - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type rtdmc_AutoRPCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim uses pim_RPFilterP-group; + description "Holds policy for choosing RPs from among RP candidates"; } // This object holds policy for // choosing Mapping Agent from among the candidates container mafilter-items { - // Added containment as a singleton: Prefix=mafilter - // Acquired From Package pim uses pim_MAFilterP-group; + description "This object holds policy for choosing Mapping Agent among the candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim uses pim_RPFuncP-group; + description "Holds policy for RP Function"; } // This object holds policy for // Auto-RP Mapping Agent Function container mafunc-items { - // Added containment as a singleton: Prefix=mafunc - // Acquired From Package pim uses pim_MAFuncP-group; + description "This object holds policy for Auto-RP Mapping Agent Function"; } } grouping pim_RPFilterP-group { + description "Holds policy for choosing RPs from among RP candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_MAFilterP-group { + description "This object holds policy for choosing Mapping Agent among the candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_RPFuncP-group { + description "Holds policy for RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Priority - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Interval - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } // Scope - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf addr { type address_Ip; + description "AutoRP Cand RP Address"; } leaf useSendRPAnnCommand { type boolean; + description "Flag to use send-rp-announce"; } // This object holds multicast group ranges for RP @@ -137481,1094 +153050,1044 @@ module Cisco-NX-OS-device { list RPGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim uses pim_RPGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } } grouping pim_RPGrpRange-group { + description "This object holds multicast group ranges for RP"; leaf override { type boolean; + description "Flag to override RP preference to use Static over Dynamic RP"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf bidir { type boolean; + description "BiDir Groups"; } } grouping pim_MAFuncP-group { + description "This object holds policy for Auto-RP Mapping Agent Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Scope - // Inherited From rtdmc:AMAFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf useSendRPDisCommand { type boolean; + description "Flag to use send-rp-discovery"; } } grouping pim_BSRP-group { + description "Holds policy for Bootstrap Router method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // BSR Control - // Inherited From rtdmc:ABSRP - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type rtdmc_BSRCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim uses pim_RPFilterP-group; + description "Holds policy for choosing RPs from among RP candidates"; } // This object holds policy for // choosing BSRs from among BSR candidates container bsrfilter-items { - // Added containment as a singleton: Prefix=bsrfilter - // Acquired From Package pim uses pim_BSRFilterP-group; + description "Holds BSR policy to filter from other BSR candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim uses pim_RPFuncP-group; + description "Holds policy for RP Function"; } // This object holds policy for // Bootstrap Router Function container bsrfunc-items { - // Added containment as a singleton: Prefix=bsrfunc - // Acquired From Package pim uses pim_BSRFuncP-group; + description "Holds policy for Bootstrap Router Function"; } } grouping pim_BSRFilterP-group { + description "Holds BSR policy to filter from other BSR candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_BSRFuncP-group { + description "Holds policy for Bootstrap Router Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Hash Mask Len - // Inherited From rtdmc:ABSRFuncP - // Modified by Override: pim:BSRFuncP->hashLen - // Type is an MO-Defined-Type leaf hashLen { - description "Hash Mask Len"; - // Type is an MO-Defined-Type type rtdmc_BSRHashLen { range "1..32"; } + description "Hash Mask Len"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } } grouping pim_Db-group { + description "This object acts as a database for multicast route information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type rtdmc_DbT; + description "Type"; } container autorp-items { list AutoRPPInfo-list { config "false"; key "addr"; - // Added containment: Prefix=autorp - // Acquired From Package pim uses pim_AutoRPPInfo-group; + description "Holds PIM Auto-RP information list"; } + description "Holds PIM Auto-RP information"; } container bsr-items { list BSRInfo-list { config "false"; key "addr"; - // Added containment: Prefix=bsr - // Acquired From Package pim uses pim_BSRInfo-group; + description "This object holds information related to PIM Selected Bootstrap Router list"; } + description "This object holds information related to PIM Selected Bootstrap Router"; } container grange-items { list RPGrange-list { config "false"; key "addr"; - // Added containment: Prefix=grange - // Acquired From Package pim uses pim_RPGrange-group; + description "Holds information about RP group range list"; } + description "Holds information about RP group range"; } // PIM Group/Src MOs + // Ephemeral data container src-items { + + // Ephemeral data list Route-list { config "false"; key "src grp"; - // Added containment: Prefix=src - // Acquired From Package pim uses pim_Route-group; + description "Holds PIM Route, having Group and Source information list"; } + description "Holds PIM Route, having Group and Source information"; } container rp-items { list RPInfo-list { config "false"; key "addr"; - // Added containment: Prefix=rp - // Acquired From Package pim uses pim_RPInfo-group; + description "PIM Rendezvous Point information list"; } + description "PIM Rendezvous Point information"; } } grouping pim_AutoRPPInfo-group { + description "Holds PIM Auto-RP information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "Source address"; } leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } leaf priority { config "false"; type uint32; + description "Priority"; } leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim_BSRInfo-group { + description "This object holds information related to PIM Selected Bootstrap Router"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "Source address"; } leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } leaf priority { config "false"; type uint32; + description "Priority"; } leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim_RPGrange-group { + description "Holds information about RP group range"; leaf addr { config "false"; type address_Ip; + description "IP Address for Group Range"; } - // Inherited From rtdmc:RPGrange - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Group Range flags"; - // Type is an MO-Defined-Type type rtdmc_GRangeFlags; + description "Group Range flags"; } leaf rpAddr { config "false"; type address_Ip; + description "RP address for this group range"; } } grouping pim_Route-group { + description "Holds PIM Route, having Group and Source information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf ver { config "false"; type uint32; + description "Version"; } + + // Ephemeral data leaf src { config "false"; type address_Ip; + description "Source"; } + + // Ephemeral data leaf grp { config "false"; type address_Ip; + description "Group"; } + + // Ephemeral data leaf rpAddrRoute { config "false"; type address_Ip; + description "Route RP addr"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf iif { config "false"; - description "Incoming interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Incoming interface"; } + + // Ephemeral data leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Expiry Timestamp"; } + + // Ephemeral data leaf rpfNbr { config "false"; type address_Ip; + description "RPF Nbr Address"; } + + // Ephemeral data leaf rpfSrc { config "false"; type address_Ip; + description "RPF Source Address"; } + + // Ephemeral data leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Uptime"; } + + // Ephemeral data leaf assertTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Assert Timeout"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "Route Uptime"; - // Type is an MO-Defined-Type type rtdmc_RtFlags; + description "Route Uptime"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf swPktCnt { config "false"; - description "Software Packet Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf swByteCnt { config "false"; - description "Software Byte Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Byte Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf hwPktCnt { config "false"; - description "Hardware Packet Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf hwByteCnt { config "false"; - description "Hardware Byte Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Byte Count"; } + + // Ephemeral data leaf assertMetric { config "false"; type uint32; + description "Assert metric"; } + + // Ephemeral data leaf assertMetricPref { config "false"; type uint32; + description "Assert metric preference"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf routeBits { config "false"; - description "RP WC Bit"; - // Type is an MO-Defined-Type type rtdmc_RouteBits; + description "RP WC Bit"; } + + // Ephemeral data leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } + + // Ephemeral data leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } } grouping pim_RPInfo-group { + description "PIM Rendezvous Point information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "RP address"; } leaf local { config "false"; type boolean; + description "Is RP local"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "RP uptime"; } leaf arpExp { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Auto RP Expiry timer"; } leaf bsrExp { config "false"; - type string; + type union { + type string; + type uint64; + } + description "BSR RP Expiry timer"; } leaf bsrAddr { config "false"; type address_Ip; + description "Selected BSR Address"; } leaf priority { config "false"; type uint32; + description "RP Priority"; } - // Inherited From rtdmc:RPInfo - // Type is an MO-Defined-Type leaf discType { config "false"; - description "RP source type"; - // Type is an MO-Defined-Type type rtdmc_RPSourceType; + description "RP source type"; } leaf dfOrdinal { config "false"; type uint32; + description "Bidir DF Ordinal"; } - // Rel-def from RP2Grange container rsrP2Grange-items { - // Abstract containment of rsrP2Grange derived from pim:RPInfo list RsRP2Grange-list { config "false"; key "tDn"; - // Added containment: Prefix=rsrP2Grange - // Acquired From Package pim uses pim_RsRP2Grange_source-group; + description "RP to Group range mapping list"; } + description "RP to Group range mapping"; } } grouping pim_DomStats-group { + description "This object holds the PIM domain related statistics"; - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regSent { config "false"; - description "Registers Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvd { config "false"; - description "Registers Received "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received "; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nullRegSent { config "false"; - description "Null Registers Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Null Registers Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nullRegRcvd { config "false"; - description "Null Registers Received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Null Registers Received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regStopSent { config "false"; - description "Register Stop Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Register Stop Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regStopRcvd { config "false"; - description "Register Stop Received "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Register Stop Received "; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdSSM { config "false"; - description "Registers Received for SSM"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received for SSM"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdBiDir { config "false"; - description "Registers Received for BiDir"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received for BiDir"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdAndNotRP { config "false"; - description "Registers Received but not RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received but not RP"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsSent { config "false"; - description "Bootstrap message sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRcvd { config "false"; - description "Bootstrap message received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPSent { config "false"; - description "Candidate RP message sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Candidate RP message sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPRcvd { config "false"; - description "Candidate RP message received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Candidate RP message received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsFromNonNbr { config "false"; - description "Bootstrap message from non-neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message from non-neighbor"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsFromBorderIF { config "false"; - description "Bootstrap message from border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message from border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsLenErr { config "false"; - description "Bootstrap length error"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap length error"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRPFFail { config "false"; - description "Bootstrap messages for which RPF Failed"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap messages for which RPF Failed"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRcvdLisNotConf { config "false"; - description "Bootstrap received listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap received listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPFromBorderIF { config "false"; - description "Bootstrap Candidate RP From border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap Candidate RP From border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPRcvdLisNotConf { config "false"; - description "Bootstrap candidate RP received but listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap candidate RP received but listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPAnnouncesSent { config "false"; - description "RP announcements sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP announcements sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPAnnouncesRcvd { config "false"; - description "RP announcements received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP announcements received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPDiscoveriesSent { config "false"; - description "RP discoveries sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP discoveries sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPDiscoveriesRcvd { config "false"; - description "RP discoveries received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP discoveries received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPRPFFailed { config "false"; - description "Auto RP RPF Failed"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP RPF Failed"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPFromBorderIF { config "false"; - description "Auto RP from border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP from border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPInvalidType { config "false"; - description "Auto RP invalid type"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP invalid type"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPTTLExp { config "false"; - description "Auto RP TTL expired"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP TTL expired"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPRcvdLisNotConf { config "false"; - description "Auto RP received but listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP received but listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf cpRPFFailNoRoute { config "false"; - description "Control plane RPF fail due to no route"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Control plane RPF fail due to no route"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpRPFFailNoRoute { config "false"; - description "Data Plane RPF fail due to no route"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane RPF fail due to no route"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpNoMcastState { config "false"; - description "Data Plane no multicast state found"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane no multicast state found"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpCrtRouteStateCnt { config "false"; - description "Data Plane create route state count"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane create route state count"; } } grouping pim_EventHistory-group { + description "This object is used to configure event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type type pim_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { - description "configures buffer size in text/kb"; - // Type is an MO-Defined-Type type pim_Size; + description "configures buffer size in text/kb"; } } grouping pim_If-group { + description "Holds PIM information that is operated at a interface level"; // Interface Control - // Type is an MO-Defined-Type leaf ctrl { - description "Interface Controls"; - // Type is an MO-Defined-Type type pim_IfCtrl; + description "Interface Controls"; } // Designated Router Priority - // Type is an MO-Defined-Type leaf drPrio { - description "Designated Router Priority"; - // Type is an MO-Defined-Type type pim_DRPrio; + description "Designated Router Priority level"; } // Designated Router Delay - // Type is an MO-Defined-Type leaf drDelay { - description "Designated Router Delay"; - // Type is an MO-Defined-Type type pim_DRDelay; + description "Designated Router Delay value"; } leaf jpRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Join Prune Policy name"; } leaf neighRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor route-map Policy"; } leaf neighpfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor prefix-list Policy"; } leaf border { type boolean; + description "Border policy - Treat interface as boundary of PIM domain"; } leaf passive { type boolean; + description "Passive interface - No send or receive"; } leaf rtEpPDn { type string; + description "L3 Router EpP DN"; } leaf ipAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } - // Type is an MO-Defined-Type leaf bfdInst { - description "BFD Instance"; - // Type is an MO-Defined-Type type pim_BfdInstSt; + description "BFD Instance State"; } leaf pimSparseMode { type boolean; + description "Sparse Mode configured"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors on this interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // PIM databases @@ -138577,22 +154096,25 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim uses pim_Db-group; + description "This object acts as a database for multicast route information list"; } + description "This object acts as a database for multicast route information"; } // This object holds mrib route db information + // Ephemeral data container ifdb-items { + + // Ephemeral data list Ifdb-list { config "false"; key "ifdbtype"; - // Added containment: Prefix=ifdb - // Acquired From Package pim uses pim_Ifdb-group; + description "Holds PIM route db information list"; } + description "Holds PIM route db information"; } // This object holds the join-prune traffic policy @@ -138600,671 +154122,553 @@ module Cisco-NX-OS-device { list JPTrP-list { key "policyDir"; - // Added containment: Prefix=jp - // Acquired From Package pim uses pim_JPTrP-group; + description "This object holds the join-prune traffic policy list"; } + description "This object holds the join-prune traffic policy"; } // This object holds the hello traffic policy container hello-items { - // Added containment as a singleton: Prefix=hello - // Acquired From Package pim uses pim_HelloTrP-group; + description "This object holds the hello traffic policy"; } // This object holds the pim control traffic stats container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim uses pim_TrafficStats-group; + description "Holds the PIM control traffic statistics"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping pim_Ifdb-group { + description "Holds PIM route db information"; // Type of the repository - // Type is an MO-Defined-Type + // Ephemeral data leaf ifdbtype { config "false"; - description "represents repository type"; - // Type is an MO-Defined-Type type pim_ifdbT; + description "represents repository type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // This object holds pim neighbor information + // Ephemeral data container adj-items { + + // Ephemeral data list AdjEp-list { config "false"; key "addr"; - // Added containment: Prefix=adj - // Acquired From Package pim uses pim_AdjEp-group; + description "This object holds PIM neighbor information list"; } + description "This object holds PIM neighbor information"; } // This object holds the pim interface related statistics + // Ephemeral data container ifprop-items { - // Added containment as a singleton: Prefix=ifprop - // Acquired From Package pim uses pim_IfProp-group; + description "This object holds the PIM interface related statistics"; } // This object holds the pim interface related statistics + // Ephemeral data container ifstats-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package pim uses pim_IfStats-group; + description "Holds the PIM interface related statistics"; } } grouping pim_AdjEp-group { + description "This object holds PIM neighbor information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Address"; } + + // Ephemeral data leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } + + // Ephemeral data leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } + + // Ephemeral data leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } // This object holds the pim neighbor related statistics + // Ephemeral data container adjstats-items { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package pim uses pim_AdjStats-group; + description "This object holds the PIM neighbor related statistics"; } } grouping pim_AdjStats-group { + description "This object holds the PIM neighbor related statistics"; + + // Ephemeral data leaf lastHelloRcvd { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Hello Received"; } // Longest Hello Interval - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf longHelloItvl { config "false"; - description "Longest Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Longest Hello Interval"; } // Last Hold Time advertised by Peer - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf lastHoldTime { config "false"; - description "Last Hold Time"; - // Type is an MO-Defined-Type type rtdmc_HoldTime; + description "Last Hold Time"; } // non-hello expiry timer resets - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nonHelloExpResets { config "false"; - description "Non-Hello Expiry Timer Resets"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Non-Hello Expiry Timer Resets"; } } grouping pim_IfProp-group { + description "This object holds the PIM interface related statistics"; + + // Ephemeral data leaf nextHello { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Time when next hello is sent"; } + + // Ephemeral data leaf nbrHoldTime { config "false"; type uint32; + description "PIM Neighbor HoldTime"; } + + // Ephemeral data leaf dr { config "false"; type address_Ip; + description "PIM Designated Router information"; } // Generation id - // Type is an MO-Defined-Type + // Ephemeral data leaf genID { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type pim_PropGenId; + description "Generation Identifier"; } } grouping pim_IfStats-group { + description "Holds the PIM interface related statistics"; - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloSent { config "false"; - description "number of hello sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloRcvd { config "false"; - description "number of hello rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSent { config "false"; - description "number of JP sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvd { config "false"; - description "number of JP rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertRcvd { config "false"; - description "number of assert rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsSent { config "false"; - description "number of grafts sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsRcvd { config "false"; - description "number of grafts rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckSent { config "false"; - description "number of graft ack sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckRcvd { config "false"; - description "number of graft ack rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferSent { config "false"; - description "number of DF-offer sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferRcvd { config "false"; - description "number of DF-offer rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerSent { config "false"; - description "number of DF winner sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerRcvd { config "false"; - description "number of DF winner rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffSent { config "false"; - description "number of DF backoff sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffRcvd { config "false"; - description "number of DF backoff rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesSent { config "false"; - description "number of DF Passes sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesRcvd { config "false"; - description "number of DF Passes rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf chksumErr { config "false"; - description "Checksum errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Checksum errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktRcvd { config "false"; - description "number of invalid pkt rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf authFail { config "false"; - description "number of authentication failures"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of authentication failures"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktLenErr { config "false"; - description "number of packet length errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packet length errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf badVerPkt { config "false"; - description "number of bad version pkts"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of bad version pkts"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmSelf { config "false"; - description "number of pkts from Self"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of pkts from Self"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmNonNbr { config "false"; - description "packets from Non-Neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "packets from Non-Neighbor"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktOnPassiveIf { config "false"; - description "number of packets on passive interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets on passive interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvdOnRPF { config "false"; - description "number of packets rcvd on RPF interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on RPF interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinNoRP { config "false"; - description "*,G Join rcvd with no RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "*,G Join rcvd with no RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinWrongRp { config "false"; - description "number of packets rcvd on Wrong RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on Wrong RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSSMRcvd { config "false"; - description "number of packets rcvd for SSM groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for SSM groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpBidirRcvd { config "false"; - description "number of packets rcvd for Bidir groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for Bidir groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterIn { config "false"; - description "number of JP filtered by inbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by inbound policy "; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterOut { config "false"; - description "number of JP filtered by outbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by outbound policy "; } } grouping pim_JPTrP-group { + description "This object holds the join-prune traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf RtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Out Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "In Prefix List"; } // in route-map for out-bound policy application @@ -139274,769 +154678,656 @@ module Cisco-NX-OS-device { // mod="implicit" // label="Out Prefix List" // /> Interval used between peers - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf itvl { - description "Periodic Interval"; - // Type is an MO-Defined-Type type rtdmc_JPItvl; + description "Periodic Interval"; } - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf policyDir { - description "Policy Direction "; - // Type is an MO-Defined-Type type rtdmc_PolicyDirType; + description "Policy Direction "; } } grouping pim_HelloTrP-group { + description "This object holds the hello traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Hello Interval - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf helloItvl { - description "Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Hello Interval"; } // Authentication Type - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authT { - description "Authentication Type"; - // Type is an MO-Defined-Type type rtdmc_AuthT; + description "Authentication Type"; } // Authentication Key - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authKey { - description "Authentication Key"; - // Type is an MO-Defined-Type type rtdmc_AuthKey; + description "Authentication Key"; } } grouping pim_TrafficStats-group { - leaf lastClearTs { - config "false"; - type string; - } + description "Holds the PIM control traffic statistics"; - // Register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regRcvd { + // AutoRP Announce Received + leaf autorpAnnRcvd { config "false"; - description "Register Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Announce Received"; } - // Null register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegRcvd { + // AutoRP Discovery received + leaf autorpDiscRcvd { config "false"; - description "Null Register Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Discovery Received"; } - // Reg Stop Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopRcvd { + // AutoRP Announce Sent + leaf autorpAnnSent { config "false"; - description "Reg Stop Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Announce Sent"; } - // Bootstrap received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsRcvd { + // Auto RP Discovery sent + leaf autorpDiscSent { config "false"; - description "Bootstrap received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Discovery Sent"; } - // Candidate Rp Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRpRcvd { + // AutoRP RPF Sent + leaf autorpRpfSent { config "false"; - description "Candidate RP Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP RPF Sent"; } - // AutoRP Announce Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnRcvd { + // AutoRP Border Deny + leaf autorpBrdDeny { config "false"; - description "AutoRP Announce Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Border Deny"; } - // AutoRP Discovery received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscRcvd { + // AutoRP No Listen + leaf autorrpNoListn { config "false"; - description "AutoRP Discovery Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP No Listen"; } - // Null Register Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegSent { + // AutoRP TTL Expired + leaf autorpTtlExp { config "false"; - description "NULL Register sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP TTL Expired"; } - // Register stop sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopSent { + // AutoRP Invalid type + leaf autorpInvType { config "false"; - description "Register Stop Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Invalid Type"; + } + leaf lastClearTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - // Bootstrap sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsSent { + // Register received + leaf regRcvd { config "false"; - description "Bootstrap Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received"; } - // Candidate RP Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRPSent { + // Null register received + leaf nullRegRcvd { config "false"; - description "Candidate RP Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Null Register Received"; } - // AutoRP Announce Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnSent { + // Reg Stop Received + leaf regStopRcvd { config "false"; - description "AutoRP Announce Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Reg Stop Received"; } - // Auto RP Discovery sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscSent { + // Bootstrap received + leaf bsRcvd { config "false"; - description "AutoRP Discovery Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap received"; } - // AutoRP RPF Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpRpfSent { + // Candidate Rp Received + leaf candRpRcvd { config "false"; - description "AutoRP RPF Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Received"; } - // AutoRP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpBrdDeny { + // Null Register Sent + leaf nullRegSent { config "false"; - description "AutoRP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "NULL Register sent"; } - // AutoRP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorrpNoListn { + // Register stop sent + leaf regStopSent { config "false"; - description "AutoRP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Stop Sent"; } - // AutoRP TTL Expired - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpTtlExp { + // Bootstrap sent + leaf bsSent { config "false"; - description "AutoRP TTL Expired"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap Sent"; } - // AutoRP Invalid type - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpInvType { + // Candidate RP Sent + leaf candRPSent { config "false"; - description "AutoRP Invalid Type"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Sent"; } // BS no NBR - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsNoNbr { config "false"; - description "BS No NBR"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No NBR"; } // BS Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsBordDeny { config "false"; - description "BS Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Border Deny"; } // BS LEngth errors - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsLenErr { config "false"; - description "BS Len Errors"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Len Errors"; } // BS RPF Failed - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsRpfFail { config "false"; - description "BS RPF Failed"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS RPF Failed"; } // BS NO Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsNoLis { config "false"; - description "BS No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No Listen"; } // Candidate RP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf candrpNoLis { config "false"; - description "Candidate RP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP No Listen"; } // Candidate RP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf candrpBordDeny { config "false"; - description "Candidate RP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Border Deny"; } // REgister received not RP - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdNoRP { config "false"; - description "Register Received not RP"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received not RP"; } // Register Received for SSM - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdForSSM { config "false"; - description "Register Received Not SSM"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received Not SSM"; } // Register received for bidir - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdForBd { config "false"; - description "Register received for Bidir"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register received for Bidir"; } // no route - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf noRoute { config "false"; - description "No Route"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Route"; } } grouping pim_ResP-group { + description "Holds resource (router state) limit policy to limit amount of multicast routing state on the router"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf max { - description "Maximum Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Maximum Multicast Entries"; } // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf rsvd { - description "Reserved Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Reserved Multicast Entries"; } leaf rtMap { type string; + description "Reserved Entries Route Map"; } } grouping pim_ASMPatP-group { + description "Holds policy for Any Source Multicast (ASM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Controls - // Inherited From rtdmc:AASMPatP - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type rtdmc_ASMCtrl; + description "Controls"; } leaf preBuildSpt { type boolean; + description "Pre-Build-SPT"; } leaf force { type boolean; + description "force pre-build-spt"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } // This object holds (S,G) expiry timer // policy for specified range container sgexp-items { - // Added containment as a singleton: Prefix=sgexp - // Acquired From Package pim uses pim_SGRangeExpP-group; + description "Holds (S,G) expiry timer policy for specified range"; } // This object holds group range // to use only shared tree container shared-items { - // Added containment as a singleton: Prefix=shared - // Acquired From Package pim uses pim_SharedRangeP-group; + description "Holds group range policy to use only shared tree"; } // This object holds the register traffic policy container reg-items { - // Added containment as a singleton: Prefix=reg - // Acquired From Package pim uses pim_RegTrP-group; + description "This object holds the register traffic policy"; } } grouping pim_SGRangeExpP-group { + description "Holds (S,G) expiry timer policy for specified range"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } // (S,G) entry inactivity expiry timer - // Inherited From rtdmc:ASGRangeExpP - // Type is an MO-Defined-Type leaf sgExpItvl { - description "(S,G) Entry Expiry Timer"; - // Type is an MO-Defined-Type type rtdmc_SGExpItvl; + description "(S,G) Entry Expiry Timer"; + } + leaf sparse { + type boolean; + description "(S,G) Entry Expiry Timer configured with sparse mode"; } } grouping pim_SharedRangeP-group { + description "Holds group range policy to use only shared tree"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf useSPTCommand { type boolean; + description "Flag to use spt-threashold command"; } } grouping pim_RegTrP-group { + description "This object holds the register traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; + description "Source Address"; } // Source Interface - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Max Rate - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf maxRate { - description "Maximum Rate"; - // Type is an MO-Defined-Type type rtdmc_RegRate; + description "Maximum Rate"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Prefix List"; } } grouping pim_SSMPatP-group { + description "Holds policy for Source Specific Multicast (SSM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // This object holds SSM group range container range-items { - // Added containment as a singleton: Prefix=range - // Acquired From Package pim uses pim_SSMRangeP-group; + description "SSM Group Range Policy"; } } grouping pim_SSMRangeP-group { + description "SSM Group Range Policy"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } } grouping pim_BidirPatP-group { + description "Holds policy for Bidirectional Multicast (BiDir) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum number of RPs - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type leaf maxRP { - description "Maximum RPs"; - // Type is an MO-Defined-Type type rtdmc_BidirRPLimit; + description "Maximum RPs"; } // Designated Forwarder Offer Burst Interval - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type leaf dfobItvl { - description "Designated Forwarder Offer Burst Interval"; - // Type is an MO-Defined-Type type rtdmc_DFOBItvl; + description "Designated Forwarder Offer Burst Interval"; } } grouping pim_StaticRPP-group { + description "Holds policy for Static RP"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // This object holds Static RP Info @@ -140046,16 +155337,18 @@ module Cisco-NX-OS-device { list StaticRP-list { key "addr"; - // Added containment: Prefix=rp - // Acquired From Package pim uses pim_StaticRP-group; + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality list"; } + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality"; } } grouping pim_StaticRP-group { + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality"; leaf addr { type address_Ip; + description "Address"; } // This object holds multicast group ranges for RP @@ -140063,468 +155356,452 @@ module Cisco-NX-OS-device { list RPGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim uses pim_RPGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } container rpgrplist-items { list RPGrpList-list { key "grpListName"; - // Added containment: Prefix=rpgrplist - // Acquired From Package pim uses pim_RPGrpList-group; + description "RP Multicast Group List list"; } + description "RP Multicast Group List"; } } grouping pim_RPGrpList-group { + description "RP Multicast Group List"; leaf grpListName { type address_Ip; + description "Group List address information"; } leaf bidir { type boolean; + description "Flag to treat Group Ranges as BiDir"; } leaf override { type boolean; + description "Flag to override RP preference to use Static over Dynamic RP"; } } grouping pim_Gl-group { + description "This object holds global configuration for PIM"; + + // LoggingLevel + leaf logLevel { + + type pim_LoggingLvl; + description "Sets syslog filter level for PIM"; + } // logLevel - // Inherited From mcast:AGl - // Type is an MO-Defined-Type leaf logLvl { - description "Syslog filter level"; - // Type is an MO-Defined-Type type mcast_LogLevelRange; + description "Syslog filter level"; } leaf isolate { type boolean; + description "Isolate this router flag"; } } grouping pim_RouteDb-group { + description "This object holds multicast route database information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type rtdmc_DbT; + description "Type"; } // This objects hold per pim domain (vrf) information + // Ephemeral data container vrf-items { + + // Ephemeral data list Vrf-list { config "false"; key "name"; - // Added containment: Prefix=vrf - // Acquired From Package pim uses pim_Vrf-group; + description "Holds per PIM domain (vrf) information list"; } + description "Holds per PIM domain (vrf) information"; } } grouping pim_Vrf-group { + description "Holds per PIM domain (vrf) information"; + + // Vrf name + // Ephemeral data leaf name { config "false"; - type string; + + type l3_VrfName; + description "Vrf Name"; } // This object holds PIM route group information + // Ephemeral data container group-items { + + // Ephemeral data list Group-list { config "false"; key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package pim uses pim_Group-group; + description "Holds PIM route group information list"; } + description "Holds PIM route group information"; } } grouping pim_Group-group { + description "Holds PIM route group information"; + + // Ephemeral data leaf grpAddr { config "false"; type address_Ip; + description "Group IP Address"; } // This object holds pim route group information + // Ephemeral data container source-items { + + // Ephemeral data list Source-list { config "false"; key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package pim uses pim_Source-group; + description "Holds PIM Route Source information list"; } + description "Holds PIM Route Source information"; } } grouping pim_Source-group { + description "Holds PIM Route Source information"; + + // Ephemeral data leaf srcAddr { config "false"; type address_Ip; + description "Source IP Address"; } leaf rpAddressRoute { config "false"; type address_Ip; + description "Route RP address"; } leaf assertMetrics { config "false"; type uint32; + description "Assert metrics value"; } leaf assertMetricPrefs { config "false"; type uint32; + description "Configured assert metric preference"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf ver { config "false"; type uint32; + description "Version"; } leaf src { config "false"; type address_Ip; + description "Source"; } leaf grp { config "false"; type address_Ip; + description "Group"; } leaf rpAddrRoute { config "false"; type address_Ip; + description "Route RP addr"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf iif { config "false"; - description "Incoming interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Incoming interface"; } leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Expiry Timestamp"; } leaf rpfNbr { config "false"; type address_Ip; + description "RPF Nbr Address"; } leaf rpfSrc { config "false"; type address_Ip; + description "RPF Source Address"; } leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Uptime"; } leaf assertTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Assert Timeout"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf rtType { config "false"; - description "Route Uptime"; - // Type is an MO-Defined-Type type rtdmc_RtFlags; + description "Route Uptime"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf swPktCnt { config "false"; - description "Software Packet Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf swByteCnt { config "false"; - description "Software Byte Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Byte Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf hwPktCnt { config "false"; - description "Hardware Packet Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf hwByteCnt { config "false"; - description "Hardware Byte Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Byte Count"; } leaf assertMetric { config "false"; type uint32; + description "Assert metric"; } leaf assertMetricPref { config "false"; type uint32; + description "Assert metric preference"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf routeBits { config "false"; - description "RP WC Bit"; - // Type is an MO-Defined-Type type rtdmc_RouteBits; + description "RP WC Bit"; } leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } // PIM OIF list MOs + // Ephemeral data container oif-items { + + // Ephemeral data list Oif-list { config "false"; key "oIf"; - // Added containment: Prefix=oif - // Acquired From Package pim uses pim_Oif-group; + description "PIM OIF entry details list"; } + description "PIM OIF entry details"; } } grouping pim_Oif-group { + description "PIM OIF entry details"; - // Type is an MO-Defined-Type leaf oifFlags { config "false"; - description "pim route oif lists"; - // Type is an MO-Defined-Type type pim_OifFlagsNew; + description "pim route oif lists"; } - // Inherited From rtdmc:Oif - // Type is an MO-Defined-Type + // Ephemeral data leaf oIf { config "false"; - description "Outgoing interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Outgoing interface"; } - // Inherited From rtdmc:Oif - // Type is an MO-Defined-Type leaf flags { config "false"; - description "pim route oif lists"; - // Type is an MO-Defined-Type type rtdmc_OifFlags; + description "pim route oif lists"; } } grouping pim6_Entity-group { + description "Holds PIM6 control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per pim6 instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package pim6 uses pim6_Inst-group; + description "This objects hold per PIM6 instance information"; } } grouping pim6_Inst-group { + description "This objects hold per PIM6 instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; - } - - // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf jpDelay { - description "Inter Packet Delay"; - - // Type is an MO-Defined-Type - type rtdmc_JPDelay; + description "Operational Errors Qualifier"; } // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrDelay { - description "Null Register Inter Batch Delay"; - // Type is an MO-Defined-Type type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrNumRt { - description "Null Register Number of Routes"; - // Type is an MO-Defined-Type type rtdmc_NRNumRt; - } - leaf regStop { - type boolean; + description "Null Register Number of Routes"; } // PIM6 databases + // Ephemeral data container db-items { + + // Ephemeral data list Db-list { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim6 uses pim6_Db-group; + description "This object holds PIM6 Database information list"; } + description "This object holds PIM6 Database information"; } // This objects hold per pim6 domain (vrf) information @@ -140532,1331 +155809,1702 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package pim6 - uses pim6_Dom-group; - } + uses pim6_Dom-group; + description "This objects hold per PIM6 domain (vrf) information list"; + } + description "This objects hold per PIM6 domain (vrf) information"; + } + + // This object holds global config for pim6 + container gl-items { + + uses pim6_Gl-group; + description "This object holds global configuration for PIM6"; + } + + // This object holds pim6 route db information + // Ephemeral data + container routedb-items { + + uses pim6_RouteDb-group; + description "This object holds PIM6 route database information"; + } + } + + grouping pim6_Db-group { + description "This object holds PIM6 Database information"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + // Ephemeral data + leaf type { + config "false"; + + type rtdmc_DbT; + description "Type"; + } + + // PIM6 bitfield + // Ephemeral data + container bf-items { + + uses pim6_Bitfield-group; + description "PIM6 Bitfield Database"; + } + + // This object holds pim6 information for embed-rp + // Ephemeral data + container embedrp-items { + + // Ephemeral data + list EmbedRp-list { + config "false"; + key "grpAddr"; + + uses pim6_EmbedRp-group; + description "Holds PIM6 Embed-RP operational information list"; + } + description "Holds PIM6 Embed-RP operational information"; + } + + // This object holds global config for pim6 + // Ephemeral data + container syslog-items { + + // Ephemeral data + list Syslog-list { + config "false"; + key "facName"; + + uses pim6_Syslog-group; + description "This object holds syslog data for pim6 protocols list"; + } + description "This object holds syslog data for pim6 protocols"; + } + + // This objects hold per pim6 domain (vrf) information + // Ephemeral data + container vrf-items { + + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses pim6_Vrf-group; + description "This objects hold per pim6 domain (vrf) information list"; + } + description "This objects hold per pim6 domain (vrf) information"; + } + } + + grouping pim6_Bitfield-group { + description "PIM6 Bitfield Database"; + + // PIM6 bitfield entry + // Ephemeral data + container bfentry-items { + + // Ephemeral data + list BfEntry-list { + config "false"; + key "bfType"; + + uses pim6_BfEntry-group; + description "PIM6 bitfield entry list"; + } + description "PIM6 bitfield entry"; + } + } + + grouping pim6_BfEntry-group { + description "PIM6 bitfield entry"; + + // Ephemeral data + leaf bfType { + config "false"; + type string; + description "Bitfield Type"; + } + + // Ephemeral data + leaf bfAttr { + config "false"; + type uint32; + description "Bitfield attribute"; + } + + // Ephemeral data + leaf bfSgmnt { + config "false"; + type uint32; + description "Bitfield segment"; + } + + // Ephemeral data + leaf bfFlags { + config "false"; + type uint32; + description "Bitfield flags"; + } + + // Ephemeral data + leaf bfCompressArraySize { + config "false"; + type uint32; + description "Bitfield Compression array-size"; + } + + // Ephemeral data + leaf bfPosAllocated { + config "false"; + type uint32; + description "Bitfield positions allocated"; + } + + // routed multicast Bitfield compress index-bitpos + // Ephemeral data + container bfcomp-items { + + // Ephemeral data + list BfComp-list { + config "false"; + key "bfIdx"; + + uses pim6_BfComp-group; + description "Holds Bitfield Compression index-bit position details list"; + } + description "Holds Bitfield Compression index-bit position details"; + } + } + + grouping pim6_BfComp-group { + description "Holds Bitfield Compression index-bit position details"; + + // Ephemeral data + leaf bfCompType { + config "false"; + type string; + description "Bitfield Compression type"; + } + + // Ephemeral data + leaf bfIdx { + config "false"; + type uint32; + description "Bitfield index"; + } + + // Ephemeral data + leaf bfBitPos { + config "false"; + type uint32; + description "Bitfield bit-position"; + } + } + + grouping pim6_EmbedRp-group { + description "Holds PIM6 Embed-RP operational information"; + + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group IP Address for Embed-RP"; + } + + // Ephemeral data + leaf rpAddr { + config "false"; + type address_Ip; + description "Embed-RP IP Address"; + } + + // Ephemeral data + leaf illegalFlag { + config "false"; + type boolean; + description "Illegal Flag"; + } + + // Ephemeral data + leaf prefix { + config "false"; + type string; + description "Ip Address in network prefix format"; + } + + // Ephemeral data + leaf prefixLen { + config "false"; + type uint32; + description "Networ Prefix length"; + } + + // Ephemeral data + leaf grpId { + config "false"; + type uint32; + description "Group identifier"; + } + + // Ephemeral data + leaf scope { + config "false"; + type uint32; + description "Scope"; + } + + // Ephemeral data + leaf scopeStr { + config "false"; + type string; + description "Scope String"; } - // This object holds pim6 route db information - container routedb-items { + // Ephemeral data + leaf rpIfId { + config "false"; - // Added containment as a singleton: Prefix=routedb - // Acquired From Package pim6 - uses pim6_RouteDb-group; + type nw_IfId; + description "Embed RP's intername id"; } } - grouping pim6_Db-group { + grouping pim6_Syslog-group { + description "This object holds syslog data for pim6 protocols"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf facName { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "Facility Name"; } - // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type - leaf type { + // Default logLevel + // Ephemeral data + leaf deflogLvl { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type rtdmc_DbT; + type mcast_LogLevelRange; + description "Default Syslog filter level"; } - // This objects hold per pim6 domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Current logLevel + // Ephemeral data + leaf currlogLvl { + config "false"; - // Added containment: Prefix=vrf - // Acquired From Package pim6 - uses pim6_Vrf-group; - } + type mcast_LogLevelRange; + description "Current Syslog filter level"; } } grouping pim6_Vrf-group { + description "This objects hold per pim6 domain (vrf) information"; + + // Vrf name + // Ephemeral data leaf name { config "false"; + + type l3_VrfName; + description "Vrf Name"; + } + + // Ephemeral data + leaf cid { + config "false"; + type uint32; + description "Vrf Identifier"; + } + + // Ephemeral data + leaf tableId { + config "false"; type string; + description "Table Identifier"; + } + + // Ephemeral data + leaf pim6EnbldIntfCount { + config "false"; + type uint32; + description "Total Number PIM6 enabled interfaces"; + } + + // Ephemeral data + leaf bfdEnabled { + config "false"; + type boolean; + description "Flag to enable BFD support"; } + + // Ephemeral data leaf totalNumRoutes { config "false"; type uint32; + description "Total Number of Routes"; } + + // Ephemeral data container autorp-items { + + // Ephemeral data list AutoRppInfo-list { config "false"; key "addr"; - // Added containment: Prefix=autorp - // Acquired From Package pim6 uses pim6_AutoRppInfo-group; + description "PIM6 Auto-RP information list"; } + description "PIM6 Auto-RP information"; } + + // Ephemeral data container bsr-items { + + // Ephemeral data list BsrInfo-list { config "false"; - key "addr"; + key "grpAddr"; - // Added containment: Prefix=bsr - // Acquired From Package pim6 uses pim6_BsrInfo-group; + description "PIM6 Selected Bootstrap Router list"; } + description "PIM6 Selected Bootstrap Router"; } + + // Ephemeral data container grange-items { + + // Ephemeral data list RpGrange-list { config "false"; key "addr"; - // Added containment: Prefix=grange - // Acquired From Package pim6 uses pim6_RpGrange-group; + description "Rendezvous Point Group Range Record list"; } + description "Rendezvous Point Group Range Record"; } // This object holds pim6 route group information + // Ephemeral data container group-items { + + // Ephemeral data list Group-list { config "false"; key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package pim6 uses pim6_Group-group; + description "This object holds PIM6 route group information list"; } + description "This object holds PIM6 route group information"; } + + // Ephemeral data container ifrec-items { + + // Ephemeral data list IfRec-list { config "false"; key "pim6IfName"; - // Added containment: Prefix=ifrec - // Acquired From Package pim6 uses pim6_IfRec-group; + description "PIM6 Interface Record list"; } + description "PIM6 Interface Record"; } + + // Ephemeral data container rp-items { + + // Ephemeral data list RpInfoRec-list { config "false"; key "rpAddr"; - // Added containment: Prefix=rp - // Acquired From Package pim6 uses pim6_RpInfoRec-group; + description "PIM6 Rendezvous Point Record list"; } + description "PIM6 Rendezvous Point Record"; } // This object holds the pim6 control traffic stats + // Ephemeral data container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim6 uses pim6_TrafficStats-group; + description "This object holds the PIM6 control traffic stats"; + } + + // Ephemeral data + container vrfdetail-items { + + uses pim6_VrfDetails-group; + description "This objects holds PIM6 context details"; } } grouping pim6_AutoRppInfo-group { + description "PIM6 Auto-RP information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Source address"; } + + // Ephemeral data leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } + + // Ephemeral data leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } + + // Ephemeral data leaf priority { config "false"; type uint32; + description "Priority"; } + + // Ephemeral data leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim6_BsrInfo-group { + description "PIM6 Selected Bootstrap Router"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf addr { + // Ephemeral data + leaf grpAddr { config "false"; type address_Ip; + description "Group IP address"; } - leaf expiry { + + // Ephemeral data + leaf bsrAddr { config "false"; - type string; + type address_Ip; + description "BSR IP address"; } - leaf uptime { + + // Ephemeral data + leaf rpAddr { config "false"; - type string; + type address_Ip; + description "RP IP address with best hash"; } - leaf priority { + + // Ephemeral data + leaf hash { config "false"; type uint32; + description "Hash value"; } + + // Ephemeral data leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; + } + + // Ephemeral data + leaf bestHash { + config "false"; + type boolean; + description "Best hash selected flag"; } } grouping pim6_RpGrange-group { + description "Rendezvous Point Group Range Record"; + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "IP Address for Group Range"; } + + // Ephemeral data leaf rpAddr { config "false"; type address_Ip; + description "RP IP address for this group range"; } + + // Ephemeral data leaf mode { config "false"; type string; + description "RP Group range mode"; } + + // Ephemeral data leaf userShared { config "false"; type uint32; + description "User-shared Range Address"; } } grouping pim6_Group-group { + description "This object holds PIM6 route group information"; + + // Ephemeral data leaf grpAddr { config "false"; type address_Ip; + description "IPv6 Group Address"; } + + // Ephemeral data leaf grpMasklen { config "false"; type uint32; + description "Group Mask Length"; } + + // Ephemeral data leaf bidir { config "false"; type boolean; + description "Bidirectional group"; } // This object holds pim6 route source information + // Ephemeral data container source-items { + + // Ephemeral data list Source-list { config "false"; key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package pim6 uses pim6_Source-group; + description "This object holds pim6 route source information list"; } + description "This object holds pim6 route source information"; } } grouping pim6_Source-group { + description "This object holds pim6 route source information"; + + // Ephemeral data leaf srcAddr { config "false"; type address_Ip; + description "Source IP Address"; } + + // Ephemeral data leaf expiryTs { config "false"; type string; + description "Route Expiry Timestamp in HH:MM:SS PST Format"; } + + // Ephemeral data leaf assertMetrics { config "false"; type uint32; + description "Assert metric value"; } + + // Ephemeral data leaf assertMetricPrefs { config "false"; type uint32; + description "Assert metric preference"; } + + // Ephemeral data leaf oifcount { config "false"; type uint32; + description "Outgoing Interface Count"; } // RPF Information route incoming interface - // Type is an MO-Defined-Type + // Ephemeral data leaf routeIif { config "false"; - description "Route Incoming Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Route Incoming Interface"; } + + // Ephemeral data leaf rpfNbr { config "false"; type address_Ip; + description "RPF Neighbor IP Address"; } - // Type is an MO-Defined-Type - leaf routeBits { - config "false"; - description "RP WC Bit"; - - // Type is an MO-Defined-Type - type rtdmc_RouteBits; - } + // Ephemeral data leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } + + // Ephemeral data leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } // This object holds pim6 OIF information + // Ephemeral data container oif-items { + + // Ephemeral data list Oif-list { config "false"; key "oifName"; - // Added containment: Prefix=oif - // Acquired From Package pim6 uses pim6_Oif-group; + description "This object holds pim6 OIF information list"; } + description "This object holds pim6 OIF information"; } } grouping pim6_Oif-group { + description "This object holds pim6 OIF information"; + + // Ephemeral data leaf oifName { config "false"; type string; + description "Outgoing Interface name"; } + + // Ephemeral data leaf oifUptime { config "false"; type string; + description "OIF Uptime in HH:MM:SS PST format"; } + + // Ephemeral data leaf oifRPF { config "false"; type boolean; + description "Outgoing Interface RPF"; } + + // Ephemeral data leaf oifLispEncapEntries { config "false"; type uint32; + description "Lisp Encap Entries Count"; } } grouping pim6_IfRec-group { + description "PIM6 Interface Record"; + + // Ephemeral data leaf pim6Dr { config "false"; type address_Ip; + description "IPv6 Address of PIM6 DR on the interface"; } // Designated Router Priority - // Type is an MO-Defined-Type + // Ephemeral data leaf pim6DrPrio { config "false"; - description "Designated Router Priority on the interface"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "Designated Router Priority on the interface"; } + + // Ephemeral data leaf pim6NbrHoldTime { config "false"; type uint32; + description "PIM6 Neighbor HoldTime"; } // Generation id - // Type is an MO-Defined-Type + // Ephemeral data leaf pim6GenID { config "false"; - description "Generation ID to be sent in Hello Msgs"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID to be sent in Hello Msgs"; } + + // Ephemeral data leaf pim6NextHello { config "false"; type string; + description "Next hello time in HH:MM:SS PST format"; } + + // Ephemeral data leaf pim6IpAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } - // Type is an MO-Defined-Type leaf pim6IfName { config "false"; - description "Interface Name"; - // Type is an MO-Defined-Type type nw_IfId; + description "PIM6 Interface Name"; } + + // Ephemeral data leaf pim6Border { config "false"; type boolean; + description "Is interface Pim6 domain border"; } + + // Ephemeral data leaf pim6SparseMode { config "false"; type boolean; + description "Pim6 is enabled on the interface"; } // This object holds pim6 neighbor information + // Ephemeral data container adjrec-items { + + // Ephemeral data list AdjEpRec-list { config "false"; key "addr"; - // Added containment: Prefix=adjrec - // Acquired From Package pim6 uses pim6_AdjEpRec-group; + description "This object holds PIM6 neighbor record list"; } + description "This object holds PIM6 neighbor record"; } // This object holds the pim6 interface related statistics + // Ephemeral data container ifstats-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package pim6 uses pim6_IfStats-group; + description "This object holds the pim6 interface related statistics"; } } grouping pim6_AdjEpRec-group { + description "This object holds PIM6 neighbor record"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Address"; } + + // Ephemeral data leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } + + // Ephemeral data leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } + + // Ephemeral data leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } // This object holds the pim6 neighbor related statistics + // Ephemeral data container adjstats-items { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package pim6 uses pim6_AdjStats-group; + description "This object holds the PIM6 neighbor related statistics"; } } grouping pim6_AdjStats-group { + description "This object holds the PIM6 neighbor related statistics"; + + // Ephemeral data leaf lastHelloRcvd { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Hello Received"; } // Longest Hello Interval - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf longHelloItvl { config "false"; - description "Longest Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Longest Hello Interval"; } // Last Hold Time advertised by Peer - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf lastHoldTime { config "false"; - description "Last Hold Time"; - // Type is an MO-Defined-Type type rtdmc_HoldTime; + description "Last Hold Time"; } // non-hello expiry timer resets - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nonHelloExpResets { config "false"; - description "Non-Hello Expiry Timer Resets"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Non-Hello Expiry Timer Resets"; } } grouping pim6_IfStats-group { + description "This object holds the pim6 interface related statistics"; - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloSent { config "false"; - description "number of hello sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloRcvd { config "false"; - description "number of hello rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSent { config "false"; - description "number of JP sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvd { config "false"; - description "number of JP rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertSent { config "false"; - description "number of assert sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertRcvd { config "false"; - description "number of assert rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsSent { config "false"; - description "number of grafts sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsRcvd { config "false"; - description "number of grafts rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckSent { config "false"; - description "number of graft ack sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckRcvd { config "false"; - description "number of graft ack rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferSent { config "false"; - description "number of DF-offer sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferRcvd { config "false"; - description "number of DF-offer rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerSent { config "false"; - description "number of DF winner sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerRcvd { config "false"; - description "number of DF winner rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffSent { config "false"; - description "number of DF backoff sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffRcvd { config "false"; - description "number of DF backoff rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesSent { config "false"; - description "number of DF Passes sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesRcvd { config "false"; - description "number of DF Passes rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf chksumErr { config "false"; - description "Checksum errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Checksum errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktSent { config "false"; - description "number of invalid pkt sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktRcvd { config "false"; - description "number of invalid pkt rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf authFail { config "false"; - description "number of authentication failures"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of authentication failures"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktLenErr { config "false"; - description "number of packet length errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packet length errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf badVerPkt { config "false"; - description "number of bad version pkts"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of bad version pkts"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmSelf { config "false"; - description "number of pkts from Self"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of pkts from Self"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmNonNbr { config "false"; - description "packets from Non-Neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "packets from Non-Neighbor"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktOnPassiveIf { config "false"; - description "number of packets on passive interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets on passive interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvdOnRPF { config "false"; - description "number of packets rcvd on RPF interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on RPF interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinNoRP { config "false"; - description "*,G Join rcvd with no RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "*,G Join rcvd with no RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinWrongRp { config "false"; - description "number of packets rcvd on Wrong RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on Wrong RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSSMRcvd { config "false"; - description "number of packets rcvd for SSM groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for SSM groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpBidirRcvd { config "false"; - description "number of packets rcvd for Bidir groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for Bidir groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterIn { config "false"; - description "number of JP filtered by inbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by inbound policy "; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterOut { config "false"; - description "number of JP filtered by outbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by outbound policy "; } } grouping pim6_RpInfoRec-group { + description "PIM6 Rendezvous Point Record"; + + // Ephemeral data leaf rpAddr { config "false"; type address_Ip; + description "IPv6 address for RP"; } + + // Ephemeral data leaf rpLocal { config "false"; type boolean; + description "Flag to indicte if RP is local"; } + + // Ephemeral data leaf rpUptime { config "false"; type string; + description "RP uptime in HH:MM:SS PST Format"; } + + // Ephemeral data leaf rpPriority { config "false"; type uint32; + description "Priority for cand-RP message"; } - // Type is an MO-Defined-Type + // Ephemeral data leaf rpDiscType { config "false"; - description "RP source type"; - // Type is an MO-Defined-Type type rtdmc_RPSourceType; + description "RP source type"; } + + // Ephemeral data leaf rpDfOrdinal { config "false"; type uint32; + description "Per RP Bidirectional DF Ordinal"; } - // Rel-def from RP2Grange - container rsrP2Grange-items { + // Ephemeral data + leaf rpMetricPref { + config "false"; + type uint32; + description "Router preference to this RP"; + } - // Abstract containment of rsrP2Grange derived from pim6:RpInfoRec - list RsRP2Grange-list { + // Ephemeral data + leaf rpMetric { + config "false"; + type uint32; + description "Unicast metric to this RP"; + } + + // This object holds pim6 information that is operated at a + // interface level for DF RP + // Ephemeral data + container rpif-items { + + // Ephemeral data + list RpIf-list { config "false"; - key "tDn"; + key "ifName"; - // Added containment: Prefix=rsrP2Grange - // Acquired From Package pim6 - uses pim6_RsRP2Grange_source-group; + uses pim6_RpIf-group; + description "Holds PIM6 DF RP Interface operational information list"; } + description "Holds PIM6 DF RP Interface operational information"; } } - grouping pim6_TrafficStats-group { - leaf lastClearTs { - config "false"; - type string; - } + grouping pim6_RpIf-group { + description "Holds PIM6 DF RP Interface operational information"; - // Register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regRcvd { + // Ephemeral data + leaf ifName { config "false"; - description "Register Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "DF Interface Name"; } - // Null register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegRcvd { + // Ephemeral data + leaf dfWinner { config "false"; - description "Null Register Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type address_Ip; + description "DF Winner IP Address"; } - // Reg Stop Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopRcvd { + // Df state + // Ephemeral data + leaf dfState { config "false"; - description "Reg Stop Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type rtdmc_DfStates; + description "Current state of DF"; } - // Bootstrap received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsRcvd { + // Ephemeral data + leaf dfUptime { config "false"; - description "Bootstrap received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Time since using this DF"; } - // Candidate Rp Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRpRcvd { + // Ephemeral data + leaf isRpf { config "false"; - description "Candidate RP Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "RPF flag"; } - // AutoRP Announce Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnRcvd { + // Ephemeral data + leaf winnerMetricPref { config "false"; - description "AutoRP Announce Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Preference of DF winner"; } - // AutoRP Discovery received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscRcvd { + // Ephemeral data + leaf winnerMetric { config "false"; - description "AutoRP Discovery Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Metric of DF winner"; } + } - // Null Register Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegSent { - config "false"; - description "NULL Register sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } + grouping pim6_TrafficStats-group { + description "This object holds the PIM6 control traffic stats"; - // Register stop sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopSent { + // Ephemeral data + leaf lastClearTs { config "false"; - description "Register Stop Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - // Bootstrap sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsSent { + // Register received + // Ephemeral data + leaf regRcvd { config "false"; - description "Bootstrap Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received"; } - // Candidate RP Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRPSent { + // Null register received + // Ephemeral data + leaf nullRegRcvd { config "false"; - description "Candidate RP Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Null Register Received"; } - // AutoRP Announce Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnSent { + // Reg Stop Received + // Ephemeral data + leaf regStopRcvd { config "false"; - description "AutoRP Announce Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Reg Stop Received"; } - // Auto RP Discovery sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscSent { + // Bootstrap received + // Ephemeral data + leaf bsRcvd { config "false"; - description "AutoRP Discovery Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap received"; } - // AutoRP RPF Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpRpfSent { + // Candidate Rp Received + // Ephemeral data + leaf candRpRcvd { config "false"; - description "AutoRP RPF Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Received"; } - // AutoRP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpBrdDeny { + // Null Register Sent + // Ephemeral data + leaf nullRegSent { config "false"; - description "AutoRP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "NULL Register sent"; } - // AutoRP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorrpNoListn { + // Register stop sent + // Ephemeral data + leaf regStopSent { config "false"; - description "AutoRP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Stop Sent"; } - // AutoRP TTL Expired - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpTtlExp { + // Bootstrap sent + // Ephemeral data + leaf bsSent { config "false"; - description "AutoRP TTL Expired"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap Sent"; } - // AutoRP Invalid type - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpInvType { + // Candidate RP Sent + // Ephemeral data + leaf candRPSent { config "false"; - description "AutoRP Invalid Type"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Sent"; } // BS no NBR - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsNoNbr { config "false"; - description "BS No NBR"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No NBR"; } // BS Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsBordDeny { config "false"; - description "BS Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Border Deny"; } // BS LEngth errors - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsLenErr { config "false"; - description "BS Len Errors"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Len Errors"; } // BS RPF Failed - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsRpfFail { config "false"; - description "BS RPF Failed"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS RPF Failed"; } // BS NO Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsNoLis { config "false"; - description "BS No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No Listen"; } // Candidate RP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf candrpNoLis { config "false"; - description "Candidate RP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP No Listen"; } // Candidate RP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf candrpBordDeny { config "false"; - description "Candidate RP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Border Deny"; } // REgister received not RP - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdNoRP { config "false"; - description "Register Received not RP"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received not RP"; } // Register Received for SSM - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdForSSM { config "false"; - description "Register Received Not SSM"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received Not SSM"; } // Register received for bidir - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdForBd { config "false"; - description "Register received for Bidir"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register received for Bidir"; } // no route - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf noRoute { config "false"; - description "No Route"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Route"; + } + } + + grouping pim6_VrfDetails-group { + description "This objects holds PIM6 context details"; + + // Ephemeral data + leaf stLmt { + config "false"; + type uint64; + description "Configured maximum state limit"; + } + + // Ephemeral data + leaf availStLmt { + config "false"; + type uint64; + description "Available state limit"; + } + + // Ephemeral data + leaf rsvLmt { + config "false"; + type uint64; + description "Configured maximum reserved limit"; + } + + // Ephemeral data + leaf availRsvLmt { + config "false"; + type uint64; + description "Available reserved limit"; + } + + // Ephemeral data + leaf rsvPolName { + config "false"; + type string; + description "Configured Reserve Policy name"; + } + + // Ephemeral data + leaf regRateLmt { + config "false"; + type uint64; + description "Register rate limit in pps"; + } + + // Ephemeral data + leaf sharedTrPolName { + config "false"; + type string; + description "Configured Use-Shared tree route-map policy name"; + } + + // Ephemeral data + container grange-items { + + // Ephemeral data + list SharedRouteRange-list { + config "false"; + key "grangeIp"; + + uses pim6_SharedRouteRange-group; + description "This objects holds PIM6 USe-shared tree route range list"; + } + description "This objects holds PIM6 USe-shared tree route range"; + } + } + + grouping pim6_SharedRouteRange-group { + description "This objects holds PIM6 USe-shared tree route range"; + + // Ephemeral data + leaf grangeIp { + config "false"; + type address_Ip; + description "Group-range IPv6 address"; } } grouping pim6_Dom-group { + description "This objects hold per PIM6 domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; - } - - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - description "Maximum Transmission Unit"; - - // Type is an MO-Defined-Type - type rtdmc_Mtu; - } - - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - description "Auto Enable"; - - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; + description "Domain Controls"; } leaf logNbhChng { type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { type boolean; + description "Flush Routes"; } leaf bfd { type boolean; + description "BFD"; + } + + leaf regRateLmt { + + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; } // This object holds policy for Anycast RP Function @@ -141864,36 +157512,31 @@ module Cisco-NX-OS-device { // and all the peer's local info Anycast RP is not supported for BSR and Auto-RP container acastrpfunc-items { - // Added containment as a singleton: Prefix=acastrpfunc - // Acquired From Package pim6 uses pim6_AcastRpFuncP-group; + description "Anycast RP Function Policy"; } - // This object holds policy for - // Auto-RP method of RP discovery - container autorp-items { + container assert-items { - // Added containment as a singleton: Prefix=autorp - // Acquired From Package pim6 - uses pim6_AutoRPP-group; + uses pim6_Assert-group; + description "This model is used to configure assert events for PIM6"; } // This object holds policy for // Bootstrap Router method of RP discovery container bsr-items { - // Added containment as a singleton: Prefix=bsr - // Acquired From Package pim6 uses pim6_BsrP-group; + description "This object holds policy for Bootstrap Router method of RP discovery"; } container eventhist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package pim6 uses pim6_EventHistory-group; + description "This object holds configuration detais for event-history buffers list"; } + description "This object holds configuration detais for event-history buffers"; } // This object holds pim6 information that is operated at a @@ -141902,98 +157545,82 @@ module Cisco-NX-OS-device { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package pim6 uses pim6_If-group; + description "This object holds PIM6 information that is operated at a interface level list"; } + description "This object holds PIM6 information that is operated at a interface level"; } // This object holds resource (router state) limit policy // to limit amount of multicast routing state on the router container limit-items { - // Added containment as a singleton: Prefix=limit - // Acquired From Package pim6 uses pim6_ResP-group; + description "This object holds resource (router state) limit policy"; } // This object holds policy for // Any Source Multicast (ASM) pattern container asm-items { - // Added containment as a singleton: Prefix=asm - // Acquired From Package pim6 uses pim6_AsmPatP-group; + description "This object holds policy for Any Source Multicast (ASM) pattern"; } // This object holds policy for // Source Specific Multicast (SSM) pattern container ssm-items { - // Added containment as a singleton: Prefix=ssm - // Acquired From Package pim6 uses pim6_SsmPatP-group; + description "This object holds policy for SSM Pattern"; } // This object holds policy for // Bidirectional Multicast (BiDir) pattern container bidir-items { - // Added containment as a singleton: Prefix=bidir - // Acquired From Package pim6 uses pim6_BidirPatP-group; + description "This object holds policy for BiDir Pattern"; } // This object holds policy for Static RP container staticrp-items { - // Added containment as a singleton: Prefix=staticrp - // Acquired From Package pim6 uses pim6_StaticRPP-group; + description "This object holds policy for Static RP"; } } grouping pim6_AcastRpFuncP-group { + description "Anycast RP Function Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Anycast RP Unique Local Interface - // Inherited From rtdmc:AAcastRPFuncP - // Type is an MO-Defined-Type leaf localIf { - description "Local Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Local Interface"; } // This object holds Anycast RP Peer Info @@ -142001,214 +157628,195 @@ module Cisco-NX-OS-device { list AcastRpPeer-list { key "addr rpSetAddr"; - // Added containment: Prefix=peer - // Acquired From Package pim6 uses pim6_AcastRpPeer-group; + description "Anycast RP Peer information list"; } + description "Anycast RP Peer information"; } } grouping pim6_AcastRpPeer-group { + description "Anycast RP Peer information"; leaf rpSetAddr { type address_Ip; + description "IP Address of node performing the function"; } leaf addr { type address_Ip; + description "Address"; } } - grouping pim6_AutoRPP-group { + grouping pim6_Assert-group { + description "This model is used to configure assert events for PIM6"; + + // AssertRate + leaf assertRtLmt { + + type rtdmc_AssertRateLmt; + description "Configure Rate limit for pim asserts"; + } + } + + grouping pim6_BsrP-group { + description "This object holds policy for Bootstrap Router method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Auto-RP Control - // Inherited From rtdmc:AAutoRPP - // Type is an MO-Defined-Type + // BSR Control leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type - type rtdmc_AutoRPCtrl; + type rtdmc_BSRCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim6 uses pim6_RpFilterP-group; + description "This object holds policy for RP Filter"; } // This object holds policy for - // choosing Mapping Agent from among the candidates - container mafilter-items { + // choosing BSRs from among BSR candidates + container bsrfilter-items { - // Added containment as a singleton: Prefix=mafilter - // Acquired From Package pim6 - uses pim6_MaFilterP-group; + uses pim6_BsrFilterP-group; + description "This object holds policy for choosing BSRs among BSR candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim6 uses pim6_RpFuncP-group; + description "This object holds policy for RP Function"; } // This object holds policy for - // Auto-RP Mapping Agent Function - container mafunc-items { + // Bootstrap Router Function + container bsrfunc-items { - // Added containment as a singleton: Prefix=mafunc - // Acquired From Package pim6 - uses pim6_MaFuncP-group; + uses pim6_BsrFuncP-group; + description "This object holds policy for Bootstrap Router Function"; } } grouping pim6_RpFilterP-group { + description "This object holds policy for RP Filter"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } - grouping pim6_MaFilterP-group { + grouping pim6_BsrFilterP-group { + description "This object holds policy for choosing BSRs among BSR candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim6_RpFuncP-group { + description "This object holds policy for RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Priority - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Interval - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } // Scope - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf addr { type address_Ip; + description "AutoRP Cand RP Address"; } leaf useSendRPAnnCommand { type boolean; + description "Flag to use send-rp-announce"; } // This object holds multicast group ranges for RP @@ -142216,407 +157824,241 @@ module Cisco-NX-OS-device { list RpGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim6 uses pim6_RpGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } } grouping pim6_RpGrpRange-group { + description "This object holds multicast group ranges for RP"; leaf override { type boolean; + description "Flag to override RP preference to choose static RP"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf bidir { type boolean; - } - } - - grouping pim6_MaFuncP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - - // Scope - // Inherited From rtdmc:AMAFuncP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtdmc_AutoRPScope; - } - leaf useSendRPDisCommand { - type boolean; - } - } - - grouping pim6_BsrP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // BSR Control - // Inherited From rtdmc:ABSRP - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; - - // Type is an MO-Defined-Type - type rtdmc_BSRCtrl; - } - - // End Child MOs This object holds policy for - // choosing RPs from among RP candidates - container rpfilter-items { - - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim6 - uses pim6_RpFilterP-group; - } - - // This object holds policy for - // choosing BSRs from among BSR candidates - container bsrfilter-items { - - // Added containment as a singleton: Prefix=bsrfilter - // Acquired From Package pim6 - uses pim6_BsrFilterP-group; - } - - // This object holds policy for RP Function - container rpfunc-items { - - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim6 - uses pim6_RpFuncP-group; - } - - // This object holds policy for - // Bootstrap Router Function - container bsrfunc-items { - - // Added containment as a singleton: Prefix=bsrfunc - // Acquired From Package pim6 - uses pim6_BsrFuncP-group; - } - } - - grouping pim6_BsrFilterP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf rtMap { - type string { - } + description "BiDir Groups"; } } grouping pim6_BsrFuncP-group { + description "This object holds policy for Bootstrap Router Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Hash Mask Len - // Inherited From rtdmc:ABSRFuncP - // Modified by Override: pim6:BsrFuncP->hashLen - // Type is an MO-Defined-Type leaf hashLen { - description "Hash Mask Len"; - // Type is an MO-Defined-Type type rtdmc_BSRHashLen { range "1..32"; } + description "Hash Mask Len"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } } grouping pim6_EventHistory-group { + description "This object holds configuration detais for event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type type pim6_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { - description "configures buffer size in text/kb"; - // Type is an MO-Defined-Type type pim6_Size; + description "configures buffer size in text/kb"; } } grouping pim6_If-group { + description "This object holds PIM6 information that is operated at a interface level"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Interface Control - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type rtdmc_IfCtrl; + description "Controls"; } leaf dr { config "false"; type address_Ip; + description "PIM DR"; } leaf nbrHoldTime { config "false"; type uint32; + description "PIM Nbr HoldTime"; } // Generation id - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf genID { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } leaf nextHello { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Next hello time"; } leaf ipAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } leaf ifName { config "false"; type string; + description "Interface Name"; } // Designated Router Priority - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf drPrio { - description "Designated Router Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; - } - - // Designated Router Delay - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type - leaf drDelay { - description "Designated Router Delay"; - - // Type is an MO-Defined-Type - type rtdmc_DRDelay; + description "Designated Router Priority"; } leaf jpRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Join Prune Policy"; } leaf neighRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor route-map Policy"; } leaf neighpfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor prefix-list Policy"; } leaf border { type boolean; + description "Border policy"; + } + leaf passive { + type boolean; + description "Interface in Passive mode. No send/receive."; } leaf rtEpPDn { type string; + description "RtEpP DN"; } - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf bfdInst { - description "BFD Instance"; - // Type is an MO-Defined-Type type rtdmc_BfdInstSt; + description "BFD Instance"; } leaf pimSparseMode { type boolean; + description "Sparse Mode "; } // This object holds pim6 neighbor information @@ -142624,22 +158066,25 @@ module Cisco-NX-OS-device { list AdjEp-list { key "addr"; - // Added containment: Prefix=adj - // Acquired From Package pim6 uses pim6_AdjEp-group; + description "This object holds PIM6 neighbor information list"; } + description "This object holds PIM6 neighbor information"; } // PIM6 databases + // Ephemeral data container db-items { + + // Ephemeral data list Db-list { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim6 uses pim6_Db-group; + description "This object holds PIM6 Database information list"; } + description "This object holds PIM6 Database information"; } // This object holds the join-prune traffic policy @@ -142647,221 +158092,139 @@ module Cisco-NX-OS-device { list JpTrP-list { key "policyDir"; - // Added containment: Prefix=jp - // Acquired From Package pim6 uses pim6_JpTrP-group; + description "This object holds the join-prune traffic policy list"; } + description "This object holds the join-prune traffic policy"; } // This object holds the hello traffic policy container hello-items { - // Added containment as a singleton: Prefix=hello - // Acquired From Package pim6 uses pim6_HelloTrP-group; + description "This object holds the hello traffic policy"; } // This object holds the pim6 control traffic stats + // Ephemeral data container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim6 uses pim6_TrafficStats-group; + description "This object holds the PIM6 control traffic stats"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping pim6_AdjEp-group { + description "This object holds PIM6 neighbor information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { type address_Ip; + description "Address"; } leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } } grouping pim6_JpTrP-group { + description "This object holds the join-prune traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf RtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Out Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "In Prefix List"; } // in route-map for out-bound policy application @@ -142871,6479 +158234,4884 @@ module Cisco-NX-OS-device { // mod="implicit" // label="Out Prefix List" // /> Interval used between peers - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf itvl { - description "Periodic Interval"; - // Type is an MO-Defined-Type type rtdmc_JPItvl; + description "Periodic Interval"; } - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf policyDir { - description "Policy Direction "; - // Type is an MO-Defined-Type type rtdmc_PolicyDirType; + description "Policy Direction "; } } grouping pim6_HelloTrP-group { + description "This object holds the hello traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Hello Interval - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf helloItvl { - description "Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Hello Interval"; } // Authentication Type - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authT { - description "Authentication Type"; - // Type is an MO-Defined-Type type rtdmc_AuthT; + description "Authentication Type"; } // Authentication Key - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authKey { - description "Authentication Key"; - // Type is an MO-Defined-Type type rtdmc_AuthKey; + description "Authentication Key"; } } grouping pim6_ResP-group { + description "This object holds resource (router state) limit policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf max { - description "Maximum Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Maximum Multicast Entries"; } // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf rsvd { - description "Reserved Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Reserved Multicast Entries"; } leaf rtMap { type string; + description "Reserved Entries Route Map"; } } grouping pim6_AsmPatP-group { + description "This object holds policy for Any Source Multicast (ASM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; - } - - // Controls - // Inherited From rtdmc:AASMPatP - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type rtdmc_ASMCtrl; - } - leaf preBuildSpt { - type boolean; - } - leaf force { - type boolean; - } - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - - // This object holds (S,G) expiry timer - // policy for specified range - container sgexp-items { - - // Added containment as a singleton: Prefix=sgexp - // Acquired From Package pim6 - uses pim6_SgRangeExpP-group; + description "Description of the specified attribute"; } // This object holds group range // to use only shared tree container shared-items { - // Added containment as a singleton: Prefix=shared - // Acquired From Package pim6 uses pim6_SharedRangeP-group; + description "Shared Tree Group Range Policy"; } // This object holds the register traffic policy container reg-items { - // Added containment as a singleton: Prefix=reg - // Acquired From Package pim6 uses pim6_RegTrP-group; - } - } - - grouping pim6_SgRangeExpP-group { - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - leaf grpList { - type address_Ip; - } - leaf grpList1 { - type address_Ip; - } - leaf grpList2 { - type address_Ip; - } - leaf grpList3 { - type address_Ip; - } - leaf ssmNone { - type boolean; - } - - // (S,G) entry inactivity expiry timer - // Inherited From rtdmc:ASGRangeExpP - // Type is an MO-Defined-Type - leaf sgExpItvl { - description "(S,G) Entry Expiry Timer"; - - // Type is an MO-Defined-Type - type rtdmc_SGExpItvl; + description "This object holds the register traffic policy"; } } grouping pim6_SharedRangeP-group { + description "Shared Tree Group Range Policy"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf useSPTCommand { type boolean; + description "Flag to use spt-threashold command"; } } grouping pim6_RegTrP-group { + description "This object holds the register traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; - } - - // Source Interface - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + description "Source Address"; } // Max Rate - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf maxRate { - description "Maximum Rate"; - // Type is an MO-Defined-Type type rtdmc_RegRate; + description "Maximum Rate"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Route Map"; } leaf pfxList { type string { - } - } - } - - grouping pim6_SsmPatP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // This object holds SSM group range - container range-items { - - // Added containment as a singleton: Prefix=range - // Acquired From Package pim6 - uses pim6_SsmRangeP-group; - } - } - - grouping pim6_SsmRangeP-group { - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - leaf grpList { - type address_Ip; - } - leaf grpList1 { - type address_Ip; - } - leaf grpList2 { - type address_Ip; - } - leaf grpList3 { - type address_Ip; - } - leaf ssmNone { - type boolean; - } - } - - grouping pim6_BidirPatP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Maximum number of RPs - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type - leaf maxRP { - description "Maximum RPs"; - - // Type is an MO-Defined-Type - type rtdmc_BidirRPLimit; - } - - // Designated Forwarder Offer Burst Interval - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type - leaf dfobItvl { - description "Designated Forwarder Offer Burst Interval"; - - // Type is an MO-Defined-Type - type rtdmc_DFOBItvl; - } - } - - grouping pim6_StaticRPP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // This object holds Static RP Info - // If rp addr is configured locally, - // router assumes RP functionality - container rp-items { - list StaticRP-list { - key "addr"; - - // Added containment: Prefix=rp - // Acquired From Package pim6 - uses pim6_StaticRP-group; - } - } - } - - grouping pim6_StaticRP-group { - leaf addr { - type address_Ip; - } - - // This object holds multicast group ranges for RP - container range-items { - list RpGrpRange-list { - key "bidir"; - - // Added containment: Prefix=range - // Acquired From Package pim6 - uses pim6_RpGrpRange-group; - } - } - container rpgrplist-items { - list RpGrpList-list { - key "grpListName"; - - // Added containment: Prefix=rpgrplist - // Acquired From Package pim6 - uses pim6_RpGrpList-group; - } - } - } - - grouping pim6_RpGrpList-group { - leaf grpListName { - type address_Ip; - } - leaf bidir { - type boolean; - } - leaf override { - type boolean; - } - } - - grouping pim6_RouteDb-group { - - // This objects hold per pim6 domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; - - // Added containment: Prefix=vrf - // Acquired From Package pim6 - uses pim6_Vrf-group; - } - } - } - - grouping segrt_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; - } - - // This objects hold per Segment-routing instance information. - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package segrt - uses segrt_Inst-group; - } - - // Holds segment-routing TE entity information - container te-items { - - // Added containment as a singleton: Prefix=te - // Acquired From Package srte - uses srte_TE-group; - } - } - - grouping segrt_Inst-group { - - // Sets the interval for which Segment-Routing process will wait for the clients - // to cleanup the old SRGB labels - // Type is an MO-Defined-Type - leaf srgbCleanupIntvl { - description "SRGB cleanup interval"; - - // Type is an MO-Defined-Type - type segrt_SrgbCleanupIntvl; - } - - // Sets the interval for which Segment-Routing will retry SRGB allocation with ULIB - // Type is an MO-Defined-Type - leaf srgbAllocRetryIntvl { - description "SRGB allocation retry interval"; - - // Type is an MO-Defined-Type - type segrt_SrgbAllocRetryIntvl; - } - - // Segment-routing operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Segment-routing Operational State"; - - // Type is an MO-Defined-Type - type segrt_OperSt; - } - - // Segment-routing operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Segment-routing Operational State Qualifier"; - - // Type is an MO-Defined-Type - type segrt_OperStQual; + pattern ".*[!-~]{0,63}.*"; + } + description "Register Message Prefix List"; } + } + + grouping pim6_SsmPatP-group { + description "This object holds policy for SSM Pattern"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds SSM group range + container range-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses pim6_SsmRangeP-group; + description "SSM Group Range Policy"; } + } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + grouping pim6_SsmRangeP-group { + description "SSM Group Range Policy"; + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route Map"; } - - // This object holds per domain (vrf) information - container dom-items { - list Dom-list { - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package segrt - uses segrt_Dom-group; + leaf pfxList { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } - - // Segment Routing Global Block - container srgb-items { - - // Added containment as a singleton: Prefix=srgb - // Acquired From Package segrt - uses segrt_Srgb-group; + leaf grpList { + type address_Ip; + description "Group List"; + } + leaf grpList1 { + type address_Ip; + description "Group List"; + } + leaf grpList2 { + type address_Ip; + description "Group List"; + } + leaf grpList3 { + type address_Ip; + description "Group List"; + } + leaf ssmNone { + type boolean; + description "SSM None "; } } - grouping segrt_Dom-group { + grouping pim6_BidirPatP-group { + description "This object holds policy for BiDir Pattern"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This object holds per address family Segment-routing information - container af-items { - list DomAf-list { - key "afType"; + leaf descr { - // Added containment: Prefix=af - // Acquired From Package segrt - uses segrt_DomAf-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + + // Maximum number of RPs + leaf maxRP { + + type rtdmc_BidirRPLimit; + description "Maximum RPs"; + } + + // Designated Forwarder Offer Burst Interval + leaf dfobItvl { + + type rtdmc_DFOBItvl; + description "Designated Forwarder Offer Burst Interval"; } } - grouping segrt_DomAf-group { + grouping pim6_StaticRPP-group { + description "This object holds policy for Static RP"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Address Family Type - // Inherited From segrt:Af - // Type is an MO-Defined-Type - leaf afType { - description "Address family type"; + leaf descr { - // Type is an MO-Defined-Type - type segrt_AfType; + type naming_Descr; + description "Description of the specified attribute"; } - // Prefix SID - container pfxsid-items { - list PrefixSid-list { - key "type"; + // This object holds Static RP Info + // If rp addr is configured locally, + // router assumes RP functionality + container rp-items { + list StaticRP-list { + key "addr"; - // Added containment: Prefix=pfxsid - // Acquired From Package segrt - uses segrt_PrefixSid-group; + uses pim6_StaticRP-group; + description "This object holds Static RP Information list"; } + description "This object holds Static RP Information"; } } - grouping segrt_PrefixSid-group { + grouping pim6_StaticRP-group { + description "This object holds Static RP Information"; + leaf addr { + type address_Ip; + description "Address"; + } - // Type of segment identifier - // Type is an MO-Defined-Type - leaf type { - description "Type of Segment Identifier"; + // This object holds multicast group ranges for RP + container range-items { + list RpGrpRange-list { + key "bidir"; - // Type is an MO-Defined-Type - type segrt_SrDpType; + uses pim6_RpGrpRange-group; + description "This object holds multicast group ranges for RP list"; + } + description "This object holds multicast group ranges for RP"; } + container rpgrplist-items { + list RpGrpList-list { + key "grpListName"; - // MPLS Prefix SID - container mplspfxsid-items { - list MplsPrefixSid-list { - key "pfx"; - - // Added containment: Prefix=mplspfxsid - // Acquired From Package segrt - uses segrt_MplsPrefixSid-group; + uses pim6_RpGrpList-group; + description "RP Multicast Group List list"; } + description "RP Multicast Group List"; } } - grouping segrt_MplsPrefixSid-group { - leaf pfx { + grouping pim6_RpGrpList-group { + description "RP Multicast Group List"; + leaf grpListName { type address_Ip; + description "Group List address"; } - - // Type of segment identifier - // Type is an MO-Defined-Type - leaf sidValueType { - description "Type of Segment Identifier Value"; - - // Type is an MO-Defined-Type - type segrt_SidValueType; + leaf bidir { + type boolean; + description "Treat Group Ranges as BiDir"; } - leaf sidValue { - type uint32 { - range "0..471804"; - } + leaf override { + type boolean; + description " Prefer Static RP over Dynamic RP"; } } - grouping segrt_Srgb-group { + grouping pim6_Gl-group { + description "This object holds global configuration for PIM6"; - // Config Segment Routing Global Block - container cfgsrgb-items { - list ConfigSrgb-list { - key "type"; + // logLevel + leaf logLvl { - // Added containment: Prefix=cfgsrgb - // Acquired From Package segrt - uses segrt_ConfigSrgb-group; - } + type mcast_LogLevelRange; + description "Syslog filter level"; } - - // Operational Segment Routing Global Block - container opersrgb-items { - - // Added containment as a singleton: Prefix=opersrgb - // Acquired From Package segrt - uses segrt_OperSrgb-group; + leaf isolate { + type boolean; + description "Isolate this router flag"; } } - grouping segrt_ConfigSrgb-group { - - // SRGB type - // Type is an MO-Defined-Type - leaf type { - description "SRGB type"; + grouping pim6_RouteDb-group { + description "This object holds PIM6 route database information"; - // Type is an MO-Defined-Type - type segrt_SrDpType; - } + // This objects hold per pim6 domain (vrf) information + // Ephemeral data + container vrf-items { - // Segment Routing Global Range Label Block - container lblblock-items { - list LblBlock-list { - key "localId"; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; - // Added containment: Prefix=lblblock - // Acquired From Package segrt - uses segrt_LblBlock-group; + uses pim6_Vrf-group; + description "This objects hold per pim6 domain (vrf) information list"; } + description "This objects hold per pim6 domain (vrf) information"; } } - grouping segrt_LblBlock-group { - leaf localId { - type string { - length "1..64"; - } - } + grouping ptp_PtpEntity-group { + description "PTP Entity MO for all the PTP global configuration properties"; - // SRGB minimum label - // Type is an MO-Defined-Type - leaf srLblMin { - description "SRGB minimum label"; + // Holds multiple PTP Correction oper information + container correction-items { - // Type is an MO-Defined-Type - type ulib_LabelVal { - range "16000..471804"; - } + uses ptp_PtpCorrection-group; + description "PTP Correction Object"; } + } - // SRGB maximum label - // Type is an MO-Defined-Type - leaf srLblMax { - description "SRGB minimum label"; - - // Type is an MO-Defined-Type - type ulib_LabelVal { - range "16000..471804"; - } + grouping ptp_PtpCorrection-group { + description "PTP Correction Object"; + leaf lastHighCorrectionTime { + config "false"; + type string; + description "last SUP time when the correction occured"; } - - // SRGB operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf lastHighCorrectionValue { config "false"; - description "SRGB Operational State"; - - // Type is an MO-Defined-Type - type segrt_SRGBOperSt; + type int64; + description "PTP last Correction value"; } - - // Number of SRGB allocation retries - // Type is an MO-Defined-Type - leaf numAllocRetries { + leaf highCorrectionCount { config "false"; - description "Number of SRGB allocation retries"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Total PTP Corrections since last timestamp"; } } - grouping segrt_OperSrgb-group { + grouping segrt_Entity-group { + description "Segment-routing Entity"; - // SRGB type - // Type is an MO-Defined-Type - leaf type { - description "SRGB type"; + leaf name { - // Type is an MO-Defined-Type - type segrt_SrDpType; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Segment Routing Attributes - container operlblblock-items { - list OperLblBlock-list { - config "false"; - key "localId"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=operlblblock - // Acquired From Package segrt - uses segrt_OperLblBlock-group; - } + type nw_AdminSt; + description "Admin State"; } - } - grouping segrt_OperLblBlock-group { - leaf localId { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } - // SRGB minimum label - // Type is an MO-Defined-Type - leaf srLblMin { + // Operational errors qualifier + leaf operErr { config "false"; - description "SRGB minimum label"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // SRGB maximum label - // Type is an MO-Defined-Type - leaf srLblMax { - config "false"; - description "SRGB minimum label"; + container srv6-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses srv6_Entity-group; + description "SRv6 root MO"; } - // SRGB operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "SRGB Operational State"; + // This objects hold per Segment-routing instance information. + container inst-items { - // Type is an MO-Defined-Type - type segrt_SRGBOperSt; + uses segrt_Inst-group; + description "Segment-routing Instance"; } - // Number of SRGB allocation retries - // Type is an MO-Defined-Type - leaf numAllocRetries { - config "false"; - description "Number of SRGB allocation retries"; + // Holds segment-routing TE entity information + container te-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses srte_TE-group; + description "Traffic Engineering Entity, anchoring all SRTE specific MOs"; } } - grouping srte_TE-group { + grouping srv6_Entity-group { + description "SRv6 root MO"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // SRTE Color definition - container color-items { - list Color-list { - key "color"; + // Ephemeral data + container sidcounters-items { - // Added containment: Prefix=color - // Acquired From Package srte - uses srte_Color-group; + // Ephemeral data + list SidCounters-list { + config "false"; + key "sidAddress"; + + uses srv6_SidCounters-group; + description "SID counters list"; } + description "SID counters"; } - // SRTE Encapsulation definition - container encap-items { - list Encapsulation-list { - key "encapType"; + container encapsulation-items { - // Added containment: Prefix=encap - // Acquired From Package srte - uses srte_Encapsulation-group; - } + uses srv6_Encapsulation-group; + description "Encapsulation address. Either address or interface is used, not both."; } - // SRTE Exp Path definition - container exppath-items { - list ExpPath-list { - key "name"; + container locators-items { - // Added containment: Prefix=exppath - // Acquired From Package srte - uses srte_ExpPath-group; - } + uses srv6_Locators-group; + description "Root of all locators"; } + } - // SRTE Policy definition - container pcc-items { + grouping srv6_SidCounters-group { + description "SID counters"; - // Added containment as a singleton: Prefix=pcc - // Acquired From Package srte - uses srte_Pcc-group; + // Ephemeral data + leaf sidAddress { + config "false"; + type address_Ip; + description "SID IPv6 address, no mask length needed"; } - // SRTE Policy definition - container policy-items { - list Policy-list { - key "name"; + // Ephemeral data + leaf sidIsLocal { + config "false"; + type boolean; + description "True if the SID is local, false if it is remote."; + } - // Added containment: Prefix=policy - // Acquired From Package srte - uses srte_Policy-group; - } + // Ephemeral data + leaf sidCounterInputPkts { + config "false"; + type uint64; + description "Number of packets coming from this SID."; } - } - grouping srte_Color-group { - leaf color { + // Ephemeral data + leaf sidCounterInputBytes { + config "false"; type uint64; + description "Number of bytes coming from this SID."; } - // Type is an MO-Defined-Type - leaf metric { - description "Metric"; + // Ephemeral data + leaf sidCounterOutputPkts { + config "false"; + type uint64; + description "Number of packets sent to this SID."; + } - // Type is an MO-Defined-Type - type srte_Metric; + // Ephemeral data + leaf sidCounterOutputBytes { + config "false"; + type uint64; + description "Number of bytes sent to this SID."; } } - grouping srte_Encapsulation-group { + grouping srv6_Encapsulation-group { + description "Encapsulation address. Either address or interface is used, not both."; leaf srcAddress { type address_Ip; + description "IPv6 address"; } - - // Type is an MO-Defined-Type - leaf encapType { - description "Encapsulation type"; - - // Type is an MO-Defined-Type - type srte_EncapsulationType; + leaf srcInterface { + type string; + description "Interface, most likely a loopback"; } - } - grouping srte_ExpPath-group { - - // Type is an MO-Defined-Type leaf name { - description "Explicit path name"; - // Type is an MO-Defined-Type - type srte_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // SRTE Exp Path Next-Label definition - container nxtlbl-items { - list NxtLbl-list { - key "idx"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=nxtlbl - // Acquired From Package srte - uses srte_NxtLbl-group; - } + type nw_AdminSt; + description "Admin State"; } - } - - grouping srte_NxtLbl-group { - // Type is an MO-Defined-Type - leaf idx { - description "Index"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type srte_OptNum; + type nw_EntOperSt; + description "Operational State"; } - // Type is an MO-Defined-Type - leaf lbl { - description "Next Label Value"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type srte_LabelVal; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping srte_Pcc-group { - leaf srcAddress { - type address_Ip; - } + grouping srv6_Locators-group { + description "Root of all locators"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } + container locator-items { + list Locator-list { + key "name"; - // SRTE Pce definition - container pce-items { - list Pce-list { - key "pceAddress"; - - // Added containment: Prefix=pce - // Acquired From Package srte - uses srte_Pce-group; + uses srv6_Locator-group; + description "Define one locator list"; } + description "Define one locator"; } } - grouping srte_Pce-group { - - // Type is an MO-Defined-Type - leaf precedence { - description "Precedence value (0 is most preferred, 255 is least)"; - - // Type is an MO-Defined-Type - type srte_PcePrecedence; - } - leaf pceAddress { - type address_Ip; - } - } - - grouping srte_Policy-group { + grouping srv6_Locator-group { + description "Define one locator"; - // Type is an MO-Defined-Type leaf name { - description "Policy name"; - // Type is an MO-Defined-Type - type srte_Name; + type srv6_LocName; + description "Locator name"; } - leaf endpoint { + leaf prefix { type address_Ip; - } - leaf color { - type uint64; - } - - // SRTE Policy Preference definition - container pref-items { - list PolPref-list { - key "pref"; - - // Added containment: Prefix=pref - // Acquired From Package srte - uses srte_PolPref-group; - } - } - } - - grouping srte_PolPref-group { - - // Type is an MO-Defined-Type - leaf pref { - description "The preference value for the group of explicit paths"; - - // Type is an MO-Defined-Type - type srte_OptNum; + description "Locator address"; } - // SRTE Policy Explicit-path holder definition - container exp-items { - list PolExp-list { - key "name"; + leaf state { + config "false"; - // Added containment: Prefix=exp - // Acquired From Package srte - uses srte_PolExp-group; - } + type srv6_LocState; + description "Locator State"; } - } - - grouping srte_PolExp-group { - - // Type is an MO-Defined-Type - leaf name { - description "Explicit path name. Must be the name of an existing ExpPath MO"; - - // Type is an MO-Defined-Type - type srte_Name; + leaf id { + config "false"; + type uint32; + description "Locator Id"; } } - grouping vrrp_Entity-group { + grouping segrt_Inst-group { + description "Segment-routing Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sets the interval for which Segment-Routing process will wait for the clients + // to cleanup the old SRGB labels + leaf srgbCleanupIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type segrt_SrgbCleanupIntvl; + description "SRGB cleanup interval"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Sets the interval for which Segment-Routing will retry SRGB allocation with ULIB + leaf srgbAllocRetryIntvl { - // Type is an MO-Defined-Type - type nw_AdminSt; + type segrt_SrgbAllocRetryIntvl; + description "SRGB allocation retry interval"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Segment-routing operational state leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type segrt_OperSt; + description "Segment-routing Operational State"; } - // This object holds per vrrp instance information. There is only - // one instance supported in vrrp currently - container inst-items { + // Segment-routing operational state qualifier + leaf operStQual { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vrrp - uses vrrp_Inst-group; + type segrt_OperStQual; + description "Segment-routing Operational State Qualifier"; } - } - - grouping vrrp_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { + + type nw_InstCtrl; description "Controls"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This object holds per domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses segrt_Dom-group; + description "Domain list"; + } + description "Domain"; } - // This object holds the interfaces that will have VRRP interface. - // Interface must already be created and should have an IP address - container if-items { - list Interface-list { - key "id"; + // Segment Routing Global Block + container srgb-items { - // Added containment: Prefix=if - // Acquired From Package vrrp - uses vrrp_Interface-group; - } + uses segrt_Srgb-group; + description "Segment Routing Global Block"; } } - grouping vrrp_Interface-group { - leaf isCreate { - config "false"; - type uint8; - default "0"; - } + grouping segrt_Dom-group { + description "Domain"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds per address family Segment-routing information + container af-items { + list DomAf-list { + key "afType"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses segrt_DomAf-group; + description "Address Family Domain list"; + } + description "Address Family Domain"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + grouping segrt_DomAf-group { + description "Address Family Domain"; - // Type is an MO-Defined-Type - type nw_IfId; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Address Family Type + leaf afType { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type segrt_AfType; + description "Address family type"; } - // This object holds vrrp id information - container id-items { - list Id-list { - key "id"; + // Prefix SID + container pfxsid-items { + list PrefixSid-list { + key "type"; - // Added containment: Prefix=id - // Acquired From Package vrrp - uses vrrp_Id-group; + uses segrt_PrefixSid-group; + description "Prefix Segment Identifier list"; } + description "Prefix Segment Identifier"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - container rtvrfMbr-items { + grouping segrt_PrefixSid-group { + description "Prefix Segment Identifier"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Type of segment identifier + leaf type { + + type segrt_SrDpType; + description "Type of Segment Identifier"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // MPLS Prefix SID + container mplspfxsid-items { + list MplsPrefixSid-list { + key "pfx"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses segrt_MplsPrefixSid-group; + description "MPLS Prefix Segment Identifier list"; } + description "MPLS Prefix Segment Identifier"; } } - grouping vrrp_Id-group { - - // vrrp id - // Type is an MO-Defined-Type - leaf id { - description "VRRP Id"; - - // Type is an MO-Defined-Type - type vrrp_Id; - } - leaf primary { + grouping segrt_MplsPrefixSid-group { + description "MPLS Prefix Segment Identifier"; + leaf pfx { type address_Ip; + description "Prefix"; } - // advertise interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Advertisement Interval"; + // Type of segment identifier + leaf sidValueType { - // Type is an MO-Defined-Type - type vrrp_AdvIntvl; + type segrt_SidValueType; + description "Type of Segment Identifier Value"; } + leaf sidValue { + type uint32 { + range "0..471804"; + } + description "Value of SID"; + } + } - // authentication text - // Type is an MO-Defined-Type - leaf authText { - description "Authentication Text"; + grouping segrt_Srgb-group { + description "Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_AuthTextType; + // Config Segment Routing Global Block + container cfgsrgb-items { + list ConfigSrgb-list { + key "type"; + + uses segrt_ConfigSrgb-group; + description "Config Segment Routing Global Block list"; + } + description "Config Segment Routing Global Block"; } - // authentication type - // Type is an MO-Defined-Type - leaf authType { - description "Authentication Type"; + // Operational Segment Routing Global Block + container opersrgb-items { - // Type is an MO-Defined-Type - type vrrp_AuthType; + uses segrt_OperSrgb-group; + description "Operational Segment Routing Global Block"; } + } - // Preempt - // Type is an MO-Defined-Type - leaf preempt { - description "Preempt"; + grouping segrt_ConfigSrgb-group { + description "Config Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_Preempt; + // SRGB type + leaf type { + + type segrt_SrDpType; + description "SRGB type"; } - // priority configuration - // Type is an MO-Defined-Type - leaf priCfg { - description "Configured Priority"; + // Segment Routing Global Range Label Block + container lblblock-items { + list LblBlock-list { + key "localId"; - // Type is an MO-Defined-Type - type vrrp_PriVal; - } - leaf bfdPeerAddr { - type address_Ip; + uses segrt_LblBlock-group; + description "Segment Routing Global Range Label Block list"; + } + description "Segment Routing Global Range Label Block"; } + } - // forwarding lower threshold - // Type is an MO-Defined-Type - leaf fwdLwrThrld { - description "Fowarding Lower Threshold"; - - // Type is an MO-Defined-Type - type vrrp_PriVal; + grouping segrt_LblBlock-group { + description "Segment Routing Global Range Label Block"; + leaf localId { + type string { + length "1..64"; + } + description "SRGB identifier"; } - // forwarding upper threshold - // Type is an MO-Defined-Type - leaf fwdUprThrld { - description "Forwarding Upper Threshold"; + // SRGB minimum label + leaf srLblMin { - // Type is an MO-Defined-Type - type vrrp_UprThrshld; + type ulib_LabelVal { + range "16000..471804"; + } + description "SRGB minimum label"; } - // admin state - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin state"; + // SRGB maximum label + leaf srLblMax { - // Type is an MO-Defined-Type - type vrrp_AdminSt; + type ulib_LabelVal { + range "16000..471804"; + } + description "SRGB minimum label"; } - // group state - // Type is an MO-Defined-Type - leaf groupSt { + // SRGB operational state + leaf operSt { config "false"; - description "vrrp group state"; - // Type is an MO-Defined-Type - type vrrp_GroupSt; + type segrt_SRGBOperSt; + description "SRGB Operational State"; } - // group state qualifier - // Type is an MO-Defined-Type - leaf groupStQual { + // Number of SRGB allocation retries + leaf numAllocRetries { config "false"; - description "vrrp group state qualifier"; - // Type is an MO-Defined-Type - type vrrp_GroupStQual; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf masterAddr { - config "false"; - type address_Ip; + type nw_Counter32; + description "Number of SRGB allocation retries"; } + } - // bfd session status - // Type is an MO-Defined-Type - leaf bfdSessionSt { - config "false"; - description "vrrp bfd session status"; + grouping segrt_OperSrgb-group { + description "Operational Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_bfdSessionSt; - } - container secondary-items { - list Secondary-list { - key "secondary"; + // SRGB type + leaf type { - // Added containment: Prefix=secondary - // Acquired From Package vrrp - uses vrrp_Secondary-group; - } + type segrt_SrDpType; + description "SRGB type"; } - // Object to hold vrrp tarck information - container track-items { + // Segment Routing Attributes + container operlblblock-items { + list OperLblBlock-list { + config "false"; + key "localId"; - // Added containment as a singleton: Prefix=track - // Acquired From Package vrrp - uses vrrp_Track-group; + uses segrt_OperLblBlock-group; + description "Operational Segment Routing Global Range Lable Block list"; + } + description "Operational Segment Routing Global Range Lable Block"; } } - grouping vrrp_Secondary-group { - leaf secondary { - type address_Ip; + grouping segrt_OperLblBlock-group { + description "Operational Segment Routing Global Range Lable Block"; + leaf localId { + config "false"; + type string; + description "SRGB identifier"; } - } - - grouping vrrp_Track-group { - // Object to hold native track information - container nativeTrack-items { + // SRGB minimum label + leaf srLblMin { + config "false"; - // Added containment as a singleton: Prefix=nativeTrack - // Acquired From Package vrrp - uses vrrp_NativeTrack-group; + type ulib_LabelVal; + description "SRGB minimum label"; } - // Contains track information of otm track object - container track-items { - list ObjectTrack-list { - key "id"; + // SRGB maximum label + leaf srLblMax { + config "false"; - // Added containment: Prefix=track - // Acquired From Package vrrp - uses vrrp_ObjectTrack-group; - } + type ulib_LabelVal; + description "SRGB minimum label"; } - } - - grouping vrrp_NativeTrack-group { - // Interface name to be tracked, format to be specified - // eth1/1, eth1/1.1, po1 - // Type is an MO-Defined-Type - leaf id { - description "Interface to be tracked by this VRRP instance"; + // SRGB operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf priority { - type uint16 { - range "1..254"; - } + type segrt_SRGBOperSt; + description "SRGB Operational State"; } - } - - grouping vrrp_ObjectTrack-group { - // Track id to be tracked - // Type is an MO-Defined-Type - leaf id { - description "Track Id to be tracked"; + // Number of SRGB allocation retries + leaf numAllocRetries { + config "false"; - // Type is an MO-Defined-Type - type track_TrackId; - } - leaf decrementPriority { - type uint16 { - range "1..254"; - } - default "10"; + type nw_Counter32; + description "Number of SRGB allocation retries"; } } - grouping vrrpv3_Entity-group { + grouping srte_TE-group { + description "Traffic Engineering Entity, anchoring all SRTE specific MOs"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This object holds per vrrpv3 instance information. There is only - // one instance supported in vrrpv3 currently - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vrrpv3 - uses vrrpv3_Inst-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - grouping vrrpv3_Inst-group { + // SRTE Exp Path definition + container affmap-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses srte_AffMap-group; + description "Configures affinity mappings. Mappings of user-defined names to a bit position in the affinity bitmap "; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // SRTE Color definition + container color-items { + list Color-list { + key "color"; + + uses srte_Color-group; + description "Segment Routing TE Color Class list"; } + description "Segment Routing TE Color Class"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // SRTE Encapsulation definition + container encap-items { + list Encapsulation-list { + key "encapType"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses srte_Encapsulation-group; + description "SRTE Encapsulation Class list"; + } + description "SRTE Encapsulation Class"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // SRTE Segment list definition + container seglist-items { + list SegList-list { + key "name"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses srte_SegList-group; + description "SRTE Explicit Segment List Class list"; + } + description "SRTE Explicit Segment List Class"; } - // This object holds the interfaces that will have VRRPv3 interface. + // This object holds srte information that is operated at a + // interface level container if-items { - list Interface-list { + list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package vrrpv3 - uses vrrpv3_Interface-group; + uses srte_If-group; + description "Configures this interface for segment-routing Traffic-Engineering purposes list"; } + description "Configures this interface for segment-routing Traffic-Engineering purposes"; } - } - grouping vrrpv3_Interface-group { - leaf isCreate { - config "false"; - type uint8; - default "0"; + // SRTE Policy definition + container pcc-items { + + uses srte_Pcc-group; + description "SRTE PCC (Path Computation Client) Class"; + } + + // SRTE Policy definition + container policy-items { + list Policy-list { + key "name"; + + uses srte_Policy-group; + description "Segment Routing TE Policy Class list"; + } + description "Segment Routing TE Policy Class"; } + } + + grouping srte_AffMap-group { + description "Configures affinity mappings. Mappings of user-defined names to a bit position in the affinity bitmap "; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This object holds Virtual Router ID information - container id-items { - list Vr-list { - key "id af"; + // SRTE Affinity color definition + container affcol-items { + list AffColor-list { + key "name"; - // Added containment: Prefix=id - // Acquired From Package vrrpv3 - uses vrrpv3_Vr-group; + uses srte_AffColor-group; + description "User defined name and its bit position in the affinity bit map list"; } + description "User defined name and its bit position in the affinity bit map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - container rtvrfMbr-items { + grouping srte_AffColor-group { + description "User defined name and its bit position in the affinity bit map"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf name { + + type srte_Name; + description "User defined named of the affinity Color Affinity Name"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf bitpos { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type srte_BitPos; + description "Bit position in the affinity map"; } } - grouping vrrpv3_Vr-group { + grouping srte_Color-group { + description "Segment Routing TE Color Class"; - // Virtual Router ID - // Type is an MO-Defined-Type - leaf id { - description "VRRPv3 Virtual Router Id"; + leaf color { - // Type is an MO-Defined-Type - type vrrpv3_Id; - } - leaf ip { - type address_Ip; + type srte_ColorVal; + description "Segment Routing TE Color Value"; } - // Advertisement Interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Advertisement Interval"; + leaf metric { - // Type is an MO-Defined-Type - type vrrpv3_AdvIntvl; + type srte_Metric; + description "Segment Routing TE Metric"; } - // Priority Configuration - // Type is an MO-Defined-Type - leaf priCfg { - description "Configured Priority"; + // SRTE Candidate Path definition + container cndpaths-items { - // Type is an MO-Defined-Type - type vrrpv3_PriVal; + uses srte_CndPaths-group; + description "Denotes the Candidate paths for the On-Demand Color and is identified by a preference value"; } + } - // Preempt - // Type is an MO-Defined-Type - leaf preempt { - description "Preempt"; - - // Type is an MO-Defined-Type - type vrrpv3_Preempt; - } + grouping srte_CndPaths-group { + description "Denotes the Candidate paths for the On-Demand Color and is identified by a preference value"; - // Virtual Router Description string - // Type is an MO-Defined-Type leaf name { - description "Virtual Router Description"; - // Type is an MO-Defined-Type - type vrrpv3_Desc; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Minimum Preemption delay before this group can preempt a high priority Masster - // Type is an MO-Defined-Type - leaf preemptDelayMin { - description "Miminum delay before preempt"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type vrrpv3_PreemptDelay; + type nw_AdminSt; + description "Admin State"; } - // Admin State - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin state"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type vrrpv3_AdminSt; + type nw_EntOperSt; + description "Operational State"; } - // Virtual Router Address family - // Type is an MO-Defined-Type - leaf af { - description "Virtual Router Address Family"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type vrrpv3_VrAf; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container addr-items { - list Addr-list { - key "addr"; - // Added containment: Prefix=addr - // Acquired From Package vrrpv3 - uses vrrpv3_Addr-group; + // SRTE Candidate Path Preference definition + container pref-items { + list Pref-list { + key "prefVal"; + + uses srte_Pref-group; + description "Class that defines the preference value of this candidate path list"; } + description "Class that defines the preference value of this candidate path"; } } - grouping vrrpv3_Addr-group { - leaf addr { - type address_Ip; + grouping srte_Pref-group { + description "Class that defines the preference value of this candidate path"; + leaf prefVal { + type uint32; + description "Preference Value of the Candidate path. Higher preference value is preferred"; } - } - - grouping scrtchpd_Root-group { - // Holds rpm control plane entity information - container rpmcli-items { + // SRTE Candidate Path Dynamic definition + container dyn-items { - // Added containment as a singleton: Prefix=rpmcli - // Acquired From Package rpmcli - uses rpmcli_EntityCli-group; + uses srte_Dynamic-group; + description "Enables the dynamic path configuration sub-section for this candidate path"; } - // Holds Vlan-mgr control plane entity information - container vlanmgrcli-items { + // SRTE Candidate Path Constraint definition + container constraints-items { - // Added containment as a singleton: Prefix=vlanmgrcli - // Acquired From Package vlanmgrcli - uses vlanmgrcli_EntityCli-group; + uses srte_Constraint-group; + description "Specifies the required constraints for this Candidate Paths"; } } - grouping rpmcli_EntityCli-group { + grouping srte_Dynamic-group { + description "Enables the dynamic path configuration sub-section for this candidate path"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // Route control rule for access lists - container accesslistcli-items { - list RuleCli-list { - config "false"; - key "name"; - - // Added containment: Prefix=accesslistcli - // Acquired From Package rtlistcli - uses rtlistcli_RuleCli-group; - } - } - - // Route control rule for V4 prefix lists - container pfxlistv4cli-items { - list RuleV4Cli-list { - config "false"; - key "name"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=pfxlistv4cli - // Acquired From Package rtpfxcli - uses rtpfxcli_RuleV4Cli-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Route control rule for V6 prefix lists - container pfxlistv6cli-items { - list RuleV6Cli-list { - config "false"; - key "name"; + // SRTE Candidate Path Dynamic PCEP definition + container pce-items { - // Added containment: Prefix=pfxlistv6cli - // Acquired From Package rtpfxcli - uses rtpfxcli_RuleV6Cli-group; - } + uses srte_DynPce-group; + description "Defines the candidate paths need to be computed by Path Computation engine"; } - // Route control rule for regular community lists - container rtregcomcli-items { - list RuleCli-list { - config "false"; - key "name"; + // SRTE Candidate Path Metric definition + container metric-items { - // Added containment: Prefix=rtregcomcli - // Acquired From Package rtregcomcli - uses rtregcomcli_RuleCli-group; - } + uses srte_Metric-group; + description "Specifies the type of metric that the computation will optimize"; } } - grouping rtlistcli_RuleCli-group { + grouping srte_DynPce-group { + description "Defines the candidate paths need to be computed by Path Computation engine"; - // Inherited From pol:Obj - // Modified by Override: rtlistcli:RuleCli->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - // Prefix list entry definition - container entcli-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtlistcli - uses rtlistcli_EntryCli-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtlistcli_EntryCli-group { + grouping srte_Metric-group { + description "Specifies the type of metric that the computation will optimize"; - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { - config "false"; - description "Action"; + leaf metricType { - // Type is an MO-Defined-Type - type scrtchpd_Action; + type srte_Metric; + description "Candidate Path Metric Type"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - config "false"; - type string { - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtpfxcli_RuleV4Cli-group { + grouping srte_Constraint-group { + description "Specifies the required constraints for this Candidate Paths"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Prefix list entry definition - container entcli-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtpfxcli - uses rtpfxcli_EntryCli-group; + type nw_EntOperSt; + description "Operational State"; } - } - - grouping rtpfxcli_EntryCli-group { - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type scrtchpd_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf pfx { - config "false"; - type address_Ip; + + // SRTE Candidate Path Segment definition + container segment-items { + + uses srte_Segments-group; + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; } - leaf mask { - config "false"; - type address_Ip; + + // SRTE Candidate Path Association definition + container assoc-items { + + uses srte_Assoc-group; + description "Specifies the association types this candidate path belongs to"; } - // criteria, exact match or inexact match - // Type is an MO-Defined-Type - leaf criteria { - config "false"; - description "Criteria"; + // SRTE Candidate Path Affinity definition + container affinity-items { - // Type is an MO-Defined-Type - type rtpfx_Criteria; + uses srte_Affinity-group; + description "Specifies the affinity constraints for the path"; } + } - // If the criteria is not an exact match, use a range to - // describe the prefix list range - // Type is an MO-Defined-Type - leaf fromPfxLen { - config "false"; - description "Start of Prefix Length"; + grouping srte_Segments-group { + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + leaf protType { + + type srte_ProtectionType; + description "Specifies if the candidate path must use protected or unprotected SIDs"; } - // Type is an MO-Defined-Type - leaf toPfxLen { - config "false"; - description "End of Prefix Length"; + leaf datapln { - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type srte_DataPlane; + description "Specifies if this candidate paths is encoded with MPLS SIDs or SRv6 SIDs"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtpfxcli_RuleV6Cli-group { + grouping srte_Assoc-group { + description "Specifies the association types this candidate path belongs to"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Prefix list entry definition - container entcli-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtpfxcli - uses rtpfxcli_EntryCli-group; + type nw_EntOperSt; + description "Operational State"; } - } - grouping rtregcomcli_RuleCli-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { + // Operational errors qualifier + leaf operErr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // SRTE Candidate Path Disjointness + container disj-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses srte_Disjointness-group; + description "Specifies that the path belongs to the disjointness association group"; } + } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtregcomcli:RuleCli->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtcom_ComT; + grouping srte_Disjointness-group { + description "Specifies that the path belongs to the disjointness association group"; + leaf id { + type uint32; + description "Association group Identifier"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + leaf disjType { - // Type is an MO-Defined-Type - type rtcom_Mode; + type srte_DisjointType; + description "Specifies the type of disjointness this path needs to be."; } - // Regular community list entry - container entregcli-items { + leaf name { - // Added containment as a singleton: Prefix=entregcli - // Acquired From Package rtregcomcli - uses rtregcomcli_EntryRegexCli-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Regular community list entry - container entcli-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtregcomcli - uses rtregcomcli_EntryCli-group; + type nw_AdminSt; + description "Admin State"; } - } - grouping rtregcomcli_EntryRegexCli-group { - leaf numOfChildren { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_EntOperSt; + description "Operational State"; } - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type scrtchpd_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } + + grouping srte_Affinity-group { + description "Specifies the affinity constraints for the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf regex { - config "false"; - type string { - } + + // SRTE Candidate Path Affinity exclude-any definition + container exclany-items { + + uses srte_Excludeany-group; + description "Specifies that links that have any of the specified affinity colors must not be traversed by the path"; } - } - grouping rtregcomcli_EntryCli-group { - leaf numOfChildren { - config "false"; - type uint32; + // SRTE Candidate Path Affinity include-all definition + container inclall-items { + + uses srte_Includeall-group; + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; } - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { - config "false"; - description "Action"; + // SRTE Candidate Path Affinity include-any definition + container inclany-items { - // Type is an MO-Defined-Type - type scrtchpd_Action; + uses srte_Includeany-group; + description "Specifies that only links that have any of the specified affinity colors can be traversed by the path"; } + } + + grouping srte_Excludeany-group { + description "Specifies that links that have any of the specified affinity colors must not be traversed by the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf regex { - config "false"; - type string { + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Item in the community list - container itemcli-items { - list ItemCli-list { - config "false"; - key "community"; + grouping srte_ConstAffColor-group { + description "Specify the affinity color for the Affinity constraint type"; - // Added containment: Prefix=itemcli - // Acquired From Package rtregcomcli - uses rtregcomcli_ItemCli-group; - } + leaf name { + + type srte_Name; + description "Name of the affinity Color definition"; } } - grouping rtregcomcli_ItemCli-group { + grouping srte_Includeall-group { + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - leaf community { + + // Operational errors qualifier + leaf operErr { config "false"; - type mtx_array_community; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping vlanmgrcli_EntityCli-group { + grouping srte_Includeany-group { + description "Specifies that only links that have any of the specified affinity colors can be traversed by the path"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per vlan-mgr instance information. There is only - // one instance of vlan-mgr running in the system today - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vlanmgrcli - uses vlanmgrcli_InstCli-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping vlanmgrcli_InstCli-group { - leaf vxlanNativeVlans { - config "false"; - type boolean; + grouping srte_Encapsulation-group { + description "SRTE Encapsulation Class"; + leaf srcAddress { + type address_Ip; + description "SRTE Encapsulation Source IP Address"; + } + + leaf encapType { + + type srte_EncapsulationType; + description "SRTE Encapsulation Type"; } + } + + grouping srte_SegList-group { + description "SRTE Explicit Segment List Class"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type srte_Name; + description "SRTE Explicit Segment List Name"; + } + + // SRTE Segment list Next-Label definition + container nxtlbl-items { + list NxtLbl-list { + key "idx"; + + uses srte_NxtLbl-group; + description "SRTE Segment List Next Label Class list"; } + description "SRTE Segment List Next Label Class"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + grouping srte_NxtLbl-group { + description "SRTE Segment List Next Label Class"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf idx { + + type srte_OptNum; + description "SRTE Segment List Next Label Index"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + leaf lbl { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type srte_LabelVal; + description "SRTE Segment List Next Label Value"; } } - // Has Polymorphic containment of abstract object synthetic:CTestObj - grouping synthetic_SwTLTestObj-group { + grouping srte_If-group { + description "Configures this interface for segment-routing Traffic-Engineering purposes"; - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name; + type srte_IfOperSt; + description "Operation State for the interface for Segment-routing Traffic Engineering"; + } + leaf deleted { + config "false"; + type boolean; + description "Is this MO pending deletion"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf name { - // Type is an MO-Defined-Type - type naming_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type leaf descr { - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf objDn { - type string; + type naming_Descr1024; + description "Description"; } - leaf priKey { - type string; + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container secc-items { - list SwCTestObj-list { - key "name"; - // Added containment: Prefix=secc - // Acquired From Package synthetic - uses synthetic_SwCTestObj-group; - } + // Administrative state + leaf adminSt { + + type nw_IfAdminSt; + description "Admin State"; } - // Polymorphic containment of derivative object synthetic:IfcCTestObj (from synthetic:CTestObj) - container iecc-items { + // SRTE Affinity color for interface + container metric-items { - // Abstract containment of synthetic:IfcCTestObj derived from synthetic:CTestObj - list IfcCTestObj-list { - key "name"; + uses srte_IntfMetric-group; + description "Segment-Routing Protocols advertise Metricval and the te metric over this interace's adjacency"; + } - // Added containment: Prefix=iecc - // Acquired From Package synthetic - uses synthetic_IfcCTestObj-group; - } + // SRTE Interface Affinity + container intfaff-items { + + uses srte_IntfAff-group; + description "Lists the affinity color names for this interfaces"; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - container rttoObj-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping cnw_AggrIf-group { + grouping srte_IntfMetric-group { + description "Segment-Routing Protocols advertise Metricval and the te metric over this interace's adjacency"; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + leaf val { - // Type is an MO-Defined-Type - type l1_OperSt; + type srte_MetricVal; + description "Traffic Engineering Metric value"; } + } + + grouping srte_IntfAff-group { + description "Lists the affinity color names for this interfaces"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "descr"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description "Interface ID Property has READ-Create access."; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative Port State"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - config "false"; - description "Administrative Port Speed"; + // SRTE Affinity color for interface + container intfaffcol-items { + list IntfAffColor-list { + key "name"; - // Type is an MO-Defined-Type - type l1_Speed; + uses srte_IntfAffColor-group; + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map list"; + } + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map "; } + } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex"; + grouping srte_IntfAffColor-group { + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map "; - // Type is an MO-Defined-Type - type l1_Duplex; - } + leaf name { - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - config "false"; - description "Administrative Port Auto-Negotiation"; + type srte_Name; + description "Name of the Affinity Color. Sets the bit that corresponds to this name in the affinity-map"; + } + } - // Type is an MO-Defined-Type - type l1_AutoNeg; + grouping srte_Pcc-group { + description "SRTE PCC (Path Computation Client) Class"; + leaf srcAddress { + type address_Ip; + description "Local IP address to use as the source address for PCEP connections"; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "Administrative port MTU"; + leaf name { - // Type is an MO-Defined-Type - type l1_Mtu; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - config "false"; - description "Administrative Port Snmp Trap State"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type nw_AdminSt; + description "Admin State"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { + // Operational state + leaf operSt { config "false"; - description "Administrative port mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative port layer"; - // Type is an MO-Defined-Type - type l1_Layer; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - config "false"; - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // SRTE Pce definition + container pce-items { + list Pce-list { + key "pceAddress"; - // Type is an MO-Defined-Type - type l1_Mdix; + uses srte_Pce-group; + description "Defines a PCE to which a PCEP connection may be created list"; + } + description "Defines a PCE to which a PCEP connection may be created"; } + } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - config "false"; - description "Administrative port delay time"; + grouping srte_Pce-group { + description "Defines a PCE to which a PCEP connection may be created"; - // Type is an MO-Defined-Type - type l1_Delay; + leaf precedence { + + type srte_PcePrecedence; + description "SRTE PCE Precedence Value (0 is most preferred, 255 is least)"; + } + leaf pceAddress { + type address_Ip; + description "SRTE PCE IP Address Value"; } + } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - config "false"; - description "Administrative port link debounce interval"; + grouping srte_Policy-group { + description "Segment Routing TE Policy Class"; - // Type is an MO-Defined-Type - type l1_LinkDebounce; + leaf name { + + type srte_Name; + description "Segment Routing TE Policy Name"; + } + leaf endpoint { + type address_Ip; + description "Segment Routing TE Endpoint IP address"; } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - config "false"; - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + leaf color { - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + type srte_ColorVal; + description "Segment Routing TE Policy Color"; } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - config "false"; - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + // SRTE Candidate Path definition + container expcndpaths-items { - // Type is an MO-Defined-Type - type l1_Bw; + uses srte_ExpCndPaths-group; + description "Segment Routing TE Exp Candidate path"; } + } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - config "false"; - description "Administrative port medium type"; + grouping srte_ExpCndPaths-group { + description "Segment Routing TE Exp Candidate path"; - // Type is an MO-Defined-Type - type l1_Medium; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - config "false"; - description "Administrative port inherit bandwidth"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_InheritBw; + type nw_AdminSt; + description "Admin State"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { + // Operational state + leaf operSt { config "false"; - description "Administrative port span mode"; - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_EntOperSt; + description "Operational State"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative link logging enable"; - // Type is an MO-Defined-Type - type l1_LinkLog; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - config "false"; - description "Administrative trunk logging enable"; + // SRTE Policy Preference definition + container pref-items { + list PolPref-list { + key "pref"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + uses srte_PolPref-group; + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group. list"; + } + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group."; } - leaf routerMac { - config "false"; - type address_Mac; - default "0"; + } + + grouping srte_PolPref-group { + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group."; + + leaf pref { + + type srte_OptNum; + description "The preference value for the group of explicit paths"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - config "false"; - description "Type of the port: Fabric vs Leaf"; + // SRTE Policy Explicit-path holder definition + container exp-items { + list PolExp-list { + key "name"; - // Type is an MO-Defined-Type - type eqpt_PortT; + uses srte_PolExp-group; + description "Represents an explicit path assigned to a preference under a policy. list"; + } + description "Represents an explicit path assigned to a preference under a policy."; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage Type"; + // SRTE Candidate Path Dynamic definition + container dyn-items { - // Type is an MO-Defined-Type - type l1_PortUsage; + uses srte_PolDynamic-group; + description "Enables the dynamic path configuration sub-section for this candidate path"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // SRTE Candidate Path Constraint definition + container constraints-items { - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + uses srte_PolConstraint-group; + description "Specifies the required constraints for this Candidate Paths"; } + } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + grouping srte_PolExp-group { + description "Represents an explicit path assigned to a preference under a policy."; - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + leaf name { + + type srte_Name; + description "Explicit path name. Must be the name of an existing ExpPath MO"; } + leaf weight { + type uint32; + description "SRTE Policy Explicit-Path Segment List Weight"; + } + } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - config "false"; - description "Controller ID"; + grouping srte_PolDynamic-group { + description "Enables the dynamic path configuration sub-section for this candidate path"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + type nw_AdminSt; + description "Admin State"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { + // Operational state + leaf operSt { config "false"; - description "Port User Config Flags"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_EntOperSt; + description "Operational State"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtextConf-items { + // SRTE Candidate Path Dynamic PCEP definition + container pce-items { - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses srte_PolDynPce-group; + description "Defines the candidate paths need to be computed by Path Computation engine"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtbrConf-items { + // SRTE Candidate Path Metric definition + container metric-items { - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses srte_PolMetric-group; + description "Specifies the type of metric that the computation will optimize"; } + } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtfvNodePortAtt-items { + grouping srte_PolDynPce-group { + description "Defines the candidate paths need to be computed by Path Computation engine"; - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtvrfMbr-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtphysRtdConf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } - } + grouping srte_PolMetric-group { + description "Specifies the type of metric that the computation will optimize"; - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtLsNodeToIf-items { + leaf metricType { - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; + type srte_Metric; + description "SRTE Candidate Path Metric Type"; } - // Rel-def from mbrIfs - container rsmbrIfs-items { - - // Abstract containment of rsmbrIfs derived from cnw:AggrIf - list RsMbrIfs-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rsmbrIfs - // Acquired From Package cnw - uses cnw_RsMbrIfs_source-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def from activeIf - container rsactiveIf-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rsactiveIf - // Acquired From Package cnw - uses cnw_RsActiveIf_source-group; + type nw_AdminSt; + description "Admin State"; } - } - - grouping cnw_PhysIf-group { - // Operational port state - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Operational Status"; - // Type is an MO-Defined-Type - type l1_OperSt; + type nw_EntOperSt; + description "Operational State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } + + grouping srte_PolConstraint-group { + description "Specifies the required constraints for this Candidate Paths"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Modified by Override: cnw:PhysIf->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // SRTE Candidate Path Segment definition + container segment-items { - // Type is an MO-Defined-Type - type l1_Speed; + uses srte_PolSegments-group; + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // SRTE Candidate Path Association definition + container assoc-items { - // Type is an MO-Defined-Type - type l1_Duplex; + uses srte_PolAssoc-group; + description "Specifies the association types this candidate path belongs to"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + // SRTE Candidate Path Affinity definition + container affinity-items { - // Type is an MO-Defined-Type - type l1_AutoNeg; + uses srte_PolAffinity-group; + description "Specifies the affinity constraints for the path"; } + } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; - - // Type is an MO-Defined-Type - type l1_Mtu; - } + grouping srte_PolSegments-group { + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + leaf protType { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type srte_ProtectionType; + description "Specifies if the candidate path must use protected or unprotected SIDs"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf datapln { - // Type is an MO-Defined-Type - type l1_Mode; + type srte_DataPlane; + description "Specifies if this candidate paths is encoded with MPLS SIDs or SRv6 SIDs"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { - description "Administrative port layer"; + leaf name { - // Type is an MO-Defined-Type - type l1_Layer; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_Mdix; + type nw_AdminSt; + description "Admin State"; } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_Delay; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_LinkDebounce; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; - - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; - } + grouping srte_PolAssoc-group { + description "Specifies the association types this candidate path belongs to"; - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + leaf name { - // Type is an MO-Defined-Type - type l1_Bw; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_Medium; + type nw_AdminSt; + description "Admin State"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_InheritBw; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + // SRTE Candidate Path Disjointness + container disj-items { - // Type is an MO-Defined-Type - type l1_LinkLog; + uses srte_PolDisjointness-group; + description "Specifies that the path belongs to the disjointness association group"; } + } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + grouping srte_PolDisjointness-group { + description "Specifies that the path belongs to the disjointness association group"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + leaf disjType { + + type srte_DisjointType; + description "Specifies the type of disjointness this path needs to be."; } - leaf routerMac { - type address_Mac; - default "0"; + leaf id { + type uint32; + description "Association group Identifier"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_PortT; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_PortUsage; + type nw_AdminSt; + description "Admin State"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type nw_EntOperSt; + description "Operational State"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; + grouping srte_PolAffinity-group { + description "Specifies the affinity constraints for the path"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + type nw_AdminSt; + description "Admin State"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_EntOperSt; + description "Operational State"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtextConf-items { + // SRTE Candidate Path Affinity exclude-any definition + container exclany-items { - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses srte_PolExcludeany-group; + description "Specifies that links that have any of the specified affinity colors must be traversed by the path"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtbrConf-items { + // SRTE Candidate Path Affinity include-all definition + container inclall-items { - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses srte_PolIncludeall-group; + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtfvNodePortAtt-items { + // SRTE Candidate Path Affinity include-any definition + container inclany-items { - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + uses srte_PolIncludeany-group; + description "Specifies that only links that have any of the specified affinity colors must not be used"; + } + } - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + grouping srte_PolExcludeany-group { + description "Specifies that links that have any of the specified affinity colors must be traversed by the path"; + + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtvrfMbr-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtphysRtdConf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtLsNodeToIf-items { - - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; - } + grouping srte_PolConstAffColor-group { + description "Specify the affinity color for the Affinity constraint type"; - // Rel-def target from mbrIfs - // Inherited From cnw:PhysIf - container rtmbrIfs-items { + leaf name { - // Added containment as a singleton: Prefix=rtmbrIfs - // Acquired From Package cnw - uses cnw_RtMbrIfs_target-group; + type srte_Name; + description "Name of the affinity Color definition"; } + } - // Rel-def target from activeIf - // Inherited From cnw:PhysIf - container rtactiveIf-items { + grouping srte_PolIncludeall-group { + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; - // Added containment as a singleton: Prefix=rtactiveIf - // Acquired From Package cnw - uses cnw_RtActiveIf_target-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping action_LCont-group { - container tracertnve-items { - list TraceRtNve-list { - key "session"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=tracertnve - // Acquired From Package ngoam - uses ngoam_TraceRtNve-group; - } + type nw_AdminSt; + description "Admin State"; } - container pathtracenve-items { - list PathTraceNve-list { - key "session"; - // Added containment: Prefix=pathtracenve - // Acquired From Package ngoam - uses ngoam_PathTraceNve-group; - } + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - // Diag rule for on demand tests - container eqptdiagrule-items { - list OnDRule-list { - config "false"; - key "type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=eqptdiagrule - // Acquired From Package eqptdiag - uses eqptdiag_OnDRule-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container lsubj-items { - list LSubj-list { - key "oDn"; - // Added containment: Prefix=lsubj - // Acquired From Package action - uses action_LSubj-group; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; + + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping ngoam_TraceRtNve-group { + grouping srte_PolIncludeany-group { + description "Specifies that only links that have any of the specified affinity colors must not be used"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type action_Descr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Type; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // Operational errors qualifier + leaf operErr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionSize; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:ATraceRtNve->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping vrrp_Entity-group { + description "VRRP Entity"; - // Type is an MO-Defined-Type - type action_AdminSt; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type action_Freq; - } - leaf session { - type string; + type nw_AdminSt; + description "Admin State"; } - // Prof. id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; - } - leaf srcIp { - type address_Ipv4; - } - leaf srcIpv6 { - type address_Ipv6; + type nw_EntOperSt; + description "Operational State"; } - // dot1q - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // This object holds per vrrp instance information. There is only + // one instance supported in vrrp currently + container inst-items { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + uses vrrp_Inst-group; + description "VRRP Instance"; } + } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + grouping vrrp_Inst-group { + description "VRRP Instance"; - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dstPort { - description "Destination Port"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ngoam_DestPort; + type nw_AdminSt; + description "Admin State"; } - // Hop Count or TTL - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf maxTtl { - description "Time to live value"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type ngoam_TTL; + type nw_InstCtrl; + description "Controls"; } - // The vrf in which it is running - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // This object holds the interfaces that will have VRRP interface. + // Interface must already be created and should have an IP address + container if-items { + list Interface-list { + key "id"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + uses vrrp_Interface-group; + description "VRRP Interface list"; + } + description "VRRP Interface"; } + } - // The VxLAN vni - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + grouping vrrp_Interface-group { + description "VRRP Interface"; + + leaf name { - // Type is an MO-Defined-Type - type ngoam_Vnid; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // timeout - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_Timeout; + type naming_Descr1024; + description "Description"; } - // Egress Interface id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // MAC Interface - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; - } - leaf sessionId { - type uint32; + type nw_IfAdminSt; + description "Admin State"; } - // Runtime status of the task - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // This object holds vrrp id information + container id-items { + list Id-list { + key "id"; - // Type is an MO-Defined-Type - type action_OperSt; + uses vrrp_Id-group; + description "VRRPv2 Router Id list"; + } + description "VRRPv2 Router Id"; } - // dot1q - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; - } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; - } - leaf payload_srcport { - type uint16; - } - leaf payload_dstport { - type uint16; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // protocol - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + grouping vrrp_Id-group { + description "VRRPv2 Router Id"; - // Type is an MO-Defined-Type - type ngoam_Protocol; + // vrrp id + leaf id { + + type vrrp_Id; + description "VRRP Id"; + } + leaf primary { + type address_Ip; + description "primary IP address"; } - // Source Interface - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // advertise interval + leaf advIntvl { - // Type is an MO-Defined-Type - type nw_IfId; + type vrrp_AdvIntvl; + description "Advertisement Interval"; } - // Result for fabric traceroute - container trnverslt-items { - list TraceRtNveRslt-list { - config "false"; - key "sessionId"; + // authentication text + leaf authText { - // Added containment: Prefix=trnverslt - // Acquired From Package ngoam - uses ngoam_TraceRtNveRslt-group; - } + type vrrp_AuthTextType; + description "Authentication Text"; } - } - grouping ngoam_TraceRtNveRslt-group { - leaf dstIp { - config "false"; - type address_Ipv4; + // authentication type + leaf authType { + + type vrrp_AuthType; + description "Authentication Type"; } - // Maximum number of hops that the traceroute took to - // reach the destination - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; + // Preempt + leaf preempt { - // Type is an MO-Defined-Type - type ngoam_Hops; + type vrrp_Preempt; + description "Preempt"; } - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + // priority configuration + leaf priCfg { - // Type is an MO-Defined-Type - type ngoam_SessionId; + type vrrp_PriVal; + description "Configured Priority"; } - leaf errorCode { - config "false"; - type string; + leaf bfdPeerAddr { + type address_Ip; + description "BFD Peer address"; } - leaf failReason { - config "false"; - type string; + + // forwarding lower threshold + leaf fwdLwrThrld { + + type vrrp_PriVal; + description "Fowarding Lower Threshold"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // forwarding upper threshold + leaf fwdUprThrld { - // Type is an MO-Defined-Type - type action_Descr; + type vrrp_UprThrshld; + description "Forwarding Upper Threshold"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type vrrp_AdminSt; + description "Admin state"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { + // group state + leaf groupSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_Type; + type vrrp_GroupSt; + description "vrrp group state"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // group state qualifier + leaf groupStQual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionSize; + type vrrp_GroupStQual; + description "vrrp group state qualifier"; + } + leaf mac { + config "false"; + type address_Mac; + description "vrrp vmac"; + } + leaf masterAddr { + config "false"; + type address_Ip; + description "vrrp master address"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { + // bfd session status + leaf bfdSessionSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionTime; + type vrrp_bfdSessionSt; + description "vrrp bfd session status"; } - leaf peerClassId { - config "false"; - type string; + container secondary-items { + list Secondary-list { + key "secondary"; + + uses vrrp_Secondary-group; + description "Secondary address for the VRRP Router list"; + } + description "Secondary address for the VRRP Router"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Object to hold vrrp tarck information + container track-items { - // Type is an MO-Defined-Type - type action_Qual; - } - leaf ack { - config "false"; - type boolean; + uses vrrp_Track-group; + description "VRRP Track objects"; } + } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; + grouping vrrp_Secondary-group { + description "Secondary address for the VRRP Router"; + leaf secondary { + type address_Ip; + description "Secondary IP address for the VRRP Router"; } + } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + grouping vrrp_Track-group { + description "VRRP Track objects"; - // Type is an MO-Defined-Type - type action_OperSt; + // Object to hold native track information + container nativeTrack-items { + + uses vrrp_NativeTrack-group; + description "VRRPv2 native tracking object"; } - // Each path represents a sequence of nodes towards the - // destination - container pathtr-items { - list PathTr-list { - config "false"; + // Contains track information of otm track object + container track-items { + list ObjectTrack-list { key "id"; - // Added containment: Prefix=pathtr - // Acquired From Package ngoam - uses ngoam_PathTr-group; + uses vrrp_ObjectTrack-group; + description "VRRPV2 object tracking list"; } + description "VRRPV2 object tracking"; } } - grouping ngoam_PathTr-group { + grouping vrrp_NativeTrack-group { + description "VRRPv2 native tracking object"; - // Identifier of the path - // Type is an MO-Defined-Type + // Interface name to be tracked, format to be specified + // eth1/1, eth1/1.1, po1 leaf id { - config "false"; - description "ID"; - // Type is an MO-Defined-Type - type ngoam_PathId; + type nw_IfId; + description "Interface to be tracked by this VRRP instance"; } - - // Node represents a given node in the traceroute path. Each - // node is identified by the ip address and the order represents - // its placement in the path - container nodetr-items { - list NodeTr-list { - config "false"; - key "order"; - - // Added containment: Prefix=nodetr - // Acquired From Package ngoam - uses ngoam_NodeTr-group; + leaf priority { + type uint16 { + range "1..254"; } + description "VRRP Priority when track is down"; } } - grouping ngoam_NodeTr-group { + grouping vrrp_ObjectTrack-group { + description "VRRPV2 object tracking"; - // Node id - // Type is an MO-Defined-Type - leaf order { - config "false"; - description "Order"; + // Track id to be tracked + leaf id { - // Type is an MO-Defined-Type - type ngoam_Order; - } - leaf addr { - config "false"; - type address_Ipv4; - } - leaf v6addr { - config "false"; - type address_Ipv6; + type track_TrackId; + description "Track Id to be tracked"; } - leaf elapsedTime { - config "false"; - type string; + leaf decrementPriority { + type uint16 { + range "1..254"; + } + default "10"; + description "Value to be decremented from priority when tracked object is down"; } } - grouping ngoam_PathTraceNve-group { - leaf reqStats { - type boolean; - } + grouping vrrpv3_Entity-group { + description "VRRPv3 Entity"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type action_Descr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Type; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + // This object holds per vrrpv3 instance information. There is only + // one instance supported in vrrpv3 currently + container inst-items { - // Type is an MO-Defined-Type - type action_RetentionSize; + uses vrrpv3_Inst-group; + description "VRRPv3 Instance"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping vrrpv3_Inst-group { + description "VRRPv3 Instance"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:ATraceRtNve->adminSt - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type nw_AdminSt; + description "Admin State"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type action_Freq; - } - leaf session { - type string; + type nw_InstCtrl; + description "Controls"; } - // Prof. id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // This object holds the interfaces that will have VRRPv3 interface. + container if-items { + list Interface-list { + key "id"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; + uses vrrpv3_Interface-group; + description "VRRPv3 Interface list"; + } + description "VRRPv3 Interface"; } - leaf srcIp { - type address_Ipv4; + } + + grouping vrrpv3_Interface-group { + description "VRRPv3 Interface"; + leaf delayIntfMin { + type uint16 { + range "0..3600"; + } + default "0"; + description "Delay in seconds, to start VRRPv3 state machine after receiving interface moving to Up state"; } - leaf srcIpv6 { - type address_Ipv6; + leaf delayReload { + type uint16 { + range "0..3600"; + } + default "0"; + description "Delay in seconds, to start VRRPv3 state machine after the system-reload"; } - // dot1q - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_SrcPort; + type naming_Descr1024; + description "Description"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dstPort { - description "Destination Port"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type ngoam_DestPort; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Hop Count or TTL - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf maxTtl { - description "Time to live value"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ngoam_TTL; + type nw_IfAdminSt; + description "Admin State"; } - // The vrf in which it is running - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // This object holds Virtual Router ID information + container id-items { + list Vr-list { + key "id af"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + uses vrrpv3_Vr-group; + description "VRRPv3 Object holds Virtual Router ID information list"; + } + description "VRRPv3 Object holds Virtual Router ID information"; } - // The VxLAN vni - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + // Object to hold vrrpv3 VRRS information + container vrrs-items { + list VrrsPathway-list { + key "tag"; - // Type is an MO-Defined-Type - type ngoam_Vnid; + uses vrrpv3_VrrsPathway-group; + description "Object holds VRRS Pathway information list"; + } + description "Object holds VRRS Pathway information"; } - // timeout - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ngoam_Timeout; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Egress Interface id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping vrrpv3_Vr-group { + description "VRRPv3 Object holds Virtual Router ID information"; - // MAC Interface - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Virtual Router ID + leaf id { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; + type vrrpv3_Id; + description "VRRPv3 Virtual Router Id"; } - leaf sessionId { - type uint32; + leaf ip { + type address_Ip; + description "primary IP address"; } - // Runtime status of the task - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Advertisement Interval + leaf advIntvl { - // Type is an MO-Defined-Type - type action_OperSt; + type vrrpv3_AdvIntvl; + description "Advertisement Interval"; } - // dot1q - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + // Priority Configuration + leaf priCfg { - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; + type vrrpv3_PriVal; + description "Configured Priority"; } - leaf payload_dstip { - type address_Ipv4; + + // Preempt + leaf preempt { + + type vrrpv3_Preempt; + description "Preempt"; } - leaf payload_dstipv6 { - type address_Ipv6; + + // Virtual Router Description string + leaf name { + + type vrrpv3_Desc; + description "Virtual Router Description"; } - leaf payload_dstmac { - type address_Mac; + + // Minimum Preemption delay before this group can preempt a high priority Masster + leaf preemptDelayMin { + + type vrrpv3_PreemptDelay; + description "Miminum delay before preempt"; } - leaf payload_srcport { - type uint16; + + // Admin State + leaf adminSt { + + type vrrpv3_AdminSt; + description "Admin state"; } - leaf payload_dstport { - type uint16; + + // Virtual Router Address family + leaf af { + + type vrrpv3_VrAf; + description "Virtual Router Address Family"; } - // protocol - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + // match-address + leaf matchAddr { - // Type is an MO-Defined-Type - type ngoam_Protocol; + type vrrpv3_State; + default "enabled"; + description "Enables matching of secondary addresses in the vrrpv3 advertisement packet against the configured vrrpv3 secondary addresses"; } - // Source Interface - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // vrrpv2 compatibility mode + leaf vrrpv2CompatMode { - // Type is an MO-Defined-Type - type nw_IfId; + type vrrpv3_State; + default "disabled"; + description "vrrpv2 compatibility mode"; } - // Result for Pathtrace - container ptrnverslt-items { - list PathTraceNveRslt-list { - config "false"; - key "sessionId"; + // Object to hold vrrpv3 object track information + container track-items { + list ObjectTrack-list { + key "id"; - // Added containment: Prefix=ptrnverslt - // Acquired From Package ngoam - uses ngoam_PathTraceNveRslt-group; + uses vrrpv3_ObjectTrack-group; + description "Holds information of objects tracked by VRRPv3 list"; } + description "Holds information of objects tracked by VRRPv3"; } - } + container addr-items { + list Addr-list { + key "addr"; - grouping ngoam_PathTraceNveRslt-group { - leaf dstIp { - config "false"; - type address_Ipv4; + uses vrrpv3_Addr-group; + description "IP address list"; + } + description "IP address"; } + container leader-items { + list VrrsLeader-list { + key "tag"; - // Maximum number of hops that the traceroute took to - // reach the destination - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; - - // Type is an MO-Defined-Type - type ngoam_Hops; + uses vrrpv3_VrrsLeader-group; + description "VRRS Tag list"; + } + description "VRRS Tag"; } + } - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + grouping vrrpv3_ObjectTrack-group { + description "Holds information of objects tracked by VRRPv3"; - // Type is an MO-Defined-Type - type ngoam_SessionId; + // Object id to be tracked + leaf id { + + type track_TrackId; + description "Object Id to be tracked"; } - leaf errorCode { - config "false"; - type string; + leaf decrPrio { + type uint16 { + range "1..254"; + } + default "10"; + description "Priority to be decremented when tracked object is down. Default value is 10"; } - leaf failReason { - config "false"; - type string; + } + + grouping vrrpv3_Addr-group { + description "IP address"; + leaf addr { + type address_Ip; + description "IP address"; } + } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping vrrpv3_VrrsLeader-group { + description "VRRS Tag"; + leaf tag { + type string { + length "0..48"; + } + description "VRRS tag for which group is leader"; + } + } - // Type is an MO-Defined-Type - type action_Descr; + grouping vrrpv3_VrrsPathway-group { + description "Object holds VRRS Pathway information"; + leaf tag { + type string { + length "0..48"; + } + description "Name of vrrs tag which pathway will follow"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // Admin State + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type vrrpv3_State; + default "enabled"; + description "Administrative state for vrrs pathway"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Vrrs Pathway Description string + leaf description { - // Type is an MO-Defined-Type - type action_Type; + type vrrpv3_Desc; + description "Description string for vrrs pathway"; + } + leaf mac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Configured virtual MAC address for the Pathway"; } + leaf macAdvIntvl { + type uint16 { + range "1..300"; + } + default "10"; + description "Interval in seconds, between virtual MAC unsolicited advertisements"; + } + container addr-items { + list PwAddr-list { + key "addr"; - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + uses vrrpv3_PwAddr-group; + description "IP address list"; + } + description "IP address"; + } + } - // Type is an MO-Defined-Type - type action_RetentionSize; + grouping vrrpv3_PwAddr-group { + description "IP address"; + leaf addr { + type address_Ip; + description "IPvX address for vrrs pathway"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping scrtchpd_Root-group { + description "Root"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + // Holds rpm control plane entity information + container rpmcli-items { + + uses rpmcli_EntityCli-group; + description "Route Policy Map Entity CLI"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Holds Vlan-mgr control plane entity information + container vlanmgrcli-items { - // Type is an MO-Defined-Type - type action_Qual; + uses vlanmgrcli_EntityCli-group; + description "Vlan Manager Entity CLI"; } - leaf ack { + } + + grouping rpmcli_EntityCli-group { + description "Route Policy Map Entity CLI"; + + leaf name { config "false"; - type boolean; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { + // - Admin state + leaf adminSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type - type action_OperSt; + type nw_EntOperSt; + description "Operational State"; } - // Each path represents a sequence of nodes towards the - // destination - container pathptr-items { - list PathPtr-list { + // Route control rule for access lists + container accesslistcli-items { + list RuleCli-list { config "false"; - key "id"; + key "name"; - // Added containment: Prefix=pathptr - // Acquired From Package ngoam - uses ngoam_PathPtr-group; + uses rtlistcli_RuleCli-group; + description "Rule CLI list"; } + description "Rule CLI"; } - } - grouping ngoam_PathPtr-group { + // Route control rule for V4 prefix lists + container pfxlistv4cli-items { + list RuleV4Cli-list { + config "false"; + key "name"; - // Identifier of the path - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + uses rtpfxcli_RuleV4Cli-group; + description "IPv4 Rule CLI list"; + } + description "IPv4 Rule CLI"; + } - // Type is an MO-Defined-Type - type ngoam_PathId; + // Route control rule for V6 prefix lists + container pfxlistv6cli-items { + list RuleV6Cli-list { + config "false"; + key "name"; + + uses rtpfxcli_RuleV6Cli-group; + description "IPv6 Rule list"; + } + description "IPv6 Rule"; } - // Node represents a given node in the traceroute path. Each - // node is identified by the ip address and the order represents - // its placement in the path - container nodeptr-items { - list NodePtr-list { + // Route control rule for regular community lists + container rtregcomcli-items { + list RuleCli-list { config "false"; - key "order"; + key "name"; - // Added containment: Prefix=nodeptr - // Acquired From Package ngoam - uses ngoam_NodePtr-group; + uses rtregcomcli_RuleCli-group; + description "Rule CLI list"; } + description "Rule CLI"; } } - grouping ngoam_NodePtr-group { + grouping rtlistcli_RuleCli-group { + description "Rule CLI"; - // Node id - // Type is an MO-Defined-Type - leaf order { + leaf name { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type ngoam_Order; - } - leaf addr { - config "false"; - type address_Ipv4; - } - leaf v6addr { - config "false"; - type address_Ipv6; - } - leaf nodeName { - config "false"; - type string; - } - leaf elapsedTime { - config "false"; - type string; - } - leaf ingressIf { - config "false"; - type string; - } - leaf ingressIfState { - config "false"; - type string; - } - leaf rxLen { - config "false"; - type uint64; - } - leaf rxBytes { - config "false"; - type uint64; - } - leaf rxPktRate { - config "false"; - type uint64; - } - leaf rxByteRate { - config "false"; - type uint64; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rxLoad { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rxUcast { - config "false"; - type uint64; + + // Prefix list entry definition + container entcli-items { + + uses rtlistcli_EntryCli-group; + description "Entry CLI"; } - leaf rxMcast { + } + + grouping rtlistcli_EntryCli-group { + description "Entry CLI"; + + // CLI Action + leaf cliAction { config "false"; - type uint64; + + type scrtchpd_Action; + description "Action"; } - leaf rxBcast { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rxDiscards { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rxErrors { + + // Order + leaf order { config "false"; - type uint64; + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf rxUnknown { + + // Action + leaf action { config "false"; - type uint64; + + type rtflt_Action; + description "Action"; } - leaf rxBandwidth { + leaf regex { config "false"; - type uint32; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } - leaf egressIf { + } + + grouping rtpfxcli_RuleV4Cli-group { + description "IPv4 Rule CLI"; + + leaf name { config "false"; - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf egressIfState { + + leaf descr { config "false"; - type string; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf txLen { - config "false"; - type uint64; + + // Prefix list entry definition + container entcli-items { + + uses rtpfxcli_EntryCli-group; + description "Entry CLI"; } - leaf txBytes { + } + + grouping rtpfxcli_EntryCli-group { + description "Entry CLI"; + + // CLI Action + leaf cliAction { config "false"; - type uint64; + + type scrtchpd_Action; + description "Action"; } - leaf txPktRate { + leaf pfx { config "false"; - type uint64; + type address_Ip; + description "Prefix"; } - leaf txByteRate { + leaf mask { config "false"; - type uint64; + type address_Ip; + description "mask"; } - leaf txLoad { + + // criteria, exact match or inexact match + leaf criteria { config "false"; - type uint64; + + type rtpfx_Criteria; + description "Criteria"; } - leaf txUcast { + + // If the criteria is not an exact match, use a range to + // describe the prefix list range + leaf fromPfxLen { config "false"; - type uint64; + + type l3_IpPfxLen; + description "Start of Prefix Length"; } - leaf txMcast { + + leaf toPfxLen { config "false"; - type uint64; + + type l3_IpPfxLen; + description "End of Prefix Length"; } - leaf txBcast { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf txDiscards { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf txErrors { + + // Order + leaf order { config "false"; - type uint64; + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf txBandwidth { + + // Action + leaf action { config "false"; - type uint32; + + type rtflt_Action; + description "Action"; } } - grouping eqptdiag_OnDRule-group { + grouping rtpfxcli_RuleV6Cli-group { + description "IPv6 Rule"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Prefix list entry definition + container entcli-items { + + uses rtpfxcli_EntryCli-group; + description "Entry CLI"; + } + } + + grouping rtregcomcli_RuleCli-group { + description "Rule CLI"; + + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { + // Type of the community list [regular | extended] + leaf type { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type rtcom_ComT; + description "Type"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { + // Mode + leaf mode { config "false"; - description "Frequency"; - // Type is an MO-Defined-Type - type test_Freq; + type rtcom_Mode; + description "Mode"; + } + + // Regular community list entry + container entregcli-items { + + uses rtregcomcli_EntryRegexCli-group; + description "Entry CLI"; } - // Test type - // Inherited From eqptdiag:ARule - // Type is an MO-Defined-Type - leaf type { + // Regular community list entry + container entcli-items { + + uses rtregcomcli_EntryCli-group; + description "Entry CLI"; + } + } + + grouping rtregcomcli_EntryRegexCli-group { + description "Entry CLI"; + leaf numOfChildren { + config "false"; + type uint32; + description "Total Number of Children"; + } + + // CLI Action + leaf cliAction { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type eqptdiag_Type; + type scrtchpd_Action; + description "Action"; } - // On demand diag subject - container subj-items { - list OnDSubj-list { - config "false"; - key "oDn"; + leaf name { + config "false"; - // Added containment: Prefix=subj - // Acquired From Package eqptdiag - uses eqptdiag_OnDSubj-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - } - - grouping eqptdiag_OnDSubj-group { - // Admin state, used only with on demand tests - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Object primary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oPk { + // Order + leaf order { config "false"; - description "Object Primary Key"; - // Type is an MO-Defined-Type - type test_PInstId; + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - // Object secondary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oSk { + // Action + leaf action { config "false"; - description "Object Secondary Key"; - // Type is an MO-Defined-Type - type test_PInstId; + type rtflt_Action; + description "Action"; } - leaf oDn { + leaf regex { config "false"; - type string; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } + } - // Consolidated operational state of the test - // on this subject - // Inherited From test:Subj - // Modified by Override: eqptdiag:OnDSubj->operSt - // Type is an MO-Defined-Type - leaf operSt { + grouping rtregcomcli_EntryCli-group { + description "Entry CLI"; + leaf numOfChildren { + config "false"; + type uint32; + description "Total Number of Children"; + } + + // CLI Action + leaf cliAction { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type scrtchpd_Action; + description "Action"; } - // Prof. Name - // Inherited From test:Subj - // Type is an MO-Defined-Type leaf name { config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } description "Name"; + } - // Type is an MO-Defined-Type - type naming_Name; + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; } - // Diag result - container rslt-items { - list Rslt-list { - config "false"; - key "ts"; + // Order + leaf order { + config "false"; - // Added containment: Prefix=rslt - // Acquired From Package eqptdiag - uses eqptdiag_Rslt-group; + type rtflt_Order { + range "1..4294967294"; } + description "Order"; } - } - // Has Polymorphic containment of abstract object action:LInst - grouping action_LSubj-group { + // Action + leaf action { + config "false"; - // Property has READ-CREATE access - leaf oDn { - type string; + type rtflt_Action; + description "Action"; } - leaf oCl { + leaf regex { config "false"; - type string; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } - // Implicit DomainRef objects cannot be user created - they are implicitly created - // and added to domainable objects created by the backend - container idomain-items { - list IDomainRef-list { + // Item in the community list + container itemcli-items { + list ItemCli-list { config "false"; - key "name"; + key "community"; - // Added containment: Prefix=idomain - // Acquired From Package aaa - uses aaa_IDomainRef-group; + uses rtregcomcli_ItemCli-group; + description "Item CLI list"; } + description "Item CLI"; } + } + + grouping rtregcomcli_ItemCli-group { + description "Item CLI"; - // Nve ping - container pingnve-items { - list PingNve-list { - key "session"; + leaf name { + config "false"; - // Added containment: Prefix=pingnve - // Acquired From Package ngoam - uses ngoam_PingNve-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Exec for fabric ping - container pingexecfab-items { - list ExecFab-list { - key "name srcNodeId dstNodeId"; + leaf descr { + config "false"; - // Added containment: Prefix=pingexecfab - // Acquired From Package ping - uses ping_ExecFab-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + config "false"; + type mtx_array_community; + description "Community"; } + } + + grouping vlanmgrcli_EntityCli-group { + description "Vlan Manager Entity CLI"; - // Exec for EP to EP (Tenant) ping - container pingexectn-items { - list ExecTn-list { - key "tenant name srcIp dstIp"; + leaf name { + config "false"; - // Added containment: Prefix=pingexectn - // Acquired From Package ping - uses ping_ExecTn-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Result for fabric ping - container pingrsltfab-items { - list RsltFab-list { - config "false"; - key "name srcNodeId dstNodeId startTs"; + // - Admin state + leaf adminSt { + config "false"; - // Added containment: Prefix=pingrsltfab - // Acquired From Package ping - uses ping_RsltFab-group; - } + type nw_AdminSt; + description "Admin State"; } - // Result for EP to EP (Tenant) ping - container pingrslttn-items { - list RsltTn-list { - config "false"; - key "tenant name srcIp dstIp startTs"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=pingrslttn - // Acquired From Package ping - uses ping_RsltTn-group; - } + type nw_EntOperSt; + description "Operational State"; } - // Exec for fabric traceroute - container trexecfab-items { - list ExecFab-list { - key "name srcNodeId dstNodeId"; + // This objects hold per vlan-mgr instance information. There is only + // one instance of vlan-mgr running in the system today + container inst-items { - // Added containment: Prefix=trexecfab - // Acquired From Package traceroute - uses traceroute_ExecFab-group; - } + uses vlanmgrcli_InstCli-group; + description "Vlan Manager Instance Cli"; } + } - // Exec for EP to EP (Tenant) traceroute - container trexectn-items { - list ExecTn-list { - key "tenant name srcIp dstIp"; - - // Added containment: Prefix=trexectn - // Acquired From Package traceroute - uses traceroute_ExecTn-group; - } + grouping vlanmgrcli_InstCli-group { + description "Vlan Manager Instance Cli"; + leaf vxlanNativeVlans { + config "false"; + type boolean; + description "Vxlan Native Vlans"; } - // Result for fabric traceroute - container trrsltfab-items { - list RsltFab-list { - config "false"; - key "name srcNodeId dstNodeId startTs"; + leaf name { + config "false"; - // Added containment: Prefix=trrsltfab - // Acquired From Package traceroute - uses traceroute_RsltFab-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Result for EP to EP (Tenant) traceroute - container trrslttn-items { - list RsltTn-list { - config "false"; - key "tenant name srcIp dstIp startTs"; + // Administrative state + leaf adminSt { + config "false"; - // Added containment: Prefix=trrslttn - // Acquired From Package traceroute - uses traceroute_RsltTn-group; - } + type nw_AdminSt; + description "Admin State"; } - // Exec results - container imginsttaskrslt-items { - list Rslt-list { - config "false"; - key "type startTs"; + // Instance controls + leaf ctrl { + config "false"; - // Added containment: Prefix=imginsttaskrslt - // Acquired From Package imginstall - uses imginstall_Rslt-group; - } + type nw_InstCtrl; + description "Controls"; } + } - // Polymorphic containment of derivative object eptrk:IpEpExec (from action:LInst) - container trkip-items { + grouping synthetic_SwTLTestObj-group { + description "Synthetic Sw TL Test Object"; - // Abstract containment of eptrk:IpEpExec derived from action:LInst - list IpEpExec-list { - key "addr vrf"; + leaf name { - // Added containment: Prefix=trkip - // Acquired From Package eptrk - uses eptrk_IpEpExec-group; - } + type naming_Name; + description "Name"; } - // Polymorphic containment of derivative object eptrk:MacEpExec (from action:LInst) - container trkmac-items { - - // Abstract containment of eptrk:MacEpExec derived from action:LInst - list MacEpExec-list { - key "addr encap"; + leaf id { - // Added containment: Prefix=trkmac - // Acquired From Package eptrk - uses eptrk_MacEpExec-group; - } + type naming_Id; + description "Id"; } - // IP EP Tracking Results - // Polymorphic containment of derivative object eptrk:IpEpRslt (from action:LInst) - container iprslt-items { + leaf descr { - // Abstract containment of eptrk:IpEpRslt derived from action:LInst - list IpEpRslt-list { - config "false"; - key "addr vrf"; + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + leaf priKey { + type string; + } + container secc-items { + list SwCTestObj-list { + key "name"; - // Added containment: Prefix=iprslt - // Acquired From Package eptrk - uses eptrk_IpEpRslt-group; + uses synthetic_SwCTestObj-group; + description "Synthetic Sw C Test Object list"; } + description "Synthetic Sw C Test Object"; } - // Exec results - // Polymorphic containment of derivative object eptrk:MacEpRslt (from action:LInst) - container macrslt-items { + container iecc-items { - // Abstract containment of eptrk:MacEpRslt derived from action:LInst - list MacEpRslt-list { - config "false"; - key "addr encap"; + list IfcCTestObj-list { + key "name"; - // Added containment: Prefix=macrslt - // Acquired From Package eptrk - uses eptrk_MacEpRslt-group; + uses synthetic_IfcCTestObj-group; + description "Synthetic Ifc C Test Object list"; } + description "Synthetic Ifc C Test Object"; } - // Result for fabric ping - // Polymorphic containment of derivative object ngoam:PingNveRslt (from action:LInst) - container pingnverslt-items { - - // Abstract containment of ngoam:PingNveRslt derived from action:LInst - list PingNveRslt-list { - config "false"; - key "sessionId"; + container rttoObj-items { - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; - } + uses synthetic_RtToObj_target-group; } + } - // Polymorphic containment of derivative object ngoam:TraceRtNve (from action:LInst) - container tracertnve-items { + grouping cnw_AggrIf-group { + description "Controller Aggregated Interface"; - // Abstract containment of ngoam:TraceRtNve derived from action:LInst - list TraceRtNve-list { - key "session"; + // Operational port state + leaf operSt { + config "false"; - // Added containment: Prefix=tracertnve - // Acquired From Package ngoam - uses ngoam_TraceRtNve-group; - } + type l1_OperSt; + description "Operational Status"; } - // Polymorphic containment of derivative object ngoam:PathTraceNve (from action:LInst) - container pathtracenve-items { - - // Abstract containment of ngoam:PathTraceNve derived from action:LInst - list PathTraceNve-list { - key "session"; + leaf name { + config "false"; - // Added containment: Prefix=pathtracenve - // Acquired From Package ngoam - uses ngoam_PathTraceNve-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Result for fabric traceroute - // Polymorphic containment of derivative object ngoam:TraceRtNveRslt (from action:LInst) - container trnverslt-items { - - // Abstract containment of ngoam:TraceRtNveRslt derived from action:LInst - list TraceRtNveRslt-list { - config "false"; - key "sessionId"; + leaf descr { + config "false"; - // Added containment: Prefix=trnverslt - // Acquired From Package ngoam - uses ngoam_TraceRtNveRslt-group; + type naming_Descr1024 { + length "0..254"; } + description "descr"; } - // Result for Pathtrace - // Polymorphic containment of derivative object ngoam:PathTraceNveRslt (from action:LInst) - container ptrnverslt-items { - - // Abstract containment of ngoam:PathTraceNveRslt derived from action:LInst - list PathTraceNveRslt-list { - config "false"; - key "sessionId"; + // Interface ID of this endpoint + leaf id { - // Added containment: Prefix=ptrnverslt - // Acquired From Package ngoam - uses ngoam_PathTraceNveRslt-group; - } + type nw_IfId; + description "Interface Identifier of this endpoint Property has READ-Create access."; } - // Rel-def from LSubjToDomainRef - container rslSubjToDomainRef-items { + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=rslSubjToDomainRef - // Acquired From Package action - uses action_RsLSubjToDomainRef_source-group; + type l1_AdminSt; + description "Administrative Port State"; } - } - grouping ngoam_PingNve-group { - leaf session { - type string; + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + config "false"; + + type l1_Speed; + description "Administrative Port Speed"; } - // Prof. id - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + config "false"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; - } - leaf srcIp { - type address_Ipv4; - } - leaf srcIpv6 { - type address_Ipv6; + type l1_Duplex; + description "Duplex"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Sport; + type l1_Mtu; + description "Administrative port MTU"; } - // count - // Type is an MO-Defined-Type - leaf count { - description "Number of packets"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + config "false"; - // Type is an MO-Defined-Type - type ngoam_NumPkt; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Administrative port mode @@@ Internally set by PE + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Timeout; + type l1_Mode; + description "Administrative port mode"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Administrative port layer @@@ Internally set by PE + leaf layer { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SendIntvl; + type l1_Layer; + description "Administrative port layer"; } - // Type is an MO-Defined-Type - leaf dataPattern { - description "data pattern"; + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + config "false"; - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; } - // sweep min - // Type is an MO-Defined-Type - leaf sweepmin { - description "Sweep Start of Range"; + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SweepSz; + type l1_Delay; + description "Administrative port delay time"; } - // sweep max - // Type is an MO-Defined-Type - leaf sweepmax { - description "Sweep End of Range"; + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SweepSz; + type l1_LinkDebounce; + description "Administrative port link debounce interval"; } - // packet size - // Type is an MO-Defined-Type - leaf packetSz { - description "Payload Size"; + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + config "false"; - // Type is an MO-Defined-Type - type ngoam_PktSz; + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; } - // The vrf in which it is running - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; } - // The VxLAN vni - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Vnid; + type l1_Medium; + description "Administrative port medium type"; } - // Egress Interface id - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type l1_InheritBw; + description "Administrative port inherit bandwidth"; } - // MAC Interface - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type l1_SpanMode; + description "Administrative port span mode"; } - // Runtime status of the task - // Type is an MO-Defined-Type - leaf operSt { + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { config "false"; - description "Completion"; - // Type is an MO-Defined-Type - type action_OperSt; - } - leaf sessionId { - type uint32; - } - leaf verifyHost { - type boolean; + type l1_LinkLog; + description "Administrative link logging enable"; } - // dot1q - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; + type l1_TrunkLog; + description "Administrative trunk logging enable"; } - leaf payload_srcmac { + leaf routerMac { + config "false"; type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + config "false"; + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; } - leaf payload_srcport { - type uint16; + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage Type"; } - leaf payload_dstport { - type uint16; + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; } - // protocol - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + // config access vlan + leaf accessVlan { - // Type is an MO-Defined-Type - type ngoam_Protocol; + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; } - // Source Interface - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // Controller Id + leaf controllerId { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type aggregate_ControllerIdBitmap; + description "Controller ID"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // config access vlan + leaf nativeVlan { - // Type is an MO-Defined-Type - type action_Descr; + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { + // port user config flags + leaf userCfgdFlags { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_userCfgdFlags; + description "Port User Config Flags"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; - // Type is an MO-Defined-Type - type action_Type; + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + container rtextConf-items { - // Type is an MO-Defined-Type - type action_RetentionSize; + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + container rtbrConf-items { - // Type is an MO-Defined-Type - type action_RetentionTime; + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; } - leaf peerClassId { - config "false"; - type string; + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:PingNve->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type action_AdminSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + container rtphysRtdConf-items { - // Type is an MO-Defined-Type - type action_Freq; + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; } - // Result for fabric ping - container pingnverslt-items { - list PingNveRslt-list { + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { config "false"; - key "sessionId"; + key "tDn"; - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; } + description "Parent If"; } - } - grouping ping_ExecFab-group { + container rsmbrIfs-items { - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - description "Destination Node ID"; + list RsMbrIfs-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type fabric_NodeId; + uses cnw_RsMbrIfs_source-group; + description "Member Iinterfaces list"; + } + description "Member Iinterfaces"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container rsactiveIf-items { - // Type is an MO-Defined-Type - type action_Descr; + uses cnw_RsActiveIf_source-group; + description "Active Interface"; } + } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { + grouping cnw_PhysIf-group { + description "Controller Physical Interface"; + + // Operational port state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_OperSt; + description "Operational Status"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type action_Type; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type action_RetentionSize; + type naming_Descr1024 { + length "0..254"; + } + description "descr"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type + // Administrative port state @@@ Comes from port out-of-service policy leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type l1_AdminSt; + description "Administrative Port State"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { - // Type is an MO-Defined-Type - type action_Freq; + type l1_Speed; + description "Administrative Port Speed"; } - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { - // Type is an MO-Defined-Type - type oam_ProfName; + type l1_Duplex; + description "Duplex"; } - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { - // Type is an MO-Defined-Type - type oam_EpT; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { - // Type is an MO-Defined-Type - type fabric_NodeId; + type l1_Mtu; + description "Administrative port MTU"; } - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { - // Type is an MO-Defined-Type - type oam_Vrf; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; + // Administrative port mode @@@ Internally set by PE + leaf mode { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_Mode; + description "Administrative port mode"; } - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; + // Administrative port layer @@@ Internally set by PE + leaf layer { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_Layer; + description "Administrative port layer"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { - // Type is an MO-Defined-Type - type oam_PayloadSz; + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; } - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { - // Type is an MO-Defined-Type - type oam_TenantName; + type l1_Delay; + description "Administrative port delay time"; } - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { - // Type is an MO-Defined-Type - type oam_MacId; + type l1_LinkDebounce; + description "Administrative port link debounce interval"; } - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; } - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { - // Type is an MO-Defined-Type - type action_OperSt; + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; } - } - grouping ping_ExecTn-group { - - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { - // Type is an MO-Defined-Type - type action_Descr; + type l1_Medium; + description "Administrative port medium type"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_InheritBw; + description "Administrative port inherit bandwidth"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { - // Type is an MO-Defined-Type - type action_Type; + type l1_SpanMode; + description "Administrative port span mode"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { - // Type is an MO-Defined-Type - type action_RetentionSize; + type l1_LinkLog; + description "Administrative link logging enable"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { - // Type is an MO-Defined-Type - type action_RetentionTime; + type l1_TrunkLog; + description "Administrative trunk logging enable"; } - leaf peerClassId { - config "false"; - type string; + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { - // Type is an MO-Defined-Type - type action_AdminSt; + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { - // Type is an MO-Defined-Type - type action_Freq; + type l1_PortUsage; + description "Port Usage Type"; } - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // config trunk vlans + leaf trunkVlans { - // Type is an MO-Defined-Type - type oam_ProfName; + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; } - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; + // config access vlan + leaf accessVlan { - // Type is an MO-Defined-Type - type oam_EpT; + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; } - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; + // Controller Id + leaf controllerId { - // Type is an MO-Defined-Type - type fabric_NodeId; + type aggregate_ControllerIdBitmap; + description "Controller ID"; } - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // config access vlan + leaf nativeVlan { - // Type is an MO-Defined-Type - type oam_Vrf; + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; } - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; + // port user config flags + leaf userCfgdFlags { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_userCfgdFlags; + description "Port User Config Flags"; } - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; - // Type is an MO-Defined-Type - type oam_IpId; + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; + container rtextConf-items { - // Type is an MO-Defined-Type - type oam_PayloadSz; + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; } - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; + container rtbrConf-items { - // Type is an MO-Defined-Type - type oam_TenantName; + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; } - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type oam_MacId; + uses fv_RtFvNodePortAtt_target-group; + } } - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + container rtphysRtdConf-items { - // Type is an MO-Defined-Type - type action_OperSt; + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; } - } - grouping ping_RsltFab-group { + container rtl3EncPhysRtdConf-items { - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - config "false"; - description "Destination Node ID"; + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type fabric_NodeId; + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + container rtmbrIfs-items { - // Type is an MO-Defined-Type - type action_Descr; + uses cnw_RtMbrIfs_target-group; + description "Member Iinterfaces"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + container rtactiveIf-items { - // Type is an MO-Defined-Type - type mo_TStamp; + uses cnw_RtActiveIf_target-group; + description "Active Interface"; } + } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + grouping vshd_CliAlias-group { + description "Cli alias configuration"; + leaf aliasName { + type string { + pattern ".*[A-Za-z][0-9A-Za-z]{0,29}.*"; + } + description "Name of the alias"; + } + leaf aliasCmd { + type string { + length "0..1023"; + } + description "Alias command definition"; + } + } - // Type is an MO-Defined-Type - type action_Type; + grouping vshd_CliAliasCheck-group { + description "Cli alias check configuration"; + + // Name of the alias definition + leaf mode { + + type vshd_ModeType; + description "strict check for cli alias"; } + } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + grouping vshd_CliVar-group { + description "Configure CLI commands"; + leaf varName { + type string { + pattern "[A-Za-z][0-9A-Za-z]{0,30}.*"; + } + description "Specify a variable name"; + } + leaf varValue { + type string { + length "0..254"; + } + description "Specify a variable value"; + } + } - // Type is an MO-Defined-Type - type action_RetentionSize; + grouping action_LCont-group { + description "Action Container of mo LCont"; + container lsubj-items { + list LSubj-list { + key "oDn"; + + uses action_LSubj-group; + description "Action Subject of mo LSubj list"; + } + description "Action Subject of mo LSubj"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping action_LSubj-group { + description "Action Subject of mo LSubj"; - // Type is an MO-Defined-Type - type action_RetentionTime; + leaf oDn { + type string; + description "Target Object's Subject DN"; } - leaf peerClassId { + leaf oCl { config "false"; type string; + description "Target Object's subject Class id"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Result for fabric ping + container pingrsltfab-items { + list RsltFab-list { + config "false"; + key "name srcNodeId dstNodeId startTs"; - // Type is an MO-Defined-Type - type action_Qual; + uses ping_RsltFab-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - leaf ack { - config "false"; - type boolean; + + // Result for EP to EP (Tenant) ping + container pingrslttn-items { + list RsltTn-list { + config "false"; + key "tenant name srcIp dstIp startTs"; + + uses ping_RsltTn-group; + description "Tenant Result list"; + } + description "Tenant Result"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; + // Result for fabric traceroute + container trrsltfab-items { + list RsltFab-list { + config "false"; + key "name srcNodeId dstNodeId startTs"; - // Type is an MO-Defined-Type - type mo_TStamp; + uses traceroute_RsltFab-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Result for EP to EP (Tenant) traceroute + container trrslttn-items { + list RsltTn-list { + config "false"; + key "tenant name srcIp dstIp startTs"; - // Type is an MO-Defined-Type - type action_OperSt; + uses traceroute_RsltTn-group; + description "Tenant Result list"; + } + description "Tenant Result"; } - // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Exec results + container imginsttaskrslt-items { + list Rslt-list { + config "false"; + key "type startTs"; - // Type is an MO-Defined-Type - type oam_ProfName; + uses imginstall_Rslt-group; + description "Result list"; + } + description "Result"; } - // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf srcNodeId { - config "false"; - description "Source Node ID"; + // IP EP Tracking Results + container iprslt-items { - // Type is an MO-Defined-Type - type fabric_NodeId; + list IpEpRslt-list { + config "false"; + key "addr vrf"; + + uses eptrk_IpEpRslt-group; + description "IP EP Tracking Result list"; + } + description "IP EP Tracking Result"; } - // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf vrf { - config "false"; - description "VRF"; + // Exec results + container macrslt-items { - // Type is an MO-Defined-Type - type oam_Vrf; + list MacEpRslt-list { + config "false"; + key "addr encap"; + + uses eptrk_MacEpRslt-group; + description "MAC EP Tracking Result list"; + } + description "MAC EP Tracking Result"; } - // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf srcIp { - config "false"; - description "Source IP"; + // Result for fabric ping + container pingnverslt-items { - // Type is an MO-Defined-Type - type oam_IpId; + list PingNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PingNveRslt-group; + description "Ping Nve Result list"; + } + description "Ping Nve Result"; } - // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf dstIp { - config "false"; - description "Destination IP"; + // Result for fabric traceroute + container trnverslt-items { - // Type is an MO-Defined-Type - type oam_IpId; + list TraceRtNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_TraceRtNveRslt-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf tenant { - config "false"; - description "Tenant Name"; + // Result for Pathtrace + container ptrnverslt-items { - // Type is an MO-Defined-Type - type oam_TenantName; + list PathTraceNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PathTraceNveRslt-group; + description "PathTrace Nve Result list"; + } + description "PathTrace Nve Result"; } - // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf payloadSz { - config "false"; - description "Payload Size"; + container rslSubjToDomainRef-items { - // Type is an MO-Defined-Type - type oam_PayloadSz; + uses action_RsLSubjToDomainRef_source-group; + description "Relation from LSubj To AAA Domain Ref"; } } - grouping ping_RsltTn-group { + grouping ping_RsltFab-group { + description "Fabric Result"; + + // Destination Node ID + leaf dstNodeId { + config "false"; + + type fabric_NodeId; + description "Destination Node ID"; + } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -149351,14 +163119,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -149366,635 +163131,255 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } } - grouping traceroute_ExecFab-group { - - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - description "Destination Node ID"; - - // Type is an MO-Defined-Type - type fabric_NodeId; - } + grouping ping_RsltTn-group { + description "Tenant Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type action_AdminSt; - } - - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; - - // Type is an MO-Defined-Type - type action_Freq; - } - - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type oam_ProfName; - } - - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; - - // Type is an MO-Defined-Type - type oam_EpT; - } - - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; - - // Type is an MO-Defined-Type - type fabric_NodeId; - } - - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; - - // Type is an MO-Defined-Type - type oam_Vrf; - } - - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; - - // Type is an MO-Defined-Type - type oam_IpId; - } - - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; - - // Type is an MO-Defined-Type - type oam_IpId; - } - - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; - - // Type is an MO-Defined-Type - type oam_PayloadSz; - } - - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; - - // Type is an MO-Defined-Type - type oam_TenantName; - } - - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; - } - - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; - } - - // Max paths that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxPaths { - config "false"; - description "Max Paths"; - - // Type is an MO-Defined-Type - type traceroute_Paths; - } - - // Max hops that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; - - // Type is an MO-Defined-Type - type traceroute_Hops; - } - } - - grouping traceroute_ExecTn-group { - - // Gateway MAC - // Type is an MO-Defined-Type - leaf gwMac { - description "Gateway MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf useGwMac { - type boolean; - default "true"; - } - - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type action_Descr; - } - - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; - } - - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; - - // Type is an MO-Defined-Type - type action_Type; - } - - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // Qualifier for the above status + leaf qual { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionSize; - } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; + type action_Qual; description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionTime; } - leaf peerClassId { + leaf ack { config "false"; - type string; + type boolean; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type oam_ProfName; - } - - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { config "false"; - description "Endpoint Type"; - // Type is an MO-Defined-Type - type oam_EpT; + type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf srcNodeId { - description "Source Node ID"; + config "false"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; + config "false"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf srcIp { - description "Source IP"; + config "false"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf dstIp { - description "Destination IP"; + config "false"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; - - // Type is an MO-Defined-Type - type oam_PayloadSz; - } - - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type + // The tenant to which this Ep belongs leaf tenant { - description "Tenant Name"; - - // Type is an MO-Defined-Type - type oam_TenantName; - } - - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; - } - - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; - } - - // Max paths that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxPaths { config "false"; - description "Max Paths"; - // Type is an MO-Defined-Type - type traceroute_Paths; + type oam_TenantName; + description "Tenant Name"; } - // Max hops that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxHops { + // Payload size + leaf payloadSz { config "false"; - description "Max Hops"; - // Type is an MO-Defined-Type - type traceroute_Hops; + type oam_PayloadSz; + description "Payload Size"; } } grouping traceroute_RsltFab-group { + description "Fabric Result"; // Destination Node ID - // Type is an MO-Defined-Type leaf dstNodeId { config "false"; - description "Destination Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Destination Node ID"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150002,14 +163387,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150017,102 +163399,75 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } // Path Group, captures all the paths that were taken by @@ -150122,23 +163477,22 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=pgrp - // Acquired From Package traceroute uses traceroute_PathGrp-group; + description "Path Group list"; } + description "Path Group"; } } grouping traceroute_PathGrp-group { + description "Path Group"; // Identifier of the path group - // Type is an MO-Defined-Type leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type traceroute_PathGrpId; + description "ID"; } // Each path represents a sequence of nodes towards the @@ -150148,43 +163502,38 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=path - // Acquired From Package traceroute uses traceroute_Path-group; + description "Path list"; } + description "Path"; } } grouping traceroute_Path-group { + description "Path"; // Identifier of the path - // Type is an MO-Defined-Type leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type traceroute_PathId; + description "ID"; } // Type of the path - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type traceroute_PathT; + description "Type"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type traceroute_PathFlags; + description "Flags"; } // Node represents a given node in the traceroute path. Each @@ -150195,84 +163544,69 @@ module Cisco-NX-OS-device { config "false"; key "order"; - // Added containment: Prefix=node - // Acquired From Package traceroute uses traceroute_Node-group; + description "Node list"; } + description "Node"; } } grouping traceroute_Node-group { + description "Node"; // Node id - // Type is an MO-Defined-Type leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type traceroute_Order; + description "Order"; } leaf addr { config "false"; type address_Ip; + description "Address"; } } grouping traceroute_RsltTn-group { + description "Tenant Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150280,14 +163614,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150295,102 +163626,75 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } // Path Group, captures all the paths that were taken by @@ -150400,67 +163704,52 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=pgrp - // Acquired From Package traceroute uses traceroute_PathGrp-group; + description "Path Group list"; } + description "Path Group"; } } grouping imginstall_Rslt-group { + description "Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150468,14 +163757,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150483,198 +163769,163 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } } - grouping eptrk_IpEpExec-group { + grouping eptrk_IpEpRslt-group { + description "IP EP Tracking Result"; leaf addr { + config "false"; type address_Ip; + description "IP Address"; } - // Type is an MO-Defined-Type + // The vrf the EP belongs to leaf vrf { - description "VRF"; + config "false"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } - // IP EP Tracking Results - container iprslt-items { - list IpEpRslt-list { - config "false"; - key "addr vrf"; + container rsipEpRslttoIpEpAtt-items { - // Added containment: Prefix=iprslt - // Acquired From Package eptrk - uses eptrk_IpEpRslt-group; - } + uses eptrk_RsIpEpRslttoIpEpAtt_source-group; } } - grouping eptrk_IpEpRslt-group { + grouping eptrk_MacEpRslt-group { + description "MAC EP Tracking Result"; leaf addr { config "false"; - type address_Ip; + type address_Mac; + description "MAC Address"; } - - // The vrf the EP belongs to - // Type is an MO-Defined-Type - leaf vrf { + leaf encap { config "false"; - description "VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; + type string; + description "TrkEndpoint encap"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150682,14 +163933,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150697,6364 +163945,4200 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } - // Rel-def from IpEpRslttoIpEpAtt - container rsipEpRslttoIpEpAtt-items { + container rsmacEpRslttoIpEpAtt-items { - // Added containment as a singleton: Prefix=rsipEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RsIpEpRslttoIpEpAtt_source-group; + list RsMacEpRslttoIpEpAtt-list { + config "false"; + key "tDn"; + + uses eptrk_RsMacEpRslttoIpEpAtt_source-group; + } } } - grouping eptrk_MacEpExec-group { - leaf addr { - type address_Mac; + grouping ngoam_TraceRtNveRslt-group { + description "Fabric Result"; + leaf dstIp { + config "false"; + type address_Ipv4; + description "Destination Node ID"; } - leaf encap { + + // Maximum number of hops that the traceroute took to + // reach the destination + leaf maxHops { + config "false"; + + type ngoam_Hops; + description "Max Hops"; + } + + // Prof. Name + leaf sessionId { + config "false"; + + type ngoam_SessionId; + description "Name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; type string; + description "Failure Reason"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } - // Exec results - container macrslt-items { - list MacEpRslt-list { + // Each path represents a sequence of nodes towards the + // destination + container pathtr-items { + list PathTr-list { config "false"; - key "addr encap"; + key "id"; - // Added containment: Prefix=macrslt - // Acquired From Package eptrk - uses eptrk_MacEpRslt-group; + uses ngoam_PathTr-group; + description "PathTr list"; } + description "PathTr"; } } - grouping eptrk_MacEpRslt-group { + grouping ngoam_PathTr-group { + description "PathTr"; + + // Identifier of the path + leaf id { + config "false"; + + type ngoam_PathId; + description "ID"; + } + + // Node represents a given node in the traceroute path. Each + // node is identified by the ip address and the order represents + // its placement in the path + container nodetr-items { + list NodeTr-list { + config "false"; + key "order"; + + uses ngoam_NodeTr-group; + description "NodeTr list"; + } + description "NodeTr"; + } + } + + grouping ngoam_NodeTr-group { + description "NodeTr"; + + // Node id + leaf order { + config "false"; + + type ngoam_Order; + description "Order"; + } leaf addr { config "false"; - type address_Mac; + type address_Ipv4; + description "IPv4 Address"; } - leaf encap { + leaf v6addr { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf elapsedTime { + config "false"; + type union { + type string; + type uint64; + } + description "Elapsed Time"; + } + } + + grouping ngoam_PathTraceNveRslt-group { + description "PathTrace Nve Result"; + leaf dstIp { + config "false"; + type address_Ipv4; + description "Destination Node ID"; + } + + // Maximum number of hops that the traceroute took to + // reach the destination + leaf maxHops { + config "false"; + + type ngoam_Hops; + description "Max Hops"; + } + + // Prof. Name + leaf sessionId { + config "false"; + + type ngoam_SessionId; + description "Name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; + type string; + description "Failure Reason"; + } + leaf verbose { config "false"; type string; + description "Verbose info, fabric specific verbose info from the replies"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; + } + + leaf rSz { + config "false"; + + type action_RetentionSize; + description "TBD"; + } + + // Retention time of task results + leaf rTm { + config "false"; + + type action_RetentionTime; + description "TBD"; + } + leaf peerClassId { + config "false"; + type string; + } + + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; + + type mo_TStamp; + description "TBD"; + } + + // Runtime status of the task + leaf operSt { + config "false"; + + type action_OperSt; + description "Runtime status of the task"; + } + + // Each path represents a sequence of nodes towards the + // destination + container pathptr-items { + list PathPtr-list { + config "false"; + key "id"; + + uses ngoam_PathPtr-group; + description "PathPtr list"; + } + description "PathPtr"; + } + } + + grouping ngoam_PathPtr-group { + description "PathPtr"; + + // Identifier of the path + leaf id { + config "false"; + + type ngoam_PathId; + description "ID"; + } + + // Node represents a given node in the traceroute path. Each + // node is identified by the ip address and the order represents + // its placement in the path + container nodeptr-items { + list NodePtr-list { + config "false"; + key "order"; + + uses ngoam_NodePtr-group; + description "NodePtr list"; + } + description "NodePtr"; + } + } + + grouping ngoam_NodePtr-group { + description "NodePtr"; + + // Node id + leaf order { + config "false"; + + type ngoam_Order; + description "Order"; + } + leaf addr { + config "false"; + type address_Ipv4; + description "IPv4 Address"; + } + leaf v6addr { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf nodeName { + config "false"; + type string; + description "Node name"; } - - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + leaf elapsedTime { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionSize; + type union { + type string; + type uint64; + } + description "Elapsed Time"; } - - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { + leaf ingressIf { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionTime; + type string; + description "Interface ID"; } - leaf peerClassId { + leaf ingressIfState { config "false"; type string; + description "Interface If state"; } - - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { + leaf rxLen { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_Qual; + type uint64; + description "Rx Len"; } - leaf ack { + leaf rxBytes { config "false"; - type boolean; + type uint64; + description "Rx Bytes"; } - - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { + leaf rxPktRate { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; + type uint64; + description "Rx Packet Rate"; } - - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { + leaf rxByteRate { config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; + type uint64; + description "Rx Byte Rate"; } - - // Rel-def from MacEpRslttoIpEpAtt - container rsmacEpRslttoIpEpAtt-items { - - // Abstract containment of rsmacEpRslttoIpEpAtt derived from eptrk:MacEpRslt - list RsMacEpRslttoIpEpAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rsmacEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RsMacEpRslttoIpEpAtt_source-group; - } + leaf rxLoad { + config "false"; + type uint64; + description "Rx Load"; } - } - - grouping infra_RtFexBndlGrpToAggrIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxUcast { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Ucast"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxMcast { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Mcast"; } - } - - grouping infra_RtAccBndlGrpToAggrIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxBcast { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Bcast"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxDiscards { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Discards"; } - } - - grouping datetime_RsNtpProviderToNtpAuth_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxErrors { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Errors"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxUnknown { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Unknown"; } - } - - grouping dbgexp_RtDbgexpTsSrc_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxBandwidth { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint32; + description "Rx Bandwidth"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf egressIf { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type string; + description "Egress Interface Name"; } - } - - grouping span_RsSessionToDomainRef_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + leaf egressIfState { + config "false"; + type string; + description "Egress Interface State"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf txLen { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Tx Len"; } - } - - grouping span_RsSpanSrcToL2CktEpAtt_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf txBytes { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Tx Bytes"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf txPktRate { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Tx Packet Rate"; } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { + leaf txByteRate { config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; + type uint64; + description "Tx Byte Rate"; } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { + leaf txLoad { config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; + type uint64; + description "Tx Load"; } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { + leaf txUcast { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; + type uint64; + description "Tx Ucast"; } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { + leaf txMcast { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; + type uint64; + description "Tx Mcast"; } - leaf forceResolve { + leaf txBcast { config "false"; - type boolean; - default "true"; + type uint64; + description "Tx Bcast"; } - - // Source id - // Type is an MO-Defined-Type - leaf id { + leaf txDiscards { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type span_SrcId; + type uint64; + description "Tx Discards"; } - - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + leaf txErrors { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type span_OperSt; + type uint64; + description "Tx Errors"; } - - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf txBandwidth { config "false"; - description "Operational State Qualifier"; - - // Type is an MO-Defined-Type - type span_OperStQual; + type uint32; + description "Tx Bandwidth"; } } - grouping span_RtSpanSpanSrcToL2CktEpAtt_target-group { + grouping infra_RtFexBndlGrpToAggrIf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping infra_RtAccBndlGrpToAggrIf_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping traceroutep_RtTraceroutepTrSrc_target-group { + grouping datetime_RsNtpProviderToNtpAuth_source-group { + description "Ntp Authentication Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping dbgexp_RtDbgexpTsSrc_target-group { + description "Relation to Traceroute Source Node"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping traceroutep_RtTraceroutepTrDst_target-group { + grouping traceroutep_RtTraceroutepTrSrc_target-group { + description "Relation to Source Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping traceroutep_RtTraceroutepTrDst_target-group { + description "Relation to Traceroute Destination"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping dhcp_RsPseudoIf_source-group { + description "Pseudo Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping dhcp_RtPseudoIf_target-group { + description "Pseudo Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtOosSlot_target-group { + description "Out of Service Slot"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResRadiusEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResLdapEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResTacacsPlusEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResAuthRealm_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResUserEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResPkiEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsExtBD_source-group { + description "External BD Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l2_RsBdVsanMap_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } // oper state - // Type is an MO-Defined-Type leaf assocOperSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type l2_AssocOperSt; - } - } - - grouping l2_RtBdVsanMap_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping l2_RsSrvExtIfMap_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; - } - - // NPV Traffic Map Config Status - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "NPV Traffic Map Configuration Status"; - - // Type is an MO-Defined-Type - type l2_TrafficMapCfgSt; + description "Operational State"; } } grouping l2_RsInbandConf_source-group { + description "Inband Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RtInbandConf_target-group { + description "Inband Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsExtConf_source-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l2_RtExtConf_target-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsBrConf_source-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; - } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; - } - } - - grouping l2_RtBrConf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RsCtrlrAdjEpToStAdjEp_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RtCtrlrAdjEpToStAdjEp_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RsLldpInstPolCons_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping vpc_RsVpcConf_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; - type boolean; - default "true"; - } - } - - grouping vpc_RtVpcConf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping vpc_RsVpcInstPolCons_source-group { + grouping l2_RtBrConf_target-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - leaf protGEp { - config "false"; - type string; + description "Target object's DN and is implicit"; } } - grouping fv_RsDomDefNs_source-group { + grouping lldp_RsLldpInstPolCons_source-group { + description "Lldp Instance Policy Consumption"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping fv_RsDomDefNsLocal_source-group { + grouping vpc_RsVpcConf_source-group { + description "Port Channel Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping fv_RtFvToRemoteRFltP_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping fv_RtFvToRemoteRFltAtt_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping fv_RtFvEpDefToPathEp_target-group { + grouping vpc_RtVpcConf_target-group { + description "Port Channel Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefToLooseNode_target-group { + grouping vpc_RsVpcInstPolCons_source-group { + description "Vpc Instance Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf protGEp { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type string; + description "Protocol Group"; } } - grouping fv_RtFvEpDefRefToStAdjEp_target-group { + grouping fv_RsDomDefNs_source-group { + description "VXLAN Pool"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefRefToL2MacEp_target-group { + grouping fv_RsDomDefNsLocal_source-group { + description "VXLAN Pool"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefRefToStAdjEpV6_target-group { + grouping fv_RtFvEpDefRefToStAdjEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RsVNode_source-group { + grouping fv_RtFvEpDefRefToL2MacEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvVNode_target-group { + grouping fv_RtFvEpDefRefToStAdjEpV6_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RsLNode_source-group { + grouping fv_RsVNode_source-group { + description "Relation to Virtual Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvToDomDef_target-group { + grouping fv_RtFvVNode_target-group { + description "Relation to Virtual Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvDomIfConn_target-group { + grouping fv_RsLNode_source-group { + description "Distributed Virtual Switch"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvDyPathAtt_target-group { + grouping fv_RtFvToDomDef_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvLsNodeAtt_target-group { + grouping fv_RtFvDomIfConn_target-group { + description "Domain Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fv_RtFvNodePortAtt_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping maint_RtMaintFwinstlsrc_target-group { + description "Relation to Source Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping isis_RsNhAtt_source-group { + description "IS-IS Nexthop Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping mgmt_RsRtdMgmtConf_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping mgmt_RtRtdMgmtConf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping snmp_RsCommSecPClientGrpAtt_source-group { + description "Community Security Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping snmp_RsCommToCtxAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_OSSum; + description "Operational State"; } // Operational state qualifier - // Type is an MO-Defined-Type leaf operStQual { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type type nw_OSSumQual; + description "Operational State Qualifier"; } } grouping ospf_RtOspfIfDefToOspfIf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + grouping ospf_RtOspfIfDefToOspfv3If_target-group { + + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping comm_RtCommKeyRing_target-group { + description "Key Ring"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaUserEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaLoginDomain_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtPreLoginBanner_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaKeyringRef_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVtepAtt_source-group { + description "Link To Tunnel Intf Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtAggregateVtepAtt_target-group { + description "Link To Tunnel Intf Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVlanMemberAtt_source-group { + description "Vlan Membership Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtAggregateVlanMemberAtt_target-group { + description "Vlan Membership Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsMac_source-group { + description "Tunnel Mac Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtMac_target-group { + description "Tunnel Mac Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVpcIntfEntryAtt_source-group { + description "Vpc Interface Entry Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtVpcIntfEntryAtt_target-group { + description "Vpc Interface Entry Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping analytics_RsRecordPAtt_source-group { + description "Record Policy Attachment"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RsRfltpConn_source-group { + grouping analytics_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping analytics_RsProfAtt_source-group { + description "Reference to profile."; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RsTenConn_source-group { + grouping analytics_RsPolicyAtt_source-group { + description "Reference to policy."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping epm_RsMacEpToIpEpAtt_source-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RtTenConn_target-group { + grouping eptrk_RsIpEpRslttoIpEpAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping eptrk_RtIpEpRslttoIpEpAtt_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsRecordPAtt_source-group { + grouping eptrk_RsMacEpRslttoIpEpAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; + config "false"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping eptrk_RtMacEpRslttoIpEpAtt_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsCollectorAtt_source-group { + grouping fte_RsRecordAtt_source-group { + description "Attach FTE Record to FTE Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping analytics_RsProfAtt_source-group { + grouping fte_RsCollectorAtt_source-group { + description "Attach FTE Collector to FTE Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping fte_RsEventsAtt_source-group { + description "Attach FTE Events to FTE Monitor"; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsPolicyAtt_source-group { + grouping fte_RsMonitorAtt_source-group { + description "Attach FTE Monitor to System FTE"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bd_RsCollectorAtt_source-group { + description "Attach Buffer Drop Collector to Buffer Drop Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping epm_RsMacEpToIpEpAtt_source-group { + grouping bd_RsMonitorAttch_source-group { + description "Monitor Attachment to System Buffer Drop"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bl_RsRecordAtt_source-group { + description "Attach Buffer Latency Record to Buffer Latency Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RsIpEpRslttoIpEpAtt_source-group { + grouping bl_RsCollectorAtt_source-group { + description "Attach Buffer Latency Collector to Buffer Latency Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bl_RsThresholdAtt_source-group { + description "Queue Config Attachment to Threshold Values"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RtIpEpRslttoIpEpAtt_target-group { + grouping bl_RsMonitorAttch_source-group { + description "Monitor Attachment to System Buffer Latency"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSourcerecordAtt_source-group { + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RsMacEpRslttoIpEpAtt_source-group { + grouping ipt_RsSinkcollectorAtt_source-group { + description "Collector Attachment to System Sink Monitor INT Clone MD"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSinkrecordAtt_source-group { + description "Sink Record Attachment to System Sink Monitor INT Clone MD"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RtMacEpRslttoIpEpAtt_target-group { + grouping ipt_RsSourcemonitorAtt_source-group { + description "Source Monitor Attachment to System"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSinkmonitorAtt_source-group { + description "Sink Monitor Attachment to System"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsRecordPAtt_source-group { + description "Record Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsWatchlistAtt_source-group { + description "Reference to Watchlist"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsDroplistAtt_source-group { + description "Reference to Droplist"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsMonitorAtt_source-group { + description "Reference to Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RsPolicyInstToPMap_source-group { + description "Link from policy instance to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RtIpqosPolicyInstToPMap_target-group { + description "Link from policy instance to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RsClassMapToPolicyMap_source-group { + description "policy-maps using this class-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RtClassMapToPolicyMap_target-group { + description "policy-maps using this class-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsRecord_source-group { + description "Reference to flow record"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsExporter1_source-group { + description "Reference to flow exporter1"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsExporter2_source-group { + description "Reference to flow exporter2"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsMonitor_source-group { + description "Reference to flow monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsHwProfile_source-group { + description "Reference to hardware profile"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsPmap_source-group { + description "Reference to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping telemetry_RsSensorGroupRel_source-group { + grouping netflow_RsRecordPAtt_source-group { + description "Reference to the record that is to be used under this monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - leaf sampleIntvl { - type uint64; + description "Target object's DN and is implicit"; } } - grouping telemetry_RsDestGroupRel_source-group { + grouping netflow_RsCollectorAtt_source-group { + description "Reference to the collector that is to be used under this monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vsan_RsVsanIfMap_source-group { + grouping netflow_RsProfAtt_source-group { + description "Reference to profile attachement"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } + grouping ssx_RsRecordPAtt_source-group { + description "Record Policy Attachment"; - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping vsan_RtVsanIfMap_target-group { + grouping ssx_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vsan_RsVsanPathAtt_source-group { + grouping ssx_RsSysMonitorAtt_source-group { + description "Reference to Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } + grouping ssx_RsMonitorAtt_source-group { + description "Reference to Monitor"; - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { + // Target Object's DN + leaf tDn { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type - type reln_StateQual; + type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } + grouping telemetry_RsSensorGroupRel_source-group { + description "Link to sensorGroup entry"; - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; + type reln_Dn; + description "Target object's DN and is implicit"; } - // native to represent port vsan - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "native type to repsent port vsan"; + leaf sampleIntvl { - // Type is an MO-Defined-Type - type l2_NativeT; + type telemetry_sampleIntvlType; + description "Sensor sample inteval"; } } - grouping vsan_RtVsanVsanPathAtt_target-group { + grouping telemetry_RsDestGroupRel_source-group { + description "Link to destGroup entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ethpm_RsErrDisRecoverPolCons_source-group { + description "ErrDisableRecovery Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping pc_RsMbrIfs_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } // channel-group force - // Type is an MO-Defined-Type leaf isMbrForce { - description "Channel group force"; - // Type is an MO-Defined-Type type pc_ChnlGrpForce; + description "Channel group force"; } } grouping pc_RtMbrIfs_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping pc_RsLacpPolCons_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping vlan_RsVlanEppAtt_source-group { + description "Epp Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping vxlan_RsVxlanEppAtt_source-group { + description "Epp Attachement"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping nvo_RsOperSourceInterface_source-group { + description "Operational Up/Down status of the Source Interface."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping nvo_RtOperSourceInterface_target-group { + description "Operational Up/Down status of the Source Interface."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsCtxToEpP_source-group { + description "Epp Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RsVrfMbr_source-group { + description "VRF Membership Association"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping l3_RtVrfMbr_target-group { + description "VRF Membership Association"; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping l3_RtVrfMbr_target-group { + grouping l3_RsVrfPolicyAtt_source-group { + description "Vrf Reference to Analytics policy."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - description "Target-class"; + grouping l3_RtL3VrfPolicyAtt_target-group { + description "Vrf Reference to Analytics policy."; + + // Target Object's DN + leaf tDn { + config "false"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping l3_RsPhysRtdConf_source-group { + grouping l3_RsVrfMonitorAtt_source-group { + description "Vrf Reference to Analytics monitor."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping l3_RtL3VrfMonitorAtt_target-group { + description "Vrf Reference to Analytics monitor."; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; + } + } + + grouping l3_RsPhysRtdConf_source-group { + description "Physical Routed Attachment"; + + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RtPhysRtdConf_target-group { + description "Physical Routed Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsProtLbIf_source-group { + description "Protection Group"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Interface Mode - // Type is an MO-Defined-Type leaf mode { - description "TBD"; - // Type is an MO-Defined-Type type ip_IfMode; + description "TBD"; } } grouping l3_RsLbIfToLocale_source-group { + description "Router Id"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsLbIfToOutRef_source-group { + description "Router Id"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsEncPhysRtdConf_source-group { + description "Parent If"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RtL3EncPhysRtdConf_target-group { + description "Parent If"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping uribv4_RsRouteOwnerToNexthopAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping nw_RsPathToIf_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping nw_RtNwPathToIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsRegCommAtt_source-group { + description "Regular Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtRegCommAtt_target-group { + description "Regular Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsExtCommAtt_source-group { + description "Extended Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtExtCommAtt_target-group { + description "Extended Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsRtDstAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtRtmapRtDstAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtDstV6Att_source-group { + grouping rtmap_RsRtDstAccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtDstV6Att_target-group { + grouping rtmap_RtRtmapRtDstAccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtNhAtt_source-group { + grouping rtmap_RsRtDstV6Att_source-group { + description "IPv6 Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtNhAtt_target-group { + grouping rtmap_RtRtmapRtDstV6Att_target-group { + description "IPv6 Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtNhV6Att_source-group { + grouping rtmap_RsRtDstV6AccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtNhV6Att_target-group { + grouping rtmap_RtRtmapRtDstV6AccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtSrcAtt_source-group { + grouping rtmap_RsRtNhAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtSrcAtt_target-group { + grouping rtmap_RtRtmapRtNhAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtSrcV6Att_source-group { + grouping rtmap_RsRtNhV6Att_source-group { + description "Prefix List Attachment Ipv6"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtSrcV6Att_target-group { + grouping rtmap_RtRtmapRtNhV6Att_target-group { + description "Prefix List Attachment Ipv6"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtAsPathAccAtt_source-group { + grouping rtmap_RsRtSrcAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtAsPathAccAtt_target-group { + grouping rtmap_RtRtmapRtSrcAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping tunnel_RsTunnelMbrIfs_source-group { + grouping rtmap_RsRtSrcV6Att_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping tunnel_RtTunnelTunnelMbrIfs_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - grouping tunnel_RsTunnelToLooseNode_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping tunnel_RtTunnelTunnelToLooseNode_target-group { + grouping rtmap_RtRtmapRtSrcV6Att_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping eqpt_RsPsuInstPolCons_source-group { + grouping rtmap_RsRtAsPathAccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping leqpt_RsLsNodeToIf_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping leqpt_RtLsNodeToIf_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping leqpt_RsLsAttLink_source-group { + grouping rtmap_RtRtmapRtAsPathAccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping bfd_RsMbrSess_source-group { + grouping rtmap_RsRtMacListAtt_source-group { + description "Mac List"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping pim_RsRP2Grange_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping pim6_RsRP2Grange_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping synthetic_RsToObj_source-group { + grouping rtmap_RtRtmapRtMacListAtt_target-group { + description "Mac List"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping synthetic_RtToObj_target-group { + grouping tunnel_RsTunnelMbrIfs_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RsMbrIfs_source-group { + grouping tunnel_RtTunnelTunnelMbrIfs_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RtMbrIfs_target-group { + grouping tunnel_RsTunnelToLooseNode_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RsActiveIf_source-group { + grouping eqpt_RsPsuInstPolCons_source-group { + description "The power supply group policy attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RtActiveIf_target-group { + grouping bfd_RsMbrSess_source-group { + description "Port-Channel Member Sessions"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vns_RtVnsConnToFltInst_target-group { + grouping pim_RsRP2Grange_source-group { + description "RP to Group range mapping"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzFwdRFltPAtt_target-group { + grouping synthetic_RsToObj_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzRevRFltPAtt_target-group { + grouping synthetic_RtToObj_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzTabooRFltAtt_target-group { + grouping cnw_RsMbrIfs_source-group { + description "Member Iinterfaces"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + grouping cnw_RtMbrIfs_target-group { + description "Member Iinterfaces"; + + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzRFltAtt_target-group { + grouping cnw_RsActiveIf_source-group { + description "Active Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping cnw_RtActiveIf_target-group { + description "Active Interface"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping action_RsLSubjToDomainRef_source-group { + description "Relation from LSubj To AAA Domain Ref"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_VlanStats-group { + description "Vlan counters"; leaf inUcastOctets { config "false"; type uint64; + description "ucastOctets"; } leaf inUcastPkts { config "false"; type uint64; + description "Unicast packets"; } leaf inMcastOctets { config "false"; type uint64; + description "Multicast Octets"; } leaf inMcastPkts { config "false"; type uint64; + description "Multicast packets"; } leaf inBcastOctets { config "false"; type uint64; + description "Broadcast Octets"; } leaf inBcastPkts { config "false"; type uint64; + description "Broadcast packets"; } leaf inL3UcastOctets { config "false"; type uint64; + description "ingress L3 SVI Unicast Octets"; } leaf inL3UcastPkts { config "false"; type uint64; + description "ingress L3 SVI Unicast Packets"; } leaf outUcastOctets { config "false"; type uint64; + description "ucastOctets"; } leaf outUcastPkts { config "false"; type uint64; + description "Unicast packets"; } } grouping analytics_Statistics-group { + description "Analytics Statistics"; leaf flowCreateCe { config "false"; type uint64; + description "Number of L2 flows created on the slice"; } leaf flowCreateIPv4 { config "false"; type uint64; + description "Number of IPv4 flows created on the slice"; } leaf flowCreateIPv6 { config "false"; type uint64; + description "Number of IPv6 flows created on the slice"; } leaf flowHitCe { config "false"; type uint64; + description "Number of L2 flows hitting the flow table"; } leaf flowHitIPv4 { config "false"; type uint64; + description "Number of IPv4 flows hitting the flow table"; } leaf flowHitIPv6 { config "false"; type uint64; + description "Number of IPv6 flows hitting the flow table"; } leaf packetsSeen { config "false"; type uint64; + description "Total number of packets seen on the slice"; } leaf export { config "false"; type uint64; + description "Total number of export packets sent from the slice"; } leaf skipCollect { config "false"; type uint64; + description "Total number of packets not accounted for flow creation on the slice"; } leaf lastCollectTs { config "false"; type uint64; + description "Last timestamp when packets were sent to the collector"; } } grouping rmon_IfIn-group { + description "Interface Input Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf nUcastPkts { config "false"; type uint64; + description "Non Unicast Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } leaf errors { config "false"; type uint64; + description "Error Packets"; } leaf unknownProtos { config "false"; type uint64; + description "Unknown Protocol Packets"; } leaf unknownEtype { config "false"; type uint64; + description "Unknown Ether Type Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf noBuffer { config "false"; type uint64; + description "No Buffer"; } leaf rateInterval { config "false"; type uint32; + description "Rate Interval"; } leaf octetRate { config "false"; type uint64; + description "Octet Rate"; } leaf packetRate { config "false"; type uint64; + description "Packet Rate"; } } grouping rmon_IfOut-group { + description "Interface Output Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf nUcastPkts { config "false"; type uint64; + description "Non Unicast Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } leaf errors { config "false"; type uint64; + description "Error Packets"; } leaf qLen { config "false"; type uint64; + description "Queue Length Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf rateInterval { config "false"; type uint32; + description "Rate Interval"; } leaf octetRate { config "false"; type uint64; + description "Octet Rate"; } leaf packetRate { config "false"; type uint64; + description "Packet Rate"; } } grouping rmon_IpIn-group { + description "IPV4 Input Counters"; leaf receives { config "false"; type uint64; + description "Receives"; } leaf hdrErrors { config "false"; type uint64; + description "Header Error Packets"; } leaf forwDatagrams { config "false"; type uint64; + description "Forward Datagram Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } } grouping rmon_Dot1d-group { + description "Dot1d Counters"; leaf basePortDelayExceededDiscards { config "false"; type uint64; + description "Base Port Delay Exceeded Discard Packets"; } leaf basePortMtuExceededDiscards { config "false"; type uint64; + description "Base Port MTU Exceeded Discard Packets"; } leaf tpPortInFrames { config "false"; type uint64; + description "TP Port Input Frames"; } leaf tpPortOutFrames { config "false"; type uint64; + description "TP Port Output Frames"; } leaf portInDiscards { config "false"; type uint64; + description "Port Input Discraded Packets"; } } grouping rmon_EtherStats-group { + description "Ethernet Statistic Counters"; leaf dropEvents { config "false"; type uint64; + description "Drop Event Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf undersizePkts { config "false"; type uint64; + description "Undersize Packets"; } leaf giantPkts { config "false"; type uint64; + description "Giant Packets"; } leaf stormSupressedPkts { config "false"; type uint64; + description "Storm Supressed Packets"; } leaf fragments { config "false"; type uint64; + description "Fragmented Packets"; } leaf pkts64Octets { config "false"; type uint64; + description "Packets with 64 Octets"; } leaf pkts65to127Octets { config "false"; type uint64; + description "Packets with 65 to 127 Octets"; } leaf pkts128to255Octets { config "false"; type uint64; + description "Packets with 128 to 255 Octets"; } leaf pkts256to511Octets { config "false"; type uint64; + description "Packets with 256 to 511 Octets"; } leaf pkts512to1023Octets { config "false"; type uint64; + description "Packets with 512 to 1023 Octets"; } leaf pkts1024to1518Octets { config "false"; type uint64; + description "Packets with 1024 to 1518 Octets"; } leaf pkts1519to1548Octets { config "false"; type uint64; + description "Packets with 1519 to 1548 Octets"; } leaf rxPkts64Octets { config "false"; type uint64; + description "RX Packets with 64 Octets"; } leaf txPkts64Octets { config "false"; type uint64; + description "TX Packets with 64 Octets"; } leaf rxPkts65to127Octets { config "false"; type uint64; + description "RX Packets with 65 to 127 Octets"; } leaf txPkts65to127Octets { config "false"; type uint64; + description "TX Packets with 65 to 127 Octets"; } leaf rxPkts128to255Octets { config "false"; type uint64; + description "RX Packets with 128 to 255 Octets"; } leaf txPkts128to255Octets { config "false"; type uint64; + description "TX Packets with 128 to 255 Octets"; } leaf rxPkts256to511Octets { config "false"; type uint64; + description "RX Packets with 256 to 511 Octets"; } leaf txPkts256to511Octets { config "false"; type uint64; + description "TX Packets with 256 to 511 Octets"; } leaf rxPkts512to1023Octets { config "false"; type uint64; + description "RX Packets with 512 to 1023 Octets"; } leaf txPkts512to1023Octets { config "false"; type uint64; + description "TX Packets with 512 to 1023 Octets"; } leaf rxPkts1024to1518Octets { config "false"; type uint64; + description "RX Packets with 1024 to 1518 Octets"; } leaf txPkts1024to1518Octets { config "false"; type uint64; + description "TX Packets with 1024 to 1518 Octets"; } leaf rxPkts1519to1548Octets { config "false"; type uint64; + description "RX Packets with 1519 to 1548 Octets"; } leaf txPkts1519to1548Octets { config "false"; type uint64; + description "TX Packets with 1519 to 1548 Octets"; } leaf oversizePkts { config "false"; type uint64; + description "Over Size Packets"; } leaf jabbers { config "false"; type uint64; + description "Jabber Frames"; } leaf octets { config "false"; type uint64; + description "Octets"; } leaf pkts { config "false"; type uint64; + description "Packets"; } leaf collisions { config "false"; type uint64; + description "Collisions"; } leaf cRCAlignErrors { config "false"; type uint64; + description "CRC Align Errors"; } leaf tXNoErrors { config "false"; type uint64; + description "TX no Errors"; } leaf rXNoErrors { config "false"; type uint64; + description "RX no Errors"; } leaf rxOversizePkts { config "false"; type uint64; + description "RX Over Size Packets"; } leaf txOversizePkts { config "false"; type uint64; + description "TX Over Size Packets"; } leaf overrun { config "false"; type uint64; + description "Overrun Packets"; } leaf underrun { config "false"; type uint64; + description "Underrun Packets"; } leaf ignored { config "false"; type uint64; + description "Ignored Packets"; } leaf watchdog { config "false"; type uint64; + description "Watchdog"; } leaf ifdowndrop { config "false"; type uint64; + description "If Down Drop"; } } grouping rmon_Dot3Stats-group { + description "Dot3 Statistics Counters"; leaf alignmentErrors { config "false"; type uint64; + description "Alignment Errors"; } leaf fCSErrors { config "false"; type uint64; + description "FCS Errors"; } leaf singleCollisionFrames { config "false"; type uint64; + description "Single Collision Frames"; } leaf multipleCollisionFrames { config "false"; type uint64; + description "Multiple Collision Frames"; } leaf sQETTestErrors { config "false"; type uint64; + description "SQET Test Errors"; } leaf deferredTransmissions { config "false"; type uint64; + description "Deferred Transmissions"; } leaf lateCollisions { config "false"; type uint64; + description "Late Collisions"; } leaf excessiveCollisions { config "false"; type uint64; + description "Excessive Collisions"; } leaf internalMacTransmitErrors { config "false"; type uint64; + description "Internal Mac Transmit Errors"; } leaf carrierSenseErrors { config "false"; type uint64; + description "Carrier Sense Errors"; } leaf frameTooLongs { config "false"; type uint64; + description "Frame too Longs"; } leaf internalMacReceiveErrors { config "false"; type uint64; + description "Internal Mac Receive Errors"; } leaf symbolErrors { config "false"; type uint64; + description "Symbol Errors"; } leaf controlInUnknownOpcodes { config "false"; type uint64; + description "Control Input Unknown Opcodes"; } leaf inPauseFrames { config "false"; type uint64; + description "Input Pause Frames"; } leaf outPauseFrames { config "false"; type uint64; + description "Output Pause Frames"; } leaf lostCarrierErrors { config "false"; type uint64; + description "Lost Carrier Errors"; } leaf noCarrierErrors { config "false"; type uint64; + description "No Carrier Errors"; } leaf inputdribble { config "false"; type uint64; + description "Input Dribble"; } leaf babble { config "false"; type uint64; + description "babble count"; } leaf runts { config "false"; type uint64; + description "runts count"; } } grouping rmon_IfHCIn-group { + description "Interface HC Input Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } } grouping rmon_IfHCOut-group { + description "Interface HC Output Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPckts { config "false"; type uint64; + description "Broadcast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } } grouping rmon_Ipv6IfStats-group { + description "Ipv6 Interface Statistics Counters"; leaf inReceives { config "false"; type uint64; + description "Input Receives"; } leaf inHdrErrors { config "false"; type uint64; + description "Input Header Errors"; } leaf inAddrErrors { config "false"; type uint64; + description "Input Address Errors"; } leaf inDiscards { config "false"; type uint64; + description "Input Discards"; } leaf outForwDatagrams { config "false"; type uint64; + description "Output Forward Datagrams"; } leaf outDiscards { config "false"; type uint64; + description "Output Discards"; } leaf inMcastPkts { config "false"; type uint64; + description "Input Multicast Packets"; } leaf outMcastPkts { config "false"; type uint64; + description "Output Multicast Packets"; } } grouping rmon_IfStorm-group { + description "Interface Storm Drop Counters"; leaf dropBytes { config "false"; type uint64; + description "Storm Ctrl Drop Bytes"; } } grouping tunnel_IngrTep-group { + description "Ingress TEP Counters"; leaf fwdPkts { config "false"; type uint64; + description "Forwarded Packets"; } leaf fwdBytes { config "false"; type uint64; + description "Forwarded Bytes"; } leaf dropPkts { config "false"; type uint64; + description "Drop Packets"; } leaf dropBytes { config "false"; type uint64; + description "Drop Bytes"; } } grouping tunnel_EgrTep-group { + description "Egress TEP Counters"; leaf fwdPkts { config "false"; type uint64; + description "Forwarded Packets"; } leaf fwdBytes { config "false"; type uint64; + description "Forwarded Bytes"; } leaf dropPkts { config "false"; type uint64; + description "Drop Packets"; } leaf dropBytes { config "false"; type uint64; + description "Drop Bytes"; } } container System { - description "System"; + description "General information about this system"; uses System-group; } @@ -157062,7 +168146,10 @@ module Cisco-NX-OS-device { //----------------------------------------- // RPC Defintions for Cisco-NX-OS //----------------------------------------- - identity inactive; + identity inactive + { + description "Inactive"; + } typedef uri_t { @@ -157078,22 +168165,22 @@ module Cisco-NX-OS-device { typedef addtgt_t { - description "The add target { | }"; type union { type pkgname_t; type uri_t; } + description "The add target { | }"; } typedef remtgt_t { - description "The remove target { | inactive }"; type union { type pkgname_t; type identityref { base "inactive"; } } + description "The remove target { | inactive }"; } typedef filesystem_t @@ -157115,7 +168202,6 @@ module Cisco-NX-OS-device { typedef climode_t { - description "A CLI mode"; type enumeration { enum EXEC @@ -157127,6 +168213,7 @@ module Cisco-NX-OS-device { description "CONFIG CLI Commands"; } } + description "A CLI mode"; } typedef commandline_t @@ -157194,6 +168281,7 @@ module Cisco-NX-OS-device { choice A { + description "Choice A"; leaf no-reload { type empty; @@ -157208,6 +168296,7 @@ module Cisco-NX-OS-device { choice B { + description "Choice B"; leaf bios { type empty; @@ -157252,6 +168341,7 @@ module Cisco-NX-OS-device { choice B { + description "Choice B"; leaf no-reload { type empty; @@ -157266,6 +168356,7 @@ module Cisco-NX-OS-device { choice C { + description "Choice C"; leaf bios { type empty; @@ -157315,6 +168406,7 @@ module Cisco-NX-OS-device { choice A { + description "Choice A"; leaf upgrade { type empty; @@ -157418,6 +168510,7 @@ module Cisco-NX-OS-device { { choice remtgt { + description "Remove target"; leaf remove { type remtgt_t; @@ -157486,6 +168579,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest_remote { leaf dest_remote @@ -157495,6 +168589,7 @@ module Cisco-NX-OS-device { } choice A { + description "Choice A"; leaf source-interface { type intf_t; @@ -157512,6 +168607,7 @@ module Cisco-NX-OS-device { { choice B { + description "Choice B"; case dest_local { leaf dest_local @@ -157587,6 +168683,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest-local-a { leaf dest_local @@ -157644,6 +168741,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest_remote { leaf dest_remote @@ -157654,6 +168752,7 @@ module Cisco-NX-OS-device { choice dest-a { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157669,14 +168768,14 @@ module Cisco-NX-OS-device { } // end case dest_remote - case dest-local-core + case dest_local_core { leaf dest_local_core { type filesystem_t; description "Select destination filesystem"; } - } // end case dest-local-core + } // end case dest_local_core } // end choice dest } // end input } @@ -157698,7 +168797,8 @@ module Cisco-NX-OS-device { } choice dest { - case dest-remote + description "Destination"; + case dest_remote { leaf dest_remote { @@ -157707,6 +168807,7 @@ module Cisco-NX-OS-device { } choice dest-r { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157718,7 +168819,7 @@ module Cisco-NX-OS-device { type vrfname_t; description "Display per-VRF information of known VRF name"; } - } // end choice dest-remote + } // end choice dest_remote } // end case dest-r case startup-config @@ -157736,7 +168837,7 @@ module Cisco-NX-OS-device { } } // end case startup-config - case dest-local-config + case dest_local_config { leaf dest_local_config { @@ -157760,7 +168861,8 @@ module Cisco-NX-OS-device { { choice dest { - case dest-remote + description "Destination"; + case dest_remote { leaf dest_remote { @@ -157769,6 +168871,7 @@ module Cisco-NX-OS-device { } choice dest-r { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157781,7 +168884,7 @@ module Cisco-NX-OS-device { description "Display per-VRF information of known VRF name"; } } // end choice dest-r - } // end case dest-remote + } // end case dest_remote case running-config { @@ -157802,14 +168905,14 @@ module Cisco-NX-OS-device { } } // end case running-config - case dest-local-config + case dest_local_config { leaf dest_local_config { type empty; description "Select destination filesystem"; } - } // end case dest-local-config + } // end case dest_local_config } // end dest choice } // end input } diff --git a/yang/02-yang/Cisco-NX-OS-device.yang b/yang/02-yang/Cisco-NX-OS-device.yang index 48b5f8f..4a0679c 100644 --- a/yang/02-yang/Cisco-NX-OS-device.yang +++ b/yang/02-yang/Cisco-NX-OS-device.yang @@ -3,23 +3,28 @@ module Cisco-NX-OS-device { namespace "http://cisco.com/ns/yang/cisco-nx-os-device"; prefix top; 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: nxos-dev-yang@cisco.com"; + contact " Cisco Systems, Inc., Customer Service, Postal: 170 W Tasman Drive, San Jose, CA 95134, Tel: +1 800 553-NETS, e-mail: cs-yang@cisco.com"; description "NXOS Device YANG Model"; - reference "131c7b913903ac7eefe66ed6b1dfa9b00472f0fc"; - revision 2018-07-17 { + reference "75fc552868450e43f9172d14e2dc431870e81650"; + revision 2019-12-22 { description "Initial Revision - Generated by mtx 1.0.1 Built on Tue Jun 26 17:18:51 PDT 2018 by vnguyen"; + Generated by mtx 1.0.1 Built on Mon Dec 16 16:01:33 PST 2019 by mtxunix"; } typedef address_Ipv4 { type string { + pattern ".*(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])(%[p\\{N\\}p\\{L\\}]+)?.*"; } + description "global address Ipv4 base type"; } typedef address_Ipv6 { 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])))(%[p\\{N\\}p\\{L\\}]+)?.*"; + pattern ".*(([^:]+:){6}(([^:]+:[^:]+).*|(.*\\..*).*)).*|.*((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)(%.+)?.*"; } + description "global address Ipv6 base type"; } typedef address_Ip { @@ -27,79 +32,110 @@ module Cisco-NX-OS-device { type address_Ipv4; type address_Ipv6; } + description "global address Ip base type"; } typedef address_Mac { type string { + pattern "([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}"; } + description "global address MAC base type"; } typedef mtx_array_ifindex { type string { + pattern "[-/\\w\\d]+(,[-:/\\w\\d]+)*"; } + description "global array base type"; } typedef mtx_array_uint8 { type string { + pattern "([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])+(,([01]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5]))*"; } + description "global array base type"; } typedef mtx_array_uint16 { type string { + pattern "(6553[0-5]|655[0-2][0-9]\\d|65[0-4]\\d{2}|6[0-4]\\d{3}|[0-5]\\d{4}|[0-9]\\d{0,3})+(,(6553[0-5]|655[0-2][0-9]\\d|65[0-4]\\d{2}|6[0-4]\\d{3}|[0-5]\\d{4}|[0-9]\\d{0,3}))*"; } + description "global array base type"; } typedef mtx_array_uint32 { type string { + pattern "(429496729[0-6]|42949672[0-8]\\d|4294967[01]\\d{2}|429496[0-6]\\d{3}|42949[0-5]\\d{4}|4294[0-8]\\d{5}|429[0-3]\\d{6}|42[0-8]\\d{7}|4[01]\\d{8}|[1-3]\\d{9}|[1-9]\\d{8}|[1-9]\\d{7}|[1-9]\\d{6}|[1-9]\\d{5}|[1-9]\\d{4}|[1-9]\\d{3}|[1-9]\\d{2}|[1-9]\\d|\\d)+(,(429496729[0-6]|42949672[0-8]\\d|4294967[01]\\d{2}|429496[0-6]\\d{3}|42949[0-5]\\d{4}|4294[0-8]\\d{5}|429[0-3]\\d{6}|42[0-8]\\d{7}|4[01]\\d{8}|[1-3]\\d{9}|[1-9]\\d{8}|[1-9]\\d{7}|[1-9]\\d{6}|[1-9]\\d{5}|[1-9]\\d{4}|[1-9]\\d{3}|[1-9]\\d{2}|[1-9]\\d|\\d))*"; } + description "global array base type"; } typedef mtx_array_uint64 { type string { + pattern "\\d{0,20}(,\\d{0,20})*"; } + description "global array base type"; } typedef mtx_array_bit { type string { + pattern "([0-9]+(-[0-9]+)?(,[0-9]+(-[0-9]+)?)*)*"; } + description "global array base type"; } typedef mtx_array_community { type string { + pattern "((unknown|regular|extended|route-target|rd):((unknown:.*:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as2-nn2:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as2-nn4:(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))|(as4-nn2:(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(as4-nn4:(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))|(ipv4-nn2:(((1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])\\.){3}(1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])):(0*(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|6[0-4][0-9]{3}|[1-5][0-9]{4}|[1-9][0-9]{1,3}|[0-9])))|(ipv4-nn4:(((1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])\\.){3}(1[0-9]?[0-9]|[1-9]?[0-9]|2[0-4][0-9]|25[0-5])):(0*(429496729[0-5]|42949672[0-8][0-9]|4294967[01][0-9]{2}|429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|4294[0-8][0-9]{5}|429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|[1-3][0-9]{9}|[1-9][0-9]{1,8}|[0-9])))))"; } + description "global array base type"; } typedef aaa_AccountStatus { type enumeration { - - // Active enum active { value 0; + description "Active"; } - - // Inactive enum inactive { value 1; + description "Inactive"; } } default "active"; } + typedef aaa_AuthMechanism { + type enumeration { + enum plain-text { + value 1; + description "Plain Text"; + } + enum gssapi-kerb5 { + value 2; + description "Gssapi Kerb5"; + } + enum gssapi-md5 { + value 3; + description "Gssapi Md5"; + } + } + default "plain-text"; + } + typedef aaa_BannerMsg { type string; } typedef aaa_Boolean { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "yes"; @@ -107,15 +143,13 @@ module Cisco-NX-OS-device { typedef aaa_Clear { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -123,15 +157,13 @@ module Cisco-NX-OS-device { typedef aaa_CmdType { type enumeration { - - // Config enum config { value 0; + description "Config"; } - - // Exec enum exec { value 1; + description "Exec"; } } default "config"; @@ -143,19 +175,17 @@ module Cisco-NX-OS-device { typedef aaa_Email { type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; } } typedef aaa_EncKey { type string { length "0..240"; + pattern ".*"; } } - typedef aaa_EncryptedArray { - type mtx_array_uint8; - } - typedef aaa_HistoryDepth { type uint8 { range "0..15"; @@ -171,20 +201,17 @@ module Cisco-NX-OS-device { typedef aaa_KeyEnc { type enumeration { - - // Clear Text enum 0 { value 0; + description "Clear Text"; } - - // Type-6 Encrypted enum 6 { value 6; + description "Type-6 Encrypted"; } - - // Encrypted enum 7 { value 7; + description "Encrypted"; } } default "0"; @@ -192,20 +219,17 @@ module Cisco-NX-OS-device { typedef aaa_KeyEncUserPass { type enumeration { - - // Unspecified enum unspecified { value 255; + description "Unspecified"; } - - // Clear Text enum clear { value 0; + description "Clear Text"; } - - // Encrypted enum Encrypt { value 5; + description "Encrypted"; } } } @@ -229,17 +253,68 @@ module Cisco-NX-OS-device { } } - typedef aaa_LdapSSLStrictnessLevel { + // Ldap Logging Level + typedef aaa_LdapLogLevel { 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 notification { + value 5; + description "Notification"; + } + enum informational { + value 6; + description "Informational"; + } + enum debug { + value 7; + description "Debug"; + } + } + default "critical"; + } - // Strict - enum strict { + typedef aaa_LdapPwdEnc { + type enumeration { + enum 0 { value 0; + description "Clear Text"; + } + enum 7 { + value 7; + description "Encrypted"; } + } + default "7"; + } - // Permissive + typedef aaa_LdapSSLStrictnessLevel { + type enumeration { + enum strict { + value 0; + description "Strict"; + } enum permissive { value 1; + description "Permissive"; } } default "strict"; @@ -247,87 +322,65 @@ module Cisco-NX-OS-device { typedef aaa_LoggingLevel { type enumeration { - - // Emergency enum Emergency { value 0; + description "Emergency"; } - - // Alert enum Alert { value 1; + description "Alert"; } - - // Critical enum Critical { value 2; + description "Critical"; } - - // Error enum Error { value 3; + description "Error"; } - - // Warning enum Warning { value 4; + description "Warning"; } - - // Notifications enum Notif { value 5; + description "Notifications"; } - - // Informational enum Inform { value 6; + description "Informational"; } - - // Debug enum Debug { value 7; + description "Debug"; } } default "Error"; } - typedef aaa_MonitorServerType { - type enumeration { - - // Disabled - enum disabled { - value 0; - } - - // Enabled - enum enabled { - value 1; - } - } - default "disabled"; - } - typedef aaa_MonitoringPasswordType { - type string; + type aaa_EncKey { + length "1..32"; + } + default "wawy"; } typedef aaa_MonitoringUserType { type string { + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-]{0,63}.*"; } default "test"; } typedef aaa_NoRolePolicy { type enumeration { - - // No Login enum no-login { value 0; + description "No Login"; } - - // Assign Default Role enum assign-default-role { value 1; + description "Assign Default Role"; } } } @@ -341,6 +394,7 @@ module Cisco-NX-OS-device { typedef aaa_Passwd { type string { length "1..127"; + pattern ".*"; } } @@ -354,6 +408,13 @@ module Cisco-NX-OS-device { } } + typedef aaa_PrivLvlType { + type uint32 { + range "1..15"; + } + default "15"; + } + typedef aaa_ProviderGroupDeadtime { type uint32 { range "0..1440"; @@ -370,20 +431,17 @@ module Cisco-NX-OS-device { typedef aaa_ProviderGroupProtocol { type enumeration { - - // TACACS enum tacacs { value 0; + description "TACACS"; } - - // RADIUS enum radius { value 1; + description "RADIUS"; } - - // LDAP enum ldap { value 2; + description "LDAP"; } } } @@ -398,20 +456,17 @@ module Cisco-NX-OS-device { typedef aaa_ProviderState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Operable enum operable { value 1; + description "Operable"; } - - // Inoperable enum inoperable { value 2; + description "Inoperable"; } } default "unknown"; @@ -439,10 +494,6 @@ module Cisco-NX-OS-device { type string; } - typedef aaa_PwdLen { - type uint32; - } - typedef aaa_PwdLifeTime { type uint16 { range "0..3650"; @@ -451,15 +502,13 @@ module Cisco-NX-OS-device { typedef aaa_PwdPolicy { type enumeration { - - // Enable enum enable { value 0; + description "Enable"; } - - // Disable enum disable { value 1; + description "Disable"; } } default "enable"; @@ -473,25 +522,21 @@ module Cisco-NX-OS-device { typedef aaa_RadSrvUseType { type enumeration { - - // Authentication enum Auth { value 0; + description "Authentication"; } - - // Authorization enum Author { value 1; + description "Authorization"; } - - // Accounting enum Acc { value 2; + description "Accounting"; } - - // All enum All { value 3; + description "All"; } } default "All"; @@ -499,25 +544,21 @@ module Cisco-NX-OS-device { typedef aaa_Realm { type enumeration { - - // Local enum local { value 0; + description "Local"; } - - // RADIUS enum radius { value 1; + description "RADIUS"; } - - // TACACS+ enum tacacs { value 2; + description "TACACS+"; } - - // LDAP enum ldap { value 3; + description "LDAP"; } } default "local"; @@ -532,25 +573,21 @@ module Cisco-NX-OS-device { typedef aaa_RuleAccessType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Read enum read { value 1; + description "Read"; } - - // Read Write enum read-write { value 2; + description "Read Write"; } - - // Command enum command { value 3; + description "Command"; } } } @@ -575,52 +612,98 @@ module Cisco-NX-OS-device { typedef aaa_RulePermissionType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Permit enum permit { value 1; + description "Permit"; } - - // Deny enum deny { value 2; + description "Deny"; } } } typedef aaa_RuleScopeType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Feature enum feature { value 2; + description "Feature"; } - - // Feature Group enum feature-group { value 3; + description "Feature Group"; } - - // OID enum oid { value 21; + description "OID"; } } } + typedef aaa_SearchMapEntryType { + type enumeration { + enum user-profile { + value 1; + description "User Profile"; + } + enum trusted-cert { + value 2; + description "Trusted Cert"; + } + enum crl-lookup { + value 3; + description "Crl Lookup"; + } + enum user-switch-bind { + value 4; + description "User Switch Bind"; + } + enum user-certdn-match { + value 5; + description "User Certdn Match"; + } + enum user-pubkey-match { + value 6; + description "User Pubkey Match"; + } + } + default "user-profile"; + } + + typedef aaa_SecretEncType { + type enumeration { + enum 0 { + value 0; + description "No Encryption"; + } + enum 5 { + value 5; + description "MD5 encrpytion"; + } + enum 8 { + value 8; + description "PBKDF2 encryption"; + } + enum 9 { + value 9; + description "SCRYPT encryption"; + } + } + default "0"; + } + typedef aaa_SshData { type string { length "0..16384"; + pattern ".*[a-zA-Z0-9=\\n\\r/\\+ _\\.@-]*.*"; } } @@ -650,20 +733,17 @@ module Cisco-NX-OS-device { typedef aaa_UserRolePrivType { type enumeration { - - // No Privilege enum noDataPriv { value 0; + description "No Privilege"; } - - // Read Privilege enum readPriv { value 1; + description "Read Privilege"; } - - // Write Privilege enum writePriv { value 2; + description "Write Privilege"; } } default "noDataPriv"; @@ -671,46 +751,53 @@ module Cisco-NX-OS-device { typedef aaa_authenticationProtocol { type enumeration { - - // PAP enum pap { value 0; + description "PAP"; } - - // CHAP enum chap { value 1; + description "CHAP"; } - - // MS-CHAP enum mschap { value 2; + description "MS-CHAP"; } - - // MS-CHAPv2 enum mschapv2 { value 3; + description "MS-CHAPv2"; } - - // ASCII enum ascii { value 4; + description "ASCII"; + } + } + } + + typedef aaa_loginShellType { + type enumeration { + enum shellvsh { + value 1; + description "vsh shell type"; + } + enum shellbash { + value 2; + description "bash shell type"; } } + default "shellvsh"; } // Bank type typedef ac_BankT { type enumeration { - - // Even enum even { value 1; + description "Even"; } - - // Odd enum Odd { value 2; + description "Odd"; } } default "even"; @@ -721,38 +808,27 @@ module Cisco-NX-OS-device { default "0"; } + // Ip port name + typedef acl_AclName { + type string { + length "0..64"; + } + } + // ACE action type typedef acl_ActionType { type enumeration { - - // Invalid enum invalid { value 0; + description "Invalid ace action type"; } - - // Permit enum permit { value 1; + description "Permit ace action type"; } - - // Deny enum deny { value 2; - } - - // Copy - enum copy { - value 3; - } - - // Divert - enum divert { - value 4; - } - - // Redirect - enum redirect { - value 5; + description "Deny ace action type"; } } default "invalid"; @@ -763,6 +839,7 @@ module Cisco-NX-OS-device { type uint16 { range "0..48"; } + default "0"; } // config State @@ -771,50 +848,76 @@ module Cisco-NX-OS-device { default "0"; } + // Direction type + typedef acl_Direction { + type enumeration { + enum in { + value 0; + description "Ingress Direction for packets"; + } + enum out { + value 1; + description "Egress Direction for packets"; + } + } + default "in"; + } + + // Fragment type + typedef acl_Fragments { + type enumeration { + enum disabled { + value 0; + description "Disable fragment handling"; + } + enum deny-all { + value 1; + description "Drop all the fragments"; + } + enum permit-all { + value 2; + description "Allow all the fragments"; + } + } + } + // http option (http-method) value enum typedef acl_HttpOptionType { type enumeration { - - // get enum get { value 1; + description "get http option type"; } - - // put enum put { value 2; + description "put http option type"; } - - // head enum head { value 3; + description "head http option type"; } - - // post enum post { value 4; + description "post http option type"; } - - // delete enum delete { value 5; + description "delete http option type"; } - - // trace enum trace { value 6; + description "trace http option type"; } - - // connect enum connect { value 7; + description "connect http option type"; } - - // invalid enum invalid { value 0; + description "invalid http option type"; } } + default "invalid"; } // Name of interface, e.g. "Eth1/2" @@ -822,10 +925,24 @@ module Cisco-NX-OS-device { type nw_IfId; } + // MPLS Label Mask Range + typedef acl_LabelMaskRange { + type uint32 { + range "0..1048575"; + } + default "1048575"; + } + + // MPLS Label Range + typedef acl_LabelRange { + type uint32 { + range "0..1048575"; + } + } + // MAC Protocol typedef acl_MACProtocol { - // MAX Converted to int from 0x10000 type uint32 { range "0..65536"; } @@ -841,8 +958,33 @@ module Cisco-NX-OS-device { // L4 port relationship operator typedef acl_Operator { - type uint8; - default "0"; + type enumeration { + enum none { + value 0; + description "none of the operator"; + } + enum lt { + value 4; + description "specifies less than operator"; + } + enum gt { + value 5; + description "specifies greater than operator"; + } + enum eq { + value 6; + description "specifies equal to operator"; + } + enum neq { + value 7; + description "specifies not equal to operator"; + } + enum range { + value 8; + description "specifies range operator"; + } + } + default "none"; } // Packet Length @@ -850,6 +992,7 @@ module Cisco-NX-OS-device { type uint16 { range "19..9210"; } + default "19"; } // L4 port number @@ -877,6 +1020,7 @@ module Cisco-NX-OS-device { type uint8 { range "0..64"; } + default "0"; } // TCP option length @@ -884,6 +1028,7 @@ module Cisco-NX-OS-device { type uint32 { range "0..41"; } + default "41"; } // time-range name @@ -917,25 +1062,21 @@ module Cisco-NX-OS-device { // VLAN Acl action type typedef acl_VAclActionType { type enumeration { - - // invalid enum invalid { value 0; + description "invalid vlan acl action type"; } - - // forward enum forward { value 1; + description "forward vlan acl action"; } - - // drop enum drop { value 2; + description "drop vlan acl action"; } - - // redirect enum redirect { value 3; + description "redirect vlan acl action"; } } default "invalid"; @@ -974,6 +1115,7 @@ module Cisco-NX-OS-device { type uint32 { range "0..16777216"; } + default "16777216"; } // cos type @@ -1006,82 +1148,43 @@ module Cisco-NX-OS-device { default "1"; } - typedef action_AdminSt { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Start - enum start { - value 1; - } - - // Stop - enum stop { - value 2; - } - - // Suspend - enum suspend { - value 3; - } - } - default "unknown"; - } - typedef action_Descr { type string; } - // Frequency of the task - typedef action_Freq { - type string; - } - typedef action_OperSt { type enumeration { - - // Scheduled enum scheduled { value 0; + description "Scheduled"; } - - // Processing enum processing { value 1; + description "Processing"; } - - // Completed enum completed { value 2; + description "Completed"; } - - // Cancelled enum cancelled { value 3; + description "Cancelled"; } - - // Failed enum failed { value 4; + description "Failed"; } - - // Indeterminate enum indeterminate { value 5; + description "Indeterminate"; } - - // Suspended enum suspended { value 6; + description "Suspended"; } - - // Crash-Suspect enum crashsuspect { value 7; + description "Crash-Suspect"; } } default "scheduled"; @@ -1104,117 +1207,61 @@ module Cisco-NX-OS-device { // Resuilt history retention time: how long records are // to be kept per rule typedef action_RetentionTime { - type string; + type union { + type string; + type uint64; + } } // Type of the task typedef action_Type { type enumeration { - - // Clear enum clear { value 1; + description "Clear"; } - - // Reset enum reset { value 2; + description "Reset"; } - - // Reload enum reload { value 3; + description "Reload"; } - - // Locate enum locate { value 4; + description "Locate"; } - - // Install enum install { value 5; + description "Install"; } - - // Test enum test { value 6; + description "Test"; } - - // Collect enum collect { value 7; + description "Collect"; } - - // Set Interface In-Service enum interface-in-service { value 8; + description "Set Interface In-Service"; } } default "clear"; } - // Global access controls - typedef actrl_AccControl { - - // bits- Using string - type string; - } - - // Action - typedef actrl_Action { - type vz_Action; - } - - // Rule direction - typedef actrl_Direction { - type enumeration { - - // Uni-directional - enum uni-dir { - value 1; - } - - // Bi-directional - enum bi-dir { - value 2; - } - } - default "uni-dir"; - } - - // Filter id - // @@@ Keep this in sync with vzFltId. - // @@@ Only way to moving FltId from 16 to 32 bits without dropping traffic - // @@@ during upgrade, was to introduce vzFiltId (16 bits) - typedef actrl_FltId { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; - } - } - - // Log clear interval - typedef actrl_LogClrIntvl { - type uint16 { - range "1000..2800"; - } - default "2800"; - } - // Operational state of Rule typedef actrl_OperSt { type enumeration { - - // enabled enum enabled { value 1; + description "enabled"; } - - // disabled enum disabled { value 2; + description "disabled"; } } default "disabled"; @@ -1225,75 +1272,9 @@ module Cisco-NX-OS-device { type vz_GPCTag; } - // Rule id - typedef actrl_RuleId { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; - } - } - - // Filter to Rule ID mapping array - typedef actrl_RuleIdArray { - type mtx_array_uint32; - } - - // Rule ID array index - typedef actrl_RuleIndex { - type uint16 { - range "1..1024"; - } - } - - // Rule priority, this is the priority for a set of rules - typedef actrl_RulePrio { - type uint8 { - range "1..11"; - } - } - - // Rule type - typedef actrl_RuleT { - type enumeration { - - // Tenant - enum tenant { - value 1; - } - - // Management - enum mgmt { - value 2; - } - - // SNMP - enum snmp { - value 3; - } - - // Flood - enum bd_flood { - value 4; - } - - // Vrf - enum vrf_default { - value 5; - } - - // Infra - enum infra { - value 6; - } - } - default "tenant"; - } - // Scope id (24-bit) typedef actrl_ScopeId { - // MAX Converted to int from 0xffffff type uint32 { range "1..16777215"; } @@ -1303,34 +1284,11 @@ module Cisco-NX-OS-device { // Security Label (12-bit) typedef actrl_SecLbl { - // MAX Converted to int from 0xfff type uint16 { range "1..4095"; } } - // Subject represents the entitiy to which the capability constraint gets applied - typedef actrlcap_Subj { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Actrl Rules - enum rule-namespace { - value 1; - } - - // Actrl Scopes - enum scope-namespace { - value 2; - } - } - default "unknown"; - } - typedef address_Email { type string; } @@ -1338,6 +1296,7 @@ module Cisco-NX-OS-device { typedef address_HostNameOrDottedQuad { type string { length "1..256"; + pattern ".*[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } } @@ -1345,30 +1304,31 @@ module Cisco-NX-OS-device { type string; } + // Socket Port Number + typedef address_PortNumber { + type uint16; + } + // Adjacency Flags typedef adjacency_AdjFlags { - // bits- Using string type string; } // Adjacency operational state typedef adjacency_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -1376,15 +1336,13 @@ module Cisco-NX-OS-device { // Database type typedef adjacency_DbT { type enumeration { - - // IP database enum ip { value 1; + description "IP database"; } - - // IPv6 database enum ipv6 { value 2; + description "IPv6 database"; } } default "ip"; @@ -1392,20 +1350,17 @@ module Cisco-NX-OS-device { typedef aggregate_AdminState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -1414,30 +1369,25 @@ module Cisco-NX-OS-device { // Address Family Type typedef aggregate_AfT { type enumeration { - - // Ipv4 unicast address family enum ipv4-ucast { value 0; + description "Ipv4 unicast address family"; } - - // Vpnv4 unicast address family enum vpnv4-ucast { value 1; + description "Vpnv4 unicast address family"; } - - // Ipv6 unicast address family enum ipv6-ucast { value 2; + description "Ipv6 unicast address family"; } - - // Vpnv6 unicast address family enum vpnv6-ucast { value 3; + description "Vpnv6 unicast address family"; } - - // L2-Evpn unicast address family enum l2-evpn { value 4; + description "L2-Evpn unicast address family"; } } default "l2-evpn"; @@ -1445,30 +1395,25 @@ module Cisco-NX-OS-device { typedef aggregate_BfdStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Admin Down enum admin_down { value 1; + description "Admin Down"; } - - // Oper Down enum down { value 2; + description "Oper Down"; } - - // Intialization enum init { value 3; + description "Intialization"; } - - // Up enum up { value 4; + description "Up"; } } default "admin_down"; @@ -1476,15 +1421,13 @@ module Cisco-NX-OS-device { typedef aggregate_BooleanFlag { type enumeration { - - // No enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -1516,20 +1459,17 @@ module Cisco-NX-OS-device { typedef aggregate_ConfTmplStatus { type enumeration { - - // ConfigTmplInactive enum inactive { value 0; + description "ConfigTmplInactive"; } - - // ConfigTmplOperational enum active { value 1; + description "ConfigTmplOperational"; } - - // ConfigTmplFailed enum failed { value 2; + description "ConfigTmplFailed"; } } default "inactive"; @@ -1537,20 +1477,17 @@ module Cisco-NX-OS-device { typedef aggregate_ConfigSourceType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Cli enum cli { value 1; + description "Cli"; } - - // Controller enum controller { value 2; + description "Controller"; } } default "cli"; @@ -1558,25 +1495,21 @@ module Cisco-NX-OS-device { typedef aggregate_ConfigStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ConfigReady enum configReady { value 1; + description "ConfigReady"; } - - // ConfigNotReady enum configNotReady { value 2; + description "ConfigNotReady"; } - - // ConfigPurgeInProgress enum configPurgeInProgress { value 4; + description "ConfigPurgeInProgress"; } } default "configNotReady"; @@ -1599,29 +1532,24 @@ module Cisco-NX-OS-device { typedef aggregate_CtrlrType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // L2Vxlan enum l2-vxlan { value 1; + description "L2Vxlan"; } - - // Vxlan enum vxlan { value 2; + description "Vxlan"; } } default "l2-vxlan"; } - // Default Value computed from unicast typedef aggregate_EpType { - // bits- Using string type string; default "unicast"; } @@ -1632,25 +1560,21 @@ module Cisco-NX-OS-device { typedef aggregate_HostReachabilityMode { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // FloodAndLearn enum floodAndLearn { value 1; + description "FloodAndLearn"; } - - // Controller enum controller { value 2; + description "Controller"; } - - // Bgp enum bgp { value 3; + description "Bgp"; } } default "floodAndLearn"; @@ -1658,20 +1582,17 @@ module Cisco-NX-OS-device { typedef aggregate_IngressRepProtocolType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Static enum static { value 1; + description "Static"; } - - // Bgp enum bgp { value 2; + description "Bgp"; } } default "unknown"; @@ -1679,15 +1600,13 @@ module Cisco-NX-OS-device { typedef aggregate_IntfAssignMode { type enumeration { - - // Dedicated enum dedicated { value 0; + description "Dedicated"; } - - // Shared enum shared { value 1; + description "Shared"; } } } @@ -1699,35 +1618,29 @@ module Cisco-NX-OS-device { typedef aggregate_IntfType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Port enum port { value 1; + description "Port"; } - - // Port Channel enum port-channel { value 2; + description "Port Channel"; } - - // Tunnel enum tunnel { value 3; + description "Tunnel"; } - - // Loopback enum loopback { value 4; + description "Loopback"; } - - // SVI enum svi { value 5; + description "SVI"; } } } @@ -1742,20 +1655,17 @@ module Cisco-NX-OS-device { // Mac type typedef aggregate_MacType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Unicast enum unicast { value 1; + description "Unicast"; } - - // Multicast enum multicast { value 2; + description "Multicast"; } } default "unicast"; @@ -1783,20 +1693,17 @@ module Cisco-NX-OS-device { typedef aggregate_OperState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -1804,25 +1711,21 @@ module Cisco-NX-OS-device { typedef aggregate_ReplicationModeType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ReplicationServer enum replicationServer { value 1; + description "ReplicationServer"; } - - // IngressReplication enum ingressReplication { value 2; + description "IngressReplication"; } - - // IpMulticast enum ipMulticast { value 3; + description "IpMulticast"; } } default "unknown"; @@ -1830,60 +1733,49 @@ module Cisco-NX-OS-device { typedef aggregate_ResourceStatus { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VlanCreated enum vlanCreated { value 1; + description "VlanCreated"; } - - // VlanFailed enum vlanFailed { value 2; + description "VlanFailed"; } - - // VnidCreated enum vnidCreated { value 3; + description "VnidCreated"; } - - // VnidFailed enum vnidFailed { value 4; + description "VnidFailed"; } - - // VlansCarved enum vlansCarved { value 5; + description "VlansCarved"; } - - // VlansNotCarved enum vlansNotCarved { value 6; + description "VlansNotCarved"; } - - // VnidCreationReceived enum vnidCreationReceived { value 7; + description "VnidCreationReceived"; } - - // MyTEPIPPublished enum myTEPIPPublished { value 101; + description "MyTEPIPPublished"; } - - // ControllerIntfNotCarved enum controllerIntfNotCarved { value 201; + description "ControllerIntfNotCarved"; } - - // ControllerIntfCarved enum controllerIntfCarved { value 202; + description "ControllerIntfCarved"; } } default "unknown"; @@ -1892,15 +1784,13 @@ module Cisco-NX-OS-device { // Route target policy type typedef aggregate_RttPType { type enumeration { - - // Import enum import { value 1; + description "Import"; } - - // Export enum export { value 2; + description "Export"; } } default "import"; @@ -1908,75 +1798,62 @@ module Cisco-NX-OS-device { typedef aggregate_TunnelType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VxLanOverIPV4 enum vxlanipv4 { value 1; + description "VxLanOverIPV4"; } - - // VxLanOverIPV6 enum vxlanipv6 { value 2; + description "VxLanOverIPV6"; } - - // NVGRE enum nvgre { value 3; + description "NVGRE"; } } } typedef aggregate_VpcKeepaliveStatus { type enumeration { - - // VpcOobUnknown enum VpcOobUnknown { value 0; + description "VpcOobUnknown"; } - - // VpcOobDisabled enum VpcOobDisabled { value 1; + description "VpcOobDisabled"; } - - // VpcOobPeerAlive enum VpcOobPeerAlive { value 2; + description "VpcOobPeerAlive"; } - - // VpcOobPeerNotAlive enum VpcOobPeerNotAlive { value 3; + description "VpcOobPeerNotAlive"; } - - // VpcOobPeerAliveDomainMismatch enum VpcOobPeerAliveDomainMismatch { value 4; + description "VpcOobPeerAliveDomainMismatch"; } - - // VpcOobSuspended enum VpcOobSuspended { value 5; + description "VpcOobSuspended"; } - - // VpcOobNotOperational enum VpcOobNotOperational { value 6; + description "VpcOobNotOperational"; } - - // VpcOobSuspendedVrf enum VpcOobSuspendedVrf { value 7; + description "VpcOobSuspendedVrf"; } - - // VpcOobMisconfig enum VpcOobMisconfig { value 8; + description "VpcOobMisconfig"; } } default "VpcOobUnknown"; @@ -1984,15 +1861,13 @@ module Cisco-NX-OS-device { typedef aggregate_VpcOperStatus { type enumeration { - - // down enum down { value 0; + description "down"; } - - // up enum up { value 1; + description "up"; } } default "down"; @@ -2000,25 +1875,21 @@ module Cisco-NX-OS-device { typedef aggregate_VpcPeerLinkStatus { type enumeration { - - // VpcPeerNolink enum VpcPeerNolink { value 0; + description "VpcPeerNolink"; } - - // VpcPeerLinkDown enum VpcPeerLinkDown { value 1; + description "VpcPeerLinkDown"; } - - // VpcPeerOk enum VpcPeerOk { value 2; + description "VpcPeerOk"; } - - // VpcPeerNotfound enum VpcPeerNotfound { value 3; + description "VpcPeerNotfound"; } } default "VpcPeerNolink"; @@ -2027,20 +1898,17 @@ module Cisco-NX-OS-device { // Fabric Forwarding Mode typedef aggregate_fabFwdMode { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Anycast Gateway enum anycastgw { value 1; + description "Anycast Gateway"; } - - // ProxyGw enum proxygw { value 2; + description "ProxyGw"; } } default "standard"; @@ -2057,15 +1925,13 @@ module Cisco-NX-OS-device { // Mode typedef analytics_CModeT { type enumeration { - - // ACI mode enum aci { value 0; + description "ACI mode"; } - - // Standalone mode enum standalone { value 1; + description "Standalone mode"; } } default "aci"; @@ -2089,30 +1955,25 @@ module Cisco-NX-OS-device { // Collector version typedef analytics_CollVersion { type enumeration { - - // Version 5 enum v5 { value 1; + description "Version 5"; } - - // Version 9 enum v9 { value 2; + description "Version 9"; } - - // Cisco proprietary version 1 enum cisco-v1 { value 3; + description "Cisco proprietary version 1"; } } default "cisco-v1"; } // Collect params - // Default Value computed from src-intf typedef analytics_CollectParams { - // bits- Using string type string; default "src-intf"; } @@ -2120,22 +1981,20 @@ module Cisco-NX-OS-device { // Collector identifier typedef analytics_CollectorId { type uint32 { - range "0..65535"; + range "0..4294967295"; } } // Default filtering policy type typedef analytics_DefPolicyT { type enumeration { - - // Permit enum permit { value 0; + description "Permit"; } - - // Deny enum deny { value 1; + description "Deny"; } } default "permit"; @@ -2144,20 +2003,17 @@ module Cisco-NX-OS-device { // Direction type typedef analytics_DirectionT { type enumeration { - - // Ingress enum in { value 1; + description "Ingress"; } - - // Egress enum out { value 2; + description "Egress"; } - - // Both enum both { value 3; + description "Both"; } } default "in"; @@ -2166,20 +2022,17 @@ module Cisco-NX-OS-device { // IP filter type typedef analytics_FltType { type enumeration { - - // Ipv4 type enum ipv4 { value 1; + description "Ipv4 type"; } - - // Ipv6 type enum ipv6 { value 2; + description "Ipv6 type"; } - - // CE type enum ce { value 3; + description "CE type"; } } default "ipv4"; @@ -2224,26 +2077,21 @@ module Cisco-NX-OS-device { } // Match params - // Default Value computed from src-ipv4 typedef analytics_MatchParams { - // bits- Using string type string; - default "src-ipv4"; } // Mode typedef analytics_ModeT { type enumeration { - - // Analytics mode enum analytics { value 0; + description "Analytics mode"; } - - // Netflow mode enum netflow { value 1; + description "Netflow mode"; } } default "netflow"; @@ -2257,21 +2105,12 @@ module Cisco-NX-OS-device { default "1500"; } - // Operational state of Rule - typedef analytics_OperSt { - type enumeration { - - // enabled - enum enabled { - value 1; - } - - // disabled - enum disabled { - value 2; - } + // Oclass ID + typedef analytics_OclassId { + type uint16 { + range "0..256"; } - default "disabled"; + default "0"; } // Payload length identifier @@ -2284,7 +2123,6 @@ module Cisco-NX-OS-device { // Payload length typedef analytics_PayloadLenT { - // MAX Converted to int from 0x3fff type uint32 { range "0..16383"; } @@ -2329,6 +2167,21 @@ module Cisco-NX-OS-device { default "0"; } + // Ability to configure latency resolution + typedef analytics_configLatencyResFactorT { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; + } + // Create Count typedef analytics_createCount { type uint32 { @@ -2369,30 +2222,41 @@ module Cisco-NX-OS-device { default "4"; } + // Ability to expose oport/oclass information + typedef analytics_oportSupportT { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; + } + // Adjacency Flags typedef arp_AdjFlags { - // bits- Using string type string; } // Adjacency operational state typedef arp_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -2423,29 +2287,25 @@ module Cisco-NX-OS-device { // Config Error typedef arp_ConfigErr { - // bits- Using string type string; } // Config Error Inst MO typedef arp_ConfigErrInst { - // bits- Using string type string; } // Database type typedef arp_DbT { type enumeration { - - // IP database enum ip { value 1; + description "IP database"; } - - // SupCache database enum supcache { value 2; + description "SupCache database"; } } default "ip"; @@ -2454,25 +2314,21 @@ module Cisco-NX-OS-device { // Event History Size typedef arp_EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -2481,145 +2337,117 @@ module Cisco-NX-OS-device { // Event Log Type typedef arp_EventType { type enumeration { - - // CLI Events enum cli { value 0; + description "CLI Events"; } - - // Client Events enum client-events { value 1; + description "Client Events"; } - - // Client Errors enum client-errors { value 2; + description "Client Errors"; } - - // Control Events enum control-events { value 3; + description "Control Events"; } - - // Internal Events enum internal-events { value 4; + description "Internal Events"; } - - // Internal Errors enum internal-errors { value 5; + description "Internal Errors"; } - - // High Availability Events enum high-availability { value 6; + description "High Availability Events"; } - - // IP Sync Events enum ip-sync { value 7; + description "IP Sync Events"; } - - // ARP Local Cache Events enum local-cache-events { value 8; + description "ARP Local Cache Events"; } - - // ARP Local Cache Errors enum local-cache-errors { value 9; + description "ARP Local Cache Errors"; } - - // Packet Messages Logs enum pkt-messages { value 10; + description "Packet Messages Logs"; } - - // SNMP Events enum snmp { value 11; + description "SNMP Events"; } - - // ARP Suppression Events enum suppress-events { value 12; + description "ARP Suppression Events"; } - - // ARP Suppression Errors enum suppress-errors { value 13; + description "ARP Suppression Errors"; } - - // Sync Event Logs enum sync { value 14; + description "Sync Event Logs"; } - - // Controller MAC-IP route error logs enum arp-controller-errors { value 15; + description "Controller MAC-IP route error logs"; } - - // DME debug event enum arp-dme-event { value 16; + description "DME debug event"; } - - // Adjacency Control Logs enum adjacency-control { value 101; + description "Adjacency Control Logs"; } - - // Adjacency Error Logs enum adjacency-errors { value 102; + description "Adjacency Error Logs"; } - - // Adjacency IPC Logs enum adjacency-ipc-events { value 103; + description "Adjacency IPC Logs"; } - - // Adjacency Stats Logs enum adjacency-stats { value 104; + description "Adjacency Stats Logs"; } - - // Adjacency High Availability Logs enum adjacency-high-availability { value 105; + description "Adjacency High Availability Logs"; } - - // Adjacency CLI Logs enum adjacency-cli { value 106; + description "Adjacency CLI Logs"; } - - // Adjacency SDB Logs enum adjacency-sdb { value 107; + description "Adjacency SDB Logs"; } - - // Adjacency SNMP Logs enum adjacency-snmp { value 108; + description "Adjacency SNMP Logs"; } - - // Adjacency Net Broker Logs enum adjacency-netbroker { value 109; + description "Adjacency Net Broker Logs"; } - - // Adjacency DME event debugs enum am-dme-event { value 110; + description "Adjacency DME event debugs"; } - - // Adjacency event debugs enum am-event { value 111; + description "Adjacency event debugs"; } } } @@ -2632,48 +2460,48 @@ module Cisco-NX-OS-device { default "600"; } + // COS for ARP packet + typedef arp_IpArpCos { + type uint32 { + range "0..7"; + } + default "6"; + } + // Logging Level typedef arp_LoggingLevel { type enumeration { - - // Emergency enum emergency { value 0; + description "Emergency"; } - - // Alert enum alert { value 1; + description "Alert"; } - - // Critical enum critical { value 2; + description "Critical"; } - - // Error enum error { value 3; + description "Error"; } - - // Warning enum warning { value 4; + description "Warning"; } - - // Notification enum notification { value 5; + description "Notification"; } - - // Informational enum informational { value 6; + description "Informational"; } - - // Debug enum debug { value 7; + description "Debug"; } } default "error"; @@ -2700,28 +2528,6 @@ module Cisco-NX-OS-device { default "180"; } - // Opcode - typedef arp_Opcode { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // ARP request - enum req { - value 1; - } - - // ARP reply - enum reply { - value 2; - } - } - default "unspecified"; - } - // RARP Fabric Forwarding Rate Limit typedef arp_RarpForwadingRate { type uint16 { @@ -2733,20 +2539,17 @@ module Cisco-NX-OS-device { // Static Adjacency operational state typedef arp_StAdjOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Incomplete enum up { value 1; + description "Incomplete"; } - - // Unspecified enum unspecified { value 10; + description "Unspecified"; } } default "unspecified"; @@ -2755,60 +2558,49 @@ module Cisco-NX-OS-device { // Static Adjacency operational state qualifier typedef arp_StAdjOperStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Subnet mismatch enum subnet-mismatch { value 1; + description "Subnet mismatch"; } - - // Invalid MAC enum invalid-mac { value 2; + description "Invalid MAC"; } - - // Invalid IP enum invalid-ip { value 3; + description "Invalid IP"; } - - // Invalid VRF enum invalid-vrf { value 4; + description "Invalid VRF"; } - - // Own MAC enum own-mac { value 5; + description "Own MAC"; } - - // Interface down enum if-down { value 6; + description "Interface down"; } - - // Up enum up { value 7; + description "Up"; } - - // Invalid Interface enum invalid-if { value 8; + description "Invalid Interface"; } - - // Invalid CLI Data enum invalid-clidata { value 9; + description "Invalid CLI Data"; } - - // No Memory enum no-memory { value 10; + description "No Memory"; } } default "unspecified"; @@ -2817,32 +2609,27 @@ module Cisco-NX-OS-device { // Suppression Cache flag typedef arp_SupCacheFlag { - // bits- Using string type string; } // Suppression ARP Mode typedef arp_SuppressArpMode { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // L2SuppressARP enum l2suppressarp { value 1; + description "L2SuppressARP"; } - - // L2L3SuppressARP enum l2l3suppressarp { value 2; + description "L2L3SuppressARP"; } - - // Invalid enum invalid { value 3; + description "Invalid"; } } } @@ -2879,6 +2666,12 @@ module Cisco-NX-OS-device { default "1500"; } + typedef bd_AclName { + type string { + length "0..64"; + } + } + // Default SVI autoState typedef bd_DefaultSVIAutoState { type enumeration { @@ -2892,18 +2685,58 @@ module Cisco-NX-OS-device { default "enable"; } + typedef bd_Description { + type string { + length "0..64"; + } + } + + typedef bd_MonitorName { + type string { + length "0..64"; + } + } + + typedef bd_QueueId { + type uint16 { + range "0..7"; + } + } + + // Actual Values are from 64 + // To be controlled in the BI logic + typedef bd_SamplingMbPackets { + type uint32 { + range "0..1024"; + } + } + + // Actual Range is from 122 to 100 + // To be controlled in the BI logic + typedef bd_SamplingMbRate { + type uint32 { + range "0..100000"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef bd_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + // Address family type typedef bfd_AfT { type enumeration { - - // IPv4 address family enum ipv4 { value 1; + description "IPv4 address family"; } - - // IPv6 address family enum ipv6 { value 2; + description "IPv6 address family"; } } default "ipv4"; @@ -2917,7 +2750,6 @@ module Cisco-NX-OS-device { // Application session flags typedef bfd_AppFlags { - // bits- Using string type string; } @@ -2938,6 +2770,21 @@ module Cisco-NX-OS-device { } } + // BFD AuthInterop Cfg + typedef bfd_AuthInterop { + type enumeration { + enum enable { + value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "disable"; + } + // Authentication key typedef bfd_AuthKey { type string { @@ -2960,20 +2807,17 @@ module Cisco-NX-OS-device { // Authentication type typedef bfd_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "No authentication"; } - - // Keyed SHA1 enum sha1 { value 4; + description "Keyed SHA1"; } - - // Met Keyed SHA1 enum met-sha1 { value 5; + description "Met Keyed SHA1"; } } default "none"; @@ -2990,50 +2834,41 @@ module Cisco-NX-OS-device { // Diag Code typedef bfd_DiagCode { type enumeration { - - // No Diagnostic enum none { value 0; + description "No Diagnostic"; } - - // Control Detection Time Expired enum detect-timeout { value 1; + description "Control Detection Time Expired"; } - - // Echo Function Failed enum echo-fail { value 2; + description "Echo Function Failed"; } - - // Neighbor Signaled Session Down enum nbr-signal-down { value 3; + description "Neighbor Signaled Session Down"; } - - // Forwarding Plane Reset enum fwd-plane-reset { value 4; + description "Forwarding Plane Reset"; } - - // Path Down enum path-down { value 5; + description "Path Down"; } - - // Concatenated Path Down enum concat-path-down { value 6; + description "Concatenated Path Down"; } - - // Administratively Down enum admin-down { value 7; + description "Administratively Down"; } - - // Reverse Concatenated Path Down enum rev-concat-path-down { value 8; + description "Reverse Concatenated Path Down"; } } } @@ -3053,7 +2888,6 @@ module Cisco-NX-OS-device { typedef bfd_IfControl { - // bits- Using string type string; } @@ -3081,6 +2915,22 @@ module Cisco-NX-OS-device { default "0"; } + // Multihop Minimum rx interval (in ms) + typedef bfd_MhMinRxIntvl { + type uint16 { + range "250..999"; + } + default "250"; + } + + // Multihop Minimum tx interval (in ms) + typedef bfd_MhMinTxIntvl { + type uint16 { + range "250..999"; + } + default "250"; + } + // Minimum rx interval (in ms) typedef bfd_MinRxIntvl { type uint16 { @@ -3100,25 +2950,21 @@ module Cisco-NX-OS-device { // Oper State typedef bfd_OperSt { type enumeration { - - // AdminDown enum admin-down { value 0; + description "AdminDown"; } - - // Down enum down { value 1; + description "Down"; } - - // Init enum init { value 2; + description "Init"; } - - // Up enum up { value 3; + description "Up"; } } } @@ -3126,7 +2972,6 @@ module Cisco-NX-OS-device { // Packet flags typedef bfd_PktFlags { - // bits- Using string type string; } @@ -3165,15 +3010,13 @@ module Cisco-NX-OS-device { // BFD Cfg State typedef bfd_TrkMbrLnk { type enumeration { - - // Enabled enum enable { value 1; + description "Enabled"; } - - // Disabled enum disable { value 0; + description "Disabled"; } } default "disable"; @@ -3182,22 +3025,19 @@ module Cisco-NX-OS-device { // Additional Paths capability in DomAf typedef bgp_AddlPathCapT { - // bits- Using string type string; } // Administrative state typedef bgp_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "disabled"; @@ -3213,15 +3053,13 @@ module Cisco-NX-OS-device { // Advertise l2vpn evpn typedef bgp_AdvertL2vpnEvpn { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -3229,20 +3067,17 @@ module Cisco-NX-OS-device { typedef bgp_AdvtMapCondition { type enumeration { - - // no options enum none { value 0; + description "no options"; } - - // Exist Route Map enum exist { value 1; + description "Exist Route Map"; } - - // Non-Exist Route Map enum non-exist { value 2; + description "Non-Exist Route Map"; } } default "none"; @@ -3251,80 +3086,65 @@ module Cisco-NX-OS-device { // Address family type typedef bgp_AfT { type enumeration { - - // IPv4 unicast address family enum ipv4-ucast { value 1; + description "IPv4 unicast address family"; } - - // IPv4 multicast address family enum ipv4-mcast { value 2; + description "IPv4 multicast address family"; } - - // Vpnv4 unicast address family enum vpnv4-ucast { value 3; + description "Vpnv4 unicast address family"; } - - // IPv6 unicast address family enum ipv6-ucast { value 5; + description "IPv6 unicast address family"; } - - // IPv6 multicast address family enum ipv6-mcast { value 6; + description "IPv6 multicast address family"; } - - // Vpnv6 unicast address family enum vpnv6-ucast { value 7; + description "Vpnv6 unicast address family"; } - - // L2Vpn EVpn address family enum l2vpn-evpn { value 9; + description "L2Vpn EVpn address family"; } - - // IPv4 labeled unicast address family enum ipv4-lucast { value 10; + description "IPv4 labeled unicast address family"; } - - // IPv6 labeled unicast address family enum ipv6-lucast { value 11; + description "IPv6 labeled unicast address family"; } - - // Link state address family enum lnkstate { value 12; + description "Link state address family"; } - - // IPv4 mvpn address family enum ipv4-mvpn { value 13; + description "IPv4 mvpn address family"; } - - // IPv6 mvpn address family enum ipv6-mvpn { value 14; + description "IPv6 mvpn address family"; } - - // L2Vpn vpls address family enum l2vpn-vpls { value 15; + description "L2Vpn vpls address family"; } - - // IPv4 mdt address family enum ipv4-mdt { value 16; + description "IPv4 mdt address family"; } - - // Vpnv6 multicast address family enum vpnv6-mcast { value 8; + description "Vpnv6 multicast address family"; } } default "ipv4-ucast"; @@ -3337,6 +3157,21 @@ module Cisco-NX-OS-device { } } + // BGP SRv6 SID Allocation mode + typedef bgp_AllocMod { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum per-vrf { + value 1; + description "Allocate SRv6 SID per VRF"; + } + } + default "none"; + } + // AS path database size typedef bgp_AsPathDbSz { type uint32; @@ -3345,15 +3180,13 @@ module Cisco-NX-OS-device { // AS segment type typedef bgp_AsSegT { type enumeration { - - // Sequence enum sequence { value 1; + description "Sequence"; } - - // Set enum set { value 2; + description "Set"; } } default "set"; @@ -3362,15 +3195,13 @@ module Cisco-NX-OS-device { // AS Set typedef bgp_AsSet { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -3384,30 +3215,60 @@ module Cisco-NX-OS-device { // Customizes AS_PATH attribute for routes received from eBGP neighbor typedef bgp_AsnPropagation { type enumeration { - - // no options enum none { value 0; + description "no options"; } - - // no-prepend enum no-prepend { value 1; + description "no-prepend"; } - - // no-prepend+replace-as enum replace-as { value 2; + description "no-prepend+replace-as"; } - - // noPrepend+replace-as+dual-as enum dual-as { value 3; + description "noPrepend+replace-as+dual-as"; } } default "none"; } + // Attribute Filtering control direction + typedef bgp_AttrFltrDir { + type enumeration { + enum in { + value 1; + description "Perform path-attribute filtering on inbound updates"; + } + enum out { + value 2; + description "Perform path-attribute filtering on outbound updates"; + } + } + default "in"; + } + + // BGP Path Attribute Filtering Action Type + typedef bgp_AttrFltrType { + type enumeration { + enum treataswithdraw { + value 0; + description "Treat the filtered BGP Update Message as withdrawn"; + } + enum discard { + value 1; + description "Discard the attribute in the filtered BGP Update Message"; + } + } + } + + // BGP Attribute Types. + typedef bgp_AttrTypes { + type uint16; + } + // Attribute database size typedef bgp_AttribDbSz { type uint32; @@ -3421,18 +3282,278 @@ module Cisco-NX-OS-device { default "300"; } + typedef bgp_BgpDscp { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 cs1 { + value 8; + description "CS1(precedence 1) dscp (001000)"; + } + enum 9 { + value 9; + description "9"; + } + enum af11 { + value 10; + description "AF11 dscp (001010)"; + } + enum 11 { + value 11; + description "11"; + } + enum af12 { + value 12; + description "AF12 dscp (001100)"; + } + enum 13 { + value 13; + description "13"; + } + enum af13 { + value 14; + description "AF13 dscp (001110)"; + } + enum 15 { + value 15; + description "15"; + } + enum cs2 { + value 16; + description "CS2(precedence 2) dscp (010000)"; + } + enum 17 { + value 17; + description "17"; + } + enum af21 { + value 18; + description "AF21 dscp (010010)"; + } + enum 19 { + value 19; + description "19"; + } + enum af22 { + value 20; + description "AF22 dscp (010100)"; + } + enum 21 { + value 21; + description "21"; + } + enum af23 { + value 22; + description "AF23 dscp (010110)"; + } + enum 23 { + value 23; + description "23"; + } + enum cs3 { + value 24; + description "CS3(precedence 3) dscp (011000)"; + } + enum 25 { + value 25; + description "25"; + } + enum af31 { + value 26; + description "AF31 dscp (011010)"; + } + enum 27 { + value 27; + description "27"; + } + enum af32 { + value 28; + description "AF32 dscp (011100)"; + } + enum 29 { + value 29; + description "29"; + } + enum af33 { + value 30; + description "AF33 dscp (011110)"; + } + enum 31 { + value 31; + description "31"; + } + enum cs4 { + value 32; + description "CS4(precedence 4) dscp (100000)"; + } + enum 33 { + value 33; + description "33"; + } + enum af41 { + value 34; + description "AF41 dscp (100010)"; + } + enum 35 { + value 35; + description "35"; + } + enum af42 { + value 36; + description "AF42 dscp (100100)"; + } + enum 37 { + value 37; + description "37"; + } + enum af43 { + value 38; + description "AF43 dscp (100110)"; + } + enum 39 { + value 39; + description "39"; + } + enum cs5 { + value 40; + description "CS5(precedence 5) dscp (101000)"; + } + enum 41 { + value 41; + description "41"; + } + enum 42 { + value 42; + description "42"; + } + enum 43 { + value 43; + description "43"; + } + enum 44 { + value 44; + description "44"; + } + enum 45 { + value 45; + description "45"; + } + enum ef { + value 46; + description "EF dscp (101110)"; + } + enum 47 { + value 47; + description "47"; + } + enum cs6 { + value 48; + description "CS6(precedence 6) dscp (110000)"; + } + enum 49 { + value 49; + description "49"; + } + enum 50 { + value 50; + description "50"; + } + enum 51 { + value 51; + description "51"; + } + enum 52 { + value 52; + description "52"; + } + enum 53 { + value 53; + description "53"; + } + enum 54 { + value 54; + description "54"; + } + enum 55 { + value 55; + description "55"; + } + enum cs7 { + value 56; + description "CS7(precedence 7) dscp (111000)"; + } + enum 57 { + value 57; + description "57"; + } + enum 58 { + value 58; + description "58"; + } + enum 59 { + value 59; + description "59"; + } + enum 60 { + value 60; + description "60"; + } + enum 61 { + value 61; + description "61"; + } + enum 62 { + value 62; + description "62"; + } + enum 63 { + value 63; + description "63"; + } + } + default "cs6"; + } + // BMP server state typedef bgp_BmpSt { type enumeration { - - // Enabled enum enabled { value 0; + description "Enabled"; } - - // Disabled enum disabled { value 1; + description "Disabled"; } } default "enabled"; @@ -3441,14 +3562,12 @@ module Cisco-NX-OS-device { // Additional Paths capability in Neighbor Af typedef bgp_CapAddlPathCapT { - // bits- Using string type string; } // Capability type typedef bgp_CapT { - // bits- Using string type string; } @@ -3466,10 +3585,17 @@ module Cisco-NX-OS-device { // Connection info typedef bgp_ConnMode { - // bits- Using string type string; } + // Discarded Attribute Length + typedef bgp_DiscardedAttrLen { + + type uint32 { + range "0..4294967295"; + } + } + // BGP Distance typedef bgp_Distance { type uint16 { @@ -3485,20 +3611,17 @@ module Cisco-NX-OS-device { // Domain operational state typedef bgp_DomOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "VRF Operationally up"; } - - // Down enum down { value 2; + description "VRF Operationally down"; } } default "unknown"; @@ -3507,20 +3630,17 @@ module Cisco-NX-OS-device { // Egress Peer Engineering EPE for neighbor status typedef bgp_EgressPeerEng { type enumeration { - - // Disabled enum none { value 0; + description "Disabled"; } - - // Egress Peer Engineering Enabled enum enabled { value 1; + description "Egress Peer Engineering Enabled"; } - - // Advertise Adjacency-SIDs for multi-hop neighbor paths enum enabled-adj-sid { value 2; + description "Advertise Adjacency-SIDs for multi-hop neighbor paths"; } } default "none"; @@ -3532,35 +3652,33 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // Cli buffer enum cli { value 1; + description "Cli buffer"; } - - // Events buffer enum events { value 2; + description "Events buffer"; } - - // Periodic buffer enum periodic { value 3; + description "Periodic buffer"; } - - // Detailed buffer enum detail { value 4; + description "Detailed buffer"; } - - // Errors buffer enum errors { value 5; + description "Errors buffer"; } - - // Objstore buffer enum objstore { value 6; + description "Objstore buffer"; + } + enum socket { + value 7; + description "Socket buffer"; } } default "none"; @@ -3569,45 +3687,43 @@ module Cisco-NX-OS-device { // EVPN route-type typedef bgp_EvpnRtType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Ethernet Auto-Discovery route enum a-d { value 1; + description "Ethernet Auto-Discovery route"; } - - // MAC/IP Advertisement route enum mac-ip { value 2; + description "MAC/IP Advertisement route"; } - - // Inclusive Multicast Ethernet Tag route enum imet { value 3; + description "Inclusive Multicast Ethernet Tag route"; } - - // Ethernet Segment route enum eth-seg { value 4; + description "Ethernet Segment route"; } - - // IP Prefix route enum ip-pfx { value 5; + description "IP Prefix route"; } } default "none"; } + // Filter State type for Path-Attribute Filtering + typedef bgp_FltrSt { + type nw_AdminSt; + default "enabled"; + } + // Graceful restart controls - // Default Value computed from complete typedef bgp_GrCtrl { - // bits- Using string type string; default "complete"; } @@ -3640,15 +3756,13 @@ module Cisco-NX-OS-device { // MOs PeerCont and SessionCont). typedef bgp_InheritContPeerCtrlType { - // bits- Using string type string; } - // Inherit template peer-policy control bits. (Please refer + // Inherit template peer-policy control gigabits. (Please refer // to MO PolicyCont). typedef bgp_InheritContPeerPolicyCtrlType { - // bits- Using string type string; } @@ -3677,10 +3791,8 @@ module Cisco-NX-OS-device { } // Link Attribute TLV flags for Link-state - // Default Value computed from none typedef bgp_LnkLsAttrFlags { - // bits- Using string type string; default "none"; } @@ -3688,20 +3800,17 @@ module Cisco-NX-OS-device { // Log Neighbor changes typedef bgp_LogNbrSt { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Enable enum enable { value 1; + description "Enable"; } - - // Disable enum disable { value 2; + description "Disable"; } } default "none"; @@ -3710,15 +3819,13 @@ module Cisco-NX-OS-device { // Link-State status typedef bgp_LsAdminSt { type enumeration { - - // Inactive enum inactive { value 0; + description "Inactive"; } - - // Active enum active { value 1; + description "Active"; } } default "inactive"; @@ -3727,25 +3834,21 @@ module Cisco-NX-OS-device { // Link-State attribute entry type typedef bgp_LsAttrEntryType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Peer Node Segment Identifier enum peer-node-sid { value 1101; + description "Peer Node Segment Identifier"; } - - // Peer Adjacency Segment Identifier enum peer-adj-sid { value 1102; + description "Peer Adjacency Segment Identifier"; } - - // Peer Set Segment Identifier enum peer-set-sid { value 1103; + description "Peer Set Segment Identifier"; } } default "none"; @@ -3754,30 +3857,25 @@ module Cisco-NX-OS-device { // Link-State NLRI Type typedef bgp_LsNlriType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Node NLRI enum node { value 1; + description "Node NLRI"; } - - // Link NLRI enum link { value 2; + description "Link NLRI"; } - - // IPv4 Topology Prefix NLRI enum ipv4-topo { value 3; + description "IPv4 Topology Prefix NLRI"; } - - // IPv6 Topology Prefix NLRI enum ipv6-topo { value 4; + description "IPv6 Topology Prefix NLRI"; } } default "none"; @@ -3786,45 +3884,37 @@ module Cisco-NX-OS-device { // Link-State Protocol Identifier typedef bgp_LsProtoId { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // IS-IS Level 1 enum isis-l1 { value 1; + description "IS-IS Level 1"; } - - // IS-IS Level 2 enum isis-l2 { value 2; + description "IS-IS Level 2"; } - - // OSPFv2 enum ospf-v2 { value 3; + description "OSPFv2"; } - - // Direct enum direct { value 4; + description "Direct"; } - - // Static configuration enum static { value 5; + description "Static configuration"; } - - // OSPFv3 enum ospf-v3 { value 6; + description "OSPFv3"; } - - // Egress Peer Engineering enum epe { value 7; + description "Egress Peer Engineering"; } } default "none"; @@ -3833,80 +3923,65 @@ module Cisco-NX-OS-device { // Major notify error typedef bgp_MajNotifErr { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Header Error enum hdr-err { value 1; + description "Header Error"; } - - // Open Message Error enum open-msg-err { value 2; + description "Open Message Error"; } - - // Update Message Error enum upd-msg-err { value 3; + description "Update Message Error"; } - - // Holdtimer Expired enum hold-timer-exp { value 4; + description "Holdtimer Expired"; } - - // FSM Error enum fsm-err { value 5; + description "FSM Error"; } - - // Cease Error enum cease-err { value 6; + description "Cease Error"; } - - // Capability Message Error enum cap-msg-err { value 7; + description "Capability Message Error"; } - - // Process Restart Error enum process-restart-err { value 101; + description "Process Restart Error"; } - - // FD Read Error enum fd-read-err { value 102; + description "FD Read Error"; } - - // FD Ioctl Error enum fd-ioctl-err { value 103; + description "FD Ioctl Error"; } - - // Peer Closed Session Error enum peer-close-sess-err { value 104; + description "Peer Closed Session Error"; } - - // Peer Received Notification Error enum rcvd-notif-err { value 105; + description "Peer Received Notification Error"; } - - // Received Duplicate Connection Request enum rcvd-dup-conn-req { value 106; + description "Received Duplicate Connection Request"; } - - // Dynamic Capability no Buffer enum dyn-cap-no-buf { value 107; + description "Dynamic Capability no Buffer"; } } } @@ -3941,20 +4016,17 @@ module Cisco-NX-OS-device { // Action when the prefixes crosses the maximum limit typedef bgp_MaxPfxAct { type enumeration { - - // Log enum log { value 1; + description "Log"; } - - // Shutdown enum shut { value 2; + description "Shutdown"; } - - // Restart enum restart { value 3; + description "Restart"; } } default "shut"; @@ -3964,7 +4036,6 @@ module Cisco-NX-OS-device { // prefix limit is reached typedef bgp_MaxPfxDuration { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -3998,290 +4069,233 @@ module Cisco-NX-OS-device { // Minor notify error typedef bgp_MinNotifErr { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Unspecified Msg Header Error enum unspecified-msg-hdr-err { value 1; + description "Unspecified Msg Header Error"; } - - // Connection not Synchronized enum conn-not-synced { value 2; + description "Connection not Synchronized"; } - - // Bad Message Length enum bad-msg-len { value 3; + description "Bad Message Length"; } - - // Bad Message Type enum bad-msg-type { value 4; + description "Bad Message Type"; } - - // Unknown Message Header Error enum unknown-msg-hdr-err { value 5; + description "Unknown Message Header Error"; } - - // Unspecified Open Error enum unspecified-open-err { value 6; + description "Unspecified Open Error"; } - - // Unsupported Version enum unsupp-version { value 7; + description "Unsupported Version"; } - - // Bad Peer AS enum bad-peer-as { value 8; + description "Bad Peer AS"; } - - // Bad Peer Router ID enum bad-peer-rtrid { value 9; + description "Bad Peer Router ID"; } - - // Unsupported Optional Parameter enum unsupp-opt-param { value 10; + description "Unsupported Optional Parameter"; } - - // Authentication Error enum auth-err { value 11; + description "Authentication Error"; } - - // Unacceptable Holdtime enum bad-holdtime { value 12; + description "Unacceptable Holdtime"; } - - // Unsupported Capability enum unsupp-cap { value 13; + description "Unsupported Capability"; } - - // Unknown Open Header Error enum unknown-open-hdr-err { value 14; + description "Unknown Open Header Error"; } - - // Unspecified Update Error enum unspecified-update-err { value 15; + description "Unspecified Update Error"; } - - // Malformed Attribute List enum malformed-attr-list { value 16; + description "Malformed Attribute List"; } - - // Unrecognized Wellknown Attr enum unrecognized-wellknown-attr { value 17; + description "Unrecognized Wellknown Attr"; } - - // Missing Well-known Attribute enum missing-wellknown-attr { value 18; + description "Missing Well-known Attribute"; } - - // Attribute Flags Error enum attr-flags-err { value 19; + description "Attribute Flags Error"; } - - // Attribute Length Error enum attr-len-err { value 20; + description "Attribute Length Error"; } - - // Invalid Origin Attribute enum invalid-origin-attr { value 21; + description "Invalid Origin Attribute"; } - - // Bgp AS Routing Loop Error enum as-loop-err { value 22; + description "Bgp AS Routing Loop Error"; } - - // Invalid Next-hop Attribute enum invalid-nh-attr { value 23; + description "Invalid Next-hop Attribute"; } - - // Optional Attribute Error enum opt-attr-err { value 24; + description "Optional Attribute Error"; } - - // Invalid Network Field enum invalid-nw-field { value 25; + description "Invalid Network Field"; } - - // Malformed AS Path enum bad-as-path { value 26; + description "Malformed AS Path"; } - - // Unknown Update Header Error enum unknown-update-hdr-err { value 27; + description "Unknown Update Header Error"; } - - // Unspecified Cease Error enum unspecified-cease-err { value 28; + description "Unspecified Cease Error"; } - - // Maximum Prefix Count enum max-pfx-count-err { value 29; + description "Maximum Prefix Count"; } - - // Administratively Shutdown enum admin-shut { value 30; + description "Administratively Shutdown"; } - - // Peer Deconfigured enum peer-decfg { value 31; + description "Peer Deconfigured"; } - - // Session Cleared enum session-cleared { value 32; + description "Session Cleared"; } - - // Connection Rejected enum conn-rej { value 33; + description "Connection Rejected"; } - - // Other Configuration Change Error enum other-cfg-chg { value 34; + description "Other Configuration Change Error"; } - - // Connection Collision Resolution enum conn-coll-resolution { value 35; + description "Connection Collision Resolution"; } - - // Out of Resource enum out-of-rsrc { value 36; + description "Out of Resource"; } - - // Dynamic Capability Configuration Change enum dyn-cap-cfg-chg { value 37; + description "Dynamic Capability Configuration Change"; } - - // TTL Configuration Change enum ttl-cfg-chg { value 38; + description "TTL Configuration Change"; } - - // TTL Security Configuration Change enum ttl-security-cfg-chg { value 39; + description "TTL Security Configuration Change"; } - - // Passive Neighbor Configuration Change enum passive-neighbor-cfg-chg { value 40; + description "Passive Neighbor Configuration Change"; } - - // Address-family Configuration Change enum af-cfg-chg { value 41; + description "Address-family Configuration Change"; } - - // Route-reflector Configuration Change enum rr-cfg-chg { value 42; + description "Route-reflector Configuration Change"; } - - // Router-id Configuration Change enum rtrid-cfg-chg { value 43; + description "Router-id Configuration Change"; } - - // Confederation Id Change enum confed-id-chg { value 44; + description "Confederation Id Change"; } - - // Confederation Membership Change enum confed-membership-change { value 45; + description "Confederation Membership Change"; } - - // Graceful-restart Configuration Change enum gr-cfg-chg { value 46; + description "Graceful-restart Configuration Change"; } - - // Soft-reconfiguration Change enum soft-recfg-chg { value 47; + description "Soft-reconfiguration Change"; } - - // Update-source Interface Change enum updatesrc-if-chg { value 48; + description "Update-source Interface Change"; } - - // Local-as Change enum localas-chg { value 49; + description "Local-as Change"; } - - // Unknown Cease Error enum unknown-cease-err { value 50; + description "Unknown Cease Error"; } - - // Unspecified Cappability Message Error enum unspecified-cap-msg-err { value 51; + description "Unspecified Cappability Message Error"; } - - // Unknown Sequence Number enum unknown-seq-num { value 52; + description "Unknown Sequence Number"; } - - // Invalid Capability Length enum invalid-cap-len { value 53; + description "Invalid Capability Length"; } - - // Malformed Capability Value enum bad-cap-val { value 54; + description "Malformed Capability Value"; } - - // Unsupported Capability Code enum unsupp-cap-code { value 55; + description "Unsupported Capability Code"; } - - // Unknown Capability Error enum unknown-cap-err { value 56; + description "Unknown Capability Error"; } } } @@ -4289,15 +4303,13 @@ module Cisco-NX-OS-device { // Mode typedef bgp_Mode { type enumeration { - - // Fabric enum fabric { value 1; + description "Fabric"; } - - // External enum external { value 2; + description "External"; } } default "fabric"; @@ -4306,45 +4318,37 @@ module Cisco-NX-OS-device { // MCAST-VPN NLRI route-type typedef bgp_MvpnRtType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Multicast Inter-AS PMSI Auto Discovery route enum interas-ipmsi-ad { value 1; + description "Multicast Inter-AS PMSI Auto Discovery route"; } - - // Multicast Intra-AS PMSI Auto Discovery route enum intraas-ipmsi-ad { value 2; + description "Multicast Intra-AS PMSI Auto Discovery route"; } - - // Multicast S-PMSI Auto Discovery route enum spmsi-ad { value 3; + description "Multicast S-PMSI Auto Discovery route"; } - - // Multicast Leaf Auto Discovery route enum leaf-ad { value 4; + description "Multicast Leaf Auto Discovery route"; } - - // Multicast Source-Active Auto Discovery route enum sa-ad { value 5; + description "Multicast Source-Active Auto Discovery route"; } - - // Shared C-Multicast route enum shared-c-mcast { value 6; + description "Shared C-Multicast route"; } - - // Source C-Multicast route enum source-c-mcast { value 7; + description "Source C-Multicast route"; } } default "none"; @@ -4368,20 +4372,17 @@ module Cisco-NX-OS-device { // Origin typedef bgp_Origin { type enumeration { - - // Learned Via IGP enum igp { value 1; + description "Learned Via IGP"; } - - // Learned Via EGP enum egp { value 2; + description "Learned Via EGP"; } - - // Learned by some other Means enum incomplete { value 3; + description "Learned by some other Means"; } } default "igp"; @@ -4390,10 +4391,9 @@ module Cisco-NX-OS-device { // Authentication status typedef bgp_PasswdSet { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } enum disabled { value 0; @@ -4405,7 +4405,6 @@ module Cisco-NX-OS-device { // Path flags typedef bgp_PathFlags { - // bits- Using string type string; } @@ -4417,40 +4416,33 @@ module Cisco-NX-OS-device { // Path status typedef bgp_PathSt { type enumeration { - - // Deleted enum deleted { value 0; + description "Deleted"; } - - // Staled enum staled { value 1; + description "Staled"; } - - // Valid enum valid { value 2; + description "Valid"; } - - // InValid enum invalid { value 3; + description "InValid"; } - - // history enum history { value 4; + description "history"; } - - // suppressed enum suppressed { value 5; + description "suppressed"; } - - // dampened enum dampened { value 6; + description "dampened"; } } } @@ -4458,40 +4450,33 @@ module Cisco-NX-OS-device { // Path type typedef bgp_PathT { type enumeration { - - // Internal enum internal { value 1; + description "Internal"; } - - // External enum external { value 2; + description "External"; } - - // Confederation enum confederation { value 3; + description "Confederation"; } - - // Local enum local { value 4; + description "Local"; } - - // Aggregate enum aggregate { value 5; + description "Aggregate"; } - - // Redistribute enum redistribute { value 6; + description "Redistribute"; } - - // Injected enum injected { value 7; + description "Injected"; } } default "internal"; @@ -4500,21 +4485,18 @@ module Cisco-NX-OS-device { // Peer Address Family Control typedef bgp_PeerAfControl { - // bits- Using string type string; } // Peer AF flags typedef bgp_PeerAfFlags { - // bits- Using string type string; } // Peer Control typedef bgp_PeerControl { - // bits- Using string type string; } @@ -4526,20 +4508,17 @@ module Cisco-NX-OS-device { // Peer Fabric Type typedef bgp_PeerFabType { type enumeration { - - // Fabric internal enum fabric-internal { value 0; + description "Fabric internal"; } - - // Fabric external enum fabric-external { value 1; + description "Fabric external"; } - - // Fabric Border Leaf enum fabric-border-leaf { value 2; + description "Fabric Border Leaf"; } } default "fabric-internal"; @@ -4548,27 +4527,30 @@ module Cisco-NX-OS-device { // Peer flags typedef bgp_PeerFlags { - // bits- Using string type string; } + // Graceful restart interval + typedef bgp_PeerGrIntvl { + type uint16 { + range "0..4095"; + } + } + // Peer graceful restart state typedef bgp_PeerGrSt { type enumeration { - - // Not applicable enum na { value 1; + description "Not applicable"; } - - // Reset enum reset { value 2; + description "Reset"; } - - // Up enum up { value 3; + description "Up"; } } default "na"; @@ -4582,65 +4564,53 @@ module Cisco-NX-OS-device { // Peer operational state typedef bgp_PeerOperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Illegal enum illegal { value 1; + description "Illegal"; } - - // Shut enum shut { value 2; + description "Shut"; } - - // Idle enum idle { value 3; + description "Idle"; } - - // Connect enum connect { value 4; + description "Connect"; } - - // Active enum active { value 5; + description "Active"; } - - // Open sent enum open-sent { value 6; + description "Open sent"; } - - // Open confirm enum open-confirm { value 7; + description "Open confirm"; } - - // Established enum established { value 8; + description "Established"; } - - // Closing enum closing { value 9; + description "Closing"; } - - // Error enum error { value 10; + description "Error"; } - - // Unknown enum unknown { value 11; + description "Unknown"; } } default "unspecified"; @@ -4649,15 +4619,13 @@ module Cisco-NX-OS-device { // Peer Type typedef bgp_PeerType { type enumeration { - - // ibgp enum ibgp { value 1; + description "ibgp"; } - - // ebgp enum ebgp { value 2; + description "ebgp"; } } default "ibgp"; @@ -4700,25 +4668,21 @@ module Cisco-NX-OS-device { // Prefix-Sid attribute entry type typedef bgp_PfxSidAttrEntryType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Label Index enum label-index { value 1; + description "Label Index"; } - - // IPv6-SID enum ipv6-sid { value 2; + description "IPv6-SID"; } - - // Originator SRGB enum origin-srgb { value 3; + description "Originator SRGB"; } } default "none"; @@ -4727,15 +4691,13 @@ module Cisco-NX-OS-device { // PMSI Tunnel Type typedef bgp_PmsiTunType { type enumeration { - - // Unspecified enum none { value 0; + description "Unspecified"; } - - // Ingress Replication enum ingress-repl { value 1; + description "Ingress Replication"; } } default "none"; @@ -4747,20 +4709,17 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // Remove private AS enum remove-exclusive { value 1; + description "Remove private AS"; } - - // Remove all private AS enum remove-all { value 2; + description "Remove all private AS"; } - - // Replace private AS with local AS enum replace-as { value 3; + description "Replace private AS with local AS"; } } default "none"; @@ -4769,25 +4728,21 @@ module Cisco-NX-OS-device { // Password Type typedef bgp_PwdType { type enumeration { - - // Specifies an UNENCRYPTED neighbor password enum 0 { value 0; + description "Specifies an UNENCRYPTED neighbor password"; } - - // Specifies an 3DES ENCRYPTED neighbor password enum 3 { value 3; + description "Specifies an 3DES ENCRYPTED neighbor password"; } - - // Specifies a Cisco type 7 ENCRYPTED neighbor password enum 7 { value 7; + description "Specifies a Cisco type 7 ENCRYPTED neighbor password"; } - - // UNENCRYPTED (cleartext) neighbor password convert to MD5 ENCRYPTED password enum LINE { value 5; + description "UNENCRYPTED (cleartext) neighbor password convert to MD5 ENCRYPTED password"; } } default "LINE"; @@ -4804,15 +4759,13 @@ module Cisco-NX-OS-device { // Route control direction typedef bgp_RtCtrlDir { type enumeration { - - // Incoming enum in { value 1; + description "Incoming"; } - - // Outgoing enum out { value 2; + description "Outgoing"; } } default "in"; @@ -4821,15 +4774,13 @@ module Cisco-NX-OS-device { // Route control operational state typedef bgp_RtCtrlOperSt { type enumeration { - - // Unresolved enum unresolved { value 1; + description "Unresolved"; } - - // Resolved enum resolved { value 2; + description "Resolved"; } } default "unresolved"; @@ -4838,14 +4789,12 @@ module Cisco-NX-OS-device { // Route flags typedef bgp_RtFlags { - // bits- Using string type string; } // Labeled address-family route flags typedef bgp_RtLblAfFlags { - // bits- Using string type string; } @@ -4862,38 +4811,47 @@ module Cisco-NX-OS-device { default "0"; } + // BGP SR option support in Segment-Routing + typedef bgp_SgmntRtg { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum srv6 { + value 1; + description "Support SRv6 option in Segment-Routing"; + } + } + default "none"; + } + // Peer shut state qualifier typedef bgp_ShutStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Administratively down enum admin { value 1; + description "Administratively down"; } - - // No memory enum no-mem { value 2; + description "No memory"; } - - // Exceeded prefix limit enum exceeded-pfxlimit { value 3; + description "Exceeded prefix limit"; } - - // Administratively up enum admin-up { value 4; + description "Administratively up"; } - - // No Affinity enum no-affinity { value 5; + description "No Affinity"; } } default "unspecified"; @@ -4917,16 +4875,15 @@ module Cisco-NX-OS-device { type enumeration { enum none { value 0; + description "No reason defined"; } - - // Inbound Only enum inbound { value 1; + description "Allow inbound soft reconfiguration"; } - - // Inbound Always enum inbound-always { value 2; + description "Always perform inbound soft reconfiguration"; } } } @@ -4944,10 +4901,9 @@ module Cisco-NX-OS-device { enum none { value 0; } - - // NoMem enum no-mem { value 1; + description "NoMem"; } } default "none"; @@ -4956,15 +4912,13 @@ module Cisco-NX-OS-device { // Aggregate Address Summary-Only typedef bgp_SummaryOnly { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 0; + description "Disabled"; } } default "disabled"; @@ -4973,20 +4927,17 @@ module Cisco-NX-OS-device { // Table state typedef bgp_TblSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } } @@ -4996,6 +4947,25 @@ module Cisco-NX-OS-device { type uint32; } + // SNMP BGP trap type for All 3 state changes + typedef bgp_TrapType { + type enumeration { + enum none { + value 0; + description "Default none for snmp trap for all state changes"; + } + enum disabled { + value 1; + description "Disable snmp trap for all state changes"; + } + enum enabled { + value 2; + description "Enable snmp trap for all state changes"; + } + } + default "none"; + } + // eBGP Multihop TTL value typedef bgp_TtlVal { type uint16 { @@ -5006,7 +4976,6 @@ module Cisco-NX-OS-device { // Unknown Attribute Length typedef bgp_UnknownAttrLen { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -5015,7 +4984,6 @@ module Cisco-NX-OS-device { // VNID typedef bgp_Vnid { - // MAX Converted to int from 0xffffff type uint32 { range "0..16777215"; } @@ -5030,90 +4998,377 @@ module Cisco-NX-OS-device { default "600"; } - // Poap Cfg State - typedef boot_Poap { + typedef bl_AclName { + type string { + length "0..64"; + } + } + + typedef bl_Description { + type string { + length "0..64"; + } + } + + typedef bl_Name { + type string { + length "0..64"; + } + } + + typedef bl_QueueId { + type uint16 { + range "0..7"; + } + } + + // Actual Values are from 64 + // To be controlled in the BI logic + typedef bl_SamplingMbPackets { + type uint32 { + range "0..1024"; + } + } + + // Actual Range is from 122 to 100 + // To be controlled in the BI logic + typedef bl_SamplingMbRate { + type uint32 { + range "0..100000"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef bl_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + + // Actual Range is from 100 to 16000000 + // To be controlled in the BI logic + typedef bl_ThresholdValue { + type uint32 { + range "0..16777215"; + } + } + + // Autocopy State + typedef boot_AutoCopy { type enumeration { + enum enable { + value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "enable"; + } + + typedef boot_BootOrderReverse { + type enumeration { + enum yes { + value 1; + description "Yes"; + } + enum no { + value 0; + description "No"; + } + } + default "no"; + } + + // Docker Cluster Mode DHCP Option + typedef boot_Dhcp { + type uint32 { + range "0..2147483647"; + } + default "250"; + } - // Enabled + // ImageVerify Cfg State + typedef boot_ImageVerify { + type enumeration { enum enable { value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; + } + } + default "enable"; + } + + // Boot Mode Types + typedef boot_Mode { + type enumeration { + enum none { + value 0; + description "Native Boot Mode"; + } + enum lxc { + value 1; + description "LXC Boot Mode"; + } + enum dockerCluster { + value 3; + description "Docker Cluster Boot Mode"; } + } + default "none"; + } - // Disabled + // Boot order Cfg State + typedef boot_Order { + type enumeration { + enum bootflash { + value 0; + description "bootflash"; + } + enum pxe { + value 1; + description "pxe"; + } + enum pxe2bootflash { + value 2; + description "pxe2bootflash"; + } + enum bootflash2pxe { + value 3; + description "bootflash2pxe"; + } + } + default "bootflash"; + } + + // Poap Cfg State + typedef boot_Poap { + type enumeration { + enum enable { + value 1; + description "Enabled"; + } enum disable { value 0; + description "Disabled"; } } default "disable"; } - typedef cap_Constraint { - type uint32; + typedef callhome_AlertGroupName { + type enumeration { + enum configuration { + value 0; + description "Events Related To Configuration"; + } + enum diagnostic { + value 1; + description "Events Related To Diagnostic"; + } + enum environmental { + value 2; + description "Power,Fan,Temperature Related Events"; + } + enum inventory { + value 3; + description "Inventory Status Events"; + } + enum license { + value 4; + description "Events Related To Licensing"; + } + enum linecard { + value 5; + description "Linecard Related Events"; + } + enum supervisor { + value 6; + description "Supervisor Related Events"; + } + enum syslogport { + value 7; + description "Events Related To Syslog Messages Filed By Port Manager"; + } + enum system { + value 8; + description "Software Related Events"; + } + enum test { + value 9; + description "User Generated Test Events"; + } + } } - typedef cap_Counter { - type uint32; + typedef callhome_Boolean { + type enumeration { + enum enabled { + value 1; + } + enum disabled { + value 0; + } + } } - typedef cap_Model { - type string; + typedef callhome_Email { + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } } - // Quantitative - typedef cap_Quant { + typedef callhome_Format { + type enumeration { + enum xml { + value 1; + description "XML message format"; + } + enum full-txt { + value 2; + description "Plain Text Message Format"; + } + enum short-txt { + value 3; + description "Short Text Message Format"; + } + } + default "xml"; + } - // MAX Converted to int from 0xFFFF - type uint16 { - range "0..65535"; + typedef callhome_PeriodicSystemInventoryIntervalDays { + type uint32 { + range "1..30"; + } + default "7"; + } + + typedef callhome_PeriodicSystemInventoryTimeOfDayHour { + type uint32 { + range "0..23"; } default "0"; } - typedef cap_RaiseFaultState { + typedef callhome_PeriodicSystemInventoryTimeOfDayMinute { + type uint32 { + range "0..59"; + } + default "0"; + } + + typedef callhome_Phone { + type address_Phone; + } + + typedef callhome_PredefProfileName { type enumeration { - enum nominal { + enum predef_tac_prof { value 0; + description "Configure Destination Profile For XML Message"; } - enum ruleHasLess { + enum full_txt { value 1; + description "Configure Destination Profile For Plain Txt Message"; } - enum ruleHasMore { + enum short_txt { value 2; + description "Configure Destination Profile For Short Txt Message"; } } - default "nominal"; } - typedef cap_RuleT { - type enumeration { - enum limit { - value 1; - } + typedef callhome_ServerType { + type string { + length "0..255"; + pattern ".*[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } - default "limit"; } - typedef cap_Scope { + typedef callhome_StringRange { + type string { + length "0..255"; + } + } + + typedef cap_Counter { + type uint32; + } + + // Logging level type + typedef cap_LoggingLevel { + type uint16 { + range "0..7"; + } + default "2"; + } + + // Logging Level + typedef cap_LoggingType { type enumeration { - enum node { + enum Emergencies { value 0; + description "Emergencies"; } - enum policy-domain { + enum Alerts { value 1; + description "Alerts"; } - enum fabric { + enum Critical { value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "node"; + default "Critical"; } - typedef cap_StorageHint { - type uint8; + // Quantitative + typedef cap_Quant { + + type uint16 { + range "0..65535"; + } + default "0"; } - typedef cap_Vendor { - type string; + typedef cap_RuleT { + type enumeration { + enum limit { + value 1; + } + } + default "limit"; + } + + typedef cap_StorageHint { + type uint8; } typedef cap_Version { @@ -5123,7 +5378,6 @@ module Cisco-NX-OS-device { // Capability type typedef cdp_CapT { - // bits- Using string type string; } @@ -5135,25 +5389,21 @@ module Cisco-NX-OS-device { // Device identifier type typedef cdp_DevIdT { type enumeration { - - // Not configured enum none { value 0; + description "Not configured"; } - - // MAC address enum mac { value 1; + description "MAC address"; } - - // Serial number enum serialNum { value 2; + description "Serial number"; } - - // System name enum sysName { value 3; + description "System name"; } } default "none"; @@ -5167,20 +5417,17 @@ module Cisco-NX-OS-device { // Duplex typedef cdp_Duplex { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Half duplex enum half { value 1; + description "Half duplex"; } - - // Full duplex enum full { value 2; + description "Full duplex"; } } } @@ -5206,15 +5453,13 @@ module Cisco-NX-OS-device { // Operational state typedef cdp_OperSt { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } } default "down"; @@ -5223,25 +5468,21 @@ module Cisco-NX-OS-device { // Operational state qualifier typedef cdp_OperStQual { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Administratively down enum admin-down { value 2; + description "Administratively down"; } - - // Interface down enum if-down { value 3; + description "Interface down"; } - - // Unsupported enum unsupported { value 4; + description "Unsupported"; } } default "unsupported"; @@ -5278,15 +5519,13 @@ module Cisco-NX-OS-device { // Version typedef cdp_Ver { type enumeration { - - // Version 1 enum v1 { value 1; + description "Version 1"; } - - // Version 2 enum v2 { value 2; + description "Version 2"; } } default "v2"; @@ -5298,9 +5537,105 @@ module Cisco-NX-OS-device { default "0"; } + // Administrative state + typedef cfs_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "enabled"; + } + + // Region ID + typedef cfs_RegId { + type uint32 { + range "1..200"; + } + } + + typedef comm_AdminState { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "enabled"; + } + typedef comm_Port { type uint32 { - range "1024..65000"; + range "1..65535"; + } + } + + typedef comm_Protocol { + type enumeration { + enum none { + value 0; + description "None"; + } + enum tcp { + value 1; + description "tcp"; + } + enum udp { + value 2; + description "udp"; + } + enum all { + value 3; + description "All"; + } + } + default "none"; + } + + typedef comm_RekeyDataType { + type string { + length "0..7"; + pattern ".*[a-zA-Z0-9].*"; + } + } + + typedef comm_SshKeyType { + type enumeration { + enum rsa { + value 1; + description "rsa"; + } + enum dsa { + value 2; + description "dsa"; + } + enum ecdsa { + value 3; + description "ecdsa"; + } + } + default "rsa"; + } + + typedef comm_SshPortfaultBitmapT { + type enumeration { + enum noerror { + value 0; + description "Unknown"; + } + enum SshPortUnavailable { + value 1; + description "Failed to configure ssh port."; + } } } @@ -5310,50 +5645,41 @@ module Cisco-NX-OS-device { typedef comp_HostState { type enumeration { - - // Maintenance Mode enum maintenance { value 0; + description "Maintenance Mode"; } - - // Connected enum connected { value 1; + description "Connected"; } - - // Not Responding enum noresponse { value 2; + description "Not Responding"; } - - // Disconnected enum disconnected { value 3; + description "Disconnected"; } - - // Powered On enum poweredOn { value 4; + description "Powered On"; } - - // Powered Off enum poweredOff { value 5; + description "Powered Off"; } - - // StandBy enum standBy { value 6; + description "StandBy"; } - - // Suspended enum suspended { value 7; + description "Suspended"; } - - // Unknown enum unknown { value 8; + description "Unknown"; } } default "disconnected"; @@ -5361,25 +5687,21 @@ module Cisco-NX-OS-device { typedef comp_InstType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Baremetal Host enum phys { value 1; + description "Baremetal Host"; } - - // Virtual Machine enum virt { value 2; + description "Virtual Machine"; } - - // Hypervisor Host enum hv { value 3; + description "Hypervisor Host"; } } default "unknown"; @@ -5391,15 +5713,13 @@ module Cisco-NX-OS-device { typedef comp_NicState { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } } default "down"; @@ -5408,15 +5728,13 @@ module Cisco-NX-OS-device { // Operation type typedef conftmpl_OperationType { type enumeration { - - // Create enum create { value 1; + description "Create"; } - - // Delete enum delete { value 2; + description "Delete"; } } default "create"; @@ -5425,25 +5743,21 @@ module Cisco-NX-OS-device { // Template type typedef conftmpl_TemplateType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Vrf enum vrf { value 1; + description "Vrf"; } - - // Vlan enum vlan { value 2; + description "Vlan"; } - - // Intf enum intf { value 3; + description "Intf"; } } default "unknown"; @@ -5452,20 +5766,17 @@ module Cisco-NX-OS-device { // Affix type typedef copp_Affix { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Prefix enum prefix { value 1; + description "Prefix"; } - - // Suffix enum suffix { value 2; + description "Suffix"; } } default "unknown"; @@ -5474,40 +5785,33 @@ module Cisco-NX-OS-device { // Burst unit typedef copp_BurstUnit { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Bytes enum bytes { value 1; + description "Bytes"; } - - // KiloBytes enum kbytes { value 2; + description "KiloBytes"; } - - // MegaBytes enum mbytes { value 3; + description "MegaBytes"; } - - // Packets enum packets { value 4; + description "Packets"; } - - // Micro sec enum us { value 5; + description "Micro sec"; } - - // Milli sec enum ms { value 6; + description "Milli sec"; } } default "Unknown"; @@ -5521,20 +5825,17 @@ module Cisco-NX-OS-device { // Confrom Action typedef copp_ConformAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5556,20 +5857,17 @@ module Cisco-NX-OS-device { // Exceed action typedef copp_ExceedAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5578,35 +5876,33 @@ module Cisco-NX-OS-device { // Exception options typedef copp_Excep { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Glean enum glean { value 1; + description "Glean"; } - - // Mtu-failure enum mtu-failure { value 2; + description "Mtu-failure"; } - - // TTL-failure enum ttl-failure { value 3; + description "TTL-failure"; } - - // Nat-flow enum nat-flow { value 4; + description "Nat-flow"; } - - // Sflow enum sflow { value 5; + description "Sflow"; + } + enum mvpn { + value 6; + description "MVPN"; } } default "Undefined"; @@ -5626,20 +5922,17 @@ module Cisco-NX-OS-device { // Icmp options typedef copp_Icmp { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // icmp redirect enum redirect { value 1; + description "icmp redirect"; } - - // icmp unreachable enum unreachable { value 2; + description "icmp unreachable"; } } default "Undefined"; @@ -5648,35 +5941,29 @@ module Cisco-NX-OS-device { // Information Rate unit typedef copp_IrUnit { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Bits/sec enum bps { value 1; + description "Bits/sec"; } - - // Packets/sec enum pps { value 2; + description "Packets/sec"; } - - // Kilo Bits/sec enum kbps { value 3; + description "Kilo Bits/sec"; } - - // Mega Bits/sec enum mbps { value 4; + description "Mega Bits/sec"; } - - // Giga Bits/sec enum gbps { value 5; + description "Giga Bits/sec"; } } default "Unknown"; @@ -5698,20 +5985,17 @@ module Cisco-NX-OS-device { // Match Option typedef copp_MatchOption { type enumeration { - - // Unknown enum Unknown { value 0; + description "Unknown"; } - - // Match Any enum MatchAny { value 1; + description "Match Any"; } - - // Match All enum MatchAll { value 2; + description "Match All"; } } default "Unknown"; @@ -5720,30 +6004,25 @@ module Cisco-NX-OS-device { // Match criteria typedef copp_MatchT { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // match access-group enum access-group { value 1; + description "match access-group"; } - - // match redirect enum redirect { value 2; + description "match redirect"; } - - // match exception enum exception { value 3; + description "match exception"; } - - // match protocol enum protocol { value 4; + description "match protocol"; } } default "Undefined"; @@ -5752,40 +6031,33 @@ module Cisco-NX-OS-device { // Multicast options typedef copp_Mcast { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // multicast dest-miss enum dest-miss { value 1; + description "multicast dest-miss"; } - - // multicast rpf-failure enum rpf-failure { value 2; + description "multicast rpf-failure"; } - - // multicast sg-rpf-failure enum sg-rpf-failure { value 3; + description "multicast sg-rpf-failure"; } - - // multicast ipv6-dest-miss enum ipv6-dest-miss { value 4; + description "multicast ipv6-dest-miss"; } - - // multicast ipv6-rpf-failure enum ipv6-rpf-failure { value 5; + description "multicast ipv6-rpf-failure"; } - - // multicast ipv6-sg-rpf-failure enum ipv6-sg-rpf-failure { value 6; + description "multicast ipv6-sg-rpf-failure"; } } default "Undefined"; @@ -5794,30 +6066,25 @@ module Cisco-NX-OS-device { // CoPP Profile Type typedef copp_ProfT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Strict enum strict { value 1; + description "Strict"; } - - // Moderate enum moderate { value 2; + description "Moderate"; } - - // Dense enum dense { value 4; + description "Dense"; } - - // Lenient enum lenient { value 3; + description "Lenient"; } } default "unknown"; @@ -5826,7 +6093,6 @@ module Cisco-NX-OS-device { // Protocol typedef copp_Proto { - // bits- Using string type string; } @@ -5837,20 +6103,17 @@ module Cisco-NX-OS-device { // Redirect options typedef copp_Rdrct { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // redirect arp-inspect enum arp-inspect { value 1; + description "redirect arp-inspect"; } - - // rediret dhcp-snoop enum dhcp-snoop { value 2; + description "rediret dhcp-snoop"; } } default "Undefined"; @@ -5859,20 +6122,17 @@ module Cisco-NX-OS-device { // Violate action typedef copp_ViolateAction { type enumeration { - - // Undefined enum Undefined { value 0; + description "Undefined"; } - - // Transmit enum transmit { value 1; + description "Transmit"; } - - // Drop enum drop { value 2; + description "Drop"; } } default "Undefined"; @@ -5892,7 +6152,6 @@ module Cisco-NX-OS-device { typedef datetime_AuthKeyId { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -5901,15 +6160,13 @@ module Cisco-NX-OS-device { typedef datetime_ClockFormat { type enumeration { - - // 24 Hours enum 24hours { value 0; + description "24 Hours"; } - - // 12 Hours enum 12hours { value 1; + description "12 Hours"; } } default "24hours"; @@ -5917,25 +6174,21 @@ module Cisco-NX-OS-device { typedef datetime_ClockProtocol { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Ptp enum ptp { value 1; + description "Ptp"; } - - // Ntp enum ntp { value 2; + description "Ntp"; } - - // None enum none { value 3; + description "None"; } } default "ntp"; @@ -5970,45 +6223,37 @@ module Cisco-NX-OS-device { // Logging Level typedef datetime_LoggingLevel { type enumeration { - - // Emergency enum emergency { value 0; + description "Emergency"; } - - // Alert enum alert { value 1; + description "Alert"; } - - // Critical enum critical { value 2; + description "Critical"; } - - // Error enum error { value 3; + description "Error"; } - - // Warning enum warning { value 4; + description "Warning"; } - - // Notifications enum notif { value 5; + description "Notifications"; } - - // Informational enum inform { value 6; + description "Informational"; } - - // Debug enum debug { value 7; + description "Debug"; } } default "critical"; @@ -6028,65 +6273,53 @@ module Cisco-NX-OS-device { typedef datetime_Month { type enumeration { - - // January enum january { value 0; + description "January"; } - - // February enum february { value 1; + description "February"; } - - // March enum march { value 2; + description "March"; } - - // April enum april { value 3; + description "April"; } - - // May enum may { value 4; + description "May"; } - - // June enum june { value 5; + description "June"; } - - // July enum july { value 6; + description "July"; } - - // August enum august { value 7; + description "August"; } - - // September enum september { value 8; + description "September"; } - - // October enum october { value 9; + description "October"; } - - // November enum november { value 10; + description "November"; } - - // December enum december { value 11; + description "December"; } } } @@ -6104,45 +6337,37 @@ module Cisco-NX-OS-device { // NTP Peer Mode typedef datetime_NTPPeerMode { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Symmetric Active enum symmetricActive { value 1; + description "Symmetric Active"; } - - // Symmetric Passive enum symmetricPassive { value 2; + description "Symmetric Passive"; } - - // Client enum client { value 3; + description "Client"; } - - // Server enum server { value 4; + description "Server"; } - - // Broadcast enum broadcast { value 5; + description "Broadcast"; } - - // Reserved Control enum reservedControl { value 6; + description "Reserved Control"; } - - // Reserved Private enum reservedPrivate { value 7; + description "Reserved Private"; } } } @@ -6172,35 +6397,29 @@ module Cisco-NX-OS-device { // NTP Server Status typedef datetime_NtpSrvStatus { type enumeration { - - // Unknown enum unknown { value 1; + description "Unknown"; } - - // Not Running enum not_running { value 2; + description "Not Running"; } - - // Not Synchronized enum not_synchronized { value 3; + description "Not Synchronized"; } - - // Synced to Local Clock enum synced_local_clock { value 4; + description "Synced to Local Clock"; } - - // Synced to Local RefClock enum synced_local_hw_refclk { value 5; + description "Synced to Local RefClock"; } - - // Synced to Remote NTP Server enum synced_remote_server { value 6; + description "Synced to Remote NTP Server"; } } default "unknown"; @@ -6209,7 +6428,6 @@ module Cisco-NX-OS-device { // NTP Peer Status flags typedef datetime_PeerStatusFlags { - // bits- Using string type string; } @@ -6221,20 +6439,17 @@ module Cisco-NX-OS-device { typedef datetime_ProvT { type enumeration { - - // NTP peer enum peer { value 0; + description "NTP peer"; } - - // NTP server enum server { value 1; + description "NTP server"; } - - // invalid enum invalid { value 2; + description "invalid"; } } default "invalid"; @@ -6250,7 +6465,6 @@ module Cisco-NX-OS-device { // System Status flags typedef datetime_SysStatusFlags { - // bits- Using string type string; } @@ -6273,48 +6487,47 @@ module Cisco-NX-OS-device { } } + typedef datetime_allowCtrlRateLimit { + type uint32 { + range "1..65535"; + } + default "3"; + } + // Client interface operational state typedef dhcp_ClIfOperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Initializing enum init { value 1; + description "Initializing"; } - - // Discover enum discover { value 2; + description "Discover"; } - - // Requesting enum requesting { value 3; + description "Requesting"; } - - // Address received enum addr-rcvd { value 4; + description "Address received"; } - - // Failed enum failed { value 5; + description "Failed"; } - - // Request timedout enum request-timedout { value 6; + description "Request timedout"; } - - // Operationally down enum down { value 7; + description "Operationally down"; } } } @@ -6322,25 +6535,21 @@ module Cisco-NX-OS-device { // DAI Logging options typedef dhcp_DAILogType { type enumeration { - - // Logging for denied DHCP bindings enum deny { value 1; + description "Logging for denied DHCP bindings"; } - - // Log for Permitted DHCP Bindings enum permit { value 2; + description "Log for Permitted DHCP Bindings"; } - - // Log for All DHCP bindings enum all { value 3; + description "Log for All DHCP bindings"; } - - // No Logging for any DHCP bindings enum inone { value 5; + description "No Logging for any DHCP bindings"; } } default "deny"; @@ -6358,21 +6567,180 @@ module Cisco-NX-OS-device { } // DHCP options - // Default Value computed from none typedef dhcp_Options { - // bits- Using string type string; default "none"; } + // DHCP commands with string:Basic as type + typedef dhcp_StringBasicDhcp { + type string { + pattern ".*[a-zA-Z0-9-~!@#\\*\\)\\($%_:&\\^]{0,64}.*"; + } + } + + // Dot1x Host Mode + typedef dot1x_HostMode { + type enumeration { + enum single-host { + value 1; + description "Dot1x single host mode"; + } + enum multi-host { + value 2; + description "Dot1x multi host mode"; + } + enum multi-auth { + value 3; + description "Dot1x multi auth mode"; + } + } + default "single-host"; + } + + // Dot1x Inactivity Period + typedef dot1x_InactivityPeriod { + type uint32 { + range "0..2147483"; + } + default "0"; + } + + // Dot1x Mac Auth Bypass + typedef dot1x_MacAuthBypass { + type enumeration { + enum none { + value 0; + description "Dot1x mac auth bypass disabled"; + } + enum eap { + value 1; + description "Dot1x mac auth bypass with EAP"; + } + enum bypass { + value 2; + description "Dot1x mac auth bypass"; + } + } + default "none"; + } + + // Dot1x Mac Move + typedef dot1x_MacMove { + type enumeration { + enum deny { + value 0; + description "Dot1x mac move disable"; + } + enum permit { + value 1; + description "Dot1x mac move enable"; + } + } + default "permit"; + } + + // Dot1x Max Reauth Request + typedef dot1x_MaxReauthReq { + type uint8 { + range "1..10"; + } + default "2"; + } + + // Dot1x Max Auth Request + typedef dot1x_MaxReq { + type uint8 { + range "1..10"; + } + default "2"; + } + + // Dot1x Pae Type + typedef dot1x_PaeType { + type enumeration { + enum authenticator { + value 1; + description "Dot1x authenticator role"; + } + } + default "authenticator"; + } + + // Dot1x Port Control + typedef dot1x_PortCtrl { + type enumeration { + enum force-unauthorized { + value 1; + description "Dot1x force unauthorized mode"; + } + enum auto { + value 2; + description "Dot1x port control auto mode"; + } + enum force-authorized { + value 3; + description "Dot1x force authorized mode"; + } + } + default "force-authorized"; + } + + // Dot1x Quiet Period + typedef dot1x_QuietPeriod { + type uint16 { + range "1..65535"; + } + default "60"; + } + + // Dot1x Rate Limit Period + typedef dot1x_RateLimitPeriod { + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Dot1x Re-auth Period + typedef dot1x_ReAuthPeriod { + type uint32 { + range "1..2147483"; + } + default "3600"; + } + + // Dot1x Server Timeout + typedef dot1x_ServerTimeout { + type uint16 { + range "1..65535"; + } + default "30"; + } + + // Dot1x Supp Timeout + typedef dot1x_SuppTimeout { + type uint16 { + range "1..65535"; + } + default "30"; + } + + // Dot1x Tx Period + typedef dot1x_TxPeriod { + type uint16 { + range "1..65535"; + } + default "30"; + } + // Database type typedef epm_DbT { type enumeration { - - // Endpoint database enum ep { value 1; + description "Endpoint database"; } } default "ep"; @@ -6381,22 +6749,19 @@ module Cisco-NX-OS-device { // Ep flags typedef epm_EpFlags { - // bits- Using string type string; } // Ep operational state typedef epm_EpOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } } } @@ -6404,15 +6769,13 @@ module Cisco-NX-OS-device { // Memory access typedef eqpt_Acc { type enumeration { - - // Read only enum read-only { value 0; + description "Read only"; } - - // Write only enum read-write { value 1; + description "Write only"; } } } @@ -6420,20 +6783,17 @@ module Cisco-NX-OS-device { // Administrative state of equipment related mo typedef eqpt_AdSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -6442,36 +6802,51 @@ module Cisco-NX-OS-device { // air flow direction typedef eqpt_AirDir { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // front2back enum front2back { value 1; + description "front2back"; } - - // back2front enum back2front { value 2; + description "back2front"; } } default "unknown"; } + // air filter + typedef eqpt_AirFilter { + type enumeration { + enum absent { + value 0; + description "absent"; + } + enum present { + value 1; + description "front2back"; + } + enum notsupported { + value 2; + description "notsupported"; + } + } + default "notsupported"; + } + // Amps typedef eqpt_Amps { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } // Capability type typedef eqpt_AsicCapability { - // bits- Using string type string; } @@ -6485,82 +6860,82 @@ module Cisco-NX-OS-device { // Type of the asic typedef eqpt_AsicT { type enumeration { - - // Northstar enum northstar { value 1; + description "Northstar"; } - - // Alpine enum alpine { value 2; + description "Alpine"; } - - // Broadcom enum bcm { value 3; + description "Broadcom"; } - - // Davos enum davos { value 4; + description "Davos"; } - - // Sugarbowl enum sugarbowl { value 5; + description "Sugarbowl"; } - - // Homewood enum homewood { value 6; + description "Homewood"; } } default "northstar"; } + typedef eqpt_AutoShutdown { + type enumeration { + enum disabled { + value 0; + description "Disable"; + } + enum enabled { + value 1; + description "Enable"; + } + } + default "enabled"; + } + // baud rate type typedef eqpt_BaudRate { type enumeration { - - // 300 Baud Rate enum 300 { value 1; + description "300 Baud Rate"; } - - // 1200 Baud Rate enum 1200 { value 2; + description "1200 Baud Rate"; } - - // 2400 Baud Rate enum 2400 { value 3; + description "2400 Baud Rate"; } - - // 4800 Baud Rate enum 4800 { value 4; + description "4800 Baud Rate"; } - - // 9600 Baud Rate enum 9600 { value 5; + description "9600 Baud Rate"; } - - // 38400 Baud Rate enum 38400 { value 6; + description "38400 Baud Rate"; } - - // 57600 Baud Rate enum 57600 { value 7; + description "57600 Baud Rate"; } - - // 115200 Baud Rate enum 115200 { value 8; + description "115200 Baud Rate"; } } default "115200"; @@ -6569,100 +6944,81 @@ module Cisco-NX-OS-device { // Operational status of the card typedef eqpt_COpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Inserted enum inserted { value 1; + description "Inserted"; } - - // Absent enum absent { value 2; + description "Absent"; } - - // Mismatch enum mismatch { value 3; + description "Mismatch"; } - - // Failed enum fail { value 4; + description "Failed"; } - - // Present enum present { value 5; + description "Present"; } - - // Removed enum removed { value 6; + description "Removed"; } - - // Online enum online { value 7; + description "Online"; } - - // Offline enum offline { value 8; + description "Offline"; } - - // Powered up enum pwr-up { value 9; + description "Powered up"; } - - // Powered down enum pwr-down { value 10; + description "Powered down"; } - - // Errored powered down enum err-pwr-down { value 11; + description "Errored powered down"; } - - // Testing enum testing { value 12; + description "Testing"; } - - // Initializing enum init { value 13; + description "Initializing"; } - - // Registration failed enum reg-failure { value 14; + description "Registration failed"; } - - // Downloading enum dnld { value 15; + description "Downloading"; } - - // Upgrading enum upg { value 16; + description "Upgrading"; } - - // SRG failed enum srg-fail { value 17; + description "SRG failed"; } - - // HA Sequence number failed enum ha-seq-fail { value 18; + description "HA Sequence number failed"; } } default "unknown"; @@ -6688,45 +7044,41 @@ module Cisco-NX-OS-device { // Type of the card typedef eqpt_CardT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Supervisor enum supervisor { value 1; + description "Supervisor"; } - - // Line card enum linecard { value 2; + description "Line card"; } - - // Fabric card enum fabriccard { value 3; + description "Fabric card"; } - - // System control card enum sysctrlcard { value 4; + description "System control card"; } - - // Extension chassis card enum extchcard { value 5; + description "Extension chassis card"; } - - // fan tray enum fan-tray { value 6; + description "fan tray"; } - - // power supply enum power-supply { value 7; + description "power supply"; + } + enum lemcard { + value 8; + description "LEM card"; } } default "unknown"; @@ -6735,20 +7087,17 @@ module Cisco-NX-OS-device { // Chassis operational state typedef eqpt_ChOperSt { type enumeration { - - // Not Operational enum not-operational { value 0; + description "Not Operational"; } - - // Failed enum failed { value 1; + description "Failed"; } - - // Online enum online { value 2; + description "Online"; } } default "not-operational"; @@ -6757,35 +7106,29 @@ module Cisco-NX-OS-device { // Led color typedef eqpt_Color { type enumeration { - - // No color enum no-color { value 0; + description "No color"; } - - // Green enum green { value 1; + description "Green"; } - - // Yellow enum yellow { value 2; + description "Yellow"; } - - // Amber enum amber { value 3; + description "Amber"; } - - // Red enum red { value 4; + description "Red"; } - - // Blue enum blue { value 5; + description "Blue"; } } default "no-color"; @@ -6806,15 +7149,13 @@ module Cisco-NX-OS-device { // Ejector status for the card typedef eqpt_EjSt { type enumeration { - - // Open enum open { value 0; + description "Open"; } - - // Closed enum closed { value 1; + description "Closed"; } } default "closed"; @@ -6844,140 +7185,113 @@ module Cisco-NX-OS-device { // Extended chassis (fex) state typedef eqpt_ExtChSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Discovered enum discovered { value 2; + description "Discovered"; } - - // Connected enum connected { value 3; + description "Connected"; } - - // Registering enum reg { value 4; + description "Registering"; } - - // Registered enum regDone { value 5; + description "Registered"; } - - // Ready enum ready { value 6; + description "Ready"; } - - // Online sequence enum onlSeq { value 7; + description "Online sequence"; } - - // Online enum online { value 8; + description "Online"; } - - // Offline Request enum offReq { value 9; + description "Offline Request"; } - - // Offline Sequence enum offSeq { value 10; + description "Offline Sequence"; } - - // Offline enum offline { value 11; + description "Offline"; } - - // Image download enum imgDld { value 12; + description "Image download"; } - - // Failed enum failed { value 13; + description "Failed"; } - - // Removed enum removed { value 14; + description "Removed"; } - - // Hitless upgrade sequence enum hlUpgSeq { value 15; + description "Hitless upgrade sequence"; } - - // Check upgrade sequence enum chkUpgSeq { value 16; + description "Check upgrade sequence"; } - - // Save states enum svStates { value 17; + description "Save states"; } - - // Hitless upgrade idle enum hlUpgIdle { value 18; + description "Hitless upgrade idle"; } - - // Check insert sequence enum chkInsSeq { value 19; + description "Check insert sequence"; } - - // Hitless upgrade failed enum hlUpgFail { value 20; + description "Hitless upgrade failed"; } - - // Active active upgrade ready enum aaUpgRdy { value 21; + description "Active active upgrade ready"; } - - // Active active upgrade idle enum aaUpgIdle { value 22; + description "Active active upgrade idle"; } - - // Active active upgrade done enum aaUpgOver { value 23; + description "Active active upgrade done"; } - - // Active active upgrade fail enum aaUpgFail { value 24; + description "Active active upgrade fail"; } - - // Active active version mismatch enum aaVersMismatch { value 25; + description "Active active version mismatch"; } - - // Extended chassis type mismatch enum ExtChTypeMismatch { value 26; + description "Extended chassis type mismatch"; } } default "unknown"; @@ -6998,101 +7312,32 @@ module Cisco-NX-OS-device { // Led operational state typedef eqpt_LedOpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Off enum off { value 1; + description "Off"; } - - // On enum on { value 2; + description "On"; } - - // Blinking enum blinking { value 3; + description "Blinking"; } - - // Fail enum fail { value 4; + description "Fail"; } } default "unknown"; } - // indicator led type, should match snmp led types - typedef eqpt_LedType { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // status - enum status { - value 1; - } - - // system - enum system { - value 2; - } - - // active - enum active { - value 3; - } - - // power - enum power { - value 4; - } - - // battery - enum battery { - value 5; - } - - // LC status - enum lc-status { - value 6; - } - - // SUP status - enum sup-status { - value 7; - } - - // Fabric status - enum fc-status { - value 8; - } - - // Fan status - enum fan-status { - value 9; - } - - // power status - enum pwr-status { - value 10; - } - } - default "unknown"; - } - - // Default Value computed from unk typedef eqpt_LogType { - // bits- Using string type string; default "unk"; } @@ -7104,25 +7349,21 @@ module Cisco-NX-OS-device { // Memory type typedef eqpt_MemT { type enumeration { - - // Unknown enum unk { value 0; + description "Unknown"; } - - // Dimm enum dimm { value 1; + description "Dimm"; } - - // Flash enum flash { value 2; + description "Flash"; } - - // sprom enum sprom { value 3; + description "sprom"; } } } @@ -7140,35 +7381,29 @@ module Cisco-NX-OS-device { // Operational state of equipment related mo typedef eqpt_OpSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // OK enum ok { value 1; + description "OK"; } - - // Fail enum fail { value 2; + description "Fail"; } - - // Absent enum absent { value 3; + description "Absent"; } - - // Shut enum shut { value 4; + description "Shut"; } - - // mismatch enum mismatch { value 5; + description "mismatch"; } } default "unknown"; @@ -7182,20 +7417,17 @@ module Cisco-NX-OS-device { // parity type typedef eqpt_Parity { type enumeration { - - // No parity enum none { value 0; + description "No parity"; } - - // Even parity enum even { value 1; + description "Even parity"; } - - // Odd parity enum odd { value 2; + description "Odd parity"; } } default "none"; @@ -7208,40 +7440,33 @@ module Cisco-NX-OS-device { // Type of the port typedef eqpt_PortT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // EOBC enum eobc { value 1; + description "EOBC"; } - - // Management Port enum mgmt { value 2; + description "Management Port"; } - - // Fabric Port enum fab { value 3; + description "Fabric Port"; } - - // Access Port enum leaf { value 4; + description "Access Port"; } - - // Extended Chassis Host Port enum extchhp { value 5; + description "Extended Chassis Host Port"; } - - // Extended Chassis Fabric Port enum extchfp { value 6; + description "Extended Chassis Fabric Port"; } } default "unknown"; @@ -7250,15 +7475,13 @@ module Cisco-NX-OS-device { // Status of the poweroff of the slot typedef eqpt_PoweroffSt { type enumeration { - - // No Power Off enum no { value 0; + description "No Power Off"; } - - // Power Off enum yes { value 1; + description "Power Off"; } } default "no"; @@ -7267,82 +7490,87 @@ module Cisco-NX-OS-device { // Power supply redundancy mode typedef eqpt_PsRdnM { type enumeration { - - // unknown enum unknown { value 0; + description "unknown"; } - - // Not supported enum not-supp { value 1; + description "Not supported"; } - - // Redundant enum rdn { value 2; + description "Redundant"; } - - // Combined enum comb { value 3; + description "Combined"; } - - // Non redundant enum n-rdn { value 4; + description "Non redundant"; } - - // Power output redundancy enum ps-rdn { value 5; + description "Power output redundancy"; } - - // Input source redundancy enum insrc-rdn { value 6; + description "Input source redundancy"; } - - // Single input redundancy enum sinin-rdn { value 7; + description "Single input redundancy"; } - - // Combined Force enum comb-force { value 8; + description "Combined Force"; } } default "ps-rdn"; } + // PSU fan direction + typedef eqpt_PsuFanDir { + type enumeration { + enum front2back { + value 0; + description "front2back"; + } + enum back2front { + value 1; + description "back2front"; + } + enum notused { + value 2; + description "notused"; + } + } + default "notused"; + } + // power state of a card typedef eqpt_PwrState { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Off enum off { value 1; + description "Off"; } - - // On enum on { value 2; + description "On"; } - - // Deny enum deny { value 3; + description "Deny"; } - - // Multiple boot failure enum multi-boot-fail { value 4; + description "Multiple boot failure"; } } default "unknown"; @@ -7351,20 +7579,17 @@ module Cisco-NX-OS-device { // Redundancy state typedef eqpt_RdSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Active enum active { value 1; + description "Active"; } - - // Standby enum standby { value 2; + description "Standby"; } } default "unknown"; @@ -7379,35 +7604,29 @@ module Cisco-NX-OS-device { // Operational state of sensor mo typedef eqpt_SensorOpSt { type enumeration { - - // Fail enum fail { value 0; + description "Fail"; } - - // Normal enum normal { value 1; + description "Normal"; } - - // Minor Alarm enum minor { value 2; + description "Minor Alarm"; } - - // Major Alarm enum major { value 3; + description "Major Alarm"; } - - // Absent enum absent { value 4; + description "Absent"; } - - // Bad Asic enum bad-asic { value 5; + description "Bad Asic"; } } default "absent"; @@ -7416,80 +7635,65 @@ module Cisco-NX-OS-device { // Sensor type typedef eqpt_SensorT { type enumeration { - - // CPU sensor enum cpu { value 1; + description "CPU sensor"; } - - // Inlet sensor enum inlet { value 2; + description "Inlet sensor"; } - - // Outlet sensor enum outlet { value 3; + description "Outlet sensor"; } - - // Hotswap sensor enum hotswap { value 4; + description "Hotswap sensor"; } - - // Dimm sensor enum dimm { value 5; + description "Dimm sensor"; } - - // Phy sensor enum phy { value 6; + description "Phy sensor"; } - - // SFP sensor enum sfp { value 7; + description "SFP sensor"; } - - // QSFP sensor enum qsfp { value 8; + description "QSFP sensor"; } - - // Asic sensor enum asic { value 9; + description "Asic sensor"; } - - // PCH enum pch { value 10; + description "PCH"; } - - // cpu VRM enum cpu-crm { value 11; + description "cpu VRM"; } - - // Asic VRM enum asic-vrm { value 12; + description "Asic VRM"; } - - // x86 cpu enum x86 { value 18; + description "x86 cpu"; } - - // arm cpu enum arm { value 19; + description "arm cpu"; } - - // Die sensor enum die { value 20; + description "Die sensor"; } } default "asic"; @@ -7503,27 +7707,23 @@ module Cisco-NX-OS-device { // Slot controls typedef eqpt_SlotControl { - // bits- Using string type string; } // Location of the slot typedef eqpt_SlotLoc { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Front enum front { value 1; + description "Front"; } - - // Rear enum rear { value 2; + description "Rear"; } } default "unknown"; @@ -7532,15 +7732,13 @@ module Cisco-NX-OS-device { // Status of the slot typedef eqpt_SlotOpSt { type enumeration { - - // empty enum empty { value 0; + description "empty"; } - - // Inserted enum inserted { value 1; + description "Inserted"; } } default "empty"; @@ -7549,55 +7747,45 @@ module Cisco-NX-OS-device { // Type of the slot typedef eqpt_SlotT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Supervisor slot enum supslot { value 1; + description "Supervisor slot"; } - - // Line card slot enum lcslot { value 2; + description "Line card slot"; } - - // Fabric card slot enum fcslot { value 3; + description "Fabric card slot"; } - - // System control card slot enum scslot { value 4; + description "System control card slot"; } - - // Extension chassis slot enum extchslot { value 5; + description "Extension chassis slot"; } - - // Power supply slot enum psuslot { value 6; + description "Power supply slot"; } - - // Fan tray enum fantray { value 7; + description "Fan tray"; } - - // Board Slot enum bslot { value 8; + description "Board Slot"; } - - // Nic Slot enum nslot { value 9; + description "Nic Slot"; } } default "unknown"; @@ -7606,10 +7794,9 @@ module Cisco-NX-OS-device { // Socket typedef eqpt_Sock { type enumeration { - - // socket enum unspecified { value 0; + description "socket"; } } } @@ -7617,7 +7804,7 @@ module Cisco-NX-OS-device { // Speed typedef eqpt_Speed { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } @@ -7642,20 +7829,17 @@ module Cisco-NX-OS-device { // Voltage source typedef eqpt_VSrc { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // 110v enum 110v { value 1; + description "110v"; } - - // 220v enum 220v { value 2; + description "220v"; } } default "unknown"; @@ -7669,7 +7853,7 @@ module Cisco-NX-OS-device { // Volts typedef eqpt_Volts { type decimal64 { - fraction-digits 2; + fraction-digits 6; } } @@ -7678,271 +7862,46 @@ module Cisco-NX-OS-device { type uint32; } - // FCOT DOM LANE type - typedef eqpt_fcotDomLane { - type enumeration { - enum basic { - value 0; - } - enum extGlobal { - value 1; - } - enum extOptical { - value 2; - } - } - } - - // Connector type - typedef eqptcap_ConnT { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // SC - enum sc { - value 1; - } - - // FC1-COPPER - enum fc1-copper { - value 2; - } - - // FC2-COPPER - enum fc2-copper { - value 3; - } - - // BNC-TNC - enum bnc-tnc { - value 4; - } - - // FC-COAX - enum fc-coax { - value 5; - } - - // FIBER-JACK - enum fiber-jack { - value 6; - } - - // LC - enum lc { - value 7; - } - - // MT-RJ - enum mt-rj { - value 8; - } - - // MU - enum mu { - value 9; - } - - // SG - enum sg { - value 10; - } - - // OPTICAL-PIGTAIL - enum optical-pigtail { - value 11; - } - - // MPO - enum mpo { - value 12; - } - - // HSSDC-2 - enum hssdc-2 { - value 32; - } - - // COPPER-PIGTAIL - enum copper-pigtail { - value 33; - } - - // RJ45 - enum rj45 { - value 34; - } - } - default "unspecified"; - } - - // Internal vendor ID - typedef eqptcap_IntVendorId { - type uint8 { - range "0..64"; - } - default "64"; - } - - // Sfp Vendor Magic Key - typedef eqptcap_SfpVendorMagicKey { - type mtx_array_uint8; - } - - typedef eqptcap_Size { - type decimal64 { - fraction-digits 2; - } - default "0.0"; - } - - // Weight units (pounds). - typedef eqptcap_Weight { - type decimal64 { - fraction-digits 2; - } - default "0.0"; - } - - // Xcvr type - typedef eqptcap_XcvrT { + // FCOT DOM sensor alerts + typedef eqpt_fcotDomAlert { type enumeration { - - // Unspecified - enum unspecified { + enum none { value 0; + description "No alert"; } - - // GBIC - enum gbic { + enum high-alarm { value 1; + description "High alarm"; } - - // SOLDER - enum solder { + enum high-warning { value 2; + description "High warning"; } - - // SFP - enum sfp { + enum low-alarm { value 3; + description "Low alarm"; } - - // XBI - enum xbi { + enum low-warning { value 4; - } - - // XENPAK - enum xenpak { - value 5; - } - - // XFP - enum xfp { - value 6; - } - - // XFF - enum xff { - value 7; - } - - // XFP-E - enum xfp-e { - value 8; - } - - // XPAK - enum xpak { - value 9; - } - - // X2 - enum x2 { - value 10; - } - - // DWDM-SFP - enum dwdm-sfp { - value 11; - } - - // QSFP - enum qsfp { - value 12; + description "Low warning"; } } - default "unspecified"; + default "none"; } - // All Diag Test Groups - typedef eqptdiag_AllGrpsT { + // FCOT DOM LANE type + typedef eqpt_fcotDomLane { type enumeration { - - // None - enum none { + enum basic { value 0; } - - // System Memory - enum sys-mem { + enum extGlobal { value 1; } - - // CPU - enum cpu { + enum extOptical { value 2; } - - // Peripherals - enum peripherals { - value 3; - } - - // Internal Connectivity - enum internal-conn { - value 4; - } - - // ASIC - enum asic { - value 5; - } - - // Port - enum port { - value 6; - } } - default "none"; - } - - // Type of all the test rules - typedef eqptdiag_Type { - type uint16; - default "0"; - } - - // Bitmap Type of All the test rules - // Default Value computed from unspecified - typedef eqptdiag_TypeBm { - - // bits- Using string - type string; - default "unspecified"; - } - - // Access pacer credits - typedef ethpm_AccessCredits { - type uint32 { - range "1..16"; - } - default "1"; } // Active PC Members Size based off of PCM_MAX_PORTS_PER_CHANNEL @@ -7958,30 +7917,25 @@ module Cisco-NX-OS-device { // Error disable event type typedef ethpm_ErrDisEvent { type enumeration { - - // Link State Flapping enum event-link-flap { value 0; + description "Link State Flapping"; } - - // UDLD enum event-udld { value 1; + description "UDLD"; } - - // BPDU Guard enum event-bpduguard { value 2; + description "BPDU Guard"; } - - // Loopback detected by UDLD enum event-loopback { value 3; + description "Loopback detected by UDLD"; } - - // Storm Control enum event-storm-ctrl { value 4; + description "Storm Control"; } enum event-dhcp-rate-lim { value 5; @@ -7989,25 +7943,21 @@ module Cisco-NX-OS-device { enum event-arp-inspection { value 6; } - - // 802.1x Violation enum event-sec-violation { value 7; + description "802.1x Violation"; } - - // Psecure Violation enum event-psec-violation { value 8; + description "Psecure Violation"; } - - // STP Inconsistent VPC Peer-link state enum event-stp-inconsist-vpc-peerlink { value 9; + description "STP Inconsistent VPC Peer-link state"; } - - // STP set port state failure enum event-set-port-state-failed { value 10; + description "STP set port state failure"; } enum event-debug-1 { value 11; @@ -8042,20 +7992,17 @@ module Cisco-NX-OS-device { enum unknown { value 21; } - - // Loop indication by MCP enum event-mcp-loop { value 22; + description "Loop indication by MCP"; } - - // Frequent EP move enum event-ep-move { value 23; + description "Frequent EP move"; } - - // DCBX no ack enum event-dcbx-no-ack { value 24; + description "DCBX no ack"; } } } @@ -8067,14 +8014,6 @@ module Cisco-NX-OS-device { default "300"; } - // Fabric port pacer credits - typedef ethpm_FabricPortCredits { - type uint32 { - range "0..48"; - } - default "0"; - } - // Fcot flags typedef ethpm_FcotFlags { type enumeration { @@ -8149,7 +8088,11 @@ module Cisco-NX-OS-device { default "unknown"; } - // Fcot type + // Fcot type Always add new values at bottom, plus update + // the enum in platform/infra/port_client/lib/export/isan/lc_port_fcot.h + // Also add an entry in the conversion table in ethpm_objstore_utils.c + // The enum values in lc_port_fcot.h should be mapped with these FcotType values + // using the conversion table. typedef ethpm_FcotType { type enumeration { enum unknown { @@ -8182,6 +8125,18 @@ module Cisco-NX-OS-device { enum qsfp28 { value 9; } + enum qsfpdd { + value 10; + } + enum cpak { + value 11; + } + enum qsfp56 { + value 12; + } + enum cxp { + value 13; + } } default "unknown"; } @@ -8206,38 +8161,6 @@ module Cisco-NX-OS-device { type mtx_array_uint8; } - // Not connected timer - typedef ethpm_NotConnectedTimer { - type uint32 { - range "1000..60000"; - } - default "30000"; - } - - // Not up timer - typedef ethpm_NotUpTimer { - type uint32 { - range "3000..60000"; - } - default "60000"; - } - - // Per sub-interface pacer credits - typedef ethpm_PerSiCredits { - type uint32 { - range "0..8"; - } - default "0"; - } - - // Per vlan pacer credits - typedef ethpm_PerVlanCredits { - type uint32 { - range "0..8"; - } - default "0"; - } - // Port Bitmap typedef ethpm_PortBitmap { type mtx_array_bit; @@ -8253,14 +8176,6 @@ module Cisco-NX-OS-device { type mtx_array_bit; } - // Routed port pacer credits - typedef ethpm_RouetdPortCredits { - type uint32 { - range "1..16"; - } - default "2"; - } - // Sfp Extended Option Size based off of SFP_MSA_SID_OPT_SZ typedef ethpm_SfpExtendedOptionBytes { type mtx_array_uint8; @@ -8320,20 +8235,20 @@ module Cisco-NX-OS-device { default "5"; } - // Total pacer credits - typedef ethpm_TotalCredits { - type uint32 { - range "1..256"; - } - default "32"; - } - - // Trunk pacer credits - typedef ethpm_TrunkCredits { - type uint32 { - range "1..16"; + // System Interface Shutdown + typedef ethpm_SystemIfAdminState { + type enumeration { + enum up { + value 1; + } + enum down { + value 2; + } + enum down-exclude-fabric { + value 4; + } } - default "4"; + default "up"; } // Trunking status @@ -8427,14 +8342,12 @@ module Cisco-NX-OS-device { // Port duplex capabilities typedef ethpm_capDuplex { - // bits- Using string type string; } // Port speed capabilities typedef ethpm_capSpeed { - // bits- Using string type string; } @@ -8445,180 +8358,562 @@ module Cisco-NX-OS-device { } } - // Loose Node Id Type - // @@@ This could be String form MgmtIP or ChassisID - // @@@ reported in LLDP - typedef fabric_LooseNodeId { - type string; + // Action's label type + typedef evms_ActionLabelType { + type string { + pattern ".*[0-9][0-9]*(\\.[0-9]+)?.*"; + } } - typedef fabric_NodeId { - type uint16 { - range "1..16000"; + typedef evms_AdminSt { + type enumeration { + enum enabled { + value 0; + description "Enabled"; + } + enum disabled { + value 1; + description "Disabled"; + } } - default "1"; + default "disabled"; } - // Primary Key Type - typedef fabric_PrimKey { - type string; + // System policy to override + typedef evms_AppletOverrideType { + type string { + length "0..29"; + } } - typedef fabric_TickCount { - type uint32; + typedef evms_CacheEntryOp { + type enumeration { + enum all { + value 1; + } + enum add { + value 2; + } + enum update { + value 3; + } + enum delete { + value 4; + } + } + default "all"; + } + + // Config Error + typedef evms_ConfigErr { + type enumeration { + enum noerror { + value 0; + description "Unknown"; + } + enum limitexceed { + value 1; + description "Actions config limit exceeded"; + } + enum validationtimeout { + value 2; + description "Event config timeout"; + } + } + } + + // Correlation operators + typedef evms_CorrelateTagType { + type enumeration { + enum and { + value 1; + } + enum andnot { + value 2; + } + enum or { + value 3; + } + enum none { + value 0; + } + } + default "none"; + } + + // Syslog priority type + typedef evms_CounterEntryExitOpType { + type enumeration { + enum gt { + value 5; + } + enum ge { + value 6; + } + enum eq { + value 7; + } + enum ne { + value 8; + } + enum lt { + value 9; + } + enum le { + value 10; + } + } + } + + typedef evms_CounterOpType { + type enumeration { + enum nop { + value 1; + } + enum set { + value 2; + } + enum inc { + value 3; + } + enum dec { + value 4; + } + } + } + + typedef evms_DeviceNumber { + type uint16 { + range "0..32"; + } default "0"; } - // Interface administrative state - typedef fc_AdminSt { + typedef evms_DeviceType { type enumeration { - enum down { + enum fan { value 1; } - enum up { + enum module { value 2; } + enum powersupply { + value 3; + } } - default "down"; + default "module"; } - typedef fc_CreateState { + typedef evms_EntryExitOpType { type enumeration { - enum created { + enum none { value 0; } - enum removed { + enum gt { value 1; } + enum ge { + value 2; + } + enum eq { + value 3; + } + enum ne { + value 4; + } + enum lt { + value 5; + } + enum le { + value 6; + } } - default "created"; + default "none"; } - // FC id - typedef fc_FcId { - type uint32; - default "4294967295"; + typedef evms_ErrorType { + type enumeration { + enum registration-timeout { + value 23; + } + enum registration-failure { + value 22; + } + enum runtime-diag-failure { + value 25; + } + enum runtime-diag-timeout { + value 26; + } + enum image-download-failed { + value 276; + } + enum lc-ready-timeout { + value 30; + } + enum insertion-seq-failure { + value 400; + } + enum unexpected-registration { + value 21; + } + enum lc-failed { + value 38; + } + enum lc-not-responding { + value 69; + } + enum lc-sw-failure { + value 91; + } + enum upgrade-srg-not-compatible { + value 238; + } + enum sequence-timeout { + value 212; + } + enum image-upgrade-failed { + value 119; + } + enum hitless-upgrade-seq-timeout { + value 231; + } + enum srg-info-resp-timeout { + value 258; + } + enum addon-sequence-failure { + value 406; + } + enum hitless-upgrade-reg-failure { + value 226; + } + enum hitless-upgrade-diag-failure { + value 227; + } + enum hitless-upgrade-procmgr-notif { + value 228; + } + enum hitless-upgrade-failure { + value 239; + } + enum any { + value 65535; + } + } + default "any"; } - // Port state - // Default Value computed from down - typedef fc_FcIfOperSt { + typedef evms_EventFibType { + type enumeration { + enum undefined { + value 0; + description "Event fib disabled"; + } + enum inconsistent { + value 1; + description "Event fib route inconsistent"; + } + enum missing { + value 2; + description "Event fib route missing"; + } + enum extra { + value 3; + description "Event fib route extra"; + } + enum adjacency { + value 4; + description "Event fib adjacency extra"; + } + enum tcam-resource { + value 5; + description "Event fib resource tcam usage"; + } + } + } - // bits- Using string - type string; - default "down"; + // Event's tag data type + typedef evms_EventTagType { + type string { + length "0..29"; + } } - // FCOE Mac address Prefix - typedef fc_FcMap { - type uint32 { - range "982016..982271"; + typedef evms_ExitCombType { + type enumeration { + enum none { + value 0; + } + enum or { + value 1; + } + enum and { + value 2; + } } - default "982016"; + default "none"; } - // Fibre Channel Forwarder(FCF) Priority - typedef fc_FcfPrio { - type uint32 { - range "0..255"; + typedef evms_ExpLogComValStr { + type string { + length "1..30"; } - default "128"; } - // Port Mode - // Default Value computed from f - typedef fc_Mode { + typedef evms_FanInterval { + type uint16 { + range "10..64000"; + } + default "10"; + } - // bits- Using string - type string; - default "f"; + typedef evms_GetTypeType { + type enumeration { + enum none { + value 0; + } + enum exact { + value 1; + } + enum next { + value 2; + } + } + default "none"; } - // numVsans - typedef fc_NumVsans { - type uint32 { - range "0..4096"; + typedef evms_HardError { + type enumeration { + enum soft_error { + value 0; + } + enum hard_error { + value 1; + } + enum soft_error_resettable { + value 2; + } + enum soft_error_reset_replay_all_cfg { + value 3; + } + enum soft_error_diag_failure { + value 4; + } } + default "hard_error"; } - // timeoutVal_1_4 - typedef fc_TimeoutVal_1_4 { - type uint32 { - range "1000..4000"; + typedef evms_IntegerRange { + type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*).*|.*(all)"; } + default "all"; } - // timeoutVal_5_10 - typedef fc_TimeoutVal_5_10 { - type uint32 { - range "5000..10000"; + typedef evms_LinkFlapTime { + type int32 { + range "-1..10000000"; } + default "-1"; } - typedef fc_TrunkVsansBitmap { - type fc_VsanBitmap; - default "1-4094"; + typedef evms_MemoryType { + type enumeration { + enum minor { + value 1; + } + enum severe { + value 3; + } + enum critical { + value 5; + } + } + default "minor"; } - // Vsan Id Bitmap - typedef fc_VsanBitmap { - type mtx_array_bit; + typedef evms_ModuleNumber { + type string { + pattern "(all)|([1-9]|[12]\\d|3[0-2])"; + } + default "all"; } - // Vsan Id - typedef fc_VsanId { - type uint32 { - range "1..4094"; + typedef evms_ModuleStatus { + type enumeration { + enum online { + value 5; + } + enum offline { + value 6; + } + enum any { + value 7; + } } + default "any"; } - // Fibre Channle World Wide Name - typedef fc_Wwn { - type string; + typedef evms_OirType { + type enumeration { + enum insert { + value 5; + } + enum remove { + value 6; + } + enum anyoir { + value 8; + } + } + default "anyoir"; } - // Administrative state - typedef fcoe_AdminSt { + // Syslog priority type + typedef evms_PriorityType { type enumeration { + enum 1 { + value 1; + } + enum 2 { + value 2; + } + enum 3 { + value 3; + } + enum 4 { + value 4; + } + enum 5 { + value 5; + } + enum 6 { + value 6; + } + enum 7 { + value 7; + } + enum 0 { + value 0; + } + enum alerts { + value 8; + } + enum critical { + value 9; + } + enum debugging { + value 10; + } + enum emergencies { + value 11; + } + enum errors { + value 12; + } + enum informational { + value 13; + } + enum notifications { + value 14; + } + enum warnings { + value 15; + } + enum none { + value 16; + } + } + } - // Enabled - enum enabled { + // Diag Failure level + typedef evms_SeverityLevel { + type enumeration { + enum minor { + value 0; + description "Minor"; + } + enum moderate { value 1; + description "Moderate"; + } + enum major { + value 2; + description "Major"; } + } + default "minor"; + } - // Disabled - enum disabled { + // Diag Testing Type + typedef evms_TestType { + type enumeration { + enum scheduled { + value 0; + description "Scheduled"; + } + enum monitoring { + value 1; + description "Monitoring"; + } + } + default "monitoring"; + } + + typedef evms_ThresholdLevels { + type enumeration { + enum major { + value 16; + } + enum minor { + value 17; + } + enum any { + value 18; + } + } + default "any"; + } + + typedef evms_TrackStateOp { + type enumeration { + enum down { + value 0; + } + enum up { + value 1; + } + enum any { value 2; } } - default "disabled"; + default "any"; } - // FIP KeepAlive Interval Type - typedef fcoe_FipKaIntvl { - type uint32 { - range "4..60"; + typedef evms_timeInterval { + type int32 { + range "-1..10000000"; } - default "8"; + default "-1"; } - // Firmware name - typedef firmware_Name { - type reference_URI; + typedef fabric_NodeId { + type uint16 { + range "1..16000"; + } + default "1"; } // Firmware running mode typedef firmware_RunningMode { type enumeration { - - // Normal enum normal { value 0; + description "Normal"; } - - // Reovery enum recovery { value 1; + description "Reovery"; } } default "normal"; @@ -8627,15 +8922,13 @@ module Cisco-NX-OS-device { // Running operational state typedef firmware_RunningOperSt { type enumeration { - - // Version Match enum ok { value 0; + description "Version Match"; } - - // Version Mismatch enum ver-mismatch { value 1; + description "Version Mismatch"; } } } @@ -8643,52 +8936,69 @@ module Cisco-NX-OS-device { // Firmware type typedef firmware_Type { type enumeration { - - // Controller enum controller { value 0; + description "Controller"; } - - // Switch enum switch { value 1; + description "Switch"; } - - // Catalog enum catalog { value 2; + description "Catalog"; } } default "switch"; } + typedef flexlink_Delay { + type uint32 { + range "1..300"; + } + default "35"; + } + + typedef flexlink_Mode { + type enumeration { + enum off { + value 0; + description "no preemption"; + } + enum forced { + value 1; + description "active interface preempts the backup"; + } + enum bandwidth { + value 2; + description "higher bandwidth interface acts as active"; + } + } + default "off"; + } + typedef flow_CollectParams { - // bits- Using string type string; } typedef flow_Direction { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Input enum in { value 1; + description "Input"; } - - // Output enum out { value 2; + description "Output"; } - - // Both enum both { value 3; + description "Both"; } } default "in"; @@ -8696,25 +9006,21 @@ module Cisco-NX-OS-device { typedef flow_ExportVersion { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Version 5 enum v5 { value 1; + description "Version 5"; } - - // Version 9 enum v9 { value 2; + description "Version 9"; } - - // Cisco proprietary version 1 enum cisco1 { value 3; + description "Cisco proprietary version 1"; } } default "cisco1"; @@ -8728,7 +9034,6 @@ module Cisco-NX-OS-device { typedef flow_MatchParams { - // bits- Using string type string; } @@ -8741,7 +9046,6 @@ module Cisco-NX-OS-device { typedef flow_PayloadLen { - // MAX Converted to int from 0x3fff type uint32 { range "0..16383"; } @@ -8755,20 +9059,17 @@ module Cisco-NX-OS-device { typedef flow_SamplerMode { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // M out of N flows enum flow { value 1; + description "M out of N flows"; } - - // M out of N pkts enum pkts { value 2; + description "M out of N pkts"; } } default "flow"; @@ -8783,15 +9084,13 @@ module Cisco-NX-OS-device { // Admin status of feature typedef fm_AdminState { type enumeration { - - // Feature enabled enum enabled { value 1; + description "Feature enabled"; } - - // Feature disabled enum disabled { value 2; + description "Feature disabled"; } } default "disabled"; @@ -8800,20 +9099,17 @@ module Cisco-NX-OS-device { // Operational status of instance typedef fm_InstOperState { type enumeration { - - // Feature enabled for instance enum enabled { value 1; + description "Feature enabled for instance"; } - - // Feature disabled for instance enum disabled { value 2; + description "Feature disabled for instance"; } - - // Feature enabled and not running for the instance enum enabled-not-running { value 3; + description "Feature enabled and not running for the instance"; } } default "disabled"; @@ -8828,40 +9124,36 @@ module Cisco-NX-OS-device { // Operational status of feature typedef fm_OperState { type enumeration { - - // Feature enabled enum enabled { value 1; + description "Feature enabled"; } - - // Feature disabled enum disabled { value 2; + description "Feature disabled"; } } default "disabled"; } // Id - // Default Value "0" Removed - out of range 1..12 typedef fmcast_Id { type uint8 { - range "1..12"; + range "0..12"; } + default "0"; } // Operational state typedef fmcast_OperSt { type enumeration { - - // Active enum active { value 1; + description "Active"; } - - // Inactive enum inactive { value 2; + description "Inactive"; } } default "inactive"; @@ -8870,30 +9162,25 @@ module Cisco-NX-OS-device { // Admin status of feature typedef fset_AdminState { type enumeration { - - // featureSet none enum none { value 0; + description "featureSet none"; } - - // featureSet enabled enum enabled { value 1; + description "featureSet enabled"; } - - // featureSet disabled enum disabled { value 2; + description "featureSet disabled"; } - - // featureSet installed enum installed { value 3; + description "featureSet installed"; } - - // featureSet uninstalled enum uninstalled { value 4; + description "featureSet uninstalled"; } } default "none"; @@ -8902,55 +9189,98 @@ module Cisco-NX-OS-device { // Operational status of feature typedef fset_OperState { type enumeration { - - // featureSet none enum none { value 0; + description "featureSet none"; } - - // featureSet enabled enum enabled { value 1; + description "featureSet enabled"; } - - // featureSet disabled enum disabled { value 2; + description "featureSet disabled"; } - - // featureSet installed enum installed { value 3; + description "featureSet installed"; } - - // featureSet uninstalled enum uninstalled { value 4; + description "featureSet uninstalled"; } } default "none"; } - typedef fv_EpCount { - type uint32; - default "0"; + // Event Export Max + typedef fte_EventExportMax { + type uint32 { + range "0..32000"; + } + default "3"; } - // Represents the deployment immediacy preference of the EpG - typedef fv_Immediacy { - type enumeration { + // flow count value + typedef fte_FlowCountValue { + type uint32 { + range "1..32767"; + } + default "500"; + } - // Immediate - enum immediate { + // Latency Unit + typedef fte_LatencyUnit { + type enumeration { + enum micro-sec { + value 0; + description "Micro Second"; + } + enum milli-sec { value 1; + description "Milli Second"; } + } + default "micro-sec"; + } - // On Demand - enum lazy { - value 2; - } + // Latency Value + typedef fte_LatencyValue { + type uint32 { + range "0..65535"; } - default "lazy"; + } + + // Mode + typedef fte_ModeT { + type enumeration { + enum flow-events { + value 1; + description "FTE mode"; + } + } + default "flow-events"; + } + + // Exporter Vrf + typedef fte_VrfName { + type l3_VrfName; + default "default"; + } + + // Represents the deployment immediacy preference of the EpG + typedef fv_Immediacy { + type enumeration { + enum immediate { + value 1; + description "Immediate"; + } + enum lazy { + value 2; + description "On Demand"; + } + } + default "lazy"; } // Instrumentation Immediacy Specification for when policies are instrumented in HW @@ -8964,15 +9294,13 @@ module Cisco-NX-OS-device { // Policy Control Enforcement Preference typedef fv_PcEnfPref { type enumeration { - - // Enforced enum enforced { value 1; + description "Enforced"; } - - // Unenforced enum unenforced { value 2; + description "Unenforced"; } } default "enforced"; @@ -8993,6 +9321,25 @@ module Cisco-NX-OS-device { type address_Mac; } + // Administrative state + typedef gold_AdminSt { + type enumeration { + enum default { + value 0; + description "Default"; + } + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + default "default"; + } + // Test identifier typedef gold_Id { type uint32; @@ -9012,50 +9359,41 @@ module Cisco-NX-OS-device { // Test result typedef gold_Result { type enumeration { - - // Untested enum untested { value 1; + description "Untested"; } - - // Failure enum failure { value 2; + description "Failure"; } - - // Incomplete enum not-complete { value 3; + description "Incomplete"; } - - // Aborted enum aborted { value 4; + description "Aborted"; } - - // Success enum success { value 5; + description "Success"; } - - // Error Disabled enum error-disabled { value 6; + description "Error Disabled"; } - - // Error Ignore enum error-ignore { value 7; + description "Error Ignore"; } - - // Error Disabled W enum error-disabled-w-no { value 8; + description "Error Disabled W"; } - - // Unavailable enum unavailable { value 9; + description "Unavailable"; } } default "untested"; @@ -9076,15 +9414,17 @@ module Cisco-NX-OS-device { // Bootup Level typedef gold_bootLevel { type enumeration { - - // Bypass enum bypass { value 0; + description "Bypass"; } - - // Complete enum complete { value 1; + description "Complete"; + } + enum minimal { + value 2; + description "Minimal"; } } default "complete"; @@ -9093,36 +9433,140 @@ module Cisco-NX-OS-device { // Diag Status typedef gold_moduleDiagStatus { type enumeration { - - // Fail enum fail { value 0; + description "Fail"; } - - // Pass enum pass { value 1; + description "Pass"; } - - // Untested enum untested { value 2; + description "Untested"; } } default "untested"; } - typedef hmm_Boolean { + // Bootflash resource value + typedef guestshell_BootflashResource { + type uint32; + } + + // CPU resource value + typedef guestshell_CpuResource { + type uint32; + } + + // Operational state of the Guest Shell + typedef guestshell_GuestShellOperState { + type enumeration { + enum unknown { + value 0; + description "No state"; + } + enum initializing { + value 1; + description "Initializing; intermediate state"; + } + enum provisioned { + value 2; + description "Provisioned"; + } + enum configured { + value 3; + description "Configured"; + } + enum installing { + value 4; + description "Installing; intermediate state"; + } + enum installed { + value 5; + description "Installed"; + } + enum install-failed { + value 6; + description "Installation failed"; + } + enum install-verify-failed { + value 7; + description "Verification failed"; + } + enum activating { + value 8; + description "Activating; intermediate state"; + } + enum activated { + value 9; + description "Activated; normal running state"; + } + enum activate-failed { + value 10; + description "Activation failed"; + } + enum deactivated { + value 11; + description "Deactivated; normal disabled state"; + } + enum deactivating { + value 12; + description "Deactivating; intermediate state"; + } + enum restarting { + value 13; + description "Restarting; intermediate state"; + } + enum not-installed { + value 14; + description "Not installed"; + } + enum error { + value 15; + description "Place holder"; + } + } + default "unknown"; + } + + // Memory resource value + typedef guestshell_MemoryResource { + type uint32; + } + + // Type of key used for signing + typedef guestshell_SigningKeyType { type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum development { + value 1; + description "Development Key"; + } + enum release { + value 2; + description "Release Key"; + } + enum unsigned { + value 3; + description "Unsigned"; + } + } + default "unknown"; + } - // No + typedef hmm_Boolean { + type enumeration { enum no { value 0; + description "No"; } - - // Yes enum yes { value 1; + description "Yes"; } } default "no"; @@ -9131,20 +9575,17 @@ module Cisco-NX-OS-device { // Fabric Forwarding mode typedef hmm_FwdMode { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Anycast Gateway mode enum anycastGW { value 1; + description "Anycast Gateway mode"; } - - // Proxy Gateway mode enum proxyGW { value 2; + description "Proxy Gateway mode"; } } default "standard"; @@ -9159,15 +9600,13 @@ module Cisco-NX-OS-device { // Group authentication type typedef hsrp_AuthT { type enumeration { - - // plain text enum simple { value 1; + description "plain text"; } - - // MD5 authentication enum md5 { value 2; + description "MD5 authentication"; } } default "simple"; @@ -9176,15 +9615,13 @@ module Cisco-NX-OS-device { // Use-Bia Scope typedef hsrp_BiaScopeType { type enumeration { - - // scope is interface and its sub-interfaces enum global { value 1; + description "scope is interface and its sub-interfaces"; } - - // scope is interface enum local { value 2; + description "scope is interface"; } } default "global"; @@ -9193,15 +9630,13 @@ module Cisco-NX-OS-device { // Address family type typedef hsrp_GroupAf { type enumeration { - - // IPv4 address family enum ipv4 { value 1; + description "IPv4 address family"; } - - // IPv6 address family enum ipv6 { value 2; + description "IPv6 address family"; } } default "ipv4"; @@ -9218,27 +9653,23 @@ module Cisco-NX-OS-device { // Control bits of HSRP Group typedef hsrp_GrpControl { - // bits- Using string type string; } // IP obtain mode typedef hsrp_GrpIpObtainMode { type enumeration { - - // Address is configured enum admin { value 0; + description "Address is configured"; } - - // Auto configure ipv6 address enum auto { value 1; + description "Auto configure ipv6 address"; } - - // learn IP from HSRP peer enum learn { value 2; + description "learn IP from HSRP peer"; } } default "admin"; @@ -9278,15 +9709,13 @@ module Cisco-NX-OS-device { // Hsrp Version typedef hsrp_HsrpVersion { type enumeration { - - // Hsrp version 1 enum v1 { value 1; + description "Hsrp version 1"; } - - // Hsrp version 2 enum v2 { value 2; + description "Hsrp version 2"; } } default "v1"; @@ -9295,7 +9724,6 @@ module Cisco-NX-OS-device { // Control bits at the Interface typedef hsrp_IfControl { - // bits- Using string type string; } @@ -9307,20 +9735,61 @@ module Cisco-NX-OS-device { default "0"; } + typedef icam_Entclass { + type enumeration { + enum noent { + value 0; + description "No Entries class"; + } + enum entacl { + value 1; + description "ACL Entries"; + } + } + default "noent"; + } + typedef icam_Index { type uint32; } - // Type - typedef icmpv4_Type { - type uint8; - default "255"; + typedef icam_Interval { + type uint16 { + range "1..24"; + } + default "2"; + } + + typedef icam_NumInterval { + type uint16 { + range "168..1344"; + } + default "168"; + } + + // iCAM class Type + typedef icam_Resclass { + type enumeration { + enum nores { + value 0; + description "No Resources class"; + } + enum resacl { + value 1; + description "ACL Resources"; + } + enum resfib { + value 2; + description "FIB Resources"; + } + } + default "nores"; } // Adjacency Stale Timer typedef icmpv6_AdjStaleTimer { type uint16 { - range "300..65535"; + range "30..65535"; } default "1380"; } @@ -9328,25 +9797,21 @@ module Cisco-NX-OS-device { // Event History Size typedef icmpv6_EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -9355,150 +9820,81 @@ module Cisco-NX-OS-device { // Event Log Type typedef icmpv6_EventType { type enumeration { - - // ICMPV6 CLI related event enum cli { value 0; + description "ICMPV6 CLI related event"; } - - // Error log ICMPv6 enum errors { value 1; + description "Error log ICMPv6"; } - - // ICMPv6 related High Availability event enum highAvailability { value 2; + description "ICMPv6 related High Availability event"; } - - // Internal debug events of ICMPV6 enum icmpv6-internal { value 3; + description "Internal debug events of ICMPV6"; } - - // ICMPV6 debugs for CFS and MCECM related events for l3 enum ipv6SyncEvent { value 4; + description "ICMPV6 debugs for CFS and MCECM related events for l3"; } - - // ICMPV6 MLD debug messages enum mldDebug { value 5; + description "ICMPV6 MLD debug messages"; } - - // ICMPV6 MLD non-periodic events enum mldEvent { value 6; + description "ICMPV6 MLD non-periodic events"; } - - // ICMPV6 ND debug enum nd { value 7; + description "ICMPV6 ND debug"; } - - // ICMPV6 debugs for CFS and MCECM related events enum sync-event { value 8; + description "ICMPV6 debugs for CFS and MCECM related events"; } - - // ICMPV6 VRF related events enum vrf { value 9; + description "ICMPV6 VRF related events"; } } } // Interface controls - // Default Value computed from redirect typedef icmpv6_IfControl { - // bits- Using string type string; default "redirect"; } - // Logging Level - typedef icmpv6_LoggingLevel { - type enumeration { - - // Emergencies - enum Emergency { - value 0; - } - - // Alert - enum Alert { - value 1; - } - - // Critical - enum Critical { - value 2; - } - - // Error - enum Error { - value 3; - } - - // Warning - enum Warning { - value 4; - } - - // Notice - enum Notice { - value 5; - } - - // Informational - enum Informational { - value 6; - } - - // Debug - enum Debug { - value 7; - } - } - default "Error"; - } - // Operational state typedef icmpv6_OperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Up enum up { value 1; + description "Up"; } - - // Failed enum failed { value 2; + description "Failed"; } } default "up"; } - // Type - typedef icmpv6_Type { - type uint8; - default "0"; - } - // Database type typedef igmp_DbT { type enumeration { - - // IGMP route database enum route { value 1; + description "IGMP route database"; } } default "route"; @@ -9507,65 +9903,53 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef igmp_EhType { type enumeration { - - // Internal events for IGMP enum igmpInternal { value 0; + description "Internal events for IGMP"; } - - // CLI events for IGMP enum cli { value 1; + description "CLI events for IGMP"; } - - // Group-debugs event for IGMP enum groupDebugs { value 2; + description "Group-debugs event for IGMP"; } - - // Group-events event for IGMP enum groupEvents { value 3; + description "Group-events event for IGMP"; } - - // HA events for IGMP enum ha { value 4; + description "HA events for IGMP"; } - - // Interface-debugs event for IGMP enum intfDebugs { value 5; + description "Interface-debugs event for IGMP"; } - - // Interface-events event for IGMP enum intfEvents { value 6; + description "Interface-events event for IGMP"; } - - // Mtrace events for IGMP enum mtrace { value 7; + description "Mtrace events for IGMP"; } - - // Mvr events for IGMP enum mvr { value 8; + description "Mvr events for IGMP"; } - - // Policy events for IGMP enum policy { value 9; + description "Policy events for IGMP"; } - - // VRF events for IGMP enum vrf { value 10; + description "VRF events for IGMP"; } - - // NBM events for IGMP enum nbm { value 11; + description "NBM events for IGMP"; } } } @@ -9573,25 +9957,43 @@ module Cisco-NX-OS-device { // State limit status typedef igmp_LimitSt { type enumeration { - - // Below threshold of 80% enum below-thresh { value 0; + description "Below threshold of 80%"; } - - // Above 80% threshold enum above-thresh { value 1; + description "Above 80% threshold"; } - - // No entries available enum exhausted { value 2; + description "No entries available"; } } default "below-thresh"; } + typedef igmp_LogType { + type enumeration { + enum log { + value 1; + description "Configure for logging level igmp"; + } + enum logip { + value 2; + description "Configure for logging level ip igmp"; + } + } + default "log"; + } + + typedef igmp_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + // Event History Buffer size in Text typedef igmp_Size { type uint32 { @@ -9600,43 +10002,42 @@ module Cisco-NX-OS-device { default "3"; } + typedef igmp_VlanIdT { + type uint16 { + range "0..4094"; + } + } + // Event History Buffer Type typedef igmpsnoop_EhType { type enumeration { - - // Represents Internal Events For IGMP-Snooping enum igmp-snoop-internal { value 0; + description "Represents Internal Events For IGMP-Snooping"; } - - // MFDM Events for IGMP-Snooping enum mfdm { value 1; + description "MFDM Events for IGMP-Snooping"; } - - // MFDM-SUM Events for IGMP-Snooping enum mfdm-sum { value 2; + description "MFDM-SUM Events for IGMP-Snooping"; } - - // RIB Events for IGMP-Snooping enum rib { value 3; + description "RIB Events for IGMP-Snooping"; } - - // VLAN/BD Events for IGMP-Snooping enum vlan { value 4; + description "VLAN/BD Events for IGMP-Snooping"; } - - // VLAN/BD events for IGMP-Snooping enum vlan-events { value 5; + description "VLAN/BD events for IGMP-Snooping"; } - - // VPC Events for IGMP-Snooping enum vpc { value 6; + description "VPC Events for IGMP-Snooping"; } } } @@ -9651,37 +10052,56 @@ module Cisco-NX-OS-device { // Event History Buffer size in Text typedef igmpsnoop_Size { type uint32 { - range "0..4 | 5..4294967295"; + range "0..4 | 5..119999999"; } default "3"; } typedef im_BreakoutMapT { type enumeration { - - // none enum no-breakout { value 0; + description "none"; } - - // 10g-4x enum 10g-4x { value 5; + description "10g-4x"; } - - // 10g-2x enum 10g-2x { value 9; + description "10g-2x"; } - - // 25g-4x enum 25g-4x { value 8; + description "25g-4x"; } - - // 50g-2x enum 50g-2x { value 7; + description "50g-2x"; + } + enum 50g-4x { + value 12; + description "50g-4x"; + } + enum 100g-4x { + value 10; + description "100g-4x"; + } + enum 100g-2x { + value 14; + description "100g-2x"; + } + enum 200g-1x { + value 13; + description "200g-1x"; + } + enum 200g-2x { + value 15; + description "200g-2x"; + } + enum 40g-1x { + value 16; + description "40g-1x"; } } default "no-breakout"; @@ -9736,31 +10156,51 @@ module Cisco-NX-OS-device { } // Collect params Set 0 - // Default Value computed from switch-id typedef inbandTelemetry_CollectParams0 { - // bits- Using string type string; default "switch-id"; } + typedef inbandTelemetry_DstIp { + type address_Ip; + default "127.0.0.1"; + } + + // flow age value + typedef inbandTelemetry_FlowAge { + type uint16; + default "30"; + } + + // flow dscp value + typedef inbandTelemetry_FlowDscp { + type uint16; + default "1"; + } + + // flow latency quantization value + typedef inbandTelemetry_FlowLatencyQuant { + type uint16 { + range "0..31"; + } + default "11"; + } + // IP filter type typedef inbandTelemetry_FltType { type enumeration { - - // Ipv4 type enum ipv4 { value 1; + description "Ipv4 type"; } - - // Ipv6 type enum ipv6 { value 2; + description "Ipv6 type"; } - - // CE type enum ce { value 3; + description "CE type"; } } default "ipv4"; @@ -9776,27 +10216,77 @@ module Cisco-NX-OS-device { // Mode typedef inbandTelemetry_ModeT { type enumeration { - - // INT mode enum inbandtelemetry { value 0; + description "INT mode"; + } + enum postcard { + value 1; + description "Postcard mode"; } } default "inbandtelemetry"; } + typedef inbandTelemetry_Port { + type uint16; + default "31337"; + } + + // Switch Profile + typedef inbandTelemetry_Profile { + type enumeration { + enum endpoint { + value 0; + description "Endpoint profile mode"; + } + enum transit { + value 1; + description "Transit profile mode"; + } + } + default "endpoint"; + } + + // queue breach quota + typedef inbandTelemetry_QueueBreachQuota { + type uint16; + default "200"; + } + + // queue depth + typedef inbandTelemetry_QueueDepth { + type uint32; + default "300"; + } + + // queue latency + typedef inbandTelemetry_QueueLatency { + type uint32; + default "2048"; + } + + // queue tail drop + typedef inbandTelemetry_QueueTailDrop { + type boolean; + default "true"; + } + + typedef inbandTelemetry_VrfName { + type l3_VrfName; + default "default"; + } + // Stage typedef installer_InstEnum { type enumeration { - - // install property yes enum yes { value 0; + description "install property yes"; } - - // install property no enum no { value 1; + description "install property no"; } } default "no"; @@ -9804,25 +10294,21 @@ module Cisco-NX-OS-device { typedef installer_InstErr { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Pre-upgrade errors for supervisor enum preupg-err1 { value 1; + description "Pre-upgrade errors for supervisor"; } - - // Pre-upgrade errors for lc enum preupg-err2 { value 2; + description "Pre-upgrade errors for lc"; } - - // user-abort enum user-abort { value 3; + description "user-abort"; } } default "none"; @@ -9831,229 +10317,147 @@ module Cisco-NX-OS-device { // Stage typedef installer_InstModType { type enumeration { - - // for NXOS Supervisor type enum nxos-supervisor { value 0; + description "for NXOS Supervisor type "; } - - // for Linecard type enum lc { value 1; + description "for Linecard type "; } - - // for FEX card type enum fex { value 2; + description "for FEX card type "; } - - // for BIOS type enum bios { value 3; + description "for BIOS type "; } - - // for Fabric Module and System Controller type enum lcn9k { value 4; + description "for Fabric Module and System Controller type "; } - - // for Unknown mod type enum unknown { value -1; + description "for Unknown mod type "; } } } - // Stage - typedef installer_InstOper { - type enumeration { - - // No oper - enum none { - value 0; - } - - // For install all nxos - enum install { - value 1; - } - - // For show install all impact - enum impact { - value 2; - } - - // Abort installation - enum abort { - value 3; - } - } - default "none"; - } - - typedef installer_InstType { - type enumeration { - - // none - enum none { - value -1; - } - - // Disruptive install - enum disruptive { - value 0; - } - - // Non disruptive install - enum non-disruptive { - value 1; - } - } - default "none"; - } - // Stage typedef installer_Stage { type enumeration { - - // Copying images enum preupg-copy-image { value 0; + description "Copying images"; } - - // Initializing enum preupg-initializing { value 1; + description "Initializing"; } - - // Verification of images enum preupg-verifying_images { value 3; + description "Verification of images"; } - - // Performing runtime checks enum preupg-runtime-check { value 6; + description "Performing runtime checks"; } - - // Syncing images enum preupg-sync-image { value 7; + description "Syncing images"; } - - // Upgrading fex enum upgrade-upg-fex { value 9; + description "Upgrading fex"; } - - // Upgrading linecard enum upgrade-upg-lc { value 10; + description "Upgrading linecard"; } - - // Syncing config enum preupg-conf-sync { value 11; + description "Syncing config "; } - - // Setting Bootvar enum preupg-set-boot { value 12; + description "Setting Bootvar"; } - - // Bringing up Standby Container. enum preupg-force-dnld { value 13; + description "Bringing up Standby Container."; } - - // Waiting for module online. enum preupg-wait-mod { value 14; + description "Waiting for module online."; } - - // Converting startup config. enum preupg-convert-startup { value 15; + description "Converting startup config."; } - - // Saving supervisor runtime state. enum preupg-save-sup-state { value 16; + description "Saving supervisor runtime state."; } - - // Loading images into memory enum upgrade-kexec { value 17; + description "Loading images into memory"; } - - // Notifying services about system upgrade. enum preupg-pre-upg-notif { value 19; + description "Notifying services about system upgrade."; } - - // Module Support Check. enum preupg-mod-support-check { value 20; + description "Module Support Check."; } - - // Pre Upgrade Checks. enum preupg-Checks { value 21; + description "Pre Upgrade Checks."; } - - // Upgrading BIOS enum upgrade-upg-bios { value 22; + description "Upgrading BIOS"; } - - // Upgrading CMP enum upgrade-upg-cmp { value 23; + description "Upgrading CMP"; } - - // Notifying services about installation enum upgrade-notification { value 24; + description "Notifying services about installation"; } - - // Saving mts state. enum preupg-save-mts-state { value 25; + description "Saving mts state."; } - - // SUCCESS enum success { value 26; + description "SUCCESS"; } - - // Failed enum failed { value 27; + description "Failed"; } - - // Not Started enum not-started { value 28; + description "Not Started"; } - - // Performing supervisor state verification. enum upgrade-sup-state-verification { value 29; + description "Performing supervisor state verification."; } - - // Notifying services about the switchover. enum upgrade-switchover-notif { value 30; + description "Notifying services about the switchover."; } - - // Starting Standby Container. enum upgrade-standby-container-start { value 31; + description "Starting Standby Container."; } - - // Aborted by user. enum user-abort { value 32; + description "Aborted by user."; } } default "not-started"; @@ -10061,35 +10465,29 @@ module Cisco-NX-OS-device { typedef installer_UpgStatusType { type enumeration { - - // pre-upgrade enum pre-upgrade { value 0; + description "pre-upgrade"; } - - // In Progress enum in-progress { value 1; + description "In Progress"; } - - // Upgrade Success enum success { value 2; + description "Upgrade Success"; } - - // Upgrade Failed enum failed { value 3; + description "Upgrade Failed"; } - - // Not Compatible enum not-compatible { value 4; + description "Not Compatible"; } - - // None enum none { value 5; + description "None"; } } default "none"; @@ -10098,167 +10496,139 @@ module Cisco-NX-OS-device { // Address controls typedef ip_AddrControl { - // bits- Using string type string; } // Address Operational state qualifier typedef ip_AddrOperStQual { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Up enum up { value 1; + description "Up"; } - - // Subnet overlap enum subnet-overlap { value 2; + description "Subnet overlap"; } - - // No primary address enum no-primary { value 3; + description "No primary address"; } - - // Interface down enum if-down { value 4; + description "Interface down"; } - - // Address already exists enum addr-exists { value 5; + description "Address already exists"; } - - // Context invalid enum invalid-vrf { value 6; + description "Context invalid"; } - - // Configured as static-rt nh enum static-rt-nh { value 7; + description "Configured as static-rt nh"; } - - // Loopback address enum lb-addr { value 8; + description "Loopback address"; } - - // Invalid use of link local enum invalid-ll-use { value 9; + description "Invalid use of link local"; } - - // No global address enum no-glbl-addr { value 10; + description "No global address"; } - - // No link local address enum no-ll-addr { value 11; + description "No link local address"; } - - // DAD in progress enum dad-in-progress { value 12; + description "DAD in progress"; } - - // DAD failed enum dad-failed { value 13; + description "DAD failed"; } - - // Invalid maks length enum invalid-mask-len { value 14; + description "Invalid maks length"; } - - // IP cfg not allowed on L2 intf enum l2-intf-err { value 15; + description "IP cfg not allowed on L2 intf"; } - - // IP cfg not allowed on superintf enum super-intf-err { value 16; + description "IP cfg not allowed on superintf"; } - - // Invalid link local address enum invalid-ll { value 17; + description "Invalid link local address"; } - - // IF init error enum if-init-err { value 18; + description "IF init error"; } - - // Failed to get ifindex enum ifindex-err { value 19; + description "Failed to get ifindex"; } - - // Invalid EUI64 format enum invalid-eui64 { value 20; + description "Invalid EUI64 format"; } - - // Failed to create Link Local Addr. enum lladdr-create-fail { value 21; + description "Failed to create Link Local Addr."; } - - // DAD failed, state=tentative. enum DAD-tentative { value 22; + description "DAD failed, state=tentative."; } - - // DAD failed, state=local duplicate. enum DAD-lcl-duplicate { value 23; + description "DAD failed, state=local duplicate."; } - - // DAD failed, state=duplicate. enum DAD-duplicate { value 24; + description "DAD failed, state=duplicate."; } - - // DAD failed, state=preferred. enum DAD-preferred { value 25; + description "DAD failed, state=preferred."; } - - // DAD failed, state=deprecated. enum DAD-deprecated { value 26; + description "DAD failed, state=deprecated."; } - - // DAD failed, state=invalid. enum DAD-invalid { value 27; + description "DAD failed, state=invalid."; } - - // multiple lladdr cfg not allowed. enum multiple-lladdr { value 28; + description "multiple lladdr cfg not allowed."; } - - // IPv6 Address Enablement is not supported on this tunnel type enum invalid-tunnel { value 29; + description "IPv6 Address Enablement is not supported on this tunnel type"; } - - // IPv6 Link Local Address Enablement is not supported on this tunnel type enum lladdr-invalid-tunnel { value 30; + description "IPv6 Link Local Address Enablement is not supported on this tunnel type"; + } + enum aggr-mapped-subnet-inconsistent { + value 31; + description "IPv6 aggregate-prefix-length mapped address is inconsistent to existing address in same subnet"; } } default "unspecified"; @@ -10267,34 +10637,35 @@ module Cisco-NX-OS-device { // Address type typedef ip_AddrT { type enumeration { - - // Primary enum primary { value 1; + description "Primary"; } - - // Secondary enum secondary { value 2; + description "Secondary"; } } default "primary"; } - // If controls - // Default Value computed from unspecified - typedef ip_IfControl { - - // bits- Using string - type string; - default "unspecified"; + typedef ip_HardwareEcmpHashPolynomialT { + type enumeration { + enum CRC16 { + value 0; + description "CRC16"; + } + enum CRC32HI { + value 1; + description "CRC32HI"; + } + } + default "CRC16"; } // If mode - // Default Value computed from unspecified typedef ip_IfMode { - // bits- Using string type string; default "unspecified"; } @@ -10317,50 +10688,69 @@ module Cisco-NX-OS-device { // concatenation rotate 1 universal-id 2 typedef ip_LoadShareFormat { type enumeration { - - // Disabled enum disabled { value 1; + description "Disabled"; } - - // Destnation Port enum destPort { value 2; + description "Destnation Port"; } - - // Source-Destination enum srcDest { value 3; + description "Source-Destination"; } - - // Source-Destination GRE enum srcDestGre { value 4; + description "Source-Destination GRE"; } - - // Source-Destination Port enum srcDestPort { value 5; + description "Source-Destination Port"; } - - // Source enum source { value 6; + description "Source"; } - - // Source-Destination GTPU-TEID for GPRS enum srcDestGTPU { value 7; + description "Source-Destination GTPU-TEID for GPRS"; + } + enum srcDestSymmetric { + value 8; + description "Source-Destination Symmetric"; + } + enum srcDestInnerAll { + value 9; + description "Source-Destination Inner All"; + } + enum srcDestInnerGre { + value 10; + description "Source-Destination Inner GRE"; + } + enum srcDestInnerGreSymmetric { + value 11; + description "Source-Destination Inner GRE Symmetric"; + } + enum srcDestIPv6FlowLabel { + value 12; + description "Source-Destination IPv6 Flow Label"; + } + enum srcDestTTL { + value 13; + description "Source-Destination TTL"; + } + enum srcDestUDF { + value 14; + description "Source-Destination UDF"; } } default "disabled"; } // Nexthop Flags - // Default Value computed from unspecified typedef ip_NhFlags { - // bits- Using string type string; default "unspecified"; } @@ -10368,34 +10758,37 @@ module Cisco-NX-OS-device { // Operational state typedef ip_OperSt { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // Down enum down { value 1; + description "Down"; } - - // Up enum up { value 2; + description "Up"; } - - // Failed enum failed { value 3; + description "Failed"; } } default "up"; } + // Preference + typedef ip_Preference { + type uint8 { + range "0..255"; + } + default "0"; + } + // Rt control typedef ip_RtControl { - // bits- Using string type string; } @@ -10411,20 +10804,17 @@ module Cisco-NX-OS-device { // cli: ipv6 switch-packets lla typedef ip_SwitchPktTarget { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // Switch Packets all enum all { value 1; + description "Switch Packets all"; } - - // Switch Packets with lla enum lla { value 2; + description "Switch Packets with lla"; } } default "disabled"; @@ -10433,35 +10823,29 @@ module Cisco-NX-OS-device { // Unnumbered Operational state qualifier typedef ip_UnnumberedOperStQual { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // Parent is unnumbered enum parent-unnumbered { value 1; + description "Parent is unnumbered"; } - - // child is a numbered interface enum child-numbered { value 2; + description "child is a numbered interface"; } - - // Invalid interface as source enum invalid-source { value 3; + description "Invalid interface as source"; } - - // Unnumbered not allowed on this interface enum invalid-interface { value 4; + description "Unnumbered not allowed on this interface"; } - - // Unnumbered interface must not be self referantial enum intf-self-referential { value 5; + description "Unnumbered interface must not be self referantial"; } } default "unspecified"; @@ -10475,30 +10859,146 @@ module Cisco-NX-OS-device { // 3 -> loose-allow-default URPF (any form with allow-default) typedef ip_UrpfT { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // URPF strict (rx) enum strict { value 1; + description "URPF strict (rx)"; } - - // URPF loose (any) enum loose { value 2; + description "URPF loose (any)"; } - - // URPF loose allow default (any allow-default) enum loose-allow-default { value 3; + description "URPF loose allow default (any allow-default)"; } } default "disabled"; } + typedef ipfib_AddressType { + type enumeration { + enum IPV4 { + value 0; + description "IPv4 address"; + } + enum IPV6 { + value 1; + description "IPv6 address"; + } + enum LABEL { + value 2; + description "MPLS Label"; + } + } + default "IPV4"; + } + + typedef ipfib_FecType { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum IPV4 { + value 1; + description "IPv4 FEC Type"; + } + enum IPV6 { + value 2; + description "IPv6 FEC Type"; + } + enum IPV4_TE_LSP { + value 3; + description "IPv4 TE LSP FEC Type"; + } + enum IPV6_TE_LSP { + value 4; + description "IPv6 TE LSP FEC Type"; + } + enum TE_IF { + value 5; + description "TE_IF FEC Type"; + } + enum DEAGG { + value 6; + description "Deagregation Label FEC Type"; + } + enum PER_CE { + value 7; + description "PER CE FEC Type"; + } + enum FEC_NONE { + value 8; + description "Nil FEC Type"; + } + enum POLICY_V4_PFX { + value 9; + description "Policy V4 FEC Type"; + } + enum POLICY_V6_PFX { + value 10; + description "Policy v6 FEC Type"; + } + enum ADJ_SID { + value 11; + description "Adjacency SID FEC Type"; + } + enum SRTE { + value 12; + description "SRTE FEC Type"; + } + } + default "DEFAULT"; + } + + typedef ipfib_OutOperEnum { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum PUSH { + value 1; + description "Push Operation with the given stack of labels"; + } + enum SWAP { + value 2; + description "SWAP Operation with the given stack of labels"; + } + enum POP { + value 3; + description "Pop Labels and do regular forwarding"; + } + } + default "DEFAULT"; + } + + typedef ipfib_SpecialAdj { + type enumeration { + enum DEFAULT { + value 0; + description "None"; + } + enum ATTACHED { + value 1; + description "Direct Route"; + } + enum RECEIVE { + value 2; + description "Local Route"; + } + enum DROP { + value 3; + description "Drop Route"; + } + } + default "DEFAULT"; + } + typedef ipmc_Allowv3AsmType { type boolean; default "true"; @@ -10523,63 +11023,62 @@ module Cisco-NX-OS-device { // Interface level Controls typedef ipmc_IfCtrl { - // bits- Using string type string; } // If flags typedef ipmc_IfFlags { - // bits- Using string type string; } // Inst level Controls typedef ipmc_InstCtrl { - // bits- Using string type string; } // Join Type typedef ipmc_JoinType { type enumeration { - - // Static Group enum 0 { value 0; + description "Static Group"; } - - // Join Group enum 1 { value 1; + description "Join Group"; } } } typedef ipmc_RouteFlags { - // bits- Using string type string; } + // Syslog Threshold + typedef ipmc_SyslogThresT { + type uint16 { + range "1..100"; + } + default "90"; + } + // Version typedef ipmc_Ver { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } - - // IGMP v2 enum 2 { value 2; + description "IGMP v2"; } - - // IGMP v3 enum 3 { value 3; + description "IGMP v3"; } } } @@ -10592,60 +11091,49 @@ module Cisco-NX-OS-device { // Database type typedef ipmcsnoop_DbT { type enumeration { - - // Multicast Local Group Database enum group { value 1; + description "Multicast Local Group Database"; } - - // Multicast Fabric Group Database enum fabric-mcgrp { value 2; + description "Multicast Fabric Group Database"; } - - // Querier database enum querier { value 3; + description "Querier database"; } - - // Mrouter database enum mrouter { value 4; + description "Mrouter database"; } - - // Igmp snooping statistics database enum snoopstats { value 5; + description "Igmp snooping statistics database"; } - - // report policy stats database enum policy { value 6; + description "report policy stats database"; } - - // Igmp snooping params enum snoop { value 7; + description "Igmp snooping params"; } - - // explicit tracking enum exptrack { value 8; + description "explicit tracking"; } - - // snoop statistics enum stats { value 9; + description "snoop statistics"; } - - // MAC address table enum mac { value 10; + description "MAC address table"; } - - // MAC OIF enum macoif { value 11; + description "MAC OIF "; } } default "group"; @@ -10658,10 +11146,8 @@ module Cisco-NX-OS-device { } // Domain level controls - // Default Value computed from opt-flood typedef ipmcsnoop_DomControl { - // bits- Using string type string; default "opt-flood"; } @@ -10669,7 +11155,6 @@ module Cisco-NX-OS-device { // Domain flags typedef ipmcsnoop_DomFlags { - // bits- Using string type string; } @@ -10687,15 +11172,13 @@ module Cisco-NX-OS-device { // IPMC snooping forwarding mode typedef ipmcsnoop_FwdMode { type enumeration { - - // IP based forwarding enum ip { value 1; + description "IP based forwarding"; } - - // Mac based forwarding enum mac { value 2; + description "Mac based forwarding"; } } default "ip"; @@ -10710,7 +11193,6 @@ module Cisco-NX-OS-device { // Number of multicast groups typedef ipmcsnoop_InstFlags { - // bits- Using string type string; } @@ -10718,10 +11200,15 @@ module Cisco-NX-OS-device { // is controlled typedef ipmcsnoop_LcC { - // bits- Using string type string; } + typedef ipmcsnoop_LkpModeT { + type string { + length "0..50"; + } + } + typedef ipmcsnoop_LlGrpSuppr { type boolean; default "true"; @@ -10730,30 +11217,25 @@ module Cisco-NX-OS-device { // MAC type typedef ipmcsnoop_MacType { type enumeration { - - // Primary Entry enum * { value 0; + description "Primary Entry"; } - - // Gateway MAC enum G { value 1; + description "Gateway MAC"; } - - // Routed MAC enum R { value 2; + description "Routed MAC"; } - - // Overlay MAC enum O { value 3; + description "Overlay MAC"; } - - // IGMP MAC enum IGMP { value 4; + description "IGMP MAC"; } } } @@ -10776,58 +11258,50 @@ module Cisco-NX-OS-device { // Multicast traffic source address typedef ipmcsnoop_McastSrc { type address_Ip; - default "0"; } - // minimum version + // minimum version Valid range is 2-3, adding 0 for negation typedef ipmcsnoop_MinVer { type uint16 { - range "2..3"; + range "0..3"; } + description "Minimum-version with valid range of 0,2-3"; } // NEW IGMPSNOOP types typedef ipmcsnoop_MrouteType { type enumeration { - - // Statically Configured enum static { value 0; + description "Statically Configured"; } - - // Dynamically Learned enum dynamic { value 1; + description "Dynamically Learned"; } - - // Internally Configured enum internal { value 2; + description "Internally Configured"; } - - // Fabricpath Core enum fabpath { value 3; + description "Fabricpath Core "; } - - // Vpc Peer link enum vpc { value 4; + description "Vpc Peer link "; } - - // Co-Learned enum coLearned { value 5; + description "Co-Learned "; } - - // Peer-Learned enum peerLearned { value 6; + description "Peer-Learned "; } - - // User-Configured enum userConf { value 7; + description "User-Configured "; } } } @@ -10839,17 +11313,22 @@ module Cisco-NX-OS-device { default "5"; } + // Policy name + typedef ipmcsnoop_PolicyNameT { + type string { + length "0..255"; + } + } + // Querier flags typedef ipmcsnoop_QuerierFlags { - // bits- Using string type string; } // Report flags typedef ipmcsnoop_RepFlags { - // bits- Using string type string; } @@ -10864,6 +11343,14 @@ module Cisco-NX-OS-device { type address_Ip; } + // Router Guard vlan interface type + typedef ipmcsnoop_RtrGrdVlanIdT { + type uint32 { + range "1..4095"; + } + default "4095"; + } + // Self mac check loopback typedef ipmcsnoop_SelfMacCheck { type boolean; @@ -10878,17 +11365,18 @@ module Cisco-NX-OS-device { default "90"; } - // Uptime and expiry time - typedef ipmcsnoop_Timer { - type string; - } - // v3 report suppression typedef ipmcsnoop_V3ReportSuppr { type boolean; default "false"; } + typedef ipmcsnoop_VersionT { + type string { + length "0..51"; + } + } + // Vlan id type typedef ipmcsnoop_Vlanid { type uint32 { @@ -10914,6 +11402,13 @@ module Cisco-NX-OS-device { default "false"; } + // vxlan-umc vlan valid range - 1-3967, + // 1-4094 if drop on all Vlans 0 - disable + typedef ipmcsnoop_VxlanVlanRange { + type l2_VlanBitmap; + default "0"; + } + typedef ipqos_BuffSize { type uint64 { range "5000..12582913"; @@ -10929,45 +11424,52 @@ module Cisco-NX-OS-device { typedef ipqos_BurstRateUnit { type enumeration { - - // invalid enum unspecified { value 0; + description "invalid"; } - - // bytes enum bytes { value 1; + description "bytes"; } - - // kilobytes enum kbytes { value 2; + description "kilobytes"; } - - // megabytes enum mbytes { value 3; + description "megabytes"; } - - // milli-seconds enum ms { value 4; + description "milli-seconds"; } - - // micro-seconds enum us { value 5; + description "micro-seconds"; } - - // packets enum packets { value 6; + description "packets"; } } default "unspecified"; } + typedef ipqos_BurstState { + type enumeration { + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 0; + description "disabled"; + } + } + default "disabled"; + } + typedef ipqos_CMapName { type string { length "1..40"; @@ -10981,6 +11483,48 @@ module Cisco-NX-OS-device { } } + typedef ipqos_CosNewNone { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 None { + value 8; + description "None"; + } + } + default "None"; + } + typedef ipqos_DescStr { type string { length "0..200"; @@ -11000,8 +11544,42 @@ module Cisco-NX-OS-device { default "0"; } - typedef ipqos_IfName { - type nw_IfId; + typedef ipqos_LoggingLevel { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; + } + } + default "Warnings"; } typedef ipqos_MPLSExperimental { @@ -11023,6 +11601,18 @@ module Cisco-NX-OS-device { } } + typedef ipqos_OverrideIntfMode { + type enumeration { + enum disabled { + value 0; + } + enum off { + value 1; + } + } + default "disabled"; + } + typedef ipqos_PMapName { type string { length "1..40"; @@ -11037,40 +11627,33 @@ module Cisco-NX-OS-device { typedef ipqos_PoliceAction { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // transmit enum transmit { value 1; + description "transmit"; } - - // drop enum drop { value 2; + description "drop"; } - - // set-cos-transmit enum set-cos-transmit { value 3; + description "set-cos-transmit"; } - - // set-dscp-transmit enum set-dscp-transmit { value 4; + description "set-dscp-transmit"; } - - // set-prec-transmit enum set-prec-transmit { value 5; + description "set-prec-transmit"; } - - // set-qos-transmit enum set-qos-transmit { value 6; + description "set-qos-transmit"; } } } @@ -11081,47 +11664,45 @@ module Cisco-NX-OS-device { } } + typedef ipqos_PolicerName { + type string { + length "0..40"; + } + } + typedef ipqos_Prec { type enumeration { - - // routine enum routine { value 0; + description "routine"; } - - // priority enum priority { value 1; + description "priority"; } - - // immediate enum immediate { value 2; + description "immediate"; } - - // flash enum flash { value 3; + description "flash"; } - - // flash-override enum flash-override { value 4; + description "flash-override"; } - - // critical enum critical { value 5; + description "critical"; } - - // internet enum internet { value 6; + description "internet"; } - - // network enum network { value 7; + description "network"; } } } @@ -11142,49 +11723,76 @@ module Cisco-NX-OS-device { type uint8; } + // Priority Group value + typedef ipqos_PriorityGrpVal { + type enumeration { + enum 0 { + value 0; + description "0"; + } + 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 None { + value 8; + description "None"; + } + } + default "None"; + } + typedef ipqos_PriorityLevel { type uint8 { range "1..8"; } - default "1"; } typedef ipqos_Protocol { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // IP ARP enum arp { value 1; + description "IP ARP"; } - - // Bridging enum bridging { value 2; + description "Bridging"; } - - // Cisco Discovery Protocol enum cdp { value 3; + description "Cisco Discovery Protocol"; } - - // Dynamic Host Configuration enum dhcp { value 7; + description "Dynamic Host Configuration"; } - - // Intermediate System Intermediate System Protocol enum isis { value 8; + description "Intermediate System Intermediate System Protocol"; } - - // Fcoe enum fcoe { value 14; + description "Fcoe"; } } } @@ -11211,14 +11819,44 @@ module Cisco-NX-OS-device { default "match-all"; } + // afd queue-desired + typedef ipqos_QueueDesired { + type uint64 { + range "1..52428800"; + } + } + + typedef ipqos_QueueDesiredUnit { + type enumeration { + enum none { + value 0; + description "none"; + } + enum bytes { + value 1; + description "bytes"; + } + enum kbytes { + value 2; + description "kbytes"; + } + enum mbytes { + value 3; + description "mbytes"; + } + } + default "none"; + } + // queue-limit + // Default Value "12582913" Removed - out of range 0..12582912 typedef ipqos_QueueLimit { type uint64 { range "0..12582912"; } - default "0"; } + // Default Value "255" Removed - out of range 0..10 typedef ipqos_QueueLimitDynamic { type uint8 { range "0..10"; @@ -11227,50 +11865,41 @@ module Cisco-NX-OS-device { typedef ipqos_QueueLimitUnit { type enumeration { - - // none enum none { value 0; + description "none"; } - - // packets enum packets { value 1; + description "packets"; } - - // bytes enum bytes { value 2; + description "bytes"; } - - // kbytes enum kbytes { value 3; + description "kbytes"; } - - // mbytes enum mbytes { value 4; + description "mbytes"; } - - // gbytes enum gbytes { value 5; + description "gbytes"; } - - // ms enum ms { value 6; + description "ms"; } - - // us enum us { value 7; + description "us"; } - - // perc enum perc { value 8; + description "perc"; } } default "none"; @@ -11283,40 +11912,33 @@ module Cisco-NX-OS-device { typedef ipqos_RateUnit { type enumeration { - - // unspecified enum unspecified { value 0; + description "unspecified"; } - - // bps enum bps { value 1; + description "bps"; } - - // kbps enum kbps { value 2; + description "kbps"; } - - // mbps enum mbps { value 3; + description "mbps"; } - - // gbps enum gbps { value 4; + description "gbps"; } - - // pps enum pps { value 5; + description "pps"; } - - // percentage enum pct { value 6; + description "percentage"; } } default "unspecified"; @@ -11324,111 +11946,106 @@ module Cisco-NX-OS-device { typedef ipqos_ShapeRate { type uint64 { - range "0..100000000000"; + range "0..400000000000"; } } typedef ipqos_StatsType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // Match under the class-map enum matchCMap { value 1; + description "Match under the class-map"; } - - // MTU enum MTU { value 2; + description "MTU"; } - - // Set Action enum setAction { value 3; + description "Set Action"; } - - // Pause enum pause { value 4; + description "Pause"; } - - // Bandwidth enum bw { value 5; + description "Bandwidth"; } - - // Bandwith remaining enum bwRem { value 6; + description "Bandwith remaining"; } - - // Shape enum shape { value 7; + description "Shape"; } - - // Priority enum prio { value 8; + description "Priority"; } - - // Random Detect enum randomDetect { value 9; + description "Random Detect"; } - - // Queuing enum queuing { value 10; + description "Queuing"; } - - // Policing enum police { value 11; + description "Policing"; } - - // Queue Limit enum qlimit { value 12; + description "Queue Limit"; } - - // Microburst enum microburst { value 13; + description "Microburst"; } } } - typedef ipqos_ThreshUnit { + typedef ipqos_ThresUnit { type enumeration { - - // none enum none { value 0; + description "none"; } + enum bytes { + value 1; + description "bytes"; + } + } + default "none"; + } - // packets + typedef ipqos_ThreshUnit { + type enumeration { + enum none { + value 0; + description "none"; + } enum packets { value 1; + description "packets"; } - - // bytes enum bytes { value 2; + description "bytes"; } - - // kbytes enum kbytes { value 3; + description "kbytes"; } - - // mbytes enum mbytes { value 4; + description "mbytes"; } } default "none"; @@ -11441,6 +12058,13 @@ module Cisco-NX-OS-device { default "0"; } + typedef ipqos_Threshold { + type uint32 { + range "0..13319072"; + } + default "0"; + } + typedef ipqos_Weight { type uint8 { range "0..15"; @@ -11459,54 +12083,54 @@ module Cisco-NX-OS-device { } } + typedef ipqos_ecnThresh { + type uint32 { + range "1..500000"; + } + } + // 253/512/64 typedef ipqos_ethernetList { type string { + pattern ".*((,)?(((2[0-5][0-3])|(1[0-9]{2})|([1-9][0-9])|[1-9])/((5[0-1][0-2])|([1-4][0-9]{2})|([1-9][0-9]?))(/((6[0-4])|[6-9]|([1-5][0-9]?)))?)(-((5[0-1][0-2])|([1-4][0-9]{2})|([1-9][0-9]?)))?)+.*|.*0.*"; } default "0"; } typedef ipqos_policyDirection { type enumeration { - - // none enum none { value 0; + description "none"; } - - // ingress enum ingress { value 1; + description "ingress"; } - - // egress enum egress { value 2; + description "egress"; } - - // both enum both { value 3; + description "both"; } } } typedef ipqos_policyType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // qos enum qos { value 1; + description "qos"; } - - // queuing enum queuing { value 2; + description "queuing"; } } } @@ -11514,21 +12138,20 @@ module Cisco-NX-OS-device { // <1-4096> List of port-channle ids typedef ipqos_portChanList { type string { + pattern ".*((,)?((409[0-6])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([0-9][0-9]{0,2}))(-(409[0-6])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))?)+.*|0"; } default "0"; } typedef ipqos_statsState { type enumeration { - - // enabled enum enabled { value 0; + description "enabled"; } - - // disabled enum disabled { value 1; + description "disabled"; } } default "enabled"; @@ -11537,10 +12160,45 @@ module Cisco-NX-OS-device { // <1-4094> List of vlan ids typedef ipqos_vlanList { type string { + pattern ".*(,?((409[0-4])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))(-(409[0-4])|(40[0-8][0-9])|([1-3][0-9]{1,3})|([1-9][0-9]{0,2}))?)+.*|0"; } default "0"; } + typedef ipt_AclName { + type string { + length "0..64"; + } + } + + // DSCP + typedef ipt_Dscp { + type uint8 { + range "0..63"; + } + } + + typedef ipt_Name { + type string { + length "0..32"; + } + } + + // Actual Range is from 10 to 16777215 + // To be controlled in the BI logic + typedef ipt_SamplingRate { + type uint32 { + range "0..16777215"; + } + } + + // TTL + typedef ipt_Ttl { + type uint8 { + range "0..255"; + } + } + typedef ipv4_ClientFlagType { type uint8; } @@ -11614,25 +12272,21 @@ module Cisco-NX-OS-device { // Config Error typedef ipv6_ConfigErr { type enumeration { - - // Unknown enum noerror { value 0; + description "Unknown"; } - - // Config failed for IPv6 neighbor address enum nghbrAddress { value 1; + description "Config failed for IPv6 neighbor address"; } - - // Config failed for IPv6 use link local only enum useLinkLocalOnly { value 2; + description "Config failed for IPv6 use link local only"; } - - // Config failed for IPv6 forward enum forward { value 3; + description "Config failed for IPv6 forward"; } } } @@ -11640,25 +12294,21 @@ module Cisco-NX-OS-device { // Event History Size typedef ipv6_IPv6EventLogSize { type enumeration { - - // Disable enum disabled { value 0; + description "Disable"; } - - // Small enum small { value 1; + description "Small"; } - - // Medium enum medium { value 2; + description "Medium"; } - - // Large enum large { value 3; + description "Large"; } } default "small"; @@ -11667,40 +12317,33 @@ module Cisco-NX-OS-device { // Event Log Type typedef ipv6_IPv6EventType { type enumeration { - - // IPv6 Error Log enum ipv6Event { value 0; + description "IPv6 Error Log"; } - - // Bfd Debug Message for IPv6 enum bfdEvent { value 1; + description "Bfd Debug Message for IPv6"; } - - // Syslog Message for IPv6 enum syslog { value 2; + description "Syslog Message for IPv6"; } - - // Ipc Debug Message enum ipc { value 3; + description "Ipc Debug Message"; } - - // SNMP Events enum snmp { value 4; + description "SNMP Events"; } - - // High Availability Event enum highAvailability { value 5; + description "High Availability Event"; } - - // Sdb Message of IPv6 enum sdb { value 6; + description "Sdb Message of IPv6"; } } } @@ -11761,30 +12404,75 @@ module Cisco-NX-OS-device { // Adj operational state typedef isis_AdjOperSt { type enumeration { - - // Initializing enum init { value 1; + description "Initializing"; } - - // Up enum up { value 2; + description "Up"; } - - // Down enum down { value 3; + description "Down"; } - - // Graceful restart initializing enum gr-init { value 4; + description "Graceful restart initializing"; } } default "init"; } + // Administrative state + typedef isis_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabling table map for Selective route"; + } + enum disabled { + value 2; + description "Disabling table map for Selective route"; + } + } + default "disabled"; + } + + // Advertise interface Level type + typedef isis_AdvtLvl { + type enumeration { + enum l0 { + value 0; + description "Level-0"; + } + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + } + default "l0"; + } + + // Address family type + typedef isis_AfT { + type enumeration { + enum v4 { + value 1; + description "IPv4 address family"; + } + enum v6 { + value 2; + description "IPv6 address family"; + } + } + default "v4"; + } + // Authentication key-chain name typedef isis_AuthKeyN { type string; @@ -11793,18 +12481,39 @@ module Cisco-NX-OS-device { // Authentication type typedef isis_AuthT { type enumeration { - - // Clear enum clear { value 1; + description "Clear"; } - - // MD5 enum md5 { value 2; + description "MD5"; + } + enum unknown { + value 3; + description "Unknown"; + } + } + default "unknown"; + } + + // BFD type + typedef isis_BfdT { + type enumeration { + enum inheritVrf { + value 1; + description "Inherit BFD from VRF"; + } + enum enabled { + value 2; + description "Enable BFD"; + } + enum disabled { + value 3; + description "Disable BFD"; } } - default "md5"; + default "inheritVrf"; } // Bandwidth reference @@ -11816,15 +12525,13 @@ module Cisco-NX-OS-device { // Bandwidth reference unit typedef isis_BwRefUnit { type enumeration { - - // Mbps enum mbps { value 0; + description "Mbps"; } - - // Gbps enum gbps { value 1; + description "Gbps"; } } default "mbps"; @@ -11843,51 +12550,84 @@ module Cisco-NX-OS-device { type uint16 { range "1..65535"; } - default "90"; + default "10"; } // Database type typedef isis_DbT { type enumeration { - - // Link State Dtabase enum ls { value 1; + description "Link State Dtabase"; } - - // Route Database enum rt { value 2; + description "Route Database"; } - - // Nexthop Database enum nh { value 3; + description "Nexthop Database"; } - - // Multicast Group Database enum mcgrp { value 4; + description "Multicast Group Database"; } - - // Fabric Node Database enum fn { value 5; + description "Fabric Node Database"; } - - // Dynamic Tunnel Endpoint Database enum dtep { value 6; + description "Dynamic Tunnel Endpoint Database"; } } default "ls"; } + // Default Information Originate state + typedef isis_DefInfOrigSt { + + type string; + default "off"; + } + + // Distance + typedef isis_Dist { + type uint8 { + range "1..255"; + } + default "115"; + } + + // Distribute link-state Level type + typedef isis_DistrLvl { + type enumeration { + enum l0 { + value 0; + description "Level-0"; + } + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + } + default "l0"; + } + + // Per address family controls + typedef isis_DomAfControl { + + type string; + default "adj-check,set-attached-bit"; + } + // Dom controls - // Default Value computed from unspecified typedef isis_DomControl { - // bits- Using string type string; default "unspecified"; } @@ -11895,13 +12635,117 @@ module Cisco-NX-OS-device { // Per level controls typedef isis_DomLvlControl { - // bits- Using string type string; } // Dom name typedef isis_DomName { - type string; + type l3_VrfName; + } + + // ECMP max paths + typedef isis_Ecmp { + type uint8 { + range "1..64"; + } + default "8"; + } + + // Event History Buffer size in Text/kb + typedef isis_EhSize { + type uint32 { + range "0..4294967295"; + } + } + + // Event History Buffer Type + typedef isis_EhType { + type enumeration { + enum spfLeaf { + value 0; + description "spf-leaf events for ISIS"; + } + enum spfTree { + value 1; + description "spf-tree events for ISIS"; + } + enum psnp { + value 2; + description "PSNP events for ISIS"; + } + enum csnp { + value 3; + description "CSNP events for ISIS"; + } + enum lspGen { + value 4; + description "lsp-gen events for ISIS"; + } + enum lspFlood { + value 5; + description "lsp-flood events for ISIS"; + } + enum iih { + value 6; + description "IIH events for ISIS"; + } + enum adj { + value 7; + description "Adjacency events for ISIS"; + } + enum dis { + value 8; + description "DIS events for ISIS"; + } + enum events { + value 9; + description "Events events for ISIS"; + } + enum cli { + value 10; + description "CLI events for ISIS"; + } + enum ha { + value 11; + description "HA events for ISIS"; + } + enum gr { + value 12; + description "Graceful Restart events for ISIS"; + } + enum urib { + value 13; + description "URIB events for ISIS"; + } + enum redist { + value 14; + description "Redist events for ISIS"; + } + enum tlv { + value 15; + description "TLV events for ISIS"; + } + enum mtr { + value 16; + description "MTR events for ISIS"; + } + enum perf { + value 17; + description "Performance events for ISIS"; + } + enum df { + value 18; + description "Dynamic Flooding events for ISIS"; + } + enum sr { + value 19; + description "Segment-routing events for ISIS"; + } + enum ulib { + value 20; + description "ULIB events for ISIS"; + } + } } // Fragment number @@ -11936,20 +12780,17 @@ module Cisco-NX-OS-device { // Interface Hello-Padding type typedef isis_HelloPadT { type enumeration { - - // Enabling Hello-Padding always on interface enum always { value 1; + description "Enabling Hello-Padding always on interface"; } - - // Disabling Hello-Padding to Transient mode on Interface enum transient { value 2; + description "Disabling Hello-Padding to Transient mode on Interface"; } - - // Disabling Hello-Padding on Interface enum never { value 3; + description "Disabling Hello-Padding on Interface"; } } default "always"; @@ -11958,10 +12799,17 @@ module Cisco-NX-OS-device { // Interface controls typedef isis_IfControl { - // bits- Using string type string; } + // Distribute Link-state Instance-id + typedef isis_InstId { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + // Instance name typedef isis_InstanceName { type string; @@ -11970,20 +12818,17 @@ module Cisco-NX-OS-device { // IS type typedef isis_IsT { type enumeration { - - // L1 IS type enum l1 { value 1; + description "L1 IS type"; } - - // L2 IS type enum l2 { value 2; + description "L2 IS type"; } - - // L1-2 IS type enum l12 { value 3; + description "L1-2 IS type"; } } default "l12"; @@ -11994,6 +12839,13 @@ module Cisco-NX-OS-device { type uint8; } + // Logging Level + typedef isis_LogL { + type uint32 { + range "0..7"; + } + } + // Lsp generation initial wait interval typedef isis_LspGenInitIntvl { type uint32 { @@ -12029,20 +12881,17 @@ module Cisco-NX-OS-device { // Level type typedef isis_LvlT { type enumeration { - - // P2P enum p2p { value 0; + description "P2P"; } - - // Level1 enum l1 { value 1; + description "Level1"; } - - // Level2 enum l2 { value 2; + description "Level2"; } } default "l1"; @@ -12059,14 +12908,12 @@ module Cisco-NX-OS-device { // Mesh group controls typedef isis_MeshGrpControl { - // bits- Using string type string; } // Mesh group id typedef isis_MeshGrpId { - // MAX Converted to int from 0xffffffff type uint32 { range "1..4294967295"; } @@ -12075,28 +12922,25 @@ module Cisco-NX-OS-device { // Metric typedef isis_Metric { type uint32 { - range "1..63"; + range "0..16777216"; } - default "1"; + default "16777216"; } // Metric style typedef isis_MetricStyle { type enumeration { - - // Narrow enum narrow { value 1; + description "Narrow"; } - - // Wide enum wide { value 2; + description "Wide"; } - - // Transition enum transition { value 3; + description "Transition"; } } default "wide"; @@ -12115,28 +12959,43 @@ module Cisco-NX-OS-device { type string; } + // Network Type point-to-point state + typedef isis_NetworkTypeP2PSt { + type enumeration { + enum off { + value 0; + description "Off"; + } + enum on { + value 1; + description "On"; + } + enum useAllISMac { + value 2; + description "Use allISs MAC"; + } + } + default "off"; + } + // Operational state typedef isis_OperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Running smoothly enum ok { value 2; + description "Running smoothly"; } - - // Failed enum failed { value 3; + description "Failed"; } } } @@ -12144,30 +13003,25 @@ module Cisco-NX-OS-device { // Overload administrative state typedef isis_OverloadAdminSt { type enumeration { - - // Off enum off { value 0; + description "Off"; } - - // Always on enum always-on { value 1; + description "Always on"; } - - // On at bootup enum bootup { value 2; + description "On at bootup"; } - - // Set till bgp convergence enum bgp-converge { value 3; + description "Set till bgp convergence"; } - - // Set till bgp convergence with max wait enum bgp-converge-max-wait { value 4; + description "Set till bgp convergence with max wait"; } } default "bootup"; @@ -12176,28 +13030,59 @@ module Cisco-NX-OS-device { // Passive Interface Level type typedef isis_PassiveIntfT { type enumeration { - - // Passive Interface type Level-1 enum l1 { value 1; + description "Passive Interface type Level-1"; } - - // Passive Interface type Level-2 enum l2 { value 2; + description "Passive Interface type Level-2"; } - - // Passive Interface type Level-1-2 enum l12 { value 3; + description "Passive Interface type Level-1-2"; } - - // Passive Interface default type - enum inherit { + enum noL1 { value 4; + description "No Passive Interface type Level-1"; + } + enum noL2 { + value 5; + description "No Passive Interface type Level-2"; + } + enum noL12 { + value 6; + description "No Passive Interface type Level-1-2"; + } + enum inheritDef { + value 7; + description "Passive Interface default type"; + } + } + default "inheritDef"; + } + + // Pasive default type + typedef isis_PassiveT { + type enumeration { + enum l1 { + value 0; + description "L1 Passive type"; + } + enum l2 { + value 1; + description "L2 Passive type"; + } + enum l12 { + value 2; + description "L1-2 Passive type"; + } + enum unknown { + value 3; + description "Unknown Passive type"; } } - default "inherit"; + default "unknown"; } // LSP retransmit Interval @@ -12216,6 +13101,21 @@ module Cisco-NX-OS-device { default "66"; } + // ISIS SR option support in Segment-Routing + typedef isis_SgmntRtg { + type enumeration { + enum none { + value 0; + description "Unspecified"; + } + enum srv6 { + value 1; + description "Support SRv6 option in Segment-Routing"; + } + } + default "none"; + } + // Spf computation initial wait interval typedef isis_SpfCompInitIntvl { type uint32 { @@ -12247,13 +13147,39 @@ module Cisco-NX-OS-device { default "600"; } + // Summary Address Level type + typedef isis_SumLvl { + type enumeration { + enum l1 { + value 1; + description "Level-1"; + } + enum l2 { + value 2; + description "Level-2"; + } + enum l12 { + value 3; + description "Level-1-2"; + } + } + default "l12"; + } + // Overload Suppress controls typedef isis_SuppressControl { - // bits- Using string type string; } + // Distribute Link-state throttle interval + typedef isis_Throttle { + type uint16 { + range "0..50"; + } + default "0"; + } + // TLV type typedef isis_TlvType { type uint8; @@ -12264,12 +13190,312 @@ module Cisco-NX-OS-device { type string; } + // Multi-topology type + typedef isis_TopoT { + type enumeration { + enum st { + value 1; + description "Single Topology"; + } + enum mt { + value 2; + description "Multi-topology"; + } + enum mtt { + value 3; + description "Multi-topology transition"; + } + } + default "st"; + } + // Wide Metric typedef isis_WideMetric { type uint32 { - range "1..16777215"; + range "0..16777216"; } - default "40"; + default "16777216"; + } + + typedef itd_AclNameType { + type string { + length "0..50"; + } + } + + // Administrative state + typedef itd_AdminSt { + type enumeration { + enum no_shut { + value 1; + description "Enabled"; + } + enum shut { + value 0; + description "Disabled"; + } + } + default "shut"; + } + + typedef itd_BucketNumType { + type uint32 { + range "0..256"; + } + default "0"; + } + + typedef itd_DevGrpNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_DnsHostType { + type string { + length "0..99"; + } + } + + typedef itd_HttpStringType { + type string { + length "0..99"; + } + } + + typedef itd_LBMethod { + type enumeration { + enum noLBMethod { + value 0; + description "no load-balancing"; + } + enum src { + value 1; + description "src based load-balancing"; + } + enum dst { + value 2; + description "dst based load-balancing"; + } + } + default "noLBMethod"; + } + + typedef itd_MaskPosType { + type uint32 { + range "0..127"; + } + default "0"; + } + + typedef itd_PortGrpNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_Prefix { + type uint32 { + range "0..128"; + } + default "0"; + } + + typedef itd_SvcNameType { + type string { + length "0..31"; + pattern ".*[a-zA-Z0-9_\\.\\\\-]+.*"; + } + } + + typedef itd_ctrlType { + type enumeration { + enum disable { + value 0; + description "disable control status"; + } + enum enable { + value 1; + description "enable control status"; + } + } + default "disable"; + } + + typedef itd_dgFaultBitmapT { + + type string; + } + + typedef itd_failactionType { + type enumeration { + enum nofailaction { + value 0; + description "no failaction"; + } + enum nodeReassign { + value 1; + description "failaction node reassign"; + } + enum nodeLeastBucket { + value 2; + description "failaction node least bucket"; + } + enum nodePerBucket { + value 3; + description "failaction node per bucket"; + } + enum bucketDistribute { + value 4; + description "failaction bucket distribute"; + } + } + default "nofailaction"; + } + + typedef itd_ingressIfFaultBitmapT { + + type string; + } + + typedef itd_nodeFaultBitmapT { + + type string; + } + + typedef itd_nodeModeType { + type enumeration { + enum primary { + value 0; + description "ITD primary node"; + } + enum hot-standby { + value 1; + description "ITD hot-standby node"; + } + } + default "primary"; + } + + typedef itd_probeFaultBitmapT { + + type string; + } + + typedef itd_protocolType { + type enumeration { + enum noProtocol { + value 0; + description "no protocol"; + } + enum DNS { + value 1; + description "ITD protocol type DNS"; + } + enum HTTP { + value 2; + description "ITD protocol type HTTP"; + } + enum ICMP { + value 3; + description "ITD protocol type ICMP"; + } + enum TCP { + value 4; + description "ITD protocol type TCP"; + } + enum UDP { + value 5; + description "ITD protocol type UDP"; + } + enum IP { + value 6; + description "ITD protocol type IP"; + } + } + default "noProtocol"; + } + + typedef itd_serviceFaultBitmapT { + + type string; + } + + typedef itd_sessActionType { + type enumeration { + enum noAction { + value 0; + description "noAction"; + } + enum commit { + value 1; + description "commit session"; + } + enum abort { + value 2; + description "abort session"; + } + } + default "noAction"; + } + + typedef itd_sessNodeActionType { + type enumeration { + enum add { + value 0; + description "add node to device group"; + } + enum delete { + value 1; + description "delete node from device group"; + } + } + } + + typedef itd_standbyNodeFaultBitmapT { + + type string; + } + + typedef itd_statsActionType { + type enumeration { + enum noAction { + value 0; + description "no action for statistics"; + } + enum on { + value 1; + description "start collecting statistics"; + } + enum off { + value 2; + description "stop collecting statistics"; + } + } + default "noAction"; + } + + typedef itd_vrfName { + type string { + length "1..32"; + } + default "default"; + } + + typedef kbs_adminStType { + type enumeration { + enum enable { + value 1; + description "enable"; + } + enum disable { + value 0; + description "disable"; + } + } + default "disable"; } // Interface administrative state @@ -12298,6 +13524,10 @@ module Cisco-NX-OS-device { default "disable"; } + typedef l1_AutoExcludeVlans { + type l2_VlanBitmap; + } + // Auto negotiate typedef l1_AutoNeg { type enumeration { @@ -12347,6 +13577,14 @@ module Cisco-NX-OS-device { default "0"; } + // Dot 1Q Ethertype + typedef l1_DDot1qEtherType { + type uint32 { + range "1536..65535"; + } + default "33024"; + } + // Dce mode typedef l1_DceMode { type enumeration { @@ -12374,6 +13612,26 @@ module Cisco-NX-OS-device { default "1"; } + // DFE Adaptive Tuning whether enabled or disabled + typedef l1_DfeAdaptiveTuning { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + } + + typedef l1_DfeTuningDelay { + type uint16 { + range "100..10000"; + } + default "100"; + } + // diags type typedef l1_DiagsT { type enumeration { @@ -12390,25 +13648,6 @@ module Cisco-NX-OS-device { default "none"; } - // Dot 1Q Ethertype - typedef l1_Dot1qEtherType { - type enumeration { - enum 0x8100 { - value 1; - } - enum 0x88A8 { - value 2; - } - enum 0x9100 { - value 3; - } - enum any { - value 4; - } - } - default "0x8100"; - } - // Duplex typedef l1_Duplex { type enumeration { @@ -12473,35 +13712,33 @@ module Cisco-NX-OS-device { // FEC Knob typedef l1_FECMode { type enumeration { - - // auto enum auto { value 4; + description "auto"; } - - // RS-Fec enum rs-fec { value 2; + description "RS-Fec"; } - - // FC-Fec enum fc-fec { value 1; + description "FC-Fec"; } - - // Fec-off enum fec-off { value 3; + description "Fec-off"; } - - // RS-IEEE enum rs-ieee { value 5; + description "RS-IEEE"; } - - // RS-CONS16 enum rs-cons16 { value 6; + description "RS-CONS16"; + } + enum kp-fec { + value 7; + description "FECMode: KP-Fec CL119"; } } default "auto"; @@ -12509,7 +13746,6 @@ module Cisco-NX-OS-device { typedef l1_FlowControl { - // bits- Using string type string; } @@ -12537,15 +13773,13 @@ module Cisco-NX-OS-device { // Port Layer typedef l1_Layer { type enumeration { - - // switched enum Layer2 { value 1; + description "switched"; } - - // routed enum Layer3 { value 2; + description "routed"; } } default "Layer2"; @@ -12554,7 +13788,7 @@ module Cisco-NX-OS-device { // Link debounce interval typedef l1_LinkDebounce { type uint16 { - range "0..10000"; + range "0..20000"; } default "100"; } @@ -12583,18 +13817,24 @@ module Cisco-NX-OS-device { default "default"; } + // Link Mac Up Timer + typedef l1_LinkMacUpTimer { + type uint16 { + range "0..120"; + } + default "0"; + } + // Link Transmit Reset whether enabled or disabled typedef l1_LinkTransmitReset { type enumeration { - - // no-skip enum enable { value 1; + description "no-skip"; } - - // skip enum disable { value 0; + description "skip"; } } default "enable"; @@ -12618,7 +13858,6 @@ module Cisco-NX-OS-device { typedef l1_LogEventBitmap { - // bits- Using string type string; } @@ -12711,25 +13950,21 @@ module Cisco-NX-OS-device { // Oper Status typedef l1_OperSt { type enumeration { - - // unknown enum unknown { value 0; + description "unknown"; } - - // down enum down { value 1; + description "down"; } - - // up enum up { value 2; + description "up"; } - - // link-up enum link-up { value 3; + description "link-up"; } } default "down"; @@ -12739,1281 +13974,1027 @@ module Cisco-NX-OS-device { // uniqueness between labels typedef l1_OperStQual { type enumeration { - - // down enum unknown { value 0; + description "down"; } enum up { value 1; } - - // disabled enum admin-down { value 2; + description "disabled"; } - - // parentEthDown enum link-down { value 3; + description "parentEthDown"; } enum fail { value 4; } - - // portLicNtAvl enum no-license { value 5; + description "portLicNtAvl"; } - - // link-up-connected enum link-up { value 6; + description "link-up-connected"; } - - // faulty enum hw-fail { value 7; + description "faulty"; } - - // faulty enum sw-fail { value 8; + description "faulty "; } - - // err-disabled enum err-disabled { value 9; + description "err-disabled"; } - - // sfpAbsent enum sfp-missing { value 10; + description "sfpAbsent"; } - - // faulty enum loopback-diag-failure { value 11; + description "faulty"; } - - // udldUnidir enum udld-unidir-detected { value 12; + description "udldUnidir"; } - - // udldLoop enum udld-tx-rx-loop { value 13; + description "udldLoop"; } - - // udldMismatch enum udld-neighbor-mismatch { value 14; + description "udldMismatch"; } - - // udldEmpEcho enum udld-empty-echo { value 15; + description "udldEmpEcho"; } - - // udldAggr enum udld-aggressive-mode-link-failed { value 16; + description "udldAggr"; } - - // linkFlapErr enum link-flap-err { value 17; + description "linkFlapErr"; } - - // conflctErrDis enum err-disabled-ip-conflict { value 18; + description "conflctErrDis"; } - - // ipQosDcbxpCompatFailure enum ipqos-dcbxp-compat-failure { value 19; + description "ipQosDcbxpCompatFailure"; } - - // notconnect enum link-failure { value 20; + description "notconnect"; } - - // offline enum offline { value 21; + description "offline"; } - - // init enum initializing { value 22; + description "init"; } - - // inactive enum inactive { value 23; + description "inactive"; } - - // channelDown enum channel-admin-down { value 24; + description "channelDown"; } - - // Channel error-disabled-err-disabled enum channel-err-disabled { value 25; + description "Channel error-disabled-err-disabled"; } - - // suspnd enum suspended { value 26; + description "suspnd"; } - - // portSuspnd enum proto-port-suspend { value 27; + description "portSuspnd"; } - - // channelUpdate enum channel-membership-update-in-progress { value 28; + description "channelUpdate"; } - - // parentDown enum parent-down { value 29; + description "parentDown"; } - - // adminDown-parentDown enum parent-admin-down { value 30; + description "adminDown-parentDown"; } - - // ifRemoved enum interface-removed { value 31; + description "ifRemoved"; } - - // fcotAbsent enum fcot-no-present { value 32; + description "fcotAbsent"; } - - // SFP vendor not supported-err-disabled enum fcot-vendor-not-supported { value 33; + description "SFP vendor not supported-err-disabled"; } - - // errDisabledIncompatPortMode-err-disabled enum incompatible-admin-mode { value 34; + description "errDisabledIncompatPortMode-err-disabled"; } - - // errDisabledIncompatPortSpeed-err-disabled enum incompatible-admin-speed { value 35; + description "errDisabledIncompatPortSpeed-err-disabled"; } - - // suspended enum suspended-by-mode { value 36; + description "suspended"; } - - // suspended enum suspended-by-speed { value 37; + description "suspended"; } - - // isolated enum domain-max-retransmission-failure { value 38; + description "isolated"; } - - // isolated enum loopback-isolation { value 39; + description "isolated"; } - - // modUpgrade enum upgrade-in-progress { value 40; + description "modUpgrade"; } - - // noOperMembers enum port-channel-members-down { value 41; + description "noOperMembers"; } - - // parentEthDown enum ethernet-link-down { value 42; + description "parentEthDown"; } - - // interface-parentEthDown enum ethernet-interface-down { value 43; + description "interface-parentEthDown"; } - - // adminCfgChng enum admin-config-change { value 44; + description "adminCfgChng"; } - - // modRemoved enum module-removed { value 45; + description "modRemoved"; } - - // vrfUnusable enum vrf-unusable { value 46; + description "vrfUnusable"; } - - // connected enum none { value 47; + description "connected"; } - - // sfpInit enum xcvr-initializing { value 48; + description "sfpInit"; } - - // capAbsent enum cap-absent { value 49; + description "capAbsent"; } - - // xcvrEthComplianceErr enum sfp-eth-compliant-err { value 50; + description "xcvrEthComplianceErr"; } - - // SDP timeout/SFP Mismatch enum sdp-timeout { value 51; + description "SDP timeout/SFP Mismatch"; } - - // FEX identity mismatch enum sat-incompat-topo { value 52; + description "FEX identity mismatch"; } - - // FEX not configured enum sat-not-configured { value 53; + description "FEX not configured"; } - - // xcvrAuthFailed enum auth-fail { value 54; + description "xcvrAuthFailed"; } - - // authPending enum auth-pending { value 55; + description "authPending"; } - - // suspendedMinLinks enum suspended-due-to-minlinks { value 56; + description "suspendedMinLinks"; } - - // suspended(no LACP PDUs) enum suspended-due-to-no-lacp-pdus { value 57; + description "suspended(no LACP PDUs)"; } - - // fabrcIfDown enum sat-fabric-if-down { value 58; + description "fabrcIfDown"; } - - // invalidFbIf enum invalid-sat-fabric-if { value 59; + description "invalidFbIf"; } - - // FEX-fabric sfp invalid enum fex-sfp-invalid { value 60; + description "FEX-fabric sfp invalid"; } - - // mtuFailure enum suspend-by-mtu { value 61; + description "mtuFailure"; } - - // suspndByVpc enum suspend-by-vpc { value 62; + description "suspndByVpc"; } - - // routrmacFail enum router-mac-failure { value 63; + description "routrmacFail"; } - - // xcvrAuthFailed enum xcvr-auth-failed { value 64; + description "xcvrAuthFailed"; } - - // ServDisab enum non-sticky-externally-disabled { value 65; + description "ServDisab"; } - - // xcvrSpeedMismatch enum sfp-speed-mismatch { value 66; + description "xcvrSpeedMismatch"; } - - // SFP checksum error enum fcot-chksum-err { value 67; + description "SFP checksum error"; } - - // Transceiver validation failed enum xcvr-invalid { value 68; + description "Transceiver validation failed"; } - - // vpcPeerLinkDown enum vpc-peer-link-down { value 69; + description "vpcPeerLinkDown"; } - - // vpcConfigInProgress enum vpc-cfg-in-progress { value 70; + description "vpcConfigInProgress"; } - - // noRespFrmVpc enum vpc-no-response-from-peer { value 71; + description "noRespFrmVpc"; } - - // BPDUGuard errDisable enum bpdu-guard-err-disable { value 72; + description "BPDUGuard errDisable"; } - - // htStdbyInBndl enum hot-standby-in-bundle { value 73; + description "htStdbyInBndl"; } - - // intFailErrDis enum handshake-fail-errdisable { value 74; + description "intFailErrDis"; } - - // nonParticipating enum non-participating { value 75; + description "nonParticipating"; } - - // rcfInProgress enum rcf-in-progress { value 76; + description "rcfInProgress"; } - - // elpFailureIsolation enum elp-failure-isolation { value 77; + description "elpFailureIsolation"; } - - // escFailureIsolation enum esc-failure-isolation { value 78; + description "escFailureIsolation"; } - - // domainOverlapIsolation enum domain-overlap-isolation { value 79; + description "domainOverlapIsolation"; } - - // domainAddrAssignFailureIsolation enum domain-addr-assign-failure-isolation { value 80; + description "domainAddrAssignFailureIsolation"; } - - // domainOtherSideEportIsolated enum domain-other-side-eport-isolated { value 81; + description "domainOtherSideEportIsolated"; } - - // domainInvalidRcfReceived enum domain-invalid-rcf-received { value 82; + description "domainInvalidRcfReceived"; } - - // domainManagerDisabled enum domain-manager-disabled { value 83; + description "domainManagerDisabled"; } - - // zoneMergeFailureIsolation enum zone-merge-failure-isolation { value 84; + description "zoneMergeFailureIsolation"; } - - // vsanMismatchIsolation enum vsan-mismatch-isolation { value 85; + description "vsanMismatchIsolation"; } - - // srcPortNotBound enum src-port-not-bound { value 86; + description "srcPortNotBound"; } - - // suspendedByWwn enum suspended-by-wwn { value 87; + description "suspendedByWwn"; } - - // eppFailure enum epp-failure { value 88; + description "eppFailure"; } - - // portVsanMismatchIsolation enum port-vsan-mismatch-isolation { value 89; + description "portVsanMismatchIsolation"; } - - // incompatibleAdminRxbbcredit enum incompatible-admin-rxbbcredit { value 90; + description "incompatibleAdminRxbbcredit"; } - - // incompatibleAdminRxbufsize enum incompatible-admin-rxbufsize { value 91; + description "incompatibleAdminRxbufsize"; } - - // zoneRemoteNoRespIsolation enum zone-remote-no-resp-isolation { value 92; + description "zoneRemoteNoRespIsolation"; } - - // osmEPortUp enum osm-e-port-up { value 93; + description "osmEPortUp"; } - - // osmNonEPortUp enum osm-non-e-port-up { value 94; + description "osmNonEPortUp"; } - - // peerFcipClosedTcpConnection enum peer-fcip-closed-tcp-connection { value 95; + description "peerFcipClosedTcpConnection"; } - - // peerFcipResetTcpConnection enum peer-fcip-reset-tcp-connection { value 96; + description "peerFcipResetTcpConnection"; } - - // tcpMaxRetransmissions enum tcp-max-retransmissions { value 97; + description "tcpMaxRetransmissions"; } - - // tcpKeepAliveTimerExpired enum tcp-keep-alive-timer-expired { value 98; + description "tcpKeepAliveTimerExpired"; } - - // tcpPersistTimerExpired enum tcp-persist-timer-expired { value 99; + description "tcpPersistTimerExpired"; } - - // tunnelSrcPortRemoved enum tunnel-src-port-removed { value 100; + description "tunnelSrcPortRemoved"; } - - // tunnelSrcModuleNotOnline enum tunnel-src-module-not-online { value 101; + description "tunnelSrcModuleNotOnline"; } - - // invalidConfig enum invalid-config { value 102; + description "invalidConfig"; } - - // portBindFailure enum port-bind-failure { value 103; + description "portBindFailure"; } - - // fabricBindFailure enum fabric-bind-failure { value 104; + description "fabricBindFailure"; } - - // noTrunkOperVsansIsolation enum no-trunk-oper-vsans-isolation { value 105; + description "noTrunkOperVsansIsolation"; } - - // ficonVsanDown enum ficon-vsan-down { value 106; + description "ficonVsanDown"; } - - // invalidAttachment enum invalid-attachment { value 107; + description "invalidAttachment"; } - - // portBlocked enum port-blocked { value 108; + description "portBlocked"; } - - // incompatibleAdminRxbbcreditPerformanceBuf enum incompatible-admin-rxbbcredit-performance-buf { value 109; + description "incompatibleAdminRxbbcreditPerformanceBuf"; } - - // tooManyInvalidFlogis enum too-many-invalid-flogis { value 110; + description "tooManyInvalidFlogis"; } - - // deniedDueToPortBinding enum denied-due-to-port-binding { value 111; + description "deniedDueToPortBinding"; } - - // elpFailureRevisionMismatch enum elp-failure-revision-mismatch { value 112; + description "elpFailureRevisionMismatch"; } - - // elpFailureClassfParamErr enum elp-failure-classf-param-err { value 113; + description "elpFailureClassfParamErr"; } - - // elpFailureClassnParamErr enum elp-failure-classn-param-err { value 114; + description "elpFailureClassnParamErr"; } - - // elpFailureUnknownFlowCtlCode enum elp-failure-unknown-flow-ctl-code { value 115; + description "elpFailureUnknownFlowCtlCode"; } - - // elpFailureInvalidFlowCtlParam enum elp-failure-invalid-flow-ctl-param { value 116; + description "elpFailureInvalidFlowCtlParam"; } - - // elpFailureInvalidPortName enum elp-failure-invalid-port-name { value 117; + description "elpFailureInvalidPortName"; } - - // elpFailureInvalidSwitchName enum elp-failure-invalid-switch-name { value 118; + description "elpFailureInvalidSwitchName"; } - - // elpFailureRatovEdtovMismatch enum elp-failure-ratov-edtov-mismatch { value 119; + description "elpFailureRatovEdtovMismatch"; } - - // elpFailureLoopbackDetected enum elp-failure-loopback-detected { value 120; + description "elpFailureLoopbackDetected"; } - - // elpFailureInvalidTxBbcredit enum elp-failure-invalid-tx-bbcredit { value 121; + description "elpFailureInvalidTxBbcredit"; } - - // elpFailureInvalidPayloadSize enum elp-failure-invalid-payload-size { value 122; + description "elpFailureInvalidPayloadSize"; } - - // bundleMiscfg enum bundle-miscfg { value 123; + description "bundleMiscfg"; } - - // bitErrRtThresExceeded enum bit-err-rt-thres-exceeded { value 124; + description "bitErrRtThresExceeded"; } - - // linkFailLinkReset enum link-fail-link-reset { value 125; + description "linkFailLinkReset"; } - - // linkFailPortInitFailed enum link-fail-port-init-failed { value 126; + description "linkFailPortInitFailed"; } - - // linkFailPortUnusable enum link-fail-port-unusable { value 127; + description "linkFailPortUnusable"; } - - // linkFailLossOfSignal enum link-fail-loss-of-signal { value 128; + description "linkFailLossOfSignal"; } - - // linkFailLossOfSync enum link-fail-loss-of-sync { value 129; + description "linkFailLossOfSync"; } - - // linkFailNosRcvd enum link-fail-nos-rcvd { value 130; + description "linkFailNosRcvd"; } - - // linkFailOlsRcvd enum link-fail-ols-rcvd { value 131; + description "linkFailOlsRcvd"; } - - // linkFailDebounceTimeout enum link-fail-debounce-timeout { value 132; + description "linkFailDebounceTimeout"; } - - // linkFailLrRcvdB2b enum link-fail-lr-rcvd-b2b { value 133; + description "linkFailLrRcvdB2b"; } - - // linkFailCreditLoss enum link-fail-credit-loss { value 134; + description "linkFailCreditLoss"; } - - // linkFailRxQueOverflow enum link-fail-rx-que-overflow { value 135; + description "linkFailRxQueOverflow"; } - - // linkFailTooManyIntr enum link-fail-too-many-intr { value 136; + description "linkFailTooManyIntr"; } - - // linkFailLipRcvdB2b enum link-fail-lip-rcvd-b2b { value 137; + description "linkFailLipRcvdB2b"; } - - // linkFailCreditLossB2b enum link-fail-credit-loss-b2b { value 138; + description "linkFailCreditLossB2b"; } - - // linkFailOpnyTmoB2b enum link-fail-opny-tmo-b2b { value 139; + description "linkFailOpnyTmoB2b"; } - - // linkFailOpnyRetB2b enum link-fail-opny-ret-b2b { value 140; + description "linkFailOpnyRetB2b"; } - - // linkFailLipF8Rcvd enum link-fail-lip-f8-rcvd { value 141; + description "linkFailLipF8Rcvd"; } - - // linkFailLineCardPortShutdown enum link-fail-line-card-port-shutdown { value 142; + description "linkFailLineCardPortShutdown"; } - - // fcspAuthentFailure enum fcsp-authent-failure { value 143; + description "fcspAuthentFailure"; } - - // ohmsExternalLbTest enum ohms-external-lb-test { value 144; + description "ohmsExternalLbTest"; } - - // invalidFabricBindingExchange enum invalid-fabric-binding-exchange { value 145; + description "invalidFabricBindingExchange"; } - - // tovMismatch enum tov-mismatch { value 146; + description "tovMismatch"; } - - // ficonNotEnabled enum ficon-not-enabled { value 147; + description "ficonNotEnabled"; } - - // ficonNoPortnumber enum ficon-no-portnumber { value 148; + description "ficonNoPortnumber"; } - - // ficonBeingEnabled enum ficon-being-enabled { value 149; + description "ficonBeingEnabled"; } - - // eportProhibited enum eport-prohibited { value 150; + description "eportProhibited"; } - - // trunkNotFullyActive enum trunk-not-fully-active { value 151; + description "trunkNotFullyActive"; } - - // fabricBindingSwwnNotFound enum fabric-binding-swwn-not-found { value 152; + description "fabricBindingSwwnNotFound"; } - - // fabricBindingDomainInvalid enum fabric-binding-domain-invalid { value 153; + description "fabricBindingDomainInvalid"; } - - // fabricBindingDatabaseMismatch enum fabric-binding-database-mismatch { value 154; + description "fabricBindingDatabaseMismatch"; } - - // fabricBindingPeerNotResponding enum fabric-binding-peer-not-responding { value 155; + description "fabricBindingPeerNotResponding"; } - - // trackedPortDown enum tracked-port-down { value 156; + description "trackedPortDown"; } - - // ecSuspendedForLoop enum ec-suspended-for-loop { value 157; + description "ecSuspendedForLoop"; } - - // isolateBundleMiscfg enum isolate-bundle-miscfg { value 158; + description "isolateBundleMiscfg"; } - - // peerNotSupportBundles enum peer-not-support-bundles { value 159; + description "peerNotSupportBundles"; } - - // portBringupIsolation enum port-bringup-isolation { value 160; + description "portBringupIsolation"; } - - // domainNotAllowedIsolation enum domain-not-allowed-isolation { value 161; + description "domainNotAllowedIsolation"; } - - // virtualIvrDomainOverlapIsolation enum virtual-ivr-domain-overlap-isolation { value 162; + description "virtualIvrDomainOverlapIsolation"; } - - // outOfService enum out-of-service { value 163; + description "outOfService"; } - - // bundleStdby enum bundle-stdby { value 164; + description "bundleStdby"; } - - // portCapFcPortConnectorTypeErr enum port-cap-fc-port-connector-type-err { value 165; + description "portCapFcPortConnectorTypeErr"; } - - // errorDisabledReinitLimitReached enum error-disabled-reinit-limit-reached { value 166; + description "errorDisabledReinitLimitReached"; } - - // ficonVsanDuplicatePortnum enum ficon-vsan-duplicate-portnum { value 167; + description "ficonVsanDuplicatePortnum"; } - - // internalRcfInProgress enum internal-rcf-in-progress { value 168; + description "internalRcfInProgress"; } - - // twoSwitchesWithSameWwn enum two-switches-with-same-wwn { value 169; + description "twoSwitchesWithSameWwn"; } - - // invalidOtherPrincEfpReqRecd enum invalid-other-princ-efp-req-recd { value 170; + description "invalidOtherPrincEfpReqRecd"; } - - // domainIsolationUnknownReason enum domain-isolation-unknown-reason { value 171; + description "domainIsolationUnknownReason"; } - - // elpFailureAllZeroPeerWwnRcvd enum elp-failure-all-zero-peer-wwn-rcvd { value 172; + description "elpFailureAllZeroPeerWwnRcvd"; } - - // preferedPathIsolation enum prefered-path-isolation { value 173; + description "preferedPathIsolation"; } - - // fcRedirectIsolation enum fc-redirect-isolation { value 174; + description "fcRedirectIsolation"; } - - // portActLicenseNotAvailable enum port-act-license-not-available { value 175; + description "portActLicenseNotAvailable"; } - - // sdmIsolation enum sdm-isolation { value 176; + description "sdmIsolation"; } - - // fcidAllocationFailed enum fcid-allocation-failed { value 177; + description "fcidAllocationFailed"; } - - // externallyDisabled enum externally-disabled { value 178; + description "externallyDisabled"; } - - // fcotReadError enum fcot-read-error { value 179; + description "fcotReadError"; } - - // portGuardDownOnLinkFailure enum port-guard-down-on-link-failure { value 180; + description "portGuardDownOnLinkFailure"; } - - // incompleteConfig enum incomplete-config { value 181; + description "incompleteConfig"; } - - // incompleteTunnelConfig enum incomplete-tunnel-config { value 182; + description "incompleteTunnelConfig"; } - - // hwProgrammingFailed enum hw-programming-failed { value 183; + description "hwProgrammingFailed"; } - - // tunnelDestNotReachable enum tunnel-dest-not-reachable { value 184; + description "tunnelDestNotReachable"; } - - // sfpInvalid enum sfp-invalid { value 185; + description "sfpInvalid"; } - - // tunnelVrfMismatch enum tunnel-vrf-mismatch { value 186; + description "tunnelVrfMismatch"; } - - // tunnelVrfFwRef enum tunnel-vrf-fw-ref { value 187; + description "tunnelVrfFwRef"; } - - // duplicateTunnelCfg enum duplicate-tunnel-cfg { value 188; + description "duplicateTunnelCfg"; } - - // primaryVlanDown enum primary-vlan-down { value 189; + description "primaryVlanDown"; } - - // dot1xSecurityErrdisable enum dot1x-security-errdisable { value 190; + description "dot1xSecurityErrdisable"; } - - // vfTaggingCapabilityErr enum vf-tagging-capability-err { value 191; + description "vfTaggingCapabilityErr"; } - - // portDisabled enum port-disabled { value 192; + description "portDisabled"; } - - // tunnelModeNotConfigured enum tunnel-mode-not-configured { value 193; + description "tunnelModeNotConfigured"; } - - // tunnelSourceNotConfigured enum tunnel-source-not-configured { value 194; + description "tunnelSourceNotConfigured"; } - - // tunnelDestinationNotConfigured enum tunnel-destination-not-configured { value 195; + description "tunnelDestinationNotConfigured"; } - - // tunnelUnable2resolveSourceIpaddress enum tunnel-unable2resolve-source-ipaddress { value 196; + description "tunnelUnable2resolveSourceIpaddress"; } - - // tunnelUnable2resolveDestinationIpaddress enum tunnel-unable2resolve-destination-ipaddress { value 197; + description "tunnelUnable2resolveDestinationIpaddress"; } - - // tunnelVrfIsDown enum tunnel-vrf-is-down { value 198; + description "tunnelVrfIsDown"; } - - // sifAdminDown enum sif-admin-down { value 199; + description "sifAdminDown"; } - - // phyIntfDown enum phy-intf-down { value 200; + description "phyIntfDown"; } - - // intfSifLimitExceeded enum intf-sif-limit-exceeded { value 201; + description "intfSifLimitExceeded"; } - - // insufficientPower enum insufficient-power { value 202; + description "insufficientPower"; } - - // noFcoe enum no-fcoe { value 203; + description "noFcoe"; } - - // dcxCompatMismatch enum dcx-compat-mismatch { value 204; + description "dcxCompatMismatch"; } - - // isolateBundleLimitExceeded enum isolate-bundle-limit-exceeded { value 205; + description "isolateBundleLimitExceeded"; } - - // sifNotBound enum sif-not-bound { value 206; + description "sifNotBound"; } - - // errDisableLacpMiscfg enum err-disable-lacp-miscfg { value 207; + description "errDisableLacpMiscfg"; } - - // errdisabledPktErr enum errdisabled-pkt-err { value 208; + description "errdisabledPktErr"; } - - // vlanVsanMappingNotEnabled enum vlan-vsan-mapping-not-enabled { value 209; + description "vlanVsanMappingNotEnabled"; } - - // stpNotForwardingInFcoeMappedVlan enum stp-not-forwarding-in-fcoe-mapped-vlan { value 210; + description "stpNotForwardingInFcoeMappedVlan"; } - - // moduleOffline enum module-offline { value 211; + description "moduleOffline"; } - - // stpInconsistVpcPeerlinkErrdisable enum stp-inconsist-vpc-peerlink-errdisable { value 212; + description "stpInconsistVpcPeerlinkErrdisable"; } - - // setPortStateFailedErrdisable enum set-port-state-failed-errdisable { value 213; + description "setPortStateFailedErrdisable"; } - - // tunnelSourceDown enum tunnel-source-down { value 214; + description "tunnelSourceDown"; } - - // cdpInfoNotAvail enum cdp-info-not-avail { value 215; + description "cdpInfoNotAvail"; } - - // fcotClkRateMismatch enum fcot-clk-rate-mismatch { value 216; + description "fcotClkRateMismatch"; } - - // portGuardDownOnTrustsecViolation enum port-guard-down-on-trustsec-violation { value 217; + description "portGuardDownOnTrustsecViolation"; } - - // waitForFlogi enum wait-for-flogi { value 218; + description "waitForFlogi"; } - - // npivNotEnabledInUpstream enum npiv-not-enabled-in-upstream { value 219; + description "npivNotEnabledInUpstream"; } - - // vsanMismatchWithUpstreamSwitchPort enum vsan-mismatch-with-upstream-switch-port { value 220; + description "vsanMismatchWithUpstreamSwitchPort"; } - - // portGuardBitErrorRate enum port-guard-bit-error-rate { value 221; + description "portGuardBitErrorRate"; } - - // portGuardSignalLoss enum port-guard-signal-loss { value 222; + description "portGuardSignalLoss"; } - - // portGuardSyncLoss enum port-guard-sync-loss { value 223; + description "portGuardSyncLoss"; } - - // portGuardLinkReset enum port-guard-link-reset { value 224; + description "portGuardLinkReset"; } - - // portGuardCreditLoss enum port-guard-credit-loss { value 225; + description "portGuardCreditLoss"; } - - // ipqosMgrPolicyAppFailed enum ipqos-mgr-policy-app-failed { value 226; + description "ipqosMgrPolicyAppFailed"; } - - // pauseRateLimitErrdisable enum pause-rate-limit-errdisable { value 227; + description "pauseRateLimitErrdisable"; } - - // lstgrpUplinkDown enum lstgrp-uplink-down { value 228; + description "lstgrpUplinkDown"; } - - // stickyDownOnLinkFailure enum sticky-down-on-link-failure { value 229; + description "stickyDownOnLinkFailure"; } - - // dcxMultipleMsapIdsErrdisable enum dcx-multiple-msap-ids-errdisable { value 230; + description "dcxMultipleMsapIdsErrdisable"; } - - // dcx100PdusRcvdNoackErrdisable enum dcx-100-pdus-rcvd-noack-errdisable { value 231; + description "dcx100PdusRcvdNoackErrdisable"; } - - // enmSatIncompatUplink enum enm-sat-incompat-uplink { value 232; + description "enmSatIncompatUplink"; } - - // enmLoopDetected enum enm-loop-detected { value 233; + description "enmLoopDetected"; } - - // subGroupIdNotAssigned enum sub-group-id-not-assigned { value 234; + description "subGroupIdNotAssigned"; } - - // vemUnlicensed enum vem-unlicensed { value 235; + description "vemUnlicensed"; } - - // profileNotFound enum profile-not-found { value 236; + description "profileNotFound"; } - - // vlanDoesNotExist enum vlan-does-not-exist { value 237; + description "vlanDoesNotExist"; } - - // vlanType enum vlan-type { value 238; + description "vlanType"; } - - // vlanDown enum vlan-down { value 239; + description "vlanDown"; } - - // vpcPeerUpgrade enum vpc-peer-upgrade { value 240; + description "vpcPeerUpgrade"; } - - // nonCiscoHbaVftag enum non-cisco-hba-vftag { value 241; + description "nonCiscoHbaVftag"; } - - // domainIdConfigMismatch enum domain-id-config-mismatch { value 242; + description "domainIdConfigMismatch"; } - - // xcvrAbsent enum xcvr-absent { value 243; + description "xcvrAbsent"; } - - // vfcBindingInvalid enum vfc-binding-invalid { value 244; + description "vfcBindingInvalid"; } - - // vlanNotFcoeEnabled enum vlan-not-fcoe-enabled { value 245; + description "vlanNotFcoeEnabled"; } - - // pvlanNativeVlanErr enum pvlan-native-vlan-err { value 246; + description "pvlanNativeVlanErr"; } - - // ethL2VlanDown enum eth-l2-vlan-down { value 247; + description "ethL2VlanDown"; } - - // ethIntfInvalidBinding enum eth-intf-invalid-binding { value 248; + description "ethIntfInvalidBinding"; } - - // pmonFailure enum pmon-failure { value 249; + description "pmonFailure"; } - - // l3NotReady enum l3-not-ready { value 250; + description "l3NotReady"; } - - // speedMismatch enum speed-mismatch { value 251; + description "speedMismatch"; } - - // flowcontrolMismatch enum flowcontrol-mismatch { value 252; + description "flowcontrolMismatch"; } - - // vdcMode enum vdc-mode { value 253; + description "vdcMode"; } - - // enmPinFailLinkDown enum enm-pin-fail-link-down { value 254; + description "enmPinFailLinkDown"; } - - // inactiveM1PortFpathAccessVlan enum inactive-m1-port-fpath-access-vlan { value 255; + description "inactiveM1PortFpathAccessVlan"; } } default "admin-down"; @@ -14024,6 +15005,37 @@ module Cisco-NX-OS-device { type uint32; } + // Packet timestamp Source id + typedef l1_PacketTimestampSourceId { + type uint32 { + range "0..8388606"; + } + default "0"; + } + + // Packet timestamping state whether enabled or disabled + typedef l1_PacketTimestampState { + type enumeration { + enum disable { + value 0; + description "Timestamp disabled"; + } + enum enable-ingress { + value 1; + description "Timestamp enabled in ingress"; + } + enum enable-egress { + value 2; + description "Timestamp enabled in egress"; + } + enum enable-both { + value 3; + description "Timestamp enable both in ingress and egress"; + } + } + default "disable"; + } + // Phy layer/Port type typedef l1_PhyLayer { type enumeration { @@ -14068,25 +15080,21 @@ module Cisco-NX-OS-device { // Port type Fabric : Type of port that the interface is facing typedef l1_PortTypeFabric { type enumeration { - - // no enum no { value 0; + description "no"; } - - // yes enum yes { value 1; + description "yes"; } } default "no"; } // Port usage - // Default Value computed from discovery typedef l1_PortUsage { - // bits- Using string type string; default "discovery"; } @@ -14138,65 +15146,61 @@ module Cisco-NX-OS-device { // Speed typedef l1_Speed { type enumeration { - - // Unspecified enum unknown { value 0; + description "Unspecified"; } - - // 100 Mbps enum 100M { value 2; + description "100 Mbps"; } - - // 1 Gbps enum 1G { value 3; + description "1 Gbps"; } - - // 10 Gbps enum 10G { value 4; + description "10 Gbps"; } - - // 40 Gbps enum 40G { value 5; + description "40 Gbps"; } - - // auto enum auto { value 6; + description "auto"; } - - // auto 100 Mbps enum auto_100M { value 7; + description "auto 100 Mbps"; } - - // auto 100 Mbps/1Gbps enum auto_100M_1G { value 8; + description "auto 100 Mbps/1Gbps"; } - - // 100 Gbps enum 100G { value 9; + description "100 Gbps"; } - - // 25G Gbps enum 25G { value 10; + description "25G Gbps"; } - - // 10 Mbps enum 10M { value 11; + description "10 Mbps"; } - - // 50 Gbps enum 50G { value 12; + description "50 Gbps"; + } + enum 200G { + value 13; + description "200 Gbps"; + } + enum 400G { + value 14; + description "400 Gbps"; } } default "auto"; @@ -14205,51 +15209,42 @@ module Cisco-NX-OS-device { // Speed Group typedef l1_SpeedGroup { type enumeration { - - // Unspecified enum unknown { value 0; + description "Unspecified"; } - - // 1 Gbps enum 1000 { value 3; + description "1 Gbps"; } - - // 25 Gbps enum 25000 { value 10; + description "25 Gbps"; } - - // 10 Gbps enum 10000 { value 4; + description "10 Gbps"; } - - // 40 Gbps enum 40000 { value 5; + description "40 Gbps"; } - - // auto enum auto { value 6; + description "auto"; } } default "auto"; } - // Default Value computed from none typedef l1_StormCtrlAct { - // bits- Using string type string; default "none"; } typedef l1_StormCtrlPPS { - // MAX Converted to int from 0xFFFFFFFF type uint32 { range "0..4294967295"; } @@ -14271,7 +15266,7 @@ module Cisco-NX-OS-device { // Storm Control Policer Packet Rate typedef l1_StormCtrlRate { type decimal64 { - fraction-digits 2; + fraction-digits 6; range "0..100"; } default "100"; @@ -14292,10 +15287,21 @@ module Cisco-NX-OS-device { typedef l1_SwitchportBlock { - // bits- Using string type string; } + typedef l1_SwitchportIsolated { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + typedef l1_SwitchportVirtualEthernetBridge { type enumeration { enum disable { @@ -14367,6 +15373,21 @@ module Cisco-NX-OS-device { default "unknown"; } + // Uni-Directional Ethernet whether enabled or disabled + typedef l1_UniDirectionalEthernet { + type enumeration { + enum disable { + value 0; + description "Disable UDE"; + } + enum send-only { + value 1; + description "UDE TX only"; + } + } + default "disable"; + } + // VDC state typedef l1_VdcSt { type enumeration { @@ -14384,11 +15405,11 @@ module Cisco-NX-OS-device { } // Voice VLAN COS - // Default Value "-1" Removed - out of range -1..7 typedef l1_VoicePortCos { type int8 { range "-1..7"; } + default "-1"; } // Voice VLAN Trust @@ -14408,25 +15429,21 @@ module Cisco-NX-OS-device { // Voice VLAN Type options typedef l1_VoiceVlanType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // tagged enum tagged { value 1; + description "tagged"; } - - // dot1p enum dot1p { value 2; + description "dot1p"; } - - // untagged enum untagged { value 3; + description "untagged"; } } default "none"; @@ -14450,15 +15467,13 @@ module Cisco-NX-OS-device { // mac-learn Cfg State typedef l1_switchportMacLearn { type enumeration { - - // Disabled enum disable { value 0; + description "Disabled"; } - - // Enabled enum enable { value 1; + description "Enabled"; } } default "enable"; @@ -14470,36 +15485,12 @@ module Cisco-NX-OS-device { } // User Configured Flags - // Default Value computed from none typedef l1_userCfgdFlags { - // bits- Using string type string; default "none"; } - // Subject represents the entitiy to which the capability constraint gets applied - typedef l1cap_Subj { - type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Port Channel - enum pc-namespace { - value 1; - } - - // Physical Ethernet Ports - enum ethport { - value 2; - } - } - default "unknown"; - } - // Vsan assoc state typedef l2_AssocOperSt { type enumeration { @@ -14516,15 +15507,13 @@ module Cisco-NX-OS-device { // BD bridging mode typedef l2_BridgeMode { type enumeration { - - // Bridge with IP enum ip { value 1; + description "Bridge with IP"; } - - // Bridge with MAC enum mac { value 2; + description "Bridge with MAC"; } } default "mac"; @@ -14560,10 +15549,8 @@ module Cisco-NX-OS-device { } // Domain controls - // Default Value computed from none typedef l2_DomCtrl { - // bits- Using string type string; default "none"; } @@ -14590,7 +15577,7 @@ module Cisco-NX-OS-device { typedef l2_DomOperId { type uint32 { - range "0..4096"; + range "0..16384"; } } @@ -14613,35 +15600,29 @@ module Cisco-NX-OS-device { // domain type typedef l2_DomType { type enumeration { - - // BD regular enum bd-regular { value 1; + description "BD regular"; } - - // BD reserved enum bd-reserved { value 2; + description "BD reserved"; } - - // BD control enum bd-control { value 3; + description "BD control"; } - - // BD external enum bd-external { value 4; + description "BD external"; } - - // Vlan circuit enum ckt-vlan { value 5; + description "Vlan circuit"; } - - // Vxlan circuit enum ckt-vxlan { value 6; + description "Vxlan circuit"; } } default "bd-regular"; @@ -14650,82 +15631,36 @@ module Cisco-NX-OS-device { // Enforcement preference typedef l2_EnfPref { type enumeration { - - // Software enum sw { value 1; + description "Software"; } - - // Hardware enum hw { value 2; + description "Hardware"; } } default "hw"; } - typedef l2_EtherType { - type enumeration { - - // Unspecified - enum unspecified { - value 0; - } - - // ARP - enum arp { - value 2054; - } - - // Trill - enum trill { - value 8947; - } - - // MPLS Unicast - enum mpls_ucast { - value 34887; - } - - // MAC Security - enum mac_security { - value 35045; - } - - // FCOE - enum fcoe { - value 35078; - } - - // IP - enum ip { - value 43981; - } - } - default "unspecified"; - } - // Fex chassis Id typedef l2_ExtChasId { type uint16 { - range "100..200"; + range "0..199"; } + default "0"; } // BD forwarding controls - // Default Value computed from mdst-flood typedef l2_FwdCtrl { - // bits- Using string type string; default "mdst-flood"; } // BD forwarding mode - // Default Value computed from route,bridge typedef l2_FwdMode { - // bits- Using string type string; default "route,bridge"; } @@ -14733,40 +15668,33 @@ module Cisco-NX-OS-device { // Port type typedef l2_MacInfo { type enumeration { - - // Standard enum standard { value 0; + description "Standard"; } - - // Drop enum drop { value 1; + description "Drop"; } - - // SVI DOWN FLOOD enum svi-down-flood { value 2; + description "SVI DOWN FLOOD"; } - - // SUP INBAND CFSOE enum sup-inband-cfsoe { value 3; + description "SUP INBAND CFSOE"; } - - // VPC peer-link enum vpc-peer-link { value 4; + description "VPC peer-link"; } - - // NVE enum nve { value 5; + description "NVE"; } - - // SUP-ETH enum sup-eth { value 6; + description "SUP-ETH"; } } default "standard"; @@ -14775,238 +15703,313 @@ module Cisco-NX-OS-device { // Mac type typedef l2_MacType { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Primary enum primary { value 1; + description "Primary"; } - - // Gateway enum gateway { value 2; + description "Gateway"; } - - // Overlay enum overlay { value 4; + description "Overlay"; } - - // Primary MAC using VPC peer-link enum primary-vpc-peer { value 5; + description "Primary MAC using VPC peer-link"; } - - // Control Plane enum control-plane { value 6; + description "Control Plane"; } - - // VSAN enum vsan { value 7; + description "VSAN"; } } default "primary"; } - typedef l2_Mode { + // Mac Packet Classify + typedef l2_PktClassify { type enumeration { - - // F - enum F { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } + } + default "disable"; + } - // NP - enum NP { + // Private-vlan types + typedef l2_PvlanTypes { + type enumeration { + enum isolated { value 1; + description "isolated"; } - - // E - enum E { + enum community { value 2; + description "community"; } - - // TF - enum TF { + enum primary { value 3; + description "primary"; } - - // TNP - enum TNP { + enum nonOperational { value 4; + description "non operational"; } } - default "F"; + default "nonOperational"; } - // Native type - typedef l2_NativeT { + typedef l2_UserDefinedLimit { + type uint32 { + range "16..256"; + } + default "16"; + } + + // vdc id + typedef l2_VdcId { + type uint16 { + range "1..4096"; + } + } + + typedef l2_VlanBitmap { + type mtx_array_bit; + } + + // xconnect state + typedef l2_XConnect { type enumeration { - enum regular { - value 0; - } - enum native { + enum enable { value 1; } - enum untagged { - value 2; + enum disable { + value 0; } } - default "regular"; + default "disable"; } - // Private-vlan types - typedef l2_PvlanTypes { + // Subject represents the entitiy to which the capability constraint gets applied + typedef l2cap_Subj { type enumeration { - - // default - enum default { + enum unknown { value 0; + description "Unknown"; } - - // primary - enum primary { + enum vxlan-namespace { value 1; + description "VXLAN"; } - - // community - enum community { + enum nvgre-namespace { value 2; + description "NVGRE"; } - - // isolated - enum isolated { + enum domain-namespace { value 3; + description "L2 Domain (Bridge Domain, Circuit, VLAN)"; + } + enum tunnel-namespace { + value 4; + description "Tunnel Interface"; } } - default "default"; + default "unknown"; } - typedef l2_TrafficMapCfgSt { + typedef l2fm_GuardVpcPeergwMac { type enumeration { - - // Traffic Map Configuration Success - enum config-success { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } + } + default "disable"; + } - // Traffic Map Configuration Failed - enum config-failure { + // mac-learn Cfg State + typedef l2fm_Learning { + type enumeration { + enum enable { value 1; + description "Enabled"; + } + enum disable { + value 0; + description "Disabled"; } } - default "config-success"; + default "enable"; } - // Admin Trunking mode - typedef l2_TrunkMode { + typedef l2fm_LoopDetect { type enumeration { - enum off { + enum enable { + value 1; + description "Enabled"; + } + enum disable { value 0; + description "Disabled"; } - enum on { + } + default "disable"; + } + + typedef l2fm_MacMoveNotification { + type enumeration { + enum enable { value 1; + description "Enabled"; } - enum auto { - value 2; + enum disable { + value 0; + description "Disabled"; } } - default "on"; + default "enable"; } - // vdc id - typedef l2_VdcId { + typedef l2pt_Cos { type uint16 { - range "1..4096"; + range "0..7"; } + default "5"; } - typedef l2_VlanBitmap { - type mtx_array_bit; + typedef l2pt_Threshold { + type uint32 { + range "0..4096"; + } + default "0"; } - // xconnect state - typedef l2_XConnect { + typedef l2rib_EncapTypeT { type enumeration { - enum enable { + enum none { + value 0; + } + enum vxlan { value 1; } - enum disable { - value 0; + enum segment-routing { + value 2; } } - default "disable"; } - typedef l2_disablefka { - type enumeration { + typedef l2rib_GenericFlagsT { + + type string; + } - // disable FKA Not Set - enum not_set { + typedef l2rib_MacIpRtFlagsT { + + type string; + } + + typedef l2rib_MacRtFlagsT { + + type string; + } + + typedef l2rib_MacRtResolutionT { + type enumeration { + enum mac-res-unknown { value 0; + description + "MAC resolution unknown; do not use paths + from MAC route"; } - - // disable FKA set - enum set { + enum mac-res-regular { value 1; + description "Do not resolve; use paths from MAC route"; + } + enum mac-res-esi { + value 2; + description "ESI resolution via EAD routes for EVPN"; + } + enum mac-res-bmac { + value 3; + description "Populate path-lists indexed by BMAC address."; + } + enum mac-res-peer-sync { + value 4; + description + "Routes from the ESI-peer. + No need for Peerid/ESI resolution"; } } - default "set"; } - // Subject represents the entitiy to which the capability constraint gets applied - typedef l2cap_Subj { + typedef l2rib_ProducerStT { type enumeration { - - // Unknown - enum unknown { + enum initial { value 0; + description "Producer was created on BIND event"; } - - // VXLAN - enum vxlan-namespace { + enum staled { value 1; + description "Producer is disconnected"; } - - // NVGRE - enum nvgre-namespace { + enum reconnected { value 2; + description + "Producer reconnected before expiration of + purge timer"; } - - // L2 Domain (Bridge Domain, Circuit, VLAN) - enum domain-namespace { + enum converged { value 3; + description "Producer got EOC"; } - - // Tunnel Interface - enum tunnel-namespace { + enum delete-pending { value 4; + description "Producer waiting for deletion"; } } - default "unknown"; } - // mac-learn Cfg State - typedef l2fm_Learning { - type enumeration { + typedef l2rib_TopoFlagsT { - // Enabled - enum enable { - value 1; - } + type string; + } - // Disabled - enum disable { + typedef l2rib_TopoSubFlagsT { + + type string; + } + + // Topology + typedef l2rib_TopoTypeT { + type enumeration { + enum none { value 0; } + enum vni { + value 1; + } + enum evi { + value 2; + } } - default "enable"; } // BGP RD Size based off of BGP_RD_LEN @@ -15017,20 +16020,17 @@ module Cisco-NX-OS-device { // Context type typedef l3_CtxT { type enumeration { - - // Out of band management enum oob-mgmt { value 1; + description "Out of band management"; } - - // Inband management enum inb-mgmt { value 2; + description "Inband management"; } - - // Tenant enum tenant { value 3; + description "Tenant"; } } default "tenant"; @@ -15044,6 +16044,39 @@ module Cisco-NX-OS-device { default "0"; } + // Maximum Prefix + typedef l3_MaxLmt { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + typedef l3_MaxRtAct { + type enumeration { + enum log { + value 1; + description "Log"; + } + enum shut { + value 2; + description "Shutdown"; + } + enum reinstall { + value 3; + description "Reinstall"; + } + } + default "shut"; + } + + typedef l3_MaxRtThresh { + type uint8 { + range "1..100"; + } + default "100"; + } + // ttl typedef l3_Ttl { type uint8 { @@ -15102,13 +16135,15 @@ module Cisco-NX-OS-device { // VRF id typedef l3_VrfId { type uint16 { - range "1..65535"; + range "0..65535"; } + default "0"; } // VRF name typedef l3_VrfName { type string { + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } } @@ -15153,34 +16188,42 @@ module Cisco-NX-OS-device { // Subject represents the entitiy to which the capability constraint gets applied typedef l3cap_Subj { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // VRF enum vrf-namespace { value 1; + description "VRF"; } - - // LOOPBACK enum lb-namespace { value 2; + description "LOOPBACK"; } - - // NN enum rdnn-namespace { value 3; + description "NN"; } } default "unknown"; } + // l3vm sdb as-format + typedef l3vm_AsFormatType { + type enumeration { + enum asplain { + value 0; + } + enum asdot { + value 1; + } + } + default "asplain"; + } + // Port typedef l4_Port { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -15190,20 +16233,18 @@ module Cisco-NX-OS-device { // Activity flags typedef lacp_ActivityFlags { - // bits- Using string type string; } // Operational key typedef lacp_Key { type uint16 { - range "1..65535"; + range "0..65535"; } } typedef lacp_LACPInstCtrl { - // bits- Using string type string; } @@ -15238,15 +16279,13 @@ module Cisco-NX-OS-device { // Pseudo VPC role typedef lacp_SysRole { type enumeration { - - // Primary enum primary { value 1; + description "Primary"; } - - // Secondary enum secondary { value 2; + description "Secondary"; } } default "primary"; @@ -15255,20 +16294,217 @@ module Cisco-NX-OS-device { // Transmit rate typedef lacp_TxRate { type enumeration { - - // Normal enum normal { value 1; + description "Normal"; } - - // Fast enum fast { value 2; + description "Fast"; } } default "normal"; } + typedef lcm_EcmpTemplateL3vpn { + type enumeration { + enum no { + value 0; + description "Ecmp template l3vpn - no"; + } + enum yes { + value 1; + description "Ecmp template l3vnp - yes"; + } + } + default "no"; + } + + // Logging level type + typedef lcm_LoggingLevel { + type uint16 { + range "0..7"; + } + default "5"; + } + + // Logging Level + typedef lcm_LoggingType { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; + } + } + default "Notification"; + } + + typedef lcm_ModuleEmonEnhanced { + type enumeration { + enum disable { + value 0; + description "disable emon enhanced mode"; + } + enum enable { + value 1; + description "enable emon enhanced mode"; + } + } + default "enable"; + } + + typedef lcm_ModuleEmonEnhancedSlowTimeout { + type enumeration { + enum disable { + value 0; + description "disable emon enhanced slow timeout mode"; + } + enum enable { + value 1; + description "enable emon enhanced slow timeout mode"; + } + } + default "enable"; + } + + typedef lcm_ModuleFailureAction { + type enumeration { + enum no { + value 0; + description "action on failure - no"; + } + enum shutdown { + value 1; + description "action on failure - shutdown"; + } + } + default "no"; + } + + typedef lcm_MulticastOptimization { + type enumeration { + enum enable { + value 0; + description "enable multicast optimization"; + } + enum disable { + value 1; + description "disable multicast optimization"; + } + } + default "enable"; + } + + // port range + typedef lcm_PortRange { + type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*)"; + } + default "1-54"; + } + + typedef lcm_PortType { + type enumeration { + enum fc { + value 1; + description "Port type FC"; + } + enum ethernet { + value 2; + description "Port type Ethernet"; + } + } + default "ethernet"; + } + + typedef lcm_ProfAclEgExt { + type enumeration { + enum no { + value 0; + description "hardware profile acl-eg-ext - no"; + } + enum yes { + value 1; + description "hardware profile acl-eg-ext - yes"; + } + } + default "no"; + } + + typedef lcm_ProfAclStats { + type enumeration { + enum no { + value 0; + description "hardware profile acl-stats - no"; + } + enum yes { + value 1; + description "hardware profile acl-stats - yes"; + } + } + default "no"; + } + + typedef lcm_ProfModAllId { + type uint16 { + range "0..32"; + } + default "0"; + } + + typedef lcm_ProfVxlanMpls { + type enumeration { + enum no { + value 0; + description "hardware profile vxlan/mpls - no"; + } + enum vxlan { + value 1; + description "hardware profile vxlan/mpls - vxlan"; + } + enum mpls { + value 2; + description "hardware profile vxlan/mpls - mpls"; + } + } + default "no"; + } + + typedef lcm_moduleNumber { + type uint16 { + range "1..32"; + } + default "1"; + } + // Adjacency Id typedef lldp_AdjId { type uint16 { @@ -15279,15 +16515,13 @@ module Cisco-NX-OS-device { // Administrative state typedef lldp_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -15296,7 +16530,6 @@ module Cisco-NX-OS-device { // Capability typedef lldp_Capability { - // bits- Using string type string; } @@ -15310,6 +16543,24 @@ module Cisco-NX-OS-device { type string; } + typedef lldp_DCBXPVerType { + type enumeration { + enum auto { + value 0; + description "Auto-Detect"; + } + enum CEE { + value 2; + description "CEE"; + } + enum IEEE { + value 3; + description "IEEE 802.1"; + } + } + default "auto"; + } + // Hold time typedef lldp_HoldTime { type uint16 { @@ -15329,7 +16580,7 @@ module Cisco-NX-OS-device { // Management ip typedef lldp_MgmtIp { type address_Ip; - default "0"; + default "0.0.0.0"; } typedef lldp_MgmtVlanId { @@ -15345,25 +16596,21 @@ module Cisco-NX-OS-device { } // Optional TLV Selectors - // Default Value computed from port-desc,sys-name,sys-desc,sys-cap,mgmt-addr-v4,mgmt-addr-v6,port-vlan,dcbxp,power-mgmt typedef lldp_OptTlvSel { - // bits- Using string type string; default "port-desc,sys-name,sys-desc,sys-cap,mgmt-addr-v4,mgmt-addr-v6,port-vlan,dcbxp,power-mgmt"; } typedef lldp_PortIdSubType { type enumeration { - - // Long interface name enum long { value 0; + description "Long interface name"; } - - // Short interface name enum short { value 1; + description "Short interface name"; } } default "long"; @@ -15398,6 +16645,23 @@ module Cisco-NX-OS-device { default "30"; } + typedef logging_LoggingEnableAll { + type enumeration { + enum unspecified { + value 0; + description "Unspecified logging level"; + } + enum enableall { + value 1; + description "Logging enable for all"; + } + enum disableall { + value 2; + description "No logging enable for all"; + } + } + } + // meter config burst size typedef m6rib_BurstSize { type uint32; @@ -15407,20 +16671,17 @@ module Cisco-NX-OS-device { // Database type typedef m6rib_DbT { type enumeration { - - // Client database enum client { value 0; + description "Client database"; } - - // Memory Estimate database enum memest { value 1; + description "Memory Estimate database"; } - - // Vrf details enum vrf { value 2; + description "Vrf details"; } } } @@ -15428,55 +16689,45 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef m6rib_EhType { type enumeration { - - // cli events for m6rib enum cli { value 0; + description "cli events for m6rib"; } - - // MDT events for m6rib enum mdt { value 1; + description "MDT events for m6rib"; } - - // MFDM debugs events for m6rib enum mfdmDebugs { value 2; + description "MFDM debugs events for m6rib"; } - - // MFDM-events events for m6rib enum mfdmEvents { value 3; + description "MFDM-events events for m6rib"; } - - // MFDM stats events for m6rib enum mfdmStats { value 4; + description "MFDM stats events for m6rib"; } - - // notify-clients events for m6rib enum notyClients { value 5; + description "notify-clients events for m6rib"; } - - // RIB events for m6rib enum rib { value 6; + description "RIB events for m6rib"; } - - // rib-summary events for m6rib enum ribSum { value 7; + description "rib-summary events for m6rib"; } - - // urib-debugs events for m6rib enum urib { value 8; + description "urib-debugs events for m6rib"; } - - // VRF events for m6rib enum vrf { value 9; + description "VRF events for m6rib"; } } } @@ -15484,15 +16735,13 @@ module Cisco-NX-OS-device { // Administrative state typedef m6rib_HoldAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -15501,9 +16750,9 @@ module Cisco-NX-OS-device { // Multicast Holddown type typedef m6rib_HoldDownType { type uint16 { - range "90..210"; + range "0..270"; } - default "210"; + default "270"; } // Notify Interval type @@ -15527,26 +16776,172 @@ module Cisco-NX-OS-device { } } + typedef m6rib_MfdmSize { + type uint32 { + range "50..500"; + } + default "50"; + } + + // Multipath Mode + typedef m6rib_MultipathMode { + type enumeration { + enum none { + value 1; + description "multiple path none"; + } + enum s-g-hash { + value 2; + description "Hash based on Source and Group address"; + } + } + default "s-g-hash"; + } + + // Multicast Resilient type + typedef m6rib_ResilientType { + type boolean; + default "false"; + } + // Event History Buffer size in Text/kb typedef m6rib_Size { type uint32 { - range "0..4 | 2097152..10485760"; + range "0..4 | 5..4294967295"; } default "5242880"; } + typedef m6rib_TraceCountType { + type uint32 { + range "0..4294967295"; + } + } + + // Cipher Suite + typedef macsec_CipherSuite { + type enumeration { + enum GCM-AES-128 { + value 1; + description "128 bit GCM-AES Suite"; + } + enum GCM-AES-256 { + value 2; + description "256 bit GCM-AES Suite"; + } + enum GCM-AES-XPN-128 { + value 3; + description "128 bit GCM-AES Suite with Extended Packet Numbering"; + } + enum GCM-AES-XPN-256 { + value 4; + description "256 bit GCM-AES Suite with Extended Packet Numbering"; + } + } + default "GCM-AES-XPN-256"; + } + + // Confidentiality Offset + typedef macsec_ConfOffset { + type enumeration { + enum CONF-OFFSET-0 { + value 1; + description "Skip 0 bytes"; + } + enum CONF-OFFSET-30 { + value 2; + description "Skip 30 bytes"; + } + enum CONF-OFFSET-50 { + value 3; + description "Skip 50 bytes"; + } + } + default "CONF-OFFSET-0"; + } + + // Ether Type + typedef macsec_EtherType { + type uint32; + default "34958"; + } + + // Include icv indicator + typedef macsec_IncludeIcvParam { + type boolean; + default "false"; + } + + // KeyChain Name + typedef macsec_KeyChainName { + type string { + pattern ".*[!-~]{0,63}.*"; + } + } + + // Key Server Priority + typedef macsec_KeySvrPrio { + type uint8 { + range "0..255"; + } + default "16"; + } + + // Macsec Shutdown + typedef macsec_MacsecShutdown { + type boolean; + default "true"; + } + + // Policy Name + typedef macsec_PolicyName { + type string { + pattern ".*[a-zA-Z0-9-$_]{1,32}.*"; + } + default "system-default-macsec-policy"; + } + + // Replay Protection Window Size + typedef macsec_ReplayWindow { + type uint32 { + range "0..596000000"; + } + default "148809600"; + } + + // SAK Rekey Frequency in seconds + typedef macsec_SakExpiryTime { + type uint32 { + range "0..2592000"; + } + default "0"; + } + + // Security Policy + typedef macsec_SecPolicy { + type enumeration { + enum must-secure { + value 0; + description "Must secure mode"; + } + enum should-secure { + value 1; + description "Should secure mode"; + } + } + default "should-secure"; + } + // Filter mode, valid only with v3 typedef mcast_FiltMode { type enumeration { - - // Include enum include { value 1; + description "Include"; } - - // Exclude enum exclude { value 2; + description "Exclude"; } } default "include"; @@ -15557,14 +16952,6 @@ module Cisco-NX-OS-device { type address_Ip; } - // Group timeout - typedef mcast_GrpTimeout { - type uint16 { - range "0 | 1..10080"; - } - default "10080"; - } - // Holddown-timer typedef mcast_HolddownTimer { type uint16 { @@ -15621,7 +17008,6 @@ module Cisco-NX-OS-device { // Querier timeout typedef mcast_QuerierTimeout { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -15631,9 +17017,8 @@ module Cisco-NX-OS-device { // Query count typedef mcast_QueryCnt { type uint8 { - range "1..10"; + range "0..10"; } - default "2"; } // Query interval @@ -15647,7 +17032,7 @@ module Cisco-NX-OS-device { // Query response interval typedef mcast_QueryRspIntvl { type uint16 { - range "1..25"; + range "1..8387"; } default "10"; } @@ -15668,18 +17053,16 @@ module Cisco-NX-OS-device { // Startup Query interval typedef mcast_StartQueryIntvl { type uint16 { - range "1..18000"; + range "0..18000"; } - default "31"; } // Version typedef mcast_Ver { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Unspecified"; } } } @@ -15687,32 +17070,55 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef mcastfwd_EhType { type enumeration { - - // Represents Internal Events For Mcast Forwarding enum internal { value 0; + description "Represents Internal Events For Mcast Forwarding"; } - - // CLI Events for Mcast forwarding enum cli { value 1; + description "CLI Events for Mcast forwarding"; } - - // Packet Events for Mcast forwarding enum packet { value 2; + description "Packet Events for Mcast forwarding"; } - - // VRF Events for Mcast forwarding enum vrf { value 3; + description "VRF Events for Mcast forwarding"; } - - // L2 Events for Mcast Forwarding enum l2 { value 4; + description "L2 Events for Mcast Forwarding"; + } + enum nbm { + value 5; + description "NBM Events for Mcast Forwarding"; + } + } + } + + typedef mcastfwd_Level { + type uint32 { + range "0..7"; + } + } + + typedef mcastfwd_LvlType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum mfwd { + value 1; + description "Log level for multi forwarding"; + } + enum mcastfwd { + value 2; + description "Log level for multicast forwarding"; } } + default "none"; } // Event History Buffer size in Text @@ -15723,147 +17129,267 @@ module Cisco-NX-OS-device { default "3"; } - // Loop detection multiplier - typedef mcp_LoopDetectMult { - type uint8 { - range "1..32"; + typedef mcastfwd_SwRep { + type enumeration { + enum none { + value 0; + description "None"; + } + enum swasm { + value 1; + description "Software replication of PIM ASM leak packets"; + } + enum swiif { + value 2; + description "Software replication on incoming interface"; + } } - default "3"; + default "none"; } - // Operational state - typedef mcp_OperSt { + // Event History Buffer Type + typedef mld_EhType { type enumeration { - - // Initializing - enum init { + enum cli { value 0; + description "CLI events for MLD"; } - - // Forwarding - enum up { + enum debugs { value 1; + description "Debugs event for MLD"; } - - // Down - enum down { + enum ha { + value 2; + description "HA events for MLD"; + } + enum events { value 3; + description "Events for MLD"; + } + enum vrf { + value 4; + description "VRF events for MLD"; } } - default "init"; } - // Transmission frequency - typedef mcp_TxFreq { - type uint16 { - range "2..300"; + // Event History Buffer size in Text + typedef mld_Size { + type uint32 { + range "0..4 | 5..4294967295"; } - default "2"; + default "3"; } - typedef mit_LockStatus { + // Version + typedef mld_Ver { type enumeration { + enum v1 { + value 1; + description "Version 1"; + } + enum v2 { + value 2; + description "Version 2"; + } + } + default "v2"; + } - // MIT_UNLOCKED - enum mit_unlocked { + // Event History Buffer Type + typedef mldsnoop_EhType { + type enumeration { + enum mld-snoop-internal { value 0; + description "Represents Internal Events For MLD-Snooping"; } - - // MIT_LOCKED - enum mit_locked { + enum mfdm { value 1; + description "MFDM Events for MLD-Snooping"; + } + enum mfdm-sum { + value 2; + description "MFDM-SUM Events for MLD-Snooping"; + } + enum rib { + value 3; + description "RIB Events for MLD-Snooping"; + } + enum vlan { + value 4; + description "VLAN/BD Events for MLD-Snooping"; + } + enum vlan-events { + value 5; + description "VLAN/BD events for MLD-Snooping"; } + enum vpc { + value 6; + description "VPC Events for MLD-Snooping"; + } + } + } + + // Mld snooping global config enable/disable + typedef mldsnoop_MldSnoopGl { + type boolean; + default "false"; + } + + // Mld snooping per vlan enable/disable + typedef mldsnoop_MldSnoopVlan { + type boolean; + default "true"; + } + + // Route Map Name + typedef mldsnoop_RtMapType { + type string { + length "0..63"; + } + } + + // Event History Buffer size in Text + typedef mldsnoop_Size { + type uint32 { + range "0..4 | 5..119999999"; } + default "0"; + } + + // v2 report suppression + typedef mldsnoop_V2ReportSuppr { + type boolean; + default "false"; } - typedef mit_OperType { + // Version + typedef mldsnoop_Ver { type enumeration { + enum v1 { + value 1; + description "Version 1"; + } + enum v2 { + value 2; + description "Version 2"; + } + } + default "v2"; + } - // COMMIT_VERIFY - enum commit_verify { + // Maintenance Mode Action Status Type + typedef mmode_MaintModeActionStatusType { + type enumeration { + enum unknown { value 0; + description "Unknown"; } - - // COMMIT_NORMAL - enum commit_normal { + enum success { value 1; + description "SUCCESS"; } - - // COMMIT_CONFIRM_START - enum commit_confirm_start { + enum failed { value 2; + description "Failed"; } - - // COMMIT_CONFRIM_END - enum commit_confirm_end { + enum gen-profile { + value 3; + description "Generate Profile"; + } + enum confirm-profile { value 4; + description "Confirm Profile"; } - - // COMMIT_RESET_TIMEOUT - enum commit_reset_timeout { - value 8; + enum taking-snapshot { + value 5; + description "Taking Snapshot"; } - - // COMMIT_CONFRIM_CANCEL - enum commit_confirm_cancel { - value 16; + enum applying-config { + value 6; + description "Applying Profile Config"; + } + enum waiting-delay { + value 7; + description "Waiting Delay"; } } - default "commit_normal"; + default "unknown"; } - // Enum type - typedef mit_TreeType { + // Maintenance Mode Action Type + typedef mmode_MaintModeActionType { type enumeration { - - // MIT_RUNNING - enum mit_running { + enum normal { value 0; + description "Nonmal"; } - - // MIT_CANDIDATE - enum mit_candidate { + enum maintenance { value 1; + description "Maintenance"; + } + enum maintenance-shutdown { + value 2; + description "Maintenance Shutdown"; + } + enum maintenance-dont-generate-profile { + value 3; + description "Maintenance Dont generate profile"; + } + enum normal-dont-generate-profile { + value 4; + description "Normal Dont generate profile"; } } + default "normal"; } - typedef mo_TStamp { - type string; - default "0"; - } - - // Duration in units of moc timer tick - typedef mock_Duration { - - // MAX Converted to int from 0xFFFFFFFF - type uint32 { - range "1..4294967295"; + // Maintenance Mode Type + typedef mmode_MaintModeType { + type enumeration { + enum normal { + value 0; + description "Normal"; + } + enum maintenance { + value 1; + description "Maintenance"; + } + enum unplanned-maintenance { + value 2; + description "Unplanned Maintenance"; + } } - default "1"; + default "normal"; } - // Represents the mode a Mock session - typedef mock_Mode { + // Maintenance Profile Type + typedef mmode_MaintProfileType { type enumeration { - enum Repeated { + enum normal-mode { value 0; + description "Normal-mode"; } - enum Once { + enum maintenance-mode { value 1; + description "Maintenance-mode"; } } - default "Repeated"; + default "normal-mode"; } - // Observable - typedef mock_Observable { - type string; + // Timeout Interval + typedef mmode_TimeoutInterval { + type uint16 { + range "5..65535"; + } } - // Counter Value - typedef mock_Value { - type uint64; + typedef mo_TStamp { + type union { + type string; + type uint64; + } default "0"; } @@ -15903,10 +17429,9 @@ module Cisco-NX-OS-device { // Database type typedef monitor_DbT { type enumeration { - - // IP endpoint resolution database enum ipep-resolve { value 1; + description "IP endpoint resolution database"; } } default "ipep-resolve"; @@ -15915,10 +17440,9 @@ module Cisco-NX-OS-device { // Destination encapsulation typedef monitor_DestEncapT { type enumeration { - - // Gre encapsulated enum gre { value 1; + description "Gre encapsulated"; } } default "gre"; @@ -15928,25 +17452,21 @@ module Cisco-NX-OS-device { // is monitored on the span source typedef monitor_Direction { type enumeration { - - // Incoming enum in { value 1; + description "Incoming"; } - - // Outgoing enum out { value 2; + description "Outgoing"; } - - // Both enum both { value 3; + description "Both"; } - - // None enum none { value 4; + description "None"; } } default "none"; @@ -15955,15 +17475,13 @@ module Cisco-NX-OS-device { // ErSpan Version typedef monitor_ErSpanVer { type enumeration { - - // Version 2 enum ver2 { value 2; + description "Version 2"; } - - // Version 3 enum ver3 { value 3; + description "Version 3"; } } default "ver3"; @@ -15980,15 +17498,13 @@ module Cisco-NX-OS-device { // Mode typedef monitor_Mode { type enumeration { - - // Access enum access { value 1; + description "Access"; } - - // Fabric enum fabric { value 2; + description "Fabric"; } } default "access"; @@ -16005,20 +17521,17 @@ module Cisco-NX-OS-device { // Operational state typedef monitor_OperSt { type enumeration { - - // Up enum up { value 1; + description "Up"; } - - // Down enum down { value 2; + description "Down"; } - - // Failed enum failed { value 3; + description "Failed"; } } default "down"; @@ -16034,7 +17547,6 @@ module Cisco-NX-OS-device { // Source id typedef monitor_SrcId { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -16043,20 +17555,17 @@ module Cisco-NX-OS-device { // Source type typedef monitor_SrcT { type enumeration { - - // Port enum port { value 1; + description "Port"; } - - // Encap enum encap { value 2; + description "Encap"; } - - // Port and encap enum port-encap { value 3; + description "Port and encap"; } } default "port"; @@ -16064,32 +17573,617 @@ module Cisco-NX-OS-device { typedef mpls_OperSt { type enumeration { - - // Down enum down { value 0; + description "Down - Administrative State of Interface"; } - - // Up enum up { value 1; + description "Up - Administrative State of Interface"; } } default "up"; } + // LDP advertisement prefix/peer ACL type + typedef mplsldp_AclType { + type string { + length "1..128"; + } + description "Prefix list to be used"; + } + + // Remote binding label + typedef mplsldp_BindingSummaryPeerType { + type string; + default "all"; + description "Binding summary peer value"; + } + + // Capability description + typedef mplsldp_CapabilityDescription { + type string { + length "4..40"; + } + description "LDP Capabilities Description"; + } + + // LDP to IGP sync delay time + typedef mplsldp_DelayTime { + type uint16 { + range "0..60"; + } + default "0"; + description "LDP to IGP sync achieved notification delay time"; + } + + // down neighbor status + typedef mplsldp_DownNeighborStatus { + type enumeration { + enum deletion_pending { + value 0; + description "Down Neighbor Status - Deletion Pending"; + } + enum waiting_for_reconnection { + value 1; + description "Down Neighbor Status - Waiting for Reconnection"; + } + enum recovering { + value 2; + description "Down Neighbor Status - Recovering"; + } + } + default "deletion_pending"; + description "LDP Down Neighbor Status"; + } + + // configuration parameters feature type + typedef mplsldp_FeatureType { + type string { + length "0..128"; + } + description "Supported feature types"; + } + + // configuration parameters feature set manager state type + typedef mplsldp_FeaturesetManagerStateType { + type string { + length "0..128"; + } + description "Feature set manager state"; + } + + // graceful restart forwarding hold time + typedef mplsldp_FwdHoldTime { + type uint16 { + range "30..600"; + } + default "120"; + description "LDP forwarding state holding time. Specifies the amount of time the MPLS forwarding state should be preserved after the control plane restarts."; + } + + // graceful restart state type + typedef mplsldp_GrStateType { + type enumeration { + enum enabled { + value 1; + description "Graceful restart is enabled"; + } + enum disabled { + value 2; + description "Graceful restart is disabled"; + } + } + default "disabled"; + description "Graceful Restart State"; + } + + // hello holdtime + typedef mplsldp_HelloHoldTime { + type uint16 { + range "1..65535"; + } + default "15"; + description "LDP discovery Hello holdtime"; + } + + // LDP IGP sync igp enable type + typedef mplsldp_IgpEnabledType { + type string { + length "0..255"; + } + description "IGP that Enabled Sync"; + } + + // initial backoff time + typedef mplsldp_InitBackoff { + type uint32 { + range "5..2147483"; + } + default "15"; + description "Initial session backoff time (seconds)"; + } + + // discovery interface enable status + typedef mplsldp_InterfaceEnableStatus { + type enumeration { + enum unknown { + value 0; + description "Interface Enable Status is unknown"; + } + enum Interface_Config { + value 1; + description "Interface Enable Status is Interface Config"; + } + enum IGP_Config { + value 2; + description "Interface Enable Status is IGP Config"; + } + enum Interface,_IGP_Config { + value 3; + description "Interface Enable Status is Interface, IGP Config"; + } + } + default "unknown"; + description "Discovery Interface Enable Status"; + } + + // discovery interface status + typedef mplsldp_InterfaceStatus { + type enumeration { + enum xmit/recv { + value 1; + description "Interface Status is xmit/recv"; + } + enum xmit { + value 2; + description "Interface Status is xmit"; + } + } + default "xmit"; + description "Discovery/Targeted Interface Status"; + } + + // discovery detail interface string type + typedef mplsldp_InterfaceString { + type string { + length "1..40"; + } + description "LDP basic discovery interface name"; + } + + // discovery detail source interface clients type + typedef mplsldp_IntfClients { + type enumeration { + enum Unknown { + value 0; + description "Discovery Interface Clients - Unknown"; + } + enum IPv4,_mLDP { + value 1; + description "Discovery Interface Clients - IPv4, mLDP"; + } + enum IPv4 { + value 2; + description "Discovery Interface Clients - IPv4"; + } + enum mLDP { + value 3; + description "Discovery Interface Clients - mLDP"; + } + } + default "Unknown"; + description "Discovery Interface Clients"; + } + + // hello interval time + typedef mplsldp_IntvlTime { + type uint16 { + range "1..65535"; + } + default "5"; + description "LDP discovery Hello interval"; + } + + typedef mplsldp_LabelAdvertisementModeType { + type string { + length "1..32"; + } + description "Label advertisement mode"; + } + + // Label allocate type + typedef mplsldp_LblAllocT { + type enumeration { + enum all-routes { + value 1; + description "Allocate local labels for all routes"; + } + enum host-routes { + value 2; + description "Allocate local labels for host routes only (default)"; + } + enum prefix-list { + value 3; + description "Specify a prefix-list for local label filtering"; + } + } + default "host-routes"; + } + + // LDP IGP sync peer reachable type + typedef mplsldp_LdpIgpPeerStatusType { + type enumeration { + enum peer_reachable { + value 1; + description "LDP IGP Synchronization Peer Reachable Status - Peer reachable"; + } + enum peer_not_reachable { + value 2; + description "LDP IGP Synchronization Peer Reachable Status - Peer not reachable"; + } + } + default "peer_not_reachable"; + description "LDP IGP Synchronization Peer Reachable Status"; + } + + // LDP IGP sync LDP status type + typedef mplsldp_LdpIgpStatusType { + type enumeration { + enum LDP_configured { + value 1; + description "LDP is configured"; + } + enum LDP_not_configured { + value 2; + description "LDP is not configured"; + } + } + default "LDP_not_configured"; + description "LDP IGP Synchronization Status"; + } + + // LDP IGP sync enable status type + typedef mplsldp_LdpIgpSyncEnableType { + type enumeration { + enum LDP_IGP_Synchronization_enabled { + value 1; + description "LDP-IGP Synchronization enabled"; + } + enum LDP_IGP_Synchronization_not_enabled { + value 2; + description "LDP-IGP Synchronization not enabled"; + } + } + default "LDP_IGP_Synchronization_not_enabled"; + description "LDP IGP Synchronization Enable Status"; + } + + // LDP IGP sync status type + typedef mplsldp_LdpIgpSyncStatusType { + type enumeration { + enum sync_achieved { + value 1; + description "LDP IGP Synchronization Sync Status - Sync achieved"; + } + enum sync_not_achieved { + value 2; + description "LDP IGP Synchronization Sync Status - Sync not achieved"; + } + } + default "sync_not_achieved"; + description "LDP IGP Synchronization Sync Status"; + } + + // discovery detail source interface LDP password status + typedef mplsldp_LdpPasswordStatus { + type string { + length "5..255"; + } + description "LDP password status information"; + } + + // LDP prefix list type + typedef mplsldp_LdpPrefixListName { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "LDP prefix list information"; + } + + // Local binding tag + typedef mplsldp_LocalBindingTag { + type string { + length "0..128"; + } + description "Local binding tag value"; + } + + // LDP local label filtering specifications type + typedef mplsldp_LocalLabelFilteringSpecifications { + type string { + length "5..32"; + } + description "LDP Local Label Filtering Specifications"; + } + + // configuration parameters loop detection type + typedef mplsldp_LoopDetectionType { + type enumeration { + enum Off { + value 1; + description "LDP Loop Detection is Off"; + } + enum On { + value 2; + description "LDP Loop Detection is On"; + } + } + default "Off"; + description "LDP Loop Detection Enabled Status"; + } + + // maximum backoff time + typedef mplsldp_MaxBackoff { + type uint32 { + range "5..2147483"; + } + default "120"; + description "Maximum session backoff time (seconds)"; + } + + // graceful restart neighbor liveness time + typedef mplsldp_NbrLiveTime { + type uint16 { + range "5..300"; + } + default "120"; + description "LDP Neighbor-Liveness time. Specifies the amount of time a router should wait for an LDP session to be reestablished."; + } + + // neighbor clients type + typedef mplsldp_NeighborPeerClientType { + type string { + length "5..255"; + } + description "LDP Neighbor Clients"; + } + + // neighbor peer protection state + typedef mplsldp_NeighborPeerProtectionState { + type enumeration { + enum None { + value 0; + description "Peer Protection State - None"; + } + enum Incomplete { + value 1; + description "Peer Protection State - Incomplete"; + } + enum Ready { + value 2; + description "Peer Protection State - Ready"; + } + enum Protecting { + value 3; + description "Peer Protection State - Protecting"; + } + } + default "None"; + description "LDP Neighbor Peer Protection State"; + } + + // configuration parameters protocol type + typedef mplsldp_ParametersProtocolType { + type enumeration { + enum LDP_for_targeted_sessions { + value 1; + description "LDP for targeted sessions"; + } + enum TDP_for_directed_sessions { + value 2; + description "TDP for directed sessions"; + } + } + default "LDP_for_targeted_sessions"; + description "LDP Configuration Parameters - Protocol Type"; + } + + // neighbor peer state type + typedef mplsldp_PeerStateType { + type enumeration { + enum non-ex { + value 0; + description "Property Type - non-ex"; + } + enum unsol_op_pdg { + value 1; + description "Property Type - unsol op pdg"; + } + enum deferred { + value 2; + description "Property Type - deferred"; + } + enum estab { + value 3; + description "Property Type - estab"; + } + enum lib_exp_wait { + value 4; + description "Property Type - lib exp wait"; + } + enum destroyed { + value 5; + description "Property Type - destroyed"; + } + } + default "non-ex"; + description "LDP Neighbor Peer State"; + } + + // Session protection duration + typedef mplsldp_ProtectDuration { + type uint32 { + range "0..2147483"; + } + description "LDP session protection holdup time in seconds"; + } + + // neighbor protocol state type + typedef mplsldp_ProtocolStateType { + type enumeration { + enum Non-existent { + value 0; + description "Property Type - Non-existent"; + } + enum Opening_Xport { + value 1; + description "Property Type - Opening Xport"; + } + enum Init_sent { + value 2; + description "Property Type - Init sent"; + } + enum Init_rcvd_actv { + value 3; + description "Property Type - Init rcvd actv"; + } + enum Role_pasv { + value 4; + description "Property Type - Role pasv"; + } + enum Init_rcvd_pasv { + value 5; + description "Property Type - Init rcvd pasv"; + } + enum Oper { + value 6; + description "Property Type - Oper"; + } + enum Final_xmitwait { + value 7; + description "Property Type - Final xmitwait"; + } + } + default "Non-existent"; + description "LDP Protocol State Type"; + } + + // LDP logging rate limit + typedef mplsldp_RateLimit { + type uint16 { + range "0..60"; + } + default "0"; + description "LDP logging rate limit"; + } + + // graceful restart recovery time + typedef mplsldp_RecoveryTime { + type uint16 { + range "15..600"; + } + default "120"; + description "LDP maximum recovery time. Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished."; + } + + // Remote binding tag + typedef mplsldp_RemoteBindingTag { + type string { + length "0..128"; + } + description "Remote binding tag value"; + } + + // LDP password option sequence number + typedef mplsldp_SeqNum { + type uint16 { + range "1..32767"; + } + description "Sequence number of the LDP password option"; + } + + // LDP session hold time + typedef mplsldp_SessionHoldTime { + type uint16 { + range "15..65535"; + } + default "180"; + description "LDP session holdtime"; + } + + // discovery detail targeted hello identifier + typedef mplsldp_TargetedHelloIdentifier { + type string { + length "5..128"; + } + description "Targeted hello identifier name"; + } + + // discovery targeted interface state + typedef mplsldp_TargetedInterfaceState { + type enumeration { + enum active { + value 1; + description "Targeted Hello State - active"; + } + enum passive { + value 2; + description "Targeted Hello State - passive"; + } + enum active/passive { + value 3; + description "Targeted Hello State - active/passive"; + } + } + default "active"; + description "Targeted Hello Interface State"; + } + + // targeted hello holdtime + typedef mplsldp_TgtHoldTime { + type uint16 { + range "1..65535"; + } + default "90"; + description "LDP discovery Targeted Hello holdtime"; + } + + // targeted hello interval time + typedef mplsldp_TgtIntvlTime { + type uint16 { + range "1..65535"; + } + default "10"; + description "LDP discovery Targeted Hello interval"; + } + + // configuration parameters - boolean type + typedef mplsldp_enableDisableFlagType { + type enumeration { + enum enabled { + value 1; + description "Property Type - enabled"; + } + enum disabled { + value 2; + description "Property Type - disabled"; + } + } + default "disabled"; + description "Enable/Disable Flag Type"; + } + // Address family type typedef mplsstatic_AfT { type enumeration { - - // IPv4 unicast address family enum ipv4-ucast { value 1; + description "IPv4 Unicast Address Family"; } - - // IPv6 unicast address family enum ipv6-ucast { value 2; + description "IPv6 Unicast Address Family"; } } default "ipv4-ucast"; @@ -16102,69 +18196,66 @@ module Cisco-NX-OS-device { default "16"; } + typedef mplsstatic_LspName { + type string; + } + typedef mplsstatic_OutLabelVal { type uint32 { range "0..1048575"; } } + typedef mplsstatic_OutLblStack { + type string; + } + // Event History Buffer Type typedef mrib_EhType { type enumeration { - - // cli events for mrib enum cli { value 0; + description "cli events for mrib"; } - - // MDT events for mrib enum mdt { value 1; + description "MDT events for mrib"; } - - // MFDM debugs events for mrib enum mfdmDebugs { value 2; + description "MFDM debugs events for mrib"; } - - // MFDM-events events for mrib enum mfdmEvents { value 3; + description "MFDM-events events for mrib"; } - - // MFDM stats events for mrib enum mfdmStats { value 4; + description "MFDM stats events for mrib"; } - - // notify-clients events for mrib enum notyClients { value 5; + description "notify-clients events for mrib"; } - - // RIB events for mrib enum rib { value 6; + description "RIB events for mrib"; } - - // rib-summary events for mrib enum ribSum { value 7; + description "rib-summary events for mrib"; } - - // urib-debugs events for mrib enum urib { value 8; + description "urib-debugs events for mrib"; } - - // VRF events for mrib enum vrf { value 9; + description "VRF events for mrib"; } - - // NBM events for mrib enum nbm { value 10; + description "NBM events for mrib"; } } } @@ -16172,15 +18263,13 @@ module Cisco-NX-OS-device { // Administrative state typedef mrib_HoldAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -16189,23 +18278,79 @@ module Cisco-NX-OS-device { // Multicast Holddown type typedef mrib_HoldDownType { type uint16 { - range "90..210"; + range "0..3600"; } - default "210"; + default "270"; + } + + typedef mrib_LogType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum rout { + value 1; + description "Configure for logging level routing"; + } + enum routip { + value 2; + description "Configure for logging level routing ip"; + } + enum routipv4 { + value 3; + description "Configure for logging level routing ipv4"; + } + enum mrib { + value 4; + description "Configure for logging level mrib"; + } + } + default "none"; + } + + typedef mrib_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + + typedef mrib_MfdmSize { + type uint32 { + range "50..500"; + } + default "50"; + } + + typedef mrib_MfdmType { + type enumeration { + enum none { + value 0; + description "None"; + } + enum mfdmip { + value 1; + description "Configure for mfdm-buffer-route ip"; + } + enum mfdmipv4 { + value 2; + description "Configure for mfdm-buffer-route ipv4"; + } + } + default "none"; } // Administrative state typedef mrib_ModeAdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "disabled"; @@ -16214,40 +18359,33 @@ module Cisco-NX-OS-device { // Multipath Mode typedef mrib_MultipathMode { type enumeration { - - // multiple path none enum none { value 1; + description "multiple path none"; } - - // multiple path nbm enum nbm { value 2; + description "multiple path nbm"; } - - // multiple path resilient enum null { value 3; + description "multiple path resilient"; } - - // SG hash enum s-g-hash { value 4; + description "SG hash"; } - - // legacy mode enum legacy { value 5; + description "legacy mode"; } - - // resilient based enum resilient { value 6; + description "resilient based"; } - - // SG hash next-hop based enum s-g-hash-next-hop { value 7; + description "SG hash next-hop based"; } } default "null"; @@ -16256,7 +18394,7 @@ module Cisco-NX-OS-device { // Multicast Resilient type typedef mrib_ResilientType { type boolean; - default "true"; + default "false"; } // Event History Buffer size in Text/kb @@ -16267,6 +18405,20 @@ module Cisco-NX-OS-device { default "3"; } + typedef mrib_TraceCountType { + type uint32 { + range "0..4294967295"; + } + } + + // Asn number + typedef msdp_Asn { + type string { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; + } + default "none"; + } + // Authentication key typedef msdp_AuthKey { type string; @@ -16275,15 +18427,13 @@ module Cisco-NX-OS-device { // Authentication type typedef msdp_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "No authentication"; } - - // MD5 authentication enum md5 { value 1; + description "MD5 authentication"; } } default "none"; @@ -16292,15 +18442,13 @@ module Cisco-NX-OS-device { // Database type typedef msdp_DbT { type enumeration { - - // Route database enum route { value 0; + description "Route database"; } - - // Source database enum source { value 1; + description "Source database"; } } } @@ -16308,41 +18456,42 @@ module Cisco-NX-OS-device { // Domain Control typedef msdp_DomCtrl { - // bits- Using string type string; } // Event History Buffer Type typedef msdp_EhType { type enumeration { - - // cli events for msdp enum cli { value 0; + description "cli events for msdp"; } - - // Events events for msdp enum events { value 1; + description "Events events for msdp"; } - - // MSDP internal events for msdp enum msdpInternal { value 2; + description "MSDP internal events for msdp"; } - - // Routes events for msdp enum routes { value 3; + description "Routes events for msdp"; } - - // TCP events for msdp enum tcp { value 4; + description "TCP events for msdp"; } } } + // Mesh Group Name + typedef msdp_GrpNameT { + type string { + length "1..255"; + } + } + // Keepalive Interval typedef msdp_KaIntvl { type uint16 { @@ -16359,6 +18508,34 @@ module Cisco-NX-OS-device { default "90"; } + // Reason for last reset + typedef msdp_LastResetT { + type string { + length "0..255"; + } + } + + typedef msdp_LogType { + type enumeration { + enum log { + value 1; + description "Configure for logging level msdp"; + } + enum logip { + value 2; + description "Configure for logging level ip msdp"; + } + } + default "log"; + } + + typedef msdp_LvlType { + type uint16 { + range "0..7"; + } + default "5"; + } + // Max Group Limit typedef msdp_MaxGrpLimit { type uint32 { @@ -16370,40 +18547,40 @@ module Cisco-NX-OS-device { // Operational state typedef msdp_OperSt { type enumeration { - - // Inactive enum inactive { value 0; + description "Inactive"; } - - // Down enum down { value 1; + description "Down"; } - - // Admin-Down enum admin-down { value 2; + description "Admin-Down"; } - - // Connecting enum connecting { value 3; + description "Connecting"; } - - // Listening enum listening { value 4; + description "Listening"; } - - // Established enum established { value 5; + description "Established"; } } default "inactive"; } + typedef msdp_PrefixT { + type string { + pattern ".*[!-~]{0,63}.*"; + } + } + // Reconnect Interval typedef msdp_ReConnIntvl { type uint16 { @@ -16420,6 +18597,24 @@ module Cisco-NX-OS-device { default "3"; } + typedef msdp_Source { + type enumeration { + enum none { + value 0; + description "Default redistribution"; + } + enum pflist { + value 1; + description "Prefix-list based redistribution"; + } + enum rtmap { + value 2; + description "Route-Map based redistribution"; + } + } + default "none"; + } + // Source Announcement interval typedef msdp_SrcActiveMsgIntvl { type uint16 { @@ -16436,15 +18631,40 @@ module Cisco-NX-OS-device { default "4294967295"; } + // Hello Interval in msecs + typedef mvpn_PimHelloIntvl { + type uint32 { + range "1..18724286"; + } + default "30000"; + } + + // Join Prune Interval in secs + typedef mvpn_PimJPIntvl { + type uint32 { + range "60..65520"; + } + default "60"; + } + + // Route Map Name + typedef mvpn_RtMapType { + type string { + length "0..63"; + } + } + typedef naming_Descr { type string { length "0..128"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } typedef naming_Descr1024 { type string { length "0..1024"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } @@ -16455,40 +18675,111 @@ module Cisco-NX-OS-device { typedef naming_Name { type string { length "0..16"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } } typedef naming_Name256 { type string { length "0..256"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } } - typedef naming_PrimKey { - type string; - } - typedef naming_Regex { type string { length "0..256"; + pattern ".*[a-zA-Z0-9!#$%\\(\\)\\*,-.\\?/:;@ _\\{\\|\\}~\\+]*.*"; } } - // Config Error Inst MO - typedef nat_ConfigErrNat { - - // bits- Using string - type string; - } - - // Default Value "60" Removed - out of range -1..172800 - typedef nat_FinSynTimeout { - type int32 { - range "-1..172800"; + // CREATION DELAY BATCHOUT + typedef nat_BatchTimeout { + type enumeration { + enum 0 { + value 0; + description "0 milliseconds delay"; + } + enum 250 { + value 250; + description "250 milliseconds delay"; + } + enum 500 { + value 500; + description "500 milliseconds delay"; + } + enum 750 { + value 750; + description "750 milliseconds delay"; + } + enum 1000 { + value 1000; + description "1000 milliseconds delay"; + } } + default "1000"; } - typedef nat_NatMaxTranslation { + // Config Error Inst MO + typedef nat_ConfigErrNat { + type enumeration { + enum noerror { + value 0; + description "No Erron Seen In Configuration"; + } + enum PoolInUse { + value 1; + description "Pool In Use Delete Failed"; + } + enum TcpTcamNotCarved { + value 2; + description "Tcp Tcam Not Carved Config Failed"; + } + enum ConfigConflict { + value 3; + description "Conflicting with existing config"; + } + enum IfConfigError { + value 4; + description "Nat interface config error"; + } + enum HwProgFailureError { + value 5; + description "Hardware programming failed for nat config"; + } + } + } + + typedef nat_FinSynTimeout { + type int32 { + range "-1..172800"; + } + default "60"; + } + + // IP NAT MO INSIDE/OUTSIDE + typedef nat_InterfaceType { + type enumeration { + enum inside-source-static { + value 0; + description "inside source static"; + } + enum outside-source-static { + value 1; + description "outside source static"; + } + enum inside-source-dynamic { + value 2; + description "inside source dynamic"; + } + enum outside-source-dynamic { + value 3; + description "outside source dynamic"; + } + } + } + + typedef nat_NatMaxTranslation { type uint32 { range "1..1023"; } @@ -16515,6 +18806,13 @@ module Cisco-NX-OS-device { default "0"; } + typedef nat_NatTimeLeft { + type uint32 { + range "0..172800"; + } + default "0"; + } + typedef nat_NatTimeout { type uint32 { range "60..172800"; @@ -16522,32 +18820,102 @@ module Cisco-NX-OS-device { default "3600"; } + typedef nat_NatTrafficDir { + type enumeration { + enum ip-nat-invalid { + value 0; + description "ip nat invalid interface"; + } + enum ip-nat-inside { + value 1; + description "ip nat inside interface"; + } + enum ip-nat-outside { + value 2; + description "ip nat outside interface"; + } + } + } + + // protcol type + typedef nat_ProtocolType { + type enumeration { + enum any { + value 0; + description "none"; + } + enum tcp { + value 1; + description "tcp"; + } + enum udp { + value 2; + description "udp"; + } + } + } + + typedef nat_SamplingTimeout { + type uint32 { + range "120..172800"; + } + default "43200"; + } + typedef nat_booltype { type boolean; default "false"; } - typedef nbm_nbmBwUnitEn { + // port + typedef nat_port { + type uint32 { + range "0..65535"; + } + } + + typedef nat_stringtype { + type string; + } + + typedef nat_twicenatgroup { + type uint32 { + range "0..1024"; + } + default "0"; + } + + typedef nbm_nbmBwRecoveryEn { type enumeration { + enum DISABLED { + value 0; + description "Disabled"; + } + enum ENABLED { + value 1; + description "Enabled"; + } + } + default "ENABLED"; + } - // Invalid Value + typedef nbm_nbmBwUnitEn { + type enumeration { enum UNSPECIFIED { value 0; + description "Invalid Value"; } - - // KiloBits Per Second enum KBPS { value 1; + description "KiloBits Per Second"; } - - // MegaBits Per Second enum MBPS { value 2; + description "MegaBits Per Second"; } - - // GigaBits Per Second enum GBPS { value 3; + description "GigaBits Per Second"; } } default "GBPS"; @@ -16555,45 +18923,37 @@ module Cisco-NX-OS-device { typedef nbm_nbmEndpointRole { type enumeration { - - // Unspecified Role enum UNKNOWN { value 0; + description "Unspecified Role"; } - - // Learned via ARP enum ARP { value 1; + description "Learned via ARP"; } - - // Learned as a Receiver enum RECEIVER { value 2; + description "Learned as a Receiver"; } - - // Learned as a Receiver, as well as from ARP enum RECEIVER_ARP { value 3; + description "Learned as a Receiver, as well as from ARP"; } - - // Learned as a Sender enum SENDER { value 4; + description "Learned as a Sender"; } - - // Learned as a Sender, as well as from ARP enum SENDER_ARP { value 5; + description "Learned as a Sender, as well as from ARP"; } - - // Learned as a Sender, as well as a RECEIVER enum SENDER_RECEIVER { value 6; + description "Learned as a Sender, as well as a RECEIVER"; } - - // Learned as a Sender, as well as a RECEIVER, and also from ARP enum SENDER_RECEIVER_ARP { value 7; + description "Learned as a Sender, as well as a RECEIVER, and also from ARP"; } } default "UNKNOWN"; @@ -16601,75 +18961,77 @@ module Cisco-NX-OS-device { typedef nbm_nbmFaultType { type enumeration { - - // No fault enum NONE { value 0; + description "No fault"; } - - // Denied because of policy enum POLICYDENIED { value 1; + description "Denied because of policy"; } - - // Denied because of Sender policy enum POLICYDENIEDSENDER { value 2; + description "Denied because of Sender policy"; } - - // Denied because of Receiver policy enum POLICYDENIEDRECEIVER { value 3; + description "Denied because of Receiver policy"; } - - // Resource unavailable enum RESOURCEUNAVAIL { value 4; + description "Resource unavailable"; } - - // Policer unavailable` enum POLICERUNAVAIL { value 5; + description "Policer unavailable`"; } - - // Bandwidth unavailable enum BWUNAVAIL { value 6; + description "Bandwidth unavailable"; } - - // Ext Bandwidth unavailable enum EXTBWUNAVAIL { value 7; + description "Ext Bandwidth unavailable"; } - - // Flow policy unavailable enum FLOWPOLUNAVAIL { value 8; + description "Flow policy unavailable"; } - - // No Unicast route enum NOUCASTROUTE { value 9; + description "No Unicast route"; } - - // Flow limit reached enum FLOWLIMITREACHED { value 10; + description "Flow limit reached"; } - - // Flow limit reached for external link enum EXTFLOWLIMITREACHED { value 11; + description "Flow limit reached for external link"; } - - // Denied because of policy for external link enum EXTPOLICYDENIED { value 12; + description "Denied because of policy for external link"; } - - // Policer unavailable for external link enum EXTPOLICERUNAVAIL { value 13; + description "Policer unavailable for external link"; + } + enum BADIFSTATE { + value 14; + description "Interface is Down or in wrong VRF"; + } + enum FLOWPENDINGDEL { + value 15; + description "Flow is pending to delete"; + } + enum EXTTCAMNOTCARVED { + value 16; + description "Ext Tcam not carved"; + } + enum TCAMNOTCARVED { + value 17; + description "Tcam not carved"; } } default "NONE"; @@ -16677,126 +19039,118 @@ module Cisco-NX-OS-device { typedef nbm_nbmFlowOperEn { type enumeration { - - // No Operation enum NOOP { value 0; + description "No Operation"; } - - // Add a new Route enum ROUTE_ADD { value 1; + description "Add a new Route"; } - - // Delete Existing Route enum ROUTE_DEL { value 2; + description "Delete Existing Route"; } - - // Add a new OIF to existing Route enum UPD_ADD_OIF { value 3; + description "Add a new OIF to existing Route"; } - - // Remove an OIF from an existing Route enum UPD_DEL_OIF { value 4; + description "Remove an OIF from an existing Route"; } - - // Update Local OIF ADD enum LOC_ADD_OIF { value 5; + description "Update Local OIF ADD"; } - - // Update Local OIF DEL enum LOC_DEL_OIF { value 6; + description "Update Local OIF DEL"; } - - // Update IIF enum UPD_IIF { value 7; + description "Update IIF"; } - - // Applied Sender Deny Policy enum DENY_POLICY_SRC { value 8; + description "Applied Sender Deny Policy"; } - - // External Src Discovery enum SRC_DISCOVERY { value 9; + description "External Src Discovery"; } - - // Stop Ext Src Discovery enum SRC_DISC_STOP { value 10; + description "Stop Ext Src Discovery"; } - - // Reserved for Future enum 11 { value 11; + description "Reserved for Future"; } - - // Reserved for Future enum 12 { value 12; + description "Reserved for Future"; } - - // FRIDAY!!! enum 13-UNUSED { value 13; + description "FRIDAY!!!"; } - - // Reserved for Future enum 14 { value 14; + description "Reserved for Future"; } - - // Applied Sender Allow Policy enum ALLOW_POLICY_SRC { value 15; + description "Applied Sender Allow Policy"; } - - // Applied Rcv Deny Policy enum DENY_POLICY_RCV { value 16; + description "Applied Rcv Deny Policy"; } - - // Applied Rcv Allow Policy enum ALLOW_POLICY_RCV { value 17; + description "Applied Rcv Allow Policy"; } - - // Reserved for Future enum 18 { value 18; + description "Reserved for Future"; } - - // Reserved for Future enum 19 { value 19; + description "Reserved for Future"; } - - // Reserved for Future enum 20 { value 20; + description "Reserved for Future"; } } default "NOOP"; } - typedef nbm_nbmGroupRangeType { + // Flow Policer Enable / Disable + typedef nbm_nbmFlowPolicerEn { type enumeration { + enum DISABLED { + value 0; + description "Disabled"; + } + enum ENABLED { + value 1; + description "Enabled"; + } + } + default "ENABLED"; + } - // ASM Range + typedef nbm_nbmGroupRangeType { + type enumeration { enum ASM { value 0; + description "ASM Range"; } - - // SSM Range enum SSM { value 1; + description "SSM Range"; } } default "ASM"; @@ -16824,18 +19178,20 @@ module Cisco-NX-OS-device { typedef nbm_nbmLinkRole { type enumeration { - - // WAN Link + enum NONE { + value 255; + description "No link configuration"; + } enum EXTERNAL_LINK { value 0; + description "WAN Link"; } - - // Fabric Facing Link enum FABRIC_LINK { value 1; + description "Fabric Facing Link"; } } - default "EXTERNAL_LINK"; + default "NONE"; } typedef nbm_nbmMacAddr { @@ -16848,51 +19204,74 @@ module Cisco-NX-OS-device { typedef nbm_nbmNoYes { type enumeration { - - // Not FHR enum NO { value 0; + description "Not TRUE"; } - - // This is where the Source host is attached enum YES { value 1; + description "This said condition is TRUE"; + } + enum NA { + value 2; + description "The field is not applicable"; } } default "NO"; } - typedef nbm_nbmOperationalMode { + typedef nbm_nbmOifOrigin { type enumeration { - - // Pim Active Mode enum UNDEFINED { value 0; + description "Undefined"; + } + enum PROTOCOL { + value 1; + description "Dynamic"; } + enum API { + value 2; + description "Static"; + } + enum API_PROTOCOL { + value 3; + description "Both API and PROTOCOL"; + } + } + } - // Pim Active Mode + typedef nbm_nbmOperationalMode { + type enumeration { + enum UNDEFINED { + value 0; + description "Pim Active Mode"; + } enum PIM_ACTIVE { value 1; + description "Pim Active Mode"; + } + enum PIM_PASSIVE { + value 2; + description "Pim Passive Mode"; } } + default "PIM_ACTIVE"; } typedef nbm_nbmPermit { type enumeration { - - // Undefined enum UNDEFINED { value 0; + description "Undefined"; } - - // Denied enum DENIED { value 1; + description "Denied"; } - - // Allowed enum ALLOWED { value 2; + description "Allowed"; } } default "DENIED"; @@ -16900,20 +19279,17 @@ module Cisco-NX-OS-device { typedef nbm_nbmPolicyType { type enumeration { - - // Sender Policy enum SENDER { value 0; + description "Sender Policy"; } - - // Receiver Policy enum RECEIVER { value 1; + description "Receiver Policy"; } - - // Pim Policy enum PIM { value 2; + description "Pim Policy"; } } default "SENDER"; @@ -16921,29 +19297,28 @@ module Cisco-NX-OS-device { typedef nbm_nbmRcvOwner { type enumeration { - - // Known via IGMP Join enum IGMP { value 0; + description "Known via IGMP Join"; } - - // Known via static config enum STATIC { value 1; + description "Known via static config"; } - - // Known via PIM Join enum PIM { value 2; + description "Known via PIM Join"; + } + enum NBM-STATIC { + value 4; + description "Known via NBM Static API"; } } } // Address Type - // Default Value computed from none typedef nd_AddrType { - // bits- Using string type string; default "none"; } @@ -16951,26 +19326,23 @@ module Cisco-NX-OS-device { // Adjacency MAC typedef nd_AdjMac { type address_Mac; - default "0"; + default "00:00:00:00:00:00"; } // Adjacency operational state typedef nd_AdjOperSt { type enumeration { - - // Unknown enum unspecified { value 0; + description "Unknown"; } - - // Incomplete enum incomplete { value 1; + description "Incomplete"; } - - // Resolved enum normal { value 2; + description "Resolved"; } } } @@ -16986,40 +19358,33 @@ module Cisco-NX-OS-device { // Config Error typedef nd_ConfigErr { type enumeration { - - // Unknown enum noerror { value 0; + description "Unknown"; } - - // Config of ipv6 nd managed-config-flag failed enum managedConfigFlag { value 1; + description "Config of ipv6 nd managed-config-flag failed"; } - - // Config of ipv6 nd other-config-flag failed enum otherConfigFlag { value 2; + description "Config of ipv6 nd other-config-flag failed"; } - - // Config of ipv6 nd ra-interval failed enum raIntvl { value 3; + description "Config of ipv6 nd ra-interval failed"; } - - // Config of ipv6 nd ra-lifetime failed enum raLifetime { value 4; + description "Config of ipv6 nd ra-lifetime failed"; } - - // Config of ipv6 nd suppress-ra failed enum suppressRa { value 5; + description "Config of ipv6 nd suppress-ra failed"; } - - // Config of ipv6 nd mac-extract failed enum macExtract { value 6; + description "Config of ipv6 nd mac-extract failed"; } } } @@ -17027,14 +19392,12 @@ module Cisco-NX-OS-device { // Config Error Inst MO typedef nd_ConfigErrInst { - // bits- Using string type string; } // DNSSeqNum typedef nd_DNSSeqNum { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17059,10 +19422,9 @@ module Cisco-NX-OS-device { // Database type typedef nd_DbT { type enumeration { - - // Adjacency Database enum adj { value 1; + description "Adjacency Database"; } } default "adj"; @@ -17077,10 +19439,8 @@ module Cisco-NX-OS-device { } // Interface Controls - // Default Value computed from redirects typedef nd_IfControl { - // bits- Using string type string; default "redirects"; } @@ -17088,7 +19448,6 @@ module Cisco-NX-OS-device { // Lifetime @@@ 0xffffffff == infinite typedef nd_Lifetime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17098,20 +19457,17 @@ module Cisco-NX-OS-device { // Solicit Accept Value typedef nd_MacExtract { type enumeration { - - // Default enum none { value 0; + description "Default"; } - - // Nud-phase enum nud-phase { value 1; + description "Nud-phase"; } - - // Exclude-nud-phase enum exclude-nud-phase { value 2; + description "Exclude-nud-phase"; } } default "none"; @@ -17159,7 +19515,6 @@ module Cisco-NX-OS-device { // NDRouteLifeTime @@@ 0xffffffff == infinite typedef nd_NdRtLifeTime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17184,17 +19539,14 @@ module Cisco-NX-OS-device { // OperNDRouteLifeTime @@@ 0xffffffff == infinite typedef nd_OperNdRtLifeTime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } } // Prefix Controls - // Default Value computed from auto-cfg,on-link,advertise,router-address typedef nd_PfxControl { - // bits- Using string type string; default "auto-cfg,on-link,advertise,router-address"; } @@ -17202,7 +19554,6 @@ module Cisco-NX-OS-device { // Lifetime @@@ 0xffffffff == infinite typedef nd_PrefLifetime { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17211,7 +19562,7 @@ module Cisco-NX-OS-device { // Interval between RA transmissions typedef nd_RaIntvl { - type uint16 { + type uint32 { range "4..1800"; } default "600"; @@ -17227,7 +19578,7 @@ module Cisco-NX-OS-device { // RA lifetime typedef nd_RaLifetime { - type uint16 { + type uint32 { range "0..9000"; } default "1800"; @@ -17244,7 +19595,6 @@ module Cisco-NX-OS-device { // Retransmit timer typedef nd_RetransTimer { - // MAX Converted to int from 0xffffffff type uint32 { range "0..4294967295"; } @@ -17254,25 +19604,21 @@ module Cisco-NX-OS-device { // Router Preference typedef nd_RouterPreference { type enumeration { - - // ICMPv6 nd router preference medium enum Medium { value 0; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum High { value 1; + description "ICMPv6 nd router preference high"; } - - // ICMPv6 nd router preference reserved enum Reserved { value 2; + description "ICMPv6 nd router preference reserved"; } - - // ICMPv6 nd router preference low enum Low { value 3; + description "ICMPv6 nd router preference low"; } } } @@ -17280,25 +19626,21 @@ module Cisco-NX-OS-device { // Router Preference for command typedef nd_RtPrefForCmd { type enumeration { - - // ICMPv6 nd router preference (if not specified) enum unspecified { value 0; + description "ICMPv6 nd router preference (if not specified)"; } - - // ICMPv6 nd router preference low enum low { value 1; + description "ICMPv6 nd router preference low"; } - - // ICMPv6 nd router preference medium enum medium { value 2; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum high { value 3; + description "ICMPv6 nd router preference high"; } } } @@ -17306,41 +19648,40 @@ module Cisco-NX-OS-device { // Route Preference for ND Route specific typedef nd_RtPrefForNdRt { type enumeration { - - // ICMPv6 nd router preference low enum low { value 0; + description "ICMPv6 nd router preference low"; } - - // ICMPv6 nd router preference medium enum medium { value 1; + description "ICMPv6 nd router preference medium"; } - - // ICMPv6 nd router preference high enum high { value 2; + description "ICMPv6 nd router preference high"; + } + enum unspecified { + value 3; + description "ICMPv6 nd router preference unspecified"; } } + default "unspecified"; } // Solicit Accept Value typedef nd_SolicitAcceptValue { type enumeration { - - // Default enum none { value 0; + description "Default"; } - - // Accept enum accept { value 1; + description "Accept"; } - - // No-accept enum no-accept { value 2; + description "No-accept"; } } default "none"; @@ -17358,15 +19699,13 @@ module Cisco-NX-OS-device { // Static Adjacency operational state typedef nd_StAdjOperSt { type enumeration { - - // Down enum down { value 0; + description "Down"; } - - // Incomplete enum up { value 1; + description "Incomplete"; } } default "down"; @@ -17375,40 +19714,33 @@ module Cisco-NX-OS-device { // Static Adjacency operational state qualifier typedef nd_StAdjOperStQual { type enumeration { - - // Subnet mismatch enum subnet-mismatch { value 1; + description "Subnet mismatch"; } - - // Invalid MAC enum invalid-mac { value 2; + description "Invalid MAC"; } - - // Invalid IP enum invalid-ip { value 3; + description "Invalid IP"; } - - // Invalid VRF enum invalid-vrf { value 4; + description "Invalid VRF"; } - - // Own MAC enum own-mac { value 5; + description "Own MAC"; } - - // Interface down enum if-down { value 6; + description "Interface down"; } - - // Up enum up { value 7; + description "Up"; } } default "up"; @@ -17433,20 +19765,17 @@ module Cisco-NX-OS-device { // VADDR Client state typedef nd_VaddrClientState { type enumeration { - - // ICMPv6 client state inactive enum ICMPV6_CLIENT_STATE_INACTIVE { value 0; + description "ICMPv6 client state inactive"; } - - // ICMPv6 client state active enum ICMPV6_CLIENT_STATE_ACTIVE { value 1; + description "ICMPv6 client state active"; } - - // ICMPv6 client state anycast inactive enum ICMPV6_CLIENT_STATE_ANYCAST_INACTIVE { value 2; + description "ICMPv6 client state anycast inactive"; } } } @@ -17458,18 +19787,281 @@ module Cisco-NX-OS-device { default "250"; } - // Address family type - typedef ngmvpn_AfT { + // RTP ACL + typedef netflow_ACLName { + type string { + length "0..64"; + } + } + + // Burst interval shift + typedef netflow_BurstIntvlShift { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Collector buket identifier + typedef netflow_CollBucketId { + type uint8 { + range "0..255"; + } + } + + // Collect Interval + typedef netflow_CollIntvl { + type uint32 { + range "100..64000"; + } + default "100"; + } + + typedef netflow_CollTemplateTimeout { + type uint32 { + range "1..86400"; + } + default "15"; + } + + // Collector timeout + typedef netflow_CollTimeout { + type uint32 { + range "0..86400"; + } + default "0"; + } + + // Collector version + typedef netflow_CollVersion { type enumeration { + enum v5 { + value 1; + description "Version 5"; + } + enum v9 { + value 2; + description "Version 9"; + } + enum cisco-v1 { + value 3; + description "Cisco proprietary version 1"; + } + } + default "v9"; + } + + // Collect params + typedef netflow_CollectParams { - // IPv4 Routes + type string; + } + + // Collector identifier + typedef netflow_CollectorId { + type uint32 { + range "0..65535"; + } + } + + // Direction type + typedef netflow_DirectionT { + type enumeration { + enum in { + value 1; + description "Ingress"; + } + enum out { + value 2; + description "Egress"; + } + enum both { + value 3; + description "Both"; + } + } + default "in"; + } + + // Flow timeout + typedef netflow_FlowTimeout { + type uint32 { + range "5..60"; + } + default "10"; + } + + // IP filter type + typedef netflow_FltType { + type enumeration { enum ipv4 { + value 1; + description "Ipv4 type"; + } + enum ipv6 { + value 2; + description "Ipv6 type"; + } + enum ce { + value 3; + description "CE type"; + } + } + default "ipv4"; + } + + // Forwarding instance target identifier + typedef netflow_FwdInstTargetId { + type uint32 { + range "0..4294967295"; + } + } + + // Hash value + typedef netflow_HashT { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + // IP packet identifier shift + typedef netflow_IpPktIdShift { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Layer4 port + typedef netflow_L4Port { + type uint32 { + range "1..65535"; + } + } + + // Match params + typedef netflow_MatchParams { + + type string; + } + + // Mode + typedef netflow_ModeT { + type enumeration { + enum netflow { value 0; + description "Netflow mode"; } + } + default "netflow"; + } + + // MTU + typedef netflow_Mtu { + type uint16 { + range "576..9216"; + } + default "1500"; + } + + // Payload length identifier + typedef netflow_PayloadLenIdT { + type uint8 { + range "0..10"; + } + } + + // Payload length + typedef netflow_PayloadLenT { + + type uint32 { + range "0..16383"; + } + default "0"; + } + + // Receive window size identifier + typedef netflow_RcvWindowSzIdT { + type uint8 { + range "0..4"; + } + } + + // Receive window size + typedef netflow_RcvWindowSzT { + type uint32 { + range "0..65535"; + } + default "0"; + } + + // RTP Timeout + typedef netflow_RtpTimeout { + type uint32 { + range "0..1440"; + } + default "1"; + } + + // TCP options header length identifier + typedef netflow_TCPOptHdrLenIdT { + type uint8 { + range "0..6"; + } + } + + // TCP options header length + typedef netflow_TCPOptHdrLenT { + type uint32 { + range "0..15"; + } + default "0"; + } - // IPv6 Routes + // Sequence number guess threshold + typedef netflow_ThresholdT { + type uint32 { + range "0..4294967295"; + } + default "0"; + } + + typedef netflow_VrfName { + type l3_VrfName; + default "default"; + } + + // Address Ip + typedef netflow_addressIp { + type address_Ip; + } + + // Dscp code point values + typedef netflow_flowDscp { + type uint8; + default "0"; + } + + // Port + typedef netflow_flowPort { + + type uint16 { + range "0..65535"; + } + default "9995"; + } + + // Address family type + typedef ngmvpn_AfT { + type enumeration { + enum ipv4 { + value 0; + description "IPv4 Routes"; + } enum ipv6 { value 1; + description "IPv6 Routes"; } } } @@ -17477,20 +20069,17 @@ module Cisco-NX-OS-device { // Database type typedef ngmvpn_DbT { type enumeration { - - // NGMVPN mroute database enum mroute { value 0; + description "NGMVPN mroute database"; } - - // NGMVPN SA route database enum saroute { value 1; + description "NGMVPN SA route database"; } - - // NGMVPN L2 route database enum l2route { value 2; + description "NGMVPN L2 route database"; } } } @@ -17498,50 +20087,41 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef ngmvpn_EhType { type enumeration { - - // BGP events for fabric multicast enum bgp { value 0; + description "BGP events for fabric multicast"; } - - // MRIB events for fabric multicast enum mrib { value 1; + description "MRIB events for fabric multicast"; } - - // M2RIB events for fabric multicast enum m2rib { value 2; + description "M2RIB events for fabric multicast"; } - - // M6RIB events for fabric multicast enum m6rib { value 3; + description "M6RIB events for fabric multicast"; } - - // PIM events for fabric multicast enum pim { value 4; + description "PIM events for fabric multicast"; } - - // PIM6 events for fabric multicast enum pim6 { value 5; + description "PIM6 events for fabric multicast"; } - - // HMM events for fabric multicast enum hmm { value 6; + description "HMM events for fabric multicast"; } - - // ISIS events for fabric multicast enum isis { value 7; + description "ISIS events for fabric multicast"; } - - // HA events for fabric multicast enum ha { value 8; + description "HA events for fabric multicast"; } } } @@ -17576,7 +20156,6 @@ module Cisco-NX-OS-device { // Num packets to send for a given ping task typedef ngoam_DestPort { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17609,7 +20188,7 @@ module Cisco-NX-OS-device { type uint8 { range "1..255"; } - default "100"; + default "5"; } // Hop count @@ -17620,17 +20199,9 @@ module Cisco-NX-OS-device { default "32"; } - // Interface range - typedef ngoam_Interface { - type string { - } - default "unspecified"; - } - // Num packets to send for a given ping task typedef ngoam_NumPkt { - // MAX Converted to int from 0xffff type uint16 { range "1..65535"; } @@ -17640,15 +20211,13 @@ module Cisco-NX-OS-device { // Type of the path typedef ngoam_OamChannel { type enumeration { - - // INVALID enum invalid { value 0; + description "INVALID"; } - - // TISSA enum tissa { value 2; + description "TISSA"; } } default "invalid"; @@ -17667,7 +20236,6 @@ module Cisco-NX-OS-device { // Payload pad value typedef ngoam_PayloadPad { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17677,7 +20245,7 @@ module Cisco-NX-OS-device { // The packet size to be used for sending the ping packet typedef ngoam_PktSz { type uint16 { - range "1..65486"; + range "1..9500"; } default "56"; } @@ -17708,14 +20276,6 @@ module Cisco-NX-OS-device { type uint32; } - // The interval between every ping packet that is sent out - typedef ngoam_SendIntvl { - type uint8 { - range "0..60"; - } - default "0"; - } - // The interval between every ping packet that is sent out typedef ngoam_SendIntvlCC { type uint8 { @@ -17727,7 +20287,6 @@ module Cisco-NX-OS-device { // SessionId typedef ngoam_SessionId { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } @@ -17736,6 +20295,7 @@ module Cisco-NX-OS-device { // Source port range typedef ngoam_Sport { type string { + pattern "(\\d+(-\\d+)? *(, *\\d+(-\\d+)? *)*)"; } default "0"; } @@ -17743,44 +20303,20 @@ module Cisco-NX-OS-device { // Source port to be used in the packet typedef ngoam_SrcPort { - // MAX Converted to int from 0xffff type uint16 { range "0..65535"; } default "0"; } - // The interval between every ping packet that is sent out - typedef ngoam_SweepSz { - type uint16 { - range "90..9600"; - } - default "90"; - } - - // Hop count - typedef ngoam_TTL { - type uint8 { - range "1..255"; - } - default "5"; - } - // The timeout before the ping task gives up with the reply typedef ngoam_Timeout { type uint8 { - range "0..60"; + range "0..25"; } default "2"; } - // Vni id - typedef ngoam_Vnid { - type uint32 { - range "1..16777215"; - } - } - // Vni id typedef ngoam_VnidCC { type uint32 { @@ -17796,20 +20332,17 @@ module Cisco-NX-OS-device { // Xconnec port state typedef ngoam_xcPortState { type enumeration { - - // down enum down { value 0; + description "down"; } - - // Up enum up { value 1; + description "Up"; } - - // Err enum errDisabled { value 2; + description "Err"; } } default "down"; @@ -17818,320 +20351,133 @@ module Cisco-NX-OS-device { // Xconnec state typedef ngoam_xcState { type enumeration { - - // Active enum Active { value 0; + description "Active"; } - - // Database down enum DB { value 1; + description "Database down"; } - - // HB failure enum HB { value 2; + description "HB failure"; } - - // Remote down enum RD { value 4; + description "Remote down"; } - - // Local Intf down enum LD { value 8; + description "Local Intf down"; } - - // DB down, HB Loss enum DB/HB { value 3; + description "DB down, HB Loss"; } - - // Remote down, HB Loss enum RD/HB { value 6; + description "Remote down, HB Loss"; } - - // DB down, HB loss, Remote down enum DB/HB/RD { value 7; + description "DB down, HB loss, Remote down"; } - - // DB down, Local down enum DB/LD { value 9; + description "DB down, Local down"; } - - // HB down, Local down enum HB/LD { value 10; + description "HB down, Local down"; } - - // DB down, HB loss, Local down enum DB/HB/LD { value 11; + description "DB down, HB loss, Local down"; } - - // Remote down, Local down enum RD/LD { value 12; + description "Remote down, Local down"; } - - // DB down, Remote down, Local down enum DB/RD/LD { value 13; + description "DB down, Remote down, Local down"; } - - // HB Loss, Remote down, Local down enum HB/RD/LD { value 14; + description "HB Loss, Remote down, Local down"; } - - // DB Loss, HB down, Remote down, Local down enum DB/HB/RD/LD { value 15; + description "DB Loss, HB down, Remote down, Local down"; } } default "DB"; } - // enable/disable controls used in extIf properties - typedef npv_ExtIfFlags { - - // bits- Using string - type string; - } - - // Ext If Fsm type - typedef npv_ExtIfFsmSt { - type enumeration { - - // FSM_ST_NO_TRANSITION - enum no-transition { - value 0; - } - - // FSM_ST_NO_CHANGE - enum no-change { - value 1; - } - - // FSM_ST_ANY - enum any { - value 2; - } - - // NPIVP_EXT_IF_ST_DOWN - enum down { - value 3; - } - - // NPIVP_EXT_IF_ST_PREINIT_DONE - enum preinit-done { - value 4; - } - - // NPIVP_EXT_IF_ST_WAITING_FLOGI_RESPONSE - enum wait-flogi-response { - value 5; - } - - // NPIVP_EXT_IF_ST_UP - enum up { - value 6; - } - - // NPIVP_EXT_IF_ST_FLOGI_FAILED - enum flogi-failed { - value 7; - } - - // NPIVP_EXT_IF_ST_WAITING_FCID_ADDITION - enum wait-fcid-add { - value 8; - } - - // NPIVP_EXT_IF_ST_WAITING_FCID_DELETION - enum wait-fcid-del { - value 9; - } - - // NPIVP_EXT_IF_ST_WAITING_NS_REGISTRATION - enum wait-ns-registration { - value 10; - } - - // NPIVP_EXT_IF_ST_FLOGI_FAIL_RETRY - enum flogi-fail-retry { - value 11; - } - - // NPIVP_EXT_IF_ST_WAITING_FOR_VSAN_UP - enum wait-for-vsan-up { - value 12; - } - - // NPIVP_EXT_IF_ST_WAITING_LC_PORT_CONFIG - enum wait-lc-port-config { - value 13; - } - - // NPIVP_EXT_IF_ST_PC_MEMBER_ADD - enum pc-member-add { - value 14; - } - - // NPIVP_EXT_IF_ST_PC_MEMBER_DEL - enum pc-member-del { - value 15; - } - } - default "no-transition"; - } - - // enable/disable controls used in srvIf properties - typedef npv_SrvIfFlags { - - // bits- Using string - type string; - } - - // Server If Fsm type - typedef npv_SrvIfFsmSt { - type enumeration { - - // FSM_ST_NO_TRANSITION - enum no-transition { - value 0; - } - - // FSM_ST_NO_CHANGE - enum no-change { - value 1; - } - - // FSM_ST_ANY - enum any { - value 2; - } - - // NPIVP_SVR_IF_ST_INTERFACE_DOWN - enum if-down { - value 3; - } - - // NPIVP_SVR_IF_ST_WAITING_EXTERNAL_INTERFACE - enum wait-ext-if { - value 4; - } - - // NPIVP_SVR_IF_ST_WAITING_FOR_FLOGI - enum wait-flogi { - value 5; - } - - // NPIVP_SVR_IF_ST_INTERFACE_UP - enum if-up { - value 6; - } - - // NPIVP_SVR_IF_ST_FLOGI_CLEANUP - enum flogi-cleanup { - value 7; - } - - // NPIVP_SVR_IF_ST_WAITING_FC_ADD - enum wait-fc-add { - value 8; - } - - // NPIVP_SVR_IF_ST_WAITING_FC_DEL - enum wait-fc-del { - value 9; - } - - // NPIVP_SVR_IF_ST_WAITING_FOR_EXT_IF_STABLE - enum wait-ext-if-stable { - value 10; - } - } - default "no-transition"; - } - typedef nvo_CfgSrcT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Config source is CLI enum cli { value 1; + description "Config source is CLI"; } - - // Config source is controller enum controller { value 2; + description "Config source is controller"; } } default "unknown"; } typedef nvo_ETimeStamp { - type string; + type union { + type string; + type uint64; + } default "0"; } typedef nvo_EncapT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Overlay encap vxlan enum vxlan { value 1; + description "Overlay encap vxlan"; } - - // Overlay encap vxlan tunnel control frames enum vxlan-tun-ctrl-frame { value 2; + description "Overlay encap vxlan tunnel control frames"; } - - // Overlay encap vxlan tunnel control frames lacp enum vxlan-tun-ctrl-frame-lacp { value 3; + description "Overlay encap vxlan tunnel control frames lacp"; } - - // Overlay encap vxlan tunnel control frames stp enum vxlan-tun-ctrl-frame-stp { value 4; + description "Overlay encap vxlan tunnel control frames stp"; } - - // Overlay encap vxlan-with-tags enum dot1q { value 5; + description "Overlay encap vxlan-with-tags"; } - - // Overlay encap vxlan-with-tags tunnel control frames enum dot1q-tun-ctrl-frame { value 6; + description "Overlay encap vxlan-with-tags tunnel control frames"; } - - // Overlay encap vxlan-with-tags tunnel control frames lacp enum dot1q-tun-ctrl-frame-lacp { value 7; + description "Overlay encap vxlan-with-tags tunnel control frames lacp"; } - - // Overlay encap vxlan-with-tags tunnel control frames stp enum dot1q-tun-ctrl-frame-stp { value 8; + description "Overlay encap vxlan-with-tags tunnel control frames stp"; } } default "unknown"; @@ -18143,31 +20489,49 @@ module Cisco-NX-OS-device { typedef nvo_EvpnMcastStT { type enumeration { - - // Enable 'advertise evpn multicast' enum enabled { value 1; + description "Enable 'advertise evpn multicast'"; } } default "enabled"; } - typedef nvo_HostLearnModeT { + typedef nvo_EvpnSiteName { type enumeration { + enum unknown { + value 0; + description "Evpn sitename 'Unknown'"; + } + enum ucast { + value 1; + description "Evpn sitename 'Unicast'"; + } + enum bcast { + value 2; + description "Evpn sitename 'Broadcast'"; + } + enum mcast { + value 3; + description "Evpn sitename 'Multicast'"; + } + } + default "unknown"; + } - // Data Plane + typedef nvo_HostLearnModeT { + type enumeration { enum DP { value 1; + description "Data Plane"; } - - // Control Plane enum CP { value 2; + description "Control Plane"; } - - // Controller enum Ctrlr { value 3; + description "Controller"; } } default "DP"; @@ -18175,30 +20539,25 @@ module Cisco-NX-OS-device { typedef nvo_HostReachT { type enumeration { - - // Flood-and-learn VxLAN enum Flood-and-learn { value 0; + description "Flood-and-learn VxLAN"; } - - // Host Reachability is learnt through BGP-EVPN enum bgp { value 1; + description "Host Reachability is learnt through BGP-EVPN"; } - - // Host Reachability is provided by controller enum controller { value 2; + description "Host Reachability is provided by controller"; } - - // Host Reachability is provided by openflow enum openflow { value 3; + description "Host Reachability is provided by openflow"; } - - // Host Reachability is provided by openflow-ir enum openflowIR { value 4; + description "Host Reachability is provided by openflow-ir"; } } default "Flood-and-learn"; @@ -18206,36 +20565,52 @@ module Cisco-NX-OS-device { typedef nvo_IngReplProtoT { type enumeration { - - // Unknown mode for peers enum unknown { value 0; + description "Unknown mode for peers"; } - - // Ingress Replication peers are learnt via BGP-EVPN enum bgp { value 1; + description "Ingress Replication peers are learnt via BGP-EVPN"; } - - // Ingress Replication peers are configured statically enum static { value 2; + description "Ingress Replication peers are configured statically"; } } default "unknown"; } - typedef nvo_MultisiteIngReplStateT { + typedef nvo_MplsEncapT { type enumeration { + enum unknown { + value 0; + description "Unknown type of encapsulation operation"; + } + enum mpls { + value 1; + description "MPLS segment-routing based encapsulation"; + } + enum none { + value 2; + description "No encapsulation"; + } + } + } - // Disable 'multisite ingress-replication' + typedef nvo_MultisiteIngReplStateT { + type enumeration { enum disable { value 1; + description "Disable 'multisite ingress-replication'"; } - - // Enable 'multisite ingress-replication' enum enable { value 2; + description "Enable 'multisite ingress-replication'"; + } + enum enableOptimized { + value 3; + description "Enable 'Optimized multisite ingress-replication'"; } } default "disable"; @@ -18243,10 +20618,9 @@ module Cisco-NX-OS-device { typedef nvo_MultisiteStateT { type enumeration { - - // Enable 'evpn multisite border-gateway' enum enabled { value 1; + description "Enable 'evpn multisite border-gateway'"; } } default "enabled"; @@ -18254,36 +20628,36 @@ module Cisco-NX-OS-device { typedef nvo_MultisiteTrackingT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // Enable 'evpn multisite dci-tracking' enum dci { value 1; + description "Enable 'evpn multisite dci-tracking'"; } - - // Enable 'evpn multisite fabric-tracking' enum fabric { value 2; + description "Enable 'evpn multisite fabric-tracking'"; } } default "unknown"; } + typedef nvo_OwnershipT { + + type string; + } + typedef nvo_PeerStateT { type enumeration { - - // Peer State UP enum Up { value 1; + description "Peer State UP"; } - - // Peer State DOWN enum Down { value 2; + description "Peer State DOWN"; } } default "Down"; @@ -18296,41 +20670,61 @@ module Cisco-NX-OS-device { // values in the aggregate model enum typedef nvo_ReplModeT { type enumeration { - - // Unknown enum unknown { value 0; + description "Unknown"; } - - // ReplicationServer enum replicationServer { value 1; + description "ReplicationServer"; } - - // IngressReplication enum ingressReplication { value 2; + description "IngressReplication"; } } default "ingressReplication"; } - typedef nvo_SuppressARPT { + typedef nvo_SrStateT { type enumeration { + enum unknown { + value 4; + description "Unknown State"; + } + enum init { + value 0; + description "Entity is in initial state"; + } + enum add_complete { + value 1; + description "Entity is in functional state"; + } + enum EviDelPending { + value 2; + description "Cleanup is pending after deletion of an evi node"; + } + enum PeerDelPending { + value 3; + description "Cleanup is pending after deletion of a peer node"; + } + } + default "unknown"; + } - // Arp suppression not configured + typedef nvo_SuppressARPT { + type enumeration { enum off { value 0; + description "Arp suppression not configured"; } - - // Arp suppression enabled enum enabled { value 1; + description "Arp suppression enabled"; } - - // Arp suppression disabled enum disabled { value 2; + description "Arp suppression disabled"; } } default "off"; @@ -18338,15 +20732,13 @@ module Cisco-NX-OS-device { typedef nvo_VniStateT { type enumeration { - - // VNI State UP enum Up { value 1; + description "VNI State UP"; } - - // VNI State DOWN enum Down { value 2; + description "VNI State DOWN"; } } default "Down"; @@ -18360,15 +20752,13 @@ module Cisco-NX-OS-device { typedef nvo_VniTypeT { type enumeration { - - // Not vrf associated enum L2 { value 1; + description "Not vrf associated"; } - - // Vrf associated enum L3 { value 2; + description "Vrf associated"; } } default "L2"; @@ -18377,20 +20767,17 @@ module Cisco-NX-OS-device { // Address family typedef nw_AddrF { type enumeration { - - // IPv4 enum ipv4 { value 1; + description "IPv4"; } - - // IPv6 enum ipv6 { value 2; + description "IPv6"; } - - // Mac enum mac { value 3; + description "Mac"; } } default "ipv4"; @@ -18399,15 +20786,13 @@ module Cisco-NX-OS-device { // Administrative state typedef nw_AdminSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } default "enabled"; @@ -18458,14 +20843,12 @@ module Cisco-NX-OS-device { // Instance controls typedef nw_InstCtrl { - // bits- Using string type string; } // Interface ordinal typedef nw_Iod { - // MAX Converted to int from 0xffffffff type uint32 { range "1..4294967295"; } @@ -18475,25 +20858,21 @@ module Cisco-NX-OS-device { // Memory alert level typedef nw_MemAlertLevel { type enumeration { - - // Normal enum normal { value 0; + description "Normal"; } - - // Minor enum minor { value 1; + description "Minor"; } - - // Major enum major { value 2; + description "Major"; } - - // Critical enum critical { value 3; + description "Critical"; } } default "normal"; @@ -18502,30 +20881,25 @@ module Cisco-NX-OS-device { // Operational state summary typedef nw_OSSum { type enumeration { - - // Failed enum failed { value 0; + description "Failed"; } - - // Initializing enum initializing { value 1; + description "Initializing"; } - - // Resetting enum resetting { value 2; + description "Resetting"; } - - // Degraded enum degraded { value 3; + description "Degraded"; } - - // Ok enum ok { value 4; + description "Ok"; } } default "ok"; @@ -18539,36 +20913,76 @@ module Cisco-NX-OS-device { // Operational error qualifier typedef nw_OperErrQual { - // bits- Using string type string; } - typedef nxapi_port { + typedef nxapi_ClientCertAuthType { + type enumeration { + enum off { + value 0; + description "Basic Authentication ONLY"; + } + enum optional { + value 1; + description "Mutual certificate authentication between client and server, OR Basic Authentication"; + } + enum strict { + value 2; + description "Mutual certificate authentication between client and server ONLY"; + } + enum two-step { + value 3; + description "Mutual certificate authentication between client and server, AND Basic Authentication (two-step verification)"; + } + } + default "off"; + } + + typedef nxapi_HttpPort { type int32 { range "-1..65535"; } + default "-1"; } - // Endpoint type - typedef oam_EpT { - type enumeration { + typedef nxapi_HttpsPort { + type int32 { + range "-1..65535"; + } + default "443"; + } - // EP - enum ep { - value 1; - } + typedef nxapi_SslProtocols { + type string; + default "TLSv1.2"; + } + + typedef nxapi_keyPassphrase { + type string { + length "4..1024"; + } + } - // EP behind a vtep - enum vtep-ep { + // security level + typedef nxsdk_SecLevel { + type enumeration { + enum deny { + value 0; + } + enum permit { value 2; } - - // Node - enum node { + enum throttle { value 3; } } - default "node"; + default "deny"; + } + + typedef nxsdk_ServiceSt { + type string { + length "0..20"; + } } // Ip identifier @@ -18576,11 +20990,6 @@ module Cisco-NX-OS-device { type address_Ip; } - // MAC identifier - typedef oam_MacId { - type address_Mac; - } - // Payload size typedef oam_PayloadSz { type uint16 { @@ -18604,37 +21013,52 @@ module Cisco-NX-OS-device { type l3_VrfName; } - typedef opflex_DevOperState { + typedef ofm_encapType { type enumeration { + enum none { + value 0; + description "none"; + } + enum vxlan { + value 1; + description "Vxlan encap"; + } + } + default "none"; + } - // Unknown + // Tunnel mode types + typedef ofm_profileName { + type string { + length "0..50"; + } + } + + typedef opflex_DevOperState { + type enumeration { enum unknown { value 0; + description "Unknown"; } - - // Online enum online { value 1; + description "Online"; } - - // Offline enum offline { value 2; + description "Offline"; } - - // Identified enum identified { value 3; + description "Identified"; } - - // Compatible enum compatible { value 4; + description "Compatible"; } - - // Incompatible enum incompatible { value 5; + description "Incompatible"; } } default "identified"; @@ -18722,6 +21146,7 @@ module Cisco-NX-OS-device { typedef os_OsString { type string { length "0..256"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } } @@ -18733,33 +21158,43 @@ module Cisco-NX-OS-device { default "0"; } + // Explicit-NULL type- Active + typedef ospf_Active { + type enumeration { + enum no { + value 0; + description "Explicit-NULL state is not active"; + } + enum yes { + value 1; + description "Explicit-NULL state is active"; + } + } + default "no"; + } + // Adjacency change logging levels typedef ospf_AdjChangeLogLevel { type enumeration { - - // No logging enum none { value 0; + description "Adjacency change logging levels - None"; } - - // Brief logging enum brief { value 1; + description "Adjacency change logging levels - Brief logging"; } - - // Detailed logging enum detail { value 2; + description "Adjacency change logging levels - Detailed logging"; } } default "none"; } // Adjacency flags - // Default Value computed from unspecified typedef ospf_AdjFlags { - // bits- Using string type string; default "unspecified"; } @@ -18777,72 +21212,91 @@ module Cisco-NX-OS-device { // Adjancency operational state typedef ospf_AdjOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Adjancency operational state - Unknown"; } - - // Down enum down { value 1; + description "Adjancency operational state is Down"; } - - // Attempt enum attempt { value 2; + description "Adjancency operational state - Attempt"; } - - // Initializing enum initializing { value 3; + description "Adjancency operational state is Initializing"; } - - // Two-way enum two-way { value 4; + description "Adjancency operational state is Two-way"; } - - // Exstart enum exstart { value 5; + description "Adjancency operational state - Exstart"; } - - // Exchange enum exchange { value 6; + description "Adjancency operational state - Exchange"; } - - // Loading enum loading { value 7; + description "Adjancency operational state - Loading"; } - - // Full enum full { value 8; + description "Adjancency operational state is Full"; } - - // Self enum self { value 9; + description "Adjancency operational state is Self"; } } default "down"; } + // SR Adjacency SID flags + typedef ospf_AdjSidFlags { + + type string; + default "unspecified"; + } + + // SR Adjacency SID Label + typedef ospf_AdjSidLabel { + type uint32; + default "4294967295"; + } + + // Extended Prefix Flags + typedef ospf_AdjSidTlvType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; + } + enum Adj-SID_Sub-TLV { + value 2; + description "Adj-SID Sub-TLV"; + } + enum LAN_Adj-SID_Sub-TLV { + value 3; + description "LAN Adj-SID Sub-TLV"; + } + } + } + // Always option for DefLeak typedef ospf_Always { type enumeration { - - // No enum no { value 0; + description "Default-leak state is not always"; } - - // Yes enum yes { value 1; + description "Default-leak state is always"; } } default "no"; @@ -18857,10 +21311,8 @@ module Cisco-NX-OS-device { } // Area controls - // Default Value computed from unspecified typedef ospf_AreaControl { - // bits- Using string type string; default "unspecified"; } @@ -18881,20 +21333,17 @@ module Cisco-NX-OS-device { // Area type typedef ospf_AreaT { type enumeration { - - // Regular area enum regular { value 1; + description "Area type is regular area"; } - - // Stub area enum stub { value 2; + description "Area type is Stub area"; } - - // NSSA area enum nssa { value 3; + description "Area type is NSSA area"; } } default "regular"; @@ -18921,25 +21370,21 @@ module Cisco-NX-OS-device { // Authentication type typedef ospf_AuthT { type enumeration { - - // No authentication enum none { value 0; + description "Authentication type is none "; } - - // Simple authentication enum simple { value 1; + description "Simple authentication type"; } - - // MD5 authentication enum md5 { value 2; + description "MD5 authentication type"; } - - // Unspecified enum unspecified { value 3; + description "Authentication type is unspecified but valid"; } } default "unspecified"; @@ -18948,20 +21393,17 @@ module Cisco-NX-OS-device { // Bidirectional Forwarding Detection Control typedef ospf_BfdControl { type enumeration { - - // Unconfigure interface BFD configuration enum unspecified { value 0; + description "Unconfigure interface BFD configuration"; } - - // Configure interface to use BFD enum enabled { value 1; + description "Configure interface to use BFD"; } - - // Configure interface not to use BFD enum disabled { value 2; + description "Configure interface not to use BFD"; } } default "unspecified"; @@ -18970,15 +21412,13 @@ module Cisco-NX-OS-device { // BFD state typedef ospf_BfdOperSt { type enumeration { - - // Down enum down { value 0; + description "Bi-directional Forwarding Detection (BFD) is Down"; } - - // Up enum up { value 1; + description "Bi-directional Forwarding Detection (BFD) is Up"; } } } @@ -18997,20 +21437,32 @@ module Cisco-NX-OS-device { // Bandwidth reference unit typedef ospf_BwRefUnit { type enumeration { - - // Mbps enum mbps { value 0; + description "Bandwidth reference unit is Mbps"; } - - // Gbps enum gbps { value 1; + description "Bandwidth reference unit is Gbps"; } } default "mbps"; } + // OSPFv2 Capability Flag + typedef ospf_CapFlag { + type enumeration { + enum no { + value 0; + description "Capability not supported"; + } + enum yes { + value 1; + description "Capability supported"; + } + } + } + // Counter typedef ospf_Counter32 { type uint32; @@ -19026,20 +21478,17 @@ module Cisco-NX-OS-device { // Database type typedef ospf_DbT { type enumeration { - - // Link state database enum ls { value 1; + description "Link state database type with value 1"; } - - // Route database enum rt { value 2; + description "Route database type with value 2"; } - - // Nexthop database enum nh { value 3; + description "Nexthop database type with value 3"; } } default "ls"; @@ -19067,10 +21516,8 @@ module Cisco-NX-OS-device { } // Discard Route - // Default Value computed from int,ext typedef ospf_DiscardRoute { - // bits- Using string type string; default "int,ext"; } @@ -19084,10 +21531,8 @@ module Cisco-NX-OS-device { } // Dom controls - // Default Value computed from unspecified typedef ospf_DomControl { - // bits- Using string type string; default "unspecified"; } @@ -19103,25 +21548,21 @@ module Cisco-NX-OS-device { // Event history Buffer size typedef ospf_EventLogSize { type enumeration { - - // Event history logging disabled enum disabled { value 0; + description "Event history logging disabled"; } - - // Small enum small { value 1; + description "Event history Buffer size is Small"; } - - // Medium enum medium { value 2; + description "Event history Buffer size is Medium"; } - - // Large enum large { value 3; + description "Event history Buffer size is Large"; } } default "small"; @@ -19137,100 +21578,101 @@ module Cisco-NX-OS-device { // Event Log Type typedef ospf_EventType { type enumeration { - - // Adjacency Events enum adj { value 0; + description "Event Log Type - Adjacency Events"; } - - // Internal Events enum internal { value 1; + description "Event Log Type - Internal Events"; } - - // Events enum ha { value 2; + description "Event Log Type - HA Events"; } - - // LSA flooding Events enum lsa-flood { value 3; + description "Event Log Type - LSA flooding Events"; } - - // LSA Events enum lsa { value 4; + description "Event Log Type - LSA Events"; } - - // SPF Events enum spf { value 5; + description "Event Log Type - SPF Events"; } - - // Redistribution Events enum redist { value 6; + description "Event Log Type - Redistribution Events"; } - - // LDP Events enum ldp { value 7; + description "Event Log Type - LDP Events"; } - - // MPLS TE Events enum mpls-te { value 8; + description "Event Log Type - MPLS TE Events"; } - - // Hellog logs enum hello { value 9; + description "Event Log Type - Hellog packet logs"; } - - // RIB Events enum rib { value 10; + description "Event Log Type - RIB Events"; } - - // SPF Trigger Events enum spf-trigger { value 11; + description "SPF Trigger Events logs"; } - - // CLI Events enum cli { value 12; + description "Event Log Type - CLI Events"; + } + enum segrt { + value 13; + description "Segment Routing Events"; } } } // Failed state qualifier - // Default Value computed from unspecified typedef ospf_FailStQual { - // bits- Using string type string; default "unspecified"; } + // prefix attribute flag status + typedef ospf_FlagStatus { + type enumeration { + enum unspecified { + value 0; + description "Segment routing n-flag is Unspecified"; + } + enum clear { + value 1; + description "Prefix attribute flag status is Clear"; + } + } + default "unspecified"; + } + // Graceful restart controls typedef ospf_GrCtrl { type enumeration { - - // Planned graceful restarts only enum planned-only { value 1; + description "Planned graceful restarts only"; } - - // Complete graceful restart enabled enum complete { value 2; + description "Complete graceful restart enabled"; } - - // Graceful restart disabled enum disabled { value 3; + description "Do not participate in graceful restart procedures"; } } default "complete"; @@ -19260,30 +21702,25 @@ module Cisco-NX-OS-device { // Neighbor restart helper reason typedef ospf_HelperExitQual { type enumeration { - - // Not Attempted enum none { value 1; + description "Neighbor restart helper reason -Not Attempted"; } - - // Restart In Progress enum in-progress { value 2; + description "Neighbor restart helper reason - Restart In Progress"; } - - // Successfully Completed enum completed { value 3; + description "Neighbor restart helper reason - Successfully Completed"; } - - // Timed Out enum timed-out { value 4; + description "Neighbor restart helper reason - Timed Out"; } - - // Topology Changed enum topology-changed { value 5; + description "Neighbor restart helper reason - Topology Changed"; } } default "none"; @@ -19292,25 +21729,21 @@ module Cisco-NX-OS-device { // Neighbor restart helper status typedef ospf_HelperSt { type enumeration { - - // Not Helping enum not-helping { value 1; + description "Neighbor restart helper status - not-helping"; } - - // Helping enum helping { value 2; + description "Neighbor restart helper status - Helping"; } } default "not-helping"; } // Interface controls - // Default Value computed from unspecified typedef ospf_IfControl { - // bits- Using string type string; default "unspecified"; } @@ -19324,10 +21757,8 @@ module Cisco-NX-OS-device { } // Interface flags - // Default Value computed from unspecified typedef ospf_IfFlags { - // bits- Using string type string; default "unspecified"; } @@ -19335,45 +21766,37 @@ module Cisco-NX-OS-device { // Interface operational state typedef ospf_IfOperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "Interface operational state is unknown"; } - - // Down enum down { value 1; + description "Interface operational state is down"; } - - // Loopback enum loopback { value 2; + description "Interface operational state is Loopback"; } - - // Waiting enum waiting { value 3; + description "Interface operational state is Waiting"; } - - // p2p enum p2p { value 4; + description "Interface operational state is p2p"; } - - // DR enum dr { value 5; + description "Interface operational state is DR"; } - - // BDR enum bdr { value 6; + description "Interface operational state is BDR"; } - - // DR-other enum dr-other { value 7; + description "Interface operational state is DR-other"; } } default "down"; @@ -19382,35 +21805,29 @@ module Cisco-NX-OS-device { // Interface type typedef ospf_IfType { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Interface type is unspecified"; } - - // Loopback enum loopback { value 1; + description "Interface type is Loopback"; } - - // P2P enum p2p { value 2; + description "Interface type is P2P"; } - - // P2MP enum p2mp { value 3; + description "Interface type is P2MP"; } - - // NBMA enum nbma { value 4; + description "Interface type is NBMA"; } - - // Broadcast enum bcast { value 5; + description "Interface type is Broadcast"; } } default "unspecified"; @@ -19464,15 +21881,13 @@ module Cisco-NX-OS-device { typedef ospf_LsaLeakOperSt { type enumeration { - - // InActive enum Inactive { value 0; + description "LSA leak operational state is InActive"; } - - // Active enum active { value 1; + description "LSA leak operational state is Active"; } } default "Inactive"; @@ -19486,50 +21901,41 @@ module Cisco-NX-OS-device { // Lsa type typedef ospf_LsaT { type enumeration { - - // Router LSA enum router { value 1; + description "Router Link-State Advertisements(LSA)"; } - - // Network LSA enum nw { value 2; + description "Network Link-State Advertisements(LSA)"; } - - // Summary LSA enum summary { value 3; + description "Summary Link-State Advertisements(LSA)"; } - - // ASBR LSA enum asbr { value 4; + description "ASBR Link-State Advertisements(LSA)"; } - - // External LSA enum ext { value 5; + description "External Link-State Advertisements(LSA)"; } - - // NSSA LSA enum nssa { value 7; + description "NSSA Link-State Advertisements(LSA)"; } - - // Link opaque LSA enum link-opq { value 9; + description "Link opaque Link-State Advertisements(LSA)"; } - - // Area opaque LSA enum area-opq { value 10; + description "Area opaque Link-State Advertisements(LSA)"; } - - // AS opaque LSA enum as-opq { value 11; + description "AS opaque Link-State Advertisements(LSA)"; } } default "router"; @@ -19568,20 +21974,17 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaAct { type enumeration { - - // Reject enum reject { value 0; + description "Reject LSAs beyond the limit"; } - - // Restart enum restart { value 1; + description "Restart the max-lsa neighbor"; } - - // Log enum log { value 2; + description "Max-LSA action - log a warning"; } } default "reject"; @@ -19589,15 +21992,13 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaOperSt { type enumeration { - - // ok enum ok { value 0; + description "Max LSA operational state is OK"; } - - // Threshold Exceeded enum threshold-exceeded { value 1; + description "Max LSA operational state - Threshold Exceeded"; } } default "ok"; @@ -19605,35 +22006,29 @@ module Cisco-NX-OS-device { typedef ospf_MaxLsaOperStQual { type enumeration { - - // ok enum ok { value 0; + description "Max LSA operational state qualifier is ok"; } - - // warning enum warning { value 1; + description "Max LSA operational state qualifier - warning"; } - - // Overload enum overload { value 2; + description "Max LSA operational state qualifier - Overload"; } - - // Sleep enum sleep { value 3; + description "Max LSA operational state qualifier - Sleep state"; } - - // Reset enum reset { value 4; + description "Max LSA operational state qualifier - Reset state"; } - - // Perm-Sleep enum perm-sleep { value 5; + description "Max LSA operational state qualifier - Permanent Sleep"; } } default "ok"; @@ -19649,7 +22044,7 @@ module Cisco-NX-OS-device { // Max metric value to be used for advertising LSAs typedef ospf_MaxMetric { type uint32 { - range "1..16777215"; + range "0..16777215"; } } @@ -19657,7 +22052,6 @@ module Cisco-NX-OS-device { // metric LSAs and for which LSAs/links typedef ospf_MaxMetricControl { - // bits- Using string type string; } @@ -19670,10 +22064,8 @@ module Cisco-NX-OS-device { } // Nexthop flags - // Default Value computed from unspecified typedef ospf_NhFlags { - // bits- Using string type string; default "unspecified"; } @@ -19688,20 +22080,17 @@ module Cisco-NX-OS-device { // NSSA translator role typedef ospf_NssaTransRole { type enumeration { - - // Always enum always { value 1; + description "NSSA translator role is Always"; } - - // Candidate enum candidate { value 2; + description "NSSA translator role is Candidate"; } - - // Never enum never { value 3; + description "NSSA translator role is Never"; } } default "candidate"; @@ -19710,20 +22099,17 @@ module Cisco-NX-OS-device { // NSSA translator state typedef ospf_NssaTransSt { type enumeration { - - // Enabled enum enabled { value 1; + description "NSSA translator state is Enabled"; } - - // Elected enum elected { value 2; + description "NSSA translator state is Elected"; } - - // Disabled enum disabled { value 3; + description "NSSA translator state is Disabled"; } } default "elected"; @@ -19740,20 +22126,17 @@ module Cisco-NX-OS-device { // Network type typedef ospf_NwT { type enumeration { - - // Unspecified enum unspecified { value 0; + description "Network type is Unspecified"; } - - // Point-to-point enum p2p { value 1; + description "Network type is set to Point-to-point"; } - - // Broadcast enum bcast { value 2; + description "Network type is set to Broadcast"; } } default "unspecified"; @@ -19762,20 +22145,17 @@ module Cisco-NX-OS-device { // L3vm Operational state typedef ospf_OperSt { type enumeration { - - // Invalid enum invalid { value 0; + description "L3vm Operational state is invalid"; } - - // Down enum down { value 1; + description "L3vm Operational state is down"; } - - // Up enum up { value 2; + description "L3vm Operational state is up"; } } default "down"; @@ -19789,20 +22169,17 @@ module Cisco-NX-OS-device { // Passive Control typedef ospf_PassiveControl { type enumeration { - - // Unconfigure interface passive configuration enum unspecified { value 0; + description "Unconfigure interface passive configuration"; } - - // Configure interface as passive enum enabled { value 1; + description "Configure interface as passive"; } - - // Configure interface as non-passive enum disabled { value 2; + description "Configure interface as non-passive"; } } default "unspecified"; @@ -19811,50 +22188,54 @@ module Cisco-NX-OS-device { // Path type typedef ospf_PathT { type enumeration { - - // Intra enum intra { value 1; + description "Path type is Intra route path"; } - - // Discard internal enum discard-int { value 2; + description "Path type - Discard internal route"; } - - // Inter enum inter { value 3; + description "OSPF route path type - Inter"; } - - // Discard external enum discard-ext { value 4; + description "OSPF route path type - Discard external"; } - - // External1 enum ext1 { value 5; + description "OSPF route path type - External1"; } - - // NSSA1 enum nssa1 { value 6; + description "OSPF route path type - NSSA1"; } - - // External2 enum ext2 { value 7; + description "OSPF route path type - External2"; } - - // NSSA2 enum nssa2 { value 8; + description "OSPF route path type - NSSA2"; } } default "intra"; } + // Extended Prefix Flags + typedef ospf_PfxFlags { + + type string; + } + + // SR Prefix SID flags + typedef ospf_PfxSidFlags { + + type string; + } + typedef ospf_ResetIntvl { type uint32 { range "1..1440"; @@ -19879,10 +22260,8 @@ module Cisco-NX-OS-device { } // Route flags - // Default Value computed from unspecified typedef ospf_RtFlags { - // bits- Using string type string; default "unspecified"; } @@ -19895,37 +22274,38 @@ module Cisco-NX-OS-device { // Segment Routing Enable/Disable Control typedef ospf_SegRtControl { type enumeration { - - // Unconfigure area Segment Routing configuration enum unspecified { value 0; + description "Unconfigure area Segment Routing configuration"; } - - // Configure area to enable Segment Routing MPLS enum mpls { value 1; + description "Configure area to enable Segment Routing MPLS"; } - - // Configure area to disable Segment Routing MPLS/IPv6 enum disable { value 2; + description "Configure area to disable Segment Routing MPLS/IPv6"; } } default "unspecified"; } + // Segment routing mpls label + typedef ospf_SgmntRtgMplsLabel { + type uint32; + default "4294967295"; + } + // Segment Routing MPLS Operational State (Enable/Disable) typedef ospf_SgmntRtgMplsOperSt { type enumeration { - - // Segment Routing MPLS is Disabled at this level enum Disabled { value 0; + description "Segment Routing MPLS is Disabled at this level"; } - - // Segment Routing MPLS is Enabled at this level enum Enabled { value 1; + description "Segment Routing MPLS is Enabled at this level"; } } default "Disabled"; @@ -19983,10 +22363,8 @@ module Cisco-NX-OS-device { } // Summary Control - // Default Value computed from unspecified typedef ospf_SumControl { - // bits- Using string type string; default "unspecified"; } @@ -19994,27 +22372,25 @@ module Cisco-NX-OS-device { // Area range cost typedef ospf_SumCost { type uint32 { - range "0..16777215"; + range "0..16777216"; } + default "16777216"; } // Vrf-Lite Control typedef ospf_VrfLiteControl { type enumeration { - - // Unconfigure Vrf-Lite configuration enum unspecified { value 0; + description "Unconfigure Vrf-Lite configuration"; } - - // Configure Vrf-Lite for L3VPN enum l3vpn { value 1; + description "Configure Vrf-Lite for L3VPN"; } - - // Configure Vrf-Lite for Ethernet VPN enum evpn { value 2; + description "Configure Vrf-Lite for Ethernet VPN"; } } default "unspecified"; @@ -20028,6 +22404,210 @@ module Cisco-NX-OS-device { default "1"; } + // Administrative Distance + typedef ospfv3_AdminDist { + type uint8 { + range "1..255"; + } + default "110"; + } + + // Address family type + typedef ospfv3_AfT { + type enumeration { + enum ipv6-ucast { + value 1; + description "IPv6 unicast address family"; + } + } + default "ipv6-ucast"; + } + + // Area id + typedef ospfv3_AreaId { + type string; + } + + // Area type + typedef ospfv3_AreaT { + type enumeration { + enum regular { + value 1; + description "Area type is Regular area"; + } + enum stub { + value 2; + description "Area type is Stub area"; + } + enum nssa { + value 3; + description "Area type is NSSA area"; + } + } + default "regular"; + } + + // Dead interval + typedef ospfv3_DeadIntvl { + type uint32 { + range "0..65535"; + } + default "0"; + } + + // default Metric + typedef ospfv3_DefMetric { + type uint32 { + range "0..16777214"; + } + default "0"; + } + + // Designated priority + typedef ospfv3_DesigPrio { + type uint8 { + range "0..255"; + } + default "1"; + } + + // Dom name + typedef ospfv3_DomName { + type l3_VrfName; + } + + // Graceful restart controls + typedef ospfv3_GrCtrl { + type enumeration { + enum planned-only { + value 1; + description "Planned graceful restarts only"; + } + enum complete { + value 2; + description "Complete graceful restart enabled"; + } + enum disabled { + value 3; + description "Graceful restart disabled"; + } + } + default "complete"; + } + + // Graceful restart time period in seconds + typedef ospfv3_GrPeriod { + type uint32 { + range "5..1800"; + } + default "60"; + } + + // Hello interval + typedef ospfv3_HelloIntvl { + type uint16 { + range "1..65535"; + } + default "10"; + } + + // Interface cost + typedef ospfv3_IfCost { + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Instance id + typedef ospfv3_InstanceID { + type uint8 { + range "0..255"; + } + default "0"; + } + + // Instance name + typedef ospfv3_InstanceName { + type string { + length "0..20"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + } + + // Network type + typedef ospfv3_NwT { + type enumeration { + enum none { + value 0; + description "Network type is not configured"; + } + enum p2p { + value 1; + description "OSPF point-to-point network"; + } + enum bcast { + value 2; + description "OSPF broadcast multi-access network"; + } + } + default "none"; + } + + // VRF Operational state + typedef ospfv3_OperSt { + type enumeration { + enum invalid { + value 0; + description "VRF Operational state is invalid"; + } + enum down { + value 1; + description "VRF Operational state is down"; + } + enum up { + value 2; + description "VRF Operational state is up"; + } + } + default "down"; + } + + // Passive Control + typedef ospfv3_PassiveControl { + type enumeration { + enum none { + value 0; + description "Unconfigure interface passive configuration"; + } + enum enabled { + value 1; + description "Configure interface as passive"; + } + enum disabled { + value 2; + description "Configure interface as non-passive"; + } + } + default "none"; + } + + // Retransmit interval + typedef ospfv3_ReTxIntvl { + type uint16 { + range "1..65535"; + } + default "5"; + } + + // Tramist delay + typedef ospfv3_TxDelay { + type uint16 { + range "1..450"; + } + default "1"; + } + // Bundle port number typedef pc_BdlPortNum { type uint32; @@ -20065,40 +22645,28 @@ module Cisco-NX-OS-device { // Member port flags typedef pc_Flags { - // bits- Using string type string; } // Hash distribution type typedef pc_HashDist { type enumeration { - - // None enum none { value 0; + description "None"; } - - // Adaptive enum adaptive { value 1; + description "Adaptive"; } - - // Fixed enum fixed { value 2; + description "Fixed"; } } default "none"; } - // Default Value computed from susp-individual,graceful-conv - typedef pc_IfControl { - - // bits- Using string - type string; - default "susp-individual,graceful-conv"; - } - // Interface ordinal typedef pc_Iod { type uint32; @@ -20163,30 +22731,25 @@ module Cisco-NX-OS-device { // Port channel mode typedef pc_Mode { type enumeration { - - // on enum on { value 0; + description "on"; } - - // Static enum static { value 1; + description "Static"; } - - // lacp-active enum active { value 2; + description "lacp-active"; } - - // lacp-passive enum passive { value 3; + description "lacp-passive"; } - - // Mac Pinning enum mac-pin { value 4; + description "Mac Pinning"; } } default "on"; @@ -20200,25 +22763,21 @@ module Cisco-NX-OS-device { // Operational State typedef pc_OperSt { type enumeration { - - // Up enum up { value 0; + description "Up"; } - - // Down enum down { value 1; + description "Down"; } - - // Bringup in Progress enum bringup-in-progress { value 2; + description "Bringup in Progress"; } - - // Module Removed enum module-removed { value 3; + description "Module Removed"; } } } @@ -20226,20 +22785,13 @@ module Cisco-NX-OS-device { // Hash distribution type typedef pc_PCHashDist { type enumeration { - - // None - enum none { - value 0; - } - - // Adaptive enum adaptive { value 1; + description "Adaptive"; } - - // Fixed enum fixed { value 2; + description "Fixed"; } } default "adaptive"; @@ -20248,7 +22800,7 @@ module Cisco-NX-OS-device { // Port channel id typedef pc_PcId { type uint16 { - range "1..65535"; + range "0..65535"; } } @@ -20262,20 +22814,17 @@ module Cisco-NX-OS-device { // Port-channel type typedef pc_PoType { type enumeration { - - // none enum none { value 0; + description "none"; } - - // hif-pc enum hif-pc { value 1; + description "hif-pc"; } - - // non-hif-pc enum non-hif-pc { value 2; + description "non-hif-pc"; } } default "none"; @@ -20309,35 +22858,29 @@ module Cisco-NX-OS-device { // Summarized Operational State typedef pc_SummOperSt { type enumeration { - - // Up enum up { value 0; + description "Up"; } - - // Down enum down { value 1; + description "Down"; } - - // Module-removed enum module-removed { value 2; + description "Module-removed"; } - - // Individual enum individual { value 3; + description "Individual"; } - - // Suspended enum suspended { value 4; + description "Suspended"; } - - // Hot-standby enum hot-standby { value 5; + description "Hot-standby"; } } default "down"; @@ -20350,61 +22893,86 @@ module Cisco-NX-OS-device { // Time typedef pc_Time { - type string; + type union { + type string; + type uint64; + } } // Event History Buffer Type typedef pim6_EhType { type enumeration { - - // Assert-receive events for pim6 enum assertRcv { value 0; + description "Assert-receive events for pim6"; } - - // Bidir events for pim6 enum bidir { value 1; + description "Bidir events for pim6"; } - - // Hello events for pim6 enum hello { value 2; + description "Hello events for pim6"; } - - // Join-prune events for pim6 enum joinPrune { value 3; + description "Join-prune events for pim6"; } - - // null-register events for pim6 enum nullReg { value 4; + description "null-register events for pim6"; } - - // Packet events for pim6 enum packet { value 5; + description "Packet events for pim6"; } - - // pim6-internal events for pim6 - enum pim6Internal { + enum pimInternal { value 6; + description "pim-internal events for pim6"; } - - // RP events for pim6 enum rp { value 7; + description "RP events for pim6"; } - - // vrf events for pim6 enum vrf { value 8; + description "vrf events for pim6"; } - - // join-prune-summary events for pim6 enum jpSum { value 9; + description "join-prune-summary events for pim6"; + } + enum jpTw { + value 10; + description "join-prune-tw events for pim6"; + } + enum cli { + value 11; + description "cli events for pim6"; + } + enum vpc { + value 12; + description "vpc events for pim6"; + } + enum pimLib { + value 13; + description "pim-library events for pim6"; + } + enum nbm { + value 14; + description "nbm events for pim6"; + } + enum mrib { + value 15; + description "mrib events for pim6"; + } + enum dataRegRecv { + value 16; + description "data-register-receive events for pim6"; + } + enum txlist { + value 17; + description "txlist events for pim6"; } } } @@ -20412,28 +22980,25 @@ module Cisco-NX-OS-device { // Event History Buffer size in Text/kb typedef pim6_Size { type uint32 { - range "0..9 | 2097152..10485760"; + range "0..4 | 5..119999999"; } - default "5242880"; + default "0"; } // BFD state typedef pim_BfdInstSt { type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } - - // None enum none { value 0; + description "None"; } } default "none"; @@ -20459,95 +23024,77 @@ module Cisco-NX-OS-device { // Event History Buffer Type typedef pim_EhType { type enumeration { - - // Assert events for pim enum assert { value 0; + description "Assert events for pim"; } - - // Bidir events for pim enum bidir { value 1; + description "Bidir events for pim"; } - - // Cli events for pim enum cli { value 2; + description "Cli events for pim"; } - - // Data-register-receive events for pim enum dataRegRecv { value 3; + description "Data-register-receive events for pim"; } - - // Hello events for pim enum hello { value 4; + description "Hello events for pim"; } - - // Join-prune events for pim enum joinPrune { value 5; + description "Join-prune events for pim"; } - - // Mrib events for pim enum mrib { value 6; + description "Mrib events for pim"; } - - // null-register events for pim enum nullReg { value 7; + description "null-register events for pim"; } - - // Packet events for pim enum packet { value 8; + description "Packet events for pim"; } - - // NBM events for pim enum nbm { value 9; + description "NBM events for pim"; } - - // pim-internal events for pim enum pimInternal { value 10; + description "pim-internal events for pim"; } - - // pim-library events for pim enum pimLib { value 11; + description "pim-library events for pim"; } - - // RP events for pim enum rp { value 12; + description "RP events for pim"; } - - // txlist events for pim enum txlist { value 13; + description "txlist events for pim"; } - - // vpc events for pim enum vpc { value 14; + description "vpc events for pim"; } - - // vrf events for pim enum vrf { value 15; + description "vrf events for pim"; } - - // join-prune-summary events for pim enum jpSum { value 16; + description "join-prune-summary events for pim"; } - - // join-prune-tw events for pim enum jpTw { value 17; + description "join-prune-tw events for pim"; } } } @@ -20555,26 +23102,34 @@ module Cisco-NX-OS-device { // Interface Ctrl typedef pim_IfCtrl { - // bits- Using string type string; + default "1"; + } + + typedef pim_LoggingLvl { + type uint16 { + range "0..7"; + } + default "5"; } // route oif list types typedef pim_OifFlagsNew { - // bits- Using string type string; } // Generation Id typedef pim_PropGenId { - type uint32; + type uint32 { + range "0..4294967295"; + } } // Event History Buffer size in Text/kb typedef pim_Size { type uint32 { - range "0..4 | 5..4294967295"; + range "0..4 | 5..119999999"; } default "3"; } @@ -20582,20 +23137,17 @@ module Cisco-NX-OS-device { // Database type typedef pim_ifdbT { type enumeration { - - // PIM Stats database enum stats { value 0; + description "PIM Stats database"; } - - // PIM Adj database enum adj { value 1; + description "PIM Adj database"; } - - // PIM Property database enum prop { value 2; + description "PIM Property database"; } } } @@ -20612,25 +23164,79 @@ module Cisco-NX-OS-device { type string; } + typedef pki_CertEnrollType { + type enumeration { + enum none { + value 0; + description "Trustpoint Enrollment None"; + } + enum terminal { + value 1; + description "Configure Trustpoint Enrollment via Console"; + } + } + default "none"; + } + + typedef pki_CertLookupType { + type enumeration { + enum remote { + value 2; + description "Use Remote Certstore for Lookup"; + } + enum local { + value 3; + description "Use Local Certstore for Lookup"; + } + enum both { + value 4; + description "Use Both Local and Remote Certstore for Lookup"; + } + } + default "local"; + } + + typedef pki_CertRevokeCheck { + type enumeration { + enum crl { + value 0; + description "Configure Revocation Check Using Crl"; + } + enum none { + value 1; + description "Configure Revocation Check Using None"; + } + enum crl_none { + value 2; + description "Configure both Revocation Check Methods"; + } + } + default "crl"; + } + typedef pki_CertValidity { type string; } + typedef pki_CrlRefreshTime { + type uint16 { + range "0..744"; + } + } + typedef pki_Csync2KeyType { type string; } typedef pki_CsyncActivationStateType { type enumeration { - - // Disabled enum disabled { value 0; + description "Disabled"; } - - // Enabled enum enabled { value 1; + description "Enabled"; } } default "enabled"; @@ -20638,15 +23244,13 @@ module Cisco-NX-OS-device { typedef pki_CsyncElementType { type enumeration { - - // exclude enum exclude { value 0; + description "exclude"; } - - // include enum include { value 1; + description "include"; } } default "include"; @@ -20663,6 +23267,12 @@ module Cisco-NX-OS-device { type string; } + typedef pki_FilterName { + type string { + length "0..64"; + } + } + typedef pki_GuiIdleTimeoutType { type uint16 { range "60..65525"; @@ -20670,32 +23280,33 @@ module Cisco-NX-OS-device { default "1200"; } + typedef pki_KeyLabel { + type string { + length "0..64"; + } + } + typedef pki_KeyringState { type enumeration { - - // Started enum started { value 1; + description "Started"; } - - // Created enum created { value 2; + description "Created"; } - - // Request Created enum reqCreated { value 3; + description "Request Created"; } - - // Trust Provider Set enum tpSet { value 4; + description "Trust Provider Set"; } - - // Completed enum completed { value 5; + description "Completed"; } } default "started"; @@ -20703,28 +23314,30 @@ module Cisco-NX-OS-device { typedef pki_Modulus { type enumeration { - - // MOD 512 enum mod512 { value 512; + description "MOD 512"; } - - // MOD 1024 enum mod1024 { value 1024; + description "MOD 1024"; } - - // MOD 1536 enum mod1536 { value 1536; + description "MOD 1536"; } - - // MOD 2048 enum mod2048 { value 2048; + description "MOD 2048"; } } - default "mod2048"; + default "mod512"; + } + + typedef pki_Port { + type uint32 { + range "0..65535"; + } } typedef pki_PrivateKey { @@ -20733,14 +23346,18 @@ module Cisco-NX-OS-device { } } + typedef pki_ProviderGroupName { + type string { + length "0..127"; + } + } + typedef pki_SHA256_SharedSecret16 { type string; } - // Default Value computed from 7 typedef pki_SessionRecordFlags { - // bits- Using string type string; default "7"; } @@ -20760,16 +23377,187 @@ module Cisco-NX-OS-device { default "24"; } + // Pktmgr Rate-limit Direction + typedef pktmgr_RateLimitDirection { + type enumeration { + enum input { + value 1; + description "Set Max Input Packet Rate"; + } + enum output { + value 2; + description "Set Max Output Packet Rate"; + } + enum both { + value 3; + description "Set Max Input and Output Packet Rate"; + } + enum unspecified { + value 4; + description "Unspecified Direction"; + } + } + default "unspecified"; + } + + // acl tap-aggregation + typedef platform_AclTapAggregation { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + + typedef platform_AdminState { + type nw_AdminSt; + default "disabled"; + } + + typedef platform_BufferProfileOptions { + type enumeration { + enum mesh { + value 0; + description "Mesh optimized"; + } + enum burst { + value 1; + description "Burst optimized"; + } + enum ultra-burst { + value 2; + description "Ultra burst optimized"; + } + } + default "burst"; + } + + typedef platform_Concatenation { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + enum rotateEnable { + value 2; + } + } + default "disable"; + } + + // PFC WD Types + typedef platform_ConfigOnOff { + type enumeration { + enum off { + value 0; + } + enum on { + value 1; + } + } + default "off"; + } + + typedef platform_ConfigState { + type enumeration { + enum Disabled { + value 0; + } + enum Enabled { + value 1; + } + } + default "Disabled"; + } + + typedef platform_ConfigureSt { + type enumeration { + enum unconfigure { + value 0; + } + enum configure { + value 1; + } + } + default "configure"; + } + + typedef platform_DisParseErr { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + } + + typedef platform_Encapsulation { + type enumeration { + enum gre { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + } + + typedef platform_FabricMode { + type enumeration { + enum default { + value 2; + } + enum full-rate { + value 1; + } + } + default "default"; + } + typedef platform_FabricSpeed { type enumeration { - enum DEFAULT { + enum default { value 0; } - enum FABRIC_SPEED_40G { + enum fabric-speed-40g { value 1; } } - default "DEFAULT"; + default "default"; + } + + typedef platform_FrontPortmode { + type enumeration { + enum sfp-plus { + value 0; + } + enum qsfp { + value 1; + } + } + default "qsfp"; + } + + typedef platform_GlobalTxSpan { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; } typedef platform_HwProfile { @@ -20858,6 +23646,12 @@ module Cisco-NX-OS-device { enum TET_PORT_MODE_128X25G { value 31; } + enum CMR_PORT_MODE_128X100G_32X400G { + value 32; + } + enum CMR_PORT_MODE_160X25G_8X100G { + value 33; + } } default "Default"; } @@ -20869,9370 +23663,10800 @@ module Cisco-NX-OS-device { default "0"; } - typedef platform_LpmMaxLimits { - type uint16 { - range "0..4096"; + typedef platform_IPv6LpmRange { + type uint32 { + range "0..6144"; } } - typedef platform_MulticastMaxLimit { - type uint16 { - range "0..8000"; + typedef platform_Interval { + type uint32 { + range "500..60000"; } - default "4096"; } - typedef platform_PcLbAlgo { + typedef platform_LoadBalanceAlgo { type enumeration { - enum PC_LB_ALGO_DLB { + enum dstMac { value 1; } - enum PC_LB_ALGO_RTAG7 { + enum srcMac { value 2; } - enum PC_LB_ALGO_RTAG7_MURMUR { + enum srcDstMac { value 3; } - enum PC_LB_ALGO_RTAG7_LOCAL_CRC { + enum dstIpVlan { value 4; } - enum PC_LB_ALGO_DYNAMIC_PIN { + enum srcIpVlan { value 5; } - } - default "PC_LB_ALGO_DLB"; - } - - typedef platform_Percentage { - type uint16 { - range "1..100"; - } - } - - typedef platform_QosMinBuffer { - type enumeration { - enum all { - value 0; + enum srcDstIpVlan { + value 6; } - enum none { - value 1; + enum dstL4Port { + value 7; } - enum default { - value 2; + enum srcL4Port { + value 8; } - } - default "all"; - } - - typedef platform_RoutingMode { - type enumeration { - enum DEFAULT { - value 0; + enum srcDstL4Port { + value 9; } - enum NON_HIER_DEFAULT { - value 1; + enum dstIpL4Port { + value 10; } - enum NON_HIER_MAX_L3 { - value 2; + enum srcIpL4Port { + value 11; } - enum MAX_HOST { - value 3; + enum srcDstIpL4Port { + value 12; } - enum TOR_MAX_L3 { - value 4; + enum dstIpL4PortVlan { + value 13; } - enum DEFAULT_64B { - value 5; + enum srcIpL4PortVlan { + value 14; } - enum NON_HIER_MAX_L3_64B { - value 6; + enum srcDstIpL4PortVlan { + value 15; } - enum TOR_MAX_L3_64B { - value 7; + enum dstIp { + value 16; } - enum TOR_MAX_L2 { - value 8; + enum srcIp { + value 17; } - enum TOR_MAX_L2L3 { - value 9; + enum srcDstIp { + value 18; } - enum TOR_TEMPLATE_OVL_HOST_SCALE { + enum srcIpGre { value 21; } - enum TEMPLATE_LPM_HEAVY { + enum dstIpGre { value 22; } - enum TOR_TEMPLATE_LPM_SCALE_V6_64 { + enum srcDstIpGre { value 23; } - enum TOR_TEMPLATE_DUAL_STACK_HOST_SCALE { - value 24; + enum srcInnerheader { + value 30; } - enum TEMPLATE_DYNAMIC_TRIE_SCALE { - value 25; + enum dstInnerheader { + value 31; } - enum TEMPLATE_MULTICAST_HEAVY { - value 26; + enum srcDstInnerheader { + value 32; } - enum TEMPLATE_VXLAN_SCALE { - value 27; + enum srcGtpu { + value 33; } - enum TEMPLATE_MPLS_SCALE { - value 28; + enum dstGtpu { + value 34; } - enum TEMPLATE_IPV6_LPM_HEAVY { - value 29; + enum srcDstGtpu { + value 35; } } - default "DEFAULT"; + default "srcDstIpL4Port"; } - typedef platform_SwitchingMode { - type enumeration { - enum DEFAULT { - value 0; - } - enum STORE_FORWARD { - value 1; - } + // Log level type + typedef platform_LoggingLevel { + type uint16 { + range "0..7"; } - default "DEFAULT"; + default "5"; } - typedef platform_Tuple { + // Logging Level + typedef platform_LoggingType { type enumeration { - enum Disable { + enum Emergencies { value 0; + description "Emergencies"; } - enum Enable { + enum Alerts { value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "Disable"; + default "Notification"; } - typedef platform_UnicastMaxLimit { + typedef platform_LpmMaxLimits { type uint16 { - range "0..8000"; + range "0..4096"; } } - typedef platform_bufferMonitorMd { + typedef platform_McastFlexStats { type enumeration { - enum None { + enum disable { value 0; } - enum Unicast { - value 2; - } - enum Multicast { - value 3; + enum enable { + value 1; } } - default "None"; + default "disable"; } - typedef platform_bufferMonitorSampling { - - // MAX Converted to int from 0xFFFFFFFF + typedef platform_McastLpmMaxEntriesType { type uint32 { - range "10..4294967295"; + range "0..4096"; } - default "4294967295"; + default "2048"; } - typedef platform_bufferMonitorSt { + typedef platform_McastNlb { type enumeration { - enum Enable { - value 1; - } - enum Disable { + enum disable { value 0; } + enum enable { + value 1; + } } - default "Disable"; - } - - typedef platform_bufferMonitorThreshhold { - type uint32 { - range "0..6144"; - } - default "0"; - } - - typedef platform_flowTcamRegionSize { - type uint32 { - range "0..2147483647"; - } - default "512"; + default "disable"; } - typedef platform_infraVlanForce { + typedef platform_MldSnooping { type enumeration { - enum Disable { + enum disable { value 0; } - enum Enable { + enum enable { value 1; } } - default "Disable"; - } - - typedef platform_infraVlanId { - type uint16 { - range "0..4096"; - } - } - - typedef platform_latencyMonitorSampling { - type uint32 { - range "1..30"; - } - default "3"; + default "disable"; } - typedef platform_latencyMonitorSt { + typedef platform_MplsEcmpMode { type enumeration { - enum Enable { + enum disable { value 1; + description "Extended-ECMP off"; } - enum Disable { + enum enable { value 0; + description "Extended-ECMP on"; } } - default "Disable"; - } - - typedef platform_latencyMonitorThreshholdAv { - type uint32 { - range "300..20000000"; - } - default "1000000"; + default "enable"; } - typedef platform_latencyMonitorThreshholdMx { - type uint32 { - range "300..20000000"; + typedef platform_MplsStatsType { + type enumeration { + enum PACKETS { + value 0; + description "Packets only mode"; + } + enum BYTES { + value 1; + description "Bytes only mode"; + } } - default "2000000"; + default "PACKETS"; } - typedef platform_moduleNumberSt { - type uint16 { - range "1..32"; + typedef platform_MroutingDisableL2Upd { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } + default "disable"; } - typedef platform_multicastServiceReflectPort { - type uint32 { - range "0..48"; + typedef platform_MroutingDisableSecRouteUpd { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } - default "0"; + default "disable"; } - typedef platform_poweroffSt { + // mrouting + typedef platform_MroutingPerfMode { type enumeration { - - // No Power Off - enum no { + enum disable { value 0; } - - // Power Off - enum yes { + enum enable { value 1; } } + default "disable"; } - typedef platform_tcamRegionSize { - type uint32 { - range "0..2147483647"; + typedef platform_MulticastMaxLimit { + type uint16 { + range "0..8000"; } + default "4096"; } - typedef poe_poePolice { + typedef platform_OqDropsType { type enumeration { - enum Default { - value 0; - } - enum errdisable { + enum occupancy { value 1; + description "Occupancy drops"; } - enum log { + enum aqm { value 2; + description "WRED or AFD drops"; + } + enum both { + value 3; + description "Both aqm and occupancy"; } } + default "both"; } - typedef poe_poePortmode { + typedef platform_OqStatsType { type enumeration { - enum Default { - value 0; - } - enum never { + enum occupancy { value 1; + description "Occupancy drops"; } - enum auto { + enum aqm { value 2; + description "WRED or AFD drops"; } - enum static { + enum both { value 3; + description "Both aqm and occupancy"; + } + enum ecn-stats { + value 4; + description "ECN marking statistics"; + } + enum ecn_and_aqm { + value 5; + description "Both ecn and aqm"; + } + enum ecn_and_occupancy { + value 6; + description "Both ecn and occupancy"; + } + enum all { + value 7; + description "Aggregated OCC-drops, WRED-drops, ECN-stats"; } } - default "Default"; + default "both"; } - typedef poe_poePriority { + typedef platform_PcFastConv { type enumeration { - enum low { - value 0; - } - enum high { + enum enable { value 1; + description "port-channel fast convergence"; + } + enum disable { + value 2; + description "no port-channel fast convergence"; } } + default "disable"; } - // Burst size - typedef policer_Burst { - type uint32; + typedef platform_PcLbAlgo { + type enumeration { + enum PC_LB_ALGO_DLB { + value 1; + } + enum PC_LB_ALGO_RTAG7 { + value 2; + } + enum PC_LB_ALGO_RTAG7_MURMUR { + value 3; + } + enum PC_LB_ALGO_RTAG7_LOCAL_CRC { + value 4; + } + enum PC_LB_ALGO_DYNAMIC_PIN { + value 5; + } + } + default "PC_LB_ALGO_DLB"; } - // Committed rate - typedef policer_Rate { - type uint32; + typedef platform_PcLbRes { + type enumeration { + enum yes { + value 1; + description "port-channel load-balance resilient"; + } + enum no { + value 2; + description "no port-channel load-balance resilient"; + } + } + default "no"; } - // Cpu History duration name - typedef proc_CpuHistoryDurationName { + typedef platform_PcMplsLbLabelIp { type enumeration { - - // last60seconds - enum last60seconds { + enum DEFAULT { + value 0; + } + enum LABEL_IP { value 1; } } - default "last60seconds"; + default "DEFAULT"; } - // Cpu History type - typedef proc_CpuHistoryList { - type mtx_array_uint32; + typedef platform_PcMplsLbLabelOnly { + type enumeration { + enum DEFAULT { + value 0; + } + enum LABEL_ONLY { + value 1; + } + } + default "DEFAULT"; } - // CPU Usage - typedef proc_CpuUsage { - type uint32 { - range "0..100"; + typedef platform_PcScaleFanout { + type enumeration { + enum enable { + value 1; + description "port-channel scale fanout"; + } + enum disable { + value 2; + description "no port-channel scale fanout"; + } } - default "0"; + default "disable"; } - // Operational Status - typedef proc_OperSt { + // Input Buffer Peak Type + typedef platform_PeakCountType { type enumeration { - - // Interruptible sleep - enum intr-sleep { + enum port { value 0; + description "Buffer input peak type port"; } - - // Stopped - enum stopped { + enum class1 { value 1; + description "Buffer input peak type class1"; } - - // Uninterruptible sleep - enum unintr-sleep { + enum class2 { value 2; + description "Buffer input peak type class2"; } - - // Running - enum running { + enum class3 { value 3; + description "Buffer input peak type class3"; } - - // Dead - enum dead { + enum class4 { value 4; + description "Buffer input peak type class4"; } - - // Defunct - enum defunct { + enum class5 { value 5; + description "Buffer input peak type class5"; + } + enum class6 { + value 6; + description "Buffer input peak type class6"; + } + enum class7 { + value 7; + description "Buffer input peak type class7"; } } - default "intr-sleep"; + default "port"; } - // Process operational state - typedef proc_OperState { - type enumeration { + typedef platform_Percent { + type uint16 { + range "0..100"; + } + default "0"; + } - // Up - enum up { + typedef platform_Percentage { + type uint16 { + range "1..100"; + } + default "90"; + } + + typedef platform_PstatCfg { + type enumeration { + enum PSTAT_DISABLE { value 0; } - - // down - enum down { + enum PSTAT_ENABLE { value 1; } + enum PSTAT_ENABLE_PEAK { + value 2; + } } - default "up"; - } - - // Process id - typedef proc_ProcId { - type uint32; - } - - // Process memory units - typedef proc_ProcMem { - type uint64; + default "PSTAT_DISABLE"; } - // Process name - typedef proc_ProcessName { - type string; + typedef platform_QosAfdBufferProfileOptions { + type enumeration { + enum mesh { + value 0; + description "Mesh optimized"; + } + enum burst { + value 1; + description "Burst optimized"; + } + enum ultra-burst { + value 2; + description "Ultra burst optimized"; + } + } } - // Process Type - typedef proc_ProcessType { + typedef platform_QosGroup { type enumeration { - - // Unknown Type - enum unknown { + enum 0 { value 0; + description "Qos Group 0"; } - - // Non Sysmgr - enum non-sysmgr { + enum 1 { value 1; + description "Qos Group 1"; } - - // Vdc Local - enum vdc-local { + enum 2 { value 2; + description "Qos Group 2"; } - - // Vdc Global - enum vdc-global { + enum 3 { value 3; + description "Qos Group 3"; } - - // Vdc unaware - enum vdc-unaware { + enum all { value 4; - } - - // Not Running - enum not-running { - value 5; - } - - // Terminated Etc - enum terminated-etc { - value 6; + description "Qos Group all"; } } - default "unknown"; - } - - // Program counter - typedef proc_ProgCntr { - type uint64; - } - - // Stack - typedef proc_Stack { - type uint64; - } - - // Process start count - typedef proc_StartCnt { - type uint32; + default "0"; } - typedef qos_Prio { + typedef platform_QosGroupForQueuingStatistics { type enumeration { - - // Unspecified - enum unspecified { + enum q0 { value 0; + description "QOS_GROUP_0"; } - - // Level3 - enum level3 { + enum q1 { value 1; + description "QOS_GROUP_1"; } - - // Level2 - enum level2 { + enum q2 { value 2; + description "QOS_GROUP_2"; } - - // Level1 - enum level1 { + enum q3 { value 3; + description "QOS_GROUP_3"; } - enum policy-plane { + enum q4 { value 4; + description "QOS_GROUP_4"; } - enum control-plane { + enum q5 { value 5; + description "QOS_GROUP_5"; } - enum span { + enum q6 { value 6; + description "QOS_GROUP_6"; + } + enum q7 { + value 7; + description "QOS_GROUP_7"; + } + enum q8 { + value 8; + description "QOS_GROUP_8"; + } + enum q9 { + value 9; + description "QOS_GROUP_9"; } } } - // User configurable classes - typedef qos_TenantPrio { + typedef platform_QosGroupVal { type enumeration { - - // Unspecified - enum unspecified { + enum 0 { value 0; + description "Qos Group 0"; } - - // Level3 - enum level3 { + enum 1 { value 1; + description "Qos Group 1"; } - - // Level2 - enum level2 { + enum 2 { value 2; + description "Qos Group 2"; } - - // Level1 - enum level1 { + enum 3 { value 3; + description "Qos Group 3"; } } - default "unspecified"; - } - - // Bandwidth percentage - typedef qosp_BwPercent { - type uint8 { - range "0..100"; - } - default "20"; + default "3"; } - // Congestion algorithm - typedef qosp_CongAlgo { + typedef platform_QosLabelOpt { type enumeration { - - // Weighted random early detection - enum wred { + enum disable { value 0; } - - // Tail drop - enum tail-drop { + enum enable { value 1; } } - default "tail-drop"; + default "disable"; } - // Control method - typedef qosp_CtrlMeth { + typedef platform_QosMinBuffer { type enumeration { - - // Static - enum static { + enum all { value 0; } - - // Dynamic - enum dynamic { + enum none { value 1; } + enum default { + value 2; + } } - default "dynamic"; - } - - // Dot1p - typedef qosp_Dot1P { - type uint8 { - range "0..7"; - } - default "7"; - } - - // Dscp code point values - typedef qosp_Dscp { - type qosp_DscpCP { - range "0..63"; - } - default "63"; - } - - // DSCP - typedef qosp_DscpCP { - type uint8 { - range "0..63"; - } + default "all"; } - // ECN - typedef qosp_ECN { + typedef platform_RefTemplate { type enumeration { - - // Disabled - enum disabled { + enum unspecified { value 0; + description "unspecified"; } - - // Enabled - enum enabled { - value 1; - } - } - default "disabled"; - } - - // MTU - typedef qosp_MTU { - type uint16 { - range "1500..9216"; - } - default "9216"; - } - - // Min buffers - typedef qosp_MinBuf { - type uint8 { - range "0..3"; - } - default "0"; - } - - // Operational state of Qos Class - typedef qosp_OperSt { - type enumeration { - - // enabled - enum enabled { + enum l3 { value 1; + description "l3"; } - - // disabled - enum disabled { + enum l2-l3 { value 2; + description "l2-l3"; } - } - default "disabled"; - } - - // Queue limit - typedef qosp_QueueLimit { - type uint16 { - range "1500..9216"; - } - default "1522"; - } - - // Scheduling Algorithm - typedef qosp_SchedAlgo { - type enumeration { - - // Weighted round robin - enum wrr { - value 0; + enum nfe { + value 3; + description "nfe"; } - - // Strict priority - enum sp { - value 1; + enum nfe2 { + value 4; + description "nfe2"; } } - default "wrr"; - } - - typedef reference_URI { - type string; } - // Enum types - typedef regress_EnumT { - type enumeration { - - // val1 - enum val1 { - value 1; - } - - // val2 - enum val2 { - value 2; - } - - // val3 - enum val3 { - value 3; - } + typedef platform_Rotate { + type uint16 { + range "0..63"; } - default "val2"; + default "0"; } - typedef reln_ClassId { + typedef platform_RoutingMode { type enumeration { - enum unspecified { + enum DEFAULT { value 0; } - enum cdpIf { + enum NON_HIER_DEFAULT { value 1; } - enum cnwAggrIf { + enum NON_HIER_MAX_L3 { value 2; } - enum cnwPhysIf { + enum MAX_HOST { value 3; } - enum connIf { + enum TOR_MAX_L3 { value 4; } - enum datetimeNtpSrcIf { + enum DEFAULT_64B { value 5; } - enum dhcpClientIf { + enum NON_HIER_MAX_L3_64B { value 6; } - enum dhcpDAIIf { + enum TOR_MAX_L3_64B { value 7; } - enum dhcpIpsgIf { + enum TOR_MAX_L2 { value 8; } - enum dhcpPseudoIf { + enum TOR_MAX_L2L3 { value 9; } - enum dhcpRelayIf { - value 10; - } - enum dhcpServerIf { - value 11; - } - enum dhcpSnoopIf { - value 12; - } - enum dhcpSourceIf { - value 13; - } - enum dhcpSrcIf { - value 14; - } - enum dhcpV6SourceIf { - value 15; - } - enum dhcpV6SrcIf { - value 16; - } - enum egressIf { - value 17; - } - enum ingressIf { - value 18; - } - enum ipSrcIf { - value 19; - } - enum l1EthIf { - value 20; - } - enum l1PhysIf { + enum TOR_TEMPLATE_OVL_HOST_SCALE { value 21; } - enum l2BrIf { + enum TEMPLATE_LPM_HEAVY { value 22; } - enum l2ExtIf { + enum TOR_TEMPLATE_LPM_SCALE_V6_64 { value 23; } - enum l2InbandIf { + enum TOR_TEMPLATE_DUAL_STACK_HOST_SCALE { value 24; } - enum l2VfcIf { + enum TEMPLATE_SERVICE_PROVIDER { value 25; } - enum l3If { + enum TEMPLATE_MULTICAST_HEAVY { value 26; } - enum l3LbRtdIf { + enum TEMPLATE_VXLAN_SCALE { value 27; } - enum lldpIf { + enum TEMPLATE_MPLS_SCALE { value 28; } - enum mcpIf { + enum TEMPLATE_INTERNET_PEERING { value 29; } - enum mgmtMgmtIf { - value 30; - } - enum mgmtRtdMgmtIf { + enum TEMPLATE_MULTICAST_EXT_HEAVY { value 31; } - enum nwIf { - value 32; - } - enum ospfIf { - value 33; - } - enum ospfv3If { - value 34; - } - enum pcAggrIf { + enum TEMPLATE_MULTICAST_DUAL_STACK { value 35; } - enum pktOnPassiveIf { - value 36; - } - enum regressIf { - value 37; - } - enum rsactiveIf { - value 38; - } - enum rtactiveIf { - value 39; - } - enum rtlsNodeToIf { - value 40; - } - enum srcIf { - value 41; - } - enum tunnelIf { - value 42; - } - enum vpcIf { - value 43; - } - enum l3Inst { - value 44; - } - enum l3EncRtdIf { - value 45; - } - enum rtregcomRule { - value 46; - } - enum rtpfxRule { - value 47; - } - enum rtmapMatchRtDst { - value 48; + enum TEMPLATE_L3_HEAVY { + value 32; } } - default "unspecified"; - } - - typedef reln_Dn { - type string; + default "DEFAULT"; } - typedef reln_ResolverType { + typedef platform_SourceScope { type enumeration { - enum mo { + enum unicast-queue { + value 0; + } + enum ingress-port { value 1; } - enum service { + enum egress-port { value 2; } - enum local { - value 3; - } } - default "mo"; + default "unicast-queue"; } - typedef reln_State { + typedef platform_SviAndSiFlexStats { type enumeration { - enum unformed { + enum disable { value 0; } - enum formed { + enum enable { value 1; } - enum missing-target { - value 2; - } - enum invalid-target { - value 4; - } } - default "unformed"; + default "disable"; } - typedef reln_StateQual { + typedef platform_SviFlexStats { type enumeration { - enum none { + enum disable { value 0; } - enum mismatch-target { + enum enable { value 1; } - enum default-target { - value 2; - } } - default "none"; + default "disable"; } - typedef reln_TargetType { + typedef platform_SwitchMode { type enumeration { - enum name { + enum default { value 0; } - enum mo { + enum n3k { value 1; } - enum all { + enum n9k { value 2; } } - default "mo"; + default "default"; } - // Database type - typedef rib_DbT { + typedef platform_SwitchingMode { type enumeration { - - // Route Database - enum rt { - value 1; - } - - // Nexthop Database - enum nh { - value 2; + enum DEFAULT { + value 0; } - - // Adjacency Database - enum adj { - value 3; + enum STORE_FORWARD { + value 1; } } - default "rt"; + default "DEFAULT"; } - // Domain operational state - typedef rib_DomOperSt { + typedef platform_Symmetry { type enumeration { - - // Up - enum up { + enum enable { value 1; } - - // Down pending - enum down-pending { - value 2; - } - - // Purging - enum purged { - value 3; + enum disable { + value 0; } + } + default "disable"; + } - // Down - enum down { - value 4; - } + // System Memory Threshold + typedef platform_SysMemThVal { + type uint32 { + range "50..100"; + } + default "50"; + } - // Down pending - enum del-pending { - value 5; + typedef platform_TcamRegionCfgFault { + type enumeration { + enum none { + value 0; } - - // Deleted - enum deleted { - value 6; + enum TCAM_template_validation { + value 1; } } - default "down"; + default "none"; } - // Next-hop type - // Default Value computed from attached - typedef rib_NhT { - - // bits- Using string - type string; - default "attached"; - } + typedef platform_TcamRegionCfgFaultBmp { - // Owner type - typedef rib_OwnerT { type string; + default "0x0"; } - // Preference - typedef rt_Preference { - type uint8 { - range "1..255"; + typedef platform_TcamTemplateName { + type string { + length "0..40"; } - default "1"; } - // Tag - typedef rt_Tag { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef platform_TcpNatTcamRegionSize { + type uint16 { + range "0..100"; } default "0"; } - // Autonomous system - typedef rtcom_AS { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "1..4294967295"; + typedef platform_ThresPercentage { + type uint8 { + range "0..100"; } } - // Community type - typedef rtcom_ComT { + typedef platform_ThresUnit { type enumeration { - - // Regular community - enum regular { + enum packets { value 1; + description "Packets"; } - - // Extended community - enum extended { + enum bytes { value 2; + description "Bytes"; + } + enum kbytes { + value 3; + description "kBytes"; + } + enum mbytes { + value 4; + description "mBytes"; } } - default "regular"; + default "bytes"; } - // Mode - typedef rtcom_Mode { + typedef platform_ThreshUnit { type enumeration { - - // Standard - enum standard { + enum bytes { value 1; + description "bytes"; } + } + default "bytes"; + } - // Regular expression - enum regex { - value 2; - } + typedef platform_Threshold { + type uint32 { + range "0..13319072"; } - default "standard"; + default "0"; } - // Route control direction - typedef rtctrl_RtCtrlDir { + // PacketDrop Types + typedef platform_TriggerType { type enumeration { - - // Incoming - enum in { + enum wred { + value 0; + } + enum ingress-admission { value 1; } - - // Outgoing - enum out { + enum egress-admission { value 2; } } - default "in"; + default "wred"; } - // Route target policy type - typedef rtctrl_RttPType { + typedef platform_Tuple { type enumeration { - - // Import - enum import { - value 1; + enum Disable { + value 0; } - - // Export - enum export { - value 2; + enum Enable { + value 1; } } - default "import"; - } - - // ASM Control - typedef rtdmc_ASMCtrl { - - // bits- Using string - type string; - } - - // Adjacency flags - typedef rtdmc_AdjFlags { - - // bits- Using string - type string; + default "Disable"; } - // Adjancency operational state - typedef rtdmc_AdjOperSt { + typedef platform_UdfCfgFault { type enumeration { - - // Up - enum up { + enum none { value 0; } - - // Inactive - enum inactive { + enum definition { value 1; } + enum qualifySpan { + value 2; + } + enum qualifySpanV6 { + value 3; + } + enum qualifySpanV6L2 { + value 4; + } + enum qualifyRacl { + value 5; + } + enum qualifyVacl { + value 6; + } + enum qualifyIfacl { + value 7; + } } + default "none"; } - // Authentication key - typedef rtdmc_AuthKey { - type string; - } - - // Authentication type - typedef rtdmc_AuthT { + // UDF Types + typedef platform_UdfOffsetBase { type enumeration { - - // No authentication - enum none { + enum packet-start { value 0; } - - // MD5 HMAC authentication - enum ah-md5 { + enum outer-header-l3 { value 1; } + enum outer-header-l4 { + value 2; + } + enum inner-header-l3 { + value 3; + } + enum inner-header-l4 { + value 4; + } } - default "none"; - } - - typedef rtdmc_AutoEnable { - type boolean; - default "true"; + default "packet-start"; } - // Auto-RP Control - typedef rtdmc_AutoRPCtrl { - - // bits- Using string - type string; - } - - // Auto-RP Scope - typedef rtdmc_AutoRPScope { + typedef platform_UnicastMaxLimit { type uint16 { - range "1..255"; + range "0..8000"; } - default "32"; - } - - // Bootstrap Router (BSR) Control - typedef rtdmc_BSRCtrl { - - // bits- Using string - type string; } - // BSR Hash Mask Len - typedef rtdmc_BSRHashLen { - type uint16; + typedef platform_UnicastTrace { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; } - // Max Rate TODO: Is there a default? - typedef rtdmc_BSRInterval { - type uint16 { - range "1..65535"; + typedef platform_bufferMonitorMd { + type enumeration { + enum None { + value 0; + } + enum Unicast { + value 2; + } + enum Multicast { + value 3; + } } - default "60"; + default "None"; } - // BSR Priority - typedef rtdmc_BSRPrio { - type uint16 { - range "1..255"; + typedef platform_bufferMonitorSampling { + type uint32 { + range "0..20000000"; } - default "64"; + default "4000000"; } - // BFD state - typedef rtdmc_BfdInstSt { + typedef platform_bufferMonitorSt { type enumeration { - - // Enabled - enum enabled { + enum Enable { value 1; } - - // Disabled - enum disabled { - value 2; - } - - // None - enum none { + enum Disable { value 0; } } - default "none"; + default "Enable"; } - // BFD state - typedef rtdmc_BfdOperSt { - type enumeration { - - // Down - enum down { - value 0; - } - - // Remove Pending - enum rem-pend { - value 1; - } + typedef platform_bufferMonitorThreshhold { + type uint32 { + range "0..6144"; + } + default "0"; + } - // Up - enum up { - value 2; - } + typedef platform_flowTcamRegionSize { + type uint32 { + range "0..2147483647"; } + default "512"; } - // BiDir RP Limit - typedef rtdmc_BidirRPLimit { - type uint16 { - range "1..8"; + typedef platform_forwardingModeConfigFailed { + type uint32 { + range "0..1"; } - default "6"; + default "0"; } - // Byte Count type - typedef rtdmc_ByteCntType { + typedef platform_forwardingModeHostEntryWarp { + type uint32 { + range "0..16384"; + } + default "0"; + } - // MAX Converted to int from 0xffffffff + typedef platform_forwardingModeL2EntryWarp { type uint32 { - range "0..4294967295"; + range "0..16384"; } + default "0"; } - // Counter - typedef rtdmc_Counter32 { - type uint32; + typedef platform_forwardingModeLpmEntryNormal { + type uint32 { + range "0..28672"; + } + default "0"; } - // Designated Forwarder Offer Burst Interval - typedef rtdmc_DFOBItvl { - type uint16 { - range "1..10000"; + typedef platform_forwardingModeLpmEntryWarp { + type uint32 { + range "0..8192"; } - default "20"; + default "0"; } - // Designated Router Delay TODO: Not present on N3548 or N9K - // verify naming based on purpose, range and default - typedef rtdmc_DRDelay { - type uint16 { - range "1..65535"; + typedef platform_forwardingModeMcstEntryNormal { + type uint32 { + range "0..28672"; } - default "3"; + default "0"; } - // Designated Router Priority - typedef rtdmc_DRPrio { + typedef platform_forwardingModeMcstEntryWarp { type uint32 { - range "1..4294967295"; + range "0..16384"; } - default "1"; + default "0"; } - // Database type - typedef rtdmc_DbT { + typedef platform_forwardingModeSelector { type enumeration { - - // RP database - enum rp { - value 0; - } - - // Grange database - enum grange { + enum normal { value 1; } - - // Route database - enum route { + enum warp { value 2; } - - // Dynamic RP Srouce database - enum dynrpsrc { + enum openflow-hybrid { value 3; } - - // Global Statistics - enum gstats { + enum openflow-only { value 4; } + } + default "normal"; + } - // VRF database - enum vrf { - value 5; - } - - // Interface database - enum ifrec { - value 6; - } - - // Group Oif list - enum grpoif { - value 7; - } - - // Group database - enum group { - value 8; - } - - // Interface statistics - enum ifstats { - value 9; + typedef platform_infraVlanForce { + type enumeration { + enum Disable { + value 0; } - - // Peer statistics - enum peer { - value 10; + enum Enable { + value 1; } } + default "Disable"; } - // Domain Control - typedef rtdmc_DomCtrl { - - // bits- Using string - type string; - } - - // PIM Route types - typedef rtdmc_GRangeFlags { - - // bits- Using string - type string; - } - - // Generation Id - typedef rtdmc_GenId { - type uint32; + typedef platform_infraVlanId { + type uint16 { + range "0..4096"; + } } - // Hello Message Interval - typedef rtdmc_HelloItvl { + typedef platform_latencyMonitorSampling { type uint32 { - range "1..18724286"; + range "1..30"; } - default "30000"; - } - - // Hold Time - typedef rtdmc_HoldTime { - type uint16; + default "3"; } - // Interface Ctrl - typedef rtdmc_IfCtrl { - - // bits- Using string - type string; + typedef platform_latencyMonitorSt { + type enumeration { + enum Enable { + value 1; + } + enum Disable { + value 0; + } + } + default "Disable"; } - // Join Prune Inter packet delay TODO: Get the max delay - typedef rtdmc_JPDelay { + typedef platform_latencyMonitorThreshholdAv { type uint32 { - range "1..1000"; + range "300..20000000"; } - default "100"; + default "1000000"; } - // Join Prune Interval Used between Peers TODO: Validate this is correct - typedef rtdmc_JPItvl { - type uint16 { - range "1..65520"; + typedef platform_latencyMonitorThreshholdMx { + type uint32 { + range "300..20000000"; } - default "60"; + default "2000000"; } - // Protocol Packet MTU - typedef rtdmc_Mtu { - type uint32 { - range "1500..65536"; - } - default "1500"; + typedef platform_mcastSlowRcvState { + type nw_AdminSt; + default "disabled"; } - // Null Register Inter batch delay TODO: Is there a default? - typedef rtdmc_NRDelay { + typedef platform_moduleNumberSt { type uint16 { - range "1..50000"; + range "1..32"; } } - // Number of Routes in a Null Register TODO: Is there a default? - typedef rtdmc_NRNumRt { - type uint16 { - range "1..32000"; + typedef platform_multicastServiceReflectPort { + type uint32 { + range "0..48"; } + default "0"; } - // route oif list types - typedef rtdmc_OifFlags { - - // bits- Using string - type string; + typedef platform_pfcMmuBufferRes { + type uint16 { + range "0..100"; + } } - // Pkt Count type - typedef rtdmc_PktCntType { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef platform_pfcMmuBufferSt { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } } + default "enable"; } - typedef rtdmc_PolicyDirType { + typedef platform_pfcMmuCfgFault { type enumeration { - - // none enum none { value 0; } - - // in - enum in { + enum Pfc_Buffer_Resource_Limitation { value 1; } - - // out - enum out { - value 2; - } } default "none"; } - // PIM RP types - typedef rtdmc_RPSourceType { + typedef platform_portThresPercentage { + type uint8 { + range "1..95"; + } + } - // bits- Using string - type string; + typedef platform_poweroffSt { + type enumeration { + enum no { + value 0; + description "No Power Off"; + } + enum yes { + value 1; + description "Power Off"; + } + } } - // Max Rate TODO: Is there a default? - typedef rtdmc_RegRate { + typedef platform_slotNumber { type uint16 { - range "0..65535"; + range "0..32"; } - default "0"; } - // PIM Route types PIM Route types - typedef rtdmc_RouteBits { - - // bits- Using string - type string; + typedef platform_tcamLabelSize { + type enumeration { + enum disable { + value 6; + } + enum enable { + value 9; + } + } + default "disable"; } - // PIM Route types - typedef rtdmc_RtFlags { - - // bits- Using string - type string; + typedef platform_tcamRegionSize { + type uint32 { + range "0..2147483647"; + } + default "0"; } - // (S,G) Entry Inactivity Expiry Timer - typedef rtdmc_SGExpItvl { - type uint32 { - range "180..604801"; + // Logging level type + typedef poe_LoggingLevel { + type uint16 { + range "0..7"; } - default "180"; + default "5"; } - // Scope of the community - typedef rtextcom_Scope { + // Logging Level + typedef poe_LoggingType { type enumeration { - - // Transitive - enum transitive { + enum Emergencies { value 0; + description "Emergencies"; } - - // Non Transitive - enum non-transitive { + enum Alerts { value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notification { + value 5; + description "Notification"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } - default "transitive"; + default "Notification"; } - typedef rtextcom_Type { + typedef poe_poePolice { type enumeration { - - // Route target community type - enum rttarget { + enum Default { + value 0; + } + enum errdisable { value 1; } - - // Generic extended community type - enum generic { + enum log { value 2; } } - default "generic"; } - // Action - typedef rtflt_Action { + typedef poe_poePortmode { type enumeration { - - // Deny - enum deny { + enum Default { value 0; } - - // Permit - enum permit { + enum never { value 1; } + enum auto { + value 2; + } + enum static { + value 3; + } } - default "permit"; + default "Default"; } - // Order - typedef rtflt_Order { - - // MAX Converted to int from 0xffffffff - type uint32 { - range "0..4294967295"; + typedef poe_poePriority { + type enumeration { + enum low { + value 0; + } + enum high { + value 1; + } } } - // filter option for RibLeak - typedef rtleak_Always { - type boolean; - default "true"; + typedef pol_ObjName { + type string; } - // Asn number - typedef rtleak_Asn { - type string { - } - default "none"; + // Burst size + typedef policer_Burst { + type uint32; } - // Controls on what to do when the number of routes cross - // the maximum prefix limit - typedef rtleak_Ctrl { - type enumeration { + // Committed rate + typedef policer_Rate { + type uint32; + } - // Unspecified - enum unspecified { - value 0; + // Aging types for port security + typedef portsecurity_AgingType { + type enumeration { + enum absolute { + value 1; + description "Absolute"; } + enum inactivity { + value 2; + description "Inactivity"; + } + } + default "absolute"; + } - // Warning - enum warning { + // Violation Action types for port security + typedef portsecurity_ViolationMode { + type enumeration { + enum protect { value 1; + description "Security violation protect mode"; } - - // Withdraw - enum withdraw { + enum restrict { value 2; + description "Security violation restrict mode"; + } + enum shutdown { + value 3; + description "Security violation shutdown mode"; } } - default "unspecified"; + default "shutdown"; } - // Duration between the retries - typedef rtleak_Duration { - type uint16 { - range "60..600"; + // Cpu History duration name + typedef proc_CpuHistoryDurationName { + type enumeration { + enum last60seconds { + value 1; + description "last60seconds"; + } } - default "300"; + default "last60seconds"; } - // Routing protocol instance - typedef rtleak_Inst { - type string { - length "1..20"; - } - } - - // Maximum prefix leaked - typedef rtleak_MaxPfx { - - // MAX Converted to int from 0xffff - type uint16 { - range "1..65535"; - } + // Cpu History type + typedef proc_CpuHistoryList { + type mtx_array_uint32; } - // Source protocol type of the leak policy - typedef rtleak_Proto { + // Operational Status + typedef proc_OperSt { type enumeration { - - // Unspecified - enum unspecified { + enum intr-sleep { value 0; + description "Interruptible sleep"; } - - // Static - enum static { + enum stopped { value 1; + description "Stopped"; } - - // Direct - enum direct { + enum unintr-sleep { value 2; + description "Uninterruptible sleep"; } - - // BGP - enum bgp { + enum running { value 3; + description "Running"; } - - // ISIS - enum isis { + enum dead { value 4; + description "Dead"; } - - // OSPF - enum ospf { + enum defunct { value 5; + description "Defunct"; } + } + default "intr-sleep"; + } - // OSPFv3 - enum ospfv3 { - value 6; + // Process operational state + typedef proc_OperState { + type enumeration { + enum up { + value 0; + description "Up"; } - - // EIGRP - enum eigrp { - value 7; + enum down { + value 1; + description "down"; } + } + default "up"; + } - // HOST - enum host { - value 8; - } + // Percentage Usage + typedef proc_PerUsage { + type uint32 { + range "0..100"; + } + default "0"; + } - // RIP - enum rip { - value 9; - } + // Process id + typedef proc_ProcId { + type uint32; + } - // AMT - enum amt { - value 10; - } + // Process memory units + typedef proc_ProcMem { + type uint64; + } - // LISP - enum lisp { - value 11; - } + // Type for process priority + // range 0-20 + typedef proc_ProcPriority { + type uint32 { + range "0..20"; + } + } - // HMM - enum hmm { - value 12; - } + // Process name + typedef proc_ProcessName { + type string; + } - // AM - enum am { - value 13; + // Process Type + typedef proc_ProcessType { + type enumeration { + enum unknown { + value 0; + description "Unknown Type"; + } + enum non-sysmgr { + value 1; + description "Non Sysmgr"; + } + enum vdc-local { + value 2; + description " Vdc Local"; + } + enum vdc-global { + value 3; + description "Vdc Global"; + } + enum vdc-unaware { + value 4; + description "Vdc unaware"; + } + enum not-running { + value 5; + description "Not Running"; + } + enum terminated-etc { + value 6; + description "Terminated Etc"; } } - default "unspecified"; + default "unknown"; } - // Maximum number of retries to retrieve the leaked routes - typedef rtleak_Retries { - type uint16 { - range "1..12"; - } - default "1"; + // Program counter + typedef proc_ProgCntr { + type uint64; } - // Policy Direction - typedef rtleak_RtCtrlDir { - type enumeration { + // Stack + typedef proc_Stack { + type uint64; + } - // in - enum in { + // Process start count + typedef proc_StartCnt { + type uint32; + } + + typedef qos_Prio { + type enumeration { + enum unspecified { value 0; + description "Unspecified"; } - - // out - enum out { + enum level3 { value 1; + description "Level3"; + } + enum level2 { + value 2; + description "Level2"; + } + enum level1 { + value 3; + description "Level1"; + } + enum policy-plane { + value 4; + } + enum control-plane { + value 5; + } + enum span { + value 6; } } - default "in"; } - // Scope of the leak policy - typedef rtleak_Scope { + // User configurable classes + typedef qos_TenantPrio { type enumeration { - - // Intra protocol leak - enum intra { + enum unspecified { + value 0; + description "Unspecified"; + } + enum level3 { value 1; + description "Level3"; } - - // Inter protocol leak - enum inter { + enum level2 { value 2; + description "Level2"; } - - // Default route leak - enum defrt { + enum level1 { value 3; + description "Level1"; } } - default "intra"; + default "unspecified"; } - // Threshold at which warning is issued when number of prefixes - // crosses the threshold, units in percentage - typedef rtleak_Thresh { + // Bandwidth percentage + typedef qosp_BwPercent { type uint8 { - range "1..100"; + range "0..100"; } - default "75"; + default "20"; } - // Action - typedef rtmap_Action { + // Congestion algorithm + typedef qosp_CongAlgo { type enumeration { - - // Deny - enum deny { + enum wred { value 0; + description "Weighted random early detection"; } - - // Permit - enum permit { + enum tail-drop { value 1; + description "Tail drop"; } } - default "permit"; + default "tail-drop"; } - // Administrative state - typedef rtmap_AdminSt { + // Control method + typedef qosp_CtrlMeth { type enumeration { - - // Enabled - enum enabled { - value 1; + enum static { + value 0; + description "Static"; } - - // Disabled - enum disabled { - value 2; + enum dynamic { + value 1; + description "Dynamic"; } } - default "disabled"; + default "dynamic"; } - // Community Id - typedef rtmap_CommunityId { + // Dot1p + typedef qosp_Dot1P { type uint8 { - range "0..255"; - } - } - - // Community Value - typedef rtmap_CommunityVal { - type uint32 { - range "0..4294967295"; + range "0..7"; } + default "7"; } - // Criteria - typedef rtmap_Criteria { - type enumeration { - - // Exact - enum exact { - value 1; - } - - // Sub group - enum sub-group { - value 2; - } + // Dscp code point values + typedef qosp_Dscp { + type qosp_DscpCP { + range "0..63"; } - default "sub-group"; + default "63"; } - // Dampening Half-life - // Time in minutes. Once the route has been assigned a penalty, - // the penalty is decreased by half after half life period - typedef rtmap_DampHalfLife { + // DSCP + typedef qosp_DscpCP { type uint8 { - range "0..45"; + range "0..63"; } default "0"; } - // Dampening Max Suppress Time - // Time in minutes. Maximum time that a route can be suppressed. - typedef rtmap_DampMaxSuppressTime { - type uint8 { - range "0..255"; + // ECN + typedef qosp_ECN { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } } - default "0"; + default "disabled"; } - // Dampening Reuse Limit - // Route that is unsuppressed if the penalty for a flapping route - // decreases enough to fall below this value. - typedef rtmap_DampReuse { + // MTU + typedef qosp_MTU { type uint16 { - range "0..20000"; + range "1500..9216"; } - default "0"; + default "9216"; } - // Dampening Suppress Limit - // Route that is suppressed when its penalty exceeds this limit. - typedef rtmap_DampSuppress { - type uint16 { - range "0..20000"; + // Min buffers + typedef qosp_MinBuf { + type uint8 { + range "0..3"; } default "0"; } - // Duration - typedef rtmap_Duration { - type uint8 { - range "1..255"; + // Operational state of Qos Class + typedef qosp_OperSt { + type enumeration { + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 2; + description "disabled"; + } } + default "disabled"; } - // HalfLife - typedef rtmap_HalfLife { - type uint8 { - range "1..45"; + // Queue limit + typedef qosp_QueueLimit { + type uint16 { + range "1500..9216"; } + default "1522"; } - // Label Index - typedef rtmap_Index { - type uint32 { - range "0..471788"; + // Scheduling Algorithm + typedef qosp_SchedAlgo { + type enumeration { + enum wrr { + value 0; + description "Weighted round robin"; + } + enum sp { + value 1; + description "Strict priority"; + } } + default "wrr"; } - // Local preference - typedef rtmap_LocalPref { - type uint32; + typedef reln_Dn { + type string; } - // Match type - typedef rtmap_MatchT { + typedef reln_ResolverType { type enumeration { - - // Regular community - enum reg-community { + enum mo { value 1; } - - // Extended community - enum ext-community { + enum service { value 2; } - - // Route destinations - enum rt-dst { + enum local { value 3; } + } + default "mo"; + } - // Route nexthops - enum rt-nh { + typedef reln_State { + type enumeration { + enum unformed { + value 0; + } + enum formed { + value 1; + } + enum missing-target { + value 2; + } + enum invalid-target { value 4; } + } + default "unformed"; + } - // Route sources - enum rt-src { - value 5; + typedef reln_StateQual { + type enumeration { + enum none { + value 0; } - - // Route type - enum rt-type { - value 6; + enum mismatch-target { + value 1; } - - // Route tag - enum rt-tag { - value 7; + enum default-target { + value 2; } + } + default "none"; + } - // Route pervasive - enum rt-pervasive { - value 8; + typedef reln_TargetType { + type enumeration { + enum name { + value 0; } - - // AS Path Access List - enum as-path { - value 9; + enum mo { + value 1; } - - // V6 Route destinations - enum rt-dst-v6 { - value 10; + enum all { + value 2; } + } + default "mo"; + } - // Route ASN - enum rt-asn { - value 11; + // Database type + typedef rib_DbT { + type enumeration { + enum rt { + value 1; + description "Route Database"; } - - // Route IF - enum rt-if { - value 12; + enum nh { + value 2; + description "Nexthop Database"; } - - // Route Metric - enum rt-metric { - value 13; + enum adj { + value 3; + description "Adjacency Database"; } + } + default "rt"; + } - // Source Protocol - enum src-proto { - value 14; + // Domain operational state + typedef rib_DomOperSt { + type enumeration { + enum up { + value 1; + description "Up"; } - - // OSPFArea - enum rt-ospf { - value 15; + enum down-pending { + value 2; + description "Down pending"; } - - // Route nexthops ipv6 - enum rt-nh-v6 { - value 16; + enum purged { + value 3; + description "Purging"; } - - // Route route source ipv6 - enum rt-src-v6 { - value 17; + enum down { + value 4; + description "Down"; } - - // Match IPv4 multicast - enum rt-ipv4-mcast { - value 18; + enum del-pending { + value 5; + description "Down pending"; } - - // Match IPv6 multicast - enum rt-ipv6-mcast { - value 19; + enum deleted { + value 6; + description "Deleted"; } } - default "reg-community"; + default "down"; } - // Metric - typedef rtmap_Metric { - type uint32; + // Next-hop type + typedef rib_NhT { + + type string; + default "attached"; } - // Metric Delay - typedef rtmap_MetricD { - type uint32 { - range "0..4294967295"; - } - default "0"; + // Owner type + typedef rib_OwnerT { + type string; } - // Metric Load - typedef rtmap_MetricL { + // Config Error + typedef rpm_ConfigErr { + type string; + } + + // Preference + typedef rt_Preference { type uint8 { - range "0..255"; + range "1..255"; } - default "0"; + default "1"; } - // Metric MTU - typedef rtmap_MetricM { + // Tag + typedef rt_Tag { + type uint32 { - range "0..16777215"; + range "0..4294967295"; } default "0"; } - // Metric Reliability - typedef rtmap_MetricR { - type uint8 { - range "0..255"; - } - default "0"; - } + // Autonomous system + typedef rtcom_AS { - // MetricS - typedef rtmap_MetricS { - type string { + type uint32 { + range "1..4294967295"; } } - // Metric type - typedef rtmap_MetricT { + // Community type + typedef rtcom_ComT { type enumeration { - - // OSPF type1 metric - enum type-1 { + enum regular { value 1; + description "Regular community"; } - - // OSPF type2 metric - enum type-2 { + enum extended { value 2; - } - - // BGP internal metric - enum internal { - value 3; - } - - // ISIS external metric - enum external { - value 4; + description "Extended community"; } } - default "type-1"; + default "regular"; } - // OSPFArea - typedef rtmap_OSPFArea { - type uint32 { - range "0..4294967295"; + // Mode + typedef rtcom_Mode { + type enumeration { + enum standard { + value 1; + description "Standard"; + } + enum regex { + value 2; + description "Regular expression"; + } } + default "standard"; } - // Route-map Continue - typedef rtmap_Order { - type uint16 { - range "0..65535"; + // Route control direction + typedef rtctrl_RtCtrlDir { + type enumeration { + enum in { + value 1; + description "Incoming"; + } + enum out { + value 2; + description "Outgoing"; + } } + default "in"; } - // Origin type - typedef rtmap_OriginT { + // Route target policy type + typedef rtctrl_RttPType { type enumeration { - - // Remote EGP Origin - enum egp { + enum import { value 1; + description "Import"; } - - // Local IGP Origin - enum igp { + enum export { value 2; - } - - // Unknown Heritage - enum incomplete { - value 3; + description "Export"; } } - default "egp"; + default "import"; } - // Precedence Properties - typedef rtmap_PrecName { - type enumeration { + // ASM Control + typedef rtdmc_ASMCtrl { - // Routine - enum routine { - value 0; - } + type string; + } - // Priority - enum priority { - value 1; - } + // Adjacency flags + typedef rtdmc_AdjFlags { - // Immediate - enum immediate { - value 2; - } + type string; + } - // Flash - enum flash { - value 3; + // Adjancency operational state + typedef rtdmc_AdjOperSt { + type enumeration { + enum up { + value 0; + description "Up"; } - - // Flash-Override - enum flash-override { - value 4; + enum inactive { + value 1; + description "Inactive"; } + } + } - // Critical - enum critical { - value 5; - } + typedef rtdmc_AssertRateLmt { + type uint32 { + range "0..65535"; + } + } - // Internet - enum internet { - value 6; - } + // Authentication key + typedef rtdmc_AuthKey { + type string; + } - // Network - enum network { - value 7; + // Authentication type + typedef rtdmc_AuthT { + type enumeration { + enum none { + value 0; + description "No authentication"; + } + enum ah-md5 { + value 1; + description "MD5 HMAC authentication"; } } + default "none"; } - // is BGP config - typedef rtmap_Proto { + typedef rtdmc_AutoEnable { type boolean; + default "true"; } - // Reuse - typedef rtmap_Reuse { + // Auto-RP Control + typedef rtdmc_AutoRPCtrl { + + type string; + } + + // Auto-RP Scope + typedef rtdmc_AutoRPScope { type uint16 { - range "1..20000"; + range "1..255"; } + default "32"; } - // Route Distance - typedef rtmap_RouteDist { - type uint8 { - range "0..255"; + // Bootstrap Router (BSR) Control + typedef rtdmc_BSRCtrl { + + type string; + } + + // BSR Hash Mask Len + typedef rtdmc_BSRHashLen { + type uint16; + } + + // Max Rate TODO: Is there a default? + typedef rtdmc_BSRInterval { + type uint16 { + range "1..65535"; } + default "60"; } - // Route Last As - typedef rtmap_RouteLastAs { + // BSR Priority + typedef rtdmc_BSRPrio { type uint16 { - range "1..10"; + range "1..255"; } + default "64"; } - // Pervasive route - typedef rtmap_RoutePervasive { + // BFD state + typedef rtdmc_BfdInstSt { type enumeration { - - // Match all non-pervasive routes - enum non-pervasive { - value 0; - } - - // Match all pervasive routes - enum pervasive { + enum enabled { value 1; + description "Enabled"; } - - // Match all pervasive except external BD routes - enum pervasive-non-ext-bd { + enum disabled { value 2; + description "Disabled"; + } + enum none { + value 0; + description "None"; } } - default "pervasive-non-ext-bd"; + default "none"; } - // Route type - typedef rtmap_RouteT { + // BFD state + typedef rtdmc_BfdOperSt { type enumeration { - - // External - enum external { + enum down { + value 0; + description "Down"; + } + enum rem-pend { value 1; + description "Remove Pending"; } - - // Internal - enum internal { + enum up { value 2; + description "Up"; } + } + } - // OSPF inter area - enum ospf-inter-area { - value 3; - } - - // OSPF intra area - enum ospf-intra-area { - value 4; - } - - // ISIS level 1 - enum isis-l1 { - value 5; - } - - // ISIS level 2 - enum isis-l2 { - value 6; - } - - // Local - enum local { - value 7; - } - - // OSPF nssa external - enum ospf-nssa-external { - value 8; - } + // BiDir RP Limit + typedef rtdmc_BidirRPLimit { + type uint16 { + range "1..8"; + } + default "6"; + } - // OSPF type1 external - enum ospf-type1 { - value 9; - } + // Byte Count type + typedef rtdmc_ByteCntType { - // OSPF type2 external - enum ospf-type2 { - value 10; - } + type uint32 { + range "0..4294967295"; } - default "external"; } - // Route tag - typedef rtmap_RouteTag { + // Counter + typedef rtdmc_Counter32 { type uint32; } - // Set criteria - typedef rtmap_SetCriteria { - type enumeration { - - // No community - enum none { - value 1; - } - - // Append community - enum append { - value 2; - } - - // Replace community - enum replace { - value 3; - } - - // IGP Cost - enum igp { - value 4; - } + // Designated Forwarder Offer Burst Interval + typedef rtdmc_DFOBItvl { + type uint16 { + range "1..10000"; + } + default "20"; + } - // Pre-bestpath Cost - enum pre-bestpath { - value 5; - } + // Designated Router Priority + typedef rtdmc_DRPrio { + type uint32 { + range "1..4294967295"; } - default "none"; + default "1"; } - // Set type - typedef rtmap_SetT { + // Database type + typedef rtdmc_DbT { type enumeration { - - // Regular community - enum reg-community { + enum rp { + value 0; + description "RP database"; + } + enum grange { value 1; + description "Grange database"; } - - // Extended generic community - enum ext-gen-community { + enum route { value 2; + description "Route database"; } - - // Route target community - enum rtt-community { + enum dynrpsrc { value 3; + description "Dynamic RP Source database"; } - - // Route tag - enum rt-tag { + enum gstats { value 4; + description "Global Statistics"; } - - // Route weight - enum rt-weight { + enum vrf { value 5; + description "VRF database"; } - - // Local preference - enum local-pref { + enum ifrec { value 6; + description "Interface database"; } - - // Metric - enum metric { + enum grpoif { value 7; + description "Group Oif list"; } - - // OSPF NSSA area - enum ospf-nssa { + enum group { value 8; + description "Group database"; } - - // OSPF fowarding address - enum ospf-fwd-addr { + enum ifstats { value 9; + description "Interface statistics"; } - - // IP nexthop - enum ip-nh { + enum peer { value 10; + description "Peer statistics"; } - - // Metric Type - enum metric-type { + enum rphash { value 11; + description "RP-Hash for a group"; } - - // Route distance - enum rt-dist { + enum df { value 12; + description "Designated forwarder for RP"; } - - // Next Hop Peer Address - enum nh-pa { + enum bf { value 13; + description "Bitfield database"; } - - // Origin - enum origin { + enum embedrp { value 14; + description "Embed-RP database"; } - - // Community List (for deletion) - enum list-community { + enum syslog { value 15; + description "Syslog database"; } - - // Dampening value - enum dampening { + enum vrfdetail { value 16; + description "Vrf details"; } + } + } - // Extcommunity Cost - enum extcommunity-cost { - value 17; + // DF state + typedef rtdmc_DfStates { + type enumeration { + enum unknown { + value 0; + description "DF Unknown State"; } - - // IP Precedence value - enum ip-prec { - value 18; + enum offer { + value 1; + description "DF Offer State"; } - - // Continue Value - enum continue { - value 19; + enum lose { + value 2; + description "DF Lose State"; } - - // Label Index - enum rt-index { - value 20; + enum winner { + value 3; + description "DF Winner State"; } - - // Extended Community List (for deletion) - enum list-extcommunity { - value 21; + enum backoff { + value 4; + description "DF Backoff State"; } + } + default "unknown"; + } - // IPv6 Precedence value - enum ipv6-prec { - value 22; - } + // Domain Control + typedef rtdmc_DomCtrl { - // Prepend Value - enum prepend { - value 23; - } + type string; + } - // Prepend Last-as Value - enum lastas { - value 24; - } + // PIM Route types + typedef rtdmc_GRangeFlags { - // As-Path tag Value - enum as-pathtag { - value 25; - } - } - default "reg-community"; + type string; } - // Supress - typedef rtmap_Supress { - type uint16 { - range "1..20000"; + // Generation Id + typedef rtdmc_GenId { + type uint32; + } + + // Hello Message Interval + typedef rtdmc_HelloItvl { + type uint32 { + range "1..18724286"; } + default "30000"; } - // Weight - typedef rtmap_Weight { + // Hold Time + typedef rtdmc_HoldTime { type uint16; } - // rp-type - typedef rtmap_rpTypeT { - type enumeration { + // Interface Ctrl + typedef rtdmc_IfCtrl { - // unspecified - enum unspecified { - value 0; - } + type string; + } - // ASM - enum ASM { - value 1; - } + // Join Prune Inter packet delay TODO: Get the max delay + typedef rtdmc_JPDelay { + type uint32 { + range "1..1000"; + } + default "100"; + } - // Bidir - enum Bidir { - value 2; - } + // Join Prune Interval Used between Peers TODO: Validate this is correct + typedef rtdmc_JPItvl { + type uint16 { + range "1..65520"; } - default "unspecified"; + default "60"; } - // Criteria - typedef rtpfx_Criteria { - type enumeration { + // Jp-delay in microseconds + typedef rtdmc_JpDelayRange { + type uint32 { + range "1..4294967295"; + } + default "100"; + } - // Exact match - enum exact { - value 0; - } + // Protocol Packet MTU + typedef rtdmc_Mtu { + type uint32 { + range "1500..65536"; + } + default "1500"; + } - // Inexact match - enum inexact { - value 1; - } + // Null Register Inter batch delay TODO: Is there a default? + typedef rtdmc_NRDelay { + type uint16 { + range "1..50000"; } - default "exact"; } - // Extended chassis state - typedef satm_ExtChOperSt { - type enumeration { + // Number of Routes in a Null Register TODO: Is there a default? + typedef rtdmc_NRNumRt { + type uint16 { + range "1..32000"; + } + } - // Unknown - enum unknown { + // route oif list types + typedef rtdmc_OifFlags { + + type string; + } + + // Pkt Count type + typedef rtdmc_PktCntType { + + type uint32 { + range "0..4294967295"; + } + } + + typedef rtdmc_PolicyDirType { + type enumeration { + enum none { value 0; + description "none"; } - - // Initializing - enum initializing { + enum in { value 1; + description "in"; } - - // Discovered - enum discovered { + enum out { value 2; + description "out"; } + } + default "none"; + } - // Connected - enum connected { - value 3; - } + // PIM RP types + typedef rtdmc_RPSourceType { - // Registering - enum registering { - value 4; - } + type string; + } - // Registered - enum registered { - value 5; - } + // Max Rate TODO: Is there a default? + typedef rtdmc_RegRate { + type uint16 { + range "0..65535"; + } + default "0"; + } - // Ready - enum ready { - value 6; - } + // Register-rate limit + typedef rtdmc_RegRateRange { + type uint32 { + range "0..65535"; + } + default "0"; + } - // Online Sequence - enum online-seq { - value 7; - } + // PIM Route types PIM Route types + typedef rtdmc_RouteBits { - // Online - enum online { - value 8; - } - - // Offline Request - enum offline-req { - value 9; - } - - // Offline Sequence - enum offline-seq { - value 10; - } - - // Offline - enum offline { - value 11; - } - - // Image Download - enum img-download { - value 12; - } - - // Failed - enum failed { - value 13; - } - - // Removed - enum removed { - value 14; - } - - // Hitless Upgrade Sequence - enum hl-upg-seq { - value 15; - } - - // Check Upgrade Sequence - enum chk-upg-seq { - value 16; - } - - // Ready for Upgrade - enum upg-start { - value 17; - } - - // Hitless Upgrade Idle - enum hl-upg-idle { - value 18; - } - - // Check Insert Sequence - enum chk-ins-seq { - value 19; - } - - // Hitless Upgrade Failed - enum hl-upg-fail { - value 20; - } - - // Active Active Upgrade Ready - enum aa-upg-rdy { - value 21; - } - - // Active Active Upgrade Idle - enum aa-upg-idle { - value 22; - } - - // Active Active Upgrade Done - enum aa-upg-done { - value 23; - } + type string; + } - // Active Active Upgrade Fail - enum aa-upg-fail { - value 24; - } + // PIM Route types + typedef rtdmc_RtFlags { - // Active Active Version Mismatch - enum aa-ver-mismatch { - value 25; - } + type string; + } - // Extended Chassis Type Mismatch - enum ch-type-mismatch { - value 26; - } + // (S,G) Entry Inactivity Expiry Timer + typedef rtdmc_SGExpItvl { + type uint32 { + range "180..604801"; } - default "unknown"; + default "180"; } - // Fabric port FSM status - typedef satm_FpFsmSt { + // Scope of the community + typedef rtextcom_Scope { type enumeration { - - // Unknown - enum unknown { + enum transitive { value 0; + description "Transitive"; } - - // Created - enum created { + enum non-transitive { value 1; - } - - // Discovered - enum discovered { - value 2; - } - - // Configured - enum configured { - value 3; - } - - // Up - enum up { - value 4; - } - - // Connecting - enum connecting { - value 5; - } - - // Active - enum active { - value 6; - } - - // Incompatible topology - enum incompatible { - value 7; - } - - // Disconnected - enum disconnected { - value 8; - } - - // Identity mismatch - enum id-mismatch { - value 9; + description "Non Transitive"; } } - default "unknown"; - } - - // Fabri port flags - typedef satm_FportFlags { - - // bits- Using string - type string; + default "transitive"; } - // Host Port operational status - typedef satm_HpOperSt { + typedef rtextcom_Type { type enumeration { - - // Unknown - enum unknown { - value 0; - } - - // Up - enum up { + enum rttarget { value 1; + description "Route target community type"; } - - // Down - enum down { + enum generic { value 2; + description "Generic extended community type"; } - - // Failed - enum fail { + enum soo { value 3; + description "Site of origin extended community type"; + } + enum rmac { + value 4; + description "Router mac extended community type"; } } - default "unknown"; + default "generic"; } - // Port operational status - typedef satm_OperSt { + // Action + typedef rtflt_Action { type enumeration { - - // Unknown - enum unknown { + enum deny { value 0; + description "Deny"; } - - // Up - enum up { + enum permit { value 1; + description "Permit"; } + } + default "permit"; + } - // Down - enum down { - value 2; - } + // Order + typedef rtflt_Order { - // Failed - enum failed { - value 3; - } + type uint32 { + range "0..4294967295"; } - default "unknown"; } - typedef satm_SwGen { - type uint16; + // filter option for RibLeak + typedef rtleak_Always { + type boolean; + default "true"; } - // Action - typedef scrtchpd_Action { - type enumeration { - - // Create - enum create { - value 1; - } - - // Delete - enum delete { - value 2; - } + // Asn number + typedef rtleak_Asn { + type string { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } - default "create"; + default "none"; } - // Address family type - typedef segrt_AfType { + // Controls on what to do when the number of routes cross + // the maximum prefix limit + typedef rtleak_Ctrl { type enumeration { - - // IPv4 address family - enum ipv4 { + enum unspecified { + value 0; + description "Unspecified"; + } + enum warning { value 1; + description "Warning"; } - - // IPv6 address family - enum ipv6 { + enum withdraw { value 2; + description "Withdraw"; } } - default "ipv4"; + default "unspecified"; } - // Segment Routing Operational state - typedef segrt_OperSt { - type enumeration { + // Duration between the retries + typedef rtleak_Duration { + type uint16 { + range "60..600"; + } + default "300"; + } - // Disabled - enum disabled { - value 0; - } + // Routing protocol instance + typedef rtleak_Inst { + type string { + length "1..20"; + } + } - // Enabled - enum enabled { - value 1; - } + // Maximum prefix leaked + typedef rtleak_MaxPfx { - // HA in progress - enum ha-in-progress { - value 2; - } + type uint16 { + range "1..65535"; } - default "disabled"; } - // Operational State Qualifier - typedef segrt_OperStQual { + // Source protocol type of the leak policy + typedef rtleak_Proto { type enumeration { - - // None - enum none { + enum unspecified { value 0; + description "Unspecified"; } - - // Segment Routing is shut - enum shut { + enum static { value 1; + description "Static"; } - - // Old SRGB cleanup in progress - enum srgb-cleanup-in-progress { + enum direct { value 2; + description "Direct"; } - - // Old SRGB cleanup failed - enum srgb-cleanup-failed { + enum bgp { value 3; + description "BGP"; } - - // SRGB allocation in progress - enum srgb-alloc-in-progress { + enum isis { value 4; + description "ISIS"; } - - // SRGB allocation failed - enum srgb-alloc-failed { + enum ospf { value 5; + description "OSPF"; } - } - default "none"; - } - - // SRGB Operational state - typedef segrt_SRGBOperSt { - type enumeration { - - // None - enum none { - value 0; + enum ospfv3 { + value 6; + description "OSPFv3"; } - - // In-use - enum in-use { - value 1; + enum eigrp { + value 7; + description "EIGRP"; } - - // SRGB allocation in progress - enum alloc-in-progress { - value 2; + enum host { + value 8; + description "HOST"; } - - // SRGB allocation failed - enum alloc-failed { - value 3; + enum rip { + value 9; + description "RIP"; } - - // Old SRGB cleanup in progress - enum cleanup-in-progress { - value 4; + enum amt { + value 10; + description "AMT"; } - - // Old SRGB cleanup failed - enum cleanup-failed { - value 5; + enum lisp { + value 11; + description "LISP"; + } + enum hmm { + value 12; + description "HMM"; + } + enum am { + value 13; + description "AM"; + } + enum srv6 { + value 14; + description "SRV6"; } } - default "none"; + default "unspecified"; } - // SID Value type - typedef segrt_SidValueType { - type enumeration { + // Maximum number of retries to retrieve the leaked routes + typedef rtleak_Retries { + type uint16 { + range "1..12"; + } + default "1"; + } - // SID Index value - enum index { - value 1; + // Policy Direction + typedef rtleak_RtCtrlDir { + type enumeration { + enum in { + value 0; + description "in"; } - - // SID Absolute value - enum absolute { - value 2; + enum out { + value 1; + description "out"; } } - default "index"; + default "in"; } - // Segment-routing data plane type - typedef segrt_SrDpType { + // Scope of the leak policy + typedef rtleak_Scope { type enumeration { - - // MPLS - enum mpls { + enum intra { value 1; + description "Intra protocol leak"; } - - // IPv6 - enum ipv6 { + enum inter { value 2; + description "Inter protocol leak"; + } + enum defrt { + value 3; + description "Default route leak"; } } - default "mpls"; + default "intra"; } - // SRGB allocation retry interval - typedef segrt_SrgbAllocRetryIntvl { - type uint16 { - range "1..65535"; + // SRv6 Prefix Type + typedef rtleak_Srv6PrefixType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; + } + enum locator { + value 1; + description "SRv6 Locator"; + } } - default "180"; + default "unspecified"; } - // SRGB cleanup interval - typedef segrt_SrgbCleanupIntvl { - type uint16 { - range "1..65535"; + // Threshold at which warning is issued when number of prefixes + // crosses the threshold, units in percentage + typedef rtleak_Thresh { + type uint8 { + range "1..100"; } - default "60"; + default "75"; } - typedef sisf_NonGlobalTracking { + // Action + typedef rtmap_Action { type enumeration { - - // Default - enum default { + enum deny { value 0; + description "Deny"; } - - // Disable - enum disable { + enum permit { value 1; - } - - // Enable - enum enable { - value 2; + description "Permit"; } } - default "default"; + default "permit"; } - // Maximum time in REACHABLE with no activity - // Default Value "0" Removed - out of range -1..86400 - typedef sisf_ReachableLifetimerBinding { - type int32 { - range "-1..86400"; + // Administrative state + typedef rtmap_AdminSt { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + default "disabled"; } - typedef sisf_RetryIntervalBinding { - type int16 { - range "0..3600"; + // Community Id + typedef rtmap_CommunityId { + type uint8 { + range "0..255"; } - default "0"; } - typedef sisf_VlanID { - type uint16 { - range "1..4096"; + // Community Value + typedef rtmap_CommunityVal { + type uint32 { + range "0..4294967295"; } } - typedef sisf_deviceRole { - type enumeration { - - // Node - enum node { - value 0; - } - - // Switch - enum switch { - value 3; - } - } - default "node"; + // Config Error + typedef rtmap_ConfigErr { + type string; } - typedef sisf_dhcpGuardDeviceRole { + // Criteria + typedef rtmap_Criteria { type enumeration { - - // Client - enum client { - value 0; - } - - // Server - enum server { + enum exact { value 1; + description "Exact"; } - - // Monitor - enum monitor { + enum sub-group { value 2; + description "Sub group"; } } - default "client"; + default "sub-group"; } - typedef sisf_dhcpflag { - type enumeration { - - // enable - enum on { - value 0; - } - - // disable - enum off { - value 1; - } + // Dampening Half-life + // Time in minutes. Once the route has been assigned a penalty, + // the penalty is decreased by half after half life period + typedef rtmap_DampHalfLife { + type uint8 { + range "0..45"; } + default "0"; } - // Define Down Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_downLifetimer { - type uint64 { - range "0..86400"; + // Dampening Max Suppress Time + // Time in minutes. Maximum time that a route can be suppressed. + typedef rtmap_DampMaxSuppressTime { + type uint8 { + range "0..255"; } - default "86400"; + default "0"; } - // Verify that the RA Guard advertised limit is lower than the limit value - // Default Value "0" Removed - out of range 1..255 - typedef sisf_hopLimitMax { + // Dampening Reuse Limit + // Route that is unsuppressed if the penalty for a flapping route + // decreases enough to fall below this value. + typedef rtmap_DampReuse { type uint16 { - range "1..255"; + range "0..20000"; } + default "0"; } - // Verify that the RA Guard advertised limit is greater than the limit value - // Default Value "0" Removed - out of range 1..255 - typedef sisf_hopLimitMin { + // Dampening Suppress Limit + // Route that is suppressed when its penalty exceeds this limit. + typedef rtmap_DampSuppress { type uint16 { + range "0..20000"; + } + default "0"; + } + + // Duration + typedef rtmap_Duration { + type uint8 { range "1..255"; } } - // Specifies a limit - typedef sisf_limitAddressCount { - type uint16 { - range "0..32000"; + // HalfLife + typedef rtmap_HalfLife { + type uint8 { + range "1..45"; } } - // Default Value "0" Removed - out of range 1..100000 - typedef sisf_macLimit { + // Label Index + typedef rtmap_Index { type uint32 { - range "1..100000"; + range "0..471788"; } } - // Define maximum number of entries in the Binding table - // Default Value "0" Removed - out of range 1..1000000 - typedef sisf_maxEntries { - type uint32 { - range "1..1000000"; - } - } - - typedef sisf_ndpflag { - type enumeration { - - // enable - enum on { - value 0; - } - - // disable - enum off { - value 1; - } - } - } - - // Default Value "0" Removed - out of range 1..100000 - typedef sisf_portLimit { - type uint32 { - range "1..100000"; - } - } - - // Define Maximum allowed advertised server preference - typedef sisf_preferenceMax { - type uint16 { - range "0..255"; - } - default "255"; - } - - // Define Minimum allowed advertised server preference - typedef sisf_preferenceMin { - type uint16 { - range "0..255"; - } - default "0"; + // Local preference + typedef rtmap_LocalPref { + type uint32; } - typedef sisf_raGuardDeviceRole { + // Match type + typedef rtmap_MatchT { type enumeration { - - // Host - enum host { + enum reg-community { value 1; + description "Regular community"; } - - // Router - enum router { + enum ext-community { value 2; + description "Extended community"; } - - // Switch - enum switch { + enum rt-dst { value 3; + description "Route destinations"; } - - // Monitor - enum monitor { + enum rt-nh { value 4; + description "Route nexthops"; } - } - default "host"; - } - - // Enable verification of the advertised M flag - typedef sisf_raGuardManagedConfig { - type enumeration { - - // disable - enum off { - value 0; + enum rt-src { + value 5; + description "Route sources"; } - - // enable - enum on { - value 1; + enum rt-type { + value 6; + description "Route type"; } - - // check - enum nocheck { - value 2; + enum rt-tag { + value 7; + description "Route tag"; } - } - default "nocheck"; - } - - // Enable verification of the advertised O flag - typedef sisf_raGuardOtherConfig { - type enumeration { - - // disable - enum off { - value 0; + enum rt-pervasive { + value 8; + description "Route pervasive"; } - - // able - enum on { - value 1; + enum as-path { + value 9; + description "AS Path Access List"; } - - // check - enum nocheck { - value 2; + enum rt-dst-v6 { + value 10; + description "V6 Route destinations"; } - } - default "nocheck"; - } - - typedef sisf_raGuardRouterPreferenceMaximum { - type enumeration { - - // low - enum low { - value 1; + enum rt-asn { + value 11; + description "Route ASN"; } - - // medium - enum medium { - value 2; + enum rt-if { + value 12; + description "Route IF"; } - - // high - enum high { - value 3; + enum rt-metric { + value 13; + description "Route Metric"; } - - // check - enum nocheck { - value 4; + enum src-proto { + value 14; + description "Source Protocol"; } - } - default "nocheck"; - } - - // Define Reachable Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_reachableLifetimer { - type uint64 { - range "0..86400"; - } - default "300"; - } - - // Define Reachable Lifetimer for snooping policy - // Special value zero (0) indicates infinite. - typedef sisf_reachableLifetimerSnoopingPolicy { - type uint64 { - range "0..86400"; - } - default "300"; - } - - typedef sisf_retryInterval { - type uint16 { - range "1..3600"; - } - default "1"; - } - - typedef sisf_securityLevel { - type enumeration { - - // Glean - enum glean { - value 0; + enum rt-ospf { + value 15; + description "OSPFArea"; } - - // Guard - enum inspect { - value 1; + enum rt-nh-v6 { + value 16; + description "Route nexthops ipv6"; } - - // Inspect - enum guard { - value 2; + enum rt-src-v6 { + value 17; + description "Route route source ipv6"; + } + enum rt-ipv4-mcast { + value 18; + description "Match IPv4 multicast"; + } + enum rt-ipv6-mcast { + value 19; + description "Match IPv6 multicast"; + } + enum rt-mac-list { + value 20; + description "Match mac list"; } } - default "guard"; + default "reg-community"; } - // Define Stale Lifetimer - // Special value zero (0) indicates infinite. - typedef sisf_staleLifetimer { - type uint64 { - range "0..86400"; - } - default "86400"; + // Metric + typedef rtmap_Metric { + type uint32; } - // Define Reachable Lifetimer for snooping policy - // Special value zero (0) indicates infinite. - typedef sisf_staleLifetimerSnoopingPolicy { - type uint64 { - range "0..86400"; + // Metric Delay + typedef rtmap_MetricD { + type uint32 { + range "0..4294967295"; } - default "86400"; + default "0"; } - // Default Value "0" Removed - out of range 1..200000 - typedef sisf_vlanLimit { - type uint32 { - range "1..200000"; + // Metric Load + typedef rtmap_MetricL { + type uint8 { + range "0..255"; } + default "0"; } - // AAA Cache User Timeout - typedef snmp_AaaUserCacheTimeout { + // Metric MTU + typedef rtmap_MetricM { type uint32 { - range "1..86400"; + range "0..16777215"; } - default "3600"; + default "0"; } - // ACL Name - typedef snmp_AclNameT { - type string { + // Metric Reliability + typedef rtmap_MetricR { + type uint8 { + range "0..255"; } + default "0"; } - // Authentication key - typedef snmp_AuthKey { - type string; - } - - typedef snmp_AuthPasswd { + // MetricS + typedef rtmap_MetricS { type string { - length "0..130"; + pattern "[0-9\\+-][0-9]*"; } } - // Authentication Type - typedef snmp_AuthType { + // Metric type + typedef rtmap_MetricT { type enumeration { - - // HMAC-MD5-96 - enum hmac-md5-96 { + enum type-1 { value 1; + description "OSPF type1 metric"; } - - // HMAC-SHA1-96 - enum hmac-sha1-96 { + enum type-2 { value 2; + description "OSPF type2 metric"; + } + enum internal { + value 3; + description "BGP internal metric"; + } + enum external { + value 4; + description "ISIS external metric"; } } - default "hmac-md5-96"; + default "type-1"; } - // Auth Type - typedef snmp_AuthTypeT { - type enumeration { + // OSPFArea + typedef rtmap_OSPFArea { + type uint32 { + range "0..4294967295"; + } + } - // No auth - enum no { - value 0; - } + // Route-map Continue + typedef rtmap_Order { + type uint16 { + range "0..65535"; + } + } - // MD5 algorithm - enum md5 { + // Origin type + typedef rtmap_OriginT { + type enumeration { + enum egp { value 1; + description "Remote EGP Origin"; } - - // SHA algorithm - enum sha { + enum igp { value 2; + description "Local IGP Origin"; + } + enum incomplete { + value 3; + description "Unknown Heritage"; } } - default "no"; + default "egp"; } - typedef snmp_Boolean { + // Precedence Properties + typedef rtmap_PrecName { type enumeration { - - // No - enum no { + enum routine { value 0; + description "Routine"; } - - // Yes - enum yes { + enum priority { value 1; + description "Priority"; + } + enum immediate { + value 2; + description "Immediate"; + } + enum flash { + value 3; + description "Flash"; + } + enum flash-override { + value 4; + description "Flash-Override"; + } + enum critical { + value 5; + description "Critical"; + } + enum internet { + value 6; + description "Internet"; + } + enum network { + value 7; + description "Network"; } } - default "yes"; } - // Type of access to the type of community - typedef snmp_CommAcessT { - type enumeration { + // is BGP config + typedef rtmap_Proto { + type boolean; + } - // Read-only Access - enum ro { + // Set path selection type + typedef rtmap_PsType { + type enumeration { + enum unspecified { value 0; + description "unspecified"; } - - // Read-Write Access - enum rw { + enum ps-all { value 1; + description "Specifies all BGP paths"; } - - // Unspecified value - enum unspecified { + enum ps-bestplus { value 2; + description "Specifies best + backup BGP paths"; + } + enum ps-best2 { + value 3; + description "Specifies best 2 BGP paths"; + } + enum ps-mpath { + value 4; + description "Specifies multipaths BGP paths"; } } default "unspecified"; } - // Port Counter Cache Timeout - typedef snmp_CounterCacheTimeout { + // Reuse + typedef rtmap_Reuse { type uint16 { - range "1..3600"; + range "1..20000"; } - default "50"; - } - - // RMON EVENT Description - typedef snmp_DescType { - type string; - } - - typedef snmp_EncryptedAuthArray { - type mtx_array_uint8; - } - - typedef snmp_EncryptedPrivArray { - type mtx_array_uint8; - } - - // Engine ID - typedef snmp_EngId { - type string; } - // Engine ID Length - typedef snmp_EngIdLen { + // Route Distance + typedef rtmap_RouteDist { type uint8 { - range "0..162"; - } - default "0"; - } - - // Event Number - typedef snmp_EventIndx { - type uint16 { - range "1..65535"; + range "0..255"; } - default "1"; } - // Event Number - typedef snmp_EventNum { + // Route Last As + typedef rtmap_RouteLastAs { type uint16 { - range "1..65535"; + range "1..10"; } } - // Group Name to which community belongs - typedef snmp_GrpNameT { - type string; - } - - // Logging enable - typedef snmp_LogEnableType { + // Pervasive route + typedef rtmap_RoutePervasive { type enumeration { - - // Generate RMON log when the event fires - enum no { + enum non-pervasive { value 0; + description "Match all non-pervasive routes"; } - - // Do not Generate RMON log when the event fires - enum yes { + enum pervasive { value 1; + description "Match all pervasive routes"; + } + enum pervasive-non-ext-bd { + value 2; + description "Match all pervasive except external BD routes"; } } - default "no"; + default "pervasive-non-ext-bd"; } - // Notification type - typedef snmp_NotificationType { + // Route type + typedef rtmap_RouteT { type enumeration { - enum traps { + enum external { value 1; + description "External"; } - enum informs { + enum internal { value 2; + description "Internal"; + } + enum ospf-inter-area { + value 3; + description "OSPF inter area"; + } + enum ospf-intra-area { + value 4; + description "OSPF intra area"; + } + enum isis-l1 { + value 5; + description "ISIS level 1"; + } + enum isis-l2 { + value 6; + description "ISIS level 2"; + } + enum local { + value 7; + description "Local"; + } + enum ospf-nssa-external { + value 8; + description "OSPF nssa external"; + } + enum ospf-type1 { + value 9; + description "OSPF type1 external"; + } + enum ospf-type2 { + value 10; + description "OSPF type2 external"; + } + enum R1 { + value 11; + description "BGP EVPN route (type 1)"; + } + enum mac-only { + value 12; + description "BGP EVPN route(type 2 mac-only)"; + } + enum mac-ip { + value 13; + description "BGP EVPN route(type 2 mac-ip)"; + } + enum R2_ALL { + value 14; + description "BGP EVPN route(type 2 all)"; + } + enum R3 { + value 15; + description "BGP EVPN route (type 3)"; + } + enum R4 { + value 16; + description "BGP EVPN route (type 4)"; + } + enum R5 { + value 17; + description "BGP EVPN route (type 5)"; + } + enum R6 { + value 18; + description "BGP EVPN route (type 6)"; } } - default "traps"; - } - - // RMON EVENT OWNER - typedef snmp_OwnerType { - type string; - } - - // SNMP Packet Size - typedef snmp_PktSizeT { - type uint16 { - range "484..17382"; - } - default "1500"; - } - - // UDP PORT - typedef snmp_PortIdT { - type uint32 { - range "0..65535"; - } - default "162"; - } - - // Privacy (encryption) key - typedef snmp_PrivKey { - type string; + default "external"; } - typedef snmp_PrivPasswd { - type string { - length "0..130"; - } + // Route tag + typedef rtmap_RouteTag { + type uint32; } - // Privacy (encryption) Type - typedef snmp_PrivType { + // Set criteria + typedef rtmap_SetCriteria { type enumeration { - - // None enum none { - value 0; - } - - // DES - enum des { value 1; + description "No community"; } - - // AES-128 - enum aes-128 { + enum append { value 2; + description "Append community"; + } + enum replace { + value 3; + description "Replace community"; + } + enum igp { + value 4; + description "IGP Cost"; + } + enum pre-bestpath { + value 5; + description "Pre-bestpath Cost"; } } default "none"; } - // Priv Type - typedef snmp_PrivTypeT { + // Set type + typedef rtmap_SetT { type enumeration { - - // No auth - enum no { - value 0; - } - - // DES algorithm - enum des { + enum reg-community { value 1; + description "Regular community"; } - - // AES-128 algorithm - enum aes128 { + enum ext-gen-community { value 2; + description "Extended generic community"; + } + enum rtt-community { + value 3; + description "Route target community"; + } + enum rt-tag { + value 4; + description "Route tag"; + } + enum rt-weight { + value 5; + description "Route weight"; + } + enum local-pref { + value 6; + description "Local preference"; + } + enum metric { + value 7; + description "Metric"; + } + enum ospf-nssa { + value 8; + description "OSPF NSSA area"; + } + enum ospf-fwd-addr { + value 9; + description "OSPF fowarding address"; + } + enum ip-nh { + value 10; + description "IP nexthop"; + } + enum metric-type { + value 11; + description "Metric Type"; + } + enum rt-dist { + value 12; + description "Route distance"; + } + enum nh-pa { + value 13; + description "Next Hop Peer Address"; + } + enum origin { + value 14; + description "Origin"; + } + enum list-community { + value 15; + description "Community List (for deletion)"; + } + enum dampening { + value 16; + description "Dampening value"; + } + enum extcommunity-cost { + value 17; + description "Extcommunity Cost"; + } + enum ip-prec { + value 18; + description "IP Precedence value"; + } + enum continue { + value 19; + description "Continue Value"; + } + enum rt-index { + value 20; + description "Label Index"; + } + enum list-extcommunity { + value 21; + description "Extended Community List (for deletion)"; + } + enum ipv6-prec { + value 22; + description "IPv6 Precedence value"; + } + enum prepend { + value 23; + description "Prepend Value"; + } + enum lastas { + value 24; + description "Prepend Last-as Value"; + } + enum as-pathtag { + value 25; + description "As-Path tag Value"; + } + enum ps-adv { + value 26; + description "PS Advertise Value"; } } - default "no"; - } - - // System Contact - typedef snmp_SnmpSysContact { - type string; + default "reg-community"; } - // System Description - typedef snmp_SnmpSysDescr { - type string; + // Supress + typedef rtmap_Supress { + type uint16 { + range "1..20000"; + } } - // System Location - typedef snmp_SnmpSysLoc { - type string; + // Weight + typedef rtmap_Weight { + type uint16; } - // Snmp trap administrative state - typedef snmp_SnmpTrapSt { + // rp-type + typedef rtmap_rpTypeT { type enumeration { - - // Enable - enum enable { + enum unspecified { + value 0; + description "unspecified"; + } + enum ASM { value 1; + description "ASM"; } - - // Disable - enum disable { + enum Bidir { value 2; + description "Bidir"; } } - default "disable"; - } - - // Trap Community type - typedef snmp_TrapCommType { - type string; + default "unspecified"; } - // SNMP Trap Rate - typedef snmp_TrapRateT { - type uint16 { - range "0..1000"; + // Criteria + typedef rtpfx_Criteria { + type enumeration { + enum exact { + value 0; + description "Exact match"; + } + enum inexact { + value 1; + description "Inexact match"; + } } - default "0"; + default "exact"; } - // SNMPv3 security level - typedef snmp_V3SecLvl { + // Extended chassis state + typedef satm_ExtChOperSt { type enumeration { - enum unspecified { + enum unknown { value 0; + description "Unknown"; } - enum noauth { + enum initializing { value 1; + description "Initializing"; } - enum auth { + enum discovered { value 2; + description "Discovered"; } - enum priv { + enum connected { value 3; + description "Connected"; + } + enum registering { + value 4; + description "Registering"; + } + enum registered { + value 5; + description "Registered"; + } + enum ready { + value 6; + description "Ready"; + } + enum online-seq { + value 7; + description "Online Sequence"; + } + enum online { + value 8; + description "Online"; + } + enum offline-req { + value 9; + description "Offline Request"; + } + enum offline-seq { + value 10; + description "Offline Sequence"; + } + enum offline { + value 11; + description "Offline"; + } + enum img-download { + value 12; + description "Image Download"; + } + enum failed { + value 13; + description "Failed"; + } + enum removed { + value 14; + description "Removed"; + } + enum hl-upg-seq { + value 15; + description "Hitless Upgrade Sequence"; + } + enum chk-upg-seq { + value 16; + description "Check Upgrade Sequence"; + } + enum upg-start { + value 17; + description "Ready for Upgrade"; + } + enum hl-upg-idle { + value 18; + description "Hitless Upgrade Idle"; + } + enum chk-ins-seq { + value 19; + description "Check Insert Sequence"; + } + enum hl-upg-fail { + value 20; + description "Hitless Upgrade Failed"; + } + enum aa-upg-rdy { + value 21; + description "Active Active Upgrade Ready"; + } + enum aa-upg-idle { + value 22; + description "Active Active Upgrade Idle"; + } + enum aa-upg-done { + value 23; + description "Active Active Upgrade Done"; + } + enum aa-upg-fail { + value 24; + description "Active Active Upgrade Fail"; + } + enum aa-ver-mismatch { + value 25; + description "Active Active Version Mismatch"; + } + enum ch-type-mismatch { + value 26; + description "Extended Chassis Type Mismatch"; } } - default "unspecified"; + default "unknown"; } - // SNMP version - typedef snmp_Version { + // Fabric port FSM status + typedef satm_FpFsmSt { type enumeration { - enum v1 { + enum unknown { + value 0; + description "Unknown"; + } + enum created { value 1; + description "Created"; } - enum v2c { + enum discovered { value 2; + description "Discovered"; } - enum v3 { + enum configured { value 3; + description "Configured"; + } + enum up { + value 4; + description "Up"; + } + enum connecting { + value 5; + description "Connecting"; + } + enum active { + value 6; + description "Active"; + } + enum incompatible { + value 7; + description "Incompatible topology"; + } + enum disconnected { + value 8; + description "Disconnected"; + } + enum id-mismatch { + value 9; + description "Identity mismatch"; } } - default "v1"; + default "unknown"; } - // Community name - typedef snmp_commNameT { - type string; - } + // Fabri port flags + typedef satm_FportFlags { - // host name - typedef snmp_hostNameT { type string; } - // RMON ALARM Sample interval - typedef snmp_smplIntvl { - type uint32 { - range "1..700000"; - } - default "1"; - } - - // Rmon alarm sample type - typedef snmp_smplType { + // Host Port operational status + typedef satm_HpOperSt { type enumeration { - - // Unspecified - enum unspecified { + enum unknown { value 0; + description "Unknown"; } - - // Test each sample directly - enum absolute { + enum up { value 1; + description "Up"; } - - // Test delta between samples - enum delta { + enum down { value 2; + description "Down"; + } + enum fail { + value 3; + description "Failed"; } } - default "unspecified"; + default "unknown"; } - // Type for snmp-server tcp-session auth config - typedef snmp_tcpSessionAuthT { + // Port operational status + typedef satm_OperSt { type enumeration { - - // Unspecified - enum no { + enum unknown { value 0; + description "Unknown"; } - - // tcp-session config - enum tcpSess { + enum up { value 1; + description "Up"; } - - // tcp-session auth config - enum tcpSessAuth { + enum down { value 2; + description "Down"; } - } - default "tcpSessAuth"; - } - - // RMON ALARM Threshold Type - // Default Value "0" Removed - out of range -2147483648..2147483647 - typedef snmp_thrshld { - type int32 { - range "-2147483648..2147483647"; - } - } - - // Database type - typedef span_DbT { - type enumeration { - - // IP endpoint resolution database - enum ipep-resolve { - value 1; + enum failed { + value 3; + description "Failed"; } } - default "ipep-resolve"; + default "unknown"; } - // Destination encapsulation - typedef span_DestEncapT { - type enumeration { - - // Gre encapsulated - enum gre { - value 1; - } - } - default "gre"; + typedef satm_SwGen { + type uint16; } - // Direction, to figure out the direction in which the traffic - // is monitored on the span source - typedef span_Direction { + // Action + typedef scrtchpd_Action { type enumeration { - - // Incoming - enum in { + enum create { value 1; + description "Create"; } - - // Outgoing - enum out { + enum delete { value 2; - } - - // Both - enum both { - value 3; + description "Delete"; } } - default "both"; + default "create"; } - // ErSpan Version - typedef span_ErSpanVer { + // Address family type + typedef segrt_AfType { type enumeration { - - // Version 1 - enum ver1 { + enum ipv4 { value 1; + description "IPv4 address family"; } - - // Version 2 - enum ver2 { + enum ipv6 { value 2; + description "IPv6 address family"; } } - default "ver2"; - } - - // Flow id - typedef span_FlowId { - type uint16 { - range "1..1023"; - } - default "1"; + default "ipv4"; } - // Mode - typedef span_Mode { + // Segment Routing Operational state + typedef segrt_OperSt { type enumeration { - - // Access - enum access { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { value 1; + description "Enabled"; } - - // Fabric - enum fabric { + enum ha-in-progress { value 2; + description "HA in progress"; } } - default "access"; - } - - // Mtu - typedef span_Mtu { - type uint16 { - range "64..9216"; - } - default "1518"; + default "disabled"; } - // Operational state - typedef span_OperSt { + // Operational State Qualifier + typedef segrt_OperStQual { type enumeration { - - // Unspecified - enum unspecified { + enum none { value 0; + description "None"; } - - // Up - enum up { + enum shut { value 1; + description "Segment Routing is shut"; } - - // Down - enum down { + enum srgb-cleanup-in-progress { value 2; + description "Old SRGB cleanup in progress"; } - - // Failed - enum failed { + enum srgb-cleanup-failed { value 3; + description "Old SRGB cleanup failed"; } - - // Partial - enum partial { + enum srgb-alloc-in-progress { value 4; + description "SRGB allocation in progress"; + } + enum srgb-alloc-failed { + value 5; + description "SRGB allocation failed"; } } - default "down"; + default "none"; } - // Operational state qualifier - typedef span_OperStQual { + // SRGB Operational state + typedef segrt_SRGBOperSt { type enumeration { - - // The session is up - enum active { + enum none { + value 0; + description "None"; + } + enum in-use { value 1; + description "In-use"; } - - // No hardware resource - enum no-hw-res { + enum alloc-in-progress { value 2; + description "SRGB allocation in progress"; } - - // No operational src/dst - enum no-oper-src-dst { + enum alloc-failed { value 3; + description "SRGB allocation failed"; } - - // Generic error - enum error { + enum cleanup-in-progress { value 4; + description "Old SRGB cleanup in progress"; } - - // No sources configured - enum no-src { + enum cleanup-failed { value 5; + description "Old SRGB cleanup failed"; } + } + default "none"; + } - // No dest configured - enum no-dst { - value 6; - } - - // No src/dst configured - enum no-src-dst { - value 7; - } - - // Session admin shut - enum shut { - value 8; - } - - // Dst in wrong mode - enum invalid-dst-mode { - value 9; - } - - // Src in wrong mode - enum invalid-src-mode { - value 10; - } - - // No valid VRF - enum invalid-vrf { - value 11; - } - - // No valid IP address - enum invalid-ip { - value 12; + // SID Value type + typedef segrt_SidValueType { + type enumeration { + enum index { + value 1; + description "SID Index value"; } - - // No route to destination IP address - enum no-route { - value 13; + enum absolute { + value 2; + description "SID Absolute value"; } + } + default "index"; + } - // Egress interface not resolved - enum no-eg-intf { - value 14; + // Segment-routing data plane type + typedef segrt_SrDpType { + type enumeration { + enum mpls { + value 1; + description "MPLS"; } - - // Hardware error - enum hw-err { - value 15; + enum ipv6 { + value 2; + description "IPv6"; } } - default "no-oper-src-dst"; + default "mpls"; } - // Session id - typedef span_SessionId { - type uint8 { - range "1..48"; + // SRGB allocation retry interval + typedef segrt_SrgbAllocRetryIntvl { + type uint16 { + range "1..65535"; } + default "180"; } - // Source id - typedef span_SrcId { - - // MAX Converted to int from 0xffff + // SRGB cleanup interval + typedef segrt_SrgbCleanupIntvl { type uint16 { range "1..65535"; } + default "60"; } - // Source type - typedef span_SrcT { - type enumeration { + // Layer4 port + typedef sflow_L4Port { + type uint32 { + range "1..65535"; + } + default "6343"; + } - // Port - enum port { - value 1; - } + typedef sflow_VrfName { + type l3_VrfName; + default "default"; + } - // Encap - enum encap { - value 2; - } + // Address Ip + typedef sflow_addressIp { + type address_Ip; + } - // Port and encap - enum port-encap { - value 3; - } + // counter-poll-interval + typedef sflow_counterPollInterval { + type uint32 { + range "0..2147483647"; } - default "port"; + default "20"; } - // Encapsulation type - typedef srte_EncapsulationType { - type enumeration { - - // MPLS Encapsulation - enum mpls { - value 0; - } + // Datagram size + typedef sflow_maxDatagramSize { + type uint32 { + range "200..9000"; } - default "mpls"; + default "1400"; } - typedef srte_LabelVal { + // Max sampling size + typedef sflow_maxSampledSize { type uint32 { - range "16..471804"; + range "64..256"; } - default "16"; + default "128"; } - // Metric type - typedef srte_Metric { - type enumeration { + // Sampling rate + typedef sflow_samplingRate { + type uint32; + } - // none metric - enum none { + typedef sisf_NonGlobalTracking { + type enumeration { + enum default { value 0; + description "Default"; } - - // te Metric - enum te { + enum disable { value 1; + description "Disable"; } - - // igp Metric - enum igp { + enum enable { value 2; + description "Enable"; } } - default "none"; + default "default"; } - // Name - typedef srte_Name { - type string; + // Maximum time in REACHABLE with no activity + typedef sisf_ReachableLifetimerBinding { + type int32 { + range "-1..86400"; + } + default "0"; } - // - option number for index and preferences - typedef srte_OptNum { - type uint32 { - range "1..65535"; + typedef sisf_RetryIntervalBinding { + type int16 { + range "0..3600"; } + default "0"; } - typedef srte_PcePrecedence { - type uint32 { - range "0..255"; + typedef sisf_VlanID { + type uint16 { + range "1..4096"; } - default "255"; } - // Administrative state - typedef stp_AdminSt { + typedef sisf_deviceRole { type enumeration { - - // Enabled - enum enabled { - value 1; + enum node { + value 0; + description "Node"; } - - // Disabled - enum disabled { - value 2; + enum switch { + value 3; + description "Switch"; } } - default "enabled"; + default "node"; } - // BPDUGuard - typedef stp_BPDUGuard { + typedef sisf_dhcpGuardDeviceRole { type enumeration { - - // Default - enum default { + enum client { value 0; + description "Client"; } - - // Enable - enum enable { + enum server { value 1; + description "Server"; } - - // Disable - enum disable { + enum monitor { value 2; + description "Monitor"; } } - default "default"; + default "client"; } - // bpdufilter type - typedef stp_Bpdufilter { + typedef sisf_dhcpflag { type enumeration { - - // Default - enum default { + enum on { value 0; + description "enable"; } - - // Enable - enum enable { + enum off { value 1; + description "disable"; } + } + } - // Disable - enum disable { - value 2; - } + // Define Down Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_downLifetimer { + type uint64 { + range "0..86400"; } - default "default"; + default "86400"; } - // bridge priority, incremental of 4096 - typedef stp_BridgePriority { + // Verify that the RA Guard advertised limit is lower than the limit value + typedef sisf_hopLimitMax { type uint16 { - range "0..61440"; + range "0..255"; } - default "32768"; + default "0"; } - // Path Cost 0 means auto - typedef stp_Cost { - type uint32 { - range "0..200000000"; + // Verify that the RA Guard advertised limit is greater than the limit value + typedef sisf_hopLimitMin { + type uint16 { + range "0..255"; } default "0"; } - typedef stp_Diameter { - type uint8 { - range "2..7"; + // Specifies a limit + typedef sisf_limitAddressCount { + type uint16 { + range "0..32000"; } - default "2"; } - // Forward Delay Time in Second - typedef stp_FwdTime { - type uint8 { - range "4..30"; + typedef sisf_macLimit { + type uint32 { + range "0..100000"; } - default "15"; + default "0"; } - // port guard - typedef stp_Guard { - type enumeration { + // Define maximum number of entries in the Binding table + typedef sisf_maxEntries { + type uint32 { + range "0..1000000"; + } + default "0"; + } - // Default - enum default { + typedef sisf_ndpflag { + type enumeration { + enum on { value 0; + description "enable"; } - - // Root - enum root { + enum off { value 1; - } - - // Loop - enum loop { - value 2; - } - - // None - enum none { - value 3; + description "disable"; } } - default "default"; } - // Hello Interval in Second - typedef stp_HelloTime { - type uint8 { - range "1..10"; + typedef sisf_portLimit { + type uint32 { + range "0..100000"; } - default "2"; + default "0"; } - // Interface controls - // Default Value computed from unspecified - typedef stp_IfControl { + // Define Maximum allowed advertised server preference + typedef sisf_preferenceMax { + type uint16 { + range "0..255"; + } + default "255"; + } - // bits- Using string - type string; - default "unspecified"; + // Define Minimum allowed advertised server preference + typedef sisf_preferenceMin { + type uint16 { + range "0..255"; + } + default "0"; } - // Mode - typedef stp_IfMode { + typedef sisf_raGuardDeviceRole { type enumeration { - - // Default - enum default { - value 0; - } - - // Edge (host) port - enum edge { + enum host { value 1; + description "Host"; } - - // Network port - enum network { + enum router { value 2; + description "Router"; } - - // Normal port - enum normal { + enum switch { value 3; + description "Switch"; } - - // Edge port in trunk mode - enum trunk { + enum monitor { value 4; + description "Monitor"; } } - default "default"; + default "host"; } - typedef stp_L2GStpDomId { - type uint32 { - range "0..200000000"; + // Enable verification of the advertised M flag + typedef sisf_raGuardManagedConfig { + type enumeration { + enum off { + value 0; + description "disable"; + } + enum on { + value 1; + description "enable"; + } + enum nocheck { + value 2; + description "check"; + } } - default "1024"; + default "nocheck"; } - // Link Type - typedef stp_LinkType { + // Enable verification of the advertised O flag + typedef sisf_raGuardOtherConfig { type enumeration { - - // Auto - enum auto { + enum off { + value 0; + description "disable"; + } + enum on { value 1; + description "able"; } - - // point-to-point - enum p2p { + enum nocheck { value 2; + description "check"; } + } + default "nocheck"; + } - // Shared - enum shared { + typedef sisf_raGuardRouterPreferenceMaximum { + type enumeration { + enum low { + value 1; + description "low"; + } + enum medium { + value 2; + description "medium"; + } + enum high { value 3; + description "high"; + } + enum nocheck { + value 4; + description "check"; } } - default "auto"; + default "nocheck"; } - // Hello Interval in Second - typedef stp_MaxAge { - type uint8 { - range "6..40"; + // Define Reachable Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_reachableLifetimer { + type uint64 { + range "0..86400"; } - default "20"; + default "300"; } - // Max Hops - typedef stp_MaxHops { - type uint8 { - range "1..255"; + // Define Reachable Lifetimer for snooping policy + // Special value zero (0) indicates infinite. + typedef sisf_reachableLifetimerSnoopingPolicy { + type uint64 { + range "0..86400"; } - default "20"; + default "300"; } - typedef stp_Mode { - type enumeration { + typedef sisf_retryInterval { + type uint16 { + range "1..3600"; + } + default "1"; + } - // MST - enum mst { + typedef sisf_securityLevel { + type enumeration { + enum glean { + value 0; + description "Glean"; + } + enum inspect { value 1; + description "Guard"; } - - // PVRST - enum pvrst { + enum guard { value 2; + description "Inspect"; } } - default "pvrst"; + default "guard"; } - // Mode - typedef stp_ModeType { - type enumeration { + // Define Stale Lifetimer + // Special value zero (0) indicates infinite. + typedef sisf_staleLifetimer { + type uint64 { + range "0..86400"; + } + default "86400"; + } - // Edge (host) port - enum edge { + // Define Reachable Lifetimer for snooping policy + // Special value zero (0) indicates infinite. + typedef sisf_staleLifetimerSnoopingPolicy { + type uint64 { + range "0..86400"; + } + default "86400"; + } + + typedef sisf_vlanLimit { + type uint32 { + range "0..200000"; + } + default "0"; + } + + // ReactionVariable: + typedef sla_ActionType { + type enumeration { + enum none { value 1; + description "NONE"; } - - // Network port - enum network { + enum trapOnly { value 2; + description "TRAPONLY"; } - - // Normal port - enum normal { + enum triggerOnly { value 3; + description "TRIGGERONLY"; + } + enum trapAndTrigger { + value 4; + description "TRAPANDTRIGGER"; } } - default "normal"; + default "none"; } - // Mst Id - typedef stp_MstId { - type uint16 { - range "0..4094"; + // AdvFactor + typedef sla_AdvFactor { + type uint8 { + range "0..20"; } default "0"; } - // Path cost option - typedef stp_PathcostOp { - type enumeration { + // ClockTolerance Absolute number + typedef sla_ClockToleranceAbsolute { + type uint32 { + range "0..100000"; + } + default "0"; + } - // Auto - enum auto { - value 0; - } + // ClockTolerance Percentile value + typedef sla_ClockTolerancePercent { + type uint32 { + range "0..100"; + } + default "0"; + } - // Short - enum short { - value 1; - } + // CodecNumPkts + typedef sla_CodecNumPkts { + type uint32 { + range "1..60000"; + } + default "1000"; + } - // Long - enum long { - value 2; - } + // CodecSize + typedef sla_CodecSize { + type uint32 { + range "16..16384"; } - default "short"; + default "32"; } - // port fast - typedef stp_PortFast { + // CodecType + typedef sla_CodecType { type enumeration { - - // Default - enum default { + enum none { value 0; + description "No codec configured"; } - - // Trunk - enum trunk { + enum g711alaw { + value 2; + description "G711aLAW"; + } + enum g711ulaw { value 1; + description "G711uLAW"; } - - // Disable - enum disable { - value 2; + enum g729a { + value 3; + description "G729A"; } } - default "default"; + default "none"; } - // port priority, incremental of 32 - typedef stp_PortPriority { - type uint8 { - range "0..224"; + // Operation frequency + typedef sla_Frequency { + type uint32 { + range "0..604800"; } - default "128"; + default "60"; } - // STP port roles. - typedef stp_PortRole { + // HttpMethodVal : Http methods : get or raw + typedef sla_HttpMethodVal { type enumeration { - - // Unknown role - enum unknown { - value 0; - } - - // Root port - enum root { + enum get { value 1; + description "GET"; } + } + default "get"; + } - // Alternate port - enum alternate { - value 2; - } - - // Designated port - enum designated { - value 3; - } - - // Backup port - enum backup { - value 4; - } + // CodecInterval + typedef sla_Interval { + type uint32 { + range "4..60000"; + } + default "20"; + } - // Master port - enum master { - value 5; - } + // NumPkts + typedef sla_NumPkts { + type uint32 { + range "1..60000"; } + default "10"; } - // STP port states. - typedef stp_PortState { + // OpPktPriority + typedef sla_OpPktPriority { type enumeration { - - // Unknown state - enum unknown { + enum none { value 0; + description "no priority"; } - - // Discarding state - enum discarding { + enum high { + value 2; + description "HIGH"; + } + enum normal { value 1; + description "NORMAL"; } + } + default "normal"; + } - // Learning state - enum learning { - value 2; - } + // Port num + typedef sla_PortNum { + type uint16 { + range "1..65535"; + } + } - // Forwarding state - enum forwarding { - value 3; + // Precision + typedef sla_Precision { + type enumeration { + enum microseconds { + value 1; + description "MICROSECONDS"; } - - // Disabled state - enum disabled { - value 4; + enum milliseconds { + value 2; + description "MILLISECONDS"; } } + default "milliseconds"; } - // bridge priority, incremental of 4096 - typedef stp_Priority { + // ReactionVariable: + typedef sla_ReactionVariable { type enumeration { - - // Priority_0 - enum 0 { + enum none { value 0; + description "NONE"; } - - // Priority_4096 - enum 4096 { + enum rtt { value 1; + description "RTT"; } - - // Priority_8192 - enum 8192 { + enum jitterSDAvg { value 2; + description "JITTERSDAVG"; } - - // Priority_12288 - enum 12288 { + enum jitterDSAvg { value 3; + description "JITTERDSAVG"; } - - // Priority_16384 - enum 16384 { + enum packetLossSD { value 4; + description "PACKETLOSSSD"; } - - // Priority_20480 - enum 20480 { + enum packetLossDS { value 5; + description "PACKETLOSSDS"; } - - // Priority_24576 - enum 24576 { + enum mos { value 6; + description "MOS"; } - - // Priority_28672 - enum 28672 { + enum timeout { value 7; + description "TIMEOUT"; } - - // Priority_32768 - enum 32768 { + enum connectionLoss { value 8; + description "CONNECTION LOSS"; } - - // Priority_36864 - enum 36864 { + enum verifyError { value 9; + description "VERIFY ERROR"; } - - // Priority_40960 - enum 40960 { + enum jitterAvg { value 10; + description "JITTERAVG"; } - - // Priority_45056 - enum 45056 { + enum icpif { value 11; + description "ICPIF"; } - - // Priority_49152 - enum 49152 { - value 12; - } - - // Priority_53248 - enum 53248 { + enum packetLateArrival { value 13; + description "PACKETLATEARRIVAL"; } - - // Priority_57344 - enum 57344 { + enum packetOutOfSequence { value 14; + description "PACKETOUTOFSEQUENCE"; } - - // Priority_61440 - enum 61440 { + enum maxOfPositiveSD { value 15; + description "MAXOFPOSITIVESD"; + } + enum maxOfNegativeSD { + value 16; + description "MAXOFNEGATIVESD"; + } + enum maxOfPositiveDS { + value 17; + description "MAXOFPOSITIVEDS"; + } + enum maxOfNegativeDS { + value 18; + description "MAXOFNEGATIVEDS"; } } - default "32768"; + default "none"; } - // Spanning tree protocols. - typedef stp_Protocol { - type enumeration { - - // Unknown protocol - enum unknown { - value 0; - } + // Request Data Size + typedef sla_ReqDataSize { + type uint32 { + range "16..17512"; + } + default "16"; + } - // MSTP - enum mstp { + typedef sla_RespProto { + type enumeration { + enum udp { value 1; + description "UDP"; } - - // RSTP - enum rstp { + enum tcp { value 2; + description "TCP"; } } + default "tcp"; } - // MST region name - typedef stp_RegName { - type string { - length "0..32"; - } - } - - // MST region revision number - typedef stp_RegRev { - - // MAX Converted to int from 0xffff - type uint16 { - range "0..65535"; + // Operation threshold + typedef sla_Threshold { + type uint32 { + range "1..60000"; } - default "0"; + default "5000"; } - // Root Options - typedef stp_Root { + // ReactionVariable: + typedef sla_ThresholdType { type enumeration { - - // Primary - enum primary { + enum never { value 1; + description "NEVER"; } - - // Secondary - enum secondary { + enum immediate { value 2; + description "IMMEDIATE"; + } + enum consecutive { + value 3; + description "CONSECUTIVE"; + } + enum xOfy { + value 4; + description "xOfy"; + } + enum average { + value 5; + description "AVERAGE"; } } - default "primary"; + default "never"; } - // Mst simulate pvst - typedef stp_Simulate { - type enumeration { + // Operation timeout + typedef sla_Timeout { + type uint32 { + range "0..604800000"; + } + default "5000"; + } - // Enabled + typedef smartcard_AdminState { + type enumeration { enum enabled { value 1; } - - // Disabled enum disabled { value 2; } } - default "enabled"; - } - - typedef stp_VlanBitmap { - type l2_VlanBitmap; - default "1-4094"; - } - - // vlan id - typedef stp_VlanId { - type uint16 { - range "1..4096"; - } - default "1"; + default "disabled"; } - // vpc state per port - typedef stp_VpcState { + typedef smartcard_SksdmasterkeyfaultBitmapT { type enumeration { - - // None - enum none { + enum noerror { value 0; + description "Unknown"; } - - // VPCPeerLink - enum vPCPeerlink { + enum MasterkeyUnavail { value 1; - } - - // VPC - enum vPC { - value 2; + description "Master-key is not configured."; } } - default "none"; - } - - // Bandwidth metric of the SVI in kilobits per second. - typedef svi_Bw { - type uint32 { - range "1..400000000"; - } - default "1000000"; - } - - // Carrier Transition Delay (like L2 interface going down in - // milliseconds - typedef svi_CarrDelay { - type uint32 { - range "0..60000"; - } - default "100"; } - // Delay metric of the SVI in tens of microseconds - typedef svi_Delay { + // AAA Cache User Timeout + typedef snmp_AaaUserCacheTimeout { type uint32 { - range "1..16777215"; + range "1..86400"; } - default "1"; + default "3600"; } - // Load averaging delay interval 1 in seconds - typedef svi_LoadIntvl1 { - type uint32 { - range "60..600"; + // ACL Name + typedef snmp_AclNameT { + type string { + pattern "[^\\s]{0,32}"; } - default "60"; } - // Load averaging delay interval 2 in seconds - typedef svi_LoadIntvl2 { - type uint32 { - range "60..600"; - } - default "300"; + // Authentication key + typedef snmp_AuthKey { + type string; } - // Load averaging delay interval 3 in seconds - typedef svi_LoadIntvl3 { - type uint32 { - range "60..600"; + typedef snmp_AuthPasswd { + type string { + length "0..130"; + pattern ".*"; } - default "60"; } - // Medium mode of the SVI - typedef svi_Medium { + // Authentication Type + typedef snmp_AuthType { type enumeration { - - // broadcast - enum bcast { - value 0; - } - - // p2p - enum p2p { + enum hmac-md5-96 { value 1; + description "HMAC-MD5-96"; + } + enum hmac-sha1-96 { + value 2; + description "HMAC-SHA1-96"; } } - default "bcast"; - } - - // MTU of the SVI - typedef svi_Mtu { - type uint32 { - range "64..9216"; - } - default "1500"; + default "hmac-md5-96"; } - // Line operational state - typedef svi_OperSt { + // Auth Type + typedef snmp_AuthTypeT { type enumeration { - - // unknown - enum unknown { + enum no { value 0; + description "No auth"; } - - // up - enum up { + enum md5 { value 1; + description "MD5 algorithm"; } - - // down - enum down { + enum sha { value 2; + description "SHA algorithm"; } + } + default "no"; + } - // shutdown - enum shutdown { - value 3; + typedef snmp_Boolean { + type enumeration { + enum no { + value 0; + description "No"; } - - // out of service - enum out-of-srvc { - value 4; + enum yes { + value 1; + description "Yes"; } } - default "down"; + default "yes"; } - // Reason for operational state being down - typedef svi_OperStQual { + // Type of access to the type of community + typedef snmp_CommAcessT { type enumeration { - - // None - enum unknown { + enum ro { value 0; + description "Read-only Access"; } - - // administratively shut down - enum admin-shut { + enum rw { value 1; + description "Read-Write Access"; } - - // vlan does not exist. - enum no-vlan { + enum unspecified { value 2; + description "Unspecified value"; } + } + default "unspecified"; + } - // invalid vlan type - enum bad-vlan_t { - value 3; - } - - // vlan is down - enum vlan-down { - value 4; - } - - // hardware programming failed (l2fm) - enum hwprog-flfm { - value 5; - } - - // hardware programming failed (event Sequence) - enum hwprog-fles { - value 6; - } - - // out of service - enum oos { - value 7; - } - - // service is down or being brought down - enum reinit { - value 8; - } - - // mtu programming failed - enum mtuprog-fail { - value 9; - } - - // VRF not usable - enum vrf-unusable { - value 10; - } - - // underlying l2 interface state us down - enum l2st-change { - value 11; - } - - // Operationally shut down - enum suspended { - value 12; - } + // Port Counter Cache Timeout + typedef snmp_CounterCacheTimeout { + type uint16 { + range "1..3600"; + } + default "50"; + } - // mac address allocation failed - enum macalloc-fail { - value 13; - } + // RMON EVENT Description + typedef snmp_DescType { + type string; + } - // non-routable VDC mode - enum nonrouted-vdc { - value 14; - } + // Engine ID + typedef snmp_EngId { + type string; + } - // interface vlan-create process failed - enum int-vlan-create-fail { - value 15; - } + // Engine ID Length + typedef snmp_EngIdLen { + type uint8 { + range "0..162"; + } + default "0"; + } - // inbMgmt Config failed - enum inbMgmt-cfg-fail { - value 16; - } + // Event Number + typedef snmp_EventIndx { + type uint16 { + range "1..65535"; } - default "unknown"; + default "1"; } - typedef svi_VlanId { + // Event Number + typedef snmp_EventNum { type uint16 { - range "0..4095"; + range "1..65535"; } - default "0"; } - // Operational state of the package - typedef swpkgs_OperState { - type enumeration { + // Group Name to which community belongs + typedef snmp_GrpNameT { + type string; + } - // No RPM packages - enum none { + // RMON HCALARM Threshold Type + typedef snmp_HcThrshld { + type uint64; + } + + // Logging enable + typedef snmp_LogEnableType { + type enumeration { + enum no { value 0; + description "Generate RMON log when the event fires"; } - - // inactive RPM package - enum inactive { + enum yes { value 1; - } - - // activated RPM package - enum activated { - value 2; - } - - // This is Inactive commit pending package.Commit on this package needs to be done to make it permanently inactive. - enum deactivated { - value 3; - } - - // Committed RPM package - enum committed { - value 4; + description "Do not Generate RMON log when the event fires"; } } - default "none"; + default "no"; } - // Package action to be selected by the user - typedef swpkgs_PackageAction { + // Notification type + typedef snmp_NotificationType { type enumeration { - - // This state is the initial state of the package.When the system boots up it will have this state. - enum init { - value 0; - } - - // Add a RPM package to the repo - enum add { + enum traps { value 1; } - - // Activate the RPM package - enum activate { + enum informs { value 2; } + } + default "traps"; + } - // Add and Activate the RPM package - enum add-activate { - value 3; - } - - // Deactivate the RPM package - enum deactivate { - value 4; - } - - // Commit the RPM package - enum commit { - value 5; - } + // RMON EVENT OWNER + typedef snmp_OwnerType { + type string; + } - // Remove the RPM package - enum remove { - value 6; - } + // SNMP Packet Size + typedef snmp_PktSizeT { + type uint16 { + range "484..17382"; } - default "init"; + default "1500"; } - // Package action result - typedef swpkgs_PackageActionResult { - type enumeration { - - // Patch action the package was succesfull. - enum success { - value 0; - } + // UDP PORT + typedef snmp_PortIdT { + type uint32 { + range "0..65535"; + } + default "162"; + } - // Patch action the package failed. - enum failed { - value 1; - } + // Privacy (encryption) key + typedef snmp_PrivKey { + type string; + } - // Not Available - enum not-available { - value 2; - } + typedef snmp_PrivPasswd { + type string { + length "0..130"; + pattern ".*"; } - default "not-available"; } - typedef syslog_Facility { + // Privacy (encryption) Type + typedef snmp_PrivType { type enumeration { - enum kern { + enum none { value 0; + description "None"; } - enum user { + enum des { value 1; + description "DES"; } - enum mail { + enum aes-128 { value 2; + description "AES-128"; } - enum daemon { - value 3; - } - enum auth { - value 4; - } - enum syslog { - value 5; - } - enum lpr { - value 6; - } - enum news { - value 7; - } - enum uucp { - value 8; - } - enum cron { - value 9; - } - enum authpriv { - value 10; - } - enum ftp { - value 11; - } - enum local0 { - value 16; - } - enum local1 { - value 17; - } - enum local2 { - value 18; - } - enum local3 { - value 19; - } - enum local4 { - value 20; - } - enum local5 { - value 21; - } - enum local6 { - value 22; - } - enum local7 { - value 23; - } - } - default "local7"; - } - - typedef syslog_FileSize { - type uint32 { - range "4096..4194304"; } - default "4194304"; + default "none"; } - typedef syslog_OperState { + // Priv Type + typedef snmp_PrivTypeT { type enumeration { - enum unknown { + enum no { value 0; + description "No auth"; } - enum available { + enum des { value 1; + description "DES algorithm"; } - enum errored { + enum aes128 { value 2; + description "AES-128 algorithm"; } } - default "unknown"; + default "no"; } - typedef syslog_Severity { + typedef snmp_SnmpLogLevel { type enumeration { - - // emergencies enum emergencies { value 0; + description "emergencies"; } - - // alerts enum alerts { value 1; + description "alerts"; } - - // critical enum critical { value 2; + description "critical"; } - - // errors enum errors { value 3; + description "errors"; } - - // warnings enum warnings { value 4; + description "warnings"; } - - // notifications enum notifications { value 5; + description "notifications"; } - - // information enum information { value 6; + description "information"; } - - // debugging enum debugging { value 7; + description "debugging"; } } - default "notifications"; + default "critical"; } - // SyslogPort - typedef syslog_SyslogPort { - type uint32 { - range "1..65535"; - } - default "514"; + // System Contact + typedef snmp_SnmpSysContact { + type string; } - typedef syslog_TimeStampFormat { - type enumeration { - enum microseconds { - value 0; - } - enum milliseconds { - value 1; - } - enum seconds { - value 2; - } - } - default "seconds"; + // System Description + typedef snmp_SnmpSysDescr { + type string; } - // Config mode - typedef sysmgr_CfgMode { - type enumeration { + // System Location + typedef snmp_SnmpSysLoc { + type string; + } - // Init - enum init { + // Snmp trap administrative state + typedef snmp_SnmpTrapSt { + type enumeration { + enum enable { value 1; + description "Enable"; } - - // Replay - enum replay { + enum disable { value 2; - } - - // Done - enum done { - value 4; + description "Disable"; } } - default "init"; + default "disable"; } - // Firmware mode - typedef sysmgr_FwMode { - type enumeration { - - // Recovery mode - enum recovery { - value 1; - } + // Trap Community type + typedef snmp_TrapCommType { + type string; + } - // Regular - enum regular { - value 2; - } + // SNMP Trap Rate + typedef snmp_TrapRateT { + type uint16 { + range "0..1000"; } - default "regular"; + default "0"; } - // Firmware type - typedef sysmgr_FwT { + // SNMPv3 security level + typedef snmp_V3SecLvl { type enumeration { - - // BIOS - enum bios { + enum unspecified { + value 0; + } + enum noauth { value 1; } - - // Kickstart - enum kickstart { + enum auth { value 2; } - - // System - enum system { + enum priv { value 3; } } - default "system"; + default "noauth"; } - // Operational data publish mode - typedef sysmgr_OperDataMode { + // SNMP version + typedef snmp_Version { type enumeration { - - // Init - enum init { + enum v1 { value 1; } - - // Publish - enum publish { + enum v2c { value 2; } - - // Done - enum done { - value 4; + enum v3 { + value 3; } } - default "init"; + default "v1"; } - // Supervisor state - typedef sysmgr_SupSt { - type enumeration { + // Community name + typedef snmp_commNameT { + type string; + } - // Unknown - enum unknown { + // host name + typedef snmp_hostNameT { + type string { + length "1..255"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + } + + // RMON ALARM Sample interval + typedef snmp_smplIntvl { + type uint32 { + range "1..700000"; + } + default "1"; + } + + // Rmon alarm sample type + typedef snmp_smplType { + type enumeration { + enum unspecified { value 0; + description "Unspecified"; } - - // Local - enum active { + enum absolute { value 1; + description "Test each sample directly"; } - - // Hot standby - enum hot-stdby { + enum delta { value 2; + description "Test delta between samples"; } + } + default "unspecified"; + } - // Cold standby - enum cold-stdby { - value 3; + // RMON HCALARM startupalarm + typedef snmp_startupAlarmType { + type enumeration { + enum unspecified { + value 0; + description "Unspecified"; } - - // Offline - enum offline { - value 4; + enum rising { + value 1; + description "rising"; } - - // Normal - enum normal { - value 5; + enum falling { + value 2; + description "falling"; } - - // Non disruptive upgrade - enum non-dis-upg { - value 6; + enum risingorfalling { + value 3; + description "rising or falling"; } } - default "unknown"; + default "unspecified"; } - // Supervisor type - typedef sysmgr_SupT { + // Type for snmp-server tcp-session auth config + typedef snmp_tcpSessionAuthT { type enumeration { - - // Local - enum local { + enum no { value 0; + description "Unspecified"; } - - // Remote - enum remote { + enum tcpSess { value 1; + description "tcp-session config"; + } + enum tcpSessAuth { + value 2; + description "tcp-session auth config"; } } - default "local"; + default "tcpSessAuth"; } - // TCPUDP Synwait Time - typedef tcpudp_SynwaitTime { - type uint16 { - range "5..300"; + // RMON ALARM Threshold Type + typedef snmp_thrshld { + type int32 { + range "-2147483648..2147483647"; } - default "30"; + default "0"; } - // Admin State - typedef telemetry_AdminState { - type enumeration { + // User name + typedef snmp_userNameT { + type string; + } - // enabled - enum enabled { - value 1; - } + typedef span_AclName { + type string { + length "0..64"; } - default "enabled"; } - // transport compression types - typedef telemetry_Compression { - type enumeration { + typedef span_Description { + type string { + length "0..32"; + } + } - // compression disabled - enum disabled { + // Monitor Description Type + // Used to set the default string to Empty and length + // to 32 characters + typedef span_ErrorInt { + type uint16 { + range "0..32"; + } + default "0"; + } + + // erspan-id + typedef span_ErspanId { + type uint16 { + range "0..1023"; + } + default "0"; + } + + // HeaderType + typedef span_HeaderVer { + type enumeration { + enum v2 { value 0; + description "Type 2"; } - - // gzip compression enabled - enum gzip { + enum v3 { value 1; + description "Type 3"; + } + enum v3-rfc-compliant { + value 2; + description "Type3 rfc-compliant"; } } - default "disabled"; } - // Data Source Type - typedef telemetry_DataSource { - type enumeration { + // ip dscp + typedef span_IpDscp { + type uint16 { + range "0..63"; + } + default "0"; + } - // DME - enum DME { + // ip ttl + typedef span_IpTtl { + type uint16 { + range "1..255"; + } + default "255"; + } + + // marker packet interval + typedef span_MarkerPktInt { + type uint16 { + range "100..1000"; + } + default "100"; + } + + // MtuValue + typedef span_MtuValue { + type uint16 { + range "64..10240"; + } + default "10240"; + } + + // Operational state qualifier + typedef span_OperStQual { + type enumeration { + enum active { value 1; + description "The session is up"; } - - // NX-API - enum NX-API { + enum no-hw-res { + value 2; + description "No hardware resource"; + } + enum no-oper-src-dst { value 3; + description "No operational src/dst"; } - - // YANG - enum YANG { + enum error { value 4; + description "Generic error"; } - - // DEFAULT - enum DEFAULT { + enum no-src { + value 5; + description "No sources configured"; + } + enum no-dst { + value 6; + description "No dest configured"; + } + enum no-src-dst { + value 7; + description "No src/dst configured"; + } + enum shut { + value 8; + description "Session admin shut"; + } + enum invalid-dst-mode { + value 9; + description "Dst in wrong mode"; + } + enum invalid-src-mode { + value 10; + description "Src in wrong mode"; + } + enum no-flow-id { + value 11; + description "No erspan-id specified"; + } + enum multi-dest-not_allowed { + value 12; + description "Multi-dst not allowed"; + } + enum invalid-vrf { + value 13; + description "No valid VRF"; + } + enum invalid-ip { + value 14; + description "No valid IP address"; + } + enum acl-disabled { value 16; + description "ACL capture feature disabled"; + } + enum acl-no-res-string { + value 17; + description "No ACL capture resourc"; + } + enum acl-vdc-mismatch { + value 18; + description "ACL capture VDC mismatched"; + } + enum no-ssn-f1-f2 { + value 19; + description "SPAN session not supported in F1/F2 only VDC"; + } + enum no-erspan-switch-id { + value 20; + description "No erspan-switch-id specified"; + } + enum no-route { + value 21; + description "No route to destination IP address"; + } + enum arp-not-resolved { + value 22; + description "ARP not resolved"; + } + enum no-eg-intf { + value 23; + description "Egress interface not resolved"; + } + enum no-svi-member { + value 24; + description "SVI member not retrieved"; + } + enum no-dce-route { + value 25; + description "FP route not found"; + } + enum no-src-mac { + value 26; + description "Source MAC not retrieved"; + } + enum no-dce-switch-id { + value 27; + description "Source switch-id not retrieved"; + } + enum no-dce-src-lid { + value 28; + description "Source LID not retrieved"; + } + enum no-dce-egress-intf { + value 29; + description "FP egress interface not retrieved"; + } + enum no-si-1qtag { + value 30; + description "Failed to retrieve .1q tag for egress SI"; + } + enum no-fpc { + value 31; + description "Failed to retrieve FPC for egress fex intf"; + } + enum unsupported-route { + value 32; + description "Unsupported route (e.g. tunnel, lo, ranger)"; + } + enum erspan-dest-failed { + value 33; + description "SPAN destination resource allocation failure"; + } + enum erspan-action-not-supported { + value 34; + description "ERSPAN specific ACE actions not supported"; + } + enum udf-not-present { + value 35; + description "UDF not qualified for TCAM region"; + } + enum pfc-ns-port { + value 36; + description "Pfc Span on NS Port"; + } + enum udf-unsupported-on-vlan { + value 37; + description "UDF based ACL filter not supported on VLAN"; + } + enum hw-err { + value 38; + description "Hardware error"; } } - default "DEFAULT"; + default "shut"; } - // No equivalent type in YANG - typedef telemetry_Encoding { + typedef span_SrcDirection { type enumeration { - - // GPB - enum GPB { + enum rx { value 1; + description "Rx Direction - Ingress"; } - - // JSON - enum JSON { + enum tx { value 2; + description "Tx Direction - Egress"; } - - // XML - enum XML { + enum both { value 3; + description "Both Tx(Egress) AND Rx(Ingress) Direction"; } } - default "GPB"; + default "both"; } - // telemetry-stream-protocol - typedef telemetry_Protocol { - type enumeration { + // Monitor Session id + typedef span_SsnId { + type uint16 { + range "1..32"; + } + } - // UDP - enum UDP { + // Monitor State Enum + typedef span_State { + type enumeration { + enum up { value 1; + description "Up"; } - - // TCP - enum TCP { + enum down { value 2; + description "Down"; } + } + default "down"; + } - // gRPC - enum gRPC { - value 3; + // Monitor Type Enum + typedef span_Type { + type enumeration { + enum local { + value 0; + description "Local"; } - - // HTTP - enum HTTP { - value 4; + enum erspan-source { + value 1; + description "ERSPAN Source"; + } + enum erspanDst { + value 2; + description "ERSPAN Destination"; } } - default "gRPC"; + default "local"; } - // Retrieve Depth - typedef telemetry_RetrieveDepth { - - // MAX Converted to int from 0xffffffff + // - Affinity bit position + typedef srte_BitPos { type uint32 { - range "0..4294967295"; + range "0..31"; } - default "0"; } - typedef telemetry_VrfName { - type string { - length "1..32"; + typedef srte_ColorVal { + type uint64 { + range "0..4294967295"; } + default "0"; } - typedef terminal_Limit { - type uint32; + // DataPlane type + typedef srte_DataPlane { + type enumeration { + enum mpls { + value 0; + description "SRTE Dataplane Type - mpls"; + } + } + default "mpls"; } - typedef terminal_TermParity { + // Disjoint type + typedef srte_DisjointType { type enumeration { - - // No parity enum none { value 0; + description "SRTE Disjoint Type - none"; } - - // Odd parity - enum odd { + enum node { value 1; + description "SRTE Disjoint Type - node"; } - - // Even parity - enum even { + enum link { value 2; + description "SRTE Disjoint Type - link"; } } default "none"; } - typedef terminal_TermSize { - type uint32; + // Encapsulation type + typedef srte_EncapsulationType { + type enumeration { + enum mpls { + value 0; + description "SRTE Encapsulation Type - mpls"; + } + } + default "mpls"; } - typedef terminal_TimeoutT { - type uint32 { - range "0..525600"; + // Oper State for Interface + typedef srte_IfOperSt { + type enumeration { + enum down { + value 0; + description "Interface Oper State - down"; + } + enum up { + value 1; + description "Interface Oper State - up"; + } } - default "30"; } - // Frequency of the test in milliseconds - typedef test_Freq { - type string; - default "0"; + typedef srte_LabelVal { + type uint32 { + range "16..471804"; + } + default "16"; } - // Status of the test - typedef test_OperSt { + // Metric type + typedef srte_Metric { type enumeration { - - // Fail - enum fail { + enum none { value 0; + description "SRTE Metric Type - none"; } - - // Indeterminate - enum indeterminate { + enum te { value 1; + description "SRTE Metric Type - te"; } - - // Interrupted - enum interrupted { + enum igp { value 2; - } - - // Pending - enum pending { - value 3; - } - - // Not supported - enum not-supp { - value 4; - } - - // Not accessible - enum not-acc { - value 5; - } - - // Pass - enum pass { - value 6; - } - - // Not tested - enum not-tested { - value 7; + description "SRTE Metric Type - igp"; } } - default "pending"; + default "none"; + } + + // Metric Value + typedef srte_MetricVal { + type uint32; } - // Qualifier - typedef test_OperStQual { + // Name + typedef srte_Name { type string; } - // IFC team needs to provide generic instance id type - typedef test_PInstId { - type naming_PrimKey; + // - option number for index and preferences + typedef srte_OptNum { + type uint32 { + range "1..65535"; + } + } + + typedef srte_PcePrecedence { + type uint32 { + range "0..255"; + } + default "255"; } - // Test trigger - typedef test_Trig { + // Protection type + typedef srte_ProtectionType { type enumeration { - - // Unspecified - enum unspecified { + enum protected { value 0; + description "SRTE Protection Type - protected"; } - - // On demand - enum on-demand { + enum unprotected { value 1; - } - - // Bootup - enum boot { - value 2; - } - - // Ongoing - enum forever { - value 4; + description "SRTE Protection Type - unprotected"; } } - default "unspecified"; + default "protected"; } - // Represents a TLV Code - // The code comes from the application & hence no validation is performed on it - typedef tlv_Code { - type uint16; + typedef srv6_LocName { + type string; } - // Specifies the Role of this system - typedef top_NodeRole { + typedef srv6_LocState { type enumeration { - enum unsupported { + enum down { value 0; + description "Lacator is down"; } - enum controller { + enum downPending { value 1; + description "Locator is down pending"; } - enum leaf { + enum up { value 2; - } - enum spine { - value 3; - } - enum vleaf { - value 4; - } - enum vip { - value 5; - } - enum protection-chain { - value 6; + description "Locator is up"; } } - default "unsupported"; } - // Remote Network Identifier - typedef top_RemoteNetworkId { - type uint32; - default "0"; + // Forwarding instance target identifier + typedef ssx_FwdInstTargetId { + type uint32 { + range "0..16777215"; + } } - // Shard redudancy node - typedef topoctrl_ShardChNode { - type address_Ip; + // Interval + typedef ssx_Interval { + type uint32 { + range "100..1000"; + } + default "1000"; } - // Hop count - typedef traceroute_Hops { - type uint8 { - range "1..255"; + // MTU + typedef ssx_Mtu { + type uint16 { + range "1500..9000"; } - default "32"; + default "1500"; } - // Order - typedef traceroute_Order { - type uint8; + // SsxMonitorName + typedef ssx_SsxMonitorName { + type string { + length "0..128"; + } } - // Path flags - typedef traceroute_PathFlags { + // SsxPort + typedef ssx_SsxPort { + type uint16; + default "49153"; + } - // bits- Using string - type string; + // SsxRecordName + typedef ssx_SsxRecordName { + type string { + length "0..128"; + } } - // Path Group id - typedef traceroute_PathGrpId { - type uint8; + // SsxRemoteNodeName + typedef ssx_SsxRemoteNodeName { + type string { + length "0..128"; + } } - // Path id - typedef traceroute_PathId { - type uint8; + // Global System id + typedef ssx_SystemId { + type uint32 { + range "0..65535"; + } + default "0"; } - // Type of the path - typedef traceroute_PathT { - type enumeration { + // Vrfname + typedef ssx_VrfName { + type l3_VrfName; + default "default"; + } - // External - enum external { + // Administrative state + typedef stp_AdminSt { + type enumeration { + enum enabled { value 1; + description "Enabled"; } - - // Internal - enum internal { + enum disabled { value 2; + description "Disabled"; } } - default "internal"; - } - - // Path count - typedef traceroute_Paths { - type uint16 { - range "1..512"; - } - default "50"; + default "enabled"; } - // Address family type - typedef track_Af { + // BPDUGuard + typedef stp_BPDUGuard { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - - // IPv4 address family - enum ipv4 { + enum enable { value 1; + description "Enable"; } - - // IPv6 address family - enum ipv6 { + enum disable { value 2; + description "Disable"; } } - default "none"; + default "default"; } - // Interface object protocol state - typedef track_IntfProtocolType { + // bpdufilter type + typedef stp_Bpdufilter { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - enum ipv4-routing { + enum enable { value 1; + description "Enable"; } - enum ipv6-routing { + enum disable { value 2; - } - enum line-protocol { - value 3; + description "Disable"; } } - default "none"; + default "default"; } - // Type of List objects threshold/boolean - typedef track_ListObj { - type enumeration { - enum none { - value 0; - } - - // Boolean 'and' function - enum and { - value 1; - } - - // Boolean 'or' function - enum or { - value 2; - } - - // Threshold percentage - enum percentage { - value 3; - } - - // Threshold weight - enum weight { - value 4; - } + // bridge priority, incremental of 4096 + typedef stp_BridgePriority { + type uint16 { + range "0..61440"; } - default "none"; + default "32768"; } - // Probe type for Sla - typedef track_ProbeState { - type enumeration { + // Path Cost 0 means auto + typedef stp_Cost { + type uint32 { + range "0..200000000"; + } + default "0"; + } - // probe state is reachable or over threshold - enum reachability { - value 0; - } + typedef stp_Diameter { + type uint8 { + range "2..7"; + } + default "2"; + } - // probe state is reachable and within threshold - enum state { - value 1; - } + // Forward Delay Time in Second + typedef stp_FwdTime { + type uint8 { + range "4..30"; } - default "state"; + default "15"; } - // Route Owner type - // Process owning the route - typedef track_RouteOwner { + // port guard + typedef stp_Guard { type enumeration { - enum none { + enum default { value 0; + description "Default"; } - - // Host Mobility Manager - enum hmm { + enum root { value 1; + description "Root"; + } + enum loop { + value 2; + description "Loop"; + } + enum none { + value 3; + description "None"; } } - default "none"; + default "default"; } - typedef track_RouteState { - type enumeration { - enum reachability { - value 0; - } + // Hello Interval in Second + typedef stp_HelloTime { + type uint8 { + range "1..10"; } - default "reachability"; + default "2"; } - // This type represents track Object ID. - typedef track_TrackId { - type uint16 { - range "1..512"; - } + // Interface controls + typedef stp_IfControl { + + type string; + default "unspecified"; } - // Administrative state of tunnel - typedef tunnel_AdminSt { + // Mode + typedef stp_IfMode { type enumeration { - - // up - enum up { + enum default { + value 0; + description "Default"; + } + enum edge { value 1; + description "Edge (host) port"; } - - // down - enum down { + enum network { value 2; + description "Network port"; + } + enum normal { + value 3; + description "Normal port"; + } + enum trunk { + value 4; + description "Edge port in trunk mode"; } } - default "up"; + default "default"; } - // Configured MTU - typedef tunnel_ConfMtu { + typedef stp_L2GStpDomId { type uint32 { - range "1..9000"; + range "0..200000000"; } - default "9000"; + default "1024"; } - // Tunnel encapsulation type - typedef tunnel_EncapT { + // LC Issu Option + typedef stp_LcIssu { type enumeration { - - // unknown - enum unknown { + enum default { value 0; + description "Default"; } - - // VXLAN encap - enum vxlan { + enum disruptive { value 1; + description "Disruptive"; } - - // iVXLAN encap - enum ivxlan { + enum non-disruptive { value 2; + description "Non-disruptive"; } - - // NV-GRE encap - enum nvgre { + enum auto { value 3; + description "Auto"; } } - default "ivxlan"; - } - - // Tunnel endpoint identifier - typedef tunnel_EpId { - type address_Ip; + default "default"; } - // Tunnel endpoint type - // Default Value computed from physical - typedef tunnel_EpT { - - // bits- Using string - type string; - default "physical"; + // Link Type + typedef stp_LinkType { + type enumeration { + enum auto { + value 1; + description "Auto"; + } + enum p2p { + value 2; + description "point-to-point"; + } + enum shared { + value 3; + description "Shared"; + } + } + default "auto"; } - // Keep alive period - typedef tunnel_KeepAlvIntvl { - type uint32 { - range "0..32767"; + // Hello Interval in Second + typedef stp_MaxAge { + type uint8 { + range "6..40"; } - default "10"; + default "20"; } - // Keep alive retry count - typedef tunnel_KeepAlvRetries { - type uint32 { + // Max Hops + typedef stp_MaxHops { + type uint8 { range "1..255"; } - default "3"; + default "20"; } - // Tunnel layer type (L2 or L3) - typedef tunnel_LayerT { + typedef stp_Mode { type enumeration { - - // l2 tunnel - enum l2 { + enum mst { value 1; + description "MST"; } - - // l3 tunnel - enum l3 { + enum pvrst { value 2; + description "PVRST"; } } - default "l2"; + default "pvrst"; } - // Operational state of tunnel - typedef tunnel_OperSt { + // Mode + typedef stp_ModeType { type enumeration { - - // up - enum up { + enum edge { value 1; + description "Edge (host) port"; } - - // down - enum down { + enum network { value 2; + description "Network port"; + } + enum normal { + value 3; + description "Normal port"; } } - default "down"; + default "normal"; } - // Tunnel types - typedef tunnel_TunnelQual { - type enumeration { - - // unknown - enum unknown { - value 0; - } - - // ivxlan - enum ivxlan { - value 1; - } - - // vxlan - enum vxlan { - value 2; - } + // Mst Id + typedef stp_MstId { + type uint16 { + range "0..4094"; } - default "ivxlan"; + default "0"; } - // Snmp trap state - typedef tunnelif_SnmpTrapSt { + // Path cost option + typedef stp_PathcostOp { type enumeration { - enum enabled { + enum auto { + value 0; + description "Auto"; + } + enum short { value 1; + description "Short"; } - enum disabled { + enum long { value 2; + description "Long"; } } - default "enabled"; + default "short"; } - // Tunnel Bandwidth in kilobits per second. - typedef tunnelif_TunnelBW { - type uint32 { - range "1..10000000"; + // port priority, incremental of 32 + typedef stp_PortPriority { + type uint8 { + range "0..224"; } - default "9"; + default "128"; } - // Tunnel mode types - typedef tunnelif_TunnelMode { + // STP port roles. + typedef stp_PortRole { type enumeration { - - // GRE/IP - enum gre/ip { - value 1; - } - - // GRE/IPV6 - enum gre/ipv6 { - value 6; - } - - // IPIP/IP - enum ipip/ip { - value 7; - } - - // IPIP/IPV6 - enum ipip/ipv6 { - value 8; - } - - // IPIP/Decapsulate Any/IP - enum ipip/dcapany/ip { - value 9; + enum unknown { + value 0; + description "Unknown role"; } - - // IPIP/Decapsulate Any/IPV6 - enum ipip/dcapany/ipv6 { - value 10; + enum root { + value 1; + description "Root port"; } - - // IPV6IP - enum ipv6ip { - value 11; + enum alternate { + value 2; + description "Alternate port"; } - - // IPV6IP/Decapsulate Any - enum ipv6ip/dcapany { - value 12; + enum designated { + value 3; + description "Designated port"; } - - // IPV6/IPV6 - enum ipv6ipv6 { - value 13; + enum backup { + value 4; + description "Backup port"; } - - // IPV6IPV6/Decapsulate Any - enum ipv6ipv6/dcapany { - value 14; + enum master { + value 5; + description "Master port"; } } - default "gre/ip"; - } - - // Configured MTU - typedef tunnelif_TunnelMtu { - type uint32 { - range "64..9196"; - } - default "1476"; } - // Operational state of tunnel - typedef tunnelif_TunnelOperSt { + // STP port states. + typedef stp_PortState { type enumeration { - - // up - enum up { + enum unknown { + value 0; + description "Unknown state"; + } + enum discarding { value 1; + description "Discarding state"; } - - // down - enum down { + enum learning { value 2; + description "Learning state"; + } + enum forwarding { + value 3; + description "Forwarding state"; + } + enum disabled { + value 4; + description "Disabled state"; } } - default "down"; } - // Reasons for line protcol state being down. - typedef tunnelif_TunnelOperStQual { + // bridge priority, incremental of 4096 + typedef stp_Priority { type enumeration { - - // unknown - enum unknown { + enum 0 { value 0; + description "Priority_0"; } - - // No reason - enum none { + enum 4096 { value 1; + description "Priority_4096"; } - - // Initializing hardware - enum initing { + enum 8192 { value 2; + description "Priority_8192"; } - - // Tunnel configuration is incomplete - enum incomp-conf { + enum 12288 { value 3; + description "Priority_12288"; } - - // Duplicate tunnel config - enum dup-conf { + enum 16384 { value 4; + description "Priority_16384"; } - - // tunnel mode is not configured - enum no-mode { + enum 20480 { value 5; + description "Priority_20480"; } - - // Admin state is down - enum admin-down; - - // Tunnel source down - enum src-down { + enum 24576 { + value 6; + description "Priority_24576"; + } + enum 28672 { value 7; + description "Priority_28672"; } - - // Source IP could not be resolved - enum src-unres { + enum 32768 { value 8; + description "Priority_32768"; } - - // Destination is not configured - enum no-dest { + enum 36864 { value 9; + description "Priority_36864"; } - - // Destination IP address unresolvable - enum desip-unres { + enum 40960 { value 10; + description "Priority_40960"; } - - // Destination unreachable - enum dest-unreach; - - // Source interface and tunnel VRF mismatch - enum vrf-mismatch { + enum 45056 { + value 11; + description "Priority_45056"; + } + enum 49152 { value 12; + description "Priority_49152"; } - - // Tunnel transport VRF is forward referencing - enum vrf-fwdref { + enum 53248 { value 13; + description "Priority_53248"; } - - // VRF is down - enum vrf-down { + enum 57344 { value 14; + description "Priority_57344"; } - - // MTU programming failed - enum mtu-error { + enum 61440 { value 15; - } - - // Hardware programming failed - enum hwprog-fail; - - // Source is not configured - enum no-src { - value 17; + description "Priority_61440"; } } - default "unknown"; + default "32768"; } - // Tunnel Interface Options - typedef tunnelif_TunnelOption { + // Spanning tree protocols. + typedef stp_Protocol { type enumeration { - - // unknown enum unknown { value 0; + description "Unknown protocol"; } - - // delete on failure - enum del_on_fail { + enum mstp { value 1; + description "MSTP"; } - - // user configured mtu - enum usr_cfg_mtu { + enum rstp { value 2; + description "RSTP"; } } - default "unknown"; } - // Configured age timer for Tunnel PMTU - typedef tunnelif_TunnelPMTUAge { - type uint32 { - range "0..30"; + // MST region name + typedef stp_RegName { + type string { + length "0..32"; } - default "10"; } - // Tunnel Path MTU Discovery - typedef tunnelif_TunnelPMTUD { + // MST region revision number + typedef stp_RegRev { + + type uint16 { + range "0..65535"; + } + default "0"; + } + + // Root Options + typedef stp_Root { type enumeration { + enum primary { + value 1; + description "Primary"; + } + enum secondary { + value 2; + description "Secondary"; + } + } + default "primary"; + } - // enabled + // Root Mode config + typedef stp_RootMode { + type enumeration { enum enabled { value 1; + description "Configs will be updated in root mode"; } - - // disabled enum disabled { - value 2; + value 0; + description "Configs in normal mode and not root"; } } default "disabled"; } - // Tunnel Source Direct - typedef tunnelif_TunnelSrcDirect { + // Root Type for Bridge + typedef stp_RootType { type enumeration { - - // enabled - enum enabled { + enum none { + value 0; + description "STP normal root"; + } + enum primary { value 1; + description "STP primary root"; } - - // disabled - enum disabled { + enum secondary { value 2; + description "STP secondary root"; } } - default "disabled"; + default "none"; } - // Tunnel TTL (from 0 to 255) - typedef tunnelif_TunnelTTL { - type uint32 { - range "0..255"; + // Mst simulate pvst + typedef stp_Simulate { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - default "0"; + default "enabled"; } - // Configured Tunnel transport VRF - typedef tunnelif_TunnelTransVRF { - type l3_VrfName; - default "default"; - } - - // Configured min-MTU for Tunnel PMTU - typedef tunnelif_TunnelminPMTU { - type uint32 { - range "64..9196"; - } - default "64"; - } - - // Administrative state - typedef udld_AdminSt { + typedef stp_SimulateIf { type enumeration { - - // Enabled - enum enabled { - value 1; - } - - // Disabled - enum disabled { - value 2; + enum default { + value 0; + description "Default"; } - } - default "disabled"; - } - - // Msg Interval - typedef udld_MsgIntvl { - type uint8 { - range "7..90"; - } - default "15"; - } - - // Operational state - typedef udld_OperSt { - type enumeration { - - // Enabled enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } - default "disabled"; + default "default"; } - typedef udld_PktDirection { - type enumeration { - - // send - enum send { - value 0; - } + typedef stp_VlanBitmap { + type l2_VlanBitmap; + } - // recv - enum recv { - value 1; - } + // vlan id + typedef stp_VlanId { + type uint16 { + range "1..4096"; } - default "send"; + default "1"; } - typedef udld_PortEnable { + // vpc state per port + typedef stp_VpcState { type enumeration { - - // Port Enabled - enum port-enabled { + enum none { value 0; + description "None"; } - - // Port Fiber Disabled - enum port-fiber-disabled { + enum vPCPeerlink { value 1; + description "VPCPeerLink"; } - - // Port Default - enum port-default { + enum vPC { value 2; + description "VPC"; } } - default "port-default"; - } - - // Label Table Client Flags - typedef ulib_ClientFlag { - - // bits- Using string - type string; + default "none"; } - // Max Dynamic label - typedef ulib_DynLblMax { + // Bandwidth metric of the SVI in kilobits per second. + typedef svi_Bw { type uint32 { - range "16..471804"; + range "1..400000000"; } - default "471804"; + default "1000000"; } - // Min Dynamic label - typedef ulib_DynLblMin { + // Carrier Transition Delay (like L2 interface going down in + // milliseconds + typedef svi_CarrDelay { type uint32 { - range "16..471804"; + range "0..60000"; } - default "16"; + default "100"; } - // Label Count Value - typedef ulib_LabelCnt { + // Delay metric of the SVI in tens of microseconds + typedef svi_Delay { type uint32 { - range "0..471804"; + range "1..16777215"; } - default "0"; + default "1"; } - // Label Range Value - typedef ulib_LabelVal { + // Load averaging delay interval 1 in seconds + typedef svi_LoadIntvl1 { type uint32 { - range "0..471804"; + range "60..600"; } + default "60"; } - // 32 bit Counter - typedef urib_Counter32 { - type uint32; - } - - typedef urib_NhFlags4 { - - // bits- Using string - type string; - } - - typedef urib_NhFlags6 { - - // bits- Using string - type string; - } - - typedef urib_RouteFlags4 { - - // bits- Using string - type string; - } - - typedef urib_RouteFlags6 { - - // bits- Using string - type string; - } - - // Application Sap Id - typedef vpc_AppId { - type uint32; - } - - // Track Object - typedef vpc_AutoRecoveryIntvl { + // Load averaging delay interval 2 in seconds + typedef svi_LoadIntvl2 { type uint32 { - range "60..86400"; - } - default "240"; - } - - // Batched vpc inventory - typedef vpc_BatchedVpcInv { - - // bits- Using string - type string; - } - - // vPC Compatibility Reason Code - typedef vpc_CompatQual { - type uint32; - } - - // vPC Compatability Status - typedef vpc_CompatSt { - type enumeration { - - // success - enum pass { - value 0; - } - - // failed - enum fail { - value 1; - } - - // Not Applicable - enum notDone { - value 2; - } + range "60..600"; } - default "notDone"; + default "300"; } - // Peer dead interval in seconds - typedef vpc_DeadIntvl { + // Load averaging delay interval 3 in seconds + typedef svi_LoadIntvl3 { type uint32 { - range "5..600"; - } - default "200"; - } - - // Delay Peer Link Bringup - typedef vpc_DelayPeerLinkBringup { - type uint16 { - range "0..7200"; - } - default "0"; - } - - // Delay Restore SVI - typedef vpc_DelayRestoreSVI { - type uint16 { - range "1..3600"; - } - default "10"; - } - - // Delay Restore vPC - typedef vpc_DelayRestoreVPC { - type uint16 { - range "1..3600"; - } - default "30"; - } - - // VPC domain ID - typedef vpc_DomId { - type uint16 { - range "1..1000"; + range "60..600"; } + default "60"; } - // Domain operational state - // Default Value computed from not-applicable - typedef vpc_DomOperSt { - - // bits- Using string - type string; - default "not-applicable"; - } - - // Dual Active Status - typedef vpc_DualActiveSt { + // Medium mode of the SVI + typedef svi_Medium { type enumeration { - - // 0 - enum false { + enum bcast { value 0; + description "broadcast"; } - - // 1 - enum true { + enum p2p { value 1; + description "p2p"; } } + default "bcast"; } - typedef vpc_ExcludeSVI { - type l2_VlanBitmap; - default "0"; - } - - typedef vpc_ExcludeVLAN { - type l2_VlanBitmap; - default "0"; - } - - // Flush Timeout in seconds - typedef vpc_FlushTout { - type uint32 { - range "3..10"; - } - default "3"; - } - - // vPC number - typedef vpc_Id { - type uint16 { - range "1..16384"; - } - } - - // Keepalive Interval in milli-seconds - typedef vpc_KeepaliveInterval { - type uint32 { - range "400..10000"; - } - default "1000"; - } - - // Keepalive operational state - // Default Value computed from 0 - typedef vpc_KeepaliveOperSt { - - // bits- Using string - type string; - default "0"; - } - - // Keepalive Timeout in seconds - typedef vpc_KeepaliveTout { + // MTU of the SVI + typedef svi_Mtu { type uint32 { - range "3..20"; - } - default "5"; - } - - // L3 peer-router syslog interval - typedef vpc_L3PeerRouterSyslogInterval { - type uint16 { - range "1..3600"; + range "64..9216"; } - default "3600"; + default "1500"; } - // vPC operational Status - typedef vpc_OperSt { + // Line operational state + typedef svi_OperSt { type enumeration { - - // Unknown enum unknown { value 0; + description "unknown"; } - - // Down - enum down { + enum up { value 1; + description "up"; } - - // Up - enum up { + enum down { value 2; + description "down"; } - - // Not configured - enum noCfg { + enum shutdown { value 3; + description "shutdown"; + } + enum out-of-srvc { + value 4; + description "out of service"; } } - default "unknown"; - } - - // Orphan port list TODO: change this to be an array of uint32 once we have the - // required datatype defined by Shrey. - typedef vpc_OrphanPortList { - type uint32; - } - - // Param Length - typedef vpc_ParamLen { - type uint32; + default "down"; } - // Param Type - typedef vpc_ParamType { + // Reason for operational state being down + typedef svi_OperStQual { type enumeration { - - // Unknown enum unknown { value 0; + description "None"; } - - // Type 1 - enum type-1 { + enum admin-shut { value 1; + description "administratively shut down"; } - - // Type 2 - enum type-2 { + enum no-vlan { value 2; + description "vlan does not exist."; + } + enum bad-vlan_t { + value 3; + description "invalid vlan type"; + } + enum vlan-down { + value 4; + description "vlan is down"; + } + enum hwprog-flfm { + value 5; + description "hardware programming failed (l2fm)"; + } + enum hwprog-fles { + value 6; + description "hardware programming failed (event Sequence)"; + } + enum oos { + value 7; + description "out of service"; + } + enum reinit { + value 8; + description "service is down or being brought down"; + } + enum mtuprog-fail { + value 9; + description "mtu programming failed"; + } + enum vrf-unusable { + value 10; + description "VRF not usable"; + } + enum l2st-change { + value 11; + description "underlying l2 interface state us down"; + } + enum suspended { + value 12; + description "Operationally shut down"; + } + enum macalloc-fail { + value 13; + description "mac address allocation failed"; + } + enum nonrouted-vdc { + value 14; + description "non-routable VDC mode"; + } + enum int-vlan-create-fail { + value 15; + description "interface vlan-create process failed"; + } + enum inbMgmt-cfg-fail { + value 16; + description "inbMgmt Config failed"; } } default "unknown"; } - // Param Value - typedef vpc_ParamVal { - type mtx_array_uint8; - } - - // vPC peer Status - typedef vpc_PeerSt { - type enumeration { - - // Not configured - enum noCfg { - value 0; - } - - // Down - enum down { - value 1; - } - - // Up - enum up { - value 2; - } + typedef svi_VlanId { + type uint16 { + range "0..4095"; } + default "0"; } - // vPC peer status reason code - typedef vpc_PeerStQual { + // Operational state of the package + typedef swpkgs_OperState { type enumeration { - - // Success - enum success { + enum none { value 0; + description "No RPM packages"; } - - // Uplinks down - enum uplinks-down { + enum inactive { value 1; + description "inactive RPM package"; } - - // Route down - enum route-down { + enum activated { value 2; + description "activated RPM package"; } - - // Peer unreachable - enum peer-unrch { + enum deactivated { value 3; + description "This is Inactive commit pending package.Commit on this package needs to be done to make it permanently inactive."; } - - // Compatibility Failed - enum compat-fail { + enum committed { value 4; + description "Committed RPM package"; } - - // Election error - enum election-err { + enum inactive_base { value 5; + description "inactive base RPM package"; } - - // Keepalive not Operational - enum oob-not-up { + enum activated_base { value 6; + description "activated base RPM package"; + } + enum activated_thirdparty { + value 7; + description "activated thirdparty rootfs package"; } } + default "none"; } - // Peer version - typedef vpc_PeerVersion { - type uint32; - } - - // Precedence type - typedef vpc_PrecType { + // Package action to be selected by the user + typedef swpkgs_PackageAction { type enumeration { - - // Network - enum network { + enum init { value 0; + description "This state is the initial state of the package.When the system boots up it will have this state."; } - - // Internet - enum internet { + enum add { value 1; + description "Add a RPM package to the repo"; } - - // Critical - enum critical { + enum activate { value 2; + description "Activate the RPM package"; } - - // Flash override - enum flash-override { + enum add-activate { value 3; + description "Add and Activate the RPM package"; } - - // Flash - enum flash { + enum deactivate { value 4; + description "Deactivate the RPM package"; } - - // Immediate - enum immediate { + enum commit { value 5; + description "Commit the RPM package"; } - - // Priority - enum priority { + enum remove { value 6; + description "Remove the RPM package"; } - - // Routine - enum routine { + enum add-gpg { value 7; + description "Add the gpg-key"; + } + enum verify-package { + value 8; + description "Verify active/inactive package for signature"; + } + enum verify-rpm { + value 9; + description "Verify RPM for signature"; } } - default "routine"; - } - - // Precedence value - typedef vpc_PrecValue { - type uint8 { - range "0..7"; - } - default "6"; + default "init"; } - // Role - typedef vpc_Role { + // Package action result + typedef swpkgs_PackageActionResult { type enumeration { - - // Election-not-done - enum election-not-done { + enum success { value 0; + description "Patch action the package was succesfull."; } - - // Master - enum master { + enum failed { value 1; + description "Patch action the package failed."; } - - // Slave - enum slave { + enum not-available { value 2; + description "Not Available"; } } - default "election-not-done"; - } - - // Role Priority - typedef vpc_RolePrio { - type uint16 { - range "1..65535"; - } - default "32667"; + default "not-available"; } - // Summarized Role - typedef vpc_SummRole { + // Reset reason + typedef syshist_RstRsn { type enumeration { - - // None Established - enum election-not-done { + enum unknown { value 0; + description "Unknown"; } - - // Primary - enum cfg-master-oper-master { + enum reboot { value 1; + description "Kernel Reboot"; } - - // Primary, Operational Secondary - enum cfg-master-oper-slave { + enum watchdog { value 2; + description "Watchdog Timeout"; } - - // Secondary, Operational Primary - enum cfg-slave-oper-master { + enum sysmgr { value 3; + description "Reset Requested due to Fatal System Error"; } - - // Secondary - enum cfg-slave-oper-slave { + enum mod-err { value 4; + description "Reset Requested due to Fatal Module Error"; + } + enum pwr-cfg { + value 5; + description "Configured Power down"; + } + enum temp-alaram { + value 6; + description "Power down due to temperature sensor policy trigger"; + } + enum user-switchover { + value 7; + description "Reset triggered due to Switchover Request by User"; + } + enum upg-err { + value 8; + description "Reset Requested due to Fatal Upgrade Error"; + } + enum reload { + value 9; + description "Reset Requested by CLI command reload"; + } + enum sprom-upd { + value 10; + description "Reset Requested due to SPROM update"; + } + enum sys-cfg-dwn { + value 11; + description "System Reset due to Element Manager"; + } + enum clock { + value 12; + description "System Reset due to Clock failure"; + } + enum halt { + value 13; + description "Kernel Halt"; + } + enum redundancy { + value 14; + description "Reset Requested by Redundancy"; + } + enum ha-switchover { + value 15; + description "Reset triggered due to HA policy of Switchover"; + } + enum ha-reset { + value 16; + description "Reset triggered due to HA policy of Reset"; + } + enum pfm-rtime { + value 17; + description "Power down triggered due to Platform manager runtime error"; + } + enum pfm-power-dwn { + value 18; + description "Power down triggered due to Platform manager event"; + } + enum panic { + value 19; + description "Kernel Panic"; + } + enum mgmt-app { + value 20; + description "Reset Requested by management application"; + } + enum hw { + value 21; + description "Reset triggered due to Hardware Error"; + } + enum asic { + value 22; + description "Reset performed due to component Error"; + } + enum redun-channel { + value 23; + description "Reset triggered due to bad redundancy channel"; + } + enum sys-health { + value 24; + description "Reset due to bad HW detected by System Health"; + } + enum eobc { + value 25; + description "Reset triggered due to bad backplane communication channel"; + } + enum boot-err { + value 27; + description "Reset (powered-down) because module does not boot"; + } + enum no-bootflash { + value 28; + description "Reset (powered-down) because there is no bootflash"; + } + enum netboot-err { + value 29; + description "Reset (powered-down) because netboot failed"; + } + enum bootflash-corrupt { + value 30; + description "Reset (powered-down) because bootflash access failed"; + } + enum installer { + value 31; + description "Reset by installer"; + } + enum epld { + value 33; + description "Power Down/UP epld upgrade process"; + } + enum sigkill-fail { + value 34; + description "Reset triggered due to failure to respond to SIGKILL"; + } + enum sys-gen-fail { + value 35; + description "Reset triggered by System Manager for generic failure"; + } + enum clock-switchover { + value 37; + description "VegasLC Reset due to Clock SwitchOver"; + } + enum insufficient-resource { + value 38; + description "Reset (powered-down) because of insufficient resources (DI)"; + } + enum incompat-config { + value 43; + description "Reset (powered-down) because of incompatible configuration"; + } + enum lcm-unknown { + value 44; + description "Unknown reason"; + } + enum lcm-ha-restart { + value 45; + description "HA System restart"; + } + enum lcm-haswitchover-done { + value 46; + description "HA-Switchover done"; + } + enum lcm-boot-srg-timeout { + value 47; + description "SRG info response timeout"; + } + enum lcm-coredump { + value 48; + description "Core dump initiation"; + } + enum lcm-disruptive-upg { + value 49; + description "Disruptive upgrade"; + } + enum lcm-lc-fail { + value 50; + description "Line card failure"; + } + enum lcm-hitless-mod-rem { + value 51; + description "Hitless module removal"; + } + enum lcm-hitless-pwr-dwn { + value 52; + description "Hitless power down"; + } + enum lcm-hitless-proc-notice { + value 53; + description "Catastrophic error from LC"; + } + enum lcm-hitless-reg-fail { + value 54; + description "Hitless registration failed"; + } + enum lcm-hitless-timeout { + value 55; + description "Hitless upgrade timeout"; + } + enum lcm-img-upg-timeout { + value 56; + description "Line card image upgrade (failure)"; + } + enum lcm-img-upgsuccess { + value 57; + description "Line card image upgrade (success)"; + } + enum lcm-lc-ins-seq-fail { + value 58; + description "LC insertion sequence failure"; + } + enum lcm-hitless-upg-fail { + value 59; + description "Hitless upgrade failed"; + } + enum lcm-lc-no-resp { + value 60; + description "Line card not responding"; + } + enum lcm-lc-reg-more3 { + value 61; + description "Line card 3+ registration"; + } + enum lcm-lc-reg-timeout { + value 62; + description "Line card registration timeout"; + } + enum lcm-runtime-diag-fail { + value 63; + description "Runtime diagnostic failure"; + } + enum lcm-runtime-diag-timeout { + value 64; + description "Runtime diagnostic timeout"; + } + enum lcm-seeprom-timeout { + value 65; + description "Line card SEEPROM contents response timeout"; + } + enum lcm-proc-notice { + value 66; + description "Line card catastrophic error"; + } + enum lcm-save-state-fail { + value 67; + description "Save state response (failure)"; + } + enum lcm-hitfull-img-check { + value 68; + description "Hitful image compatibility check"; + } + enum lcm-img-check-pwr-cycle { + value 69; + description "Image compatibility check (action:powercycle)"; + } + enum lcm-img-check-pwr-dwn { + value 70; + description "Image compatibility check (action:powerdown)"; + } + enum lcm-img-check-switch-over { + value 71; + description "Switchover : Image compatibility check"; + } + enum lcm-power-down { + value 72; + description "Module is powered down or power cycled"; + } + enum lcm-sup-rem { + value 73; + description "Supervisor card is removed or power cycled"; + } + enum lcm-lc-rem { + value 74; + description "Module is removed"; + } + enum lcm-unknown-mod { + value 75; + description "Unknown line card insertion"; + } + enum lcm-srg-timeout { + value 76; + description "SRG infor response timeout"; + } + enum lcm-async-notice-fail { + value 77; + description "Stop async notice failed"; + } + enum lcm-switchover-fail { + value 78; + description "Switchover failed"; + } + enum lcm-timeout { + value 79; + description "Addon image response timeout"; + } + enum lcm-srg-incompat { + value 80; + description "Upgraded SRG incompatible"; + } + enum outofservice { + value 86; + description "Out of service"; + } + enum sup-dev-err { + value 87; + description "Supervisor Device Error"; + } + enum issu-restart { + value 88; + description "Reset due to upgrade"; + } + enum ins-seq-fail-pwr-dwn { + value 89; + description "Reset (powered-down) due to insertion sequence failed"; + } + enum no-sup { + value 92; + description "Reset due to no sup"; + } + enum bad-volt { + value 93; + description "Reset due to Bad Voltage"; + } + enum bad-bus-volt { + value 94; + description "Reset due to bad system bus voltage"; + } + enum bad-intermediate-bus-volt { + value 95; + description "Reset due to bad intermediate bus voltage"; + } + enum psp { + value 96; + description "Reset due to CMP"; + } + enum eem-pwr-dwn { + value 97; + description "Powered-down due to EEM event policy trigger"; + } + enum usd-fail { + value 98; + description "Reset due to USD Failure"; + } + enum ejector { + value 99; + description "All the ejectors are OPEN"; + } + enum sys-rst { + value 100; + description "System reset by active sup (by writing to PMFPGA regs)"; + } + enum push-button { + value 101; + description "linecard reset by push button"; + } + enum policy-reset { + value 103; + description "Policy trigger initiated reset: "; + } + enum policy-fan { + value 104; + description "Powered-down due to fan policy trigger"; + } + enum chassis-rst { + value 105; + description "Chassis reset by Sup"; + } + enum max-switchover { + value 107; + description "Reset (powered-down) since maximum number of swovers were exceeded"; + } + enum switchover-timeout { + value 108; + description "Reset since switchover timeout"; + } + enum sysmgr-timeout { + value 109; + description "Reset of standby by active sup due to sysmgr timeout"; + } + enum unknown-mod { + value 110; + description "Unsupported/Unknown Module"; + } + enum mod-fail { + value 111; + description "Module Failed"; + } + enum mod-pwr-cycle { + value 112; + description "Module PowerCycled"; + } + enum card-incompat { + value 113; + description "Module not supported in this chassis"; + } + enum idprom-err { + value 114; + description "Bootup error accessing module IDPROM"; + } + enum unspecified { + value 115; + description "Non-specific deadend error, check platform int error"; + } + enum no-plugin { + value 117; + description "plugin absent/ not loaded"; + } + enum sw-card-id-unknown { + value 118; + description "Unknown card (Could not get software-card-id)"; + } + enum mod-fail-pwr-up { + value 119; + description "Unable to power up card (Power-OK not set)"; + } + enum max-bring-up-exceed { + value 120; + description "failure(powered-down) since maximum number of bringups were exceeded"; + } + enum enm-enabled { + value 121; + description "Ethernet end-host mode enabled"; + } + enum enm-disabled { + value 122; + description "Ethernet end-host mode disabled"; + } + enum vpd-read-failure { + value 123; + description "IBM VPD read Failed"; + } + enum inc-cos-mod { + value 124; + description "powered-down since linecard does not support the cos mode"; + } + enum epld-upg-nw-crd-mode { + value 125; + description "Power Down/UP epld upgrade process"; + } + enum deep-sleep { + value 126; + description "Preparing to enter deep sleep mode"; + } + enum fcoe-featureset-absent { + value 127; + description "(powered-down) FCOE feature-set absent(disabled or uninstalled)"; + } + enum power-cycle-button { + value 128; + description "Power cycle button pressed"; + } + enum config-reset-button { + value 129; + description "Configuration reset button pressed"; + } + enum agni-app-init-reload { + value 130; + description "Reload Initiated by application"; + } + enum cpu-caterr-signal { + value 131; + description "CPU CATERR Signal Asserted"; + } + enum patch-install { + value 132; + description "Reset due to patch install"; + } + enum fastboot { + value 133; + description "Reset due to fast-reload"; + } + enum no-sc { + value 134; + description "Powered down due to absence of system-controller module"; + } + enum no-fm { + value 135; + description "Powered down due to absence of fabric module"; + } + enum lc-breakout { + value 136; + description "Reloaded since breakout was configured/deconfigured on the LC"; + } + enum hg-link-down { + value 137; + description "Reloaded since a HG link went down on this LC"; + } + enum slot-id-parity-err { + value 138; + description "Reset due to FPGA Slot ID parity error"; + } + enum power-error { + value 139; + description "Reset due to Power error"; + } + enum firmware-upgrade { + value 140; + description "Reload due to Firmware upgrade"; + } + enum unsipp-dist-arbit-mode { + value 141; + description "Powered-down since linecard/spine/supervisor doesn't support distributed arbitration mode"; + } + enum enhanced-virtualization-enabled { + value 142; + description "switch mode enhanced-virtualization enabled"; + } + enum enhanced-virtualization-disabled { + value 143; + description "switch mode enhanced-virtualization disabled"; + } + enum no-fm-connectivity { + value 144; + description "Powered down due to no connectivity to fabric mode"; + } + enum fabric-mode { + value 145; + description "Powered down due to fabric configured in FRM mode"; + } + enum epc-failure { + value 146; + description "Reset triggered due to bad (EPC) packet communication channel"; + } + enum all-vdcs-not-online { + value 147; + description "Reset (powered-down) because all VDCs for module need to be online"; + } + enum pfm-auth-fail { + value 148; + description "Reset (powered down) due to module authentication failure"; + } + enum pfm-startauth-fail { + value 149; + description "Reset (powered down) due to module authentication start failure"; + } + enum sys-dme-clean-config-reset { + value 150; + description "Dme clean config reset"; + } + enum pf-eem-policy-trigger-fan-air-flow { + value 151; + description "Powered-down due to fan air flow policy trigger"; + } + enum standby-reload-symc-failure { + value 152; + description "standby reset due to failure on large MOs sync"; + } + enum issu-non-disruptive-restart { + value 153; + description "Reset due to non-disruptive upgrade"; + } + enum afm-tcam-remplate-apply { + value 154; + description "Reload due to change in TCAM service-template"; + } + enum interop-change-request { + value 155; + description "Reload due to interop-mode change"; + } + enum soft-reload-via-crash { + value 156; + description "Reset due to soft reload via Crash"; + } + enum soft-reload-via-cli { + value 157; + description "Reset due to soft reload via CLI"; + } + enum soft-reload-fail-reload { + value 158; + description "Reset due to soft reload attempt failure"; + } + enum act2-auth-failure { + value 159; + description "Reset due to ACT2 authentication failure"; + } + enum un-asic-mem-error { + value 160; + description "Multiple uncorrectable ASIC memory errors detected"; + } + enum not-defined { + value 161; + description "Not defined"; } } - default "election-not-done"; - } - - // System Priority - typedef vpc_SysPrio { - type uint16 { - range "1..65535"; - } - default "32667"; - } - - // Time - typedef vpc_Time { - type string; - } - - // ToS byte - typedef vpc_TosByte { - type uint8 { - range "0..255"; - } - default "0"; } - // ToS config type - typedef vpc_TosCfgType { - type enumeration { + // Reset reason qualifier + typedef syshist_RstRsnQual { + type string; + } - // No configuration - enum noCfg { + typedef syshist_RstService { + type string; + } + + typedef syslog_Facility { + type enumeration { + enum kern { value 0; } - - // ToS byte - enum tos-byte { + enum user { value 1; } - - // ToS value - enum tos-value { + enum mail { value 2; } - - // ToS type - enum tos-type { + enum daemon { value 3; } - - // Precedence Type - enum precedence-type { + enum auth { value 4; } - - // Precedence Value - enum precedence-value { + enum syslog { value 5; } - } - default "noCfg"; - } - - // ToS type - typedef vpc_TosType { - type enumeration { - - // Min delay - enum min-delay { - value 0; + enum lpr { + value 6; } - - // Max throughput - enum max-throughput { - value 1; + enum news { + value 7; } - - // Max Reliability - enum max-reliability { - value 2; + enum uucp { + value 8; } - - // Min Monetary Cost - enum min-monetary-cost { - value 3; + enum cron { + value 9; } - - // Normal - enum normal { - value 4; + enum authpriv { + value 10; + } + enum ftp { + value 11; + } + enum local0 { + value 16; + } + enum local1 { + value 17; + } + enum local2 { + value 18; + } + enum local3 { + value 19; + } + enum local4 { + value 20; + } + enum local5 { + value 21; + } + enum local6 { + value 22; + } + enum local7 { + value 23; } } - default "normal"; - } - - // ToS value - typedef vpc_TosValue { - type uint8 { - range "0..15"; - } - default "0"; + default "local7"; } - // Track Object - typedef vpc_Track { - type uint16 { - range "0..500"; + typedef syslog_FileSize { + type uint32 { + range "4096..4194304"; } - default "0"; + default "4194304"; } - // Virtual IP Announcement Delay - typedef vpc_VIpAnnounceDelay { - type uint16 { - range "30..600"; + typedef syslog_OperState { + type enumeration { + enum unknown { + value 0; + } + enum available { + value 1; + } + enum errored { + value 2; + } } - default "45"; + default "unknown"; } - // admin state - typedef vrrp_AdminSt { + typedef syslog_OriginIdType { type enumeration { - - // Vrrp id shut - enum disabled { + enum unknown { + value 0; + } + enum hostname { value 1; } - - // Vrrp id no shut - enum enabled { + enum ip { value 2; } + enum string { + value 3; + } } - default "disabled"; + default "unknown"; } - // advertise interval - typedef vrrp_AdvIntvl { - type uint8 { - range "1..255"; + typedef syslog_OriginIdValue { + type string { + length "0..199"; + pattern ".*(\\.[A-Za-z]([A-Za-z0-9-]*[A-Za-z0-9])?)*.*|.*(.*25[0-5]|.*2[0-4][0-9]|.*1[0-9][0-9]|.*[1-9][0-9]|.*[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.(25[0-5].*|2[0-4][0-9].*|1[0-9][0-9].*|[1-9][0-9].*|[0-9].*).*"; } - default "1"; } - // authentication text type - typedef vrrp_AuthTextType { - type string { - length "0..8"; + // Type definition for RfcStrcic + typedef syslog_RfcStrictFormat { + type enumeration { + enum legacy { + value 0; + } + enum 5424 { + value 1; + } } + default "legacy"; } - // authentication type - typedef vrrp_AuthType { + typedef syslog_Severity { type enumeration { - - // no authentication - enum none { + enum emergencies { + value 0; + description "emergencies"; + } + enum alerts { value 1; + description "alerts"; } - - // plain text - enum simple { + enum critical { value 2; + description "critical"; + } + enum errors { + value 3; + description "errors"; + } + enum warnings { + value 4; + description "warnings"; + } + enum notifications { + value 5; + description "notifications"; + } + enum information { + value 6; + description "information"; + } + enum debugging { + value 7; + description "debugging"; } } - default "none"; + default "notifications"; } - // group state - typedef vrrp_GroupSt { - type enumeration { + // SyslogPort + typedef syslog_SyslogPort { + type uint32 { + range "1..65535"; + } + default "514"; + } - // Vrrp Group state Init - enum init { + typedef syslog_TimeStampFormat { + type enumeration { + enum microseconds { value 0; } - - // vrrp group state backup - enum backup { + enum milliseconds { value 1; } - - // vrrp group state master - enum master { + enum seconds { value 2; } } + default "seconds"; } - // group state qualifier - typedef vrrp_GroupStQual { + // Admin status of sysmgr config properties + typedef sysmgr_CfgAdminSt { type enumeration { - - // Vrrp group state up - enum up { + enum unknown { value 0; + description "unknown"; } - - // Vrrp group state down - enum down { + enum enable { value 1; + description "enable"; } - - // vrrp group state down no ip primary vip - enum no-primary-vip { + enum disable-all { value 2; + description "disable-all"; } - - // vrrp group state down admin down - enum admin-down { + enum disable-trc-mask { value 3; + description "disable-trc-mask"; } - - // vrrp group state down inteface down - enum interface-down { + enum disable-fast-timer { value 4; + description "disable-fast-timer"; } + } + default "unknown"; + } - // vrrp group state down no intf ip cfgd - enum no-intf-ip-cfgd { - value 5; + // Config mode + typedef sysmgr_CfgMode { + type enumeration { + enum init { + value 1; + description "Init"; } - - // vrrp group down no vrf info for intf - enum no-vrf-info-for-intf { - value 6; + enum replay { + value 2; + description "Replay"; + } + enum done { + value 4; + description "Done"; } + } + default "init"; + } - // vrrp group down BD not allocated - enum bd-not-allocated { - value 7; + // Admin status of system core properties + typedef sysmgr_CoreAdminSt { + type enumeration { + enum enable { + value 0; + description "enable"; } + enum disable { + value 1; + description "disable"; + } + } + default "disable"; + } - // vrrp group down vmac not added - enum vmac-not-added { + // Admin status of system core properties + typedef sysmgr_CoreUriType { + type enumeration { + enum tftp { + value 2; + description "tftp"; + } + enum bootflash { value 8; + description "bootflash"; } - - // vrrp group down invalid vip - enum invalid-vip { - value 9; + enum usb1 { + value 32768; + description "usb1"; } + } + default "bootflash"; + } - // vrrp group down IfId vIp subnet mismatch - enum IfIp-vip-subnet-mismatch { - value 10; + // Firmware mode + typedef sysmgr_FwMode { + type enumeration { + enum recovery { + value 1; + description "Recovery mode"; } - - // vrrp group down internal error - enum internal_error { - value 11; + enum regular { + value 2; + description "Regular"; } } + default "regular"; } - // Configuration state vrrp id - typedef vrrp_Id { - type uint8 { - range "1..255"; + // Firmware type + typedef sysmgr_FwT { + type enumeration { + enum bios { + value 1; + description "BIOS"; + } + enum kickstart { + value 2; + description "Kickstart"; + } + enum system { + value 3; + description "System"; + } } + default "system"; } - // Preempt - typedef vrrp_Preempt { + // Operational data publish mode + typedef sysmgr_OperDataMode { type enumeration { - - // preempt enabled - enum enabled { + enum init { value 1; + description "Init"; } - - // preempt disabled - enum disabled { + enum publish { value 2; + description "Publish"; + } + enum done { + value 4; + description "Done"; } } - default "enabled"; + default "init"; } - // priority values - typedef vrrp_PriVal { - type uint8 { - range "1..254"; + // Operational status of sysmgr config properties + typedef sysmgr_OperState { + type enumeration { + enum unknown { + value 0; + description "unknown"; + } + enum enabled { + value 1; + description "enabled"; + } + enum disabled { + value 2; + description "disabled"; + } } + default "unknown"; } - // upper threshold - typedef vrrp_UprThrshld { - type uint8 { - range "0..254"; + // Type for fast-relaod stablization timer + // range 10-10000 (in secs) + typedef sysmgr_ReloadTimer { + type uint32 { + range "10..10000"; } - default "0"; } - // bfd session status - typedef vrrp_bfdSessionSt { + // Supervisor state + typedef sysmgr_SupSt { type enumeration { - - // vrrp bfd session is disabled - enum disabled { + enum unknown { value 0; + description "Unknown"; } - - // vrrp bfd session status inactive - enum inactive { + enum active { value 1; + description "Local"; } - - // vrrp bfd session status deleted - enum deleted { + enum hot-stdby { value 2; + description "Hot standby"; } - - // vrrp bfd session status unknown state - enum unknown { + enum cold-stdby { value 3; + description "Cold standby"; } - - // vrrp bfd session status active - enum active { + enum offline { value 4; + description "Offline"; + } + enum normal { + value 5; + description "Normal"; + } + enum non-dis-upg { + value 6; + description "Non disruptive upgrade"; } } - default "disabled"; + default "unknown"; } - // Admin State - typedef vrrpv3_AdminSt { - type boolean; + // Supervisor type + typedef sysmgr_SupT { + type enumeration { + enum local { + value 0; + description "Local"; + } + enum remote { + value 1; + description "Remote"; + } + } + default "local"; } - // Advertisement Interval - typedef vrrpv3_AdvIntvl { + // Trace Mask + typedef sysmgr_TraceMask { + type uint32 { - range "100..40950"; + range "0..4294967295"; } - default "1000"; } - // Virtual Router Name - typedef vrrpv3_Desc { - type string { - length "0..80"; + // DSCP LOP + typedef tcpudp_DscpLop { + type uint16 { + range "0..85"; } + default "85"; } - // Configuration state vrrpv3 id - typedef vrrpv3_Id { - type uint32 { - range "1..255"; + // TCPUDP Synwait Time + typedef tcpudp_SynwaitTime { + type uint16 { + range "5..300"; } + default "30"; } - // Preempt - typedef vrrpv3_Preempt { - type boolean; - default "true"; + // TCPUDP tcp mss + typedef tcpudp_TCPMss { + type uint16 { + range "88..10000"; + } + default "536"; } - // Delay before preempting a lower priority Master - typedef vrrpv3_PreemptDelay { - type uint32 { - range "0..3600"; + // TCPUDP end port + typedef tcpudp_TcpEndPort { + type uint16 { + range "22001..65535"; } - default "0"; + default "58000"; } - // Priority Value - typedef vrrpv3_PriVal { - type uint32 { - range "1..254"; + // TCPUDP start port + typedef tcpudp_TcpStartPort { + type uint16 { + range "15001..58000"; } + default "15001"; } - // Virtual Router Address family type - typedef vrrpv3_VrAf { + // Admin State + typedef telemetry_AdminState { type enumeration { - - // IPv4 address family - enum ipv4 { + enum enabled { value 1; - } - - // IPv6 address family - enum ipv6 { - value 2; + description "enabled"; } } - default "ipv4"; + default "enabled"; } - // amdin state of vsan - typedef vsan_AdminSt { + // transport compression types + typedef telemetry_Compression { type enumeration { - enum active { - value 1; + enum disabled { + value 0; + description "compression disabled"; } - enum suspended { - value 2; + enum gzip { + value 1; + description "gzip compression enabled"; } } - default "active"; + default "disabled"; } - typedef vsan_InteropMode { - type uint16 { - range "1..4"; + // Data Source Type + typedef telemetry_DataSource { + type enumeration { + enum DME { + value 1; + description "DME"; + } + enum NX-API { + value 3; + description "NX-API"; + } + enum YANG { + value 4; + description "YANG"; + } + enum NATIVE { + value 5; + description "NATIVE"; + } + enum DEFAULT { + value 16; + description "DEFAULT"; + } } - default "3"; + default "DEFAULT"; } - // vsan loadbalancing type - typedef vsan_LbType { + // No equivalent type in YANG + typedef telemetry_Encoding { type enumeration { - - // src-dst-id - enum src-dst-id { + enum GPB { value 1; + description "GPB"; } - - // src-dst-ox-id - enum src-dst-ox-id { + enum JSON { value 2; + description "JSON"; + } + enum XML { + value 3; + description "XML"; + } + enum GPB-compact { + value 4; + description "Compact GPB"; + } + enum Form-data { + value 5; + description "Form Data"; } } - default "src-dst-ox-id"; + default "GPB"; + } + + typedef telemetry_IDType { + type string { + length "1..512"; + } } - // oper state of vsan - typedef vsan_OperSt { + // telemetry-stream-protocol + typedef telemetry_Protocol { type enumeration { - enum up { + enum UDP { value 1; + description "UDP"; } - enum down { + enum TCP { value 2; + description "TCP"; + } + enum gRPC { + value 3; + description "gRPC"; + } + enum HTTP { + value 4; + description "HTTP"; } } - default "down"; + default "gRPC"; } - // TODO Pirabhu - Remove Permit and redir directives from the logical model type - // once sanity is fixed. These can be derived implicitly - // Default Value computed from permit - typedef vz_Action { + // Retrieve Depth + typedef telemetry_RetrieveDepth { - // bits- Using string - type string; - default "permit"; + type uint32 { + range "0..4294967295"; + } + default "0"; } - // A shorthand for GroupPolicyClassTag: - // A tag that is used to identify and classify - // a particular group of resources/end-points - // for policy enforcement purposes - typedef vz_GPCTag { - type vz_GroupPolicyClassTag; + typedef telemetry_SnsrPathType { + type string { + length "1..512"; + } } - // A tag that is used to identify and classify - // a particular group of resources/end-points - // for policy enforcement purposes - typedef vz_GroupPolicyClassTag { - type uint32; + typedef telemetry_SubIDType { + type uint64 { + range "1..4095"; + } } - // Type is a Local-MO-Defined-Type - // Default Value computed from fastExtFallover - typedef nw_InstCtrl_Inst_ctrl { + typedef telemetry_VrfName { + type string { + length "1..32"; + } + } - // bits- Using string - type string; - default "fastExtFallover"; + typedef telemetry_filterCondType { + type string { + length "0..512"; + } } - // Type is a Local-MO-Defined-Type - typedef bgp_NhTimeout_DomAf_critNhTimeout { - type uint32; - default "3000"; + typedef telemetry_queryCondType { + type string { + length "0..256"; + } } - // Type is a Local-MO-Defined-Type - typedef bgp_NhTimeout_DomAf_nonCritNhTimeout { + typedef telemetry_sampleIntvlType { + type uint64 { + range "0..604800000"; + } + default "0"; + } + + typedef terminal_Limit { type uint32; - default "10000"; } - // Type is a Local-MO-Defined-Type - typedef syslog_Severity_Level_severity { + typedef terminal_TermParity { type enumeration { - - // emergencies - enum emergencies { + enum none { value 0; + description "No parity"; } - - // alerts - enum alerts { + enum odd { value 1; + description "Odd parity"; } - - // critical - enum critical { + enum even { value 2; + description "Even parity"; } + } + default "none"; + } - // errors - enum errors { - value 3; - } - - // warnings - enum warnings { - value 4; - } - - // notifications - enum notifications { - value 5; - } + typedef terminal_TermSize { + type uint32; + } - // information - enum information { - value 6; - } + typedef terminal_TimeoutT { + type uint32 { + range "0..525600"; + } + } - // debugging - enum debugging { - value 7; - } + // TRE day + typedef timerange_Day { + type uint32 { + range "1..31"; + } + } - // unspecified - enum unspecified { - value 8; - } + // TRE time Format: [00~24]:[00~59]:[00~59] + typedef timerange_HourMinSec { + type string { + pattern "((([01]?\\d|2[0-3]):)?([0-5]?\\d):)?([0-5]?\\d)"; } - default "unspecified"; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_RadiusProvider_keyEnc { - type enumeration { + // TRE month + typedef timerange_Month { + type uint8 { + range "1..12"; + } + } - // Clear Text - enum 0 { - value 0; - } + // Time Range name + typedef timerange_Name { + type string { + length "1..64"; + } + } - // Type-6 Encrypted - enum 6 { - value 6; - } + // TRE sequence number + typedef timerange_SequenceNumber { + type int64 { + range "-1..4294967295"; + } + } - // Encrypted - enum 7 { - value 7; - } - enum inherit-from-global { - value 255; - } + // TRE year + typedef timerange_Year { + type uint32 { + range "2000..2037"; } - default "inherit-from-global"; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_RadiusProvider_timeout { - type uint32; - default "4294967295"; + // TRE period + typedef timerange_period { + type string { + pattern "(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|weekdays|weekend|daily|)(\\s(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|weekdays|weekend|daily|))*"; + } } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_RadiusProvider_retries { - type uint32; - default "4294967295"; + // Represents a TLV Code + // The code comes from the application & hence no validation is performed on it + typedef tlv_Code { + type uint16; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_LdapProvider_keyEnc { + // Specifies the Role of this system + typedef top_NodeRole { type enumeration { - - // Clear Text - enum 0 { + enum unsupported { value 0; } - - // Type-6 Encrypted - enum 6 { - value 6; + enum controller { + value 1; } - - // Encrypted - enum 7 { - value 7; + enum leaf { + value 2; } - enum inherit-from-global { - value 255; + enum spine { + value 3; + } + enum vleaf { + value 4; + } + enum vip { + value 5; + } + enum protection-chain { + value 6; } } - default "inherit-from-global"; + default "unsupported"; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_LdapProvider_timeout { + // Remote Network Identifier + typedef top_RemoteNetworkId { type uint32; - default "30"; + default "0"; } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_LdapProvider_retries { - type uint32; - default "4294967295"; + // Shard redudancy node + typedef topoctrl_ShardChNode { + type address_Ip; } - // Type is a Local-MO-Defined-Type - typedef aaa_KeyEnc_TacacsPlusProvider_keyEnc { - type enumeration { - - // Clear Text - enum 0 { - value 0; - } + // Order + typedef traceroute_Order { + type uint8; + } - // Type-6 Encrypted - enum 6 { - value 6; - } + // Path flags + typedef traceroute_PathFlags { - // Encrypted - enum 7 { - value 7; - } - enum inherit-from-global { - value 255; - } - } - default "inherit-from-global"; + type string; } - // Type is a Local-MO-Defined-Type - typedef aaa_TimeSec_TacacsPlusProvider_timeout { - type uint32; - default "0"; + // Path Group id + typedef traceroute_PathGrpId { + type uint8; } - // Type is a Local-MO-Defined-Type - typedef aaa_Retries_TacacsPlusProvider_retries { - type uint32; - default "4294967295"; + // Path id + typedef traceroute_PathId { + type uint8; } - // Type is a Local-MO-Defined-Type - typedef aaa_Realm_DomainAuth_realm { + // Type of the path + typedef traceroute_PathT { type enumeration { - - // Local - enum local { - value 0; - } - - // RADIUS - enum radius { + enum external { value 1; + description "External"; } - - // TACACS+ - enum tacacs { + enum internal { value 2; + description "Internal"; } + } + default "internal"; + } - // LDAP - enum ldap { - value 3; - } + // Address family type + typedef track_Af { + type enumeration { enum none { - value 4; + value 0; + } + enum ipv4 { + value 1; + description "IPv4 address family"; + } + enum ipv6 { + value 2; + description "IPv6 address family"; } } + default "none"; } - // Type is a Local-MO-Defined-Type - typedef aaa_Date_User_expiration { - type string; - default "0"; - } - - // Type is a Local-MO-Defined-Type - typedef l1_FECMode_PhysIf_operFECMode { + // Interface object protocol state + typedef track_IntfProtocolType { type enumeration { - - // auto - enum auto { - value 4; + enum none { + value 0; } - - // RS-Fec - enum rs-fec { + enum ipv4-routing { + value 1; + } + enum ipv6-routing { value 2; } + enum line-protocol { + value 3; + } + } + default "none"; + } - // FC-Fec - enum fc-fec { + // Type of List objects threshold/boolean + typedef track_ListObj { + type enumeration { + enum none { + value 0; + } + enum and { value 1; + description "Boolean 'and' function"; } - - // Fec-off - enum fec-off { + enum or { + value 2; + description "Boolean 'or' function"; + } + enum percentage { value 3; + description "Threshold percentage"; } - - // RS-IEEE - enum rs-ieee { - value 5; + enum weight { + value 4; + description "Threshold weight"; } + } + default "none"; + } - // RS-CONS16 - enum rs-cons16 { - value 6; + // Probe type for Sla + typedef track_ProbeState { + type enumeration { + enum reachability { + value 0; + description "probe state is reachable or over threshold"; + } + enum state { + value 1; + description "probe state is reachable and within threshold"; } + } + default "state"; + } - // N/A - enum not-available { - value 20; + // Route Owner type + // Process owning the route + typedef track_RouteOwner { + type enumeration { + enum none { + value 0; + } + enum hmm { + value 1; + description "Host Mobility Manager"; } } + default "none"; } - // Type is a Local-MO-Defined-Type - typedef l1_Layer_AggrIf_layer { + typedef track_RouteState { type enumeration { + enum reachability { + value 0; + } + } + default "reachability"; + } - // switched - enum Layer2 { + // This type represents track Object ID. + typedef track_TrackId { + type uint16 { + range "1..512"; + } + } + + // Administrative state of tunnel + typedef tunnel_AdminSt { + type enumeration { + enum up { value 1; + description "up"; + } + enum down { + value 2; + description "down"; } + } + default "up"; + } - // routed - enum Layer3 { + // Configured MTU + typedef tunnel_ConfMtu { + type uint32 { + range "1..9000"; + } + default "9000"; + } + + // Tunnel encapsulation type + typedef tunnel_EncapT { + type enumeration { + enum unknown { + value 0; + description "unknown"; + } + enum vxlan { + value 1; + description "VXLAN encap"; + } + enum ivxlan { value 2; + description "iVXLAN encap"; } - enum pltfmDfltLayer { + enum nvgre { value 3; + description "NV-GRE encap"; } } - default "pltfmDfltLayer"; + default "ivxlan"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_proxyArp { - type enumeration { + // Tunnel endpoint identifier + typedef tunnel_EpId { + type address_Ip; + } - // Enabled - enum enabled { + // Tunnel endpoint type + typedef tunnel_EpT { + + type string; + default "physical"; + } + + // Keep alive period + typedef tunnel_KeepAlvIntvl { + type uint32 { + range "0..32767"; + } + default "10"; + } + + // Keep alive retry count + typedef tunnel_KeepAlvRetries { + type uint32 { + range "1..255"; + } + default "3"; + } + + // Tunnel layer type (L2 or L3) + typedef tunnel_LayerT { + type enumeration { + enum l2 { value 1; + description "l2 tunnel"; } - - // Disabled - enum disabled { + enum l3 { value 2; + description "l3 tunnel"; } } + default "l2"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_localProxyArp { + // Operational state of tunnel + typedef tunnel_OperSt { type enumeration { - - // Enabled - enum enabled { + enum up { value 1; + description "up"; } - - // Disabled - enum disabled { + enum down { value 2; + description "down"; } } + default "down"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_mRouting { + // Tunnel types + typedef tunnel_TunnelQual { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum ivxlan { value 1; + description "ivxlan"; } - - // Disabled - enum disabled { + enum vxlan { value 2; + description "vxlan"; } } + default "ivxlan"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_icmpRedirect { + // Snmp trap state + typedef tunnelif_SnmpTrapSt { type enumeration { - - // Enabled enum enabled { value 1; } - - // Disabled enum disabled { value 2; } } + default "enabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_directBcast { - type enumeration { + // Tunnel Bandwidth in kilobits per second. + typedef tunnelif_TunnelBW { + type uint32 { + range "1..10000000"; + } + default "9"; + } - // Enabled - enum enabled { + // Tunnel mode types + typedef tunnelif_TunnelMode { + type enumeration { + enum gre/ip { value 1; + description "GRE/IP"; } - - // Disabled - enum disabled { - value 2; + enum gre/ipv6 { + value 6; + description "GRE/IPV6"; + } + enum ipip/ip { + value 7; + description "IPIP/IP"; + } + enum ipip/ipv6 { + value 8; + description "IPIP/IPV6"; + } + enum ipip/dcapany/ip { + value 9; + description "IPIP/Decapsulate Any/IP"; + } + enum ipip/dcapany/ipv6 { + value 10; + description "IPIP/Decapsulate Any/IPV6"; + } + enum ipv6ip { + value 11; + description "IPV6IP"; + } + enum ipv6ip/dcapany { + value 12; + description "IPV6IP/Decapsulate Any"; + } + enum ipv6ipv6 { + value 13; + description "IPV6/IPV6"; + } + enum ipv6ipv6/dcapany { + value 14; + description "IPV6IPV6/Decapsulate Any"; } } + default "gre/ip"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_ipUnreach { - type enumeration { + // Configured MTU + typedef tunnelif_TunnelMtu { + type uint32 { + range "64..9196"; + } + default "1476"; + } - // Enabled - enum enabled { + // Operational state of tunnel + typedef tunnelif_TunnelOperSt { + type enumeration { + enum up { value 1; + description "up"; } - - // Disabled - enum disabled { + enum down { value 2; + description "down"; } } + default "down"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_IfStat_portUnreach { + // Reasons for line protcol state being down. + typedef tunnelif_TunnelOperStQual { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum none { value 1; + description "No reason"; } - - // Disabled - enum disabled { + enum initing { value 2; + description "Initializing hardware"; + } + enum incomp-conf { + value 3; + description "Tunnel configuration is incomplete"; + } + enum dup-conf { + value 4; + description "Duplicate tunnel config"; + } + enum no-mode { + value 5; + description "tunnel mode is not configured"; + } + enum admin-down { + description "Admin state is down"; + } + enum src-down { + value 7; + description "Tunnel source down"; + } + enum src-unres { + value 8; + description "Source IP could not be resolved"; + } + enum no-dest { + value 9; + description "Destination is not configured"; + } + enum desip-unres { + value 10; + description "Destination IP address unresolvable"; + } + enum dest-unreach { + description "Destination unreachable"; + } + enum vrf-mismatch { + value 12; + description "Source interface and tunnel VRF mismatch"; + } + enum vrf-fwdref { + value 13; + description "Tunnel transport VRF is forward referencing"; + } + enum vrf-down { + value 14; + description "VRF is down"; + } + enum mtu-error { + value 15; + description "MTU programming failed"; + } + enum hwprog-fail { + description "Hardware programming failed"; + } + enum no-src { + value 17; + description "Source is not configured"; } } + default "unknown"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoDisc { + // Tunnel Interface Options + typedef tunnelif_TunnelOption { type enumeration { - - // Enabled - enum enabled { + enum unknown { + value 0; + description "unknown"; + } + enum del_on_fail { value 1; + description "delete on failure"; } - - // Disabled - enum disabled { + enum usr_cfg_mtu { value 2; + description "user configured mtu"; } } + default "unknown"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoDiscAdd { - type enumeration { + // Configured age timer for Tunnel PMTU + typedef tunnelif_TunnelPMTUAge { + type uint32 { + range "0..30"; + } + default "10"; + } - // Enabled + // Tunnel Path MTU Discovery + typedef tunnelif_TunnelPMTUD { + type enumeration { enum enabled { value 1; + description "enabled"; } - - // Disabled enum disabled { value 2; + description "disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_nullBcast { + // Tunnel Source Direct + typedef tunnelif_TunnelSrcDirect { type enumeration { - - // Enabled enum enabled { value 1; + description "enabled"; } - - // Disabled enum disabled { value 2; + description "disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_autoPuntBcast { - type enumeration { + // Tunnel TTL (from 0 to 255) + typedef tunnelif_TunnelTTL { + type uint32 { + range "0..255"; + } + default "0"; + } + + // Configured Tunnel transport VRF + typedef tunnelif_TunnelTransVRF { + type l3_VrfName; + default "default"; + } + + // Configured min-MTU for Tunnel PMTU + typedef tunnelif_TunnelminPMTU { + type uint32 { + range "64..9196"; + } + default "64"; + } - // Enabled + // Administrative state + typedef udld_AdminSt { + type enumeration { enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef nw_AdminSt_ProcessStat_staticDisc { - type enumeration { + // Msg Interval + typedef udld_MsgIntvl { + type uint8 { + range "7..90"; + } + default "15"; + } - // Enabled + // Operational state + typedef udld_OperSt { + type enumeration { enum enabled { value 1; + description "Enabled"; } - - // Disabled enum disabled { value 2; + description "Disabled"; } } + default "disabled"; } - // Type is a Local-MO-Defined-Type - typedef eqpt_Arch_CPU_arch { + typedef udld_PortEnable { type enumeration { - - // x86_32 - enum x86_32 { + enum port-enabled { + value 0; + description "Port Enabled"; + } + enum port-fiber-disabled { value 1; + description "Port Fiber Disabled"; } - - // x86_64 - enum x86_64 { + enum port-default { value 2; + description "Port Default"; } - - // any - enum any { - value 0; + enum port-default-disable { + value 3; + description "Port Default Disable"; } } + default "port-default"; } - // Type is a Local-MO-Defined-Type - // Default Value computed from redirect,port-unreachable - typedef icmp_IfControl_If_ctrl { + // Label Table Client Flags + typedef ulib_ClientFlag { - // bits- Using string type string; - default "redirect,port-unreachable"; } - // Type is a Local-MO-Defined-Type - typedef nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime { - type uint32; - default "0"; + typedef ulib_ClientName { + type string; } - // Type is a Local-MO-Defined-Type - typedef nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime { - type uint32; - default "0"; + // Max Dynamic label + typedef ulib_DynLblMax { + type uint32 { + range "16..471804"; + } + default "471804"; } - grouping aaa_IDomainRef-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Min Dynamic label + typedef ulib_DynLblMin { + type uint32 { + range "16..471804"; } + default "16"; + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + typedef ulib_EphemeralAddressFamily { + type string; + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + typedef ulib_FecState { + type string; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } - } + typedef ulib_FecType { + type string; + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + typedef ulib_InterfaceStr { + type string; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Label Count Value + typedef ulib_LabelCnt { + type uint32 { + range "0..471804"; } + default "0"; } - grouping l2cap_Prov-group { - - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l2cap_Subj; + // Label Range Value + typedef ulib_LabelVal { + type uint32 { + range "0..471804"; } + } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Counter; - } + typedef ulib_OutLblStack { + type string; + } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { - config "false"; - description "TBD"; + typedef ulib_TableId { + type uint32; + } - // Type is an MO-Defined-Type - type cap_Counter; - } + // 32 bit Counter + typedef urib_Counter32 { + type uint32; + } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_StorageHint; - } - - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + typedef urib_NextHopEncapType { + type enumeration { + enum none { + value 0; + description "Not set"; + } + enum vxlan { + value 1; + description "Vxlan encapsulation"; + } + enum invalid { + value 2; + description "Invalid"; + } } } - grouping actrlcap_Rule-group { - - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // The format of this string depends on the time left. + // If time left is: + // - Less than 1 sec: format is 0.UUUUUU + // - >= 1 sec and < 24 hrs: HH:MM:SS + // - >= 24hrs and < 1 week: DD'd'HH'h' e.g.: 12d03h + // - >= 1 week and < 1 year: WW'w'DD'd' + // - >= 1 year: YY'y'WW'w' + typedef urib_TimeStr { + type string; + } - // Type is an MO-Defined-Type - type actrlcap_Subj; + typedef urib_YesNo { + type enumeration { + enum No { + value 0; + description "No"; + } + enum Yes { + value 1; + description "Yes"; + } } + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; + // Signing level allowed on the system + typedef virtualService_SigningLevel { + type enumeration { + enum none { + value 1; + description "Most restrictive, don't allow package installation"; + } + enum cisco { + value 2; + description "Allow only Cisco signed packages"; + } + enum unsigned { + value 3; + description "Least restrictive, allow unsigned and all signing methods"; + } } + default "cisco"; + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // User Password Type + typedef vmtracker_PasswordType { + type enumeration { + enum 0 { + value 0; + description "UNENCRYPTED password"; + } + enum 5 { + value 5; + description "ENCRYPTED password"; + } } + default "0"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Application Sap Id + typedef vpc_AppId { + type uint32; + } - // Type is an MO-Defined-Type - type cap_RuleT; + // Track Object + typedef vpc_AutoRecoveryIntvl { + type uint32 { + range "60..3600"; } + default "240"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Batched vpc inventory + typedef vpc_BatchedVpcInv { - // Type is an MO-Defined-Type - type naming_Descr; - } + type string; } - grouping l1cap_Rule-group { - - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // vPC Compatibility Reason Code + typedef vpc_CompatQual { + type uint32; + } - // Type is an MO-Defined-Type - type l1cap_Subj; + // vPC Compatability Status + typedef vpc_CompatSt { + type enumeration { + enum pass { + value 0; + description "success"; + } + enum fail { + value 1; + description "failed"; + } + enum notDone { + value 2; + description "Not Applicable"; + } } + default "notDone"; + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; + // Delay Peer Link Bringup + typedef vpc_DelayPeerLinkBringup { + type uint16 { + range "0..7200"; } + default "0"; + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // Delay Restore: Orphan Port + typedef vpc_DelayRestoreOrphanPort { + type uint16 { + range "0..300"; } + default "0"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + // Delay Restore SVI + typedef vpc_DelayRestoreSVI { + type uint16 { + range "1..3600"; } + default "10"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Delay Restore vPC + typedef vpc_DelayRestoreVPC { + type uint16 { + range "1..3600"; } + default "30"; } - grouping l2cap_Rule-group { - - // Type is an MO-Defined-Type - leaf faultState { - config "false"; - description "Fault State"; - - // Type is an MO-Defined-Type - type cap_RaiseFaultState; + // VPC domain ID + typedef vpc_DomId { + type uint16 { + range "1..1000"; } + } - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l2cap_Subj; - } + // Domain operational state + typedef vpc_DomOperSt { - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; + type string; + default "not-applicable"; + } - // Type is an MO-Defined-Type - type cap_Constraint; + // DSCP value + typedef vpc_Dscp { + type uint16 { + range "0..63"; } + } - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Scope; + // Dual Active Status + typedef vpc_DualActiveSt { + type enumeration { + enum false { + value 0; + description "0"; + } + enum true { + value 1; + description "1"; + } } + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; - } + typedef vpc_ExcludeSVI { + type l2_VlanBitmap; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + typedef vpc_ExcludeVLAN { + type l2_VlanBitmap; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Flush Timeout in seconds + typedef vpc_FlushTout { + type uint32 { + range "3..10"; } + default "3"; } - grouping l3cap_Rule-group { - - // Type is an MO-Defined-Type - leaf faultState { - config "false"; - description "Fault State"; - - // Type is an MO-Defined-Type - type cap_RaiseFaultState; + // vPC number + typedef vpc_Id { + type uint16 { + range "1..16384"; } + } - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "Subject"; - - // Type is an MO-Defined-Type - type l3cap_Subj; + // Keepalive Interval in milli-seconds + typedef vpc_KeepaliveInterval { + type uint32 { + range "400..10000"; } + default "1000"; + } - // Every Rule has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete rules, define the Subject property - // and its types - // Constraints of the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf constraint { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_Constraint; - } + // Keepalive operational state + typedef vpc_KeepaliveOperSt { - // Domain applicable to the capability. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "TBD"; + type string; + default "0"; + } - // Type is an MO-Defined-Type - type cap_Scope; + // Keepalive Timeout in seconds + typedef vpc_KeepaliveTout { + type uint32 { + range "3..20"; } + default "5"; + } - // Type of the Rule. - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type cap_RuleT; + // L3 peer-router syslog interval + typedef vpc_L3PeerRouterSyslogInterval { + type uint16 { + range "1..3600"; } + default "3600"; + } - // From Interface naming:Described - // Inherited From cap:Rule - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // vPC operational Status + typedef vpc_OperSt { + type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum down { + value 1; + description "Down"; + } + enum up { + value 2; + description "Up"; + } + enum noCfg { + value 3; + description "Not configured"; + } } + default "unknown"; } - grouping syslog_RemoteDest-group { - - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; + // Param Length + typedef vpc_ParamLen { + type uint32; + } - // Type is an MO-Defined-Type - type syslog_Severity; + // Param Type + typedef vpc_ParamType { + type enumeration { + enum unknown { + value 0; + description "Unknown"; + } + enum type-1 { + value 1; + description "Type 1"; + } + enum type-2 { + value 2; + description "Type 2"; + } } + default "unknown"; + } - // Type is an MO-Defined-Type - leaf port { - description "Port"; + // Param Value + typedef vpc_ParamVal { + type mtx_array_uint8; + } - // Type is an MO-Defined-Type - type syslog_SyslogPort; + // vPC peer Status + typedef vpc_PeerSt { + type enumeration { + enum noCfg { + value 0; + description "Not configured"; + } + enum down { + value 1; + description "Down"; + } + enum up { + value 2; + description "Up"; + } } + } - // Type is an MO-Defined-Type - leaf transport { - description "Transport"; - - // Type is an MO-Defined-Type - type mon_Transport; - } - leaf trustpointClientIdentity { - type string { - length "0..64"; + // vPC peer status reason code + typedef vpc_PeerStQual { + type enumeration { + enum success { + value 0; + description "Success"; + } + enum uplinks-down { + value 1; + description "Uplinks down"; + } + enum route-down { + value 2; + description "Route down"; + } + enum peer-unrch { + value 3; + description "Peer unreachable"; + } + enum compat-fail { + value 4; + description "Compatibility Failed"; + } + enum election-err { + value 5; + description "Election error"; + } + enum oob-not-up { + value 6; + description "Keepalive not Operational"; } } + } - // Type is an MO-Defined-Type - leaf forwardingFacility { - description "Forward Facility"; + // Peer version + typedef vpc_PeerVersion { + type uint32; + } - // Type is an MO-Defined-Type - type syslog_Facility; + // Precedence type + typedef vpc_PrecType { + type enumeration { + enum network { + value 0; + description "Network"; + } + enum internet { + value 1; + description "Internet"; + } + enum critical { + value 2; + description "Critical"; + } + enum flash-override { + value 3; + description "Flash override"; + } + enum flash { + value 4; + description "Flash"; + } + enum immediate { + value 5; + description "Immediate"; + } + enum priority { + value 6; + description "Priority"; + } + enum routine { + value 7; + description "Routine"; + } } + default "routine"; + } - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; - } - leaf vrfId { - type uint32; + // Precedence value + typedef vpc_PrecValue { + type uint8 { + range "0..7"; } + default "6"; + } - // Type is an MO-Defined-Type - leaf ip { - description "ip address"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad; + // Role + typedef vpc_Role { + type enumeration { + enum election-not-done { + value 0; + description "Election-not-done"; + } + enum master { + value 1; + description "Master"; + } + enum slave { + value 2; + description "Slave"; + } } + default "election-not-done"; + } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type syslog_OperState; + // Role Priority + typedef vpc_RolePrio { + type uint16 { + range "1..65535"; } + default "32667"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Summarized Role + typedef vpc_SummRole { + type enumeration { + enum election-not-done { + value 0; + description "None Established"; + } + enum cfg-master-oper-master { + value 1; + description "Primary"; + } + enum cfg-master-oper-slave { + value 2; + description "Primary, Operational Secondary"; + } + enum cfg-slave-oper-master { + value 3; + description "Secondary, Operational Primary"; + } + enum cfg-slave-oper-slave { + value 4; + description "Secondary"; } } + default "election-not-done"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // System Priority + typedef vpc_SysPrio { + type uint16 { + range "1..65535"; } + default "32667"; + } - // Hostname or IP for export destination - // Inherited From file:ARemoteHost - // Type is an MO-Defined-Type - leaf host { - description "Host"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad { - length "1..255"; - } - } - leaf epgDn { - config "false"; + // Time + typedef vpc_Time { + type union { type string; + type uint64; } + } - // The vrf that remote host belongs to - // Inherited From file:ARemoteHost - // Type is an MO-Defined-Type - leaf vrfName { - description "Vrf Name"; - - // Type is an MO-Defined-Type - type l3_VrfName; - } - - // Syslog Dest state - container destst-items { - list DestState-list { - config "false"; - key "name"; - - // Added containment: Prefix=destst - // Acquired From Package syslog - uses syslog_DestState-group; - } + // ToS byte + typedef vpc_TosByte { + type uint8 { + range "0..255"; } + default "0"; } - grouping syslog_DestState-group { - - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type syslog_OperState; - } - leaf vrfId { - config "false"; - type uint32; + // ToS config type + typedef vpc_TosCfgType { + type enumeration { + enum noCfg { + value 0; + description "No configuration"; + } + enum tos-byte { + value 1; + description "ToS byte"; + } + enum tos-value { + value 2; + description "ToS value"; + } + enum tos-type { + value 3; + description "ToS type"; + } + enum precedence-type { + value 4; + description "Precedence Type"; + } + enum precedence-value { + value 5; + description "Precedence Value"; + } } + default "noCfg"; + } - // Type is an MO-Defined-Type - leaf ip { - config "false"; - description "ip address"; - - // Type is an MO-Defined-Type - type address_HostNameOrDottedQuad; - } - leaf totalBufferedMsgs { - config "false"; - type uint32; + // ToS type + typedef vpc_TosType { + type enumeration { + enum min-delay { + value 0; + description "Min delay"; + } + enum max-throughput { + value 1; + description "Max throughput"; + } + enum max-reliability { + value 2; + description "Max Reliability"; + } + enum min-monetary-cost { + value 3; + description "Min Monetary Cost"; + } + enum normal { + value 4; + description "Normal"; + } } - leaf totalDroppedMsgs { - config "false"; - type uint32; + default "normal"; + } + + // ToS value + typedef vpc_TosValue { + type uint8 { + range "0..15"; } + default "0"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Track Object + typedef vpc_Track { + type uint16 { + range "0..500"; + } + default "0"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // admin state + typedef vrrp_AdminSt { + type enumeration { + enum disabled { + value 1; + description "Vrrp id shut"; + } + enum enabled { + value 2; + description "Vrrp id no shut"; } } + default "disabled"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // advertise interval + typedef vrrp_AdvIntvl { + type uint8 { + range "1..255"; } + default "1"; + } - // Syslog Log Message - container msg-items { - list LogMsg-list { - config "false"; - key "index"; + // authentication text type + typedef vrrp_AuthTextType { + type string { + length "0..8"; + } + } - // Added containment: Prefix=msg - // Acquired From Package syslog - uses syslog_LogMsg-group; + // authentication type + typedef vrrp_AuthType { + type enumeration { + enum none { + value 1; + description "no authentication"; + } + enum simple { + value 2; + description "plain text"; } } + default "none"; } - grouping syslog_LogMsg-group { - leaf index { - config "false"; - type uint32; - } - leaf message { - config "false"; - type string; - } - leaf facility { - config "false"; - type string; - } - leaf severity { - config "false"; - type uint16; + // group state + typedef vrrp_GroupSt { + type enumeration { + enum init { + value 0; + description "Vrrp Group state Init"; + } + enum backup { + value 1; + description "vrrp group state backup"; + } + enum master { + value 2; + description "vrrp group state master"; + } } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // group state qualifier + typedef vrrp_GroupStQual { + type enumeration { + enum up { + value 0; + description "Vrrp group state up"; + } + enum down { + value 1; + description "Vrrp group state down"; + } + enum no-primary-vip { + value 2; + description "vrrp group state down no ip primary vip"; + } + enum admin-down { + value 3; + description "vrrp group state down admin down"; + } + enum interface-down { + value 4; + description "vrrp group state down inteface down"; + } + enum no-intf-ip-cfgd { + value 5; + description "vrrp group state down no intf ip cfgd"; + } + enum no-vrf-info-for-intf { + value 6; + description "vrrp group down no vrf info for intf"; + } + enum bd-not-allocated { + value 7; + description "vrrp group down BD not allocated"; + } + enum vmac-not-added { + value 8; + description "vrrp group down vmac not added"; + } + enum invalid-vip { + value 9; + description "vrrp group down invalid vip"; + } + enum IfIp-vip-subnet-mismatch { + value 10; + description "vrrp group down IfId vIp subnet mismatch"; + } + enum internal_error { + value 11; + description "vrrp group down internal error"; } } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Configuration state vrrp id + typedef vrrp_Id { + type uint8 { + range "1..255"; } } - grouping syslog_File-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; + // Preempt + typedef vrrp_Preempt { + type enumeration { + enum enabled { + value 1; + description "preempt enabled"; + } + enum disabled { + value 2; + description "preempt disabled"; + } } + default "enabled"; + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; - - // Type is an MO-Defined-Type - type syslog_Severity; + // priority values + typedef vrrp_PriVal { + type uint8 { + range "1..254"; } + } - // Type is an MO-Defined-Type - leaf size { - description "Size"; - - // Type is an MO-Defined-Type - type syslog_FileSize; + // upper threshold + typedef vrrp_UprThrshld { + type uint8 { + range "0..254"; } + default "0"; + } - // Inherited From pol:Obj - // Modified by Override: syslog:File->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // bfd session status + typedef vrrp_bfdSessionSt { + type enumeration { + enum disabled { + value 0; + description "vrrp bfd session is disabled"; + } + enum inactive { + value 1; + description "vrrp bfd session status inactive"; + } + enum deleted { + value 2; + description "vrrp bfd session status deleted"; + } + enum unknown { + value 3; + description "vrrp bfd session status unknown state"; + } + enum active { + value 4; + description "vrrp bfd session status active"; } } + default "disabled"; + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Admin State + typedef vrrpv3_AdminSt { + type enumeration { + enum disabled { + value 1; + description "Virtual Router Administratively Disabled"; + } + enum enabled { + value 0; + description "Virtual Router Administratively Enabled"; + } } + default "enabled"; } - grouping syslog_Console-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type mon_AdminState; + // Advertisement Interval + typedef vrrpv3_AdvIntvl { + type uint32 { + range "100..40950"; } + default "1000"; + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; - - // Type is an MO-Defined-Type - type syslog_Severity; + // Virtual Router Name + typedef vrrpv3_Desc { + type string { + length "0..80"; } } - grouping dhcp_OptionDef-group { - - // Inherited From pol:Obj - // Modified by Override: dhcp:AOption->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Configuration state vrrpv3 id + typedef vrrpv3_Id { + type uint32 { + range "1..255"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Preempt + typedef vrrpv3_Preempt { + type enumeration { + enum enabled { + value 1; + description "Preempt Enabled"; + } + enum disabled { + value 0; + description "Preempt Disabled"; } } + default "enabled"; + } - // DHCP OPTION ID - // Inherited From dhcp:AOption - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type dhcp_OptionId; + // Delay before preempting a lower priority Master + typedef vrrpv3_PreemptDelay { + type uint32 { + range "0..3600"; } + default "0"; + } - // DHCP OPTION ID - // Inherited From dhcp:AOption - // Type is an MO-Defined-Type - leaf data { - config "false"; - description "Model Regex"; - - // Type is an MO-Defined-Type - type naming_Regex; + // Priority Value + typedef vrrpv3_PriVal { + type uint32 { + range "1..254"; } + } - // Discovered DHCP client node - container bd-items { - list DiscNode-list { - config "false"; - key "encap mac ciAddr"; - - // Added containment: Prefix=bd - // Acquired From Package dhcp - uses dhcp_DiscNode-group; + // Generic state type enabled/disabled + typedef vrrpv3_State { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 0; + description "Disabled"; } } } - grouping dhcp_DiscNode-group { - leaf mac { - config "false"; - type address_Mac; - } - leaf ciAddr { - config "false"; - type address_Ip; - } - leaf ctxEncap { - config "false"; - type string; - } - leaf fabEncap { - config "false"; - type string; - } - leaf encap { - config "false"; - type string; + // Virtual Router Address family type + typedef vrrpv3_VrAf { + type enumeration { + enum ipv4 { + value 1; + description "IPv4 address family"; + } + enum ipv6 { + value 2; + description "IPv6 address family"; + } } + default "ipv4"; } - grouping fv_DomDef-group { - - // Type is an MO-Defined-Type - leaf domPKey { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type fv_PrimKey; + typedef vshd_ModeType { + type enumeration { + enum default { + value 0; + description "default"; + } + enum strict { + value 1; + description "strict"; + } + enum loose { + value 2; + description "loose"; + } } + default "default"; + } - // Type is an MO-Defined-Type - leaf instrImedcy { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type fv_InstrImedcy; + // Configuration state Preempt + typedef vtp_Mode { + type enumeration { + enum client { + value 1; + description "VTP Mode Client"; + } + enum server { + value 2; + description "VTP Mode Server"; + } + enum transparent { + value 3; + description "VTP Mode Transparent"; + } + enum off { + value 4; + description "VTP Mode Off"; + } } + default "transparent"; + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name; - } + // A shorthand for GroupPolicyClassTag: + // A tag that is used to identify and classify + // a particular group of resources/end-points + // for policy enforcement purposes + typedef vz_GPCTag { + type vz_GroupPolicyClassTag; + } - // Rel-def from domDefNs - container rsdomDefNs-items { + // A tag that is used to identify and classify + // a particular group of resources/end-points + // for policy enforcement purposes + typedef vz_GroupPolicyClassTag { + type uint32; + } - // Added containment as a singleton: Prefix=rsdomDefNs - // Acquired From Package fv - uses fv_RsDomDefNs_source-group; + typedef wedge_BmcIPEnabled { + type enumeration { + enum no { + value 0; + } + enum yes { + value 1; + } } + default "no"; + } - // Rel-def from domDefNsLocal - container rsdomDefNsLocal-items { - - // Added containment as a singleton: Prefix=rsdomDefNsLocal - // Acquired From Package fv - uses fv_RsDomDefNsLocal_source-group; + // Logging level type + typedef xbar_LoggingLevel { + type uint16 { + range "0..7"; } + default "5"; + } - // Rel-def target from toDomDef - // Inherited From fv:DomDef - container rtfvToDomDef-items { - - // Abstract containment of rtfvToDomDef derived from fv:DomDef - list RtFvToDomDef-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvToDomDef - // Acquired From Package fv - uses fv_RtFvToDomDef_target-group; + // Logging Level + typedef xbar_LoggingType { + type enumeration { + enum Emergencies { + value 0; + description "Emergencies"; + } + enum Alerts { + value 1; + description "Alerts"; + } + enum Critical { + value 2; + description "Critical"; + } + enum Errors { + value 3; + description "Errors"; + } + enum Warnings { + value 4; + description "Warnings"; + } + enum Notifications { + value 5; + description "Notifications"; + } + enum Information { + value 6; + description "Information"; + } + enum Debugging { + value 7; + description "Debugging"; } } + default "Notifications"; } - grouping fv_DEp-group { + // Type is a Local-MO-Defined-Type + typedef nw_InstCtrl_Inst_ctrl { - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type string; + default "fastExtFallover"; + } - // Type is an MO-Defined-Type - type naming_Name; - } + // Type is a Local-MO-Defined-Type + typedef bgp_NhTimeout_DomAf_critNhTimeout { + type uint32; + default "3000"; + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef bgp_NhTimeout_DomAf_nonCritNhTimeout { + type uint32; + default "10000"; + } - // Type is an MO-Defined-Type - type naming_Id; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf encap { - config "false"; - type string; - } - leaf uuid { - config "false"; - type string; + // Type is a Local-MO-Defined-Type + typedef syslog_Severity_Level_severity { + type enumeration { + enum emergencies { + value 0; + description "emergencies"; + } + enum alerts { + value 1; + description "alerts"; + } + enum critical { + value 2; + description "critical"; + } + enum errors { + value 3; + description "errors"; + } + enum warnings { + value 4; + description "warnings"; + } + enum notifications { + value 5; + description "notifications"; + } + enum information { + value 6; + description "information"; + } + enum debugging { + value 7; + description "debugging"; + } + enum unspecified { + value 8; + description "unspecified"; + } } + default "unspecified"; } - grouping opflex_IDEp-group { - leaf eppdn { - config "false"; - type string; - } - leaf compVmDn { - config "false"; - type string; - } - leaf compHvDn { - config "false"; - type string; - } - leaf epgID { - config "false"; - type string; - } - leaf epHostAddr { - config "false"; - type string; - } - leaf hypervisorName { - config "false"; - type string; - } - leaf portId { - config "false"; - type uint32; - } - leaf containerName { - config "false"; - type string; + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_RadiusProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // ep transition status - // Type is an MO-Defined-Type - leaf transitionStatus { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_RadiusProvider_timeout { + type uint32; + default "5"; + } - // Type is an MO-Defined-Type - type opflex_EpTransitionStatus; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_RadiusProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_LdapProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // epp push policy - // Type is an MO-Defined-Type - leaf eppDownloadHint { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_LdapProvider_timeout { + type uint32; + default "0"; + } - // Type is an MO-Defined-Type - type opflex_EppDownloadHint; - } - leaf handle { - config "false"; - type uint64; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_LdapProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_KeyEnc_TacacsPlusProvider_keyEnc { + type enumeration { + enum 0 { + value 0; + description "Clear Text"; + } + enum 6 { + value 6; + description "Type-6 Encrypted"; + } + enum 7 { + value 7; + description "Encrypted"; + } + enum inherit-from-global { + value 255; + } } + default "inherit-from-global"; + } - // instType - // Type is an MO-Defined-Type - leaf instType { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef aaa_TimeSec_TacacsPlusProvider_timeout { + type uint32; + default "0"; + } - // Type is an MO-Defined-Type - type comp_NicInstType; + // Type is a Local-MO-Defined-Type + typedef aaa_Retries_TacacsPlusProvider_retries { + type uint32; + default "1"; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_Realm_DomainAuth_realm { + type enumeration { + enum local { + value 0; + description "Local"; + } + enum radius { + value 1; + description "RADIUS"; + } + enum tacacs { + value 2; + description "TACACS+"; + } + enum ldap { + value 3; + description "LDAP"; + } + enum none { + value 4; + } } - leaf pcIfId { - config "false"; - type uint32; + } + + // Type is a Local-MO-Defined-Type + typedef aaa_Date_User_expiration { + type union { + type string; + type uint64; } + default "0"; + } - // type of the device - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef l1_FECMode_PhysIf_operFECMode { + type enumeration { + enum auto { + value 4; + description "auto"; + } + enum rs-fec { + value 2; + description "RS-Fec"; + } + enum fc-fec { + value 1; + description "FC-Fec"; + } + enum fec-off { + value 3; + description "Fec-off"; + } + enum rs-ieee { + value 5; + description "RS-IEEE"; + } + enum rs-cons16 { + value 6; + description "RS-CONS16"; + } + enum kp-fec { + value 7; + description "FECMode: KP-Fec CL119"; + } + enum not-available { + value 20; + description "N/A"; + } + } + } - // Type is an MO-Defined-Type - type comp_NicState; + // Type is a Local-MO-Defined-Type + typedef l1_Layer_AggrIf_layer { + type enumeration { + enum Layer2 { + value 1; + description "switched"; + } + enum Layer3 { + value 2; + description "routed"; + } + enum pltfmDfltLayer { + value 3; + } } + default "pltfmDfltLayer"; + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_proxyArp { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Type is an MO-Defined-Type - type naming_Name; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_localProxyArp { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_mRouting { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Type is an MO-Defined-Type - type naming_Id; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_icmpRedirect { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf mac { - config "false"; - type address_Mac; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_directBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf encap { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_ipUnreach { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf uuid { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_IfStat_portUnreach { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // IDEp stats is the object exchanged between opflex agent - // and opflex controller for the end point stats - container idepcntr-items { - list IDEpCntr-list { - config "false"; - key "mac encap"; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoDisc { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } + } + } - // Added containment: Prefix=idepcntr - // Acquired From Package opflex - uses opflex_IDEpCntr-group; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoDiscAdd { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; } } - container vdep-items { - list VDEp-list { - config "false"; - key "mac encap brIfId"; + } - // Added containment: Prefix=vdep - // Acquired From Package fv - uses fv_VDEp-group; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_nullBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; } } } - grouping opflex_IDEpCntr-group { - leaf mac { - config "false"; - type address_Mac; + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_autoPuntBcast { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } - leaf encap { - config "false"; - type string; + } + + // Type is a Local-MO-Defined-Type + typedef nw_AdminSt_ProcessStat_staticDisc { + type enumeration { + enum enabled { + value 1; + description "Enabled"; + } + enum disabled { + value 2; + description "Disabled"; + } } + } - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "TBD"; + // Type is a Local-MO-Defined-Type + typedef pktmgr_RateLimitPps_Inst_rateLimitPps { + type int32; + default "-1"; + } - // Type is an MO-Defined-Type - type opflex_Direction; + // Type is a Local-MO-Defined-Type + typedef pktmgr_RateLimitPps_If_rateLimitPps { + type int32; + default "-1"; + } + + // Type is a Local-MO-Defined-Type + typedef eqpt_Arch_CPU_arch { + type enumeration { + enum x86_32 { + value 1; + description "x86_32"; + } + enum x86_64 { + value 2; + description "x86_64"; + } + enum any { + value 0; + description "any"; + } } + } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Type is a Local-MO-Defined-Type + typedef icmp_IfControl_If_ctrl { - // Type is an MO-Defined-Type - type naming_Name; - } + type string; + default "redirect,port-unreachable"; + } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Type is a Local-MO-Defined-Type + typedef mcast_GrpTimeout_GTimers_grpTimeout { + type uint16; + default "0"; + } - // Type is an MO-Defined-Type - type naming_Id; - } + // Type is a Local-MO-Defined-Type + typedef nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime { + type uint32; + default "3"; } - grouping fv_VDEp-group { - leaf epgID { + // Type is a Local-MO-Defined-Type + typedef nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime { + type uint32; + default "3"; + } + + grouping l2cap_Prov-group { + description "L2 Capability Provider"; + + // Subject consuming the capability + leaf subj { config "false"; - type string; + + type l2cap_Subj; + description "Subject"; } - // Physical Interface ID on which this EP was attached - // Type is an MO-Defined-Type - leaf brIfId { + // Every Consumer has a Subject. + // Subject represents the entity which consumes the capability. + // Namespaces which have concrete consumers, define the Subject property + // and its types + // Max capability available + leaf total { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type nw_IfId; + type cap_Counter; + description "TBD"; } - // instType - // Type is an MO-Defined-Type - leaf instType { + // Remaining capability available + leaf remaining { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type comp_NicInstType; + type cap_Counter; + description "TBD"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + // utilization indicator in percentages of consiumption + leaf utilization { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type cap_StorageHint; + description "TBD"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { + // Type of the Rule consumed by this consumer. + leaf type { config "false"; - description "Id"; - // Type is an MO-Defined-Type - type naming_Id; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf encap { - config "false"; - type string; - } - leaf uuid { - config "false"; - type string; + type cap_RuleT; + description "TBD"; } + } - // Rel-def from vNode - container rsvNode-items { + grouping syslog_RemoteDest-group { + description "Syslog Remote Destination"; - // Abstract containment of rsvNode derived from fv:VDEp - list RsVNode-list { - key "tDn"; + leaf severity { - // Added containment: Prefix=rsvNode - // Acquired From Package fv - uses fv_RsVNode_source-group; - } + type syslog_Severity; + description "Severity"; } - } - grouping maint_NodeInMaint-group { - leaf nodeId { - config "false"; - type uint32; - } - leaf windowStartTime { - config "false"; - type string; - } - leaf windowTimeCap { - config "false"; - type string; - } - } + leaf port { - grouping synthetic_IfcCTestObj-group { - leaf ifcCTestOnly { - type string; + type syslog_SyslogPort; + description "Port"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf transport { - // Type is an MO-Defined-Type - type naming_Name; + type mon_Transport; + default "udp"; + description "Transport"; + } + leaf trustpointClientIdentity { + type string { + length "0..64"; + } + description "Trustpoint Client Identity"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf forwardingFacility { - // Type is an MO-Defined-Type - type naming_Id; + type syslog_Facility; + description "Forward Facility"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type - leaf descr { - description "TBD"; + leaf adminState { - // Type is an MO-Defined-Type - type naming_Descr; + type mon_AdminState; + description "TBD"; } - leaf objDn { - type string; + leaf vrfId { + type uint32; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - // Inherited From synthetic:IfcCTestObj - container rttoObj-items { + leaf ip { - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + type address_HostNameOrDottedQuad; + description "ip address"; } - } - grouping synthetic_SwCTestObj-group { - leaf swCTestOnly { - type string; + leaf operState { + config "false"; + + type syslog_OperState; + description "TBD"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Id; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type - leaf descr { - description "TBD"; + // Hostname or IP for export destination + leaf host { - // Type is an MO-Defined-Type - type naming_Descr; + type address_HostNameOrDottedQuad { + length "1..255"; + } + description "Host"; } - leaf objDn { + leaf epgDn { + config "false"; type string; + description "Reachability EpG"; } - // Rel-def from toObj - container rstoObj-items { + // The vrf that remote host belongs to + leaf vrfName { - // Added containment as a singleton: Prefix=rstoObj - // Acquired From Package synthetic - uses synthetic_RsToObj_source-group; + type l3_VrfName; + description "Vrf Name"; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - // Inherited From synthetic:IfcCTestObj - // Inherited From synthetic:SwCTestObj - container rttoObj-items { + // Syslog Dest state + container destst-items { + list DestState-list { + config "false"; + key "name"; - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + uses syslog_DestState-group; + description "syslog Destination State list"; + } + description "syslog Destination State"; } } - grouping System-group { - leaf currentTime { + grouping syslog_DestState-group { + description "syslog Destination State"; + + leaf operState { config "false"; - type string; + + type syslog_OperState; + description "TBD"; } - leaf systemUpTime { + leaf vrfId { config "false"; - type string; + type uint32; } - // Serial Number of the system - // Type is an MO-Defined-Type - leaf serial { + leaf ip { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type address_HostNameOrDottedQuad; + description "ip address"; + } + leaf totalBufferedMsgs { + config "false"; + type uint32; + description "total buffered messages"; + } + leaf totalDroppedMsgs { + config "false"; + type uint32; + description "total drooped messages"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Modified by Override: top:System->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name { + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Holds bgp control plane entity information - container bgp-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=bgp - // Acquired From Package bgp - uses bgp_Entity-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Firmware Versions compatible with running version - // Created on node to maintain list of compatible firmwares - container sfw-items { - list SuppFw-list { + // Syslog Log Message + container msg-items { + list LogMsg-list { config "false"; - key "name"; + key "index"; - // Added containment: Prefix=sfw - // Acquired From Package compat - uses compat_SuppFw-group; + uses syslog_LogMsg-group; + description "syslog Destination State list"; } + description "syslog Destination State"; } + } - // Capability Catalogue - container capabilities-items { - - // Added containment as a singleton: Prefix=capabilities - // Acquired From Package cap - uses cap_Cat-group; + grouping syslog_LogMsg-group { + description "syslog Destination State"; + leaf index { + config "false"; + type uint32; + description "Message Index"; } - - container clock-items { - - // Added containment as a singleton: Prefix=clock - // Acquired From Package datetime - uses datetime_Clock-group; + leaf message { + config "false"; + type string; + description "Message Entry"; } - - // Datetime policy - container time-items { - - // Added containment as a singleton: Prefix=time - // Acquired From Package datetime - uses datetime_ClkPol-group; + leaf facility { + config "false"; + type string; + description "Message Facility"; + } + leaf severity { + config "false"; + type uint16; + description "Message Severity"; } - container ntpq-items { - list Ntpq-list { - config "false"; - key "remote"; - // Added containment: Prefix=ntpq - // Acquired From Package datetime - uses datetime_Ntpq-group; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Holds span global accounting information - container acct-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=acct - // Acquired From Package span - uses span_Acct-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Holds span retry information - container retry-items { + grouping syslog_File-group { + description "File"; + + leaf adminState { - // Added containment as a singleton: Prefix=retry - // Acquired From Package span - uses span_RetryCont-group; + type mon_AdminState; + description "TBD"; } - // Holds span manager control plane entity information - container span-items { + leaf severity { - // Added containment as a singleton: Prefix=span - // Acquired From Package span - uses span_Entity-group; + type syslog_Severity; + default "information"; + description "Severity"; } - // Holds dhcp control plane entity information - container dhcp-items { + leaf size { - // Added containment as a singleton: Prefix=dhcp - // Acquired From Package dhcp - uses dhcp_Entity-group; + type syslog_FileSize; + description "Size"; } - // Holds dns control plane entity information - container dns-items { + leaf name { - // Added containment as a singleton: Prefix=dns - // Acquired From Package dns - uses dns_Entity-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container decommission-items { + leaf descr { - // Added containment as a singleton: Prefix=decommission - // Acquired From Package fabric - uses fabric_Decommission-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inband (sup) Interface - container inb-items { - list InbandIf-list { - key "id"; + grouping syslog_Console-group { + description "Console"; - // Added containment: Prefix=inb - // Acquired From Package l2 - uses l2_InbandIf-group; - } + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // Fex fabric Interface - container ext-items { - list ExtIf-list { - key "id"; + leaf severity { - // Added containment: Prefix=ext - // Acquired From Package l2 - uses l2_ExtIf-group; - } + type syslog_Severity; + default "critical"; + description "Severity"; } + } - // Bridged Interface - container br-items { - list BrIf-list { - key "id"; + grouping dhcp_OptionDef-group { + description "DHCP Option"; - // Added containment: Prefix=br - // Acquired From Package l2 - uses l2_BrIf-group; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // DN: sys/mac - container mac-items { + // DHCP OPTION ID + leaf id { + config "false"; - // Added containment as a singleton: Prefix=mac - // Acquired From Package l2 - uses l2_Macs-group; + type dhcp_OptionId; + description "TBD"; } - // Holds cdp control plane entity information - container cdp-items { + // DHCP OPTION ID + leaf data { + config "false"; - // Added containment as a singleton: Prefix=cdp - // Acquired From Package cdp - uses cdp_Entity-group; + type naming_Regex; + description "Model Regex"; } - // Holds lldp control plane entity information - container lldp-items { + // Discovered DHCP client node + container bd-items { + list DiscNode-list { + config "false"; + key "encap mac ciAddr"; - // Added containment as a singleton: Prefix=lldp - // Acquired From Package lldp - uses lldp_Entity-group; + uses dhcp_DiscNode-group; + description "DHCP Discovered Client Node list"; + } + description "DHCP Discovered Client Node"; } + } - // Holds MCP control plane entity information - container mcp-items { - - // Added containment as a singleton: Prefix=mcp - // Acquired From Package mcp - uses mcp_Entity-group; + grouping dhcp_DiscNode-group { + description "DHCP Discovered Client Node"; + leaf mac { + config "false"; + type address_Mac; + description "Client Hardware Address"; } - - // Holds VPC control plane entity information - container vpc-items { - - // Added containment as a singleton: Prefix=vpc - // Acquired From Package vpc - uses vpc_Entity-group; + leaf ciAddr { + config "false"; + type address_Ip; + description "Client IP Address"; + } + leaf ctxEncap { + config "false"; + type string; + description "VRF Encap"; + } + leaf fabEncap { + config "false"; + type string; + description "BD Encap"; + } + leaf encap { + config "false"; + type string; + description "FD Encap"; } + } - // Holder of PE specific information of endpoints - container epns-items { + grouping fv_DomDef-group { + description "Domain"; + + leaf domPKey { + config "false"; - // Added containment as a singleton: Prefix=epns - // Acquired From Package fv - uses fv_EpNs-group; + type fv_PrimKey; + description "TBD"; } - // Entity for Gold - container gold-items { + leaf instrImedcy { + config "false"; - // Added containment as a singleton: Prefix=gold - // Acquired From Package gold - uses gold_Entity-group; + type fv_InstrImedcy; + description "TBD"; } - // Holds igmp control plane entity information - container igmp-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=igmp - // Acquired From Package igmp - uses igmp_Entity-group; + type naming_Name; + description "Name"; } - // Firmware status container object for a controller. Contains objects which represent status of firmware management of a controller. - container ctrlrfwstatuscont-items { + container rsdomDefNs-items { - // Added containment as a singleton: Prefix=ctrlrfwstatuscont - // Acquired From Package firmware - uses firmware_CtrlrFwStatusCont-group; + uses fv_RsDomDefNs_source-group; + description "VXLAN Pool"; } - // Firmware status container object for a node. Contains objects which represent status of firmware management of a node. - container fwstatuscont-items { + container rsdomDefNsLocal-items { - // Added containment as a singleton: Prefix=fwstatuscont - // Acquired From Package firmware - uses firmware_FwStatusCont-group; + uses fv_RsDomDefNsLocal_source-group; + description "VXLAN Pool"; } - // Catalog status container object for a controller. Contains objects which represent status of catalog on a controller. - container catfwstatuscont-items { + container rtfvToDomDef-items { + + list RtFvToDomDef-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=catfwstatuscont - // Acquired From Package firmware - uses firmware_CatFwStatusCont-group; + uses fv_RtFvToDomDef_target-group; + } } + } - // Holds isis control plane entity information - container isis-items { + grouping fv_DEp-group { + description "Dynamic Endpoint"; - // Added containment as a singleton: Prefix=isis - // Acquired From Package isis - uses isis_Entity-group; + leaf name { + config "false"; + + type naming_Name; + description "Name"; } - // Holds lacp control plane entity information - container lacp-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=lacp - // Acquired From Package lacp - uses lacp_Entity-group; + type naming_Id; + description "Id"; } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; + } + } - // Mgmt interface - container mgmt-items { - list MgmtIf-list { - key "id"; - - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_MgmtIf-group; - } + grouping opflex_IDEp-group { + description "Inband Discovered Endpoint"; + leaf eppdn { + config "false"; + type string; + } + leaf compVmDn { + config "false"; + type string; + } + leaf compHvDn { + config "false"; + type string; + } + leaf epgID { + config "false"; + type string; + } + leaf epHostAddr { + config "false"; + type string; + } + leaf hypervisorName { + config "false"; + type string; + } + leaf portId { + config "false"; + type uint32; + } + leaf containerName { + config "false"; + type string; } - container mitOper-items { + // ep transition status + leaf transitionStatus { + config "false"; - // Added containment as a singleton: Prefix=mitOper - // Acquired From Package mit - uses mit_MitOperRoot-group; + type opflex_EpTransitionStatus; + description "TBD"; } - // Holds snmp control plane entity information - container snmp-items { + // epp push policy + leaf eppDownloadHint { + config "false"; - // Added containment as a singleton: Prefix=snmp - // Acquired From Package snmp - uses snmp_Entity-group; + type opflex_EppDownloadHint; + description "TBD"; + } + leaf handle { + config "false"; + type uint64; } - // Holds syslog global accounting information - container syslogacct-items { + // instType + leaf instType { + config "false"; - // Added containment as a singleton: Prefix=syslogacct - // Acquired From Package syslog - uses syslog_Acct-group; + type comp_NicInstType; + description "TBD"; + } + leaf pcIfId { + config "false"; + type uint32; } - container syslog-items { + // type of the device + leaf state { + config "false"; - // Added containment as a singleton: Prefix=syslog - // Acquired From Package syslog - uses syslog_Syslog-group; + type comp_NicState; + description "TBD"; } - container mts-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mts - // Acquired From Package mts - uses mts_Mts-group; + type naming_Name; + description "Name"; } - container nat-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=nat - // Acquired From Package nat - uses nat_Entity-group; + type naming_Id; + description "Id"; + } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; } - // Command to be executed on the device - // This object is owned by the opflexelem - container odcreq-items { - list ODevCmdReq-list { + // IDEp stats is the object exchanged between opflex agent + // and opflex controller for the end point stats + container idepcntr-items { + list IDEpCntr-list { config "false"; - key "devId sessId cmdId"; + key "mac encap"; - // Added containment: Prefix=odcreq - // Acquired From Package opflex - uses opflex_ODevCmdReq-group; + uses opflex_IDEpCntr-group; } } - container odcresp-items { - list ODevCmdResp-list { + container vdep-items { + list VDEp-list { config "false"; - key "devId sessId cmdId"; + key "mac encap brIfId"; - // Added containment: Prefix=odcresp - // Acquired From Package opflex - uses opflex_ODevCmdResp-group; + uses fv_VDEp-group; + description "Vleaf Discovered Endpoint list"; } + description "Vleaf Discovered Endpoint"; } + } - // Holds ospf control plane entity information - container ospf-items { - - // Added containment as a singleton: Prefix=ospf - // Acquired From Package ospf - uses ospf_Entity-group; + grouping opflex_IDEpCntr-group { + leaf mac { + config "false"; + type address_Mac; } - - // L2EVPN instance definition - container evpn-items { - - // Added containment as a singleton: Prefix=evpn - // Acquired From Package rtctrl - uses rtctrl_L2Evpn-group; + leaf encap { + config "false"; + type string; } - container userext-items { + leaf direction { + config "false"; - // Added containment as a singleton: Prefix=userext - // Acquired From Package aaa - uses aaa_UserEp-group; + type opflex_Direction; + description "TBD"; } - // statsmock root objects - container mockroot-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mockroot - // Acquired From Package mock - uses mock_MockRoot-group; + type naming_Name; + description "Name"; } - // Holds stp control plane entity information - container stp-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=stp - // Acquired From Package stp - uses stp_Entity-group; + type naming_Id; + description "Id"; + } + } + + grouping fv_VDEp-group { + description "Vleaf Discovered Endpoint"; + leaf epgID { + config "false"; + type string; + } + + // Physical Interface ID on which this EP was attached + leaf brIfId { + config "false"; + + type nw_IfId; + description "TBD"; + } + + // instType + leaf instType { + config "false"; + + type comp_NicInstType; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + + leaf id { + config "false"; + + type naming_Id; + description "Id"; + } + leaf mac { + config "false"; + type address_Mac; + description "MacAddress"; + } + leaf encap { + config "false"; + type string; + } + leaf uuid { + config "false"; + type string; + } + + container rsvNode-items { + + list RsVNode-list { + key "tDn"; + + uses fv_RsVNode_source-group; + description "Relation to Virtual Node list"; + } + description "Relation to Virtual Node"; + } + } + + grouping synthetic_IfcCTestObj-group { + description "Synthetic Ifc C Test Object"; + leaf ifcCTestOnly { + type string; + } + + leaf name { + + type naming_Name; + description "Name"; + } + + leaf id { + + type naming_Id; + description "Id"; + } + + leaf descr { + + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + + container rttoObj-items { + + uses synthetic_RtToObj_target-group; + } + } + + grouping synthetic_SwCTestObj-group { + description "Synthetic Sw C Test Object"; + leaf swCTestOnly { + type string; + } + + leaf name { + + type naming_Name; + description "Name"; + } + + leaf id { + + type naming_Id; + description "Id"; + } + + leaf descr { + + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + + container rstoObj-items { + + uses synthetic_RsToObj_source-group; + } + + container rttoObj-items { + + uses synthetic_RtToObj_target-group; + } + } + + grouping System-group { + description "General information about this system"; + leaf name { + type string { + pattern "[0-9a-z-A-Z_\\.-]{0,63}"; + } + } + leaf currentTime { + config "false"; + type union { + type string; + type uint64; + } + description "Current Time on this system"; + } + leaf systemUpTime { + config "false"; + type union { + type string; + type uint64; + } + description "System Up Time in seconds since this system is booted"; + } + + // Serial Number of the system + leaf serial { + config "false"; + + type eqpt_Serial; + description "TBD"; + } + + // global config time stamp + leaf configModTs { + config "false"; + + type mo_TStamp; + description "set when config is performed"; + } + leaf configDirty { + config "false"; + type boolean; + default "false"; + description "set when config is performed, unset after copy r s"; + } + + leaf configModTsBackup { + config "false"; + + type mo_TStamp; + description "set when config is performed, backup old value"; + } + leaf configDirtyBackup { + config "false"; + type boolean; + default "false"; + description "set when config is performed, backup old value"; + } + + // Holds bgp control plane entity information + container bgp-items { + + uses bgp_Entity-group; + description "BGP control plane entity information."; + } + + // bgp trap + container bgptrap-items { + + uses bgp_Tbgp-group; + description "Configure SNMP BGP traps"; + } + + // cbgp2 trap + container cbgp2trap-items { + + uses bgp_Tcbgp2-group; + description "SNMP CISCO-BGP-MIBv2 traps"; + } + + container callhome-items { + + uses callhome_Callhome-group; + description "Callhome node, used as a placeholder for uniformity"; + } + + // Container to hold Capability logging level related objects and statistics + container caploglevel-items { + + uses cap_LogLevel-group; + description "Config Capability logging level"; + } + + container clock-items { + + uses datetime_Clock-group; + description "Clock Manager"; + } + + // Datetime policy + container time-items { + + uses datetime_ClkPol-group; + description "Date Time Policy"; + } + container ntpq-items { + list Ntpq-list { + config "false"; + key "remote"; + + uses datetime_Ntpq-group; + description "Ntp Concrete Details list"; + } + description "Ntp Concrete Details"; + } + + // Holds span manager control plane entity information + container span-items { + + uses span_Entity-group; + description "SPAN Entity"; + } + + container originip-items { + + uses span_ErspanOriginIp-group; + description "Global MO of origin Ip address for every Erspan session"; + } + + // Holds dhcp control plane entity information + container dhcp-items { + + uses dhcp_Entity-group; + description "DHCP Entity"; + } + + // Holds dns control plane entity information + container dns-items { + + uses dns_Entity-group; + description "DNS Entity"; + } + + // Event Manager MO + container email-items { + + uses email_Email-group; + description "Email configuration mode"; + } + + // Event Manager MO + container evtmgr-items { + + uses evms_EvtMgr-group; + description "Embedded event manager"; + } + + // Inband (sup) Interface + container inb-items { + list InbandIf-list { + key "id"; + + uses l2_InbandIf-group; + description "Layer2 Inband Interface list"; + } + description "Layer2 Inband Interface"; + } + + // Fex fabric Interface + container ext-items { + list ExtIf-list { + key "id"; + + uses l2_ExtIf-group; + description "Layer 2 Extending Interface list"; + } + description "Layer 2 Extending Interface"; + } + + // Bridged Interface + container br-items { + list BrIf-list { + key "id"; + + uses l2_BrIf-group; + description "Layer 2 Bridged Interface list"; + } + description "Layer 2 Bridged Interface"; + } + + // DN: sys/mac + container mac-items { + + uses l2_Macs-group; + description "Mac Address"; + } + + // Holds cdp control plane entity information + container cdp-items { + + uses cdp_Entity-group; + description "CDP Entity"; + } + + // Holds lldp control plane entity information + container lldp-items { + + uses lldp_Entity-group; + description "LLDP Entity"; + } + + // Holds VPC control plane entity information + container vpc-items { + + uses vpc_Entity-group; + description "VPC Entity"; + } + + // Container to hold Xbar logging level related objects and statistics + container xbarloglevel-items { + + uses xbar_LogLevel-group; + description "Config Xbar logging level"; + } + + // Entity for Gold + container gold-items { + + uses gold_Entity-group; + description "Gold Entity"; + } + + // Holds igmp control plane entity information + container igmp-items { + + uses igmp_Entity-group; + description "IGMP Entity"; + } + + // Holds isis control plane entity information + container isis-items { + + uses isis_Entity-group; + description "Holds ISIS Control Plane Entity Information"; + } + + container itd-items { + + uses itd_Entity-group; + description "ITD Entity"; + } + + // Holds lacp control plane entity information + container lacp-items { + + uses lacp_Entity-group; + description "LACP Entity"; + } + + // Mgmt interface + container mgmt-items { + list MgmtIf-list { + key "id"; + + uses mgmt_MgmtIf-group; + description "Management Interface list"; + } + description "Management Interface"; + } + + container logging-items { + + uses logging_Logging-group; + description "Logging root node for logging operations"; + } + + // Holds snmp control plane entity information + container snmp-items { + + uses snmp_Entity-group; + description "SNMP Entity"; + } + + // Holds syslog global accounting information + container syslogacct-items { + + uses syslog_Acct-group; + description "Syslog Accounting"; + } + + container syslog-items { + + uses syslog_Syslog-group; + description "syslog root node"; + } + + container mts-items { + + uses mts_Mts-group; + description "MTS stats"; + } + + container nat-items { + + uses nat_Entity-group; + description "NAT entity"; + } + + // Holds OSPF control plane entity information + container ospf-items { + + uses ospf_Entity-group; + description "Holds OSPF control plane entity information"; + } + + // L2EVPN instance definition + container evpn-items { + + uses rtctrl_L2Evpn-group; + description "L2EVPN Entity"; + } + + container comm-items { + + uses comm_Entity-group; + description "Communication Entity"; + } + + container userext-items { + + uses aaa_UserEp-group; + description "User Management"; + } + + container security-items { + + uses security_Security-group; + description "Security Rules For User And Fips"; + } + + container passwdenc-items { + + uses smartcard_PasswdEncrypt-group; + description "password encryption aes feature"; + } + + // Holds stp control plane entity information + container stp-items { + + uses stp_Entity-group; + description "STP Entity"; } // Aggregate BdTable container bdTable-items { - // Added containment as a singleton: Prefix=bdTable - // Acquired From Package aggregate uses aggregate_BdTable-group; + description "Bd Table"; } // Aggregate VlanTable container globalConfTable-items { - // Added containment as a singleton: Prefix=globalConfTable - // Acquired From Package aggregate uses aggregate_GlobalConfTable-group; + description "Global Configuration Table"; } // Aggregate InterfaceTable container intfTable-items { - // Added containment as a singleton: Prefix=intfTable - // Acquired From Package aggregate uses aggregate_IntfTable-group; + description "Interface Table"; } // Aggregate MacTable container macTable-items { - // Added containment as a singleton: Prefix=macTable - // Acquired From Package aggregate uses aggregate_MacTable-group; + description "MAC Table"; } container systemTable-items { - // Added containment as a singleton: Prefix=systemTable - // Acquired From Package aggregate uses aggregate_SystemTable-group; + description "System or switch level properties for SDN controller interface."; } // Aggregate InterfaceTable container tunnelIntfTable-items { - // Added containment as a singleton: Prefix=tunnelIntfTable - // Acquired From Package aggregate uses aggregate_TunnelIntfTable-group; + description "Tunnel Interface Table"; } // Aggregate VlanTable container vlanTable-items { - // Added containment as a singleton: Prefix=vlanTable - // Acquired From Package aggregate uses aggregate_VlanTable-group; + description "Vlan Table"; } // VPCDOMTAB container vpcDomTable-items { - // Added containment as a singleton: Prefix=vpcDomTable - // Acquired From Package aggregate uses aggregate_VpcDomTable-group; + description "Vpc Domain Table"; } container vrfTable-items { - // Added containment as a singleton: Prefix=vrfTable - // Acquired From Package aggregate uses aggregate_VrfTable-group; } // Holds ACL control plane configuration container acl-items { - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl uses acl_Entity-group; - } - - // Holds actrl control plane entity information - container actrl-items { - - // Added containment as a singleton: Prefix=actrl - // Acquired From Package actrl - uses actrl_Entity-group; - } - container actrlcapprov-items { - list Prov-list { - config "false"; - key "subj type"; - - // Added containment: Prefix=actrlcapprov - // Acquired From Package actrlcap - uses actrlcap_Prov-group; - } + description "Entity of the Access Control List"; } container analytics-items { - // Added containment as a singleton: Prefix=analytics - // Acquired From Package analytics uses analytics_Entity-group; + description "Entity"; } container hwtelemetry-items { - // Added containment as a singleton: Prefix=hwtelemetry - // Acquired From Package analytics uses analytics_HwTelemetry-group; + description "Entity for all Hardware Telemetry features"; + } + + container kubernetes-items { + + uses kbs_ContainerTracker-group; + description "Container Tracker entity"; } // Holds copp control plane entity information container copp-items { - // Added containment as a singleton: Prefix=copp - // Acquired From Package copp uses copp_Entity-group; + description "CoPP Entity"; } // Holds glean control plane entity information container glean-items { - // Added containment as a singleton: Prefix=glean - // Acquired From Package glean uses glean_Entity-group; + description "Glean Entity"; } // Holds HMM entity information container hmm-items { - // Added containment as a singleton: Prefix=hmm - // Acquired From Package hmm uses hmm_Entity-group; + description "Holds Host Mobility Manager (HMM) Entity information."; + } + + // Container for all the BDs in the system. + container bd-items { + + uses bd_Entity-group; + description "System BD"; } - // Holds icam entity information container icam-items { - // Added containment as a singleton: Prefix=icam - // Acquired From Package icam uses icam_Entity-group; + description "ICAM Entity"; } container ipqos-items { - // Added containment as a singleton: Prefix=ipqos - // Acquired From Package ipqos uses ipqos_Entity-group; + description "QoS configuration space"; } // Holds span manager control plane entity information container monitor-items { - // Added containment as a singleton: Prefix=monitor - // Acquired From Package monitor uses monitor_Entity-group; + description "Entity"; } container flow-items { - // Added containment as a singleton: Prefix=flow - // Acquired From Package flow uses flow_Entity-group; + description "Entity"; } // Holds NGOAM entity information container ngoam-items { - // Added containment as a singleton: Prefix=ngoam - // Acquired From Package ngoam uses ngoam_Entity-group; + description "NGOAM Entity"; } // nxapi config @@ -30246,119 +34470,88 @@ module Cisco-NX-OS-device { // could pick it own default setting. container nxapi-items { - // Added containment as a singleton: Prefix=nxapi - // Acquired From Package nxapi uses nxapi_Inst-group; + description "NXAPI Instance"; + } + + container ofm-items { + + uses ofm_Inst-group; + description "Static Tunnel"; } // Container for all the interfaces in the system. container poe-items { - // Added containment as a singleton: Prefix=poe - // Acquired From Package poe uses poe_Entity-group; + description "poe Entity"; } // Holds qos manager control plane entity information container qosm-items { - // Added containment as a singleton: Prefix=qosm - // Acquired From Package qosm uses qosm_Entity-group; + description "QoS Entity"; } // Holds sisf control plane entity information container sisf-items { - // Added containment as a singleton: Prefix=sisf - // Acquired From Package sisf uses sisf_Entity-group; + description "Enable/Disable FHS feature"; + } + + // Holds service control plane entity information + container sla-items { + + uses sla_Entity-group; + description "SLA"; } container tm-items { - // Added containment as a singleton: Prefix=tm - // Acquired From Package telemetry uses telemetry_Entity-group; + description "Telemetry System"; } // Holds object tracking entity information container track-items { - // Added containment as a singleton: Prefix=track - // Acquired From Package track uses track_Entity-group; + description "Object track entity"; } container udld-items { - // Added containment as a singleton: Prefix=udld - // Acquired From Package udld uses udld_Entity-group; + description "Unidirectional Link Detection Entity"; } - // Holds Acllog entity information - container acllog-items { + container vmtracker-items { - // Added containment as a singleton: Prefix=acllog - // Acquired From Package acllog - uses acllog_Entity-group; + uses vmtracker_VmTracker-group; + description "VmTracker entity"; } - // Container for all the BDs in the system. - container bd-items { + // Holds Acllog entity information + container acllog-items { - // Added containment as a singleton: Prefix=bd - // Acquired From Package bd - uses bd_Entity-group; + uses acllog_Entity-group; + description "Acllog entity"; } // TemplateTable MO container templateTable-items { - // Added containment as a singleton: Prefix=templateTable - // Acquired From Package conftmpl uses conftmpl_TemplateTable-group; - } - - // Holds Storage information - container fc-items { - - // Added containment as a singleton: Prefix=fc - // Acquired From Package fc - uses fc_Entity-group; - } - - // Holds Fcoe-mgr control plane entity information - container fcoe-items { - - // Added containment as a singleton: Prefix=fcoe - // Acquired From Package fcoe - uses fcoe_Entity-group; - } - - // Holds NPV entity information - container npv-items { - - // Added containment as a singleton: Prefix=npv - // Acquired From Package npv - uses npv_Entity-group; - } - - // Holds Vsan-mgr control plane entity information - container vsanmgr-items { - - // Added containment as a singleton: Prefix=vsanmgr - // Acquired From Package vsanmgr - uses vsanmgr_Entity-group; + description "Template Table"; } // Holds feature entity information container fm-items { - // Added containment as a singleton: Prefix=fm - // Acquired From Package fm uses fm_Entity-group; + description "Feature entity"; } // This object information is common to featureSet @@ -30366,135 +34559,131 @@ module Cisco-NX-OS-device { list FeatureSet-list { key "name"; - // Added containment: Prefix=fset - // Acquired From Package fset uses fset_FeatureSet-group; + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function list"; } + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function"; + } + + // Guest Shell Top Object + container guestshell-items { + + uses guestshell_GuestShell-group; + description "Guest Shell execution space"; } // Exec results container install-items { - // Added containment as a singleton: Prefix=install - // Acquired From Package installer uses installer_Install-group; + description "Image installation information and result"; } // Container for all the interfaces in the system. container intf-items { - // Added containment as a singleton: Prefix=intf - // Acquired From Package interface uses interface_Entity-group; + description "Interface"; } // Holds ipv4 control plane entity information container ipv4-items { - // Added containment as a singleton: Prefix=ipv4 - // Acquired From Package ipv4 uses ipv4_Entity-group; + description "IPv4 Entity"; } // Holds ipv6 control plane entity information container ipv6-items { - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package ipv6 uses ipv6_Entity-group; - } - container l1capprov-items { - list Prov-list { - config "false"; - key "subj type"; - - // Added containment: Prefix=l1capprov - // Acquired From Package l1cap - uses l1cap_Prov-group; - } + description "IPv6 Entity"; } container ethpm-items { - // Added containment as a singleton: Prefix=ethpm - // Acquired From Package ethpm uses ethpm_Entity-group; + description "Ethernet Port Manager Entity"; } container breakout-items { - // Added containment as a singleton: Prefix=breakout - // Acquired From Package im uses im_Breakout-group; + description "Interface Breakout"; } container im-items { - // Added containment as a singleton: Prefix=im - // Acquired From Package im uses im_Entity-group; + description "Interface Manager Entity"; } container pc-items { - // Added containment as a singleton: Prefix=pc - // Acquired From Package pc uses pc_Entity-group; + description "Port Channel Entity"; } container l2capprov-items { list Prov-list { config "false"; key "subj type"; - // Added containment: Prefix=l2capprov - // Acquired From Package l2cap uses l2cap_Prov-group; + description "L2 Capability Provider list"; } + description "L2 Capability Provider"; } - container fcpm-items { + container flexlink-items { - // Added containment as a singleton: Prefix=fcpm - // Acquired From Package fcpm - uses fcpm_Entity-group; + uses flexlink_Flexlink-group; + description "Flexlink configuration and management"; } container l2fm-items { - // Added containment as a singleton: Prefix=l2fm - // Acquired From Package l2fm uses l2fm_Entity-group; + description "l2fm"; + } + + container l2pt-items { + + uses l2pt_L2protocol-group; + description "L2 Protocol Tunneling configuration and management"; } // L2RIB control plane entity information container l2rib-items { - // Added containment as a singleton: Prefix=l2rib - // Acquired From Package l2rib uses l2rib_Entity-group; + description "L2RIB Entity"; + } + + // DN: sys/portsecurity + container portsec-items { + + uses portsecurity_PortSecurity-group; + description "Port Security configuration and management at interface"; } - // Holds PVLAN control plane entity information + // PVLAN control plane information DN: sys/pvlan container pvlan-items { - // Added containment as a singleton: Prefix=pvlan - // Acquired From Package pvlan - uses pvlan_Entity-group; + uses pvlan_PrivateVlan-group; + description "Private VLAN (PVLAN) configuration and management"; } // Holds Vlan-mgr control plane entity information container vlanmgr-items { - // Added containment as a singleton: Prefix=vlanmgr - // Acquired From Package vlanmgr uses vlanmgr_Entity-group; + description "Vlan Manager Entity"; } container eps-items { - // Added containment as a singleton: Prefix=eps - // Acquired From Package nvo uses nvo_Eps-group; + description "Container object for NVO endpoint."; } // tenant context object @@ -30502,10 +34691,10 @@ module Cisco-NX-OS-device { list Ctx-list { key "encap"; - // Added containment: Prefix=ctx - // Acquired From Package l3 uses l3_Ctx-group; + description "Context list"; } + description "Context"; } // Overlay instance object @@ -30513,256 +34702,231 @@ module Cisco-NX-OS-device { list Inst-list { key "name"; - // Added containment: Prefix=inst - // Acquired From Package l3 uses l3_Inst-group; + description "Overlay Instance list"; } + description "Overlay Instance"; } container l3capprov-items { list Prov-list { config "false"; key "subj type"; - // Added containment: Prefix=l3capprov - // Acquired From Package l3cap uses l3cap_Prov-group; + description "L3 Capability Provider list"; } + description "L3 Capability Provider"; + } + + // Holds ipfib entity information + container ipfib-items { + + uses ipfib_Entity-group; + description "Ipfib Entity Information"; } // Holds l3vm entity information container l3vm-items { - // Added containment as a singleton: Prefix=l3vm - // Acquired From Package l3vm uses l3vm_Entity-group; + description "L3VM Entity"; } container urib-items { - // Added containment as a singleton: Prefix=urib - // Acquired From Package urib uses urib_Entity4-group; + description "Urib ipv4 root element"; } container u6rib-items { - // Added containment as a singleton: Prefix=u6rib - // Acquired From Package urib uses urib_Entity6-group; + description "Urib ipv6 root element"; } // Entity information container uribv4-items { - // Added containment as a singleton: Prefix=uribv4 - // Acquired From Package uribv4 uses uribv4_Entity-group; + description "IPv4 Unicast Routing Information Base Entity"; } // Entity information container uribv6-items { - // Added containment as a singleton: Prefix=uribv6 - // Acquired From Package uribv6 uses uribv6_Entity-group; + description "Unicast Routing Information Base Entity"; } - // Connection group - container conng-items { + // Holds mmode entity information + container mmode-items { - // Added containment as a singleton: Prefix=conng - // Acquired From Package nw - uses nw_ConnGrp-group; + uses mmode_Entity-group; + description "MMODE Entity"; } - - // DEPRICATE: CONTROLLED VI AINSTANCES ETC. virtual device Context (vdc) TODO: should derive from super="naming:NamedDerivedObject" container vdc-items { list Vdc-list { - config "false"; key "id"; - // Added containment: Prefix=vdc - // Acquired From Package nw uses nw_Vdc-group; + description "VDC list"; } + description "VDC"; + } + + container nxsdk-items { + + uses nxsdk_Entity-group; + description "Nx-sdk Manager"; + } + + // Holds pktmgr entity information + container pktmgr-items { + + uses pktmgr_Entity-group; + description "Pktmgr Entity"; } // Container of processes in the system container procsys-items { - // Added containment as a singleton: Prefix=procsys - // Acquired From Package proc uses proc_System-group; + description "System Process Information"; } // Container of processes in the system + // Ephemeral data container proc-items { - // Added containment as a singleton: Prefix=proc - // Acquired From Package proc uses proc_Entity-group; - } - container regr-items { - list If-list { - config "false"; - key "id"; - - // Added containment: Prefix=regr - // Acquired From Package regress - uses regress_If-group; - } + description "Process Entity"; } // Holds rpm control plane entity information container rpm-items { - // Added containment as a singleton: Prefix=rpm - // Acquired From Package rpm uses rpm_Entity-group; + description "Route Policy Map Entity"; } container ipSrcIf-items { - // Added containment as a singleton: Prefix=ipSrcIf - // Acquired From Package srcintf uses srcintf_Entity-group; + description " IP Source Interface"; } // Install RPM Packages in the system container swpkgs-items { - // Added containment as a singleton: Prefix=swpkgs - // Acquired From Package swpkgs uses swpkgs_Install-group; + description "Software packages Install"; } // Holds sysmgr control plane entity information container sysmgr-items { - // Added containment as a singleton: Prefix=sysmgr - // Acquired From Package sysmgr uses sysmgr_Entity-group; + description "Entity"; } // Holds show version information container showversion-items { - // Added containment as a singleton: Prefix=showversion - // Acquired From Package sysmgr uses sysmgr_ShowVersion-group; + description "Show Version CLI"; } // Holds tcpudp entity information container tcpudp-items { - // Added containment as a singleton: Prefix=tcpudp - // Acquired From Package tcpudp uses tcpudp_Entity-group; + description "Tcpdp Entity"; } // Terminal MO to form the base, which means the user terminal base container terml-items { - // Added containment as a singleton: Prefix=terml - // Acquired From Package terminal uses terminal_Terminal-group; + description "Terminal"; } // Organizes the terminal log-all specific property container termlog-items { - // Added containment as a singleton: Prefix=termlog - // Acquired From Package terminal uses terminal_TerminalLog-group; - } - - // Rule for concrete test app - container test_rule-items { - list CRule-list { - config "false"; - key "name"; - - // Added containment: Prefix=test_rule - // Acquired From Package test - uses test_CRule-group; - } - } - - // Result for concrete test app - container test_rslt_-items { - list CRslt-list { - config "false"; - key "name ts"; - - // Added containment: Prefix=test_rslt_ - // Acquired From Package test - uses test_CRslt-group; - } + description "Enable accounting log for all commands"; } container tunnel-items { list If-list { config "false"; key "id"; - // Added containment: Prefix=tunnel - // Acquired From Package tunnel uses tunnel_If-group; + description "Tunnel Interface list"; } + description "Tunnel Interface"; + } + + // Top MO for branching everything under + container virtualservice-items { + + uses virtualService_VirtualServiceTop-group; + description "Virtual Service"; } // Holds VTP control plane entity information container vtp-items { - // Added containment as a singleton: Prefix=vtp - // Acquired From Package vtp uses vtp_Entity-group; + description "VTP Entity"; + } + + // Wedge BMC(Board Management Controller) IP + container wedge-items { + + uses wedge_Bmc-group; + description "Wedge BMC IP"; } // Top MO for branching everything under container nbm-items { - // Added containment as a singleton: Prefix=nbm - // Acquired From Package nbm uses nbm_NbmTop-group; + description "Non Blocking Multicast."; } // Top MO for branching everything under container nbmcc-items { - // Added containment as a singleton: Prefix=nbmcc - // Acquired From Package nbm uses nbm_NbmCcTable-group; + description "Non Blocking Multicast Consistency Checker"; } // Top MO for branching everything under container nbmFlowsTable-items { - // Added containment as a singleton: Prefix=nbmFlowsTable - // Acquired From Package nbm uses nbm_NbmFlowsTable-group; + description "Non Blocking Multicast"; } // Top MO for branching everything under container nbmStats-items { - // Added containment as a singleton: Prefix=nbmStats - // Acquired From Package nbm uses nbm_NbmStats-group; + description "Non Blocking Multicast"; } container boot-items { - // Added containment as a singleton: Prefix=boot - // Acquired From Package boot uses boot_Boot-group; + description "Configure boot images"; } // Hardware chassis container container ch-items { - // Added containment as a singleton: Prefix=ch - // Acquired From Package eqpt uses eqpt_Ch-group; + description "The hardware chassis information container"; } // Extension chassis @@ -30771,275 +34935,281 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=extch - // Acquired From Package eqpt uses eqpt_ExtCh-group; + description "FEX list"; } + description "FEX"; } // Equipment policy container container ops-items { - // Added containment as a singleton: Prefix=ops - // Acquired From Package eqpt uses eqpt_Entity-group; + description "Equipment Policy Entity"; } - // Container to hold equipment capacity related - // objects and statistics - container eqptcapacity-items { - - // Added containment as a singleton: Prefix=eqptcapacity - // Acquired From Package eqptcapacity - uses eqptcapacity_Entity-group; - } - - // Holds diag related entity information - container diag-items { - - // Added containment as a singleton: Prefix=diag - // Acquired From Package eqptdiag - uses eqptdiag_Entity-group; - } - - // Loose Node - // @@@ Represents a External Connected Node. - // @@@ for eg: Blade Switch attached to a Leaf Node - container lsnode-items { - list LooseNode-list { - key "id"; + // Holds lcm entity information + container lcm-items { - // Added containment: Prefix=lsnode - // Acquired From Package leqpt - uses leqpt_LooseNode-group; - } + uses lcm_Entity-group; + description "lcm entity"; } // Container for all the interfaces in the system. container pltfm-items { - // Added containment as a singleton: Prefix=pltfm - // Acquired From Package platform uses platform_Entity-group; + description "Platform Entity"; } // Satellite manager entity information container satm-items { - // Added containment as a singleton: Prefix=satm - // Acquired From Package satm uses satm_Entity-group; + description "Satellite Manager Entity"; } // Holds adjacency information container adjacency-items { - // Added containment as a singleton: Prefix=adjacency - // Acquired From Package adjacency uses adjacency_Entity-group; + description "Adjacency Entity"; } // Holds arp control plane entity information container arp-items { - // Added containment as a singleton: Prefix=arp - // Acquired From Package arp uses arp_Entity-group; + description "ARP Entity"; } // Holds bfd control plane entity information container bfd-items { - // Added containment as a singleton: Prefix=bfd - // Acquired From Package bfd uses bfd_Entity-group; + description "BFD Entity"; + } + + // Holds cfs control plane entity information + container cfs-items { + + uses cfs_Entity-group; + description "Cfs Entity"; + } + + // Holds dot1x control plane entity information + container dot1x-items { + + uses dot1x_Entity-group; + description "Dot1x entity information"; } // Holds HSRP control plane entity information container hsrp-items { - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package hsrp uses hsrp_Entity-group; + description "HSRP Entity"; } // Holds icmpv4 control plane entity information container icmpv4-items { - // Added containment as a singleton: Prefix=icmpv4 - // Acquired From Package icmpv4 uses icmpv4_Entity-group; + description "ICMPv4 Entity"; } // Holds icmpv6 control plane entity information container icmpv6-items { - // Added containment as a singleton: Prefix=icmpv6 - // Acquired From Package icmpv6 uses icmpv6_Entity-group; + description "ICMPv6 Entity"; } // Holds igmp control plane entity information container igmpsnoop-items { - // Added containment as a singleton: Prefix=igmpsnoop - // Acquired From Package igmpsnoop uses igmpsnoop_Entity-group; + description "Holds IGMP Snooping Entity Information"; } // Holds m6rib entity information container m6rib-items { - // Added containment as a singleton: Prefix=m6rib - // Acquired From Package m6rib uses m6rib_Entity-group; + description "Holds M6RIB entity information"; } // Holds macsec control plane entity information container macsec-items { - // Added containment as a singleton: Prefix=macsec - // Acquired From Package macsec uses macsec_Entity-group; + description "Macsec control plane entity"; } // Holds mcastfwd control plane entity information container mcastfwd-items { - // Added containment as a singleton: Prefix=mcastfwd - // Acquired From Package mcastfwd uses mcastfwd_Entity-group; + description "Holds Multicast Forwarding Entity Information"; + } + + // Holds mld control plane entity information + container mld-items { + + uses mld_Entity-group; + description "MLD Entity"; } // Holds mld control plane entity information container mldsnoop-items { - // Added containment as a singleton: Prefix=mldsnoop - // Acquired From Package mldsnoop uses mldsnoop_Entity-group; + description "Holds MLD Snooping Entity Information"; + } + + // Holds mpls LDP entity information + container ldp-items { + + uses mplsldp_LDP-group; + description "MPLS LDP Entity, anchoring all LDP specific MOs"; } // Mpls container mpls-items { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package mpls uses mpls_Entity-group; + description "Root MPLS Manager entity anchoring general MPLS MOs"; } // Mpls container mplsstatic-items { - // Added containment as a singleton: Prefix=mplsstatic - // Acquired From Package mplsstatic uses mplsstatic_Entity-group; + description "Root MPLS Static entity anchoring MPLS Static MOs"; } // Label Table container labeltable-items { - // Added containment as a singleton: Prefix=labeltable - // Acquired From Package ulib uses ulib_LabelTable-group; + description "Label Table. Contains aggregate properties for allocated labels and anchors children that describe the allocated labels"; } // Holds mrib entity information container mrib-items { - // Added containment as a singleton: Prefix=mrib - // Acquired From Package mrib uses mrib_Entity-group; + description "Holds MRIB entity information"; } // Holds MSDP control plane entity information container msdp-items { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package msdp uses msdp_Entity-group; + description "Holds MSDP control plane entity information"; } - // Holds nd control plane entity information - container nd-items { + // Holds mvpn control plane entity information + container mvpn-items { + + uses mvpn_Entity-group; + description "Holds MVPN control plane entity information"; + } + + // Holds nd control plane entity information + container nd-items { - // Added containment as a singleton: Prefix=nd - // Acquired From Package nd uses nd_Entity-group; + description "Neighbor Discover Entity"; } // Holds NGMVPN // entity information container ngmvpn-items { - // Added containment as a singleton: Prefix=ngmvpn - // Acquired From Package ngmvpn uses ngmvpn_Entity-group; + description "Fabric Group Manager Entity, which hold NGMVPN entity information"; + } + + // Holds openflow entity information + container openflow-items { + + uses openflow_Entity-group; + description "Openflow Entity Object"; + } + + // Holds OSPFv3 control plane entity information + container ospfv3-items { + + uses ospfv3_Entity-group; + description "OSPFv3 control plane entity information"; } // Holds pim control plane entity information container pim-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package pim uses pim_Entity-group; + description "Holds PIM control plane entity information"; } // Holds pim6 control plane entity information container pim6-items { - // Added containment as a singleton: Prefix=pim6 - // Acquired From Package pim6 uses pim6_Entity-group; + description "Holds PIM6 control plane entity information"; + } + + // Holds ptp control plane entity information + container ptp-items { + + uses ptp_PtpEntity-group; + description "PTP Entity MO for all the PTP global configuration properties"; } // Holds Segment-routing entity information container segrt-items { - // Added containment as a singleton: Prefix=segrt - // Acquired From Package segrt uses segrt_Entity-group; + description "Segment-routing Entity"; } // Holds vrrp control plane entity information container vrrp-items { - // Added containment as a singleton: Prefix=vrrp - // Acquired From Package vrrp uses vrrp_Entity-group; + description "VRRP Entity"; } // Holds vrrpv3 control plane entity information container vrrpv3-items { - // Added containment as a singleton: Prefix=vrrpv3 - // Acquired From Package vrrpv3 uses vrrpv3_Entity-group; + description "VRRPv3 Entity"; } // Root node for scratchpad subtree container scrtchpdrt-items { - // Added containment as a singleton: Prefix=scrtchpdrt - // Acquired From Package scrtchpd uses scrtchpd_Root-group; + description "Root"; } container sectl-items { list SwTLTestObj-list { key "name"; - // Added containment: Prefix=sectl - // Acquired From Package synthetic uses synthetic_SwTLTestObj-group; + description "Synthetic Sw TL Test Object list"; } + description "Synthetic Sw TL Test Object"; } container caggr-items { list AggrIf-list { key "id"; - // Added containment: Prefix=caggr - // Acquired From Package cnw uses cnw_AggrIf-group; + description "Controller Aggregated Interface list"; } + description "Controller Aggregated Interface"; } // Physical ethernet interface information holder @@ -31047,359 +35217,350 @@ module Cisco-NX-OS-device { list PhysIf-list { key "id"; - // Added containment: Prefix=cphys - // Acquired From Package cnw uses cnw_PhysIf-group; + description "Controller Physical Interface list"; } + description "Controller Physical Interface"; + } + + // CliAlias entries list + container clialias-items { + list CliAlias-list { + key "aliasName"; + + uses vshd_CliAlias-group; + description "Cli alias configuration list"; + } + description "Cli alias configuration"; + } + + // CliAlias Check + container clialiascheck-items { + + uses vshd_CliAliasCheck-group; + description "Cli alias check configuration"; + } + + // CLI Variable + container clivar-items { + list CliVar-list { + key "varName"; + + uses vshd_CliVar-group; + description "Configure CLI commands list"; + } + description "Configure CLI commands"; } container action-items { - // Added containment as a singleton: Prefix=action - // Acquired From Package action uses action_LCont-group; + description "Action Container of mo LCont"; } - // Rel-def target from tsSrc - // Inherited From top:System container rtdbgexpTsSrc-items { - // Abstract containment of rtdbgexpTsSrc derived from top:System list RtDbgexpTsSrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rtdbgexpTsSrc - // Acquired From Package dbgexp uses dbgexp_RtDbgexpTsSrc_target-group; + description "Relation to Traceroute Source Node list"; } + description "Relation to Traceroute Source Node"; } - // Rel-def target from trSrc - // Inherited From top:System container rttraceroutepTrSrc-items { - // Abstract containment of rttraceroutepTrSrc derived from top:System list RtTraceroutepTrSrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rttraceroutepTrSrc - // Acquired From Package traceroutep uses traceroutep_RtTraceroutepTrSrc_target-group; + description "Relation to Source Node list"; } + description "Relation to Source Node"; } - // Rel-def target from trDst - // Inherited From top:System container rttraceroutepTrDst-items { - // Abstract containment of rttraceroutepTrDst derived from top:System list RtTraceroutepTrDst-list { config "false"; key "tDn"; - // Added containment: Prefix=rttraceroutepTrDst - // Acquired From Package traceroutep uses traceroutep_RtTraceroutepTrDst_target-group; + description "Relation to Traceroute Destination list"; } + description "Relation to Traceroute Destination"; } - // Rel-def target from fwinstlsrc - // Inherited From top:System container rtmaintFwinstlsrc-items { - // Abstract containment of rtmaintFwinstlsrc derived from top:System list RtMaintFwinstlsrc-list { config "false"; key "tDn"; - // Added containment: Prefix=rtmaintFwinstlsrc - // Acquired From Package maint uses maint_RtMaintFwinstlsrc_target-group; + description "Relation to Source Node list"; } + description "Relation to Source Node"; } } grouping bgp_Entity-group { + description "BGP control plane entity information."; - // Inherited From nw:Conn - // Modified by Override: bgp:Entity->name - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per bgp instance information. There is only // instance supported in bgp container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package bgp uses bgp_Inst-group; + description + "Config and runtime information of + per BGP instance"; } } grouping bgp_Inst-group { + description + "Config and runtime information of + per BGP instance"; // Autonomous system number - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)]) "; } // Disable Policy Batching - // Type is an MO-Defined-Type leaf disPolBatch { - description "Disable Batching Evaluation To All Peers"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Disable Batching Evaluation To All Peers"; } leaf disPolBatchv4PfxLst { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Disable Batching Evaluation Of IPv4 Prefix Advertisements To All Peers"; } leaf disPolBatchv6PfxLst { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Disable Batching Evaluation Of IPv6 Prefix Advertisements To All Peers"; } leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Creation Timestamp, denotes the time when this instance was created"; } leaf activateTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Activation Timestamp, the time when this instance is activated with all the configuration"; } leaf waitDoneTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Wait Done Timestamp, the timestamp when the bgp protocol was out of wait mode"; } // Memory alert level - // Type is an MO-Defined-Type leaf memAlert { config "false"; - description "Memory Alert Level"; - // Type is an MO-Defined-Type type nw_MemAlertLevel; + description "Memory Alert Level"; } // Number of route attribute entries learned - // Type is an MO-Defined-Type leaf numRtAttrib { config "false"; - description "Route Attributes"; - // Type is an MO-Defined-Type type cap_Quant; + description "Route Attributes"; } // Current size of attribute database - // Type is an MO-Defined-Type leaf attribDbSz { config "false"; - description "Attribute Database Size"; - // Type is an MO-Defined-Type type bgp_AttribDbSz; + description "Attribute Database Size"; } // Number of AS path entries learned - // Type is an MO-Defined-Type leaf numAsPath { config "false"; - description "AS Paths entries"; - // Type is an MO-Defined-Type type cap_Quant; + description "AS Paths entries"; } // Current size of AS path database - // Type is an MO-Defined-Type leaf asPathDbSz { config "false"; - description "AS Path Database Size"; - // Type is an MO-Defined-Type type bgp_AsPathDbSz; + description "AS Path Database Size"; } // Enable/Disable isolate bgp - // Type is an MO-Defined-Type leaf isolate { - description "Isolate router from BGP perspective"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Isolate router from BGP perspective"; } // MED dampening interval - // Type is an MO-Defined-Type leaf medDampIntvl { - description "Setting med dampening interval"; - // Type is an MO-Defined-Type type bgp_MedIntvl; + description "Setting med dampening interval"; } leaf fabricSoo { type mtx_array_community; + description "Fabric Site of Origin extcommunity"; } // Enable/Disable flush-routes bgp - // Type is an MO-Defined-Type leaf flushRoutes { - description "Flush routes in RIB upon controlled restart"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Flush routes in RIB upon controlled restart"; } // Activate the affinity group activate - // Type is an MO-Defined-Type leaf affGrpActv { - description "Activate the affinity group"; - // Type is an MO-Defined-Type type bgp_AffGrpActv; + description "Activate the affinity group"; } // Segment routing global block min range value - // Type is an MO-Defined-Type leaf srgbMinLbl { config "false"; - description "Segment Routing Global Block Min Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; - // Type is an MO-Defined-Type type bgp_SRGBRange; + description "Segment Routing Global Block Min Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; } // Segment routing global block max range value - // Type is an MO-Defined-Type leaf srgbMaxLbl { config "false"; - description "Segment Routing Global Block Max Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; - // Type is an MO-Defined-Type type bgp_SRGBRange; + description "Segment Routing Global Block Max Label. (Value should be in the range 16000-471804 when feature segment-routing is enabled."; } // EPE Configured Peers - // Type is an MO-Defined-Type leaf epeConfiguredPeers { config "false"; - description "EPE Configured Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "EPE Configured Peers"; } // EPE Active Peers - // Type is an MO-Defined-Type leaf epeActivePeers { config "false"; - description "EPE Active Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "EPE Active Peers"; } // Link-State Server - // Type is an MO-Defined-Type leaf lnkStSrvr { config "false"; - description "EPE Link-State Server"; - // Type is an MO-Defined-Type type bgp_LsAdminSt; + description "EPE Link-State Server"; } // Link-State Client - // Type is an MO-Defined-Type leaf lnkStClnt { config "false"; - description "EPE Link-State Server"; - // Type is an MO-Defined-Type type bgp_LsAdminSt; + description "EPE Link-State Server"; + } + + // nexthop suppress-default-resolution + leaf nhSupprDefRes { + + type bgp_AdminSt; + description "Suppress use of default route for nexthop address resolution"; + } + leaf enhancedErr { + type boolean; + default "true"; + description "Enable BGP Enhanced Error Handling to prevent inadvertent session resets for minor errors. See RFC7606 for more details"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Inst->name - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Modified by Override: bgp:Inst->ctrl - // Type is an MO-Defined-Type // Default value handled in local MO type leaf ctrl { - description "fastExtFallover"; // Type is a Local-MO-Defined-Type type nw_InstCtrl_Inst_ctrl; + description "Fast External Fallover"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per bgp domain (vrf) information @@ -31407,10 +35568,10 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package bgp uses bgp_Dom-group; + description "Domain: Virtual Router Context list"; } + description "Domain: Virtual Router Context"; } // This object holds global BGP customized buffer for event-history @@ -31418,270 +35579,229 @@ module Cisco-NX-OS-device { list EvtHist-list { key "type"; - // Added containment: Prefix=evthist - // Acquired From Package bgp uses bgp_EvtHist-group; + description "BGP customized buffer detail for event-history list"; } + description "BGP customized buffer detail for event-history"; } // This object holds bgp operational information. container oper-items { - // Added containment as a singleton: Prefix=oper - // Acquired From Package bgp uses bgp_OperBgp-group; + description + "Top-level container to hold BGP + runtime operational data"; } } grouping bgp_Dom-group { + description "Domain: Virtual Router Context"; // Mode, (external | fabric) - // Type is an MO-Defined-Type leaf mode { - description "Mode"; - // Type is an MO-Defined-Type type bgp_Mode; + description "BGP running in Fabric or External mode, default is fabric"; } // Router id - // Type is an MO-Defined-Type leaf rtrId { - description "Holds ip address to use as Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Holds ip address to use as Router ID"; } // Route refelector id (cluster id) identifies the cluster // of the route reflector domain. // The regular expression allows (1) a cluster id of value between // 1-4294967295 or (2) an IPv4 address. - // Type is an MO-Defined-Type leaf clusterId { - description "Route Reflector Cluster ID"; - // Type is an MO-Defined-Type type bgp_ClusterId { + pattern "(|(1|(\\+)?[1-9]{1}[0-9]{0,8}|(\\+)?[1-3]{1}[0-9]{1,9}|(\\+)?4{1}([0-1]{1}[0-9]{8}|2{1}([0-8]{1}[0-9]{7}|9{1}([0-3]{1}[0-9]{6}|4{1}([0-8]{1}[0-9]{5}|9{1}([0-5]{1}[0-9]{4}|6{1}([0-6]{1}[0-9]{3}|7{1}([0-1]{1}[0-9]{2}|2{1}([0-8]{1}[0-9]{1}|9{1}[0-5]{1})))))))))|((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]?))"; } + description "Route Reflector Cluster ID"; } // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive interval timer in secs"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive interval timer in secs"; } // Hold interval, how long you wait before you declare the // neighbor down - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold interval timer in secs"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold interval timer in secs"; } // Prefix Peer Timeout - // Type is an MO-Defined-Type leaf pfxPeerTimeout { - description "Prefix Peer Timeout in secs"; - // Type is an MO-Defined-Type type bgp_PfxPeerTimeout; + description "Prefix Peer Timeout in secs"; } // Prefix Peer Wait Time - // Type is an MO-Defined-Type leaf pfxPeerWaitTime { - description "Prefix Peer Wait Time in secs"; - // Type is an MO-Defined-Type type bgp_PfxPeerWaitTime; + description "Prefix Peer Wait Time in secs"; } // Maximum AS limit, to discard routes that have excessive // AS numbers - // Type is an MO-Defined-Type leaf maxAsLimit { - description "Max AS-Path limit from EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_MaxAsLimit; - } - leaf rd { - type mtx_array_community; + description "Max AS-Path limit from EBGP neighbor"; } // Timeout for first bestpath after restart - // Type is an MO-Defined-Type leaf bestPathIntvl { - description "Holds timeout for first bestpath after restart"; - // Type is an MO-Defined-Type type bgp_BestPathIntvl; + description "Holds timeout for first bestpath after restart"; } // Update Delay Option for first bestpath timeout - // Type is an MO-Defined-Type leaf always { - description "Update delay option for first bestpath timeout"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Update delay option for first bestpath timeout"; } // Configure connection reconnect interval in secs - // Type is an MO-Defined-Type leaf reConnIntvl { - description "Connection reconnect interval in secs"; - // Type is an MO-Defined-Type type bgp_ReConnectIntvl; - } - - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; + description "Connection reconnect interval in secs"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_DomOperSt; + description "Operational State"; } // Operational router id - // Type is an MO-Defined-Type leaf operRtrId { config "false"; - description "Operational Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Operational Router ID"; } leaf firstPeerUpTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Peer Up Timestamp"; } // Number of Peers - // Type is an MO-Defined-Type leaf numPeers { config "false"; - description "Number of Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Peers"; } // Number of Configured Peers pending - // Type is an MO-Defined-Type leaf numPeersPending { config "false"; - description "Number of Configured Peers pending"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Configured Peers pending"; } // Number of Established Peers - // Type is an MO-Defined-Type leaf numEstPeers { config "false"; - description "Number of Established Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Established Peers"; } // VRF Id - // Type is an MO-Defined-Type leaf id { config "false"; - description "VRF Id"; - // Type is an MO-Defined-Type type bgp_DomId; + description "VRF Id"; } // VRF Vnid - // Type is an MO-Defined-Type leaf vnid { config "false"; - description "Domain Vnid (Value in the range 1-16777214)"; - // Type is an MO-Defined-Type type bgp_Vnid; + description "Domain Vnid (Value in the range 1-16777214)"; } leaf vtepIp { config "false"; type address_Ip; + description "VTEP IP address"; } leaf vtepVirtIp { config "false"; type address_Ip; + description "VTEP Virtual IP address"; } leaf routerMac { config "false"; type address_Mac; + description "Router Mac address from nve"; } // Local ASN - // Type is an MO-Defined-Type leaf localAsn { - description "Local Asn for the EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Local Asn for the EBGP neighbor"; + } + leaf allocIndex { + type uint32 { + range "0..8000"; + } + description "Allocate index for vrf (Value in the range 1-8000)"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Dom->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } + description "Name"; } // This object holds global BGP knobs at Dom level container rtctrl-items { - // Added containment as a singleton: Prefix=rtctrl - // Acquired From Package bgp uses bgp_RtCtrl-group; + description "Route Control Information"; } // This object holds global BGP bestpath knobs at Dom level container pathctrl-items { - // Added containment as a singleton: Prefix=pathctrl - // Acquired From Package bgp uses bgp_PathCtrl-group; + description "Path Control"; } // AS Confed are needed to club ASNs together to look like a single ASN container confed-items { - // Added containment as a singleton: Prefix=confed - // Acquired From Package bgp uses bgp_Confederation-group; + description "AS confederation parameters"; } // This object holds per address family bgp vrf information @@ -31689,10 +35809,10 @@ module Cisco-NX-OS-device { list DomAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_DomAf-group; + description "Address Family Information list"; } + description "Address Family Information"; } // This object holds the BMP server information @@ -31700,29 +35820,57 @@ module Cisco-NX-OS-device { list BmpSvr-list { key "id"; - // Added containment: Prefix=bmp - // Acquired From Package bgp uses bgp_BmpSvr-group; + description "BMP server configuration list"; } + description "BMP server configuration"; } // This objects hold per domain graceful restart information container gr-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package bgp uses bgp_Gr-group; + description "Graceful Restart"; } - // This object holds bgp information pertaining to a peer + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + } + + // This object holds bgp information pertaining to a peer with ip container peer-items { list Peer-list { key "addr"; - // Added containment: Prefix=peer - // Acquired From Package bgp uses bgp_Peer-group; + description "BGP Peer: BGP information pertaining to a peer with ip list"; + } + description "BGP Peer: BGP information pertaining to a peer with ip"; + } + + // This object holds bgp information pertaining to a peer with intf + container peerif-items { + list PeerIf-list { + key "id"; + + uses bgp_PeerIf-group; + description "BGP Peer: BGP information pertaining to a peer with interface list"; } + description "BGP Peer: BGP information pertaining to a peer with interface"; + } + + // This object holds Bgp's Segment Routing configurations + container segrt-items { + list SgmtRtg-list { + key "sr"; + + uses bgp_SgmtRtg-group; + description "Object to hold BGP's MPLS Segment Routing configurations list"; + } + description "Object to hold BGP's MPLS Segment Routing configurations"; } // This object holds parameters pertaining to peer templates @@ -31730,10 +35878,10 @@ module Cisco-NX-OS-device { list PeerCont-list { key "name"; - // Added containment: Prefix=peercont - // Acquired From Package bgp uses bgp_PeerCont-group; + description "Peer Container: parameters pertaining to peer templates list"; } + description "Peer Container: parameters pertaining to peer templates"; } // This object holds parameters related to session templates @@ -31741,10 +35889,10 @@ module Cisco-NX-OS-device { list SessionCont-list { key "name"; - // Added containment: Prefix=sessioncont - // Acquired From Package bgp uses bgp_SessionCont-group; + description "Session Container: parameters related to session templates list"; } + description "Session Container: parameters related to session templates"; } // This object holds parameters pertaining to policy templates @@ -31752,147 +35900,131 @@ module Cisco-NX-OS-device { list PolicyCont-list { key "name"; - // Added containment: Prefix=policycont - // Acquired From Package bgp uses bgp_PolicyCont-group; + description "Policy Container: parameters pertaining to policy templates list"; } + description "Policy Container: parameters pertaining to policy templates"; } } grouping bgp_RtCtrl-group { + description "Route Control Information"; // Advertise only routes that are programmed in hardware to peers - // Type is an MO-Defined-Type leaf supprRt { + + type bgp_AdminSt; + default "enabled"; description "Suppress Routes: Advertise only routes that are programmed in hardware to peers"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; } // Generate system message when any neighbor state changes - // Type is an MO-Defined-Type leaf logNeighborChanges { - description "Log Neighbor Changes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Log Neighbor Changes"; } // Enforce the neighbor AS to be the first AS listed in the AS_path attribute for eBGP. - // Type is an MO-Defined-Type leaf enforceFirstAs { - description "Enforce First AS For EBgp"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "Enforce First AS For EBgp"; } // Handle BGP neighbor down event - // Type is an MO-Defined-Type leaf fibAccelerate { - description "Accelerate the hardware updates for IP/IPv6 adjacencies for neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Accelerate the hardware updates for IP/IPv6 adjacencies for neighbor"; } } grouping bgp_PathCtrl-group { + description "Path Control"; // Compare MED on paths from different AS - // Type is an MO-Defined-Type leaf alwaysCompMed { - description "Compare MED on paths from different AS"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare MED on paths from different AS"; } // Allow load sharing across providers with different AS paths - // Type is an MO-Defined-Type leaf asPathMultipathRelax { - description "Relax AS-Path restriction when choosing multipaths"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Relax AS-Path restriction when choosing multipaths"; } // Allow load sharing across providers with different AS paths - // Type is an MO-Defined-Type leaf asPathIgnore { - description "Ignore AS-Path during bestpath selection"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore AS-Path during bestpath selection"; } // Compare router-id for identical EBGP paths - // Type is an MO-Defined-Type leaf compRtrId { - description "Compare Router Id"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare Router Id"; } // Compare neighbor-id for identical EBGP paths - // Type is an MO-Defined-Type leaf compNbrId { - description "Compare Neighbor Id"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare Neighbor Id"; } // Ignore cost communities - // Type is an MO-Defined-Type leaf costCommunityIgnore { - description "Ignore Cost Communities"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore Cost Communities"; } // Compare MED for paths originated from within a confederation - // Type is an MO-Defined-Type leaf medConfed { - description "Med Confed"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Compare MED only from paths originated from within a confederation"; } // Treat missing MED as highest MED - // Type is an MO-Defined-Type leaf medMissingAsWorst { - description "Med Missing As Worst"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Med Missing As Worst"; } // Do not always pick the best-MED path among paths from same AS - // Type is an MO-Defined-Type leaf medNonDeter { + + type bgp_AdminSt; description "Med Non-Deterministic"; + } + + // Ignore IGP metric for next-hop during bestpath calculation + leaf igpMetricIgnore { - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Ignore IGP metric for next-hop during bestpath calculation"; } } grouping bgp_Confederation-group { + description "AS confederation parameters"; // Autonomous system number - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // AS Confed are needed to club ASNs together to look like a single ASN @@ -31900,352 +36032,318 @@ module Cisco-NX-OS-device { list ConfederationPeer-list { key "asn"; - // Added containment: Prefix=peer - // Acquired From Package bgp uses bgp_ConfederationPeer-group; + description "Peer ASs in BGP confederation list"; } + description "Peer ASs in BGP confederation"; } } grouping bgp_ConfederationPeer-group { + description "Peer ASs in BGP confederation"; // Autonomous system in the confederation - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } } grouping bgp_DomAf-group { + description "Address Family Information"; // Maximum number of equal-cost paths for load sharing - // Type is an MO-Defined-Type leaf maxEcmp { - description "Max ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max ECMP"; } // Maximum number of equal-cost paths for eBGP - // Type is an MO-Defined-Type leaf maxExtEcmp { - description "Max External ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max External ECMP"; } // Maximum number of equal-cost paths for eiBGP - // Type is an MO-Defined-Type leaf maxExtIntEcmp { - description "Max External Internal ECMP"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max External Internal ECMP"; } // Maximum number of equal-cost multipath for local and remote paths - // Type is an MO-Defined-Type leaf maxMxdEcmp { - description "Max mixed equal-cost multipath for local and remote paths"; - // Type is an MO-Defined-Type type bgp_MaxEcmp; + description "Max mixed equal-cost multipath for local and remote paths"; } leaf tmrBstpthDfr { type uint32 { range "0..3000"; } + description "Configure bgp related timers"; } leaf tmrMax { type uint32 { range "0..300000"; } + description "Configure bestpath defer timer"; } leaf tblMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map name"; } // Configure table-map for Selective route download - // Type is an MO-Defined-Type leaf tblMapFltr { - description "Selective route download"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Selective route download"; } // Allow VNI in Ethernet Tag field in EVPN route - // Type is an MO-Defined-Type leaf vniEthTag { - description "Allow VNI in Ethernet Tag field in EVPN route"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Allow VNI in Ethernet Tag field in EVPN route"; } // Advertise extra EVPN RT-2 with system MAC - // Type is an MO-Defined-Type leaf advSysMac { - description "Advertise extra EVPN RT-2 with system MAC"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise extra EVPN RT-2 with system MAC"; } leaf bestPathSigTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Best Path Signalled Timestamp"; } leaf bestPathCmpltTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Best Path Completed Timestamp"; } // Critical NH timeout - // Type is an MO-Defined-Type // Default value handled in local MO type leaf critNhTimeout { - description "Critical Next-hop Trigger-delay"; // Type is a Local-MO-Defined-Type type bgp_NhTimeout_DomAf_critNhTimeout; + description "Critical Next-hop Trigger-delay"; } // Non-Critical NH timeout - // Type is an MO-Defined-Type // Default value handled in local MO type leaf nonCritNhTimeout { - description "Non-Critical Next-hop Trigger-delay"; // Type is a Local-MO-Defined-Type type bgp_NhTimeout_DomAf_nonCritNhTimeout; + description "Non-Critical Next-hop Trigger-delay"; } // Local BGP table version - // Type is an MO-Defined-Type leaf tblVer { config "false"; - description "Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Table Version"; } leaf nhRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Next hop route map name"; } // client-to-client route reflection - // Type is an MO-Defined-Type leaf clReflection { - description "client-to-client Reflection of routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "client-to-client Reflection of routes"; } // Advertise l2vpn evpn - Originate Type 5 L2VPN EVPN route // correspoinding to VRF route or not - // Type is an MO-Defined-Type leaf advertL2vpnEvpn { - description "Advertise L2vpn Evpn"; - // Type is an MO-Defined-Type type bgp_AdvertL2vpnEvpn; + description "Advertise L2vpn Evpn"; } - // Type is an MO-Defined-Type leaf allocLblAll { - description "Allocate labels for all routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Allocate labels for all routes"; } leaf allocLblRtMap { type string { + pattern ".*[!-~]{0,63}"; } + description "Allocate labels for selective routes"; } // Configure label allocation mode - // Type is an MO-Defined-Type leaf lblAllocMod { - description "per VRF label allocation mode"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "per VRF label allocation mode"; } leaf retainRttRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Retain Route Target Route Map"; } // Retain Route Target All - // Type is an MO-Defined-Type leaf retainRttAll { - description "Retain Route Target All"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Retain Route Target All"; } leaf defMetric { type string { + pattern "0*((429496729[0-5])|(42949672[0-8]\\d)|(4294967[01]\\d{2})|(429496[0-6]\\d{3})|(42949[0-5]\\d{4})|(4294[0-8]\\d{5})|(429[0-3]\\d{6})|(42[0-8]\\d{7})|(4[01]\\d{8})|([1-3]\\d{9})|\\d{0,9})"; } + description "Default Metric"; } // Local BGP table Id - // Type is an MO-Defined-Type leaf tblId { config "false"; - description "Table Id in hex display"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Table Id in hex display"; } // Local BGP table state - // Type is an MO-Defined-Type leaf tblSt { config "false"; - description "Table State"; - // Type is an MO-Defined-Type type bgp_DomOperSt; + description "Local BGP table state"; } // Number of Peers - // Type is an MO-Defined-Type leaf numPeers { config "false"; - description "Number of Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Peers"; } // Number of Active Peers - // Type is an MO-Defined-Type leaf numPeersActive { config "false"; - description "Number of Active Peers"; - // Type is an MO-Defined-Type type bgp_NumPeers; + description "Number of Active Peers"; } // Number of Routes - // Type is an MO-Defined-Type leaf numRoutes { config "false"; - description "Number of Routes"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of Routes"; } // Number of Paths - // Type is an MO-Defined-Type leaf numPaths { config "false"; - description "Number of Paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of Paths"; } leaf numNetworks { config "false"; type uint32; + description "Number of Networks"; } leaf numAggregates { config "false"; type uint32; + description "Number of Aggregates"; } // default-information originate command - // Type is an MO-Defined-Type leaf defInfOriginate { - description "default-information originate"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "default-information originate"; } leaf defInfOrigRd { type mtx_array_community; + description "Default-information Originate always Route Distinguisher"; } leaf defInfOrigRtt { type mtx_array_community; + description "Default-information Originate always Route Target"; } // Dampen IGP metric - // Type is an MO-Defined-Type leaf igpMetric { - description "Dampen IGP metric-related changes"; - // Type is an MO-Defined-Type type bgp_igpMetric; + description "Dampen IGP metric-related changes"; } // Suppress inactive - // Type is an MO-Defined-Type leaf supprInactive { - description "Suppress Inactive"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise only active routes to peers"; } // advertise-pip - // Type is an MO-Defined-Type leaf advPip { - description "Advertise physical IP for type-5 routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Advertise physical IP for type-5 routes"; } // Export Gateway IP to in Type-5 routes to neighbor - // Type is an MO-Defined-Type leaf exportGwIp { + + type bgp_AdminSt; description "Export Gateway IP to Type-5 EVPN routes for VRF"; + } + + // Wait for IGP convergence before starting bestpath computation + leaf waitIgpConv { - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Delay initial bestpath until redistributed IGPs have converged"; } - // Inherited From nw:Conn - // Modified by Override: bgp:DomAf->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "bgp DomAf"; + // Allow allocation of option B labels + leaf allocLblOptB { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_AdminSt; + default "enabled"; + description "Allow allocation of option B labels"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } // This object holds policy to control vpn af @@ -32255,10 +36353,10 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=ctrl - // Acquired From Package bgp uses bgp_VpnCtrlP-group; + description "Virtual Private Network Control Policy list"; } + description "Virtual Private Network Control Policy"; } // Administrative distance is used by routers to select the best path when @@ -32266,17 +36364,15 @@ module Cisco-NX-OS-device { // two different routing protocols container adminDist-items { - // Added containment as a singleton: Prefix=adminDist - // Acquired From Package bgp uses bgp_AdminDist-group; + description "Administrative Distance: This is the distance used by routers to select the best path when there are two or more different routes to the same destination from two different routing protocols."; } // Dampening is a BGP feature to suppress unstable routes container dampening-items { - // Added containment as a singleton: Prefix=dampening - // Acquired From Package bgp uses bgp_DampeningCtrl-group; + description "Dampening Control: BGP route flap dampening parameters"; } // Bgp advertise to IP @@ -32284,10 +36380,10 @@ module Cisco-NX-OS-device { list AdvPrefix-list { key "addr"; - // Added containment: Prefix=prefix - // Acquired From Package bgp uses bgp_AdvPrefix-group; + description "Advertise To Prefix list"; } + description "Advertise To Prefix"; } // This object holds per address family per bgp vrf aggregate address information @@ -32295,10 +36391,10 @@ module Cisco-NX-OS-device { list AggAddr-list { key "addr"; - // Added containment: Prefix=aggaddr - // Acquired From Package bgp uses bgp_AggAddr-group; + description "Configure BGP aggregate prefixes list"; } + description "Configure BGP aggregate prefixes"; } // BGP Additional Paths feature allows the advertisement of multiple @@ -32306,273 +36402,327 @@ module Cisco-NX-OS-device { // the new paths implicitly replacing any previous paths container addlpath-items { - // Added containment as a singleton: Prefix=addlpath - // Acquired From Package bgp uses bgp_AddlPath-group; + description + "Additional Paths: Advertise paths through the same + peering session for the same prefix without the new + implicitly replacing any previous paths."; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } // Show only Imported Routes + // Ephemeral data container importedrt-items { - // Added containment as a singleton: Prefix=importedrt - // Acquired From Package bgp uses bgp_ImportedRoutes-group; + description "Display Imported Routes"; } // Show only Self-originated Routes + // Ephemeral data container selforigrt-items { - // Added containment as a singleton: Prefix=selforigrt - // Acquired From Package bgp uses bgp_SelfOrigRoutes-group; + description "Display Self-originated Routes"; } // Show only Injected Routes + // Ephemeral data container injectedrt-items { - // Added containment as a singleton: Prefix=injectedrt - // Acquired From Package bgp uses bgp_InjectedRoutes-group; + description "Display Injected Routes"; } + // Ephemeral data container exportedrt-items { - // Added containment as a singleton: Prefix=exportedrt - // Acquired From Package bgp uses bgp_ExportedRoutes-group; + description "Display Exported Routes"; } // Show only Received Paths Routes + // Ephemeral data container rcvdpathsrt-items { - // Added containment as a singleton: Prefix=rcvdpathsrt - // Acquired From Package bgp uses bgp_RcvdPathsRoutes-group; + description "Display Received Paths Routes"; } // This object holds the bgp routes matching route-map + // Ephemeral data container rtmap-items { + + // Ephemeral data list RtMapRoutes-list { config "false"; key "name"; - // Added containment: Prefix=rtmap - // Acquired From Package bgp uses bgp_RtMapRoutes-group; + description "Display Routes matching rtmap name list"; } + description "Display Routes matching rtmap name"; } // This object holds the bgp routes matching filter-list + // Ephemeral data container fltrlist-items { + + // Ephemeral data list FltrListRoutes-list { config "false"; key "name"; - // Added containment: Prefix=fltrlist - // Acquired From Package bgp uses bgp_FltrListRoutes-group; + description "Display Routes matching filter-list name list"; } + description "Display Routes matching filter-list name"; } // This object holds the bgp routes matching prefix-list + // Ephemeral data container pfxlist-items { + + // Ephemeral data list PfxListRoutes-list { config "false"; key "name"; - // Added containment: Prefix=pfxlist - // Acquired From Package bgp uses bgp_PfxListRoutes-group; + description "Display Routes matching prefix-list name list"; } + description "Display Routes matching prefix-list name"; } // Show only Dampening Paths Routes + // Ephemeral data container damppathsrt-items { - // Added containment as a singleton: Prefix=damppathsrt - // Acquired From Package bgp uses bgp_DampPathsRoutes-group; + description "Display Dampening Paths Routes"; } // Show only Dampening History Paths Routes + // Ephemeral data container damphstpathsrt-items { - // Added containment as a singleton: Prefix=damphstpathsrt - // Acquired From Package bgp uses bgp_DampHistPathsRoutes-group; + description "Display Dampening History Paths Routes"; } // Show Routes by route-type + // Ephemeral data container rttype-items { + + // Ephemeral data list RtTypeRoutes-list { config "false"; key "rtType"; - // Added containment: Prefix=rttype - // Acquired From Package bgp uses bgp_RtTypeRoutes-group; + description "Display routes by route-type 1-5 list"; } + description "Display routes by route-type 1-5"; } // Show Evpn routes by vni-id + // Ephemeral data container vnid-items { + + // Ephemeral data list EvpnVnIdRoutes-list { config "false"; key "vnid"; - // Added containment: Prefix=vnid - // Acquired From Package bgp uses bgp_EvpnVnIdRoutes-group; + description "Display Evpn routes by vni id 1-16777214 list"; } + description "Display Evpn routes by vni id 1-16777214"; } // Show Evpn routes by mac address + // Ephemeral data container mac-items { + + // Ephemeral data list EvpnMacAddrRoutes-list { config "false"; key "macaddr"; - // Added containment: Prefix=mac - // Acquired From Package bgp uses bgp_EvpnMacAddrRoutes-group; + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE list"; } + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE"; } // Show routes by RD + // Ephemeral data container rd-items { + + // Ephemeral data list RdRoutes-list { config "false"; key "rd"; - // Added containment: Prefix=rd - // Acquired From Package bgp uses bgp_RdRoutes-group; + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN list"; } + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN"; } // Show routes by exact Prefix + // Ephemeral data container pfx-items { + + // Ephemeral data list PfxRoutes-list { config "false"; key "pfx"; - // Added containment: Prefix=pfx - // Acquired From Package bgp uses bgp_PfxRoutes-group; + description "Display Prefix routes by format IPV4 and IPV6 addr list"; } + description "Display Prefix routes by format IPV4 and IPV6 addr"; } // Show Evpn routes by Ethernet Segment + // Ephemeral data container esid-items { + + // Ephemeral data list EvpnEsRoutes-list { config "false"; key "esid"; - // Added containment: Prefix=esid - // Acquired From Package bgp uses bgp_EvpnEsRoutes-group; + description "Display Evpn Ethernet Segment routes by ESID list"; } + description "Display Evpn Ethernet Segment routes by ESID"; } // Show nexthop routes + // Ephemeral data container nh-items { + + // Ephemeral data list NextHopRoutes-list { config "false"; key "pfx"; - // Added containment: Prefix=nh - // Acquired From Package bgp uses bgp_NextHopRoutes-group; + description "Display next hop routes list"; } + description "Display next hop routes"; } // Show MCAST Routes by route-type + // Ephemeral data container mrttype-items { + + // Ephemeral data list McastRtTypeRoutes-list { config "false"; key "rtType"; - // Added containment: Prefix=mrttype - // Acquired From Package bgp uses bgp_McastRtTypeRoutes-group; + description "Display MCAST routes by route-type 1-7 list"; } + description "Display MCAST routes by route-type 1-7"; } // This objects holds default route leak policy, // this is not needed for FCS in our solution container defrtleak-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package bgp uses bgp_DefRtLeakP-group; + description "Default Route Leak Policy"; } // Inter protocol route leak policy. This defines distribution @@ -32581,10 +36731,14 @@ module Cisco-NX-OS-device { list InterLeakP-list { key "proto inst"; - // Added containment: Prefix=interleak - // Acquired From Package bgp uses bgp_InterLeakP-group; + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol list"; } + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol"; } // Inject route leak policy route map @@ -32592,2447 +36746,2817 @@ module Cisco-NX-OS-device { list InjLeakP-list { key "name rtMap"; - // Added containment: Prefix=injname - // Acquired From Package bgp uses bgp_InjLeakP-group; + description "Inject Route Policy list"; } + description "Inject Route Policy"; } - } - grouping bgp_VpnCtrlP-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds Bgp's Segment Routing configurations + container segrt-items { + list SgmtRtg-list { + key "sr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_SgmtRtg-group; + description "Object to hold BGP's MPLS Segment Routing configurations list"; } + description "Object to hold BGP's MPLS Segment Routing configurations"; } + } + + grouping bgp_VpnCtrlP-group { + description "Virtual Private Network Control Policy"; // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { config "false"; - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } } grouping bgp_AdminDist-group { + description "Administrative Distance: This is the distance used by routers to select the best path when there are two or more different routes to the same destination from two different routing protocols."; // eBGP Distance - // Type is an MO-Defined-Type leaf eDist { - description "eBGP Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "eBGP Distance"; } // iBGP Distance - // Type is an MO-Defined-Type leaf iDist { - description "iBGP Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "iBGP Distance"; } // Local Distance - // Type is an MO-Defined-Type leaf localDist { - description "Local Distance"; - // Type is an MO-Defined-Type type bgp_Distance; + description "Local Distance"; } } grouping bgp_DampeningCtrl-group { + description "Dampening Control: BGP route flap dampening parameters"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Apply route-map to specify dampening criteria"; } // Dampening decay half life - // Type is an MO-Defined-Type leaf halfLife { - description "Decay Half Life"; - // Type is an MO-Defined-Type type rtmap_DampHalfLife; + description "Decay Half Life, range 1-45"; } // Dampening reuse limit - // Type is an MO-Defined-Type leaf reuse { - description "Reuse Limit"; - // Type is an MO-Defined-Type type rtmap_DampReuse; + description "Dampening Reuse Limit"; } // Dampening suppress limit - // Type is an MO-Defined-Type leaf suppress { - description "Suppress Limit"; - // Type is an MO-Defined-Type type rtmap_DampSuppress; + description "Dampening Suppress Limit"; } leaf maxSupprPenalty { config "false"; type uint32; + description "Max Suppress Penalty"; } // Dampening max suppress time - // Type is an MO-Defined-Type leaf maxSuppressTime { - description "Max Suppress Time"; - // Type is an MO-Defined-Type type rtmap_DampMaxSuppressTime; + description "Max Suppress Time"; } } grouping bgp_AdvPrefix-group { + description "Advertise To Prefix"; leaf addr { type address_Ip; + description "IP address of the network or prefix to advertise"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route map to modify attributes"; } } grouping bgp_AggAddr-group { + description "Configure BGP aggregate prefixes"; leaf addr { type address_Ip; + description "Aggregate Address"; } leaf adverMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description + "Advertise Map: Route map used to select + attribute information from selected routes"; } leaf attrMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description + "Attribute Map: Route map to set attribute + information of aggregate"; } // Generate AS set path info and community info from contributing paths - // Type is an MO-Defined-Type leaf asSet { - description "AS-SET"; - // Type is an MO-Defined-Type type bgp_AsSet; + description "AS-SET"; } // Aggregate Address Summary only - // Type is an MO-Defined-Type leaf summaryOnly { - description "Summary only"; - // Type is an MO-Defined-Type type bgp_SummaryOnly; + description "Aggregate address Summary only"; } leaf supprMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Suppress Map to conditionally filter more-specific routes"; } } grouping bgp_AddlPath-group { + description + "Additional Paths: Advertise paths through the same + peering session for the same prefix without the new + implicitly replacing any previous paths."; // Capability - // Type is an MO-Defined-Type leaf capability { - description "Capability"; - // Type is an MO-Defined-Type type bgp_AddlPathCapT; + description "Additional paths capability"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route map name for path selection"; } } grouping bgp_Route-group { + description "Route"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_Path-group { + description "Path: BGP AS path information"; + + // Ephemeral data leaf peer { config "false"; type address_Ip; + description "Peer"; } // Path id - // Type is an MO-Defined-Type + // Ephemeral data leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type bgp_PathId; + description "ID"; } + + // Ephemeral data leaf nh { config "false"; type address_Ip; + description "Nexthop"; } // Nexthop metric - // Type is an MO-Defined-Type + // Ephemeral data leaf nhMetric { config "false"; - description "Nexthop Metric"; - // Type is an MO-Defined-Type type bgp_Metric; + description "Nexthop Metric"; } // Path type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type bgp_PathT; + description "Type"; } // Path status - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PathSt; + description "Operational State"; } // Path flags - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PathFlags; + description "Flags"; } // Origin - // Type is an MO-Defined-Type + // Ephemeral data leaf origin { config "false"; - description "Origin"; - // Type is an MO-Defined-Type type bgp_Origin; + description "Origin"; } // Metric - // Type is an MO-Defined-Type + // Ephemeral data leaf metric { config "false"; - description "Metric"; - // Type is an MO-Defined-Type type rtmap_Metric; + description "Metric"; } // Local preference - // Type is an MO-Defined-Type + // Ephemeral data leaf localPref { config "false"; - description "Local Preference"; - // Type is an MO-Defined-Type type rtmap_LocalPref; + description "Local Preference"; } // Weight - // Type is an MO-Defined-Type + // Ephemeral data leaf weight { config "false"; - description "Weight"; - // Type is an MO-Defined-Type type rtmap_Weight; + description "Weight"; } + + // Ephemeral data leaf aggr { config "false"; type address_Ip; + description "Aggregator"; } // Aggregator AS - // Type is an MO-Defined-Type + // Ephemeral data leaf aggrAs { config "false"; - description "Aggregator ASN"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Aggregator ASN"; } + + // Ephemeral data leaf importedRd { config "false"; type mtx_array_community; + description "Imported Src Route Distinguisher"; } + + // Ephemeral data leaf origImportedRd { config "false"; type mtx_array_community; + description "Original Imported Src Route Distinguisher"; + } + + // Ephemeral data + leaf recvd { + config "false"; + type boolean; + description "Received Unmodified Path From Adj-RIB-In"; } + + // Ephemeral data leaf unknownAttrData { config "false"; type string; + description "Unknown Attribute Data"; } // Unknown Attribute Data - // Type is an MO-Defined-Type + // Ephemeral data leaf unknownAttrLen { config "false"; - description "Unknown Attribute Length"; - // Type is an MO-Defined-Type type bgp_UnknownAttrLen; + description "Unknown Attribute Length"; + } + leaf discardedAttrData { + config "false"; + type string; + description "Discarded Attribute Data"; } + + // Discarded Attribute Data + leaf discardedAttrLen { + config "false"; + + type bgp_DiscardedAttrLen; + description "Discarded Attribute Length"; + } + + // Ephemeral data leaf regComm { config "false"; type string; + description "Community"; } + + // Ephemeral data leaf extComm { config "false"; type string; + description "Extcommunity"; } + + // Ephemeral data leaf asPath { config "false"; type string; + description "AS-Path"; } + + // Ephemeral data leaf rcvdLbl { config "false"; type string; + description "Received label"; } + + // Ephemeral data leaf originatorId { config "false"; type address_Ip; + description "Originator Id"; } + + // Ephemeral data leaf clusterLst { config "false"; type string; + description "Cluster-List"; } + + // Ephemeral data leaf peerRtrId { config "false"; type string; + description "Peer router id ipaddress"; + } + + // Ephemeral data + leaf numImported { + config "false"; + type uint16; + description "Number of imported paths in the prefix"; + } + + // Ephemeral data + leaf importedLst { + config "false"; + type string; + description "List of imported paths"; + } + + // Ephemeral data + leaf importedSrc { + config "false"; + type string; + description "Imported from source info"; + } + + // Ephemeral data + leaf origImportedSrc { + config "false"; + type string; + description "Original Imported source info"; } // This object holds the bgp path AS segment information + // Ephemeral data container seg-items { + + // Ephemeral data list AsSeg-list { config "false"; key "order"; - // Added containment: Prefix=seg - // Acquired From Package bgp uses bgp_AsSeg-group; + description + "Autonomous System Segment: BGP + Path AS Segment information. list"; } + description + "Autonomous System Segment: BGP + Path AS Segment information."; } + + // Ephemeral data container rcomm-items { + + // Ephemeral data list RegComm-list { config "false"; key "community"; - // Added containment: Prefix=rcomm - // Acquired From Package bgp uses bgp_RegComm-group; + description "Regular Community list"; } + description "Regular Community"; } + // Ephemeral data container ecomm-items { - // Added containment as a singleton: Prefix=ecomm - // Acquired From Package bgp uses bgp_ExtComm-group; + description "Extended Community"; } // Link-state Attribute + // Ephemeral data container lnkstattr-items { - // Added containment as a singleton: Prefix=lnkstattr - // Acquired From Package bgp uses bgp_LnkStAttr-group; + description "Link-state attribute"; } // Prefix-SID Attribute + // Ephemeral data container pfxsid-items { - // Added containment as a singleton: Prefix=pfxsid - // Acquired From Package bgp uses bgp_PfxSidAttr-group; + description "Prefix-SID attribute"; } // PMSI Tunnel Attribute + // Ephemeral data container pmsi-items { - // Added containment as a singleton: Prefix=pmsi - // Acquired From Package bgp uses bgp_PmsiTunAttr-group; + description "PMSI Tunnel Attribute"; } } grouping bgp_AsSeg-group { + description + "Autonomous System Segment: BGP + Path AS Segment information."; // type - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type bgp_AsSegT; + description "Type"; } // Order - // Type is an MO-Defined-Type + // Ephemeral data leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type bgp_Order; + description "Order"; } // This object holds the AS segment items + // Ephemeral data container asn-items { + + // Ephemeral data list AsItem-list { config "false"; key "order"; - // Added containment: Prefix=asn - // Acquired From Package bgp uses bgp_AsItem-group; + description "Autonomous System Item list"; } + description "Autonomous System Item"; } } grouping bgp_AsItem-group { + description "Autonomous System Item"; // Order - // Type is an MO-Defined-Type + // Ephemeral data leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type bgp_Order; + description "Order"; } // AS number - // Type is an MO-Defined-Type + // Ephemeral data leaf asn { config "false"; - description "Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } } grouping bgp_RegComm-group { + description "Regular Community"; + + // Ephemeral data leaf community { config "false"; type mtx_array_community; + description "Community"; } } grouping bgp_ExtComm-group { + description "Extended Community"; + + // Ephemeral data leaf encap { config "false"; type string; + description "Encapsulation"; } + + // Ephemeral data leaf rtrMac { config "false"; type address_Mac; + description "Router Mac address from nve"; } // Extended community route-target attribute entry + // Ephemeral data container rt-items { + + // Ephemeral data list ExtCommRt-list { config "false"; key "community"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_ExtCommRt-group; + description "Route-target attribute Extended Community list"; } + description "Route-target attribute Extended Community"; } } grouping bgp_ExtCommRt-group { + description "Route-target attribute Extended Community"; + + // Ephemeral data leaf community { config "false"; type mtx_array_community; + description "Community"; } } grouping bgp_LnkStAttr-group { + description "Link-state attribute"; // Link attribute TLV flags - // Type is an MO-Defined-Type + // Ephemeral data leaf lnkAttrFlags { config "false"; - description "Link-state Link TLV attribute flags"; - // Type is an MO-Defined-Type type bgp_LnkLsAttrFlags; + description "Link-state Link TLV attribute flags"; } + + // Ephemeral data leaf attrLen { config "false"; type uint16; + description "Link-state attribute length"; } // Link-state Attribute Entry + // Ephemeral data container tlv-items { + + // Ephemeral data list LnkStAttrEntry-list { config "false"; key "type"; - // Added containment: Prefix=tlv - // Acquired From Package bgp uses bgp_LnkStAttrEntry-group; + description "Link-state attributei entry list"; } + description "Link-state attributei entry"; } } grouping bgp_LnkStAttrEntry-group { + description "Link-state attributei entry"; // Type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Link-state TLV code point"; - // Type is an MO-Defined-Type type bgp_LsAttrEntryType; + description "Link-state TLV code point"; } + + // Ephemeral data leaf val { config "false"; type string; + description "Value"; } } grouping bgp_PfxSidAttr-group { + description "Prefix-SID attribute"; + + // Ephemeral data leaf pfxSidAttrLen { config "false"; type uint16; + description "Prefix-SID attribute length"; } // Prefix-SID Attribute Entry + // Ephemeral data container tlv-items { + + // Ephemeral data list PfxSidAttrEntry-list { config "false"; key "type"; - // Added containment: Prefix=tlv - // Acquired From Package bgp uses bgp_PfxSidAttrEntry-group; + description "Prefix-SID attribute entry list"; } + description "Prefix-SID attribute entry"; } } grouping bgp_PfxSidAttrEntry-group { + description "Prefix-SID attribute entry"; // Type - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Link-state TLV code point"; - // Type is an MO-Defined-Type type bgp_PfxSidAttrEntryType; + description "Link-state TLV code point"; } + + // Ephemeral data leaf len { config "false"; type uint16; + description "Length"; } + + // Ephemeral data leaf val { config "false"; type string; + description "Value"; } } grouping bgp_PmsiTunAttr-group { + description "PMSI Tunnel Attribute"; + + // Ephemeral data leaf flags { config "false"; - // bits- Using string type string; + description "PMSI Tunnel Attribute Flags"; } // Tunnel Type - // Type is an MO-Defined-Type + // Ephemeral data leaf tunType { config "false"; - description "PMSI Tunnel Type"; - // Type is an MO-Defined-Type type bgp_PmsiTunType; + description "PMSI Tunnel Type"; } + + // Ephemeral data leaf lbl { config "false"; type uint32; + description "PMSI label"; } + + // Ephemeral data leaf tunId { config "false"; type address_Ip; + description "PMSI Tunnel ID"; } } grouping bgp_VpnRoute-group { + description "VPN Route information"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_LblRoute-group { + description "Labeled Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } // Labeled address-family route flags - // Type is an MO-Defined-Type + // Ephemeral data leaf rtLblAfFlags { config "false"; - description "Labeled address-family route flags"; - // Type is an MO-Defined-Type type bgp_RtLblAfFlags; + description "Labeled address-family route flags"; } + + // Ephemeral data leaf rtLblAfVer { config "false"; type uint32; + description "Labeled address-family version"; } // Local label - // Type is an MO-Defined-Type + // Ephemeral data leaf locLbl { config "false"; - description "Local label"; - // Type is an MO-Defined-Type type bgp_Lbl; + description "Local label"; } + + // Ephemeral data leaf pfxLblHoldDownDelTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Prefix label hold down delete timestamp"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_LnkStRoute-group { + description "Link State Route"; + + // Ephemeral data leaf pfx { config "false"; type string; + description "Link-state NLRI"; } // NLRI Type - // Type is an MO-Defined-Type + // Ephemeral data leaf nlriType { config "false"; - description "Link-state NLRI type"; - // Type is an MO-Defined-Type type bgp_LsNlriType; + description "Link-state NLRI type"; } // Protocol Id - // Type is an MO-Defined-Type + // Ephemeral data leaf protoId { config "false"; - description "Link-state NLRI Protocol ID"; - // Type is an MO-Defined-Type type bgp_LsProtoId; + description "Link-state NLRI Protocol ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_EvpnRoute-group { + description "EVPN Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } + + // Ephemeral data leaf pfx { config "false"; type string; + description "EVPN prefix"; } // EVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "EVPN route-type"; - // Type is an MO-Defined-Type type bgp_EvpnRtType; + description "EVPN route-type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_MvpnRoute-group { + description "MVPN Route"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } + + // Ephemeral data leaf pfx { config "false"; type string; + description "MVPN NLRI"; } // MVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "MVPN route-type"; - // Type is an MO-Defined-Type type bgp_MvpnRtType; + description "MVPN route-type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Version of the route - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf ver { config "false"; - description "Version"; - // Type is an MO-Defined-Type type bgp_RtVer; + description "Version"; } // Route flags - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtFlags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_RtFlags; + description "Flags"; } + + // Ephemeral data leaf numPaths { config "false"; type uint32; + description "Number of paths available"; } // Bestpath Id - // Inherited From bgp:ARoute - // Type is an MO-Defined-Type + // Ephemeral data leaf bestPathId { config "false"; - description "Bestpath Id"; - // Type is an MO-Defined-Type type bgp_PathId; + description "Bestpath Id"; } // This object holds the bgp AS path information + // Ephemeral data container path-items { + + // Ephemeral data list Path-list { config "false"; - key "peer id nh importedRd origImportedRd"; + key "peer id nh importedRd origImportedRd recvd"; - // Added containment: Prefix=path - // Acquired From Package bgp uses bgp_Path-group; + description "Path: BGP AS path information list"; } + description "Path: BGP AS path information"; } } grouping bgp_ImportedRoutes-group { + description "Display Imported Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } } grouping bgp_SelfOrigRoutes-group { + description "Display Self-originated Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_InjectedRoutes-group { + description "Display Injected Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_ExportedRoutes-group { + description "Display Exported Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } } grouping bgp_RcvdPathsRoutes-group { + description "Display Received Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_RtMapRoutes-group { + description "Display Routes matching rtmap name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_FltrListRoutes-group { + description "Display Routes matching filter-list name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_PfxListRoutes-group { + description "Display Routes matching prefix-list name"; + + // Ephemeral data leaf name { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route ctrl name"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } } grouping bgp_DampPathsRoutes-group { + description "Display Dampening Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_DampHistPathsRoutes-group { + description "Display Dampening History Paths Routes"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_RtTypeRoutes-group { + description "Display routes by route-type 1-5"; // EVPN and Linkstate route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "EVPN route-type"; - // Type is an MO-Defined-Type type bgp_EvpnRtType; + description "EVPN route-type"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnVnIdRoutes-group { + description "Display Evpn routes by vni id 1-16777214"; // EVPN route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf vnid { config "false"; - description "EVPN vnid (Value should be in the range 1-16777214 when the feature is enabled.)"; - // Type is an MO-Defined-Type type bgp_Vnid; + description "EVPN vnid (Value should be in the range 1-16777214 when the feature is enabled.)"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnMacAddrRoutes-group { + description "Display Evpn routes by mac address EE:EE:EE:EE:EE:EE"; + + // Ephemeral data leaf macaddr { config "false"; type address_Mac; + description "EVPN mac address"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RdRoutes-group { + description "Display RD routes by format ASN2:NN ASN4:NN IPV4:NN"; + + // Ephemeral data leaf rd { config "false"; type mtx_array_community; + description "Route Distinguisher"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_PfxRoutes-group { + description "Display Prefix routes by format IPV4 and IPV6 addr"; + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Evpn/LnkState Prefix"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_EvpnEsRoutes-group { + description "Display Evpn Ethernet Segment routes by ESID"; + + // Ephemeral data leaf esid { config "false"; type string { + pattern "[!-~]{1,10}"; } + description "Evpn Ethernet Segment ID"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_NextHopRoutes-group { + description "Display next hop routes"; + + // Ephemeral data leaf pfx { config "false"; type address_Ip; + description "Prefix"; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_McastRtTypeRoutes-group { + description "Display MCAST routes by route-type 1-7"; // MCAST route-type - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "MVPN route-type"; - // Type is an MO-Defined-Type type bgp_MvpnRtType; + description "MVPN route-type"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } } grouping bgp_DefRtLeakP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description "Default Route Leak Policy"; // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + default "defrt"; + description "Scope"; } leaf rtMap { type string; + description "Route Map"; } } grouping bgp_InterLeakP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description + "Inter Protocol Leak Policy: Defines the distribution + of routes from one protocol to another protocol"; // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + default "inter"; + description "Scope"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map applied to redistributed routes"; } // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf proto { - description "Protocol"; - // Type is an MO-Defined-Type type rtleak_Proto; + description "Protocol"; } // Routing protocol instance, the routing instance of the // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf inst { - description "Instance"; - // Type is an MO-Defined-Type type rtleak_Inst; + description "Instance"; } // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type leaf asn { - description "Autonomous System Number"; - // Type is an MO-Defined-Type type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } + description "Autonomous System Number"; + } + + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { + + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } } grouping bgp_InjLeakP-group { + description "Inject Route Policy"; // Copy attributes from aggregate - // Type is an MO-Defined-Type leaf copyAttr { - description "Copy attributes from aggregate"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Copy attributes from aggregate"; } - // Inherited From pol:Obj - // Modified by Override: bgp:InjLeakP->name - // Type is an MO-Defined-Type leaf name { - description "Inject Route Map Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{0,63}.*"; } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Inject Route Map Name"; } // Scope of the policy (intra protocol, inter protcol, // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtleak_Scope; + description "Scope"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map which specifies prefixes to inject"; + } + } + + grouping bgp_SgmtRtg-group { + description "Object to hold BGP's MPLS Segment Routing configurations"; + + leaf sr { + + type bgp_SgmntRtg; + description "Support MPLS SR options in BGP's Segment-Routing"; + } + + leaf sidAllocMod { + + type bgp_AllocMod; + description "per VRF SID allocation mode, under Dom or DomAF"; + } + + // This object holds Bgp's Segment Routing Locator configuration + container loc-items { + list Locator-list { + key "name"; + + uses bgp_Locator-group; + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations list"; + } + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations"; + } + } + + grouping bgp_Locator-group { + description "Object to hold BGP's MPLS Segment Routing SRv6 Locator configurations"; + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Indicates whether locator state is operational"; } } grouping bgp_BmpSvr-group { + description "BMP server configuration"; // BMP server identifier - // Type is an MO-Defined-Type leaf id { - description "BMP Server Id"; - // Type is an MO-Defined-Type type bgp_SrvId; + description "BMP Server Id"; } leaf addr { type address_Ip; + description "IP address of the BMP server"; } leaf port { type uint16 { range "0..65535"; } + description "Port number of the BMP server"; } leaf descr { type string { + pattern "(.{1,80}).*|()"; } + description "BMP server description string"; } leaf refreshIntvlDelay { type uint16 { range "30..720"; } default "30"; + description "Route refresh trigger delay"; } leaf refreshIntvlSkip { type boolean; - default "true"; + default "false"; + description "Route refresh trigger skip"; } leaf delayIntvl { type uint16 { range "30..720"; } default "45"; + description "Initial connect delay"; } leaf statIntvl { type uint16 { range "0..720"; } + description "Statistics reporting interval"; } // BMP server session config - // Type is an MO-Defined-Type leaf adminSt { - description "BMP server config state"; - // Type is an MO-Defined-Type type bgp_BmpSt; + description "BMP server config state"; } // BMP server VRF config - // Type is an MO-Defined-Type leaf vrfName { - description "VRF for BMP server"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF for BMP server"; } // BMP server Source interface - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface for BMP server"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface for BMP server"; } } grouping bgp_Gr-group { + description "Graceful Restart"; // Graceful restart controls - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type bgp_GrCtrl; + description "Graceful Restart Control"; } // Restart interval - // Type is an MO-Defined-Type leaf restartIntvl { - description "Restart Time Advertised to Peer"; - // Type is an MO-Defined-Type type bgp_GrIntvl; + description "Restart Time Advertised to Peer"; } // Stale interval for routes advertised by peer - // Type is an MO-Defined-Type leaf staleIntvl { - description "Stale Time for Routes Advertised by Peer"; - // Type is an MO-Defined-Type type bgp_GrStaleIntvl; + description "Stale Time for Routes Advertised by Peer"; } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping bgp_Gs-group { + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + leaf gshutAware { + type boolean; + default "true"; + description "Lower preference of routes carrying graceful-shutdown community"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf gshutActivate { + type boolean; + description "Send graceful-shutdown community on all routes"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route Map"; } } grouping bgp_Peer-group { + description "BGP Peer: BGP information pertaining to a peer with ip"; leaf addr { type address_Ip; + description "IP Address of the neighbor"; + } + leaf password { + type string; + description "Configure a password for neighbor"; + } + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source interface of BGP session and updates"; + } + leaf dynRtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Dynamic/Prefix Peer Route Map"; + } + + // Maximum peers for prefix + leaf maxPeerCnt { + + type bgp_MaxPeerCnt; + description "Maximum Peers For Prefix"; + } + + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { + + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "(.{1,80}).*|()"; + } + description "Name"; } // Administrative state - // Type is an MO-Defined-Type leaf adminSt { - description "Administrative State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Administrative State"; } leaf asn { type string; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // Generate system message when any neighbor state changes - // Type is an MO-Defined-Type leaf logNbrChgs { - description "Log messages for Neighbor up/down events"; - // Type is an MO-Defined-Type type bgp_LogNbrSt; + description "Log messages for Neighbor up/down events"; } // Peer Fabric type - // Type is an MO-Defined-Type leaf peerType { - description "Neighbor Fabric Type"; - // Type is an MO-Defined-Type type bgp_PeerFabType; - } - leaf dynRtMap { - type string { - } - } - - // Source interface - // Type is an MO-Defined-Type - leaf srcIf { - description "Source interface of BGP session and updates"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + description "Neighbor Fabric Type"; } - // Password Encrypt Type - // Type is an MO-Defined-Type leaf passwdType { - description "Password EnCrypt Type"; - // Type is an MO-Defined-Type type bgp_PwdType; + description "Password EnCrypt Type"; } // Peer controls - // Type is an MO-Defined-Type leaf ctrl { - description "Peer Controls"; - // Type is an MO-Defined-Type type bgp_PeerControl; + description "Peer Controls"; } // eBGP Multihop - // Type is an MO-Defined-Type leaf ttl { - description "eBGP Multihop TTL value"; - // Type is an MO-Defined-Type type bgp_TtlVal; + description "eBGP Multihop TTL value"; } // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive Interval"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval"; } // Hold interval, how long you wait before you declare the // neighbor down - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold Interval"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval"; } // Connection Mode - // Type is an MO-Defined-Type leaf connMode { - description "BGP transport connection mode"; - // Type is an MO-Defined-Type type bgp_ConnMode; - } - - // Maximum peers for prefix - // Type is an MO-Defined-Type - leaf maxPeerCnt { - description "Maximum Peers For Prefix"; - - // Type is an MO-Defined-Type - type bgp_MaxPeerCnt; + description "BGP transport connection mode"; } leaf sessionContImp { type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Session Template To Import From"; } leaf peerImp { type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Template To Import From"; } // Remove Private ASN - // Type is an MO-Defined-Type leaf privateASctrl { - description "Remove private AS number from outbound updates"; - // Type is an MO-Defined-Type type bgp_PrivateASControl; + description "Remove private AS number from outbound updates"; } // Egress Peer Engineering (EPE) for neighbor - // Type is an MO-Defined-Type leaf epe { - description "Egress Peer Engineering EPE for neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; } leaf epePeerSet { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } // Low Memory Exempt - // Type is an MO-Defined-Type leaf lowMemExempt { - description "Low Memory Exempt"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Low Memory Exempt"; } // Capability Suppress - // Type is an MO-Defined-Type leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; } leaf affGrp { type uint16; + description "Affinity group for the neighbor."; } leaf ttlScrtyHops { type uint16 { range "0..254"; } + description "Enable TTL Security Mechanism"; } // bmp-activate-server 1 - // Type is an MO-Defined-Type leaf bmpSrvId1St { - description "Activate BMP Server 1"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 1"; } // bmp-activate-server 2 - // Type is an MO-Defined-Type leaf bmpSrvId2St { - description "Activate BMP Server 2"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 2"; + } + + // Dscp value, set it in tcp packets + leaf dscp { + + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } // Operational state Maximum Prefix Peers - // Type is an MO-Defined-Type leaf maxPfxPeers { config "false"; - description "Maximum Prefix Peers Count"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Maximum Prefix Peers Count"; } // Current Prefix Peers - // Type is an MO-Defined-Type leaf curPfxPeers { config "false"; - description "Current Prefix Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Current Prefix Peers Counts"; } // Active Prefix Peers - // Type is an MO-Defined-Type leaf activePfxPeers { config "false"; - description "Active Prefix Peer Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Active Prefix Peer Counts"; } // Maximum Current Peers - // Type is an MO-Defined-Type leaf maxCurPeers { config "false"; - description "Maximum Current Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Maximum Current Peers Counts"; } // Total Prefix Peers - // Type is an MO-Defined-Type leaf totalPfxPeers { config "false"; - description "Total Prefix Peers Counts"; - // Type is an MO-Defined-Type type bgp_PfxPeerCounts; + description "Total Prefix Peers Counts"; } - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'keepalive and hold - // timer' and BFD from a template, set this property with - // values - 'timer' and 'bfd'. - // A note that any attributes configured for the neighbor - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; + // gShut Operational state + leaf gShutOperSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerCtrlType; + type bgp_AdminSt; + description "GShut Operational State"; } - // Inherited From nw:Conn - // Modified by Override: bgp:Peer->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; + } + + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } // This object holds local AS information pertaining to a peer container localasn-items { - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } // This object holds bgp peer operational status information. - // We can potentially discover many peer entries for a given - // configured prefix peer container ent-items { list PeerEntry-list { config "false"; key "addr"; - // Added containment: Prefix=ent - // Acquired From Package bgp uses bgp_PeerEntry-group; + description + "BGP Peer Entry: BGP peer operational + status information. list"; } + description + "BGP Peer Entry: BGP peer operational + status information."; } // This object holds operational state information for // bgp segment routing egress peer engineering container epe-items { - // Added containment as a singleton: Prefix=epe - // Acquired From Package bgp uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } // This object holds per address family bgp peer information @@ -35040,306 +39564,300 @@ module Cisco-NX-OS-device { list PeerAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_PeerAf-group; + description "Peer Address Family list"; } + description "Peer Address Family"; + } + } + + grouping bgp_PathAttr-group { + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; + + // Attribute value + leaf fltrType { + + type bgp_AttrFltrType; + description "Specify type of action performed on the filtered BGP Update Message"; + } + + // This objects holds path-attribute value per neighbor + container dir-items { + list FltrAttr-list { + key "direction startVal endVal"; + + uses bgp_FltrAttr-group; + description "Specify a range of attributes to filter the BGP Update message list"; + } + description "Specify a range of attributes to filter the BGP Update message"; + } + } + + grouping bgp_FltrAttr-group { + description "Specify a range of attributes to filter the BGP Update message"; + + // Attribute value + leaf startVal { + + type bgp_AttrTypes; + description "Specify the start of the range of attributes"; + } + + leaf endVal { + + type bgp_AttrTypes; + description "Specify the end of the range of attributes"; + } + + leaf direction { + + type bgp_AttrFltrDir; + description "Specify the filter direction of the BGP Update messages"; + } + + leaf inheritFltrAttrCtrl { + + type bgp_FltrSt; + description "Specify the State of the filter. Whether its enabled or disabled. A Filter can only be disabled when peer inherits"; } } grouping bgp_LocalAsn-group { + description "Local AS: local AS information pertaining to a peer"; // Local ASN - // Type is an MO-Defined-Type leaf localAsn { - description "Local Autonomous System Number"; - // Type is an MO-Defined-Type type bgp_AsnNum; + description "Local Autonomous System Number"; } // local ASN config - // Type is an MO-Defined-Type leaf asnPropagate { - description "ASN Propagation"; - // Type is an MO-Defined-Type type bgp_AsnPropagation; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "ASN Propagation"; } } grouping bgp_PeerEntry-group { + description + "BGP Peer Entry: BGP peer operational + status information."; + leaf addr { + config "false"; + type address_Ip; + description "IP Address of Peer"; + } // Peer Type - // Type is an MO-Defined-Type leaf type { config "false"; - description "Peer Link Type"; - // Type is an MO-Defined-Type type bgp_PeerType; - } - leaf addr { - config "false"; - type address_Ip; + description "Peer Link Type"; } // Peer router id - // Type is an MO-Defined-Type leaf rtrId { config "false"; - description "Router ID"; - // Type is an MO-Defined-Type type ip_RtrId; + description "Router ID"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PeerOperSt; + description "Operational State"; } // Previous Operational state - // Type is an MO-Defined-Type leaf prevOperSt { config "false"; - description "Previous Operational State"; - // Type is an MO-Defined-Type type bgp_PeerOperSt; + description "Previous Operational State"; } // Shut state qualifier - // Type is an MO-Defined-Type leaf shutStQual { config "false"; - description "Shut State Qualifier"; - // Type is an MO-Defined-Type type bgp_ShutStQual; + description "Shut State Qualifier"; } leaf lastFlapTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Flap Timestamp"; } leaf maxConnRetryIntvl { config "false"; type uint16; default "60"; + description "Max Connect Retry Interval"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PeerFlags; + description "Flags"; } // Advertised capability - // Type is an MO-Defined-Type leaf advCap { config "false"; - description "Advertised Capability"; - // Type is an MO-Defined-Type type bgp_CapT; + description "Advertised Capability"; } // Received capability - // Type is an MO-Defined-Type leaf rcvCap { config "false"; - description "Received Capability"; - // Type is an MO-Defined-Type type bgp_CapT; + description "Received Capability"; } // Connected interface - // Type is an MO-Defined-Type leaf connIf { config "false"; - description "Directly Attached Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Directly Attached Interface"; } // Negotiated hold time - // Type is an MO-Defined-Type leaf holdIntvl { config "false"; - description "Hold Interval in secs"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval in secs"; } // Negotiated keepalive interval - // Type is an MO-Defined-Type leaf kaIntvl { config "false"; - description "Keepalive Interval in secs"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval in secs"; } leaf localIp { config "false"; type address_Ip; + description "Local IP"; } // Local L4 port - // Type is an MO-Defined-Type leaf localPort { config "false"; - description "Local Port"; - // Type is an MO-Defined-Type type l4_Port; + description "Local port number of the local host"; } // Remote L4 port - // Type is an MO-Defined-Type leaf remotePort { config "false"; - description "Remote Port"; - // Type is an MO-Defined-Type type l4_Port; + description "Remote port number of the remote host"; } // Number of times connections established - // Type is an MO-Defined-Type leaf connEst { config "false"; - description "Connections Established"; - // Type is an MO-Defined-Type type cap_Quant; + description "Connections Established"; } // Number of times connections dropped - // Type is an MO-Defined-Type leaf connDrop { config "false"; - description "Connections Dropped"; - // Type is an MO-Defined-Type type cap_Quant; + description "Connections Dropped"; } leaf updateElapsedTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Update Received Timestamp"; } // FD to connect to peer - // Type is an MO-Defined-Type leaf fd { config "false"; - description "FD to Connect to Peer"; - // Type is an MO-Defined-Type type bgp_SockFD; + description "FD to Connect to Peer"; } // Peer Index - // Type is an MO-Defined-Type leaf peerIdx { config "false"; - description "Peer Index"; - // Type is an MO-Defined-Type type bgp_PeerIdx; + description "Peer Index"; } // Connection Attempts - // Type is an MO-Defined-Type leaf connAttempts { config "false"; - description "Connection Attempts"; - // Type is an MO-Defined-Type type bgp_ConnAttempts; + description "Connection Attempts"; } // Peer idle state reason - // Type is an MO-Defined-Type leaf stReason { config "false"; - description "Peer Idle State Reason"; - // Type is an MO-Defined-Type type bgp_StReason; + description "Peer Idle State Reason"; } // Indicate if password is set - // Type is an MO-Defined-Type leaf passwdSet { config "false"; - description "TCP MD5 Authentication"; - // Type is an MO-Defined-Type type bgp_PasswdSet; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "TCP MD5 Authentication"; } // This objects hold graceful restart operational information. This // is valid per neighbor container gr-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package bgp uses bgp_GrSt-group; + description "Graceful Restart State"; } // This object holds peer event information container ev-items { - // Added containment as a singleton: Prefix=ev - // Acquired From Package bgp uses bgp_PeerEvents-group; + description "Peer Events"; } // This object holds operational state information for // bgp segment routing egress peer engineering container epe-items { - // Added containment as a singleton: Prefix=epe - // Acquired From Package bgp uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } // This object holds bgp peer af operational status info @@ -35348,192 +39866,179 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp uses bgp_PeerAfEntry-group; + description "BGP Peer Address Family Entry list"; } + description "BGP Peer Address Family Entry"; } // This object holds bgp peer statistics operational information. // This is a singleton within a peerEntry container peerstats-items { - // Added containment as a singleton: Prefix=peerstats - // Acquired From Package bgp uses bgp_PeerEntryStats-group; + description "Peer Entry Statistics"; } } grouping bgp_GrSt-group { + description "Graceful Restart State"; // Graceful state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_PeerGrSt; + description "Operational State"; } // Graceful restart interval advertised by peer - // Type is an MO-Defined-Type leaf restartIntvl { config "false"; - description "Restart Interval"; - // Type is an MO-Defined-Type - type bgp_GrIntvl; + type bgp_PeerGrIntvl; + description "Peer Graceful Restart Interval"; } leaf grTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Graceful Restart Timestamp"; } } grouping bgp_PeerEvents-group { + description "Peer Events"; // Major error during last reset sent - // Type is an MO-Defined-Type leaf majErrRstSent { config "false"; - description "Major Error During Last Resent Sent"; - // Type is an MO-Defined-Type type bgp_MajNotifErr; + description "Major Error During Last Resent Sent"; } // Minor error during last reset sent - // Type is an MO-Defined-Type leaf minErrRstSent { config "false"; - description "Minor Error During Last Reset Sent"; - // Type is an MO-Defined-Type type bgp_MinNotifErr; + description "Minor Error During Last Reset Sent"; } // Last error value sent - // Type is an MO-Defined-Type leaf lastErrValSent { config "false"; - description "Last Error Value Sent"; - // Type is an MO-Defined-Type type bgp_LastErrVal; + description "Last Error Value Sent"; } leaf rstSentTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reset Sent Timestamp"; } // Major error during last reset received - // Type is an MO-Defined-Type leaf majErrRstRsvd { config "false"; - description "Major Error During Last Reset Received"; - // Type is an MO-Defined-Type type bgp_MajNotifErr; + description "Major Error During Last Reset Received"; } // Minor error during last reset received - // Type is an MO-Defined-Type leaf minErrRstRsvd { config "false"; - description "Minor Error During Last Reset Received"; - // Type is an MO-Defined-Type type bgp_MinNotifErr; + description "Minor Error During Last Reset Received"; } // Last error value received - // Type is an MO-Defined-Type leaf lastErrValRsvd { config "false"; - description "Last Error Value Received"; - // Type is an MO-Defined-Type type bgp_LastErrVal; + description "Last Error Value Received"; } leaf rstRsvdTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reset Received Timestamp"; } // Last error length received - // Type is an MO-Defined-Type leaf lastErrLenRsvd { config "false"; - description "Last Error Length Received"; - // Type is an MO-Defined-Type type bgp_LastErrLen; + description "Last Error Length Received"; } // Last error length sent - // Type is an MO-Defined-Type leaf lastErrLenSent { config "false"; - description "Last Error Length Sent"; - // Type is an MO-Defined-Type type bgp_LastErrLen; + description "Last Error Length Sent"; } leaf lastErrDataRsvd { config "false"; type string; + description "Last Error Data Received"; } leaf lastErrDataSent { config "false"; type string; + description "Last Error Data Sent"; } } grouping bgp_PeerEpeEntry-group { + description "BGP Peer Egress Peer Engineering Entry"; // Egress peer engineering - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Egress Peer Engineering State"; - // Type is an MO-Defined-Type type bgp_EgressPeerEng; + description "Egress Peer Engineering State"; } leaf sid { config "false"; type uint32; + description "EPE Peer Segment ID"; } leaf rpcSetID { config "false"; type uint32; + description "EPE Peer RPC Set ID"; } leaf peerSetName { config "false"; type string { + pattern ".*[!-~]{0,63}.*"; } + description "EPE Peer Set Name"; } leaf peerSetSid { config "false"; type uint32; + description "EPE Peer Set Segment ID"; } leaf peerSetRpcSetID { config "false"; type uint32; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + description "EPE Peer Set RPC Set ID"; } // Egress Peer Engineering Peer Adjacencies @@ -35542,506 +40047,466 @@ module Cisco-NX-OS-device { config "false"; key "rpcSetID"; - // Added containment: Prefix=epeadj - // Acquired From Package bgp uses bgp_PeerEpeAdj-group; + description "Egress Peer Engineering Peer Adjacencies list"; } + description "Egress Peer Engineering Peer Adjacencies"; } } grouping bgp_PeerEpeAdj-group { + description "Egress Peer Engineering Peer Adjacencies"; leaf localAddr { config "false"; type address_Ip; + description "Local IP Address"; } leaf remoteAddr { config "false"; type address_Ip; + description "Remote IP Address"; } // Interface index - // Type is an MO-Defined-Type leaf ifIndex { config "false"; - description "Interface Index"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Index"; } leaf rpcSetID { config "false"; type uint32; + description "RPC Set ID"; } leaf sid { config "false"; type uint32; + description "Adjcency Segment ID"; } } grouping bgp_PeerAfEntry-group { + description "BGP Peer Address Family Entry"; // Local BGP table version - // Type is an MO-Defined-Type leaf tblVer { config "false"; - description "Local BGP Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Local BGP Table Version"; } // Peer table version - // Type is an MO-Defined-Type leaf peerTblVer { config "false"; - description "Peer Table Version"; - // Type is an MO-Defined-Type type bgp_TblVer; + description "Peer Table Version"; } // Table state - // Type is an MO-Defined-Type leaf tblSt { config "false"; - description "Table State"; - // Type is an MO-Defined-Type type bgp_TblSt; + description "Table State"; } // Number of accepted paths - // Type is an MO-Defined-Type leaf acceptedPaths { config "false"; - description "Number of accepted paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of accepted paths"; } // Number of denied paths - // Type is an MO-Defined-Type leaf deniedPaths { config "false"; - description "Number of denied paths"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of denied paths"; } // Number of withDrawn paths - // Type is an MO-Defined-Type leaf withDrawnPaths { config "false"; + + type bgp_NumPaths; description "Number of withDrawn paths"; + } + + // Number of treatAsWithdrawn paths + leaf treatAswithDrawnPaths { + config "false"; - // Type is an MO-Defined-Type type bgp_NumPaths; + description "Number of treat-as-withdrawn paths"; } // Memory consumed by the number of accepted paths - // Type is an MO-Defined-Type leaf memAccPaths { config "false"; - description "Memory consumed by the number of accepted paths"; - // Type is an MO-Defined-Type type bgp_MemConsumed; + description "Memory consumed by the number of accepted paths"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type bgp_PeerAfFlags; + description "Flags"; } // Prefixes Sent to peer - // Type is an MO-Defined-Type leaf pfxSent { config "false"; - description "Prefixes sent to peer"; - // Type is an MO-Defined-Type type bgp_PfxSent; + description "Prefixes sent to peer"; } // Prefixes Saved from peer - // Type is an MO-Defined-Type leaf pfxSaved { config "false"; - description "Prefixes saved from peer"; - // Type is an MO-Defined-Type type bgp_PfxSaved; + description "Prefixes saved from peer"; } // Prefixes Flushed from peer - // Type is an MO-Defined-Type leaf pfxFlushed { config "false"; - description "Prefixes flushed from peer"; - // Type is an MO-Defined-Type type bgp_PfxFlushed; + description "Prefixes flushed from peer"; } leaf lastEorRcvdTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last EOR Received Timestamp"; } leaf firstEorRcvdTs { config "false"; - type string; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "First EOR Received Timestamp"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { config "false"; - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } } grouping bgp_PeerEntryStats-group { + description "Peer Entry Statistics"; // BGP Peer Stats Number of BGP Open Messages sent - // Type is an MO-Defined-Type leaf openSent { config "false"; - description "Number of Open Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Open Messages Sent"; } // Number of BGP Open Messages received - // Type is an MO-Defined-Type leaf openRcvd { config "false"; - description "Number of Open Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Open Messages Received"; } // Number of BGP Update Messages sent - // Type is an MO-Defined-Type leaf updateSent { config "false"; - description "Number of Update Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Update Messages Sent"; } // Number of BGP Update Messages received - // Type is an MO-Defined-Type leaf updateRcvd { config "false"; - description "Number of Update Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Update Messages Received"; } // Number of BGP Keepalive Messages sent - // Type is an MO-Defined-Type leaf kaSent { config "false"; - description "Number of Keepalive Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Keepalive Messages Sent"; } // Number of BGP Keepalive Messages received - // Type is an MO-Defined-Type leaf kaRcvd { config "false"; - description "Number of Keepalive Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Keepalive Messages Received"; } // Number of BGP Route Refresh Messages sent - // Type is an MO-Defined-Type leaf routeRefreshSent { config "false"; - description "Number of Route Refresh Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Route Refresh Messages Sent"; } // Number of BGP Route Refresh Messages received - // Type is an MO-Defined-Type leaf routeRefreshRcvd { config "false"; - description "Number of Route Refresh Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Route Refresh Messages Received"; } // Number of BGP Capability Messages sent - // Type is an MO-Defined-Type leaf capSent { config "false"; - description "Number of Capability Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Capability Messages Sent"; } // Number of BGP Capability Messages received - // Type is an MO-Defined-Type leaf capRcvd { config "false"; - description "Number of Capability Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Capability Messages Received"; } // Number of BGP Notification Messages sent - // Type is an MO-Defined-Type leaf notifSent { config "false"; - description "Number of Notification Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Notification Messages Sent"; } // Number of BGP Notification Messages received - // Type is an MO-Defined-Type leaf notifRcvd { config "false"; - description "Number of Notification Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Notification Messages Received"; } // Number of BGP Messages sent - // Type is an MO-Defined-Type leaf msgSent { config "false"; - description "Number of Messages Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Messages Sent"; } // Number of BGP Messages received - // Type is an MO-Defined-Type leaf msgRcvd { config "false"; - description "Number of Messages Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Messages Received"; } // Number of BGP Message Bytes sent - // Type is an MO-Defined-Type leaf byteSent { config "false"; - description "Number of Bytes Sent"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Bytes Sent"; } // Number of BGP Message Bytes received - // Type is an MO-Defined-Type leaf byteRcvd { config "false"; - description "Number of Bytes Received"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Number of Bytes Received"; } // Bytes in send queue - // Type is an MO-Defined-Type leaf byteInSendQ { config "false"; - description "Bytes in Send Queue"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Bytes in Send Queue"; } // Bytes in receive queue - // Type is an MO-Defined-Type leaf byteInRecvQ { config "false"; - description "Bytes in Receive Queue"; - // Type is an MO-Defined-Type type bgp_PeerCount; + description "Bytes in Receive Queue"; } leaf connectRetryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Connect Retry Timestamp"; } leaf kaTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Keepalive Timestamp"; + } + + // Total Discarded Attributes + leaf totalDiscardedAttributes { + config "false"; + + type bgp_PeerCount; + description "Total number of attributes discarded"; } } grouping bgp_PeerAf-group { + description "Peer Address Family"; // Peer address family controls - // Type is an MO-Defined-Type leaf ctrl { - description "Peer address-family control"; - // Type is an MO-Defined-Type type bgp_PeerAfControl; + description "Peer address-family control"; } leaf allowedSelfAsCnt { type uint8 { range "0..10"; } default "0"; + description "Allowed Self AS Count"; } // Soft Reconfiguration - // Type is an MO-Defined-Type leaf softReconfigBackup { - description "Soft Reconfiguration"; - // Type is an MO-Defined-Type type bgp_SoftReconfigBackup; + description "Soft Reconfiguration"; } // Neighbor advertisement interval - // Type is an MO-Defined-Type leaf advIntvl { - description "Neighbor advertisement interval"; - // Type is an MO-Defined-Type type bgp_AdvInterval; + description "Neighbor advertisement interval"; } - // Type is an MO-Defined-Type leaf defOrg { - description "Default Originate is enabled"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Default Originate is enabled"; } leaf defOrgRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Default Originate Route Map"; } // Capability Additional Paths - // Type is an MO-Defined-Type leaf capAddlPaths { - description "Capability Additional Paths"; - // Type is an MO-Defined-Type type bgp_CapAddlPathCapT; + description "Capability Additional Paths"; } leaf unSupprMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map to selectively unsuppress suppressed routes"; } // as-override - // Type is an MO-Defined-Type leaf asOverride { - description "Override matching AS-number while sending update"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Override matching AS-number while sending update"; } // next-hop-third-party - // Type is an MO-Defined-Type leaf nhThirdparty { - description "Compute a third-party nexthop if possible"; - // Type is an MO-Defined-Type type bgp_AdminSt; + default "enabled"; + description "Compute a third-party nexthop if possible"; } leaf wght { type string { + pattern ".*\\d*.*"; } + description "Weight for the neighbor."; } leaf soo { type mtx_array_community; + description "Site-of-origin extcommunity"; } // Send-community standard - // Type is an MO-Defined-Type leaf sendComStd { - description "Send-community standard"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Send-community standard"; } // Send-community extended - // Type is an MO-Defined-Type leaf sendComExt { - description "Send-community extended"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Send-community extended"; } // encapsulation mpls for L2Vpn Evpn PeerAf - // Type is an MO-Defined-Type leaf encapMpls { - description "Configure encapsulation type for EVPN routes"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Configure encapsulation type for EVPN routes"; } // rewrite-evpn-rt-asn + rewrite-rt-asn - // Type is an MO-Defined-Type leaf rewriteRtAsn { - description "Auto generate RTs for EBGP neighbor"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Auto generate RTs for EBGP neighbor"; } // Advertise Gateway IP to in Type-5 routes to neighbor - // Type is an MO-Defined-Type leaf advGwIp { + + type nw_AdminSt; description "Advertise Gateway IP in Type-5 routes to neighbor"; + } + + // advertise local-labeled-route + leaf advLocalLblRt { - // Type is an MO-Defined-Type type nw_AdminSt; + description "Advertise a route with local label to peer"; + } + leaf nhSelfAll { + type boolean; + description "Set address as next-hop for all routes"; } // Bits in this property represent whether to inherit or @@ -36055,36 +40520,25 @@ module Cisco-NX-OS-device { // A note that any attributes configured for the neighbor AF // take priority over any attributes inherited from a // template. - // From Interface bgp:InheritContPeerPolicyCtrl - // Type is an MO-Defined-Type leaf inheritContPeerPolicyCtrl { - description "Inherit control of peer policy parameters"; - // Type is an MO-Defined-Type type bgp_InheritContPeerPolicyCtrlType; + description "Inherit control of peer policy parameters"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PeerAf->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "bgp PeerAf"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "bgp PeerAf"; } // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type leaf type { - description "Address Family Type"; - // Type is an MO-Defined-Type type bgp_AfT; + description "Address Family Type"; } // This policy tells on what to do when the number of prefixes @@ -36093,107 +40547,125 @@ module Cisco-NX-OS-device { // on the router container maxpfxp-items { - // Added containment as a singleton: Prefix=maxpfxp - // Acquired From Package bgp uses bgp_MaxPfxP-group; + description "Maximum Prefix Policy"; } // This object holds per advertise-map information container advtmap-items { - // Added containment as a singleton: Prefix=advtmap - // Acquired From Package bgp uses bgp_AdvtMap-group; + description "Advertise-Map: This object holds per advertise-map information."; } // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } // MCAST-VPN route + // Ephemeral data container mvpnrt-items { + + // Ephemeral data list MvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=mvpnrt - // Acquired From Package bgp uses bgp_MvpnRoute-group; + description "MVPN Route list"; } + description "MVPN Route"; } + // Ephemeral data container advtdrt-items { - // Added containment as a singleton: Prefix=advtdrt - // Acquired From Package bgp uses bgp_AdvtdRoutes-group; + description "Display Advertised Routes to Peer"; } + // Ephemeral data container rcvdrt-items { - // Added containment as a singleton: Prefix=rcvdrt - // Acquired From Package bgp uses bgp_RcvdRoutes-group; + description "Display Received Routes from Peer"; } // Show only Dampening Paths Routes + // Ephemeral data container damppathsrt-items { - // Added containment as a singleton: Prefix=damppathsrt - // Acquired From Package bgp uses bgp_DampPathsRoutes-group; + description "Display Dampening Paths Routes"; } // Route control policy for routes coming/going to peers. @@ -36207,37 +40679,40 @@ module Cisco-NX-OS-device { list RtCtrlP-list { key "direction"; - // Added containment: Prefix=rtctrl - // Acquired From Package bgp uses bgp_RtCtrlP-group; + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers. list"; } + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; } // This objects holds default route leak policy, // this is not needed for FCS in our solution container defrtleak-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package bgp uses bgp_DefRtLeakP-group; + description "Default Route Leak Policy"; } container pfxctrl-items { list PfxCtrlP-list { key "direction"; - // Added containment: Prefix=pfxctrl - // Acquired From Package bgp uses bgp_PfxCtrlP-group; + description "Prefix-list Control Policy list"; } + description "Prefix-list Control Policy"; } container fltrctrl-items { list FltrCtrlP-list { key "direction"; - // Added containment: Prefix=fltrctrl - // Acquired From Package bgp uses bgp_FltrCtrlP-group; + description "Filter-list Control Policy list"; } + description "Filter-list Control Policy"; } // This object holds bgp peer af peer policy inherit @@ -36245,371 +40720,360 @@ module Cisco-NX-OS-device { list PolicyInheritRule-list { key "name"; - // Added containment: Prefix=pol - // Acquired From Package bgp uses bgp_PolicyInheritRule-group; + description "Rule for policy template import list"; } + description "Rule for policy template import"; } } grouping bgp_MaxPfxP-group { + description "Maximum Prefix Policy"; // Maximum number of prefixes allowed from the peer - // Type is an MO-Defined-Type leaf maxPfx { - description "Maximum number of prefixes from this neighbor"; - // Type is an MO-Defined-Type type bgp_MaxPfx; + description "Maximum number of prefixes from this neighbor"; } // Threshold at which warning is issued when number of // prefixes crosses the threshold - // Type is an MO-Defined-Type leaf thresh { - description "Threshold percentage at which to generate a warning"; - // Type is an MO-Defined-Type type bgp_MaxPfxThresh; + description "Threshold percentage at which to generate a warning"; } // Action on what to do when the maximum prefix limit is // reached - // Type is an MO-Defined-Type leaf action { - description "Action to do when limit is exceeded"; - // Type is an MO-Defined-Type type bgp_MaxPfxAct; + description "Action to do when limit is exceeded"; } // Duration before we restart the peer when the prefix // limit is reached (in minutes) - // Type is an MO-Defined-Type leaf restartTime { - description "Restart bgp connection after prefix limit is exceeded"; - // Type is an MO-Defined-Type type bgp_MaxPfxDuration; - } - - // Inherited From pol:Obj - // Modified by Override: bgp:MaxPfxP->name - // Type is an MO-Defined-Type - leaf name { - description "bgp MaxPfxP"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Restart bgp connection after prefix limit is exceeded"; } } grouping bgp_AdvtMap-group { + description "Advertise-Map: This object holds per advertise-map information."; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "advertise route map"; } // Condition route-map - // Type is an MO-Defined-Type leaf condition { - description "Specify route-map for conditional advertisement"; - // Type is an MO-Defined-Type type bgp_AdvtMapCondition; + description "Specify route-map for conditional advertisement"; } leaf condMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "conditional exist or non-exist route map"; } } grouping bgp_AdvtdRoutes-group { + description "Display Advertised Routes to Peer"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RcvdRoutes-group { + description "Display Received Routes from Peer"; // This object holds the bgp route information + // Ephemeral data container rt-items { + + // Ephemeral data list Route-list { config "false"; key "pfx"; - // Added containment: Prefix=rt - // Acquired From Package bgp uses bgp_Route-group; + description "Route list"; } + description "Route"; } // This object holds the bgp vpn route information + // Ephemeral data container vpnrt-items { + + // Ephemeral data list VpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=vpnrt - // Acquired From Package bgp uses bgp_VpnRoute-group; + description "VPN Route information list"; } + description "VPN Route information"; } + + // Ephemeral data container lblrt-items { + + // Ephemeral data list LblRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lblrt - // Acquired From Package bgp uses bgp_LblRoute-group; + description "Labeled Route list"; } + description "Labeled Route"; } + + // Ephemeral data container lsrt-items { + + // Ephemeral data list LnkStRoute-list { config "false"; key "pfx"; - // Added containment: Prefix=lsrt - // Acquired From Package bgp uses bgp_LnkStRoute-group; + description "Link State Route list"; } + description "Link State Route"; } // EVPN route + // Ephemeral data container evpnrt-items { + + // Ephemeral data list EvpnRoute-list { config "false"; key "pfx rd"; - // Added containment: Prefix=evpnrt - // Acquired From Package bgp uses bgp_EvpnRoute-group; + description "EVPN Route list"; } + description "EVPN Route"; } } grouping bgp_RtCtrlP-group { + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type bgp_RtCtrlOperSt; + description "Operational State"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type leaf direction { - description "Direction"; - // Type is an MO-Defined-Type type rtctrl_RtCtrlDir; + description "Direction"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping bgp_PfxCtrlP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + description "Prefix-list Control Policy"; // Direction [in/out] - // Inherited From bgp:RtListP - // Type is an MO-Defined-Type leaf direction { + + type bgp_RtCtrlDir; description "Direction: Specifies whether to apply this policy in the incoming or outgoing direction."; - - // Type is an MO-Defined-Type - type bgp_RtCtrlDir; } leaf list { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Name of Prefix List"; } } grouping bgp_FltrCtrlP-group { + description "Filter-list Control Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Direction [in/out] - // Inherited From bgp:RtListP - // Type is an MO-Defined-Type leaf direction { + + type bgp_RtCtrlDir; description "Direction: Specifies whether to apply this policy in the incoming or outgoing direction."; - - // Type is an MO-Defined-Type - type bgp_RtCtrlDir; } leaf list { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Name of Filter List"; } } grouping bgp_PolicyInheritRule-group { + description "Rule for policy template import"; // Sequence number of the inheritted peer policy template - // Type is an MO-Defined-Type leaf seq { - description "Sequence Number"; - // Type is an MO-Defined-Type type bgp_Order { range "1..65535"; } + description "Sequence Number"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PolicyInheritRule->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern ".*[!-~]{1,80}.*"; } + description "Name"; } } - grouping bgp_PeerCont-group { + grouping bgp_PeerIf-group { + description "BGP Peer: BGP information pertaining to a peer with interface"; + + // Peer interface id + leaf id { + + type nw_IfId; + description "Interface identifier of the neighbor"; + } + leaf password { + type string; + description "Configure a password for neighbor"; + } + leaf operIpAddr { + config "false"; + type address_Ip; + description "IP Address of the interface"; + } // Bits in this property represent whether to inherit or // not to inherit from template. @@ -36622,2397 +41086,2585 @@ module Cisco-NX-OS-device { // A note that any attributes configured for the neighbor // take priority over any attributes inherited from a // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; - // Type is an MO-Defined-Type type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: bgp:Common->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern "(.{1,80}).*|()"; } - } - leaf desc { - type string { - } + description "Name"; } - // Inherited From bgp:Common - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Administrative State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Administrative State"; } leaf asn { type string; + description "Autonomous System Number, takes value from (1-4294967295 | 1-65535[.(0-65535)])"; } // Generate system message when any neighbor state changes - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf logNbrChgs { - description "Log Neighbor Changes"; - // Type is an MO-Defined-Type type bgp_LogNbrSt; + description "Log messages for Neighbor up/down events"; } - // Source interface - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Peer Fabric type + leaf peerType { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - // Password Encrypt Type - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf passwdType { - description "Password EnCrypt Type"; - // Type is an MO-Defined-Type type bgp_PwdType; + description "Password EnCrypt Type"; } // Peer controls - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type bgp_PeerControl; + description "Peer Controls"; } // eBGP Multihop - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf ttl { - description "eBGP Multihop"; - // Type is an MO-Defined-Type type bgp_TtlVal; + description "eBGP Multihop TTL value"; } // Keepalive interval, how often you send keepalives - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf kaIntvl { - description "Keepalive Interval"; - // Type is an MO-Defined-Type type bgp_KaIntvl; + description "Keepalive Interval"; } // Hold interval, how long you wait before you declare the // neighbor down - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf holdIntvl { - description "Hold Interval"; - // Type is an MO-Defined-Type type bgp_HoldIntvl; + description "Hold Interval"; } // Connection Mode - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf connMode { - description "Connection Mode"; - // Type is an MO-Defined-Type type bgp_ConnMode; + description "BGP transport connection mode"; } leaf sessionContImp { type string { + pattern ".*[!-~]{0,80}.*"; + } + description "Peer Session Template To Import From"; + } + leaf peerImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description "Peer Template To Import From"; } // Remove Private ASN - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf privateASctrl { - description "Private AS Control"; - // Type is an MO-Defined-Type type bgp_PrivateASControl; + description "Remove private AS number from outbound updates"; } - // Peer Fabric type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf peerType { - description "Neighbor Fabric Type"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Type is an MO-Defined-Type - type bgp_PeerFabType; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; + } + leaf epePeerSet { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Egress Peer Engineering EPE Peer-Set name"; } // Low Memory Exempt - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf lowMemExempt { - description "Low Memory Exempt"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Low Memory Exempt"; } // Capability Suppress - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; } leaf affGrp { type uint16; + description "Affinity group for the neighbor."; } - - // Egress Peer Engineering (EPE) for neighbor - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf epe { - description "Egress Peer Engineering EPE for neighbor"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf epePeerSet { - type string { + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description "Enable TTL Security Mechanism"; } // bmp-activate-server 1 - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf bmpSrvId1St { - description "Activate BMP Server 1"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 1"; } // bmp-activate-server 2 - // Inherited From bgp:Common - // Type is an MO-Defined-Type leaf bmpSrvId2St { - description "Activate BMP Server 2"; - // Type is an MO-Defined-Type type bgp_AdminSt; + description "Activate BMP Server 2"; } - // This object holds local AS information pertaining to a peer - container localasn-items { + // Dscp value, set it in tcp packets + leaf dscp { - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp - uses bgp_LocalAsn-group; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - // This object holds per address family bgp peer information - container af-items { - list PeerAf-list { - key "type"; + // Operational state Maximum Prefix Peers + leaf maxPfxPeers { + config "false"; - // Added containment: Prefix=af - // Acquired From Package bgp - uses bgp_PeerAf-group; - } + type bgp_PfxPeerCounts; + description "Maximum Prefix Peers Count"; } - } - - grouping bgp_SessionCont-group { - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'keepalive and hold - // timer' and BFD from a template, set this property with - // values - 'timer' and 'bfd'. - // A note that any attributes configured for the neighbor - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerCtrl { - description "Inherit control of peer parameters"; + // Current Prefix Peers + leaf curPfxPeers { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerCtrlType; + type bgp_PfxPeerCounts; + description "Current Prefix Peers Counts"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: bgp:Common->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Active Prefix Peers + leaf activePfxPeers { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf desc { - type string { - } + type bgp_PfxPeerCounts; + description "Active Prefix Peer Counts"; } - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative State"; + // Maximum Current Peers + leaf maxCurPeers { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; - } - leaf asn { - type string; + type bgp_PfxPeerCounts; + description "Maximum Current Peers Counts"; } - // Generate system message when any neighbor state changes - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf logNbrChgs { - description "Log Neighbor Changes"; + // Total Prefix Peers + leaf totalPfxPeers { + config "false"; - // Type is an MO-Defined-Type - type bgp_LogNbrSt; + type bgp_PfxPeerCounts; + description "Total Prefix Peers Counts"; } - // Source interface - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // gShut Operational state + leaf gShutOperSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf password { - type string; + type bgp_AdminSt; + description "GShut Operational State"; } - // Password Encrypt Type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf passwdType { - description "Password EnCrypt Type"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type bgp_PwdType; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; + } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - // Peer controls - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; + // This objects hold graceful shutdown informations + container gs-items { - // Type is an MO-Defined-Type - type bgp_PeerControl; + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } - // eBGP Multihop - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf ttl { - description "eBGP Multihop"; + // This object holds local AS information pertaining to a peer + container localasn-items { - // Type is an MO-Defined-Type - type bgp_TtlVal; + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } - // Keepalive interval, how often you send keepalives - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf kaIntvl { - description "Keepalive Interval"; + // This object holds bgp peerif operational status information. + container ent-items { + list PeerIfEntry-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type bgp_KaIntvl; + uses bgp_PeerIfEntry-group; + description + "BGP Peer Interface Entry: BGP peer operational + status information. list"; + } + description + "BGP Peer Interface Entry: BGP peer operational + status information."; } - // Hold interval, how long you wait before you declare the - // neighbor down - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // This object holds per address family bgp peer information + container af-items { + list PeerAf-list { + key "type"; - // Type is an MO-Defined-Type - type bgp_HoldIntvl; + uses bgp_PeerAf-group; + description "Peer Address Family list"; + } + description "Peer Address Family"; } + } - // Connection Mode - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf connMode { - description "Connection Mode"; + grouping bgp_PeerIfEntry-group { + description + "BGP Peer Interface Entry: BGP peer operational + status information."; - // Type is an MO-Defined-Type - type bgp_ConnMode; - } - leaf sessionContImp { - type string { - } + // Peer interface id + leaf id { + config "false"; + + type nw_IfId; + description "Interface id of the neighbor"; } - // Remove Private ASN - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf privateASctrl { - description "Private AS Control"; + // Peer Type + leaf type { + config "false"; - // Type is an MO-Defined-Type - type bgp_PrivateASControl; + type bgp_PeerType; + description "Peer Link Type"; } - // Peer Fabric type - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf peerType { - description "Neighbor Fabric Type"; + // Peer router id + leaf rtrId { + config "false"; - // Type is an MO-Defined-Type - type bgp_PeerFabType; + type ip_RtrId; + description "Router ID"; } - // Low Memory Exempt - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf lowMemExempt { - description "Low Memory Exempt"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerOperSt; + description "Operational State"; } - // Capability Suppress - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf capSuppr4ByteAsn { - description "Capability Suppress 4-byte-as"; + // Previous Operational state + leaf prevOperSt { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf affGrp { - type uint16; + type bgp_PeerOperSt; + description "Previous Operational State"; } - // Egress Peer Engineering (EPE) for neighbor - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf epe { - description "Egress Peer Engineering EPE for neighbor"; + // Shut state qualifier + leaf shutStQual { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_ShutStQual; + description "Shut State Qualifier"; } - leaf epePeerSet { - type string { + leaf lastFlapTs { + config "false"; + type union { + type string; + type uint64; } + description "Last Flap Timestamp"; + } + leaf maxConnRetryIntvl { + config "false"; + type uint16; + default "60"; + description "Max Connect Retry Interval"; } - // bmp-activate-server 1 - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf bmpSrvId1St { - description "Activate BMP Server 1"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerFlags; + description "Flags"; } - // bmp-activate-server 2 - // Inherited From bgp:Common - // Type is an MO-Defined-Type - leaf bmpSrvId2St { - description "Activate BMP Server 2"; + // Advertised capability + leaf advCap { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_CapT; + description "Advertised Capability"; } - // This object holds local AS information pertaining to a peer - container localasn-items { + // Received capability + leaf rcvCap { + config "false"; - // Added containment as a singleton: Prefix=localasn - // Acquired From Package bgp - uses bgp_LocalAsn-group; + type bgp_CapT; + description "Received Capability"; } - } - - grouping bgp_PolicyCont-group { - // Peer address family controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; + // Connected interface + leaf connIf { + config "false"; - // Type is an MO-Defined-Type - type bgp_PeerAfControl; - } - leaf allowedSelfAsCnt { - type uint8 { - range "0..10"; - } - default "0"; + type nw_IfId; + description "Directly Attached Interface"; } - // Soft Reconfiguration - // Type is an MO-Defined-Type - leaf softReconfigBackup { - description "Soft Reconfiguration"; + // Negotiated hold time + leaf holdIntvl { + config "false"; - // Type is an MO-Defined-Type - type bgp_SoftReconfigBackup; + type bgp_HoldIntvl; + description "Hold Interval in secs"; } - // Neighbor advertisement interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Neighbor advertisement interval"; + // Negotiated keepalive interval + leaf kaIntvl { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdvInterval; + type bgp_KaIntvl; + description "Keepalive Interval in secs"; + } + leaf localIp { + config "false"; + type address_Ip; + description "Local IP"; } - // Type is an MO-Defined-Type - leaf defOrg { - description "Default Originate is enabled"; + // Local L4 port + leaf localPort { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf defOrgRtMap { - type string { - } + type l4_Port; + description "Local port number of the local host"; } - // Capability Additional Paths - // Type is an MO-Defined-Type - leaf capAddlPaths { - description "Capability Additional Paths"; + // Remote L4 port + leaf remotePort { + config "false"; - // Type is an MO-Defined-Type - type bgp_CapAddlPathCapT; - } - leaf unSupprMap { - type string { - } + type l4_Port; + description "Remote port number of the remote host"; } - // as-override - // Type is an MO-Defined-Type - leaf asOverride { - description "Override matching AS-number while sending update"; + // Number of times connections established + leaf connEst { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type cap_Quant; + description "Connections Established"; } - // next-hop-third-party - // Type is an MO-Defined-Type - leaf nhThirdparty { - description "Compute a third-party nexthop if possible"; + // Number of times connections dropped + leaf connDrop { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type cap_Quant; + description "Connections Dropped"; } - leaf wght { - type string { + leaf updateElapsedTs { + config "false"; + type union { + type string; + type uint64; } - } - leaf soo { - type mtx_array_community; + description "Last Update Received Timestamp"; } - // Send-community standard - // Type is an MO-Defined-Type - leaf sendComStd { - description "Send-community standard"; + // FD to connect to peer + leaf fd { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_SockFD; + description "FD to Connect to Peer"; } - // Send-community extended - // Type is an MO-Defined-Type - leaf sendComExt { - description "Send-community extended"; + // Peer Index + leaf peerIdx { + config "false"; - // Type is an MO-Defined-Type - type bgp_AdminSt; + type bgp_PeerIdx; + description "Peer Index"; } - // Bits in this property represent whether to inherit or - // not to inherit from template. - // To disable inheritance of an attribute from a template - // of a neighbor AF, set the corresponding bit of this - // property. - // For example, to disable inheritance of 'send community' - // from a template, set this property with value - - // 'send-com'. - // A note that any attributes configured for the neighbor AF - // take priority over any attributes inherited from a - // template. - // From Interface bgp:InheritContPeerPolicyCtrl - // Type is an MO-Defined-Type - leaf inheritContPeerPolicyCtrl { - description "Inherit control of peer policy parameters"; + // Connection Attempts + leaf connAttempts { + config "false"; - // Type is an MO-Defined-Type - type bgp_InheritContPeerPolicyCtrlType; + type bgp_ConnAttempts; + description "Connection Attempts"; } - // Inherited From nw:Conn - // Modified by Override: bgp:PolicyCont->name - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Peer idle state reason + leaf stReason { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_StReason; + description "Peer Idle State Reason"; } - // This policy tells on what to do when the number of prefixes - // advertised by the peer crosses a maximum limit specified. - // This is used as a defensive mechanism to protect resources - // on the router - container maxpfxp-items { + // Indicate if password is set + leaf passwdSet { + config "false"; - // Added containment as a singleton: Prefix=maxpfxp - // Acquired From Package bgp - uses bgp_MaxPfxP-group; + type bgp_PasswdSet; + description "TCP MD5 Authentication"; } - // This object holds per advertise-map information - container advtmap-items { + // This object holds peer event information + container ev-items { - // Added containment as a singleton: Prefix=advtmap - // Acquired From Package bgp - uses bgp_AdvtMap-group; + uses bgp_PeerEvents-group; + description "Peer Events"; } - // Route control policy for routes coming/going to peers. - // There are few ways to apply this policy, controlling - // through route maps or prefix lists or filter lists. - // If both are specified, the order is implicit. Prefix - // lists are applied before route maps. - // The direction specifies whether to apply this policy - // in the incoming or outgoing direction - container rtctrl-items { - list RtCtrlP-list { - key "direction"; + // This object holds operational state information for + // bgp segment routing egress peer engineering + container epe-items { - // Added containment: Prefix=rtctrl - // Acquired From Package bgp - uses bgp_RtCtrlP-group; - } + uses bgp_PeerEpeEntry-group; + description "BGP Peer Egress Peer Engineering Entry"; } - container pfxctrl-items { - list PfxCtrlP-list { - key "direction"; - // Added containment: Prefix=pfxctrl - // Acquired From Package bgp - uses bgp_PfxCtrlP-group; - } - } - container fltrctrl-items { - list FltrCtrlP-list { - key "direction"; + // This object holds bgp peer af operational status info + container af-items { + list PeerAfEntry-list { + config "false"; + key "type"; - // Added containment: Prefix=fltrctrl - // Acquired From Package bgp - uses bgp_FltrCtrlP-group; + uses bgp_PeerAfEntry-group; + description "BGP Peer Address Family Entry list"; } + description "BGP Peer Address Family Entry"; } - // This object holds bgp peer af peer policy inherit - container pol-items { - list PolicyInheritRule-list { - key "name"; + // This object holds bgp peer statistics operational information. + // This is a singleton within a peerEntry + container peerstats-items { - // Added containment: Prefix=pol - // Acquired From Package bgp - uses bgp_PolicyInheritRule-group; - } + uses bgp_PeerEntryStats-group; + description "Peer Entry Statistics"; } } - grouping bgp_EvtHist-group { + grouping bgp_PeerCont-group { + description "Peer Container: parameters pertaining to peer templates"; - // Event-history buffer type - // Type is an MO-Defined-Type - leaf type { - description "Configure event-history {cli | events | periodic | detail}"; + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { - // Type is an MO-Defined-Type - type bgp_EhType; + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; } - // Event-history buffer size - // Type is an MO-Defined-Type - leaf size { - description "Configure event-history with buffer size"; + leaf name { - // Type is an MO-Defined-Type - type bgp_Size; + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; } - } - - grouping bgp_OperBgp-group { - - // This object holds bgp operational information for L2. - container l2-items { - list OperRtctrlL2-list { - config "false"; - key "encap"; - - // Added containment: Prefix=l2 - // Acquired From Package bgp - uses bgp_OperRtctrlL2-group; + leaf desc { + type string { + pattern "(.{1,80}).*|()"; } + description "Description"; } - // This object holds bgp operational information for L3. - container l3-items { - list OperRtctrlL3-list { - config "false"; - key "encap"; + leaf adminSt { - // Added containment: Prefix=l3 - // Acquired From Package bgp - uses bgp_OperRtctrlL3-group; - } + type nw_AdminSt; + description "Administrative State"; + } + leaf asn { + type string; + description "Autonomous System Number"; } - } - - grouping bgp_OperRtctrlL2-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Generate system message when any neighbor state changes + leaf logNbrChgs { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_LogNbrSt; + description "Log Neighbor Changes"; } - leaf rd { - config "false"; - type mtx_array_community; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source Interface"; } - leaf encap { - config "false"; + leaf password { type string; + description "Configure a password for neighbor"; } - // Route target policy - container rttp-items { - list OperRttP-list { - config "false"; - key "type"; + // Password Encrypt Type + leaf passwdType { - // Added containment: Prefix=rttp - // Acquired From Package bgp - uses bgp_OperRttP-group; - } + type bgp_PwdType; + description "Password EnCrypt Type"; } - } - grouping bgp_OperRttP-group { + // Peer controls + leaf ctrl { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type bgp_PeerControl; + description "Control"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // eBGP Multihop + leaf ttl { + + type bgp_TtlVal; + description "eBGP Multihop"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_KaIntvl; + description "Keepalive Interval"; } - // Type - // Inherited From rtctrl:ARtP - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Hold interval, how long you wait before you declare the + // neighbor down + leaf holdIntvl { - // Type is an MO-Defined-Type - type rtctrl_RttPType; + type bgp_HoldIntvl; + description "Hold Interval"; } - // List of route targets - container entry-items { - list OperRttEntry-list { - config "false"; - key "rtt"; + // Connection Mode + leaf connMode { - // Added containment: Prefix=entry - // Acquired From Package bgp - uses bgp_OperRttEntry-group; + type bgp_ConnMode; + description "Connection Mode"; + } + leaf sessionContImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description + "Importing Session Specific properties from + Session Template"; } - // Route control map policy for routes imported/exported - // into an AF. Control is through route maps. - container rtctrlmap-items { + // Remove Private ASN + leaf privateASctrl { - // Added containment as a singleton: Prefix=rtctrlmap - // Acquired From Package rtctrl - uses rtctrl_MapP-group; + type bgp_PrivateASControl; + description "Private AS Control"; } - // Route control map policy for routes imported/exported - // into an AF in the default VRF. Control is through route maps. - container rtctrldefmap-items { + // Peer Fabric type + leaf peerType { - // Added containment as a singleton: Prefix=rtctrldefmap - // Acquired From Package rtctrl - uses rtctrl_DomDefMapP-group; + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - } - grouping bgp_OperRttEntry-group { - leaf rtt { - config "false"; - type mtx_array_community; - } - } + // Low Memory Exempt + leaf lowMemExempt { - grouping rtctrl_MapP-group { + type bgp_AdminSt; + description "Low Memory Exempt"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Capability Suppress + leaf capSuppr4ByteAsn { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; + } + leaf affGrp { + type uint16; + description "Affinity group for the neighbor."; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; } - leaf rtMap { + leaf epePeerSet { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } - } - grouping rtctrl_DomDefMapP-group { - leaf pfxLimit { - type uint32 { - range "0..2147483647"; - } - default "0"; - } - leaf allowVpn { - type boolean; + // bmp-activate-server 1 + leaf bmpSrvId1St { + + type bgp_AdminSt; + description "Activate BMP Server 1"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // bmp-activate-server 2 + leaf bmpSrvId2St { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type bgp_AdminSt; + description "Activate BMP Server 2"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Dscp value, set it in tcp packets + leaf dscp { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - leaf rtMap { - type string { + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description + "Enable TTL Security Mechanism + with hop counts specified for remote peers"; } - } - - grouping bgp_OperRtctrlL3-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - leaf rd { - config "false"; - type mtx_array_community; + + // This objects hold graceful shutdown informations + container gs-items { + + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; } - leaf encap { - config "false"; - type string; + + // This object holds local AS information pertaining to a peer + container localasn-items { + + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } - // This object holds per address family bgp vrf information + // This object holds per address family bgp peer information container af-items { - list OperDomAf-list { - config "false"; + list PeerAf-list { key "type"; - // Added containment: Prefix=af - // Acquired From Package bgp - uses bgp_OperDomAf-group; + uses bgp_PeerAf-group; + description "Peer Address Family list"; } + description "Peer Address Family"; } } - grouping bgp_OperDomAf-group { + grouping bgp_SessionCont-group { + description "Session Container: parameters related to session templates"; + + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'keepalive and hold + // timer' and BFD from a template, set this property with + // values - 'timer' and 'bfd'. + // A note that any attributes configured for the neighbor + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerCtrl { + + type bgp_InheritContPeerCtrlType; + description "Inherit control of peer parameters"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; + pattern ".*[!-~]{1,80}.*"; + } + description "Name"; + } + leaf desc { + type string { + pattern "(.{1,80}).*|()"; } + description "Description"; } - // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Address Family Type"; + leaf adminSt { - // Type is an MO-Defined-Type - type bgp_AfT; + type nw_AdminSt; + description "Administrative State"; } - - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list OperAfCtrl-list { - config "false"; - key "type"; - - // Added containment: Prefix=ctrl - // Acquired From Package bgp - uses bgp_OperAfCtrl-group; - } + leaf asn { + type string; + description "Autonomous System Number"; } - } - - grouping bgp_OperAfCtrl-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Generate system message when any neighbor state changes + leaf logNbrChgs { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_LogNbrSt; + description "Log Neighbor Changes"; } - // Type - // Inherited From bgp:Af - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Address Family Type"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type bgp_AfT; + type nw_IfId; + description "Source Interface"; } - - // Route target policy - container rttp-items { - list OperRttP-list { - config "false"; - key "type"; - - // Added containment: Prefix=rttp - // Acquired From Package bgp - uses bgp_OperRttP-group; - } + leaf password { + type string; + description "Configure a password for neighbor"; } - } - grouping compat_SuppFw-group { - - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Password Encrypt Type + leaf passwdType { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bgp_PwdType; + description "Password EnCrypt Type"; } - // Compatible version - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "Version"; + // Peer controls + leaf ctrl { - // Type is an MO-Defined-Type - type cap_Version; + type bgp_PeerControl; + description "Control"; } - } - // Has Polymorphic containment of abstract object cap:Rule - grouping cap_Cat-group { - - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // eBGP Multihop + leaf ttl { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; - } + type bgp_TtlVal; + description "eBGP Multihop"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { - - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; - } + type bgp_KaIntvl; + description "Keepalive Interval"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Hold interval, how long you wait before you declare the + // neighbor down + leaf holdIntvl { - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; - } + type bgp_HoldIntvl; + description "Hold Interval"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { - - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Connection Mode + leaf connMode { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type bgp_ConnMode; + description "Connection Mode"; + } + leaf sessionContImp { + type string { + pattern ".*[!-~]{0,80}.*"; } + description + "Importing Session Specific properties from + Session Template"; } - // Card capability provider - container card-items { - list Card-list { - config "false"; - key "vendor model version"; + // Remove Private ASN + leaf privateASctrl { - // Added containment: Prefix=card - // Acquired From Package eqptcap - uses eqptcap_Card-group; - } + type bgp_PrivateASControl; + description "Private AS Control"; } - // Port capability provider - container port-items { - list Port-list { - config "false"; - key "vendor model version"; + // Peer Fabric type + leaf peerType { - // Added containment: Prefix=port - // Acquired From Package eqptcap - uses eqptcap_Port-group; - } + type bgp_PeerFabType; + description "Neighbor Fabric Type"; } - // Psu capability provider - container psu-items { - list Psu-list { - config "false"; - key "vendor model version"; + // Low Memory Exempt + leaf lowMemExempt { - // Added containment: Prefix=psu - // Acquired From Package eqptcap - uses eqptcap_Psu-group; - } + type bgp_AdminSt; + description "Low Memory Exempt"; } - // Fan capability provider - container fan-items { - list Fan-list { - config "false"; - key "vendor model version"; + // Capability Suppress + leaf capSuppr4ByteAsn { - // Added containment: Prefix=fan - // Acquired From Package eqptcap - uses eqptcap_Fan-group; - } + type bgp_AdminSt; + description "Capability Suppress 4-byte-as"; + } + leaf affGrp { + type uint16; + description "Affinity group for the neighbor."; } - // Sfp capability provider - container sfp-items { - list Sfp-list { - config "false"; - key "vendor model version"; + // Egress Peer Engineering (EPE) for neighbor + leaf epe { - // Added containment: Prefix=sfp - // Acquired From Package eqptcap - uses eqptcap_Sfp-group; + type bgp_AdminSt; + description "Egress Peer Engineering EPE for neighbor"; + } + leaf epePeerSet { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Egress Peer Engineering EPE Peer-Set name"; } - } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Card-group { - - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + // bmp-activate-server 1 + leaf bmpSrvId1St { - // Type is an MO-Defined-Type - type cap_Version; + type bgp_AdminSt; + description "Activate BMP Server 1"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + // bmp-activate-server 2 + leaf bmpSrvId2St { - // Type is an MO-Defined-Type - type cap_Vendor; + type bgp_AdminSt; + description "Activate BMP Server 2"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + // Dscp value, set it in tcp packets + leaf dscp { - // Type is an MO-Defined-Type - type cap_Model; + type bgp_BgpDscp; + description "Specify DSCP value for Locally Originated packets"; } - - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; - - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + leaf ttlScrtyHops { + type uint16 { + range "0..254"; } + description + "Enable TTL Security Mechanism + with hop counts specified for remote peers"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { - - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // This object holds the path attribute type + container pathattr-items { + list PathAttr-list { + key "fltrType"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + uses bgp_PathAttr-group; + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute list"; } + description "Configure peer to filter optional attributes on a BGP Update message and treat the BGP Update Message as Withdraw or Discard the attribute"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + // This objects hold graceful shutdown informations + container gs-items { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + uses bgp_Gs-group; + description "Graceful shutdown activation/deactivation information under global, peer and template mode"; + } - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; - } + // This object holds local AS information pertaining to a peer + container localasn-items { + + uses bgp_LocalAsn-group; + description "Local AS: local AS information pertaining to a peer"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_PolicyCont-group { + description "Policy Container: parameters pertaining to policy templates"; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Peer address family controls + leaf ctrl { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type bgp_PeerAfControl; + description "Control"; + } + leaf allowedSelfAsCnt { + type uint8 { + range "0..10"; } + default "0"; + description "Allowed Self AS Count"; } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + // Soft Reconfiguration + leaf softReconfigBackup { - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + type bgp_SoftReconfigBackup; + description "Soft Reconfiguration"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // Neighbor advertisement interval + leaf advIntvl { - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + type bgp_AdvInterval; + description "Neighbor advertisement interval"; } - } - - grouping eqptcap_MfgDef-group { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf defOrg { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type bgp_AdminSt; + description "Default Originate is enabled"; + } + leaf defOrgRtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Default Originate Route Map"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // Capability Additional Paths + leaf capAddlPaths { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_CapAddlPathCapT; + description "Capability Additional Paths"; + } + leaf unSupprMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route-map to selectively unsuppress suppressed routes"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // as-override + leaf asOverride { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type bgp_AdminSt; + description "Override matching AS-number while sending update"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // next-hop-third-party + leaf nhThirdparty { - // Type is an MO-Defined-Type - type naming_Descr; + type bgp_AdminSt; + default "enabled"; + description "Compute a third-party nexthop if possible"; } - leaf partNumber { - config "false"; - type string; + leaf wght { + type string { + pattern ".*\\d*.*"; + } + description "Weight for the neighbor."; + } + leaf soo { + type mtx_array_community; + description "Site-of-origin extcommunity"; } - } - - grouping eqptcap_PhysicalDef-group { - // Type is an MO-Defined-Type - leaf height { - config "false"; - description "TBD"; + // Send-community standard + leaf sendComStd { - // Type is an MO-Defined-Type - type eqptcap_Size; + type bgp_AdminSt; + description "Send-community standard"; } - // Type is an MO-Defined-Type - leaf width { - config "false"; - description "TBD"; + // Send-community extended + leaf sendComExt { - // Type is an MO-Defined-Type - type eqptcap_Size; + type bgp_AdminSt; + description "Send-community extended"; } - // Type is an MO-Defined-Type - leaf depth { - config "false"; - description "TBD"; + // template: advertise local-labeled-route + leaf advLocalLblRt { - // Type is an MO-Defined-Type - type eqptcap_Size; + type nw_AdminSt; + description "Advertise a route with local label to peer"; + } + leaf nhSelfAll { + type boolean; + description "Set address as next-hop for all routes"; } - // Type is an MO-Defined-Type - leaf weight { - config "false"; - description "TBD"; + // Bits in this property represent whether to inherit or + // not to inherit from template. + // To disable inheritance of an attribute from a template + // of a neighbor AF, set the corresponding bit of this + // property. + // For example, to disable inheritance of 'send community' + // from a template, set this property with value - + // 'send-com'. + // A note that any attributes configured for the neighbor AF + // take priority over any attributes inherited from a + // template. + leaf inheritContPeerPolicyCtrl { - // Type is an MO-Defined-Type - type eqptcap_Weight; + type bgp_InheritContPeerPolicyCtrlType; + description "Inherit control of peer policy parameters"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; + pattern ".*[!-~]{1,80}.*"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // This policy tells on what to do when the number of prefixes + // advertised by the peer crosses a maximum limit specified. + // This is used as a defensive mechanism to protect resources + // on the router + container maxpfxp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses bgp_MaxPfxP-group; + description "Maximum Prefix Policy"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // This object holds per advertise-map information + container advtmap-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses bgp_AdvtMap-group; + description "Advertise-Map: This object holds per advertise-map information."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Route control policy for routes coming/going to peers. + // There are few ways to apply this policy, controlling + // through route maps or prefix lists or filter lists. + // If both are specified, the order is implicit. Prefix + // lists are applied before route maps. + // The direction specifies whether to apply this policy + // in the incoming or outgoing direction + container rtctrl-items { + list RtCtrlP-list { + key "direction"; - // Type is an MO-Defined-Type - type naming_Descr; + uses bgp_RtCtrlP-group; + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers. list"; + } + description + "Route Control Policy: Policies to apply to + incoming/outgoing routes going to peers."; } - } - - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Port-group { + container pfxctrl-items { + list PfxCtrlP-list { + key "direction"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + uses bgp_PfxCtrlP-group; + description "Prefix-list Control Policy list"; + } + description "Prefix-list Control Policy"; + } + container fltrctrl-items { + list FltrCtrlP-list { + key "direction"; - // Type is an MO-Defined-Type - type cap_Version; + uses bgp_FltrCtrlP-group; + description "Filter-list Control Policy list"; + } + description "Filter-list Control Policy"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + // This object holds bgp peer af peer policy inherit + container pol-items { + list PolicyInheritRule-list { + key "name"; - // Type is an MO-Defined-Type - type cap_Vendor; + uses bgp_PolicyInheritRule-group; + description "Rule for policy template import list"; + } + description "Rule for policy template import"; } + } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + grouping bgp_EvtHist-group { + description "BGP customized buffer detail for event-history"; - // Type is an MO-Defined-Type - type cap_Model; - } + // Event-history buffer type + leaf type { - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + type bgp_EhType; + description "Configure event-history {cli | events | periodic | detail | errors | socket}"; + } - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // Event-history buffer size + leaf size { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; - } + type bgp_Size; + description "Configure event-history with buffer size"; } + } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + grouping bgp_OperBgp-group { + description + "Top-level container to hold BGP + runtime operational data"; - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { + // This object holds bgp operational information for L2. + container l2-items { + list OperRtctrlL2-list { config "false"; - key "subj scope type"; + key "encap"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + uses bgp_OperRtctrlL2-group; + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes. list"; } + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes."; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { + // This object holds bgp operational information for L3. + container l3-items { + list OperRtctrlL3-list { config "false"; - key "subj scope type"; + key "encap"; - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + uses bgp_OperRtctrlL3-group; + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6 list"; } + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_OperRtctrlL2-group { + description + "BGP operational data for L2 EVPN. This MO + contains route control information + for evpn prefixes."; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { - - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + leaf rd { + config "false"; + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + config "false"; + type string; + description "Encapsulation"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // Route target policy + container rttp-items { + list OperRttP-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses bgp_OperRttP-group; + description "Operational Route Target Policy for import/export list"; + } + description "Operational Route Target Policy for import/export"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Psu-group { + grouping bgp_OperRttP-group { + description "Operational Route Target Policy for import/export"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Version; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Vendor; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { + // Type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Model; + type rtctrl_RttPType; + description "Type"; } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { - - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { + // List of route targets + container entry-items { + list OperRttEntry-list { config "false"; - key "subj scope type"; + key "rtt"; - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + uses bgp_OperRttEntry-group; + description "Operational Route Target Entry list"; } + description "Operational Route Target Entry"; + } + } + + grouping bgp_OperRttEntry-group { + description "Operational Route Target Entry"; + leaf rtt { + config "false"; + type mtx_array_community; + description "Route Target"; } + } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + grouping bgp_OperRtctrlL3-group { + description + "BGP operational data for L3. This MO contains + route control information for L3 prefixes belonging + to address families IPv4 and IPv6"; - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; + } + leaf rd { + config "false"; + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + config "false"; + type string; + description "Encapsulation"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { - - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { + // This object holds per address family bgp vrf information + container af-items { + list OperDomAf-list { config "false"; - key "subj scope type"; + key "type"; - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + uses bgp_OperDomAf-group; + description "Operational Address Family Domain list"; } + description "Operational Address Family Domain"; } + } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + grouping bgp_OperDomAf-group { + description "Operational Address Family Domain"; - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + leaf name { + config "false"; - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + // Type + leaf type { + config "false"; - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + type bgp_AfT; + description "Address Family Type"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list OperAfCtrl-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses bgp_OperAfCtrl-group; + description "Operational Virtual Private Network Control Policy list"; + } + description "Operational Virtual Private Network Control Policy"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Fan-group { + grouping bgp_OperAfCtrl-group { + description "Operational Virtual Private Network Control Policy"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Version; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { + // Type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Vendor; + type bgp_AfT; + description "Address Family Type"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + // Route target policy + container rttp-items { + list OperRttP-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type cap_Model; + uses bgp_OperRttP-group; + description "Operational Route Target Policy for import/export list"; + } + description "Operational Route Target Policy for import/export"; } + } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + grouping bgp_Tbgp-group { + description "Configure SNMP BGP traps"; - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // SNMP BGP trap for All 3 (back-trans, limited, all) + // state change traps + leaf stChange { + + type bgp_TrapType; + description "SNMP BGP trap for all bgp state change traps"; + } + leaf stChangeAllFsm { + type boolean; + description "SNMP BGP trap for all fsm state change"; + } + leaf stChangeBackTrans { + type boolean; + description "SNMP BGP trap for backward transition state change trap"; + } + leaf stChangeLtd { + type boolean; + description "SNMP BGP trap for limited state change trap"; + } + leaf thresPfx { + type boolean; + description "SNMP BGP trap for prefix threshold event"; + } + + // SNMP BGP trap to enable all state change and + // prefix threshold trap + leaf trapAll { + + type bgp_TrapType; + description "All state-change and threshold prefix traps"; + } + } + + grouping bgp_Tcbgp2-group { + description "SNMP CISCO-BGP-MIBv2 traps"; + + // SNMP BGP trap for All 3 (back-trans, limited, all) + // state change traps + leaf stChange { + + type bgp_TrapType; + description "SNMP BGP trap for all bgp state change traps"; + } + leaf stChangeAllFsm { + type boolean; + description "SNMP BGP trap for all fsm state change"; + } + leaf stChangeBackTrans { + type boolean; + description "SNMP BGP trap for backward transition state change trap"; + } + leaf stChangeLtd { + type boolean; + description "SNMP BGP trap for limited state change trap"; + } + leaf thresPfx { + type boolean; + description "SNMP BGP trap for prefix threshold event"; + } + + // SNMP BGP trap to enable all state change and + // prefix threshold trap + leaf trapAll { + + type bgp_TrapType; + description "All state-change and threshold prefix traps"; + } + } + + grouping callhome_Callhome-group { + description "Callhome node, used as a placeholder for uniformity"; + + container inst-items { + + uses callhome_Inst-group; + description "Callhome instance node, represents an instance of callhome"; + } + } + + grouping callhome_Inst-group { + description "Callhome instance node, represents an instance of callhome"; + + leaf callhomeEnable { + + type callhome_Boolean; + default "disabled"; + description "Enable/Disable callhome"; + } + + leaf dupMsgThrottle { + + type callhome_Boolean; + default "enabled"; + description "Enable/Disable duplicate message throttling"; + } + + leaf contractId { + + type callhome_StringRange; + description "Service contract id of the customer"; + } + + leaf customerId { + + type callhome_StringRange; + description "Customer ID as specified in the service agreement"; + } + + leaf emailId { - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + type callhome_Email { + length "0..255"; } + description "Email address of the contact person"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + leaf phoneContact { - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Phone { + length "0..17"; + } + description "Contact person's phone number"; + } + + leaf siteId { - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + type callhome_StringRange; + description "Site id of the network where switch is deployed"; + } + + leaf streetAddress { + + type callhome_StringRange; + description "Configure replacement part shipping address"; + } + leaf switchPri { + type uint16 { + range "0..7"; } + default "7"; + description "Priority of the switch"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + leaf periodicInvNotif { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Boolean; + default "enabled"; + description "Enable/Disable periodic inventory notification"; + } + + leaf periodInvNotifInterval { + + type callhome_PeriodicSystemInventoryIntervalDays; + description "The time period for periodic inventory"; + } + + leaf periodInvNotifTimeOfDayHour { + + type callhome_PeriodicSystemInventoryTimeOfDayHour; + description "The hour part of time period"; + } + + leaf periodInvNotifTimeOfDayMinute { - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + type callhome_PeriodicSystemInventoryTimeOfDayMinute; + description "The minute part of time period"; + } + + // mo for alert group + container alertgroup-items { + list AlertGroup-list { + key "alertGroup seqNum"; + + uses callhome_AlertGroup-group; + description "Alert group node list"; } + description "Alert group node"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + // mo for Destination profile + container destprof-items { + + uses callhome_DestProf-group; + description "Destination profile node with required delivery information for an alert notification"; + } - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + // mo for Transport + container transport-items { - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + uses callhome_Transport-group; + description "Tranport node to configure transport related configuration"; + } + } + + grouping callhome_AlertGroup-group { + description "Alert group node"; + + leaf alertGroup { + + type callhome_AlertGroupName; + description "Grouped callhome alerts"; + } + leaf seqNum { + type uint32 { + range "1..5"; } + description "Sequence number assosiated with user defined command"; } + leaf userDefCmd { + type string { + length "1..600"; + } + description "User defined show commands for alert group action"; + } + } - // Manufacturing-related properties - // such as PID and SKU. - container mfg-items { + grouping callhome_DestProf-group { + description "Destination profile node with required delivery information for an alert notification"; - // Added containment as a singleton: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_MfgDef-group; + // mo for xml(CiscoTac1),full-text,short-text + container predefprofile-items { + list PredefinedProfile-list { + key "predefProfile"; + + uses callhome_PredefinedProfile-group; + description "Predefined destination profile node with required delivery information list"; + } + description "Predefined destination profile node with required delivery information"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // mo for Custom Profile + container custprof-items { + list CustomProfile-list { + key "profileName"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses callhome_CustomProfile-group; + description "User defined destination profile node list"; + } + description "User defined destination profile node"; } } - // Has Polymorphic containment of abstract object cap:Rule - grouping eqptcap_Sfp-group { + grouping callhome_PredefinedProfile-group { + description "Predefined destination profile node with required delivery information"; - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "TBD"; + leaf predefProfile { - // Type is an MO-Defined-Type - type cap_Version; + type callhome_PredefProfileName; + description "Predefined destination profile names"; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "TBD"; + leaf transportMethodEmail { - // Type is an MO-Defined-Type - type cap_Vendor; + type callhome_Boolean; + default "enabled"; + description "Trnasport method as email "; } - // Inherited From eqptcap:HwCapProvider - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "TBD"; + leaf transportMethodHttp { + + type callhome_Boolean; + default "disabled"; + description "Transport method as http"; + } + leaf messageLevel { + type uint32 { + range "0..9"; + } + default "0"; + description "Callhome message-level for the configured profile"; + } + leaf messageSize { + type uint32 { + range "0..5000000"; + } + default "2500000"; + description "Callhome message-size for the configured profile"; + } - // Type is an MO-Defined-Type - type cap_Model; + leaf format { + + type callhome_Format; + description "Callhome message format to be sent to configured profile"; } - // SFP Manufacturing-related properties - container mfg-items { - list SfpMfgDef-list { - config "false"; - key "partNumber"; + leaf alertGrpCiscoTac1 { + + type callhome_Boolean; + description "Events which are meant for Cisco TAC only"; + } + + leaf alertGrpConfiguration { + + type callhome_Boolean; + description "Events related to Configuration"; + } + + leaf alertGrpDiagnostic { + + type callhome_Boolean; + description "Events related to Diagnostic"; + } + + leaf alertGrpEEM { + + type callhome_Boolean; + description "Events related to EEM"; + } + + leaf alertGrpEnvironmental { + + type callhome_Boolean; + description "Power,Fan,Temperature related events"; + } + + leaf alertGrpInventory { + + type callhome_Boolean; + description "Inventory Status Events"; + } + + leaf alertGrpLinecard { + + type callhome_Boolean; + description "Linecard related events"; + } + + leaf alertGrpSupervisor { + + type callhome_Boolean; + description "Supervisor related events"; + } + + leaf alertGrpSyslogPort { + + type callhome_Boolean; + description "Events related to syslog messages filed by port manager"; + } + + leaf alertGrpSystem { + + type callhome_Boolean; + description "Software related events"; + } + + leaf alertGrpTest { + + type callhome_Boolean; + description "User generated test events"; + } + + leaf alertGrpLicense { - // Added containment: Prefix=mfg - // Acquired From Package eqptcap - uses eqptcap_SfpMfgDef-group; + type callhome_Boolean; + description "Events related to licensing"; + } + + leaf alertGrpAll { + + type callhome_Boolean; + description "This alert group consists of all of the callhome messages"; + } + + // mo for PredefProfile/PredefProfileName/Email + container pdprofemail-items { + list PredefProfEmail-list { + key "seqNum"; + + uses callhome_PredefProfEmail-group; + description "Email address node to send email notifications list"; } + description "Email address node to send email notifications"; } - // Polymorphic containment of derivative object actrlcap:Rule (from cap:Rule) - container actrlcaprule-items { + // mo for PredefProfile/PredefProfileName/PredefProfHttp + container pdprofhttp-items { + list PredefProfHttp-list { + key "seqNum"; - // Abstract containment of actrlcap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + uses callhome_PredefProfHttp-group; + description "HTTP node with URL configuration for profile list"; + } + description "HTTP node with URL configuration for profile"; + } + } - // Added containment: Prefix=actrlcaprule - // Acquired From Package actrlcap - uses actrlcap_Rule-group; + grouping callhome_PredefProfEmail-group { + description "Email address node to send email notifications"; + leaf seqNum { + type uint32 { + range "1..50"; } + description "Sequence number associated with email-id"; } - // Polymorphic containment of derivative object l1cap:Rule (from cap:Rule) - container l1caprule-items { + leaf emailAddr { - // Abstract containment of l1cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Email; + description "Email address for the profile"; + } + } + + grouping callhome_PredefProfHttp-group { + description "HTTP node with URL configuration for profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with HTTP URL"; + } + leaf http { + type string { + length "11..255"; + } + description "HTTP URL configuration for the profile"; + } + } - // Added containment: Prefix=l1caprule - // Acquired From Package l1cap - uses l1cap_Rule-group; + grouping callhome_CustomProfile-group { + description "User defined destination profile node"; + leaf profileName { + type string { + length "0..31"; } + description "User defined destination profile name"; } - // Polymorphic containment of derivative object l2cap:Rule (from cap:Rule) - container l2caprule-items { + leaf transportMethodEmail { - // Abstract containment of l2cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Boolean; + default "enabled"; + description "Trnasport method as email "; + } - // Added containment: Prefix=l2caprule - // Acquired From Package l2cap - uses l2cap_Rule-group; + leaf transportMethodHttp { + + type callhome_Boolean; + default "disabled"; + description "Transport method as http"; + } + leaf messageLevel { + type uint32 { + range "0..9"; + } + default "0"; + description "Callhome message-level for the configured profile"; + } + leaf messageSize { + type uint32 { + range "0..5000000"; } + default "2500000"; + description "Callhome message-size for the configured profile"; } - // Polymorphic containment of derivative object l3cap:Rule (from cap:Rule) - container l3caprule-items { + leaf format { - // Abstract containment of l3cap:Rule derived from cap:Rule - list Rule-list { - config "false"; - key "subj scope type"; + type callhome_Format; + description "Callhome message format to be sent to configured profile"; + } + + leaf alertGrpCiscoTac1 { + + type callhome_Boolean; + description "Events which are meant for Cisco TAC only"; + } + + leaf alertGrpConfiguration { + + type callhome_Boolean; + description "Events related to Configuration"; + } + + leaf alertGrpDiagnostic { + + type callhome_Boolean; + description "Events related to Diagnostic"; + } + + leaf alertGrpEEM { + + type callhome_Boolean; + description "Events related to EEM"; + } - // Added containment: Prefix=l3caprule - // Acquired From Package l3cap - uses l3cap_Rule-group; + leaf alertGrpEnvironmental { + + type callhome_Boolean; + description "Power,Fan,Temperature related events"; + } + + leaf alertGrpInventory { + + type callhome_Boolean; + description "Inventory Status Events"; + } + + leaf alertGrpLinecard { + + type callhome_Boolean; + description "Linecard related events"; + } + + leaf alertGrpSupervisor { + + type callhome_Boolean; + description "Supervisor related events"; + } + + leaf alertGrpSyslogPort { + + type callhome_Boolean; + description "Events related to syslog messages filed by port manager"; + } + + leaf alertGrpSystem { + + type callhome_Boolean; + description "Software related events"; + } + + leaf alertGrpTest { + + type callhome_Boolean; + description "User generated test events"; + } + + leaf alertGrpLicense { + + type callhome_Boolean; + description "Events related to licensing"; + } + + leaf alertGrpAll { + + type callhome_Boolean; + description "This alert group consists of all of the callhome messages"; + } + + // mo for CustomProfile/CustomEmail + container custemail-items { + list CustomEmail-list { + key "seqNum"; + + uses callhome_CustomEmail-group; + description "Email address node with delivery information for the custom profile list"; } + description "Email address node with delivery information for the custom profile"; } - // Physical properties such as maximum temperature - // and removal conditions. - container phys-items { + // mo for CustomProfile/CustomHttp + container custhttp-items { + list CustomHttp-list { + key "seqNum"; - // Added containment as a singleton: Prefix=phys - // Acquired From Package eqptcap - uses eqptcap_PhysicalDef-group; + uses callhome_CustomHttp-group; + description "HTTP node with the URL configuration for custom profile list"; + } + description "HTTP node with the URL configuration for custom profile"; } } - grouping eqptcap_SfpMfgDef-group { - leaf pnPattern { - config "false"; - type string; + grouping callhome_CustomEmail-group { + description "Email address node with delivery information for the custom profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with email-id"; } - // Internal vendor id - // Type is an MO-Defined-Type - leaf intVendorId { - config "false"; - description "Internal Vendor ID"; + leaf emailAddr { - // Type is an MO-Defined-Type - type eqptcap_IntVendorId; + type callhome_Email; + description "Email address to send email notifications"; } + } - // Magic key - // Type is an MO-Defined-Type - leaf magicKey { - config "false"; - description "Magic Key"; + grouping callhome_CustomHttp-group { + description "HTTP node with the URL configuration for custom profile"; + leaf seqNum { + type uint32 { + range "1..50"; + } + description "Sequence number associated with http url"; + } + leaf http { + type string { + length "11..255"; + } + description "HTTP URL configuration for custom profile"; + } + } - // Type is an MO-Defined-Type - type eqptcap_SfpVendorMagicKey; + grouping callhome_Transport-group { + description "Tranport node to configure transport related configuration"; + + leaf httpProxyEnable { + + type callhome_Boolean; + default "disabled"; + description "Enable HTTP proxy server to send messages"; } - // Transceiver Type - // Type is an MO-Defined-Type - leaf xcvr { - config "false"; - description "Transceiver Type"; + leaf proxyServer { - // Type is an MO-Defined-Type - type eqptcap_XcvrT; + type callhome_ServerType; + description "Proxy server name or IP address"; + } + leaf proxyServerPort { + type uint32 { + range "1..65535"; + } + default "8080"; + description "Configure proxy server port"; + } + leaf httpUseVrf { + type string { + length "1..32"; + } + default "default"; + description "Configure HTTP VRF name"; } - // Connector Type - // Type is an MO-Defined-Type - leaf connector { - config "false"; - description "Connector Type"; + leaf emailFrom { - // Type is an MO-Defined-Type - type eqptcap_ConnT; + type callhome_Email; + description "Configure from email address"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf emailReplyTo { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type callhome_Email; + description "Configure replyto email address"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + // mo for Email + container emailserver-items { + list EmailServer-list { + key "emailServer"; - // Type is an MO-Defined-Type - type naming_Descr; + uses callhome_EmailServer-group; + description "Tranport email mail server node list"; + } + description "Tranport email mail server node"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + grouping callhome_EmailServer-group { + description "Tranport email mail server node"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + leaf emailServer { + + type callhome_ServerType; + description "SMTP server name or IP address"; + } + leaf mailServerPort { + type uint32 { + range "1..65535"; + } + default "25"; + description "Configure SMTP server port"; + } + leaf mailServerPriority { + type uint32 { + range "0..100"; + } + default "50"; + description "Configure SMTP server priority"; + } + leaf mailServerUseVrf { + type string { + length "1..32"; } + default "default"; + description "Configure SMTP mail server VRF name"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping cap_LogLevel-group { + description "Config Capability logging level"; - // Type is an MO-Defined-Type - type naming_Descr; + // logging level + leaf loggingLevel { + + type cap_LoggingLevel; + description "Logging Level"; } - leaf partNumber { + + // logging type + leaf loggingType { config "false"; - type string; + + type cap_LoggingType; + description "Logging type"; } } grouping datetime_Clock-group { + description "Clock Manager"; - // Type is an MO-Defined-Type leaf protocol { - description "Protocol Type"; - // Type is an MO-Defined-Type type datetime_ClockProtocol; + description "Protocol Type"; } - // Type is an MO-Defined-Type leaf vdcId { - description "Vdc"; - // Type is an MO-Defined-Type type datetime_VdcId; + description "Vdc"; } - // Type is an MO-Defined-Type leaf format { - description "Clock Format"; - // Type is an MO-Defined-Type type datetime_ClockFormat; + description "Clock Format"; + } + leaf formatDebug { + type boolean; + description "enable/disable Clock Format for debug"; + } + leaf formatSyslog { + type boolean; + description "enable/disable Clock Format for syslog"; + } + + // for clock logging level + leaf loggingLevel { + + type datetime_LoggingLevel; + description "Clock manager logging level"; } - // Inherited From pol:Obj - // Modified by Override: datetime:APol->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:APol - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type datetime_AdminState; + default "enabled"; + description "Admin State"; } - // Inherited From datetime:APol - // Type is an MO-Defined-Type leaf authSt { - description "Authentication State"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "Authentication State"; } container set-items { - // Added containment as a singleton: Prefix=set - // Acquired From Package datetime uses datetime_ClockSet-group; + description "Clock Set"; } container timezone-items { - // Added containment as a singleton: Prefix=timezone - // Acquired From Package datetime uses datetime_Timezone-group; + description "Clock Timezone"; } container summertime-items { - // Added containment as a singleton: Prefix=summertime - // Acquired From Package datetime uses datetime_SummerT-group; + description "Clock Summer-time"; + } + + container ttag-items { + + uses datetime_TTag-group; + description "ttag configuration"; } } grouping datetime_ClockSet-group { + description "Clock Set"; leaf time { type string; + description "HH:MM:SS Current Time"; } - // Type is an MO-Defined-Type leaf date { - description "Day of the month"; - // Type is an MO-Defined-Type type datetime_Date; + description "Day of the month"; } - // Type is an MO-Defined-Type leaf month { - description "Month of the year"; - // Type is an MO-Defined-Type type datetime_Month; + description "Month of the year"; } - // Type is an MO-Defined-Type leaf year { - description "Year"; - // Type is an MO-Defined-Type type datetime_Year; + description "Year"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping datetime_Timezone-group { + description "Clock Timezone"; - // Type is an MO-Defined-Type leaf hours { - description "Hours offset from UTC"; - // Type is an MO-Defined-Type type datetime_HourOffset; + description "Hours offset from UTC"; } - // Type is an MO-Defined-Type leaf minutes { - description "Minutes offset from UTC"; - // Type is an MO-Defined-Type type datetime_MinuteOffsetTz; + description "Minutes offset from UTC"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf nameT { type string; + description "Name of timezone"; } } grouping datetime_SummerT-group { + description "Clock Summer-time"; - // Type is an MO-Defined-Type leaf startWeek { - description "Week number to start"; - // Type is an MO-Defined-Type type datetime_WeekNum; + description "Week number to start"; } leaf startDay { type string; default "Sun"; + description "Weekday to start"; } leaf startMon { type string; default "Mar"; + description "Month to start"; } leaf startTime { type string; default "02:00"; + description "HH:MM Time to start"; } - // Type is an MO-Defined-Type leaf endWeek { - description "Week number to end"; - // Type is an MO-Defined-Type type datetime_WeekNum; + description "Week number to end"; } leaf endDay { type string; default "Sun"; + description "Weekday to end"; } leaf endMon { type string; default "Nov"; + description "Month to end"; } leaf endTime { type string; default "02:00"; + description "HH:MM Time to end"; } - // Type is an MO-Defined-Type leaf offsetMin { - description "Offset to add in minutes"; - // Type is an MO-Defined-Type type datetime_MinuteOffsetSt; + description "Offset to add in minutes"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf nameT { type string; + description "Name of timezone in summer"; + } + } + + grouping datetime_TTag-group { + description "ttag configuration"; + leaf ethtype { + type uint32 { + range "0..34998"; + } + default "0"; + description "Ethernet header type"; + } + leaf ttagMarkerInterval { + type uint32 { + range "1..4"; + } + default "1"; + description "PTP ttag marker interval in seconds"; + } + container if-items { + list ClkIf-list { + key "id"; + + uses datetime_ClkIf-group; + description "Interface configuration and management list"; + } + description "Interface configuration and management"; + } + } + + grouping datetime_ClkIf-group { + description "Interface configuration and management"; + + // interface id + leaf id { + + type nw_IfId; + description "Interface id"; + } + leaf ttag { + type boolean; + default "false"; + description "Ingress packet with ttag on interface"; + } + leaf ttagMarker { + type boolean; + default "false"; + description "ttag marker packet on interface"; } } grouping datetime_ClkPol-group { + description "Date Time Policy"; - // Type is an MO-Defined-Type leaf flags { config "false"; - description "System Status Flags (time sync status)"; - // Type is an MO-Defined-Type type datetime_SysStatusFlags; + description "System Status Flags (time sync status)"; } - // Type is an MO-Defined-Type leaf leap { config "false"; - description "Leap Indicator"; - // Type is an MO-Defined-Type type datetime_NTPLeapIndicator; + description "Leap Indicator"; } - // Type is an MO-Defined-Type leaf stratum { config "false"; - description "Clock Stratum"; - // Type is an MO-Defined-Type type datetime_NTPStratum; + description "Clock Stratum"; } leaf precision { config "false"; type int32; + description "Clock Precision"; } - // Type is an MO-Defined-Type leaf rootDelay { config "false"; - description "RootDelay"; - // Type is an MO-Defined-Type type datetime_NTPSignedTimeValue; + description "RootDelay"; } - // Type is an MO-Defined-Type leaf rootDispersion { config "false"; - description "RootDispersion"; - // Type is an MO-Defined-Type type datetime_NTPUnsignedTimeValue; + description "RootDispersion"; } - // Type is an MO-Defined-Type leaf refId { config "false"; - description "RefId"; - // Type is an MO-Defined-Type type datetime_NTPRefId; + description "RefId"; } leaf refTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Reference Time"; } leaf refTimeRaw { config "false"; type uint64; + description "Raw Reference Time"; } - // Type is an MO-Defined-Type leaf poll { config "false"; - description "Polling Interval"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "Polling Interval"; } - // Type is an MO-Defined-Type leaf peer { config "false"; - description "The Current Synchronization Source/Peer"; - // Type is an MO-Defined-Type type datetime_NTPAssocIdentifier; + description "The Current Synchronization Source/Peer"; } leaf clock { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Clock"; } leaf clockRaw { config "false"; type uint64; + description "Clock Raw [Raw NTPD format]"; } - // Type is an MO-Defined-Type leaf srvStatus { config "false"; - description "NTP Daemon State"; - // Type is an MO-Defined-Type type datetime_NtpSrvStatus; + description "NTP Daemon State"; } - // Type is an MO-Defined-Type leaf logging { - description "NTP Logging Status"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "NTP Logging Status"; } - // Type is an MO-Defined-Type leaf loggingLevel { - description "NTP Logging Level"; - // Type is an MO-Defined-Type type datetime_LoggingLevel; + description "NTP Logging Level"; } - // Type is an MO-Defined-Type leaf master { - description "NTP Master Configuration"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "NTP Master Configuration"; } - // Type is an MO-Defined-Type leaf masterStratum { - description "NTP Master Stratum Level"; - // Type is an MO-Defined-Type type datetime_Stratum; + description "NTP Master Stratum Level"; + } + + leaf passive { + + type datetime_AdminState; + description "Enable/Disable Passive NTP Associations"; + } + + leaf allowPrivate { + + type datetime_AdminState; + description "Allow Private Mode NTP Packets"; + } + + leaf allowControl { + + type datetime_AdminState; + description "Allow Control Mode NTP Packets"; + } + + leaf rateLimit { + + type datetime_allowCtrlRateLimit; + description "Rate-Limit NTP Control Mode Packets"; } - // Inherited From pol:Obj - // Modified by Override: datetime:ClkPol->name - // Modified by Override: datetime:APol->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:APol - // Modified by Override: datetime:ClkPol->adminSt - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type datetime_AdminState; + default "enabled"; + description "Admin State"; } - // Inherited From datetime:APol - // Modified by Override: datetime:ClkPol->authSt - // Type is an MO-Defined-Type leaf authSt { - description "Authentication State"; - // Type is an MO-Defined-Type type datetime_AdminState; + description "Authentication State"; } // NTP Client Autentication @@@ this is not exposed in logical model, we will start @@ -39022,10 +43674,10 @@ module Cisco-NX-OS-device { list NtpAuth-list { key "id"; - // Added containment: Prefix=auth - // Acquired From Package datetime uses datetime_NtpAuth-group; + description "Authentication Key list"; } + description "Authentication Key"; } // NTP Providers @@ -39033,10 +43685,10 @@ module Cisco-NX-OS-device { list NtpProvider-list { key "name"; - // Added containment: Prefix=prov - // Acquired From Package datetime uses datetime_NtpProvider-group; + description "NTP Server Or Peer list"; } + description "NTP Server Or Peer"; } // CSCvh50485 : removing from model until implemented @@ -39056,1257 +43708,705 @@ module Cisco-NX-OS-device { // NTP Access Group container accessgroup-items { - // Added containment as a singleton: Prefix=accessgroup - // Acquired From Package datetime uses datetime_AccessGroup-group; + description "NTP Access Group"; } // This is used to store IP address of source of NTP packets container srcIp-items { - // Added containment as a singleton: Prefix=srcIp - // Acquired From Package datetime uses datetime_NtpSrcIp-group; + description "NTP source IP address"; } // This is used to store interface sending NTP packets container srcIf-items { - // Added containment as a singleton: Prefix=srcIf - // Acquired From Package datetime uses datetime_NtpSrcIf-group; + description "NTP source interface"; } } grouping datetime_NtpAuth-group { + description "Authentication Key"; // encrypted key - // Type is an MO-Defined-Type leaf encryptedKey { - description "Encrypted Key"; - // Type is an MO-Defined-Type type datetime_Key; + description "Encrypted Key"; } - // Type is an MO-Defined-Type leaf isEncrypt { - description "Is Encrypted Flag"; - // Type is an MO-Defined-Type type datetime_Encrypt; + description "Is Encrypted Flag"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From datetime:ANtpAuthKey - // Modified by Override: datetime:NtpAuth->key - // Type is an MO-Defined-Type leaf key { - description "Key"; - // Type is an MO-Defined-Type type datetime_Key; + description "Key"; } - // Inherited From datetime:ANtpAuthKey - // Modified by Override: datetime:NtpAuth->id - // Type is an MO-Defined-Type leaf id { - description "Auth Key Id"; - // Type is an MO-Defined-Type type datetime_AuthKeyId; + description "Auth Key Id"; } leaf trusted { type boolean; + description "Trusted State"; } } grouping datetime_NtpProvider-group { + description "NTP Server Or Peer"; // This property tells if the configured provider is NTP server Or peer - // Type is an MO-Defined-Type leaf provT { - description "NTP Server Or Peer"; - // Type is an MO-Defined-Type type datetime_ProvT; + description "NTP Server Or Peer"; } // vrf name - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } - // Inherited From pol:Obj - // Modified by Override: datetime:NtpProvider->name - // Modified by Override: datetime:ANtpProv->name - // Type is an MO-Defined-Type leaf name { - description "NTP Server/Peer Name Or Address"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { // Restriction copied from aaa:NtpHostname type NXOS has max limit of 80 chars, limiting to 64 here length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.:-]{0,63}.*"; } + description "NTP Server/Peer Name Or Address"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf preferred { type boolean; + description "Preferred State"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->minPoll - // Type is an MO-Defined-Type leaf minPoll { - description "Min Poll"; - // Type is an MO-Defined-Type type datetime_Poll; + description "Min Poll"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->maxPoll - // Type is an MO-Defined-Type leaf maxPoll { - description "Max Poll"; - // Type is an MO-Defined-Type type datetime_Poll; + description "Max Poll"; } - // Inherited From datetime:ANtpProv - // Modified by Override: datetime:NtpProvider->keyId - // Type is an MO-Defined-Type leaf keyId { - description "Key Id"; - // Type is an MO-Defined-Type type datetime_KeyId; + description "Key Id"; } // Status for NTP Providers container status-items { - // Added containment as a singleton: Prefix=status - // Acquired From Package datetime uses datetime_NtpProviderStatus-group; + description "NTP Provider Status"; } - // Rel-def from NtpProviderToNtpAuth container rsntpProviderToNtpAuth-items { - // Abstract containment of rsntpProviderToNtpAuth derived from datetime:NtpProvider list RsNtpProviderToNtpAuth-list { config "false"; key "tDn"; - // Added containment: Prefix=rsntpProviderToNtpAuth - // Acquired From Package datetime uses datetime_RsNtpProviderToNtpAuth_source-group; + description "Ntp Authentication Attachment list"; } + description "Ntp Authentication Attachment"; } } grouping datetime_NtpProviderStatus-group { + description "NTP Provider Status"; - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Peer Specific Flags"; - // Type is an MO-Defined-Type type datetime_PeerStatusFlags; + description "Peer Specific Flags"; } - // Type is an MO-Defined-Type leaf mode { config "false"; - description "The Association Mode Of NTP Server"; - // Type is an MO-Defined-Type type datetime_NTPPeerMode; + description "The Association Mode Of NTP Server"; } - // Type is an MO-Defined-Type leaf stratum { config "false"; - description "Stratum"; - // Type is an MO-Defined-Type type datetime_NTPStratum; + description "Stratum"; } - // Type is an MO-Defined-Type leaf peerPoll { config "false"; - description "PeerPoll"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "PeerPoll"; } - // Type is an MO-Defined-Type leaf hostPoll { config "false"; - description "HostPoll"; - // Type is an MO-Defined-Type type datetime_NTPPollInterval; + description "HostPoll"; } leaf reach { config "false"; type uint8; + description "Reach"; } leaf delay { config "false"; type string; + description "Delay"; } leaf delayRaw { config "false"; type int32; + description "DelayRaw"; } - // Type is an MO-Defined-Type leaf dispersion { config "false"; - description "Dispersion"; - // Type is an MO-Defined-Type type datetime_NTPUnsignedTimeValue; + description "Dispersion"; } } grouping datetime_AccessGroup-group { + description "NTP Access Group"; leaf peer { type string; + description "NTP Peer Access Group Name (max 63 characters)"; } leaf serveOnly { type string; + description "NTP ServeOnly Access Group Name (max 63 characters)"; } leaf serve { type string; + description "NTP Serve Access Group Name (max 63 characters)"; } leaf queryOnly { type string; + description "NTP QueryOnly Access Group Name (max 63 characters)"; + } + + leaf matchAll { + + type datetime_AdminState; + description "Scan All NTP Access-Group Options"; } } grouping datetime_NtpSrcIp-group { + description "NTP source IP address"; leaf srcIp { type address_Ipv4; + description "Source IP Address"; } leaf srcIpv6 { type address_Ipv6; + description "Source IPv6 Address"; } } grouping datetime_NtpSrcIf-group { + description "NTP source interface"; // Source interface - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping datetime_Ntpq-group { + description "Ntp Concrete Details"; leaf tally { config "false"; type string; + description "Tally"; } leaf remote { config "false"; type string; + description "Remote"; } leaf refid { config "false"; type string; + description "RefId"; } leaf stratum { config "false"; type string; + description "Stratum"; } leaf t { config "false"; type string; + description "Type"; } leaf when { config "false"; type string; + description "When"; } leaf poll { config "false"; type string; + description "Poll Interval"; } leaf reach { config "false"; type string; + description "Reach"; } leaf delay { config "false"; type string; + description "Delay"; } leaf offset { config "false"; type string; + description "Offset"; } leaf jitter { config "false"; type string; + description "Jitter"; } } - grouping span_Acct-group { - leaf sessionNum { - config "false"; - type uint32; - } - leaf sessionId { - config "false"; - type uint32; - } - leaf sourceId { - config "false"; - type uint32; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping span_Entity-group { + description "SPAN Entity"; // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; - } - } - - grouping span_RetryCont-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; } - container src-items { - list RetrySrc-list { - config "false"; - key "srcDn"; + container monitor-items { + list Monitor-list { + key "id"; - // Added containment: Prefix=src - // Acquired From Package span - uses span_RetrySrc-group; + uses span_Monitor-group; + description "Monitor MO for each SPAN session identified by session id list"; } + description "Monitor MO for each SPAN session identified by session id"; } } - grouping span_RetrySrc-group { - - // srcDn - // Type is an MO-Defined-Type - leaf srcDn { - config "false"; - description "RetrySrc Dn"; - - // Type is an MO-Defined-Type - type fabric_PrimKey; - } + grouping span_Monitor-group { + description "Monitor MO for each SPAN session identified by session id"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // scalar:Enum8 Value Types + leaf type { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_Type; + description "Type of the current monitor session"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf operState { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type span_OperStQual; + description "Actual State of the current session updated by SPAN process"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - container tgt-items { - list RetryTarget-list { - config "false"; - key "targetDn"; + leaf configState { - // Added containment: Prefix=tgt - // Acquired From Package span - uses span_RetryTarget-group; - } + type span_State; + description "State of the current session as configured by the user"; } - } - grouping span_RetryTarget-group { - - // targetDn - // Type is an MO-Defined-Type - leaf targetDn { - config "false"; - description "RetryTarget Dn"; + // string:Basic Value Types + leaf description { - // Type is an MO-Defined-Type - type fabric_PrimKey; + type span_Description; + description "Description for the current monitor session"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf vrfName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "VRF name for the erspan-source session.(user specified name / default / manangement)"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf aclName { - // Type is an MO-Defined-Type - type nw_AdminSt; + type span_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Uint Value Types + leaf id { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type span_SsnId; + description "Session identification number for current monitor session."; } - } - grouping span_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf mtu { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_MtuValue; + description "Value of Maximum transmission unit truncation size for SPAN packets"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf allowSharing { + type boolean; + default "false"; + description "Denotes whether sharing is enabled for the given filter ACL"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf headerType { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type span_HeaderVer; + description "Denotes header type ver is enabled for the given erspan session"; } - - // Abstraction of span database - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package span - uses span_Db-group; - } + leaf isMarkerPacket { + type boolean; + default "false"; + description "Denotes whether marker packet is enabled for the given erspan-source session"; } - - // Span session definition. Each session represents a - // a set of sources on which the packets are monitored. - // These packets are sent to a given destination that - // is part of this session @@@ There could be only 4 sessions active at a - // @@@ given time - container session-items { - list Session-list { - config "false"; - key "name"; - - // Added containment: Prefix=session - // Acquired From Package span - uses span_Session-group; - } + leaf isFwdDropsRx { + type boolean; + default "false"; + description "Denotes whether source forwarding drops rx is enabled for the given erspan-source session"; } - } - - grouping span_Db-group { - - // Type of the database - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_DbT; + leaf isFwdDropsRxLowPriority { + type boolean; + default "false"; + description "Denotes whether source forwarding drops rx has low priority for the given erspan-source session"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf erspanId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_ErspanId; + description "ERSPAN identification number"; } - // SPAN Endpoint resolution records - container epr-items { - list EpRec-list { - config "false"; - key "vnid ip"; - - // Added containment: Prefix=epr - // Acquired From Package span - uses span_EpRec-group; - } - } - } + leaf ipTtl { - grouping span_EpRec-group { - leaf vnid { - config "false"; - type string; - } - leaf ip { - config "false"; - type address_Ip; + type span_IpTtl; + description "ERSPAN IP time-to-live value"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf ipDscp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type span_IpDscp; + description "ERSPAN IP DSCP value"; } - } - - grouping span_Session-group { - // Identifier of the session - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf markerPktInt { - // Type is an MO-Defined-Type - type span_SessionId; + type span_MarkerPktInt; + description "ERSPAN session send marker packet interval value"; } - // Administrative state of the session - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Interface types + leaf destinationPorts { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Destination ports for the current session"; } - leaf ASrcGrpDn { - config "false"; - type string; + leaf destinationIp { + type address_Ip; + description "Destination IP address for the current erspan session"; } - - // Inherited From pol:Obj - // Modified by Override: span:Session->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf sourceIp { + type address_Ip; + description "Source IP address for the current erspan destination session"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + leaf shutError { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type span_ErrorInt; + description "failure code for raising a config fault during shut operation"; } + container srcintf-items { + list SourceIntf-list { + key "id"; - // Access source - container src-items { - list Source-list { - config "false"; - key "name"; - - // Added containment: Prefix=src - // Acquired From Package span - uses span_Source-group; + uses span_SourceIntf-group; + description "Source interface configuration MO. list"; } + description "Source interface configuration MO."; } + container filter-items { + list FilterVlan-list { + key "vlan"; - // Fabric source - container fabsrc-items { - list FabSource-list { - config "false"; - key "name"; - - // Added containment: Prefix=fabsrc - // Acquired From Package span - uses span_FabSource-group; + uses span_FilterVlan-group; + description "Range of Filter VLANs specified for the current monitor sesion list"; } + description "Range of Filter VLANs specified for the current monitor sesion"; } + container src-items { + list SourceVlan-list { + key "vlan"; - // ERSpan destination information. The destination - // is reachable via a GRE tunnel - container erdst-items { - - // Added containment as a singleton: Prefix=erdst - // Acquired From Package span - uses span_ERDestination-group; - } - - // Local span destination information. The destination - // is locally attached to a port in the device - container ldst-items { - - // Added containment as a singleton: Prefix=ldst - // Acquired From Package span - uses span_LDestination-group; - } - - // Implicit DomainRef objects cannot be user created - they are implicitly created - // and added to domainable objects created by the backend - container idomain-items { - list IDomainRef-list { - config "false"; - key "name"; - - // Added containment: Prefix=idomain - // Acquired From Package aaa - uses aaa_IDomainRef-group; + uses span_SourceVlan-group; + description "Source configuration MO. list"; } + description "Source configuration MO."; } + container srcvsan-items { + list SourceVsan-list { + key "vsan"; - // Rel-def from SessionToDomainRef - container rssessionToDomainRef-items { - - // Added containment as a singleton: Prefix=rssessionToDomainRef - // Acquired From Package span - uses span_RsSessionToDomainRef_source-group; + uses span_SourceVsan-group; + description "Source vsan configuration MO. list"; + } + description "Source vsan configuration MO."; } } - grouping span_Source-group { - - // Inherited From pol:Obj - // Modified by Override: span:Source->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } + grouping span_SourceIntf-group { + description "Source interface configuration MO."; - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf direction { - // Type is an MO-Defined-Type - type naming_Descr; + type span_SrcDirection; + description "The direction of the source interface - Rx, Tx, Both"; } - // Type of the source - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf id { - // Type is an MO-Defined-Type - type span_SrcT; + type nw_IfId; + description "The interface id for the session"; } - // The direction of the packets to be monitored - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf dir { + leaf error { config "false"; - description "Direction"; - // Type is an MO-Defined-Type - type span_Direction; + type span_ErrorInt; + description "failure code for raising a config fault during applying source interface"; } + } - // Mode of the source (access side or fabric side) - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; - - // Type is an MO-Defined-Type - type span_Mode; - } - leaf domain { - config "false"; + grouping span_FilterVlan-group { + description "Range of Filter VLANs specified for the current monitor sesion"; + leaf vlan { type string; - } - - // Rel-def from spanSrcToL2CktEpAtt - container rsspanSrcToL2CktEpAtt-items { - - // Added containment as a singleton: Prefix=rsspanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RsSpanSrcToL2CktEpAtt_source-group; + description "VLAN id for Filter VLAN"; } } - grouping span_FabSource-group { - leaf ctxEncap { - config "false"; - type string; - } - leaf bdEncap { - config "false"; + grouping span_SourceVlan-group { + description "Source configuration MO."; + leaf vlan { type string; + description "VLAN id for Source VLAN"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Type of the source - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_SrcT; - } - - // The direction of the packets to be monitored - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Direction"; - - // Type is an MO-Defined-Type - type span_Direction; - } - - // Mode of the source (access side or fabric side) - // Inherited From span:ASource - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + leaf direction { - // Type is an MO-Defined-Type - type span_Mode; - } - leaf domain { - config "false"; - type string; + type span_SrcDirection; + description "The direction of the source VLAN - Rx, Tx, Both"; } } - grouping span_ERDestination-group { - - // Encapsulation type, the encapsulation of the monitored - // packet sent to the destination - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type span_DestEncapT; - } - leaf srcIp { - config "false"; - type address_Ip; - } - leaf dstIp { - config "false"; - type address_Ip; - } - - // Erspan version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type span_ErSpanVer; - } - - // Flow id of the erspan packet - // Type is an MO-Defined-Type - leaf flowId { - config "false"; - description "Flow ID"; - - // Type is an MO-Defined-Type - type span_FlowId; - } - - // Ttl used in the erspan packet - // Type is an MO-Defined-Type - leaf ttl { - config "false"; - description "TTL"; - - // Type is an MO-Defined-Type - type l3_Ttl; - } - - // the vrf on which the erspan packet is sent - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf vnid { - config "false"; + grouping span_SourceVsan-group { + description "Source vsan configuration MO."; + leaf vsan { type string; + description "VSAN id for Source VSAN"; } - // dscp value to be used when sending the monitored - // packets using ERSpan - // Type is an MO-Defined-Type - leaf dscp { - config "false"; - description "Dscp"; - - // Type is an MO-Defined-Type - type qosp_Dscp; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // mtu truncation size for the packets - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; - - // Type is an MO-Defined-Type - type span_Mtu; - } - - // Operational state of the session - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf direction { - // Type is an MO-Defined-Type - type span_OperSt; + type span_SrcDirection; + description "The direction of the source VSAN - Rx, Tx, Both"; } } - grouping span_LDestination-group { - - // Port - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // mtu truncation size for the packets - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; - - // Type is an MO-Defined-Type - type span_Mtu; + grouping span_ErspanOriginIp-group { + description "Global MO of origin Ip address for every Erspan session"; + leaf originIp { + type address_Ip; + description "Global origin IP address for all erspan sessions"; } - - // Operational state of the session - // Inherited From span:Destination - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type span_OperSt; + leaf isGlobal { + type boolean; + default "false"; + description "Denotes whether origin ip is global across all erspan sessions"; } } grouping dhcp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + description "DHCP Entity"; // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per dhcp instance information. There is only // one instance of dhcp relay running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package dhcp uses dhcp_Inst-group; + description "DHCP Instance"; } } grouping dhcp_Inst-group { + description "DHCP Instance"; leaf v4RelayEnabled { type boolean; + description "DHCPv4 Enabled"; } leaf v6RelayEnabled { type boolean; + description "DHCPv6 Enabled"; } leaf SnoopingEnabled { type boolean; + description "Snooping Enabled"; } leaf SnoopingVerifyMacAddressEnabled { type boolean; + default "true"; + description "Snooping Verify Mac Address Enabled"; } leaf SnoopingInformationOptionEnabled { type boolean; + description "Snooping Information Option Enabled"; } leaf RelayInformationOptionEnabled { type boolean; + description "Relay Information Option Enabled"; } leaf RelayInformationOptionVpnEnabled { type boolean; + description "Relay Information Option Vpn Enabled"; + } + leaf relayInformationOptionServerIdOverrideDisableEnabled { + type uint32 { + range "0..1"; + } + default "0"; + description "Relay Information Option Server-id-override-disable Enabled"; } leaf RelayInformationOptionTrustEnabled { type boolean; + description "Relay Information Option Trust Enabled"; } leaf RelayInformationTrustAllEnabled { type boolean; + description "Relay Information Trust All Enabled"; } leaf RelaySubOptionCircuitIdCustomizedEnabled { type boolean; + description "Relay Sub-Option Circuit-id Customized Enabled"; } leaf RelaySubOptionCircuitIdFormatString { type string; + description "Relay Sub-Option Circuit-id Format String"; } leaf RelaySubOptionTypeCiscoEnabled { type boolean; + description "Relay Sub-Option Type Cisco Enabled"; } leaf SmartRelayGlobalEnabled { type boolean; + description "Smart Relay Global Enabled"; } leaf Ipv6RelayInformationOptionVpnEnabled { type boolean; + description "IPv6 Relay Information Option Vpn Enabled"; } leaf Ipv6RelayOptionTypeCiscoEnabled { type boolean; + description "IPv6 Relay Sub-Option Type Cisco Enabled"; + } + leaf ipv6RelayOption79Enabled { + type boolean; + description "IPv6 Relay Option79 Enabled"; } leaf daiValidateSrc { type boolean; + description "DAI Validate Type: src-mac"; } leaf daiValidateDst { type boolean; + description "DAI Validate Type: dst-mac"; } leaf daiValidateIp { type boolean; + description "DAI Validate Type: ip"; } // Set DAI Log Buffer Entries - // Type is an MO-Defined-Type leaf daiLogBufEntries { - description "DAI Log Buffer Entries"; - // Type is an MO-Defined-Type type dhcp_NumLogBuffers; + description "DAI Log Buffer Entries"; } leaf pktStrictVal { type boolean; + description "Pkt Strict Validation"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Snoop sub-option circuit-id format string + leaf snoopSubOptionCircuitIdFormatString { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type dhcp_StringBasicDhcp; + description "Snoop Sub-Option Circuit-id Format String"; } // IP ARP inspection on vlan, used for enabling ARP inspection on Vlan @@ -40314,23 +44414,35 @@ module Cisco-NX-OS-device { list DAIVlan-list { key "daiVlanNum"; - // Added containment: Prefix=daivlan - // Acquired From Package dhcp uses dhcp_DAIVlan-group; + description "DAI on Vlan list"; + } + description "DAI on Vlan"; + } + + // DHCP DAI interface, + // used for representing DAI functionality on + // the interface + container daiif-items { + list DAIIf-list { + key "id"; + + uses dhcp_DAIIf-group; + description "DHCP DAI Interface list"; } + description "DHCP DAI Interface"; } // DHCP client-if, used for representing client functionality on // the interface container clientif-items { list ClientIf-list { - config "false"; key "id"; - // Added containment: Prefix=clientif - // Acquired From Package dhcp uses dhcp_ClientIf-group; + description "DHCP Client Interface list"; } + description "DHCP Client Interface"; } // DHCP relay-if, used for representing relay functionality on @@ -40339,10 +44451,10 @@ module Cisco-NX-OS-device { list RelayIf-list { key "id"; - // Added containment: Prefix=relayif - // Acquired From Package dhcp uses dhcp_RelayIf-group; + description "DHCP Relay Interface list"; } + description "DHCP Relay Interface"; } // DHCP server if, not supported; defined for completeness @@ -40351,26 +44463,24 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=serverif - // Acquired From Package dhcp uses dhcp_ServerIf-group; + description "DHCP Server Interface list"; } + description "DHCP Server Interface"; } // Global Ipv4 Source Interface Config container srcif-items { - // Added containment as a singleton: Prefix=srcif - // Acquired From Package dhcp uses dhcp_SourceIf-group; + description "IPv4 Global DHCP Source Interface"; } // Global Ipv6 Source Interface Config container v6srcif-items { - // Added containment as a singleton: Prefix=v6srcif - // Acquired From Package dhcp uses dhcp_V6SourceIf-group; + description "IPv6 Global DHCP Source Interface"; } // DHCP IP source binding, @@ -40379,23 +44489,22 @@ module Cisco-NX-OS-device { list IpSrcBind-list { key "bindIp bindVlan bindMac bindIntf"; - // Added containment: Prefix=ipsrcbindip - // Acquired From Package dhcp uses dhcp_IpSrcBind-group; + description "DHCP IP Source Binding static entry list"; } + description "DHCP IP Source Binding static entry"; } // DHCP ipsgif, used for representing ipsg functionality on // the interface (ip verify source dhcp-snooping-vlan) container ipsgif-items { list IpsgIf-list { - config "false"; key "id"; - // Added containment: Prefix=ipsgif - // Acquired From Package dhcp uses dhcp_IpsgIf-group; + description "DHCP Ipsg Interface list"; } + description "DHCP Ipsg Interface"; } // DHCP IPSG Exclude Vlan, used forexcluding vlan from IPSG @@ -40403,10 +44512,10 @@ module Cisco-NX-OS-device { list IpsgExVlan-list { key "ipsgExVlanNum"; - // Added containment: Prefix=ipsgexvlan - // Acquired From Package dhcp uses dhcp_IpsgExVlan-group; + description "DHCP IPSG exclude on Vlan list"; } + description "DHCP IPSG exclude on Vlan"; } // DHCP snoop-vlan, used for representing snooping functionality on @@ -40415,128 +44524,73 @@ module Cisco-NX-OS-device { list SnoopVlan-list { key "snoopVlanNum"; - // Added containment: Prefix=snoopvlan - // Acquired From Package dhcp uses dhcp_SnoopVlan-group; + description "DHCP Snoop on Vlan list"; } + description "DHCP Snoop on Vlan"; } // DHCP snoop-if, used for representing snoop functionality on // the interface container snoopif-items { list SnoopIf-list { - config "false"; key "id"; - // Added containment: Prefix=snoopif - // Acquired From Package dhcp uses dhcp_SnoopIf-group; + description "DHCP Snoop Interface list"; } + description "DHCP Snoop Interface"; } } grouping dhcp_DAIVlan-group { + description "DAI on Vlan"; leaf daiVlanNum { type uint16; + description "DAI Vlan Number"; } // Log All/Permit/None DAI on Vlan matching DHCP Bindings - // Type is an MO-Defined-Type leaf daiLogTypeOnVlan { - description "Log All/Permit/None DAI on Vlan matching DHCP Bindings"; - // Type is an MO-Defined-Type type dhcp_DAILogType; + description "Log All/Permit/None DAI on Vlan matching DHCP Bindings"; } } - grouping dhcp_ClientIf-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type dhcp_ClIfOperSt; + grouping dhcp_DAIIf-group { + description "DHCP DAI Interface"; + leaf daiEnabled { + type boolean; + description "DAI Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; - } - - // DHCP address received (for client) - container addr-items { - list ClientAddr-list { - config "false"; - key "address"; - - // Added containment: Prefix=addr - // Acquired From Package dhcp - uses dhcp_ClientAddr-group; - } - } - - // DHCPv6 address received (for client) - container addrv6-items { - list Clientv6Addr-list { - config "false"; - key "address"; - - // Added containment: Prefix=addrv6 - // Acquired From Package dhcp - uses dhcp_Clientv6Addr-group; - } - } - - // DHCP client response - container resp-items { - - // Added containment as a singleton: Prefix=resp - // Acquired From Package dhcp - uses dhcp_ClientResp-group; + description "Admin State"; } // Represents a Complex TLV, @@ -40546,10 +44600,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -40558,10 +44612,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -40570,10 +44624,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40582,10 +44636,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40594,10 +44648,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40606,10 +44660,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40618,10 +44672,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40630,67 +44684,33 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def from pseudoIf - container rspseudoIf-items { - - // Abstract containment of rspseudoIf derived from dhcp:ClientIf - list RsPseudoIf-list { - key "tDn"; - - // Added containment: Prefix=rspseudoIf - // Acquired From Package dhcp - uses dhcp_RsPseudoIf_source-group; - } - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } - grouping dhcp_ClientAddr-group { - leaf address { + grouping dhcptlvpol_Complex-group { + description "Complex"; + + // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. + leaf code { config "false"; - type address_Ip; - } - } - grouping dhcp_Clientv6Addr-group { - leaf address { + type tlv_Code; + description "TBD"; + } + leaf id { config "false"; - type address_Ip; + type uint32; } - } - - grouping dhcp_ClientResp-group { // Represents an IP TLV container ip-items { @@ -40698,10 +44718,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlv - uses dhcptlv_Ip-group; + uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40710,10 +44730,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlv - uses dhcptlv_Mac-group; + uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40722,10 +44742,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlv - uses dhcptlv_UInt64-group; + uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40734,10 +44754,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlv - uses dhcptlv_UInt32-group; + uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40746,10 +44766,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlv - uses dhcptlv_UInt16-group; + uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40758,10 +44778,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlv - uses dhcptlv_UByte-group; + uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } // Represents a text TLV @@ -40770,37 +44790,22 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlv - uses dhcptlv_Text-group; - } - } - - // Represents a Complex TLV. - // Complex TLV contains Basic TLVs - container complex-items { - list Complex-list { - config "false"; - key "code id"; - - // Added containment: Prefix=complex - // Acquired From Package dhcptlv - uses dhcptlv_Complex-group; + uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } } - grouping dhcptlv_Ip-group { + grouping dhcptlvpol_Ip-group { + description "IP"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40808,17 +44813,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Mac-group { + grouping dhcptlvpol_Mac-group { + description "MAC"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40826,17 +44829,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt64-group { + grouping dhcptlvpol_UInt64-group { + description "64 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40844,17 +44845,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt32-group { + grouping dhcptlvpol_UInt32-group { + description "32 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40862,17 +44861,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UInt16-group { + grouping dhcptlvpol_UInt16-group { + description "16 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40880,17 +44877,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_UByte-group { + grouping dhcptlvpol_UByte-group { + description "Unsigned Byte"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40898,17 +44893,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Text-group { + grouping dhcptlvpol_Text-group { + description "Text"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -40916,21 +44909,96 @@ module Cisco-NX-OS-device { } } - grouping dhcptlv_Complex-group { + grouping dhcp_ClientIf-group { + description "DHCP Client Interface"; - // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type - leaf code { + // Circuit id info to per port + leaf circuitId { + + type dhcp_StringBasicDhcp; + description "Option82 suboption Circuit Id Information to Per Port"; + } + leaf raGuard { + type boolean; + description "Configure IPv6 ND RA Guard"; + } + + // Operational state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type tlv_Code; + type dhcp_ClIfOperSt; + description "Operational State"; } + + // Interface ID of this endpoint leaf id { - config "false"; - type uint32; + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type nw_IfAdminSt; + description "Admin State"; + } + + // DHCP address received (for client) + container addr-items { + list ClientAddr-list { + config "false"; + key "address"; + + uses dhcp_ClientAddr-group; + description "Client Address list"; + } + description "Client Address"; + } + + // DHCPv6 address received (for client) + container addrv6-items { + list Clientv6Addr-list { + config "false"; + key "address"; + + uses dhcp_Clientv6Addr-group; + description "Client v6 Address list"; + } + description "Client v6 Address"; + } + + // DHCP client response + container resp-items { + + uses dhcp_ClientResp-group; + description "Client Response"; + } + + // Represents a Complex TLV, + // complex TLV contains Basic TLVs + container complex-items { + list Complex-list { + config "false"; + key "code id"; + + uses dhcptlvpol_Complex-group; + description "Complex list"; + } + description "Complex"; + } + + // Represents a text TLV + container text-items { + list Text-list { + config "false"; + key "code"; + + uses dhcptlvpol_Text-group; + description "Text list"; + } + description "Text"; } // Represents an IP TLV @@ -40939,10 +45007,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlv - uses dhcptlv_Ip-group; + uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -40951,10 +45019,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlv - uses dhcptlv_Mac-group; + uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -40963,10 +45031,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlv - uses dhcptlv_UInt64-group; + uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -40975,10 +45043,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlv - uses dhcptlv_UInt32-group; + uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -40987,10 +45055,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlv - uses dhcptlv_UInt16-group; + uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -40999,41 +45067,50 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlv - uses dhcptlv_UByte-group; + uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Represents a text TLV - container text-items { - list Text-list { - config "false"; - key "code"; + container rspseudoIf-items { - // Added containment: Prefix=text - // Acquired From Package dhcptlv - uses dhcptlv_Text-group; + list RsPseudoIf-list { + key "tDn"; + + uses dhcp_RsPseudoIf_source-group; + description "Pseudo Interface list"; } + description "Pseudo Interface"; } - } - grouping dhcptlvpol_Complex-group { + container rtvrfMbr-items { - // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type - leaf code { - config "false"; - description "TBD"; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } - // Type is an MO-Defined-Type - type tlv_Code; + grouping dhcp_ClientAddr-group { + description "Client Address"; + leaf address { + config "false"; + type address_Ip; + description "Address"; } - leaf id { + } + + grouping dhcp_Clientv6Addr-group { + description "Client v6 Address"; + leaf address { config "false"; - type uint32; + type address_Ip; + description "v6 Address"; } + } + + grouping dhcp_ClientResp-group { + description "Client Response"; // Represents an IP TLV container ip-items { @@ -41041,10 +45118,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Ip-group; + uses dhcptlv_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41053,10 +45130,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Mac-group; + uses dhcptlv_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41065,10 +45142,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt64-group; + uses dhcptlv_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41077,10 +45154,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt32-group; + uses dhcptlv_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41089,10 +45166,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UInt16-group; + uses dhcptlv_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41101,10 +45178,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol - uses dhcptlvpol_UByte-group; + uses dhcptlv_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } // Represents a text TLV @@ -41113,24 +45190,35 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol - uses dhcptlvpol_Text-group; + uses dhcptlv_Text-group; + description "Text list"; } + description "Text"; + } + + // Represents a Complex TLV. + // Complex TLV contains Basic TLVs + container complex-items { + list Complex-list { + config "false"; + key "code id"; + + uses dhcptlv_Complex-group; + description "Complex list"; + } + description "Complex"; } } - grouping dhcptlvpol_Ip-group { + grouping dhcptlv_Ip-group { + description "IP"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41138,17 +45226,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_Mac-group { + grouping dhcptlv_Mac-group { + description "MAC"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41156,17 +45242,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt64-group { + grouping dhcptlv_UInt64-group { + description "64 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41174,17 +45258,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt32-group { + grouping dhcptlv_UInt32-group { + description "32 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41192,17 +45274,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UInt16-group { + grouping dhcptlv_UInt16-group { + description "16 Bit Unsigned Integer"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41210,17 +45290,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_UByte-group { + grouping dhcptlv_UByte-group { + description "Unsigned Byte"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41228,17 +45306,15 @@ module Cisco-NX-OS-device { } } - grouping dhcptlvpol_Text-group { + grouping dhcptlv_Text-group { + description "Text"; // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. - // Inherited From tlv:TLV - // Type is an MO-Defined-Type leaf code { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type tlv_Code; + description "TBD"; } leaf value { config "false"; @@ -41246,65 +45322,144 @@ module Cisco-NX-OS-device { } } + grouping dhcptlv_Complex-group { + description "Complex"; + + // TLV Code. Code is a Uint16. Its set by the application & is not captured in the model. + leaf code { + config "false"; + + type tlv_Code; + description "TBD"; + } + leaf id { + config "false"; + type uint32; + } + + // Represents an IP TLV + container ip-items { + list Ip-list { + config "false"; + key "code value"; + + uses dhcptlv_Ip-group; + description "IP list"; + } + description "IP"; + } + + // Represents a Mac TLV + container mac-items { + list Mac-list { + config "false"; + key "code value"; + + uses dhcptlv_Mac-group; + description "MAC list"; + } + description "MAC"; + } + + // Represents a UInt64 TLV + container uint64-items { + list UInt64-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt64-group; + description "64 Bit Unsigned Integer list"; + } + description "64 Bit Unsigned Integer"; + } + + // Represents a UInt32 TLV + container uint32-items { + list UInt32-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt32-group; + description "32 Bit Unsigned Integer list"; + } + description "32 Bit Unsigned Integer"; + } + + // Represents a UInt16 TLV + container uint16-items { + list UInt16-list { + config "false"; + key "code value"; + + uses dhcptlv_UInt16-group; + description "16 Bit Unsigned Integer list"; + } + description "16 Bit Unsigned Integer"; + } + + // Represents a UByte TLV + container ubyte-items { + list UByte-list { + config "false"; + key "code value"; + + uses dhcptlv_UByte-group; + description "Unsigned Byte list"; + } + description "Unsigned Byte"; + } + + // Represents a text TLV + container text-items { + list Text-list { + config "false"; + key "code"; + + uses dhcptlv_Text-group; + description "Text list"; + } + description "Text"; + } + } + grouping dhcp_RelayIf-group { + description "DHCP Relay Interface"; + leaf subnetSelection { + type address_Ip; + description "DHCP relay source subnet"; + } // DHCP options - // Type is an MO-Defined-Type leaf options { - description "DHCP Options"; - // Type is an MO-Defined-Type type dhcp_Options; + description "DHCP Options"; } leaf SmartRelayEnabled { type boolean; + description "Smart Relay Enabled"; } leaf SubnetBroadcastEnabled { type boolean; + description "Subnet Broadcast Enabled"; } leaf InformationTrustedEnabled { type boolean; - } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + description "Information Trusted Enabled"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // DHCP OPTION @@ -41313,10 +45468,10 @@ module Cisco-NX-OS-device { config "false"; key "name"; - // Added containment: Prefix=opt - // Acquired From Package dhcp uses dhcp_OptionDef-group; + description "DHCP Option list"; } + description "DHCP Option"; } // DHCP relay address @@ -41324,10 +45479,10 @@ module Cisco-NX-OS-device { list RelayAddr-list { key "vrf address"; - // Added containment: Prefix=addr - // Acquired From Package dhcp uses dhcp_RelayAddr-group; + description "Relay Address list"; } + description "Relay Address"; } // DHCPv6 relay address @@ -41335,26 +45490,24 @@ module Cisco-NX-OS-device { list V6RelayAddr-list { key "vrf address dstif"; - // Added containment: Prefix=addrv6 - // Acquired From Package dhcp uses dhcp_V6RelayAddr-group; + description "v6 Relay Address list"; } + description "v6 Relay Address"; } // Ipv4 dhcp Source interface per i/f container srcif-items { - // Added containment as a singleton: Prefix=srcif - // Acquired From Package dhcp uses dhcp_SrcIf-group; + description "IPv4 DHCP Source Interface per if"; } // Ipv6 dhcp Source interface per i/f container v6srcif-items { - // Added containment as a singleton: Prefix=v6srcif - // Acquired From Package dhcp uses dhcp_V6SrcIf-group; + description "IPv6 DHCP Source Interface per if"; } // Represents a Complex TLV, @@ -41364,10 +45517,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41376,10 +45529,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41388,10 +45541,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41400,10 +45553,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41412,10 +45565,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41424,10 +45577,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41436,10 +45589,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41448,60 +45601,38 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_RelayAddr-group { + description "Relay Address"; // vrf in which the dhcp server is present. Valid only // when the client is in a different vrf from the server // vrf - // Type is an MO-Defined-Type leaf vrf { - description "vrf in which the dhcp server is present. Valid only when the client is in a different vrf from the server vrf"; - // Type is an MO-Defined-Type type l3_VrfName; + description "vrf in which the dhcp server is present. Valid only when the client is in a different vrf from the server vrf"; } leaf counter { type uint16; + description "Counter"; } - // Property has READ-CREATE access leaf address { type address_Ip; + description "Address"; } // Gateway IP address, valid only when we are crossing @@ -41511,49 +45642,48 @@ module Cisco-NX-OS-device { list RelayGw-list { key "address"; - // Added containment: Prefix=gw - // Acquired From Package dhcp uses dhcp_RelayGw-group; + description "Relay Gateway list"; } + description "Relay Gateway"; } } grouping dhcp_RelayGw-group { + description "Relay Gateway"; - // Property has READ-CREATE access leaf address { type address_Ip; + description "Address"; } } grouping dhcp_V6RelayAddr-group { + description "v6 Relay Address"; // vrf in which the dhcp server is present. Valid only // when the client is in a different vrf from the server // vrf - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } leaf counter { type uint16; + description "Counter"; } // Destination interface for IPv6 relay address - // Type is an MO-Defined-Type leaf dstif { - description "Destination Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Destination Interface"; } - // Property has READ-CREATE access leaf address { type address_Ip; + description "v6 Address"; } // Gateway IP address, valid only when we are crossing @@ -41563,88 +45693,75 @@ module Cisco-NX-OS-device { list V6RelayGw-list { key "address"; - // Added containment: Prefix=gw - // Acquired From Package dhcp uses dhcp_V6RelayGw-group; + description "v6 Relay Gateway list"; } + description "v6 Relay Gateway"; } } grouping dhcp_V6RelayGw-group { + description "v6 Relay Gateway"; - // Property has READ-CREATE access leaf address { type address_Ip; + description "v6 Address"; } } grouping dhcp_SrcIf-group { + description "IPv4 DHCP Source Interface per if"; - // Type is an MO-Defined-Type leaf sourceInterface { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping dhcp_V6SrcIf-group { + description "IPv6 DHCP Source Interface per if"; - // Type is an MO-Defined-Type leaf v6sourceInterface { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } } grouping dhcp_ServerIf-group { + description "DHCP Server Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -41654,10 +45771,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41666,10 +45783,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41678,10 +45795,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41690,10 +45807,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41702,10 +45819,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -41714,10 +45831,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -41726,10 +45843,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -41738,201 +45855,139 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_SourceIf-group { + description "IPv4 Global DHCP Source Interface"; - // Type is an MO-Defined-Type leaf sourceInterface { - description "Global Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Global Source Interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } } grouping dhcp_V6SourceIf-group { + description "IPv6 Global DHCP Source Interface"; - // Type is an MO-Defined-Type leaf v6sourceInterface { - description "Global Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Global Source Interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } } grouping dhcp_IpSrcBind-group { + description "DHCP IP Source Binding static entry"; leaf bindVlan { type uint16; + description "IP Source Biinding Vlan Number"; } leaf bindIp { type address_Ip; + description "IP Source Biinding Vlan Number"; } leaf bindMac { type address_Mac; + description "IP Source Client Hardware Address"; } // Interface on which the client was discovered - // Type is an MO-Defined-Type leaf bindIntf { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface ID"; } } grouping dhcp_IpsgIf-group { + description "DHCP Ipsg Interface"; leaf ipsgEnabled { - config "false"; type boolean; + description " IPSG in Interface Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -41942,10 +45997,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -41954,10 +46009,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -41966,10 +46021,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -41978,10 +46033,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -41990,10 +46045,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -42002,10 +46057,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -42014,10 +46069,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -42026,108 +46081,68 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dhcp_IpsgExVlan-group { + description "DHCP IPSG exclude on Vlan"; leaf ipsgExVlanNum { type uint16; + description "Vlan Number to be ecluded from IPSG"; } } grouping dhcp_SnoopVlan-group { + description "DHCP Snoop on Vlan"; leaf snoopVlanNum { type uint16; + description "Snoop Vlan Number"; } } grouping dhcp_SnoopIf-group { + description "DHCP Snoop Interface"; leaf trustEnabled { - config "false"; type boolean; + description "Snoop Trust Enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Represents a Complex TLV, @@ -42137,10 +46152,10 @@ module Cisco-NX-OS-device { config "false"; key "code id"; - // Added containment: Prefix=complex - // Acquired From Package dhcptlvpol uses dhcptlvpol_Complex-group; + description "Complex list"; } + description "Complex"; } // Represents a text TLV @@ -42149,10 +46164,10 @@ module Cisco-NX-OS-device { config "false"; key "code"; - // Added containment: Prefix=text - // Acquired From Package dhcptlvpol uses dhcptlvpol_Text-group; + description "Text list"; } + description "Text"; } // Represents an IP TLV @@ -42161,10 +46176,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ip - // Acquired From Package dhcptlvpol uses dhcptlvpol_Ip-group; + description "IP list"; } + description "IP"; } // Represents a Mac TLV @@ -42173,10 +46188,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=mac - // Acquired From Package dhcptlvpol uses dhcptlvpol_Mac-group; + description "MAC list"; } + description "MAC"; } // Represents a UInt64 TLV @@ -42185,10 +46200,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint64 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt64-group; + description "64 Bit Unsigned Integer list"; } + description "64 Bit Unsigned Integer"; } // Represents a UInt32 TLV @@ -42197,10 +46212,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint32 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt32-group; + description "32 Bit Unsigned Integer list"; } + description "32 Bit Unsigned Integer"; } // Represents a UInt16 TLV @@ -42209,10 +46224,10 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=uint16 - // Acquired From Package dhcptlvpol uses dhcptlvpol_UInt16-group; + description "16 Bit Unsigned Integer list"; } + description "16 Bit Unsigned Integer"; } // Represents a UByte TLV @@ -42221,82 +46236,43 @@ module Cisco-NX-OS-device { config "false"; key "code value"; - // Added containment: Prefix=ubyte - // Acquired From Package dhcptlvpol uses dhcptlvpol_UByte-group; + description "Unsigned Byte list"; } + description "Unsigned Byte"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping dns_Entity-group { + description "DNS Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // This objects hold per dns instance information @@ -42304,57 +46280,46 @@ module Cisco-NX-OS-device { list Prof-list { key "name"; - // Added containment: Prefix=prof - // Acquired From Package dns uses dns_Prof-group; + description "DNS Profile list"; } + description "DNS Profile"; } } grouping dns_Prof-group { + description "DNS Profile"; - // Inherited From pol:Obj - // Modified by Override: dns:Prof->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,32}.*"; } + description "Name"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // DNS Provider @@ -42362,10 +46327,10 @@ module Cisco-NX-OS-device { list Provider-list { key "addr"; - // Added containment: Prefix=prov - // Acquired From Package dns uses dns_Provider-group; + description "DNS Provider list"; } + description "DNS Provider"; } // VRF modes to search for additional to current vrf mode @@ -42373,18 +46338,17 @@ module Cisco-NX-OS-device { list Vrf-list { key "name"; - // Added containment: Prefix=vrf - // Acquired From Package dns uses dns_Vrf-group; + description "Vrf Name list"; } + description "Vrf Name"; } // DNS Domain container dom-items { - // Added containment as a singleton: Prefix=dom - // Acquired From Package dns uses dns_Dom-group; + description "Domain"; } // Additional DNS Domains to search for @@ -42392,10 +46356,10 @@ module Cisco-NX-OS-device { list DomExt-list { key "name"; - // Added containment: Prefix=domext - // Acquired From Package dns uses dns_DomExt-group; + description "Domain List list"; } + description "Domain List"; } // DNS host entries @@ -42403,40 +46367,40 @@ module Cisco-NX-OS-device { list Host-list { key "name"; - // Added containment: Prefix=host - // Acquired From Package dns uses dns_Host-group; + description "Host Name list"; } + description "Host Name"; } } grouping dns_Provider-group { + description "DNS Provider"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } leaf addr { type address_Ip; + description "IP Address"; } } grouping dns_Vrf-group { + description "Vrf Name"; // The vrf that this client group belongs to - // Type is an MO-Defined-Type leaf name { - description "Vrf Name"; - // Type is an MO-Defined-Type type l3_VrfName { + pattern ".*[!-~]{1,32}.*"; } + description "Vrf Name"; } // DNS Provider @@ -42444,18 +46408,17 @@ module Cisco-NX-OS-device { list Provider-list { key "addr"; - // Added containment: Prefix=prov - // Acquired From Package dns uses dns_Provider-group; + description "DNS Provider list"; } + description "DNS Provider"; } // DNS Domain container dom-items { - // Added containment as a singleton: Prefix=dom - // Acquired From Package dns uses dns_Dom-group; + description "Domain"; } // Additional DNS Domains to search for @@ -42463,94542 +46426,106174 @@ module Cisco-NX-OS-device { list DomExt-list { key "name"; - // Added containment: Prefix=domext - // Acquired From Package dns uses dns_DomExt-group; + description "Domain List list"; } + description "Domain List"; } } grouping dns_Dom-group { + description "Domain"; - // Inherited From pol:Obj - // Modified by Override: dns:Dom->name - // Modified by Override: dns:ADomain->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,64}.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping dns_DomExt-group { + description "Domain List"; - // Inherited From pol:Obj - // Modified by Override: dns:DomExt->name - // Modified by Override: dns:ADomain->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[!-~]{1,64}.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } grouping dns_Host-group { + description "Host Name"; leaf name { type string { + pattern ".*[!-~]{1,64}.*"; } + description "Host Name"; } // DNS IPv4 Entries container ipv4host-items { - // Added containment as a singleton: Prefix=ipv4host - // Acquired From Package dns uses dns_Ipv4Host-group; + description "Host Name"; } // DNS IPv6 Entries container ipv6host-items { - // Added containment as a singleton: Prefix=ipv6host - // Acquired From Package dns uses dns_Ipv6Host-group; + description "Host Name"; } } grouping dns_Ipv4Host-group { + description "Host Name"; leaf addr { type address_Ipv4; + description "IPv4 Address Of Hostname"; } } grouping dns_Ipv6Host-group { + description "Host Name"; leaf addr { type address_Ipv6; + description "IPv6 Address Of Hostname"; } } - grouping fabric_Decommission-group { + grouping email_Email-group { + description "Email configuration mode"; - // Type is an MO-Defined-Type - leaf nodeDn { - config "false"; - description "TBD"; + leaf smtpHost { - // Type is an MO-Defined-Type - type reln_Dn; + type callhome_ServerType { + length "0..254"; + } + description "DNS name or IPv4 or IPv6 address"; } - leaf wipe { - config "false"; - type boolean; + leaf smtpPort { + type uint32 { + range "0..65535"; + } + description "Port for the SMTP server"; } - leaf targetId { - config "false"; - type uint32; + + leaf replyTo { + + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } + description "Reply-to email address"; } - // Type is an MO-Defined-Type - leaf tickCount { - config "false"; - description "TBD"; + leaf from { - // Type is an MO-Defined-Type - type fabric_TickCount; + type address_Email { + pattern "|[a-zA-Z0-9\\._%\\+-]+@[a-zA-Z0-9\\.-]+"; + } + description "Email address from where the mail should go"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf vrf { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type l3_VrfName { + length "0..32"; } + description "VRF for pipe email transmit"; + } + leaf config { + type boolean; + description "Config property for email"; } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping evms_EvtMgr-group { + description "Embedded event manager"; - // Type is an MO-Defined-Type - type naming_Descr; + // Event Manager Instance + container inst-items { + + uses evms_Inst-group; + description "EvtMgr instance object"; } } - grouping l2_InbandIf-group { + grouping evms_Inst-group { + description "EvtMgr instance object"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Admin State"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Event Fan Bad + container fanbad-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses evms_EventFanBadUnTagged-group; + description "Event fan bad"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Event Temperature + container temperature-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses evms_EventTemperatureUnTagged-group; + description "Event temperature"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Event Power Over Budget + container poweroverbudget-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses evms_EventPowerOverBudgetUnTagged-group; + description "Event power over budget"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + grouping evms_EventApplicationUnTagged-group { + description "Untagged application event specification"; + leaf subSystemId { + type uint32; + description "Sub-system ID that will publish the application event"; + } + leaf eventType { + type uint32; + description "Event type within the specified sub-system"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + grouping evms_EventCdp-group { + description "Cdp event specification"; + + // interface + leaf intf { - // Type is an MO-Defined-Type type nw_IfId; + description "interface"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // ]-mac- - container vlan-items { - list StaticEntry-list { - key "vlan staticMacAddress"; - - // Added containment: Prefix=vlan - // Acquired From Package l2 - uses l2_StaticEntry-group; + grouping evms_EventCliUnTagged-group { + description "Event Cli specification"; + leaf match { + type string { + length "0..128"; } + description "CLI regular expression to be used for matching"; } - } - - grouping l2_StaticEntry-group { - leaf staticMacAddress { - type address_Mac; + leaf timeInterval { + type uint32 { + range "0..10000000"; + } + description "Time interval in seconds"; } - leaf vlan { - type string; + leaf occurrences { + type uint32 { + range "1..65000"; + } + description "Enter an integer to be used as count"; } - leaf dropAction { + } + + grouping evms_EventNone-group { + description "Manually run policy tagged event with none"; + leaf eventnonestatus { type boolean; default "true"; } - // Type is an MO-Defined-Type - leaf interface { - description "Interface"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping l2_MacAddressTable-group { - - // MacAddress DN: sys/mac/table/vlan-[vlan-x]-mac- - container vlan-items { - list MacAddressEntry-list { - config "false"; - key "vlan macAddress"; - - // Added containment: Prefix=vlan - // Acquired From Package l2 - uses l2_MacAddressEntry-group; - } + grouping evms_EventNoneUnTagged-group { + description "Manually run policy untagged event with none"; + leaf eventnonestatus { + type boolean; + default "true"; } } - grouping l2_MacAddressEntry-group { - leaf macAddress { - config "false"; - type address_Mac; + grouping evms_EventTimer-group { + description "Tagged Timer event specification"; + leaf watchdogTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event watchdog time in seconds"; + } + leaf countdownTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event countdown time in seconds"; + } + leaf absoluteTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event absolute time in seconds"; + } + leaf cronTime { + type string { + length "0..100"; + } + description "Event cron time in [min hour dom month dow] format"; + } + leaf name { + type string { + length "0..29"; + } + description "Name of the timer"; } - // Primary, Gateway... - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type l2_MacType; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } - leaf vlan { - config "false"; - type string; + } + + grouping evms_EventTimerUnTagged-group { + description "Untagged Timer event specification"; + leaf watchdogTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event watchdog time in seconds"; } - leaf static { - config "false"; - type boolean; + leaf countdownTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event countdown time in seconds"; } - leaf secure { - config "false"; - type boolean; + leaf absoluteTime { + type string { + pattern "((1{1}[0-8]{1}\\d{8}(\\.\\d{1,3})?).*|.*(1{1}9{1}[0 1]{1}\\d{7}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}[0-3]\\d{6}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}[0-8]\\d{5}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}[0-8]\\d{4}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}0{1}\\d{3}(\\.\\d{1,3})?).*|.*(1{1}9{1}2{1}4{1}9{1}9{1}1{1}\\d{3}(\\.\\d{1,3})?).*|.*([1-9]{1}\\d{0,8}(\\.\\d{1,3})?))|()"; + } + description "Event absolute time in seconds"; } - leaf ntfy { - config "false"; - type boolean; + leaf cronTime { + type string { + length "0..100"; + } + description "Event cron time in [min hour dom month dow] format"; } - leaf routed { - config "false"; - type boolean; + leaf name { + type string { + length "0..29"; + } + description "Name of the timer"; } - leaf age { - config "false"; - type uint32; + } + + grouping evms_EventTrack-group { + description "Track event specification"; + leaf trackId { + type uint32 { + range "0..512"; + } + description "Track object ID Number"; } - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; + // track state specification + leaf trackStateOp { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_TrackStateOp; + description "track event specification"; } - // Type is an MO-Defined-Type - leaf macInfo { - config "false"; - description "Additional Information on the MAC"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type l2_MacInfo; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping cdp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_EventTrackUnTagged-group { + description "Track event specification"; + leaf trackId { + type uint32 { + range "0..512"; } + description "Track object ID Number"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // track state specification + leaf trackStateOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type evms_TrackStateOp; + description "track event specification"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } + grouping evms_EventUfdm-group { + description "Ufdm event fib specification"; - // This objects hold per cdp instance information. There is - // only one instance of cdp running in the system today - container inst-items { + // UFDM Event Fib Route, Fib Resource and Adjacency Extra of the Applet + leaf eventFib { - // Added containment as a singleton: Prefix=inst - // Acquired From Package cdp - uses cdp_Inst-group; + type evms_EventFibType; + description "Event-manager Applet Event Fib type"; } } - grouping cdp_Inst-group { + grouping evms_Tag-group { + description "Enter the conditions to be used for correlation of events"; - // CDP version supported by the device - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Event Tag 1 + leaf eventTag1 { - // Type is an MO-Defined-Type - type cdp_Ver; + type evms_EventTagType; + description "Tag-1 to correlate"; } - // What to advertise in the device id to the peer? - // This will be the identifier of the local switch - // to the remote peer - // Type is an MO-Defined-Type - leaf devIdType { - description "Device ID Type"; + // Correlate Operator 1 + leaf correlateTag1 { - // Type is an MO-Defined-Type - type cdp_DevIdT; + type evms_CorrelateTagType; + description "Correlate-1 operator"; } - // Sets the time that cdp holds onto neighbor - // information before aging it out - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // Event Tag 2 + leaf eventTag2 { - // Type is an MO-Defined-Type - type cdp_HoldIntvl; + type evms_EventTagType; + description "Tag-2 to correlate"; } - // Sets the transmission frequency of cdp - // advertisements in seconds - // Type is an MO-Defined-Type - leaf txFreq { - description "Transmit Frequency"; + // Correlate Operator 2 + leaf correlateTag2 { - // Type is an MO-Defined-Type - type cdp_TxFreq; + type evms_CorrelateTagType; + description "Correlate-2 operator"; } - // System Name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + // Event Tag 3 + leaf eventTag3 { - // Type is an MO-Defined-Type - type cdp_SysName; + type evms_EventTagType; + description "Tag-3 to correlate"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Correlate Operator 3 + leaf correlateTag3 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type evms_CorrelateTagType; + description "Correlate-3 operator"; + } + + // Event Tag 4 + leaf eventTag4 { + + type evms_EventTagType; + description "Tag-4 to correlate"; + } + leaf occurences { + type uint32 { + range "1..4294967295"; } + default "1"; + description "Number of occurences"; + } + leaf timeInterval { + type uint32 { + range "0..4294967295"; + } + description "Time interval"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping evms_EventCounter-group { + description "counter event specification"; + leaf counterName { + type string { + length "0..28"; + } + description "Name of the counter"; + } + leaf entryValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Entry Operator + leaf entryOp { + + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + leaf exitValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Exit Operator + leaf exitOp { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // This object holds cdp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping evms_EventCounterUnTagged-group { + description "counter event specification"; + leaf counterName { + type string { + length "0..28"; + } + description "Name of the counter"; + } + leaf entryValue { + type uint32 { + range "0..2147483647"; + } + description "Specify the value for comparison with the counter Value"; + } - // Added containment: Prefix=if - // Acquired From Package cdp - uses cdp_If-group; + // Entry Operator + leaf entryOp { + + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + leaf exitValue { + type uint32 { + range "0..2147483647"; } + description "Specify the value for comparison with the counter Value"; } - } - grouping cdp_If-group { + // Exit Operator + leaf exitOp { - // Port description - // Type is an MO-Defined-Type - leaf portDesc { - description "Port Description"; + type evms_CounterEntryExitOpType; + description "Specify the comparison operator"; + } + } - // Type is an MO-Defined-Type - type naming_Descr; + grouping evms_EventEthpm-group { + description "Ethpm Event Specification"; + leaf eventStrmCtrl { + type boolean; + } + } + + grouping evms_EventGold-group { + description "Gold event specification"; + leaf modId { + type uint32; + description "Module id for which the event shall be triggered on diag test failure"; } - // Type is an MO-Defined-Type - leaf locDesc { - description "Location Description"; + // All Module + leaf moduleAll { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_AdminSt; + description "All Module of sys for which the event shall be triggered on diag test failure"; + } + leaf diagTestName { + type string; + description "Name of the online Diagnostic test which is run"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Failure Severity + leaf failureSeverity { - // Type is an MO-Defined-Type - type cdp_OperSt; + type evms_SeverityLevel; + description "Diag failure severity level"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // Diag Test Type + leaf testingType { - // Type is an MO-Defined-Type - type cdp_OperStQual; + type evms_TestType; + description "Diagnostics Testing type"; + } + leaf consectiFailCnt { + type uint32; + description "Diag consecutive Failure count"; } + } - // Native vlan - // Type is an MO-Defined-Type - leaf nativeVlan { - config "false"; - description "Native Vlan"; + grouping evms_EventModuleFailure-group { + description "Event module-failure specification"; - // Type is an MO-Defined-Type - type cdp_VlanId; + // Device type + leaf errType { + + type evms_ErrorType; + description "Error type for event module-failure"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Device Number + leaf moduleNumber { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type evms_ModuleNumber; + description "Module number for event module-failure"; + } + leaf count { + type uint32 { + range "0..65000"; } + default "0"; + description "Integer number to be used as count"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // time + leaf time { - // Type is an MO-Defined-Type - type naming_Descr1024; + type evms_timeInterval; + description "Time interval within which the events need to happen"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_IfId; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping evms_EventModuleFailureUnTagged-group { + description "Event module-failure specification"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + // Device type + leaf errType { + + type evms_ErrorType; + description "Error type for event module-failure"; } - // This object holds cdp neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "index"; + // Device Number + leaf moduleNumber { - // Added containment: Prefix=adj - // Acquired From Package cdp - uses cdp_AdjEp-group; + type evms_ModuleNumber; + description "Module number for event module-failure"; + } + leaf count { + type uint32 { + range "0..65000"; } + default "0"; + description "Integer number to be used as count"; } - // This object holds cdp intf statistics operational information. - // This is a singleton within an intferace - container ifstats-items { + // time + leaf time { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package cdp - uses cdp_IfStats-group; + type evms_timeInterval; + description "Time interval within which the events need to happen"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - container rtvrfMbr-items { + grouping evms_EventModule-group { + description "Event module specification"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Device type + leaf moduleStatus { + + type evms_ModuleStatus; + description "Module status for event module"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Device Number + leaf moduleNumber { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type evms_ModuleNumber; + description "Module number for event module"; + } + + // Event tag identifier + leaf eventTag { + + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping cdp_AdjEp-group { + grouping evms_EventModuleUnTagged-group { + description "Event Module specification"; - // A unique value for each device from which CDP - // messages are being received - // Type is an MO-Defined-Type - leaf index { - config "false"; - description "Index"; + // Device type + leaf moduleStatus { - // Type is an MO-Defined-Type - type cdp_DevIndex; + type evms_ModuleStatus; + description "Module status for event module"; } - // Remote version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Device Number + leaf moduleNumber { - // Type is an MO-Defined-Type - type cdp_NbrVer; + type evms_ModuleNumber; + description "Module number for event module"; } + } - // Remote device ID - // Type is an MO-Defined-Type - leaf devId { - config "false"; - description "Device ID"; + grouping evms_EventOir-group { + description "Event Oir specification"; - // Type is an MO-Defined-Type - type cdp_DevId; + // Device type + leaf deviceType { + + type evms_DeviceType; + description "Device type for event oir"; } - // Remote Port ID - // Type is an MO-Defined-Type - leaf portId { - config "false"; - description "Port ID"; + // OIR type + leaf oirType { - // Type is an MO-Defined-Type - type cdp_PortId; + type evms_OirType; + description "Oir type for event oir"; } - // Remote Platform ID - // Type is an MO-Defined-Type - leaf platId { - config "false"; - description "Platform ID"; + // Device Number + leaf deviceNumber { - // Type is an MO-Defined-Type - type cdp_PlatId; + type evms_DeviceNumber; + description "Device number matching with device type"; } - // Capabilities - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "Capabilities"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type cdp_CapT; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Duplex advertised by neighbor - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex"; + grouping evms_EventOirUnTagged-group { + description "Event Oir specification"; - // Type is an MO-Defined-Type - type cdp_Duplex; + // Device type + leaf deviceType { + + type evms_DeviceType; + description "Device type for event oir"; } - // Native vlan advertised by neighbor - // Type is an MO-Defined-Type - leaf nativeVlan { - config "false"; - description "Native Vlan"; + // OIR type + leaf oirType { - // Type is an MO-Defined-Type - type cdp_VlanId; + type evms_OirType; + description "Oir type for event oir"; } - // MTU advertised by neighbor - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; + // Device Number + leaf deviceNumber { - // Type is an MO-Defined-Type - type cdp_MTU; + type evms_DeviceNumber; + description "Device number matching with device type"; } + } - // System name advertised by neighbor - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + grouping evms_EventFanAbsentUnTagged-group { + description "Event fan absent"; - // Type is an MO-Defined-Type - type cdp_SysName; + // Fan type + leaf fanNumber { + + type evms_IntegerRange; + description "Specify fan number, 0|all for all fan or interger range"; } - // System location advertised by neighbor - // Type is an MO-Defined-Type - leaf sysLoc { - config "false"; - description "System Location"; + // Time Interval + leaf time { - // Type is an MO-Defined-Type - type cdp_SysLoc; + type evms_FanInterval; + description "Time in seconds fan can stay absent"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping evms_EventFanBadUnTagged-group { + description "Event fan bad"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Fan type + leaf fanNumber { + + type evms_IntegerRange; + description "Specify fan number, 0|all for all fan or interger range"; } - // Management address received from cdp neighbor - container mgmt-items { - list MgmtAddr-list { - config "false"; - key "addr"; + // Time Interval + leaf time { - // Added containment: Prefix=mgmt - // Acquired From Package cdp - uses cdp_MgmtAddr-group; - } + type evms_FanInterval; + description "Time in seconds fan can stay absent"; } + } - // Interface address received from cdp neighbor - container intf-items { - list IntfAddr-list { - config "false"; - key "addr"; + grouping evms_EventTemperatureUnTagged-group { + description "Event temperature"; - // Added containment: Prefix=intf - // Acquired From Package cdp - uses cdp_IntfAddr-group; - } + // Module Number + leaf moduleNumber { + + type evms_IntegerRange; + description "Specify module number, 0|all for all module or interger range"; } - // This object holds cdp adj statistics operational information. - // This is a singleton within an adjacency - container adjstats-items { + // Sensor Number + leaf sensorNumber { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package cdp - uses cdp_AdjStats-group; + type evms_IntegerRange; + description "Specify sensor number range"; + } + + // Threshold Levels + leaf thresholdLevel { + + type evms_ThresholdLevels; + description "Specify threshold level: major, minor or any"; } } - grouping cdp_MgmtAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventPowerOverBudgetUnTagged-group { + description "Event power over budget"; + leaf eventpoweroverbudgetstatus { + type boolean; + default "true"; } } - grouping cdp_IntfAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventMemoryUnTagged-group { + description "Event for memory level"; + + // Memory level number + leaf memLevels { + + type evms_MemoryType; + description "Specify memory level: minor, major, critical"; } } - grouping cdp_AdjStats-group { - leaf adjExpTs { - config "false"; - type string; + grouping evms_EventPolicyDefault-group { + description "Use the event in the system policy being overridden"; + leaf occurences { + type uint16 { + range "1..65000"; + } + default "1"; + description "Number of occurances"; + } + leaf timeInterval { + type uint32 { + range "0..32768"; + } + description "Time interval in seconds"; } } - grouping cdp_IfStats-group { + grouping evms_EventSnmp-group { + description "Snmp event specification"; + leaf oid { + type string { + length "0..128"; + } + description "Oid of data element in dot notation"; + } - // CDP Interface Stats Number of v1 packets sent - // Type is an MO-Defined-Type - leaf v1Sent { - config "false"; - description "Number of V1 Packets Sent"; + // Get request type + leaf getType { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_GetTypeType; + description "The type of SNMP get operation"; } - // Number of v2 packets sent - // Type is an MO-Defined-Type - leaf v2Sent { - config "false"; - description "Number of V2 Packets Sent"; + // Entry operator + leaf entryOp { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_EntryExitOpType; + description "Entry comparison operator"; } - - // Number of packets failed to send - // Type is an MO-Defined-Type - leaf failedSent { - config "false"; - description "Number of Packets Failed to Send"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf entryVal { + type uint64; + description "Value to compare with the current polled value"; } - // Number of valid v1 packets received - // Type is an MO-Defined-Type - leaf validV1Rcvd { - config "false"; - description "Number of Valid V1 Packets Received"; + // Exit combination + leaf exitComb { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_ExitCombType; + description "Exit criterion combination"; } - // Number of v2 packets received - // Type is an MO-Defined-Type - leaf validV2Rcvd { - config "false"; - description "Number of Valid V2 Packets Received"; + // Exit operator + leaf exitOp { - // Type is an MO-Defined-Type - type nw_Counter32; + type evms_EntryExitOpType; + description "Exit comparison operator"; } - - // Number of unsupported version packets received - // Type is an MO-Defined-Type - leaf unSupVerRcvd { - config "false"; - description "Number of Unsupported Version Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitVal { + type uint64; + description "Value to compare with the current polled value"; } - - // Number of checksum error packets received - // Type is an MO-Defined-Type - leaf cksumErrRcvd { - config "false"; - description "Number of Checksum Error Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitTimeMin { + type uint32; + description "Min Exit time value required"; } - - // Number of malformed packets received - // Type is an MO-Defined-Type - leaf malformRcvd { - config "false"; - description "Number of Malform Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + leaf exitTimeMax { + type uint32; + description "Max Exit time value required"; } - } - - grouping lldp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf pollIntervalMin { + type uint32 { + range "1..2147483647"; } + description "Min Polling time interval"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf pollIntervalMax { + type uint32 { + range "1..2147483647"; + } + description "Max Polling time interval"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Exit operator 1 + leaf exitOp1 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type evms_EntryExitOpType; + description "Exit comparison operator"; + } + leaf exitVal1 { + type uint64; + description "Value to compare with the current polled value"; } - // This objects hold per lldp instance information. There is - // only one instance of lldp running in the system today - container inst-items { + // Event tag identifier + leaf eventTag { - // Added containment as a singleton: Prefix=inst - // Acquired From Package lldp - uses lldp_Inst-group; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } } - grouping lldp_Inst-group { - - // Amount of time in seconds that a receiving device - // should hold the information sent by your device - // before discarding it - // Type is an MO-Defined-Type - leaf holdTime { - description "Hold Time"; - - // Type is an MO-Defined-Type - type lldp_HoldTime; + grouping evms_EventSnmpUnTagged-group { + description "Snmp event specification"; + leaf oid { + type string { + length "0..128"; + } + description "Oid of data element in dot notation"; } - // Delay time in seconds for lldp to initialize on any - // interface - // Type is an MO-Defined-Type - leaf initDelayTime { - description "Init Delay Time"; + // Get request type + leaf getType { - // Type is an MO-Defined-Type - type lldp_InitDelayTime; + type evms_GetTypeType; + description "The type of SNMP get operation"; } - // Transmission frequency of lldp updates in seconds - // Type is an MO-Defined-Type - leaf txFreq { - description "Transmission Frequency"; + // Entry operator + leaf entryOp { - // Type is an MO-Defined-Type - type lldp_TxFreq; + type evms_EntryExitOpType; + description "Entry comparison operator"; + } + leaf entryVal { + type uint64; + description "Value to compare with the current polled value"; } - // Some tlvs are optional as per LLDP protocol (802.1AB) - // specifications. Use these selectors to turn on/off - // Type is an MO-Defined-Type - leaf optTlvSel { - description "Optional TLV Selector"; + // Exit combination + leaf exitComb { - // Type is an MO-Defined-Type - type lldp_OptTlvSel; + type evms_ExitCombType; + description "Exit criterion combination"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - description "System Description"; + // Exit operator + leaf exitOp { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_EntryExitOpType; + description "Exit comparison operator"; + } + leaf exitVal { + type uint64; + description "Value to compare with the current polled value"; + } + leaf exitTimeMin { + type uint32; + description "Min Exit time value required"; + } + leaf exitTimeMax { + type uint32; + description "Max Exit time value required"; + } + leaf pollIntervalMin { + type uint32 { + range "1..2147483647"; + } + description "Min Polling time interval"; + } + leaf pollIntervalMax { + type uint32 { + range "1..2147483647"; + } + description "Max Polling time interval"; } - // PortId Subtype - // Type is an MO-Defined-Type - leaf portIdSubType { - description "PortId SubType"; + // Exit operator 1 + leaf exitOp1 { - // Type is an MO-Defined-Type - type lldp_PortIdSubType; + type evms_EntryExitOpType; + description "Exit comparison operator"; } + leaf exitVal1 { + type uint64; + description "Value to compare with the current polled value"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_EventSyslog-group { + description "Syslog event specification"; + leaf occurences { + type uint16 { + range "1..65000"; + } + description "Number of occurances"; + } + leaf timeInterval { + type uint32 { + range "0..4294967295"; } + description "Time interval in seconds"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Syslog Priority + leaf priority { - // Type is an MO-Defined-Type - type nw_AdminSt; + type evms_PriorityType; + default "7"; + description "Priority of the syslog message"; + } + leaf pattern { + type string { + length "0..256"; + } + description "Syslog pattern text of the syslog message"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Event tag identifier + leaf eventTag { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type evms_EventTagType; + description "Event tag specifier, uniquely defines an event."; } + } - // Local management address - container mgmt-items { - list MgmtAddr-list { - config "false"; - key "addr"; - - // Added containment: Prefix=mgmt - // Acquired From Package lldp - uses lldp_MgmtAddr-group; + grouping evms_EventSyslogUnTagged-group { + description "Syslog event specification"; + leaf occurences { + type uint16 { + range "1..65000"; } + description "Number of occurances"; } - - // This object holds lldp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; - - // Added containment: Prefix=if - // Acquired From Package lldp - uses lldp_If-group; + leaf timeInterval { + type uint32 { + range "0..4294967295"; } + description "Time interval in seconds"; } - // This object holds lldp inst statistics operational information. - // This is a singleton within lldp - container inststats-items { + // Syslog Priority + leaf priority { - // Added containment as a singleton: Prefix=inststats - // Acquired From Package lldp - uses lldp_InstStats-group; + type evms_PriorityType; + default "7"; + description "Priority of the syslog message"; } + leaf pattern { + type string { + length "0..256"; + } + description "Syslog pattern text of the syslog message"; + } + } - // Rel-def from lldpInstPolCons - container rslldpInstPolCons-items { - - // Added containment as a singleton: Prefix=rslldpInstPolCons - // Acquired From Package lldp - uses lldp_RsLldpInstPolCons_source-group; + grouping evms_EventSysmgrMemAlertUnTagged-group { + description "Sysmgr event specification"; + leaf module { + type uint32; + default "0"; + description "module number optional."; + } + leaf major { + type uint32 { + range "0..99"; + } + description "Major memory threshold between 1 to 99"; + } + leaf minor { + type uint32 { + range "0..99"; + } + description "Minor memory threshold between 1 to 99"; + } + leaf clear { + type uint32 { + range "0..99"; + } + description "clear memory threshold between 1 to 99"; } } - grouping lldp_MgmtAddr-group { - leaf addr { - config "false"; - type address_Ip; + grouping evms_EventSysmgrSwitchoverUnTagged-group { + description "Sysmgr event specification"; + leaf count { + type uint32 { + range "0..65000"; + } + description "Expected Number of switch over to trigger event [1-65000]"; + } + leaf time { + type uint32 { + range "0..4294967295"; + } + description "Expected Time interval to trigger event, in seconds [1-4294967295]"; } } - grouping lldp_If-group { + grouping evms_EventInternalLinkFlapUnTagged-group { + description "Event internal-link-flap specification"; + leaf count { + type uint32 { + range "0..65000"; + } + default "0"; + description "Integer number to be used as count"; + } - // Receive admin state - // Type is an MO-Defined-Type - leaf adminRxSt { - description "Admin Receive State"; + // time + leaf time { - // Type is an MO-Defined-Type - type lldp_AdminSt; + type evms_LinkFlapTime; + description "Time interval within which the events need to happen"; } + } - // Transmit admin state - // Type is an MO-Defined-Type - leaf adminTxSt { - description "Admin Transmit State"; + grouping evms_Action-group { + description "Applet action parent"; - // Type is an MO-Defined-Type - type lldp_AdminSt; + // Action Label + leaf actionLabel { + + type evms_ActionLabelType; + description "Specify action label"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "System Description"; + // Action publish-event + container publishevent-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses evms_ActionPublishEvent-group; + description "Publish an application specific event"; } - // Type is an MO-Defined-Type - leaf tlvSetVlan { - description "Tlv vlan"; + // Action - Counter + container counter-items { - // Type is an MO-Defined-Type - type lldp_MgmtVlanId; - } - leaf tlvSetMgmtIpv4 { - type address_Ip; - } - leaf tlvSetMgmtIpv6 { - type address_Ip; + uses evms_ActionCounter-group; + description "Modifies the counter based on configured value and operation"; } - // Port description - // Type is an MO-Defined-Type - leaf portDesc { - config "false"; - description "Port Description"; + // Action exceptionlog + container exceptionlog-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses evms_ActionExceptionLog-group; + description "Action for exceptionlog for modules"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Action - reload module + container reload-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses evms_ActionReload-group; + description "Action to reload module"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Action force shutdown + container forceshut-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses evms_ActionForceShut-group; + description "Action for force shutdown"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Action overbudgetshut + container overbudgetshut-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses evms_ActionOverBudgetShut-group; + description "Action for Shut down the specified LCs due to power over budget"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Action - Event Default + container eventdefault-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses evms_ActionEventDefault-group; + description "Do default action for the event"; } - // This object holds lldp neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; + // Action - Policy Default + container policydefault-items { - // Added containment: Prefix=adj - // Acquired From Package lldp - uses lldp_AdjEp-group; - } + uses evms_ActionPolicyDefault-group; + description "Do default action(s) of the policy being overridden"; } - // This object holds the information about IFC adj, used by PE to cache - // Controller adjEP information to handle adj deletes - container ctrlradj-items { + // Action - CLI + container cli-items { - // Added containment as a singleton: Prefix=ctrlradj - // Acquired From Package lldp - uses lldp_CtrlrAdjEp-group; + uses evms_ActionCLI-group; + description "Configure a VSH CLI action"; } - // This object holds lldp intf statistics operational information. - // This is a singleton within an interface - container ifstats-items { + // Action - Collect + container collect-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package lldp - uses lldp_IfStats-group; + uses evms_ActionCollect-group; + description "Collect debugging info using a yaml file"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - container rtvrfMbr-items { + // Action - SNMP TRAP + container snmptrap-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses evms_ActionSnmpTrap-group; + description "Send out an SNMP trap"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Action - Syslog + container syslog-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses evms_ActionSyslog-group; + description "Generate a syslog message"; } } - grouping lldp_AdjEp-group { - - // Neighbor ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type lldp_AdjId; + grouping evms_ActionPublishEvent-group { + description "Publish an application specific event"; + leaf subSystemId { + type uint32; + description "Sub-system ID that will publish the application event"; } - - // Neighbor chassis id type - // Type is an MO-Defined-Type - leaf chassisIdT { - config "false"; - description "Chassis ID Type"; - - // Type is an MO-Defined-Type - type lldp_ChassisIdT; + leaf eventType { + type uint32; + description "Event type within the specified sub-system"; } + leaf arg1 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg1)"; + } + leaf arg2 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg2)"; + } + leaf arg3 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg3)"; + } + leaf arg4 { + type string { + length "0..29"; + } + description "User specified data to be passed when the event is published(arg4)"; + } + } - // Neighbor chassis id value - // Type is an MO-Defined-Type - leaf chassisIdV { - config "false"; - description "Chassis ID Value"; - - // Type is an MO-Defined-Type - type lldp_ChassisIdV; + grouping evms_ActionCounter-group { + description "Modifies the counter based on configured value and operation"; + leaf counterName { + type string { + length "0..29"; + } + description "Name of the action counter"; + } + leaf counterValue { + type string; + description "Specify the value to be applied to the counter"; } - // Neighbor port type - // Type is an MO-Defined-Type - leaf portIdT { - config "false"; - description "Port ID Type"; + // Counter operation + leaf counterOp { - // Type is an MO-Defined-Type - type lldp_PortIdT; + type evms_CounterOpType; + description "Specify the operator to be applied"; } + } - // Neighbor port value - // Type is an MO-Defined-Type - leaf portIdV { - config "false"; - description "Port ID Value"; + grouping evms_ActionExceptionLog-group { + description "Action for exceptionlog for modules"; - // Type is an MO-Defined-Type - type lldp_PortIdV; + // Module Number + leaf moduleNumber { + + type evms_ExpLogComValStr; + description "Specify module number: interger module number or a $predefine environment name"; } - // Neighbor system name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "System Name"; + // syserr + leaf sysErr { - // Type is an MO-Defined-Type - type lldp_SysName; + type evms_ExpLogComValStr; + description "Specify syserr code : hex value or a $predefine environment name"; } - // Neighbor system description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "System Description"; + // device Id + leaf devId { - // Type is an MO-Defined-Type - type lldp_NbrSysDesc; + type evms_ExpLogComValStr; + description "Specify device ID : interger value or a $predefine environment name"; } - // Neighbor port description - // Type is an MO-Defined-Type - leaf portDesc { - config "false"; - description "Port Description"; + // error type + leaf errType { - // Type is an MO-Defined-Type - type naming_Descr; + type evms_ExpLogComValStr; + description "Specify error type : interger value or a $predefine environment name"; } - // Neighbor System Capability - // Type is an MO-Defined-Type - leaf capability { - config "false"; - description "Capability"; + // error code + leaf errCode { - // Type is an MO-Defined-Type - type lldp_Capability; + type evms_ExpLogComValStr; + description "Specify error code : interger value or a $predefine environment name"; } - // Neighbor Enabled Capability - // Type is an MO-Defined-Type - leaf enCap { - config "false"; - description "Enabled Capability"; + // phylayer code + leaf phyLayer { - // Type is an MO-Defined-Type - type lldp_Capability; + type evms_ExpLogComValStr; + description "Specify phy layer : interger value or a $predefine environment name"; } - // Neighbor Management Address - // Type is an MO-Defined-Type - leaf mgmtIp { - config "false"; - description "Management Address"; + // ports + leaf ports { - // Type is an MO-Defined-Type - type lldp_MgmtIp; + type evms_ExpLogComValStr; + description "Specify list of ports"; } - // Org tlv, Neighbor port vlan - // Type is an MO-Defined-Type - leaf portVlan { - config "false"; - description "Port Vlan"; + // hard error + leaf hardError { - // Type is an MO-Defined-Type - type lldp_PortVlan; + type evms_HardError; + description "Specify hard error 0..4"; } + leaf desc { + type string { + length "0..128"; + } + description "Specify string data for error description"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + grouping evms_ActionReload-group { + description "Action to reload module"; + leaf moduleNumber { + type string { + length "1..30"; } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; } + } - // This object holds lldp adj statistics operational information. - // This is a singleton within an adjacency - container adjstats-items { + grouping evms_ActionForceShut-group { + description "Action for force shutdown"; + leaf moduleNumber { + type string { + length "1..30"; + } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; + } + leaf resetReason { + type string { + length "1..80"; + } + default "action_force_shutdown"; + description "Reset reason for action forceshut"; + } + } - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package lldp - uses lldp_AdjStats-group; + grouping evms_ActionOverBudgetShut-group { + description "Action for Shut down the specified LCs due to power over budget"; + leaf moduleNumber { + type string { + length "1..30"; + } + default "all"; + description "Specify module number: all, interger module number or a $predefine environment name"; } } - grouping lldp_AdjStats-group; + grouping evms_ActionEventDefault-group { + description "Do default action for the event"; + leaf actioneventdefaultstatus { + type boolean; + default "true"; + } + } - grouping lldp_CtrlrAdjEp-group { + grouping evms_ActionPolicyDefault-group { + description "Do default action(s) of the policy being overridden"; + leaf actionpolicydefaultstatus { + type boolean; + default "true"; + } + } - // Fabric node ID of the Controller - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Controller ID"; + grouping evms_ActionCLI-group { + description "Configure a VSH CLI action"; + leaf execModule { + type boolean; + default "true"; + description "Execute the action on the module where event happens"; + } + leaf cliCommand { + type string { + length "0..1023"; + } + description "Enter the VSH command"; + } + } - // Type is an MO-Defined-Type - type fabric_NodeId; + grouping evms_ActionCollect-group { + description "Collect debugging info using a yaml file"; + leaf yamlFile { + type string { + length "0..1023"; + } + description "Enter the YAML input file"; + } + leaf componentName { + type string { + length "0..1023"; + } + description "Enter the component for tech-support collection"; + } + leaf rateLimit { + type uint16 { + range "1..65000"; + } + description "Limit trigger based collection for a period of time"; + } + leaf purgeTime { + type uint16 { + range "1..65000"; + } + description "Change the time period for which older files are purged"; } - // Rel-def from CtrlrAdjEpToStAdjEp - container rsctrlrAdjEpToStAdjEp-items { + // Enable/Disable Action - Collect + leaf yamlStatus { - // Added containment as a singleton: Prefix=rsctrlrAdjEpToStAdjEp - // Acquired From Package lldp - uses lldp_RsCtrlrAdjEpToStAdjEp_source-group; + type nw_AdminSt; + description "TBD"; } } - grouping lldp_IfStats-group { - - // LLDP Interface Stats Number of packets sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Number of Packets Sent"; + grouping evms_ActionSnmpTrap-group { + description "Send out an SNMP trap"; + leaf trapstatus { + type boolean; + default "true"; + description "Enable or Disable snmp trap"; + } + leaf integerData1 { + type string { + length "0..255"; + } + description "Integer data1 to be included in the payload"; + } + leaf integerData2 { + type string { + length "0..255"; + } + description "Integer data2 to be included in the payload"; + } + leaf stringData { + type string { + length "0..255"; + } + description "String data to BE included in the payload"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping evms_ActionSyslog-group { + description "Generate a syslog message"; + leaf priority { + type string { + length "0..29"; + } + description "Priority of the syslog message"; + } + leaf message { + type string { + length "0..256"; + } + description "Syslog message text"; } + } - // Number of packets received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Number of Packets Received"; + grouping evms_SystemPolicies-group { + description "Configure all system policies"; + container policy-items { + list SystemPolicy-list { + config "false"; + key "scriptName"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses evms_SystemPolicy-group; + description "Configure a system policy list"; + } + description "Configure a system policy"; } + } - // Number of entries aged - // Type is an MO-Defined-Type - leaf entriesAged { + grouping evms_SystemPolicy-group { + description "Configure a system policy"; + leaf scriptName { config "false"; - description "Number of Entries Aged"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string { + length "1..29"; + } + description "Name of the system policy"; } - - // Number of packets received in error - // Type is an MO-Defined-Type - leaf errPktRcvd { + leaf evType { config "false"; - description "Number of Packets Received in Error"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint32; + description "Base event type of system policy"; } - - // Number of packets discarded - // Type is an MO-Defined-Type - leaf pktDiscarded { + leaf description { config "false"; - description "Number of Packets Discarded"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string { + length "0..128"; + } + description "System policy description"; } - - // Number of unrecognized TLVs - // Type is an MO-Defined-Type - leaf unrecogTLV { + leaf overridable { config "false"; - description "Number of Unrecognized TLVs"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type boolean; + default "true"; + description "System policy overridable attribute"; } } - grouping lldp_InstStats-group { + grouping l2_InbandIf-group { + description "Layer2 Inband Interface"; - // LLDP Inst Stats Number of packets sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Number of Packets Sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Number of packets received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Number of Packets Received"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; - } - - // Number of entries aged - // Type is an MO-Defined-Type - leaf entriesAged { - config "false"; - description "Number of Entries Aged"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr1024; + description "Description"; } - // Number of packets received in error - // Type is an MO-Defined-Type - leaf errPktRcvd { - config "false"; - description "Number of Packets Received in Error"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Number of packets discarded - // Type is an MO-Defined-Type - leaf pktDiscarded { - config "false"; - description "Number of Packets Discarded"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // IDEp represents a inband learned end point on the switch. + // This object is owned by the end point manager + container idep-items { + list IDEp-list { + config "false"; + key "mac encap"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses opflex_IDEp-group; + description "Inband Discovered Endpoint list"; } + description "Inband Discovered Endpoint"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Device represents an opflex capable device that is connected + // to the fabric. + // This object is owned by the opflexelem + container odev-items { + list ODev-list { + config "false"; + key "devId"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses opflex_ODev-group; + description "Openflex Device list"; + } + description "Openflex Device"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rsinbandConf-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses l2_RsInbandConf_source-group; + description "Inband Attachment"; } - // This objects hold per MCP instance information. There is only - // one instance of MCP running in the system today - container inst-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package mcp - uses mcp_Inst-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping mcp_Inst-group { - - // Transmission frequency of MCP packets on each L2 - // interface in seconds - // Type is an MO-Defined-Type - leaf txFreq { + grouping fv_VNode-group { + description "Vleaf Node"; + leaf devId { config "false"; - description "Transmission Frequency"; - - // Type is an MO-Defined-Type - type mcp_TxFreq; + type uint32; } - // Loop detection multiplier i.e. number of MCP packets, - // when received consecutively from same {leaf, port}, - // treated as loop condition - // Type is an MO-Defined-Type - leaf loopDetectMult { + // type of the device + leaf devType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mcp_LoopDetectMult; + type opflex_DeviceType; + description "TBD"; } - leaf key { + leaf lNodeDn { config "false"; type string; + description "LNode Dn"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + leaf id { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Id; + description "Id"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + container rtfvVNode-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + list RtFvVNode-list { + config "false"; + key "tDn"; + + uses fv_RtFvVNode_target-group; + description "Relation to Virtual Node list"; + } + description "Relation to Virtual Node"; } - // This object holds mcp information that is operated at a - // interface level - container if-items { - list If-list { + container rslNode-items { + + list RsLNode-list { config "false"; - key "id"; + key "tDn"; - // Added containment: Prefix=if - // Acquired From Package mcp - uses mcp_If-group; + uses fv_RsLNode_source-group; + description "Distributed Virtual Switch list"; } + description "Distributed Virtual Switch"; } } - grouping mcp_If-group { + grouping opflex_ODev-group { + description "Openflex Device"; + leaf devId { + config "false"; + type uint32; + } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // type of the device + leaf devType { config "false"; + + type opflex_DeviceType; description "TBD"; + } + leaf lNodeDn { + config "false"; + type string; + description "LNode Dn"; + } + leaf encap { + config "false"; + type string; + } + leaf hostName { + config "false"; + type string; + description "Fqdn of the Host"; + } + leaf ipAddr { + config "false"; + type string; + description "IPAddress of the Host"; + } + leaf numHB { + config "false"; + type uint32; + } + leaf lastNumHB { + config "false"; + type uint32; + } - // Type is an MO-Defined-Type - type mcp_OperSt; + // channel failure + leaf hbStatus { + config "false"; + + type opflex_HbStatus; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Operational State + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type opflex_DevOperState; + description "Status"; + } + leaf maxMissHb { + config "false"; + type uint32; + } + leaf pcIfId { + config "false"; + type uint32; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // ep transition status + leaf transitionStatus { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type opflex_EpTransitionStatus; + description "TBD"; + } + leaf portId { + config "false"; + type uint32; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // type of the device + leaf state { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type comp_HostState; + description "TBD"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { + leaf name { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Name; + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - container rtvrfMbr-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Id; + description "Id"; + } + + // DeviceCap represents the capabilities of an opflex + // capable device that is connected to the fabric. + // This object is owned by the opflexelem + container odevcap-items { + + uses opflex_ODevCap-group; + } + + // VNode represents an opflex capable vnode that is connected + // to the fabric. + container vnode-items { + list VNode-list { + config "false"; + key "devId"; + + uses fv_VNode-group; + description "Vleaf Node list"; + } + description "Vleaf Node"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Device represents an opflex capable device that is connected + // to the fabric. + // This object is owned by the opflexelem + container opnic-items { + list OPNic-list { config "false"; - key "tDn"; + key "mac"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses opflex_OPNic-group; + description "Hypervisor PNic list"; } + description "Hypervisor PNic"; } } - grouping vpc_Entity-group { + grouping opflex_ODevCap-group { + leaf version { + config "false"; + type string; + } + leaf devId { + config "false"; + type uint32; + } + leaf lNodeDn { + config "false"; + type string; + description "LNode Dn"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Id; + description "Id"; + } + } + + grouping opflex_OPNic-group { + description "Hypervisor PNic"; + leaf mac { + config "false"; + type address_Mac; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // type of the device + leaf state { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type comp_NicState; + description "TBD"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { + leaf name { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type naming_Name; + description "Name"; } - // This objects hold per vpc instance information. There is only - // one instance of vpcm running in the system today - container inst-items { + leaf id { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vpc - uses vpc_Inst-group; + type naming_Id; + description "Id"; } } - grouping vpc_Inst-group { + grouping l2_ExtIf-group { + description "Layer 2 Extending Interface"; + + // Extension chassis ID + leaf extChasId { + + type l2_ExtChasId; + description "Extension Chassis ID"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // + container vlan-items { + list MacVlan-list { + key "id"; - // Type is an MO-Defined-Type - type vpc_AutoRecoveryIntvl; + uses l2_MacVlan-group; + description "Per-VLAN MAC address configuration and management list"; + } + description "Per-VLAN MAC address configuration and management"; } - // Enable peer switch on vPC pair switches - // Type is an MO-Defined-Type - leaf peerSwitch { - description "vPC pair switches"; + // DN: sys/mac/if- + container if-items { + list MacIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses l2_MacIf-group; + description "Per-Interface MAC address configuration and management list"; + } + description "Per-Interface MAC address configuration and management"; } + } - // Delay in bringing up the vPC links - // Type is an MO-Defined-Type - leaf delayRestoreVPC { - description "Delay restore for vPC links"; - - // Type is an MO-Defined-Type - type vpc_DelayRestoreVPC; - } + grouping l2_Static-group { + description "Static Mac Addresses"; - // Delay in bringing-up interface-vlan - // Type is an MO-Defined-Type - leaf delayRestoreSVI { - description "Delay restore for SVI"; + // DN: sys/mac/static/vlan-[]-mac- + container vlan-items { + list StaticEntry-list { + key "vlan staticMacAddress"; - // Type is an MO-Defined-Type - type vpc_DelayRestoreSVI; + uses l2_StaticEntry-group; + description "Static Mac Address Entry list"; + } + description "Static Mac Address Entry"; } - // Delay in bringing-up the peer-link - // Type is an MO-Defined-Type - leaf delayPeerLinkBringup { - description "Peer link delay timer"; + // DN: sys/mac/static/vni--mac- + container vni-items { + list StaticEntryVni-list { + key "vni staticMacAddress"; - // Type is an MO-Defined-Type - type vpc_DelayPeerLinkBringup; + uses l2_StaticEntryVni-group; + description "Static Mac Address Entry for vni interface list"; + } + description "Static Mac Address Entry for vni interface"; } + } - // Interface vlans to exclude from suspension when dual-active - // Type is an MO-Defined-Type - leaf excludeSVI { - description "SVI List excluded from suspension when dual-active"; - - // Type is an MO-Defined-Type - type vpc_ExcludeSVI; + grouping l2_StaticEntry-group { + description "Static Mac Address Entry"; + leaf staticMacAddress { + type address_Mac; + description "MAC"; } - - // Suspend vPC locally - // Type is an MO-Defined-Type - leaf adminSt { - description "vPC suspend locally"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf vlan { + type string; + description "Vlan"; } - - // Enable auto recovery if peer is presumed non-operational - // Type is an MO-Defined-Type - leaf fastConvergence { - description "Fast Convergence"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf dropAction { + type boolean; + default "true"; + description "Drop"; } - // Layer 3 Peer Router status - // Type is an MO-Defined-Type - leaf l3PeerRouter { - description "L3 Peer Router"; + leaf interface { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Interface"; } + } - // Layer 3 Peer Router Syslog Status - // Type is an MO-Defined-Type - leaf l3PeerRouterSyslog { - description "L3 Peer Router Syslog"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping l2_StaticEntryVni-group { + description "Static Mac Address Entry for vni interface"; + leaf staticMacAddress { + type address_Mac; + description "MAC address for vni interface"; } - - // Layer 3 Peer Router Syslog Interval - // Type is an MO-Defined-Type - leaf l3PeerRouterSyslogInterval { - description "L3 Peer Router Syslog Interval"; - - // Type is an MO-Defined-Type - type vpc_L3PeerRouterSyslogInterval; + leaf vni { + type uint32 { + range "1..16777215"; + } + description "Virtual Network Identifier"; } - - // role - // Type is an MO-Defined-Type - leaf operRole { - config "false"; - description "Operational Role"; - - // Type is an MO-Defined-Type - type vpc_Role; + leaf peerIpv4 { + type address_Ipv4; + description "IPv4 Address of the Peer"; } + } - // old role - // Type is an MO-Defined-Type - leaf oldRole { - config "false"; - description "Old Role"; - - // Type is an MO-Defined-Type - type vpc_Role; - } + grouping l2_MacAddressTable-group { + description "MAC Address Table"; - // lacp role - // Type is an MO-Defined-Type - leaf lacpRole { - config "false"; - description "Lacp Role"; + // MacAddress DN: sys/mac/table/vlan-[vlan-x]-mac- + container vlan-items { + list MacAddressEntry-list { + config "false"; + key "vlan macAddress"; - // Type is an MO-Defined-Type - type vpc_Role; + uses l2_MacAddressEntry-group; + description "MAC Address Entry list"; + } + description "MAC Address Entry"; } + } - // summarized role - // Type is an MO-Defined-Type - leaf summOperRole { + grouping l2_MacAddressEntry-group { + description "MAC Address Entry"; + leaf macAddress { config "false"; - description "Summarized Oper Role"; - - // Type is an MO-Defined-Type - type vpc_SummRole; + type address_Mac; + description "MAC"; } - // local system priority - // Type is an MO-Defined-Type - leaf localPrio { + // Primary, Gateway... + leaf type { config "false"; - description "Local System Priority"; - // Type is an MO-Defined-Type - type vpc_SysPrio; + type l2_MacType; + description "Type"; } - - // peer system priority - // Type is an MO-Defined-Type - leaf peerPrio { + leaf vlan { config "false"; - description "Peer System Priority"; - - // Type is an MO-Defined-Type - type vpc_SysPrio; + type string; + description "Vlan"; } - - // vpc system priority - // Type is an MO-Defined-Type - leaf vpcPrio { + leaf static { config "false"; - description "Vpc System Priority"; - - // Type is an MO-Defined-Type - type vpc_SysPrio; + type boolean; + description "Static"; } - leaf localMAC { + leaf secure { config "false"; - type address_Mac; + type boolean; + description "Secure"; } - leaf peerMAC { + leaf ntfy { config "false"; - type address_Mac; + type boolean; + description "NTFY"; } - leaf vpcMAC { + leaf routed { config "false"; - type address_Mac; + type boolean; + description "Routed"; } - - // various operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf age { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type vpc_DomOperSt; + type uint32; + description "Age - seconds since last seen"; } - // peer version - // Type is an MO-Defined-Type - leaf peerVersion { + leaf port { config "false"; - description "Peer Version"; - // Type is an MO-Defined-Type - type vpc_PeerVersion; + type nw_IfId; + description "Port"; } - // batched vpc inventory - // Type is an MO-Defined-Type - leaf batchedVpcInv { + leaf macInfo { config "false"; - description "Batched Vpc Inventory"; - // Type is an MO-Defined-Type - type vpc_BatchedVpcInv; + type l2_MacInfo; + description "Additional Information on the MAC"; } - leaf issuFromVer { - config "false"; + } + + grouping l2_MacVlan-group { + description "Per-VLAN MAC address configuration and management"; + leaf id { type string; + description "Vlan ID for per-VLAN configuration and management"; } - leaf issuToVer { - config "false"; - type string; + leaf vlanLimit { + type uint32 { + range "100..196000"; + } + default "196000"; + description "Per-VLAN limit for learnt MAC addresses"; } + } - // Peer state - // Type is an MO-Defined-Type - leaf peerSt { - config "false"; - description "Peer State"; + grouping l2_MacIf-group { + description "Per-Interface MAC address configuration and management"; - // Type is an MO-Defined-Type - type vpc_PeerSt; + // naming property + leaf id { + + type nw_IfId; + description "Interface ID for per-interface configuration and management"; + } + leaf ifLimit { + type uint32 { + range "100..196000"; + } + default "196000"; + description "Per-interface limit for learnt MAC addresses"; } + } - // Peer status reason code - // Type is an MO-Defined-Type - leaf peerStQual { - config "false"; - description "Peer Status Qualifier"; + grouping cdp_Entity-group { + description "CDP Entity"; - // Type is an MO-Defined-Type - type vpc_PeerStQual; + // This objects hold per cdp instance information. There is + // only one instance of cdp running in the system today + container inst-items { + + uses cdp_Inst-group; + description "CDP Instance"; } + } - // Dual active status - // Type is an MO-Defined-Type - leaf dualActiveSt { - config "false"; - description "Dual Active Status"; + grouping cdp_Inst-group { + description "CDP Instance"; - // Type is an MO-Defined-Type - type vpc_DualActiveSt; + // CDP version supported by the device + leaf ver { + + type cdp_Ver; + description "Version"; } - // Compatibility status - // Type is an MO-Defined-Type - leaf compatSt { - config "false"; - description "Compatibility Status"; + // What to advertise in the device id to the peer? + // This will be the identifier of the local switch + // to the remote peer + leaf devIdType { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type cdp_DevIdT; + description "Device ID Type"; } - // Compatibility reason code - // Type is an MO-Defined-Type - leaf compatQual { - config "false"; - description "Compatibility Qualifier"; + // Sets the time that cdp holds onto neighbor + // information before aging it out + leaf holdIntvl { - // Type is an MO-Defined-Type - type vpc_CompatQual; - } - leaf compatQualStr { - config "false"; - type string; + type cdp_HoldIntvl; + description "Hold Interval"; } - // Type-2 compatibility status - // Type is an MO-Defined-Type - leaf type2CompatSt { - config "false"; - description "Type-2 Compatibility Status"; + // Sets the transmission frequency of cdp + // advertisements in seconds + leaf txFreq { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type cdp_TxFreq; + description "Transmit Frequency"; } - // Type-2 compatibility reason code - // Type is an MO-Defined-Type - leaf type2CompatQual { + // System Name + leaf sysName { config "false"; - description "Type-2 Compatibility Qualifier"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type cdp_SysName; + description "System Name"; } - leaf type2CompatQualStr { - config "false"; - type string; + leaf pnpStartVlan { + type uint16 { + range "1..4094"; + } + default "1"; + description "pnp startup-vlan configuration"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Admin State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + + // This object holds cdp information that is operated at a + // interface level container if-items { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package vpc - uses vpc_If-group; + uses cdp_If-group; + description "CDP Interface list"; } + description "CDP Interface"; } + } - // vpc keepalive definitions - container keepalive-items { + grouping cdp_If-group { + description "CDP Interface"; - // Added containment as a singleton: Prefix=keepalive - // Acquired From Package vpc - uses vpc_Keepalive-group; + // Port description + leaf portDesc { + + type naming_Descr; + description "Port Description"; } - // This object holds parameters information for an app. - container params-items { - list AppParams-list { - config "false"; - key "appId"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=params - // Acquired From Package vpc - uses vpc_AppParams-group; - } + type cdp_OperSt; + description "Operational State"; } - // Rel-def from vpcInstPolCons - container rsvpcInstPolCons-items { + // Operational state qualifier + leaf operStQual { + config "false"; - // Added containment as a singleton: Prefix=rsvpcInstPolCons - // Acquired From Package vpc - uses vpc_RsVpcInstPolCons_source-group; + type cdp_OperStQual; + description "Operational State Qualifier"; } - } - grouping vpc_If-group { + // Native vlan + leaf nativeVlan { + config "false"; - // vpc id - // Type is an MO-Defined-Type + type cdp_VlanId; + description "Native Vlan"; + } + + // Interface ID of this endpoint leaf id { - description "VPC ID"; - // Type is an MO-Defined-Type - type vpc_Id; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // local operational status - // Type is an MO-Defined-Type - leaf localOperSt { - config "false"; - description "Local Operational State"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type vpc_OperSt; + type nw_IfAdminSt; + description "Admin State"; } - // remote operational status - // Type is an MO-Defined-Type - leaf remoteOperSt { - config "false"; - description "Remote Operational State"; + // This object holds cdp neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "index"; - // Type is an MO-Defined-Type - type vpc_OperSt; + uses cdp_AdjEp-group; + description "CDP Adjacency list"; + } + description "CDP Adjacency"; } - // Compatibility status - // Type is an MO-Defined-Type - leaf compatSt { - config "false"; - description "Compatibility Status"; + // This object holds cdp intf statistics operational information. + // This is a singleton within an intferace + container ifstats-items { - // Type is an MO-Defined-Type - type vpc_CompatSt; + uses cdp_IfStats-group; + description "Interface Statistics"; } - // Compatibility reason code - // Type is an MO-Defined-Type - leaf compatQual { - config "false"; - description "Compatibility Qualifier"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type vpc_CompatQual; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - leaf compatQualStr { + } + + grouping cdp_AdjEp-group { + description "CDP Adjacency"; + + // A unique value for each device from which CDP + // messages are being received + leaf index { config "false"; - type string; + + type cdp_DevIndex; + description "Index"; } - // Configured vlans - // Type is an MO-Defined-Type - leaf cfgdVlans { + // Remote version + leaf ver { config "false"; - description "Configured Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_NbrVer; + description "Version"; } - // Configured trunk vlans - // Type is an MO-Defined-Type - leaf cfgdTrunkVlans { + // Remote device ID + leaf devId { config "false"; - description "Configured Trunk Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_DevId; + description "Device ID"; } - leaf cfgdAccessVlan { + + // Remote Port ID + leaf portId { config "false"; - type string; + + type cdp_PortId; + description "Port ID"; } - // Up vlans - // Type is an MO-Defined-Type - leaf upVlans { + // Remote Platform ID + leaf platId { config "false"; - description "Up Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_PlatId; + description "Platform ID"; } - // Suspended vlans - // Type is an MO-Defined-Type - leaf suspVlans { + // Capabilities + leaf cap { config "false"; - description "Suspended Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_CapT; + description "Capabilities"; } - // Configured vlans on peer - // Type is an MO-Defined-Type - leaf peerCfgdVlans { + // Duplex advertised by neighbor + leaf duplex { config "false"; - description "Peer Configured Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_Duplex; + description "Duplex"; } - // Up vlans on peer - // Type is an MO-Defined-Type - leaf peerUpVlans { + // Native vlan advertised by neighbor + leaf nativeVlan { config "false"; - description "Peer Up Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type cdp_VlanId; + description "Native Vlan"; } - // This object holds parameters information for an app. - container params-items { - list AppParams-list { - config "false"; - key "appId"; + // MTU advertised by neighbor + leaf mtu { + config "false"; - // Added containment: Prefix=params - // Acquired From Package vpc - uses vpc_AppParams-group; - } + type cdp_MTU; + description "MTU"; } - // Rel-def from vpcConf - container rsvpcConf-items { + // System name advertised by neighbor + leaf sysName { + config "false"; - // Added containment as a singleton: Prefix=rsvpcConf - // Acquired From Package vpc - uses vpc_RsVpcConf_source-group; + type cdp_SysName; + description "System Name"; } - } - grouping vpc_AppParams-group { - - // Application Sap Id - // Type is an MO-Defined-Type - leaf appId { + // System location advertised by neighbor + leaf sysLoc { config "false"; - description "Application SAP ID"; - // Type is an MO-Defined-Type - type vpc_AppId; + type cdp_SysLoc; + description "System Location"; } - // Local Reason Code - // Type is an MO-Defined-Type - leaf locRsnCode { + leaf name { config "false"; - description "Local Reason Code"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Local Param Length - // Type is an MO-Defined-Type - leaf locParamLen { - config "false"; - description "Local Param Length"; + // Management address received from cdp neighbor + container mgmt-items { + list MgmtAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_ParamLen; + uses cdp_MgmtAddr-group; + description "Management Address list"; + } + description "Management Address"; } - // Local Param Value - // Type is an MO-Defined-Type - leaf locParamVal { - config "false"; - description "Local Param Value"; + // Interface address received from cdp neighbor + container intf-items { + list IntfAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_ParamVal; + uses cdp_IntfAddr-group; + description "Interface Address list"; + } + description "Interface Address"; } - // Remote Reason Code - // Type is an MO-Defined-Type - leaf remRsnCode { - config "false"; - description "Remoe Reason Code"; + // This object holds cdp adj statistics operational information. + // This is a singleton within an adjacency + container adjstats-items { - // Type is an MO-Defined-Type - type vpc_CompatQual; + uses cdp_AdjStats-group; + description "Adjacency Statistics"; } + } - // Remote Param Length - // Type is an MO-Defined-Type - leaf remParamLen { + grouping cdp_MgmtAddr-group { + description "Management Address"; + leaf addr { config "false"; - description "Remote Param Length"; - - // Type is an MO-Defined-Type - type vpc_ParamLen; + type address_Ip; + description "Address"; } + } - // Remote Param Value - // Type is an MO-Defined-Type - leaf remParamVal { + grouping cdp_IntfAddr-group { + description "Interface Address"; + leaf addr { config "false"; - description "Remote Param Value"; - - // Type is an MO-Defined-Type - type vpc_ParamVal; + type address_Ip; + description "Address"; } + } - // This object holds per app per param information . - container param-items { - list AppParamInfo-list { - config "false"; - key "paramName"; - - // Added containment: Prefix=param - // Acquired From Package vpc - uses vpc_AppParamInfo-group; + grouping cdp_AdjStats-group { + description "Adjacency Statistics"; + leaf adjExpTs { + config "false"; + type union { + type string; + type uint64; } + description "Adjacency Expiration Timestamp"; } } - grouping vpc_AppParamInfo-group { - leaf paramName { + grouping cdp_IfStats-group { + description "Interface Statistics"; + + // CDP Interface Stats Number of v1 packets sent + leaf v1Sent { config "false"; - type string; + + type nw_Counter32; + description "Number of V1 Packets Sent"; } - // Param Type - // Type is an MO-Defined-Type - leaf paramType { + // Number of v2 packets sent + leaf v2Sent { config "false"; - description "Parameter Type"; - // Type is an MO-Defined-Type - type vpc_ParamType; + type nw_Counter32; + description "Number of V2 Packets Sent"; } - leaf locParamVal { + + // Number of packets failed to send + leaf failedSent { config "false"; - type string; + + type nw_Counter32; + description "Number of Packets Failed to Send"; } - leaf remParamVal { + + // Number of valid v1 packets received + leaf validV1Rcvd { config "false"; - type string; - } - } - grouping vpc_Keepalive-group { + type nw_Counter32; + description "Number of Valid V1 Packets Received"; + } - // vrf name - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Number of v2 packets received + leaf validV2Rcvd { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf srcIp { - type address_Ip; + type nw_Counter32; + description "Number of Valid V2 Packets Received"; } - leaf srcIpCli { + + // Number of unsupported version packets received + leaf unSupVerRcvd { config "false"; - type boolean; - default "true"; - } - leaf destIp { - type address_Ip; + + type nw_Counter32; + description "Number of Unsupported Version Packets Received"; } - // port number - // Type is an MO-Defined-Type - leaf udpPort { - description "UDP Port"; + // Number of checksum error packets received + leaf cksumErrRcvd { + config "false"; - // Type is an MO-Defined-Type - type comm_Port; + type nw_Counter32; + description "Number of Checksum Error Packets Received"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Number of malformed packets received + leaf malformRcvd { + config "false"; - // Type is an MO-Defined-Type - type vpc_KeepaliveInterval; + type nw_Counter32; + description "Number of Malform Packets Received"; } + } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + grouping lldp_Entity-group { + description "LLDP Entity"; - // Type is an MO-Defined-Type - type vpc_KeepaliveTout; + // This objects hold per lldp instance information. There is + // only one instance of lldp running in the system today + container inst-items { + + uses lldp_Inst-group; + description "LLDP Instance"; } + } - // tos config type - // Type is an MO-Defined-Type - leaf tosCfgType { - description "TOS Type"; + grouping lldp_Inst-group { + description "LLDP Instance"; - // Type is an MO-Defined-Type - type vpc_TosCfgType; + // Amount of time in seconds that a receiving device + // should hold the information sent by your device + // before discarding it + leaf holdTime { + + type lldp_HoldTime; + description "Hold Time"; } - // tos byte - // Type is an MO-Defined-Type - leaf tosByte { - description "TOS Byte"; + // Delay time in seconds for lldp to initialize on any + // interface + leaf initDelayTime { - // Type is an MO-Defined-Type - type vpc_TosByte; + type lldp_InitDelayTime; + description "Init Delay Time"; } - // tos value - // Type is an MO-Defined-Type - leaf tosValue { - description "TOS Value"; + // Transmission frequency of lldp updates in seconds + leaf txFreq { - // Type is an MO-Defined-Type - type vpc_TosValue; + type lldp_TxFreq; + description "Transmission Frequency"; } - // tos type - // Type is an MO-Defined-Type - leaf tosType { - description "TOS Type"; + // Some tlvs are optional as per LLDP protocol (802.1AB) + // specifications. Use these selectors to turn on/off + leaf optTlvSel { - // Type is an MO-Defined-Type - type vpc_TosType; + type lldp_OptTlvSel; + description "Optional TLV Selector"; } - // precedence value - // Type is an MO-Defined-Type - leaf precValue { - description "Precedence Value"; + // System description + leaf sysDesc { - // Type is an MO-Defined-Type - type vpc_PrecValue; + type naming_Descr; + description "System Description"; } - // precedence type - // Type is an MO-Defined-Type - leaf precType { - description "Precedence Type"; + // PortId Subtype + leaf portIdSubType { - // Type is an MO-Defined-Type - type vpc_PrecType; + type lldp_PortIdSubType; + description "PortId SubType"; } - // flush timeout - // Type is an MO-Defined-Type - leaf flushTout { - description "Flush Timeout"; + // Local management address + container mgmt-items { + list MgmtAddr-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type vpc_FlushTout; + uses lldp_MgmtAddr-group; + description "Management Address list"; + } + description "Management Address"; } - // operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This object holds lldp information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type vpc_KeepaliveOperSt; + uses lldp_If-group; + description "LLDP Interface list"; + } + description "LLDP Interface"; } - // send interface - // Type is an MO-Defined-Type - leaf sendIf { - config "false"; - description "Send Interface"; + // This object holds lldp inst statistics operational information. + // This is a singleton within lldp + container inststats-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses lldp_InstStats-group; + description "LLDP Statistics"; } - // recv interface - // Type is an MO-Defined-Type - leaf recvIf { - config "false"; - description "Received Interface"; + container rslldpInstPolCons-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses lldp_RsLldpInstPolCons_source-group; + description "Lldp Instance Policy Consumption"; } + } - // last send time - // Type is an MO-Defined-Type - leaf sendTime { + grouping lldp_MgmtAddr-group { + description "Management Address"; + leaf addr { config "false"; - description "Last Send Time"; - - // Type is an MO-Defined-Type - type vpc_Time; + type address_Ip; + description "Address"; } + } - // last recv time - // Type is an MO-Defined-Type - leaf recvTime { - config "false"; - description "Last Received Time"; + grouping lldp_If-group { + description "LLDP Interface"; - // Type is an MO-Defined-Type - type vpc_Time; + // Receive admin state + leaf adminRxSt { + + type lldp_AdminSt; + description "Admin Receive State"; } - // first recv time - // Type is an MO-Defined-Type - leaf firstRecvTime { - config "false"; - description "First Received Time"; + // Transmit admin state + leaf adminTxSt { - // Type is an MO-Defined-Type - type vpc_Time; + type lldp_AdminSt; + description "Admin Transmit State"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // System description + leaf sysDesc { - // Type is an MO-Defined-Type - type naming_Name; + type naming_Descr; + description "System Description"; } - // Specify link used for peer communication - container peerlink-items { + leaf tlvSetVlan { - // Added containment as a singleton: Prefix=peerlink - // Acquired From Package vpc - uses vpc_PeerLink-group; + type lldp_MgmtVlanId; + description "Tlv vlan"; + } + leaf tlvSetMgmtIpv4 { + type address_Ip; + description "Tlv ipv4"; + } + leaf tlvSetMgmtIpv6 { + type address_Ip; + description "Tlv ipv6"; } - } - - grouping vpc_PeerLink-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port description + leaf portDesc { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Port Description"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf portDCBXPVer { - // Type is an MO-Defined-Type - type naming_Descr1024; + type lldp_DCBXPVerType; + description "DCBXP Version"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds lldp neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses lldp_AdjEp-group; + description "LLDP Adjacency Endpoint list"; + } + description "LLDP Adjacency Endpoint"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - container rtvrfMbr-items { + // This object holds lldp intf statistics operational information. + // This is a singleton within an interface + container ifstats-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses lldp_IfStats-group; + description "Interface Statistics"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + container rtvrfMbr-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping fv_EpNs-group { + grouping lldp_AdjEp-group { + description "LLDP Adjacency Endpoint"; - // Represents the number of EPs currently - // discovered - // Type is an MO-Defined-Type - leaf epCount { + // Neighbor ID + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type fv_EpCount; + type lldp_AdjId; + description "ID"; } - } - grouping gold_Entity-group { - leaf description { + // Neighbor chassis id type + leaf chassisIdT { config "false"; - type string; + + type lldp_ChassisIdT; + description "Chassis ID Type"; } - // Module - container module-items { - list Module-list { - config "false"; - key "id"; + // Neighbor chassis id value + leaf chassisIdV { + config "false"; - // Added containment: Prefix=module - // Acquired From Package gold - uses gold_Module-group; - } + type lldp_ChassisIdV; + description "Chassis ID Value"; } - } - - grouping gold_Module-group { - // Module id - // Type is an MO-Defined-Type - leaf id { + // Neighbor port type + leaf portIdT { config "false"; - description "Module Id"; - // Type is an MO-Defined-Type - type gold_Id; + type lldp_PortIdT; + description "Port ID Type"; } - // Module name - // Type is an MO-Defined-Type - leaf description { + // Neighbor port value + leaf portIdV { config "false"; - description "Module Description"; - // Type is an MO-Defined-Type - type gold_Name; + type lldp_PortIdV; + description "Port ID Value"; } - // Diagnostic Bootup Level - // Type is an MO-Defined-Type - leaf diagBootLevel { + // Neighbor system name + leaf sysName { config "false"; - description "Module Diagnostic Bootup Level"; - // Type is an MO-Defined-Type - type gold_bootLevel; + type lldp_SysName; + description "System Name"; } - // Module Diag Status - // Type is an MO-Defined-Type - leaf diagStatus { + // Neighbor system description + leaf sysDesc { config "false"; - description "Module Diagnostic Status"; - // Type is an MO-Defined-Type - type gold_moduleDiagStatus; + type lldp_NbrSysDesc; + description "System Description"; } - // Test - container test-items { - list Test-list { - config "false"; - key "id"; + // Neighbor port description + leaf portDesc { + config "false"; - // Added containment: Prefix=test - // Acquired From Package gold - uses gold_Test-group; - } + type naming_Descr; + description "Port Description"; } - } - - grouping gold_Test-group { - // Test id - // Type is an MO-Defined-Type - leaf id { + // Neighbor System Capability + leaf capability { config "false"; - description "Test Id"; - // Type is an MO-Defined-Type - type gold_Id; + type lldp_Capability; + description "Capability"; } - // Test name - // Type is an MO-Defined-Type - leaf name { + // Neighbor Enabled Capability + leaf enCap { config "false"; - description "Test Name"; - // Type is an MO-Defined-Type - type gold_Name; + type lldp_Capability; + description "Enabled Capability"; } - // Test first fail time - // Type is an MO-Defined-Type - leaf firstFailTime { + // Neighbor Management Address + leaf mgmtIp { config "false"; - description "Test First Failure Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type lldp_MgmtIp; + description "Management Address"; } - // Test last fail time - // Type is an MO-Defined-Type - leaf lastFailTime { + // Org tlv, Neighbor port vlan + leaf portVlan { config "false"; - description "Test Last Failure Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type lldp_PortVlan; + description "Port Vlan"; } - // Test last execution time - // Type is an MO-Defined-Type - leaf lastExecutionTime { + leaf name { config "false"; - description "Test Last Execution Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Test last pass time - // Type is an MO-Defined-Type - leaf lastPassTime { - config "false"; - description "Test Last Pass Time"; + // This object holds lldp adj statistics operational information. + // This is a singleton within an adjacency + container adjstats-items { - // Type is an MO-Defined-Type - type gold_TestTime; + uses lldp_AdjStats-group; + description "Adjacency Statistics"; } + } - // Test next execution time - // Type is an MO-Defined-Type - leaf nextExecutionTime { + grouping lldp_AdjStats-group { + description "Adjacency Statistics"; + } + + grouping lldp_IfStats-group { + description "Interface Statistics"; + + // LLDP Interface Stats Number of packets sent + leaf pktSent { config "false"; - description "Test Next Execution Time"; - // Type is an MO-Defined-Type - type gold_TestTime; + type nw_Counter64; + description "Number of Packets Sent"; } - // Test result - // Type is an MO-Defined-Type - leaf result { + // Number of packets received + leaf pktRcvd { config "false"; - description "Test Result"; - // Type is an MO-Defined-Type - type gold_Result; + type nw_Counter64; + description "Number of Packets Received"; } - // Test failure reason - // Type is an MO-Defined-Type - leaf resultReason { + // Number of entries aged + leaf entriesAged { config "false"; - description "Test Failure Reason"; - // Type is an MO-Defined-Type - type gold_TestFailReason; + type nw_Counter64; + description "Number of Entries Aged"; } - leaf runCount { - config "false"; - type uint32; - } - leaf failCount { - config "false"; - type uint32; - } - leaf consecutiveFailCount { + + // Number of packets received in error + leaf errPktRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Number of Packets Received in Error"; } - // Aborted Ports - // Type is an MO-Defined-Type - leaf portsAborted { + // Number of packets discarded + leaf pktDiscarded { config "false"; - description "List of Aborted Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Discarded"; } - // Error Disabled Ports - // Type is an MO-Defined-Type - leaf portsErrorDisabled { + // Number of unrecognized TLVs + leaf unrecogTLV { config "false"; - description "List of Error Disabled Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Unrecognized TLVs"; } + } - // Failed Ports - // Type is an MO-Defined-Type - leaf portsFailing { + grouping lldp_InstStats-group { + description "LLDP Statistics"; + + // LLDP Inst Stats Number of packets sent + leaf pktSent { config "false"; - description "List of Failing Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Sent"; } - // Incomplete Ports - // Type is an MO-Defined-Type - leaf portsIncomplete { + // Number of packets received + leaf pktRcvd { config "false"; - description "List of Incomplete Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Received"; } - // Passed Ports - // Type is an MO-Defined-Type - leaf portsPassing { + // Number of entries aged + leaf entriesAged { config "false"; - description "List of Passing Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Entries Aged"; } - // Untested Ports - // Type is an MO-Defined-Type - leaf portsUntested { + // Number of packets received in error + leaf errPktRcvd { config "false"; - description "List of Untested Ports"; - // Type is an MO-Defined-Type - type gold_PortList; + type nw_Counter64; + description "Number of Packets Received in Error"; } - leaf testAttributes { + + // Number of packets discarded + leaf pktDiscarded { config "false"; - type string; + + type nw_Counter64; + description "Number of Packets Discarded"; } - // Test Interval - // Type is an MO-Defined-Type - leaf testInterval { + // Number of unrecognized TLVs + leaf unrecogTLV { config "false"; - description "Health Monitor Test Interval"; - // Type is an MO-Defined-Type - type gold_TestTime; + type nw_Counter64; + description "Number of Unrecognized TLVs"; } } - grouping igmp_Entity-group { + grouping vpc_Entity-group { + description "VPC Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per igmp instance information. There is only - // one instance of igmp running in the system today + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This objects hold per vpc instance information. There is only + // one instance of vpcm running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package igmp - uses igmp_Inst-group; + uses vpc_Inst-group; + description "VPC Instance"; } } - grouping igmp_Inst-group { - leaf heavyTemplate { - type boolean; - } + grouping vpc_Inst-group { + description "VPC Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // Control - // Inherited From ipmc:AInst - // Type is an MO-Defined-Type - leaf instCtrl { - description "Inst Controls"; - - // Type is an MO-Defined-Type - type ipmc_InstCtrl; - } - - // Bootup route add delay to RIB - // Inherited From ipmc:AInst - // Type is an MO-Defined-Type - leaf bootupDelay { - description "Bootup Route Add Delay"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type ipmc_BootupDelay; - } - leaf flushRoute { - type boolean; - } - leaf rtrAlert { - type boolean; - } - leaf anyQueryDest { - type boolean; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This objects hold per igmp external domain information - container extdom-items { - list ExtDom-list { + // configure orphan ports to be brought down on Secondary peerlink failure + container orphan-items { + list OrphanPort-list { key "id"; - // Added containment: Prefix=extdom - // Acquired From Package igmp - uses igmp_ExtDom-group; + uses vpc_OrphanPort-group; + description "Orphan Port Suspend list"; } + description "Orphan Port Suspend"; } - // This objects hold per igmp domain information + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system container dom-items { - list Dom-list { - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package igmp - uses igmp_Dom-group; - } - } - - // IGMP database for show commands - needs to be ephemeral - container routedb-items { - - // Added containment as a singleton: Prefix=routedb - // Acquired From Package igmp - uses igmp_RouteDb-group; - } - } - - grouping igmp_ExtDom-group { - - // Id for this domain @@@ This comes from the Network id assigned by the - // PE for the external domain - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; - - // Type is an MO-Defined-Type - type top_RemoteNetworkId; - } - - // Igmp Version - // Type is an MO-Defined-Type - leaf ver { - description "IGMP Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; - } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // This objects hold per igmp external interface information - container extif-items { - list ExtIf-list { - key "id"; - // Added containment: Prefix=extif - // Acquired From Package igmp - uses igmp_ExtIf-group; - } + uses vpc_Dom-group; + description "VPC Domain"; } } - grouping igmp_ExtIf-group { + grouping vpc_OrphanPort-group { + description "Orphan Port Suspend"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - container rtnwPathToIf-items { + grouping vpc_Dom-group { + description "VPC Domain"; - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Domain id @@@ This property is internally set by PE + leaf id { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type vpc_DomId; + description "Domain ID"; + } + leaf peerIp { + type address_Ip; + description "Peer IP"; + } + leaf virtualIp { + type address_Ip; + description "Virtual IP"; } - } - - grouping igmp_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // MCTless vPC DSCP value + leaf dscp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_Dscp; + description "DSCP"; } - // IGMP databases - container db-items { - list Db-list { - config "false"; - key "type"; + // system priority @@@ This comes from the lacp policy + leaf sysPrio { - // Added containment: Prefix=db - // Acquired From Package igmp - uses igmp_Db-group; - } + type vpc_SysPrio; + description "System Priority"; } - container eventHist-items { - list EventHistory-list { - key "type"; - - // Added containment: Prefix=eventHist - // Acquired From Package igmp - uses igmp_EventHistory-group; - } + leaf sysMac { + type address_Mac; + description "System MAC"; } - // This objects hold per igmp interface information - container if-items { - list If-list { - key "id"; + // role priority @@@ This comes from the vpc policy + leaf rolePrio { - // Added containment: Prefix=if - // Acquired From Package igmp - uses igmp_If-group; - } + type vpc_RolePrio; + description "Role Priority"; } - // This objects hold per igmp domain information - container ssmxlate-items { - list SSMXlate-list { - key "srcAddr grpPfx"; + // Interface vlans to exclude for peer gateway + leaf peerGWExcludeVLAN { - // Added containment: Prefix=ssmxlate - // Acquired From Package igmp - uses igmp_SSMXlate-group; - } + type vpc_ExcludeVLAN; + description "Exclude VLAN List"; } - } - - grouping igmp_Db-group { - // Type of the repository - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Database type for different show commands"; + // Enable L3 forwarding for packets destined to peer's gateway + // mac-address. + leaf peerGw { - // Type is an MO-Defined-Type - type igmp_DbT; + type nw_AdminSt; + default "disabled"; + description "Peer Gateway"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Enable graceful type-1 consistency check + leaf grcflCnstncyChck { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Graceful Type-1 Consistency Check"; } - // IGMP Group/Src MOs - container src-items { - list Route-list { - config "false"; - key "src grp"; - - // Added containment: Prefix=src - // Acquired From Package igmp - uses igmp_Route-group; - } - } - } + // Tracking object to suspend vPC if object goes down + leaf track { - grouping igmp_Route-group { - leaf src { - config "false"; - type address_Ip; - } - leaf grp { - config "false"; - type address_Ip; + type vpc_Track; + description "Tracking object to suspend vPC if object goes down"; } - // IGMP Oif MOs. We create one object per interface in the oif list - container oif-items { - list Oif-list { - config "false"; - key "oif"; + // Enable auto recovery if peer is presumed non-operational + leaf autoRecovery { - // Added containment: Prefix=oif - // Acquired From Package igmp - uses igmp_Oif-group; - } + type nw_AdminSt; + default "disabled"; + description "Auto Recovery"; } - } - - grouping igmp_Oif-group { - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "Outgoing interface"; + // Duration to wait before assuming peer dead and restoring vpcs + leaf autoRecoveryIntvl { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf expiryTs { - config "false"; - type string; - } - leaf createTs { - config "false"; - type string; - } - leaf lastRep { - config "false"; - type address_Ip; + type vpc_AutoRecoveryIntvl; + description "Auto Recovery interval"; } - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Join type"; + // Enable peer switch on vPC pair switches + leaf peerSwitch { - // Type is an MO-Defined-Type - type ipmc_RouteFlags; + type nw_AdminSt; + default "disabled"; + description "vPC pair switches"; } - } - - grouping igmp_EventHistory-group { - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + // Delay in bringing up the vPC links + leaf delayRestoreVPC { - // Type is an MO-Defined-Type - type igmp_EhType; + type vpc_DelayRestoreVPC; + description "Delay restore for vPC links"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text per kb"; + // Delay in bringing-up interface-vlan + leaf delayRestoreSVI { - // Type is an MO-Defined-Type - type igmp_Size; + type vpc_DelayRestoreSVI; + description "Delay restore for SVI"; } - } - grouping igmp_If-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Delay in bringing-up the peer-link + leaf delayPeerLinkBringup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_DelayPeerLinkBringup; + description "Peer link delay timer"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Delay restore: Orphan Port + leaf delayRestoreOrphanPort { - // Type is an MO-Defined-Type - type naming_Descr1024; + type vpc_DelayRestoreOrphanPort; + description "Delay restore for orphan ports"; + } + leaf macBpduSrcVer2 { + type boolean; + default "false"; + description "Version 2 bpdu source mac-address"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Interface vlans to exclude from suspension when dual-active + leaf excludeSVI { - // Type is an MO-Defined-Type - type nw_IfId; + type vpc_ExcludeSVI; + description "SVI List excluded from suspension when dual-active"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type + // Suspend vPC locally leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_AdminSt; + description "vPC suspend locally"; } - // Interface Control - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf ifCtrl { - description "Controls"; + // Enable auto recovery if peer is presumed non-operational + leaf fastConvergence { - // Type is an MO-Defined-Type - type ipmc_IfCtrl; + type nw_AdminSt; + default "disabled"; + description "Fast Convergence"; } - // Interface version - // Inherited From ipmc:AIf - // Modified by Override: igmp:If->ver - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Layer 3 Peer Router status + leaf l3PeerRouter { - // Type is an MO-Defined-Type - type mcast_Ver; + type nw_AdminSt; + default "disabled"; + description "L3 Peer Router"; } - // Group Timeout - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf grpTimeout { - description "Group Membership Timeout"; + // Layer 3 Peer Router Syslog Status + leaf l3PeerRouterSyslog { - // Type is an MO-Defined-Type - type ipmc_GrpTimeout; - } - leaf actQuer { - config "false"; - type address_Ip; + type nw_AdminSt; + default "disabled"; + description "L3 Peer Router Syslog"; } - leaf nextQuerTime { - config "false"; - type string; + + // Layer 3 Peer Router Syslog Interval + leaf l3PeerRouterSyslogInterval { + + type vpc_L3PeerRouterSyslogInterval; + description "L3 Peer Router Syslog Interval"; } - // Flags - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf flags { + // role + leaf operRole { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmc_IfFlags; - } - leaf entryCount { - type uint32; - } - leaf stEntryCount { - type uint32; + type vpc_Role; + description "Operational Role"; } - leaf querExpiry { + + // old role + leaf oldRole { config "false"; - type string; - } - leaf reportLl { - type boolean; - } - leaf immediateLeave { - type boolean; + + type vpc_Role; + description "Old Role"; } - // Allow v3 ASM - // Inherited From ipmc:AIf - // Type is an MO-Defined-Type - leaf allowv3Asm { - description "Allow v3 ASM"; + // lacp role + leaf lacpRole { + config "false"; - // Type is an MO-Defined-Type - type ipmc_Allowv3AsmType; + type vpc_Role; + description "Lacp Role"; } - // IGMP Interface Stats Oper MO - container IfStats-items { + // summarized role + leaf summOperRole { + config "false"; - // Added containment as a singleton: Prefix=IfStats - // Acquired From Package igmp - uses igmp_IfStats-group; + type vpc_SummRole; + description "Summarized Oper Role"; } - // This objects hold IP Multicast Group JoinType information - container jointype-items { - list JoinType-list { - key "type"; + // local system priority + leaf localPrio { + config "false"; - // Added containment: Prefix=jointype - // Acquired From Package igmp - uses igmp_JoinType-group; - } + type vpc_SysPrio; + description "Local System Priority"; } - // This object holds resource (router state) limit policy - // to limit amount of multicast routing state on the router - container limit-items { + // peer system priority + leaf peerPrio { + config "false"; - // Added containment as a singleton: Prefix=limit - // Acquired From Package igmp - uses igmp_ResP-group; + type vpc_SysPrio; + description "Peer System Priority"; } - // This object holds igmp reports policy state per Interface - container reppol-items { - - // Added containment as a singleton: Prefix=reppol - // Acquired From Package igmp - uses igmp_RepP-group; - } - - // This object holds static igmp reports policy state per Interface - container streppol-items { - list StRepP-list { - key "joinType"; - - // Added containment: Prefix=streppol - // Acquired From Package igmp - uses igmp_StRepP-group; - } - } - - // This object holds querier information per interface - container querierp-items { - - // Added containment as a singleton: Prefix=querierp - // Acquired From Package igmp - uses igmp_QuerierP-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } - } - } - - grouping igmp_IfStats-group { - leaf v2querSent { - config "false"; - type uint32; - } - leaf v2querRcvd { + // vpc system priority + leaf vpcPrio { config "false"; - type uint32; + + type vpc_SysPrio; + description "Vpc System Priority"; } - leaf v3querSent { + leaf localMAC { config "false"; - type uint32; + type address_Mac; + description "Local System MAC"; } - leaf v3querRcvd { + leaf peerMAC { config "false"; - type uint32; + type address_Mac; + description "Peer System MAC"; } - leaf v2rprtSent { + leaf vpcMAC { config "false"; - type uint32; + type address_Mac; + description "Vpc System MAC"; } - leaf v2rprtRcvd { + + // various operational state + leaf operSt { config "false"; - type uint32; + + type vpc_DomOperSt; + description "Operational State"; } - leaf v3rprtSent { + + // peer version + leaf peerVersion { config "false"; - type uint32; + + type vpc_PeerVersion; + description "Peer Version"; } - leaf v3rprtRcvd { + + // batched vpc inventory + leaf batchedVpcInv { config "false"; - type uint32; + + type vpc_BatchedVpcInv; + description "Batched Vpc Inventory"; } - leaf v2leaveSent { + leaf issuFromVer { config "false"; - type uint32; + type string; + description "Issu from Version"; } - leaf v2leaveRcvd { + leaf issuToVer { config "false"; - type uint32; + type string; + description "Issu to Version"; } - } - - grouping igmp_JoinType-group { - // Join Type of the groups - // Type is an MO-Defined-Type - leaf type { - description "Join Type of the groups"; + // Peer state + leaf peerSt { + config "false"; - // Type is an MO-Defined-Type - type ipmc_JoinType; + type vpc_PeerSt; + description "Peer State"; } - // This objects hold IP Multicast Group version information - container ver-items { - list Version-list { - key "version"; + // Peer status reason code + leaf peerStQual { + config "false"; - // Added containment: Prefix=ver - // Acquired From Package igmp - uses igmp_Version-group; - } + type vpc_PeerStQual; + description "Peer Status Qualifier"; } - } - - grouping igmp_Version-group { - // IGMP version - // Type is an MO-Defined-Type - leaf version { - description "Group version"; + // Dual active status + leaf dualActiveSt { + config "false"; - // Type is an MO-Defined-Type - type ipmc_Ver; + type vpc_DualActiveSt; + description "Dual Active Status"; } - // This object holds igmp group configuration per Interface - container group-items { - list Group-list { - key "grp"; - - // Added containment: Prefix=group - // Acquired From Package igmp - uses igmp_Group-group; - } - } - } + // Compatibility status + leaf compatSt { + config "false"; - grouping igmp_Group-group { - leaf grp { - type address_Ip; - } - leaf useStaticOif { - type boolean; - default "true"; + type vpc_CompatSt; + description "Compatibility Status"; } - // This object holds static igmp source per group - container source-items { - list Source-list { - key "src"; - - // Added containment: Prefix=source - // Acquired From Package igmp - uses igmp_Source-group; - } - } - } + // Compatibility reason code + leaf compatQual { + config "false"; - grouping igmp_Source-group { - leaf src { - type address_Ip; + type vpc_CompatQual; + description "Compatibility Qualifier"; } - leaf useStaticOif { - type boolean; - default "true"; + leaf compatQualStr { + config "false"; + type string; + description "Compatibility Qualifier String"; } - } - - grouping igmp_ResP-group { - // Reserved entry Limit Status - // Type is an MO-Defined-Type - leaf rsvdEntries { + // Type-2 compatibility status + leaf type2CompatSt { config "false"; - description "Reserved entries availability status"; - // Type is an MO-Defined-Type - type igmp_LimitSt; + type vpc_CompatSt; + description "Type-2 Compatibility Status"; } - // Regular entry Limit Status - // Type is an MO-Defined-Type - leaf regEntries { + // Type-2 compatibility reason code + leaf type2CompatQual { config "false"; - description "Regular entries availability status"; - // Type is an MO-Defined-Type - type igmp_LimitSt; - } - leaf availRsvdEntries { - config "false"; - type uint32; + type vpc_CompatQual; + description "Type-2 Compatibility Qualifier"; } - leaf availRegEntries { + leaf type2CompatQualStr { config "false"; - type uint32; + type string; + description "Type-2 Compatibility Qualifier String"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } + container if-items { + list If-list { + key "id"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type - leaf max { - description "Maximum Multicast Entries"; - - // Type is an MO-Defined-Type - type mcast_NumEntries; + uses vpc_If-group; + description "VPC Interface list"; + } + description "VPC Interface"; } - // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type - leaf rsvd { - description "Reserved Multicast Entries"; + // vpc keepalive definitions + container keepalive-items { - // Type is an MO-Defined-Type - type mcast_NumEntries; - } - leaf rtMap { - type string; + uses vpc_Keepalive-group; + description "VPC Keepalive Policy"; } - } - grouping igmp_RepP-group { - leaf rtMap { - type string; - } - leaf pfxList { - type string; - } - leaf useAccessGrpCommand { - type boolean; - } - } + // This object holds parameters information for an app. + container params-items { + list AppParams-list { + config "false"; + key "appId"; - grouping igmp_StRepP-group { - leaf rtMap { - type string; - } - leaf pfxList { - type string; - } - leaf useAccessGrpCommand { - type boolean; + uses vpc_AppParams-group; + description "Application Parameters list"; + } + description "Application Parameters"; } - // Join Type of the groups - // Inherited From ipmc:AStRepP - // Type is an MO-Defined-Type - leaf joinType { - description "Join Type of Groups"; + container rsvpcInstPolCons-items { - // Type is an MO-Defined-Type - type ipmc_JoinType; + uses vpc_RsVpcInstPolCons_source-group; + description "Vpc Instance Policy Attachment"; } } - grouping igmp_QuerierP-group { + grouping vpc_If-group { + description "VPC Interface"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // vpc id + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type vpc_Id; + description "VPC ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // local operational status + leaf localOperSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type vpc_OperSt; + description "Local Operational State"; } - // Querier version - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // remote operational status + leaf remoteOperSt { + config "false"; - // Type is an MO-Defined-Type - type mcast_Ver; + type vpc_OperSt; + description "Remote Operational State"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // Compatibility status + leaf compatSt { + config "false"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type vpc_CompatSt; + description "Compatibility Status"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - description "Query Interval"; + // Compatibility reason code + leaf compatQual { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type vpc_CompatQual; + description "Compatibility Qualifier"; + } + leaf compatQualStr { + config "false"; + type string; + description "Compatibility Qualifier String"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - description "Response Interval"; + // Configured vlans + leaf cfgdVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type l2_VlanBitmap; + description "Configured Vlans"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - description "Robustness Factor"; + // Configured trunk vlans + leaf cfgdTrunkVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type l2_VlanBitmap; + description "Configured Trunk Vlans"; + } + leaf cfgdAccessVlan { + config "false"; + type string; + description "Configured Access Vlan"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - description "Startup Query Interval"; + // Up vlans + leaf upVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type l2_VlanBitmap; + description "Up Vlans"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - description "Startup Query Count"; + // Suspended vlans + leaf suspVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type l2_VlanBitmap; + description "Suspended Vlans"; } - // Querier timeout - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf querierTimeout { - description "Querier Timeout"; + // Configured vlans on peer + leaf peerCfgdVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type l2_VlanBitmap; + description "Peer Configured Vlans"; } - // Last member query count - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrCnt { - description "Last Member Query Count"; + // Up vlans on peer + leaf peerUpVlans { + config "false"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryCnt; + type l2_VlanBitmap; + description "Peer Up Vlans"; } - // Last member response time - // Inherited From ipmc:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrRespTime { - description "Last Member Response Time"; + // This object holds parameters information for an app. + container params-items { + list AppParams-list { + config "false"; + key "appId"; - // Type is an MO-Defined-Type - type mcast_LastMbrRespTime; + uses vpc_AppParams-group; + description "Application Parameters list"; + } + description "Application Parameters"; } - } - - grouping igmp_SSMXlate-group { - // Group IP Prefix address - // Inherited From ipmc:ASSMXlate - // Type is an MO-Defined-Type - leaf grpPfx { - description "Address"; + container rsvpcConf-items { - // Type is an MO-Defined-Type - type mcast_GrpIp; - } - leaf srcAddr { - type address_Ip; + uses vpc_RsVpcConf_source-group; + description "Port Channel Attachment"; } } - grouping igmp_RouteDb-group { + grouping vpc_AppParams-group { + description "Application Parameters"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Application Sap Id + leaf appId { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vpc_AppId; + description "Application SAP ID"; } - // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type - leaf type { + // Local Reason Code + leaf locRsnCode { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type rtdmc_DbT; + type vpc_CompatQual; + description "Local Reason Code"; } - // This objects hold per igmp domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Local Param Length + leaf locParamLen { + config "false"; - // Added containment: Prefix=vrf - // Acquired From Package igmp - uses igmp_Vrf-group; - } + type vpc_ParamLen; + description "Local Param Length"; } - } - grouping igmp_Vrf-group { - leaf name { + // Local Param Value + leaf locParamVal { config "false"; - type string; - } - - // This object holds igmp route group information - container group-items { - list RouteGroup-list { - config "false"; - key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package igmp - uses igmp_RouteGroup-group; - } + type vpc_ParamVal; + description "Local Param Value"; } - } - grouping igmp_RouteGroup-group { - leaf grpAddr { + // Remote Reason Code + leaf remRsnCode { config "false"; - type address_Ip; - } - - // This object holds igmp route source information - container source-items { - list RouteSource-list { - config "false"; - key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package igmp - uses igmp_RouteSource-group; - } + type vpc_CompatQual; + description "Remoe Reason Code"; } - } - grouping igmp_RouteSource-group { - leaf srcAddr { + // Remote Param Length + leaf remParamLen { config "false"; - type address_Ip; + + type vpc_ParamLen; + description "Remote Param Length"; } - leaf oifcount { + + // Remote Param Value + leaf remParamVal { config "false"; - type uint32; + + type vpc_ParamVal; + description "Remote Param Value"; } - // IGMP Route Oif MOs. We create one object per interface in the oif list - container oif-items { - list RouteOif-list { + // This object holds per app per param information . + container param-items { + list AppParamInfo-list { config "false"; - key "oif"; + key "paramName"; - // Added containment: Prefix=oif - // Acquired From Package igmp - uses igmp_RouteOif-group; + uses vpc_AppParamInfo-group; + description "Application Parameter Information list"; } + description "Application Parameter Information"; } } - grouping igmp_RouteOif-group { - leaf local { - config "false"; - type boolean; - } - leaf static { - config "false"; - type boolean; - } - leaf hostProxy { - config "false"; - type boolean; - } - leaf uptime { + grouping vpc_AppParamInfo-group { + description "Application Parameter Information"; + leaf paramName { config "false"; type string; + description "Parameter Name"; } - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf oif { + // Param Type + leaf paramType { config "false"; - description "Outgoing interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type vpc_ParamType; + description "Parameter Type"; } - leaf expiryTs { + leaf locParamVal { config "false"; type string; + description "Local Parameter Value"; } - leaf createTs { + leaf remParamVal { config "false"; type string; - } - leaf lastRep { - config "false"; - type address_Ip; - } - - // Inherited From ipmc:Oif - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Join type"; - - // Type is an MO-Defined-Type - type ipmc_RouteFlags; + description "Remote Parameter Value"; } } - grouping firmware_CtrlrFwStatusCont-group { - - // Information about firmware running on a controller. - container ctrlrrunning-items { - - // Added containment as a singleton: Prefix=ctrlrrunning - // Acquired From Package firmware - uses firmware_CtrlrRunning-group; - } + grouping vpc_Keepalive-group { + description "VPC Keepalive Policy"; - // Specification for maintenance policy enforcement status on a node. - // This object exists on every node where the policy is enforced. - container upgjob-items { + // vrf name + leaf vrf { - // Added containment as a singleton: Prefix=upgjob - // Acquired From Package maint - uses maint_UpgJob-group; + type l3_VrfName; + description "VRF"; } - } - - grouping firmware_CtrlrRunning-group { - - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type cap_Version; + leaf srcIp { + type address_Ip; + description "Source IP"; } - leaf internalLabel { - config "false"; - type string; + leaf destIp { + type address_Ip; + description "Destination IP"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // port number + leaf udpPort { - // Type is an MO-Defined-Type - type firmware_Type; + type comm_Port; + description "UDP Port"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + // interval + leaf interval { - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type vpc_KeepaliveInterval; + description "Interval"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // timeout + leaf timeout { - // Type is an MO-Defined-Type - type naming_Descr; + type vpc_KeepaliveTout; + description "Timeout"; } - } - grouping maint_UpgJob-group { - leaf grpPriKey { - config "false"; - type string; - } - leaf internalLabel { - config "false"; - type string; + // tos config type + leaf tosCfgType { + + type vpc_TosCfgType; + description "TOS Type"; } - // A scheduler keeps a list consisting only of nodes with upgrade - // in progress. This object is used by scheduler to keep track of nodes in installation. - // This object exists only on Controller. - container node-items { - list NodeInMaint-list { - config "false"; - key "nodeId"; + // tos byte + leaf tosByte { - // Added containment: Prefix=node - // Acquired From Package maint - uses maint_NodeInMaint-group; - } + type vpc_TosByte; + description "TOS Byte"; } - container upgjobfault-items { + // tos value + leaf tosValue { - // Added containment as a singleton: Prefix=upgjobfault - // Acquired From Package maint - uses maint_UpgJobFault-group; + type vpc_TosValue; + description "TOS Value"; } - } - grouping maint_UpgJobFault-group { - leaf faultDelegateKey { - config "false"; - type string; - } - } + // tos type + leaf tosType { - grouping firmware_FwStatusCont-group { + type vpc_TosType; + description "TOS Type"; + } - // Information about switch firmware running on a node - container running-items { + // precedence value + leaf precValue { - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_Running-group; + type vpc_PrecValue; + description "Precedence Value"; } - // Specification for maintenance policy enforcement status on a node. - // This object exists on every node where the policy is enforced. - container upgjob-items { + // precedence type + leaf precType { - // Added containment as a singleton: Prefix=upgjob - // Acquired From Package maint - uses maint_UpgJob-group; + type vpc_PrecType; + description "Precedence Type"; } - } - - grouping firmware_Running-group { - // PE version - // Type is an MO-Defined-Type - leaf peVer { - config "false"; - description "A property that indicates Policy Element Version"; + // flush timeout + leaf flushTout { - // Type is an MO-Defined-Type - type cap_Version; + type vpc_FlushTout; + description "Flush Timeout"; } - // Bios version - // Type is an MO-Defined-Type - leaf biosVer { + // operational state + leaf operSt { config "false"; - description "A property that indicates BIOS Version"; - // Type is an MO-Defined-Type - type cap_Version; - } - leaf biosTs { - config "false"; - type string; + type vpc_KeepaliveOperSt; + description "Operational State"; } - // Kickstart image file name - // Type is an MO-Defined-Type - leaf ksFile { + // send interface + leaf sendIf { config "false"; - description "A property that indicates kickstart file name"; - // Type is an MO-Defined-Type - type firmware_Name; + type nw_IfId; + description "Send Interface"; } - // System image file name - // Type is an MO-Defined-Type - leaf sysFile { + // recv interface + leaf recvIf { config "false"; - description "A property that indicates system file name"; - // Type is an MO-Defined-Type - type firmware_Name; + type nw_IfId; + description "Received Interface"; } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + // last send time + leaf sendTime { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type cap_Version; - } - leaf internalLabel { - config "false"; - type string; + type vpc_Time; + description "Last Send Time"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { + // last recv time + leaf recvTime { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type firmware_Type; + type vpc_Time; + description "Last Received Time"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { + // first recv time + leaf firstRecvTime { config "false"; - description "Mode"; - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type vpc_Time; + description "First Received Time"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name; + description "Name"; } - } - grouping firmware_CatFwStatusCont-group { - - // Specification for catalog policy enforcement status. - // This object exists on every node where the policy is enforced. - container catupgjob-items { + // Specify link used for peer communication + container peerlink-items { - // Added containment as a singleton: Prefix=catupgjob - // Acquired From Package maint - uses maint_CatUpgJob-group; + uses vpc_PeerLink-group; + description "Peer Link"; } } - grouping maint_CatUpgJob-group; - - grouping isis_Entity-group { + grouping vpc_PeerLink-group { + description "Peer Link"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // This objects hold per isis instance information. - container inst-items { - list Inst-list { - key "name"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=inst - // Acquired From Package isis - uses isis_Inst-group; - } + type nw_IfAdminSt; + description "Admin State"; } - // This object holds isis information that is operated at a - // interface level - container if-items { - list InternalIf-list { - config "false"; - key "id"; + container rtvrfMbr-items { - // Added containment: Prefix=if - // Acquired From Package isis - uses isis_InternalIf-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_Inst-group { + grouping xbar_LogLevel-group { + description "Config Xbar logging level"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Holds ISIS Instance Operational State"; + // logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type isis_OperSt; - } - leaf flushRoutes { - type boolean; - } - leaf isolate { - type boolean; + type xbar_LoggingLevel; + description "Logging Level"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // logging type + leaf loggingType { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type xbar_LoggingType; + description "Logging type"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping gold_Entity-group { + description "Gold Entity"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Diagnostic Bootup Level + leaf diagBootLevel { + + type gold_bootLevel; + description "Module Diagnostic Bootup Level"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Config for Gold + container config-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses gold_Config-group; + description "Gold Health monitoring configurations"; } - // This objects hold per isis domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Module + container module-items { + list Module-list { + key "id"; - // Added containment: Prefix=dom - // Acquired From Package isis - uses isis_Dom-group; + uses gold_Module-group; + description "Gold Module list"; } + description "Gold Module"; } } - grouping isis_Dom-group { + grouping gold_Config-group { + description "Gold Health monitoring configurations"; - // Type is an MO-Defined-Type - leaf net { - description "Holds ISIS Domain Net value"; + // Diagnostic monitor module all + leaf diagMonitorModuleAll { - // Type is an MO-Defined-Type - type isis_Net; + type gold_AdminSt; + description "Diagnostic Monitor Module All Diagnostic All"; } - // LSP MTU - // Type is an MO-Defined-Type - leaf mtu { - description "Holds ISIS Domain Maximum Transmission Unit"; + // Test name + leaf monitorTestName { - // Type is an MO-Defined-Type - type isis_Mtu; + type gold_Name; + description "GOLD Health Monitoring Specific Test on All Modules"; } - // Bandwidth Reference - // Type is an MO-Defined-Type - leaf bwRef { - description "Holds ISIS Domain Bandwidth Reference"; + // Test monitor + leaf monitorTestStatus { - // Type is an MO-Defined-Type - type isis_BwRef; + type gold_AdminSt; + description "Health Monitor All Modules Specific Test Status"; } - // Bandwidth Reference Unit - // Type is an MO-Defined-Type - leaf bwRefUnit { - description "Holds ISIS Domain Bandwidth Reference Unit (Mbps or Gbps)"; + // Module Configuration + container module-items { + list ModuleConfig-list { + key "modId"; - // Type is an MO-Defined-Type - type isis_BwRefUnit; + uses gold_ModuleConfig-group; + description " GOLD Module level health monitor configuration list"; + } + description " GOLD Module level health monitor configuration "; } + } - // Narrow/Wide Metric Style - // Type is an MO-Defined-Type - leaf metricStyle { - description "Holds ISIS Domain Metric Style"; + grouping gold_ModuleConfig-group { + description " GOLD Module level health monitor configuration "; - // Type is an MO-Defined-Type - type isis_MetricStyle; + // Module id + leaf modId { + + type gold_Id; + description "GOLD helath monitoring Module Id Property has READ-Create access."; } - // IS Type - // Type is an MO-Defined-Type - leaf isType { - description "Holds ISIS Domain IS[Level] Type"; + // Test monitor + leaf testMonitorAll { - // Type is an MO-Defined-Type - type isis_IsT; + type gold_AdminSt; + description "Health Monitor Module level Status"; } - // Max LSP Lifetime - // Type is an MO-Defined-Type - leaf lspLifetime { - description "Holds ISIS Domain LSP Lifetime"; + // Test Interval + leaf testModuleInterval { - // Type is an MO-Defined-Type - type isis_MaxLSPLife; + type gold_TestTime; + description "Health Monitor Test Module Interval"; } - // Shutdown VRF context in ISIS - // Type is an MO-Defined-Type - leaf adminSt { - description "Holds ISIS Domain Administative state"; + // Test monitor + container test-items { + list TestMonitor-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses gold_TestMonitor-group; + description "Test monitor status list"; + } + description "Test monitor status"; } + } - // Dom controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS Domain Control messages"; + grouping gold_TestMonitor-group { + description "Test monitor status"; - // Type is an MO-Defined-Type - type isis_DomControl; - } - leaf authCheckLvl1 { - type boolean; - default "true"; + // Test id + leaf id { + + type gold_Id; + description "GOLD Health Monitoring Test Id Property has READ-Create access."; } - leaf authCheckLvl2 { - type boolean; - default "true"; + + // Test name + leaf monitorTestName { + + type gold_Name; + description "GOLD Health Monitoring Test Name"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Test monitor + leaf monitorStatus { - // Type is an MO-Defined-Type - type isis_OperSt; + type gold_AdminSt; + description "Health Monitor Status"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Test Interval + leaf testInterval { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_TestTime; + description "Health Monitor Test Interval"; } + } - // ISIS databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping gold_Module-group { + description "Gold Module"; - // Added containment: Prefix=db - // Acquired From Package isis - uses isis_Db-group; - } + // Module id + leaf id { + + type gold_Id; + description "Module Id Property has READ-Create access."; } - // This object holds overload information - container overload-items { + // Module name + leaf description { + config "false"; - // Added containment as a singleton: Prefix=overload - // Acquired From Package isis - uses isis_Overload-group; + type gold_Name; + description "Module Description"; } - // This object holds per level isis vrf information - container lvl-items { - list DomLvl-list { - config "false"; - key "type"; + // Module Diag Status + leaf diagStatus { + config "false"; - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_DomLvl-group; - } + type gold_moduleDiagStatus; + description "Module Diagnostic Status"; } - // Fabric multicast (ftag) tree element - container fmtree-items { - list FmcastTree-list { - config "false"; + // Test + container test-items { + list Test-list { key "id"; - // Added containment: Prefix=fmtree - // Acquired From Package isis - uses isis_FmcastTree-group; + uses gold_Test-group; + description "Test case list"; } + description "Test case"; } + } - // This objects hold per graceful restart information - container gr-items { - - // Added containment as a singleton: Prefix=gr - // Acquired From Package isis - uses isis_Gr-group; - } + grouping gold_Test-group { + description "Test case"; - // This object holds ospf information that is operated at an - // interface level - container if-items { - list If-list { - key "id"; + // Test id + leaf id { - // Added containment: Prefix=if - // Acquired From Package isis - uses isis_If-group; - } + type gold_Id; + description "Test Id"; } - // This objects holds default route leak policy - container defrtleak-items { + // Test name + leaf monitorTestName { + config "false"; - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package isis - uses isis_DefRtLeakP-group; + type gold_Name; + description "Monitor Test Id to Test Name Mapping"; } - // Inter protocol route leak policy. This defines distribution - // of routes from other protocols to isis - container interleak-items { - list InterLeakP-list { - config "false"; - key "proto inst asn"; + // Test status + container teststatus-items { - // Added containment: Prefix=interleak - // Acquired From Package isis - uses isis_InterLeakP-group; - } + uses gold_TestStatus-group; + description "Test running status"; } } - grouping isis_Db-group { + grouping gold_TestStatus-group { + description "Test running status"; - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Test name + leaf name { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type isis_DbT; + type gold_Name; + description "Test Name"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Test first fail time + leaf firstFailTime { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_TestTime; + description "Test First Failure Time"; } - // Database of fabric multicast group elements - container grp-items { - list GrpRec-list { - config "false"; - key "addr"; + // Test last fail time + leaf lastFailTime { + config "false"; - // Added containment: Prefix=grp - // Acquired From Package isis - uses isis_GrpRec-group; - } + type gold_TestTime; + description "Test Last Failure Time"; } - // Node records - container node-items { - list NodeRec-list { - config "false"; - key "sysId"; + // Test last execution time + leaf lastExecutionTime { + config "false"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeRec-group; - } + type gold_TestTime; + description "Test Last Execution Time"; } - // LSP records - container lsp-items { - list LspRec-list { - config "false"; - key "sysId lanId frag"; + // Test last pass time + leaf lastPassTime { + config "false"; - // Added containment: Prefix=lsp - // Acquired From Package isis - uses isis_LspRec-group; - } + type gold_TestTime; + description "Test Last Pass Time"; } - // This object holds the isis nexthop information - container nh-items { - list Nexthop-list { - config "false"; - key "nhIf addr"; + // Test next execution time + leaf nextExecutionTime { + config "false"; - // Added containment: Prefix=nh - // Acquired From Package isis - uses isis_Nexthop-group; - } + type gold_TestTime; + description "Test Next Execution Time"; } - // This object holds the isis route information - container rt-items { - list Route-list { - config "false"; - key "pfx"; + // Test result + leaf result { + config "false"; - // Added containment: Prefix=rt - // Acquired From Package isis - uses isis_Route-group; - } + type gold_Result; + description "Test Result"; } - // Tunnel endpoints discovered through isis - container dtep-items { - list DTEp-list { - config "false"; - key "id"; + // Test failure reason + leaf resultReason { + config "false"; - // Added containment: Prefix=dtep - // Acquired From Package isis - uses isis_DTEp-group; - } + type gold_TestFailReason; + description "Test Failure Reason"; } - } - - grouping isis_GrpRec-group { - - // Group address - // Type is an MO-Defined-Type - leaf addr { + leaf runCount { config "false"; - description "Address"; + type uint32; + description "Test Run Count"; + } + leaf failCount { + config "false"; + type uint32; + description "Test Fail Count"; + } + leaf consecutiveFailCount { + config "false"; + type uint32; + description "Test Consecutive Fail Count"; + } - // Type is an MO-Defined-Type - type mcast_GrpIp; + // Aborted Ports + leaf portsAborted { + config "false"; + + type gold_PortList; + description "List of Aborted Ports"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Error Disabled Ports + leaf portsErrorDisabled { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type gold_PortList; + description "List of Error Disabled Ports"; } - // Per FTAG OIF List Record - container ftagoif-items { - list FtagOifRec-list { - config "false"; - key "id"; + // Failed Ports + leaf portsFailing { + config "false"; - // Added containment: Prefix=ftagoif - // Acquired From Package isis - uses isis_FtagOifRec-group; - } + type gold_PortList; + description "List of Failing Ports"; } - // BD records active for this multicast group element - container bd-items { - list BdIdRec-list { - config "false"; - key "encap"; + // Incomplete Ports + leaf portsIncomplete { + config "false"; - // Added containment: Prefix=bd - // Acquired From Package isis - uses isis_BdIdRec-group; - } + type gold_PortList; + description "List of Incomplete Ports"; } - // Fabric nodes active for this multicast group element - container node-items { - list NodeIdRec-list { - config "false"; - key "addr"; + // Passed Ports + leaf portsPassing { + config "false"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeIdRec-group; - } + type gold_PortList; + description "List of Passing Ports"; } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; + // Untested Ports + leaf portsUntested { + config "false"; - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + type gold_PortList; + description "List of Untested Ports"; + } + leaf testAttributes { + config "false"; + type string; + description "Test Attributes"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // Test Interval + leaf testInterval { + config "false"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; - } + type gold_TestTime; + description "Runtime Health Monitor Test Interval"; } - } - grouping isis_FtagOifRec-group { + // lowest allowed Test Interval + leaf lowestAllowedTestInterval { + config "false"; - // Ftag ID - // Type is an MO-Defined-Type - leaf id { + type gold_TestTime; + description "Lowest Allowed Test Interval in Seconds"; + } + + // Test Interval + leaf runtimeMonitorStatus { config "false"; - description "Ftag ID"; - // Type is an MO-Defined-Type - type fmcast_Id; + type gold_AdminSt; + description "Runtime Health Monitor Test monitor status"; } + } + + grouping igmp_Entity-group { + description "IGMP Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + type nw_AdminSt; + description "Admin State"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; - } + type nw_EntOperSt; + description "Operational State"; } - } - grouping isis_OifListLeaf-group { + // This objects hold per igmp instance information. There is only + // one instance of igmp running in the system today + container inst-items { - // Index - // Type is an MO-Defined-Type - leaf idx { - config "false"; - description "Index"; + uses igmp_Inst-group; + description "IGMP Instance"; + } + } - // Type is an MO-Defined-Type - type fmcast_Id; + grouping igmp_Inst-group { + description "IGMP Instance"; + leaf heavyTemplate { + type boolean; + description "Enabling/Disabling IGMP Heavy Template"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - } - grouping isis_OifListSpine-group { + // Administrative state + leaf adminSt { - // Index - // Type is an MO-Defined-Type - leaf idx { - config "false"; - description "Index"; + type nw_AdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type fmcast_Id; + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Control + leaf instCtrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_InstCtrl; + description "Inst Controls"; } - } - grouping isis_BdIdRec-group { - leaf encap { - config "false"; - type string; + // Bootup route add delay to RIB + leaf bootupDelay { + + type ipmc_BootupDelay; + description "Bootup Route Add Delay"; + } + leaf flushRoute { + type boolean; + description "Flush Routes on Restart"; + } + leaf rtrAlert { + type boolean; + description "Enforce Router Alert"; + } + leaf anyQueryDest { + type boolean; + description "Allow any destination-IP for General Queries "; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // syslog-Threshold + leaf syslogThreshold { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_SyslogThresT; + description "IGMP table syslog threshold percentage"; + } + leaf spoofCheck { + type boolean; + description "Enable spoof check for IGMP"; + } + leaf strictQuerElect { + type boolean; + description "Consider subnet check for L3 igmp querier election"; } - } - grouping isis_NodeIdRec-group { - leaf addr { - config "false"; - type address_Ip; + // This objects hold per igmp external domain information + container extdom-items { + list ExtDom-list { + key "id"; + + uses igmp_ExtDom-group; + description "This object holds IGMP external domain information list"; + } + description "This object holds IGMP external domain information"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This objects hold per igmp domain information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses igmp_Dom-group; + description "This object holds IGMP domain information list"; } + description "This object holds IGMP domain information"; + } + + container loglevel-items { + + uses igmp_LogLevel-group; + description "Configure logging level"; + } + + // IGMP database for show commands - needs to be ephemeral + // Ephemeral data + container routedb-items { + + uses igmp_RouteDb-group; + description "IGMP database for show commands"; } } - grouping isis_NodeRec-group { - leaf addr { - config "false"; - type address_Ip; + grouping igmp_ExtDom-group { + description "This object holds IGMP external domain information"; + + // Id for this domain @@@ This comes from the Network id assigned by the + // PE for the external domain + leaf id { + + type top_RemoteNetworkId; + description "Domain Identifier"; } - leaf sysId { - config "false"; - type address_Mac; + + // Igmp Version + leaf ver { + + type mcast_Ver; + description "IGMP Version"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Multicast groups identifier record - container grp-items { - list GrpIdRec-list { - config "false"; - key "addr"; + // This objects hold per igmp external interface information + container extif-items { + list ExtIf-list { + key "id"; - // Added containment: Prefix=grp - // Acquired From Package isis - uses isis_GrpIdRec-group; + uses igmp_ExtIf-group; + description "This object holds IGMP external interface information list"; } + description "This object holds IGMP external interface information"; } } - grouping isis_GrpIdRec-group { - - // Group address - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; - } + grouping igmp_ExtIf-group { + description "This object holds IGMP external interface information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping isis_LspRec-group { - leaf sysId { - config "false"; - type address_Mac; + leaf descr { + + type naming_Descr1024; + description "Description"; } - // LAN id - // Type is an MO-Defined-Type - leaf lanId { - config "false"; - description "LAN ID"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type isis_LanId; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Fragment number - // Type is an MO-Defined-Type - leaf frag { - config "false"; - description "Fragment Number"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type isis_FragNum; + type nw_IfAdminSt; + description "Admin State"; } - // Level type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Level Type"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type isis_LvlT; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } + + grouping igmp_Dom-group { + description "This object holds IGMP domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Extended IS Record - container extisrec-items { - list ExtIsRec-list { + // IGMP databases + container db-items { + list Db-list { config "false"; - key "name"; + key "type"; - // Added containment: Prefix=extisrec - // Acquired From Package isis - uses isis_ExtIsRec-group; + uses igmp_Db-group; + description "IGMP Database list"; } + description "IGMP Database"; } - - // Generic TLV Record - container tlvRec-items { - list TlvRec-list { - config "false"; + container eventHist-items { + list EventHistory-list { key "type"; - // Added containment: Prefix=tlvRec - // Acquired From Package isis - uses isis_TlvRec-group; + uses igmp_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; } + description "This object holds configuration details of event-history buffers"; } - // IP Prefix record - container iprec-items { - list IpRec-list { - config "false"; - key "pfx"; + // This objects hold per igmp interface information + container if-items { + list If-list { + key "id"; - // Added containment: Prefix=iprec - // Acquired From Package isis - uses isis_IpRec-group; + uses igmp_If-group; + description "This object holds per IGMP interface information list"; } + description "This object holds per IGMP interface information"; } - } - - grouping isis_ExtIsRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This objects hold per igmp external interface information that supports mvr configs + container mvrif-items { + list MvrIf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses igmp_MvrIf-group; + description "This objects hold per igmp external interface information that supports mvr configs list"; } + description "This objects hold per igmp external interface information that supports mvr configs"; } - } - grouping isis_TlvRec-group { + // This objects holds multicast vlan registartion state + container mvr-items { - // TLV Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TLV"; + uses igmp_Mvr-group; + description "This objects holds multicast vlan registartion state"; + } - // Type is an MO-Defined-Type - type isis_TlvType; + // This objects hold per igmp domain information + container ssmxlate-items { + list SSMXlate-list { + key "srcAddr grpPfx"; + + uses igmp_SSMXlate-group; + description "Holds Source Specific Multicast (SSM) translation information list"; + } + description "Holds Source Specific Multicast (SSM) translation information"; } + } - // TLV Value - // Type is an MO-Defined-Type - leaf value { + grouping igmp_Db-group { + description "IGMP Database"; + + // Type of the repository + leaf type { config "false"; - description "Value"; - // Type is an MO-Defined-Type - type isis_TlvVal; + type igmp_DbT; + description "Database type for different show commands"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; + } + + // IGMP Group/Src MOs + container src-items { + list Route-list { + config "false"; + key "src grp"; + + uses igmp_Route-group; + description "Holds IGMP Route Information list"; + } + description "Holds IGMP Route Information"; } } - grouping isis_IpRec-group { - leaf pfx { + grouping igmp_Route-group { + description "Holds IGMP Route Information"; + leaf src { config "false"; type address_Ip; + description "Source Address"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf grp { config "false"; - description "Name"; + type address_Ip; + description "Group Address"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // IGMP Oif MOs. We create one object per interface in the oif list + container oif-items { + list Oif-list { + config "false"; + key "oif"; + + uses igmp_Oif-group; + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces. list"; } + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces."; } } - grouping isis_Nexthop-group { - - // Nexhop interface [Deprecated] - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface (IOD Internal)"; - - // Type is an MO-Defined-Type - type nw_Iod; - } + grouping igmp_Oif-group { + description "Holds Outgoing Interface Information. Supported Interfaces Include Ethernet-like, Port/Channel, Vlan, Loopback Interfaces."; - // Nexhop interface - // Type is an MO-Defined-Type - leaf nhIf { + leaf oif { config "false"; - description "Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Outgoing interface"; } - leaf addr { + leaf expiryTs { config "false"; - type address_Ip; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf createTs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "Create Timestamp"; } - } - - grouping isis_Route-group { - leaf pfx { + leaf lastRep { config "false"; type address_Ip; + description "Last reporter info"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf type { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_RouteFlags; + description "Join type"; } + } - // Rel-def from NhAtt - container rsnhAtt-items { + grouping igmp_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Abstract containment of rsnhAtt derived from isis:Route - list RsNhAtt-list { - key "tDn"; + leaf type { - // Added containment: Prefix=rsnhAtt - // Acquired From Package isis - uses isis_RsNhAtt_source-group; - } + type igmp_EhType; + description "Configures type of event history"; + } + + leaf size { + + type igmp_Size; + description "Configures buffer size in text per kb"; } } - grouping isis_DTEp-group { + grouping igmp_If-group { + description "This object holds per IGMP interface information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Endpoint identifier - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf descr { - // Type is an MO-Defined-Type - type tunnel_EpId; + type naming_Descr1024; + description "Description"; } - // Endpoint encapsulation type - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf encapt { - config "false"; - description "Encapsulation Type"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type tunnel_EncapT; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Endpoint type - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type tunnel_EpT; + type nw_IfAdminSt; + description "Admin State"; } - // Role of the remote endpoint - // Inherited From tunnel:Ep - // Type is an MO-Defined-Type - leaf role { - config "false"; - description "Role"; + // Interface Control + leaf ifCtrl { - // Type is an MO-Defined-Type - type top_NodeRole; + type ipmc_IfCtrl; + description "Controls"; } - } - grouping isis_Overload-group { + // Interface version + leaf ver { - // Adminstrative state - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type isis_OverloadAdminSt; - } - - // On at startup till the following duration - // Type is an MO-Defined-Type - leaf startupTime { - description "Startup Time"; - - // Type is an MO-Defined-Type - type isis_StartupTime; - } - leaf bgpAsNum { - type uint16; + type mcast_Ver; + description "Version"; } - // Suppress information - // Type is an MO-Defined-Type - leaf suppress { - description "Suppress Internal/External"; + // Group Timeout + leaf grpTimeout { - // Type is an MO-Defined-Type - type isis_SuppressControl; + type ipmc_GrpTimeout; + description "Group Membership Timeout"; } - } - - grouping isis_DomLvl-group { - - // Per level controls - // Type is an MO-Defined-Type - leaf ctrl { + leaf actQuer { config "false"; - description "Controls"; - - // Type is an MO-Defined-Type - type isis_DomLvlControl; + type address_Ip; + description "IGMP active querier IP"; } - - // ISIS DOM Authentication Type for Level-1 - // Type is an MO-Defined-Type - leaf authTypeLvl1 { + leaf nextQuerTime { config "false"; - description "Holds ISIS DOM Authentication-Type for Level-1"; - - // Type is an MO-Defined-Type - type isis_AuthT; + type union { + type string; + type uint64; + } + description "IGMP next query time"; } - // ISIS DOM Authentication Type for Level-2 - // Type is an MO-Defined-Type - leaf authTypeLvl2 { + // Flags + leaf flags { config "false"; - description "Holds ISIS DOM Authentication-Type for Level-2"; - // Type is an MO-Defined-Type - type isis_AuthT; + type ipmc_IfFlags; + description "Flags"; } - - // ISIS DOM Authentication Key for Level-1 - // Type is an MO-Defined-Type - leaf authKeyLvl1 { - config "false"; - description "Holds Authentication Key for ISIS DOM on Level-1"; - - // Type is an MO-Defined-Type - type isis_AuthKeyN; + leaf entryCount { + type uint32; + description "Dynamic entry count"; } - - // ISIS DOM Authentication Key for Level-2 - // Type is an MO-Defined-Type - leaf authKeyLvl2 { + leaf stEntryCount { + type uint32; + description "Static Entry count"; + } + leaf querExpiry { config "false"; - description "Holds Authentication Key for ISIS DOM on Level-2"; - - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type union { + type string; + type uint64; + } + description "Querier expiry time"; + } + leaf reportLl { + type boolean; + description "Report link local"; + } + leaf immediateLeave { + type boolean; + description "Fast leave"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Allow v3 ASM + leaf allowv3Asm { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmc_Allowv3AsmType; + description "Allow v3 ASM"; + } + leaf suppressv3Gsq { + type boolean; + description "Suppress v3 GSQ"; } - // Type - // Inherited From isis:Lvl - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // IGMP Interface Stats Oper MO + container IfStats-items { - // Type is an MO-Defined-Type - type isis_LvlT; + uses igmp_IfStats-group; + description "Holds IGMP interface statistics"; } - // ISIS databases - container db-items { - list Db-list { - config "false"; + // This objects hold IP Multicast Group JoinType information + container jointype-items { + list JoinType-list { key "type"; - // Added containment: Prefix=db - // Acquired From Package isis - uses isis_Db-group; + uses igmp_JoinType-group; + description "This Object Holds IP Multicast Group JoinType Information list"; } + description "This Object Holds IP Multicast Group JoinType Information"; } - // This object holds lsp generation interval controls - container lspgen-items { + // This object holds resource (router state) limit policy + // to limit amount of multicast routing state on the router + container limit-items { - // Added containment as a singleton: Prefix=lspgen - // Acquired From Package isis - uses isis_LspGen-group; + uses igmp_ResP-group; + description "Holds Resource policy to limit amount of multicast routing state on the router"; } - // This object holds spf computation frequency controls - container spfcomp-items { + // This object holds igmp reports policy state per Interface + container reppol-items { - // Added containment as a singleton: Prefix=spfcomp - // Acquired From Package isis - uses isis_SpfComp-group; + uses igmp_RepP-group; + description "This object holds igmp reports policy state per Interface"; } - } - - grouping isis_LspGen-group { - // Initial wait interval - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Wait Interval"; + // This object holds static igmp reports policy state per Interface + container streppol-items { + list StRepP-list { + key "joinType"; - // Type is an MO-Defined-Type - type isis_LspGenInitIntvl; + uses igmp_StRepP-group; + description "Holds Static IGMP report policy list"; + } + description "Holds Static IGMP report policy"; } - // Second wait interval - // Type is an MO-Defined-Type - leaf secIntvl { - description "Second Wait Interval"; + // This object holds querier information per interface + container querierp-items { - // Type is an MO-Defined-Type - type isis_LspGenSecIntvl; + uses igmp_QuerierP-group; + description "Holds IGMP querier information"; } - // Maximum wait interval - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Wait Interval"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type isis_LspGenMaxIntvl; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_SpfComp-group { - - // Initial wait inerval - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompInitIntvl; + grouping igmp_IfStats-group { + description "Holds IGMP interface statistics"; + leaf v2querSent { + config "false"; + type uint32; + description "Number of IGMP v2 queries sent"; } - - // Second wait interval - // Type is an MO-Defined-Type - leaf secIntvl { - description "Second Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompSecIntvl; + leaf v2querRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 queries received"; } - - // Maximum wait interval - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Wait Interval"; - - // Type is an MO-Defined-Type - type isis_SpfCompMaxIntvl; + leaf v3querSent { + config "false"; + type uint32; + description "Number of IGMP v3 queries sent"; + } + leaf v3querRcvd { + config "false"; + type uint32; + description "Number of IGMP v3 queries received"; + } + leaf v2rprtSent { + config "false"; + type uint32; + description "Number of IGMP v2 reports sent"; + } + leaf v2rprtRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 reports received"; + } + leaf v3rprtSent { + config "false"; + type uint32; + description "Number of IGMP v3 reports sent"; + } + leaf v3rprtRcvd { + config "false"; + type uint32; + description "Number of IGMP v3 reports received"; + } + leaf v2leaveSent { + config "false"; + type uint32; + description "Number of IGMP v2 leave sent"; + } + leaf v2leaveRcvd { + config "false"; + type uint32; + description "Number of IGMP v2 leave received"; } } - grouping isis_FmcastTree-group { + grouping igmp_JoinType-group { + description "This Object Holds IP Multicast Group JoinType Information"; - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Tree ID"; + // Join Type of the groups + leaf type { - // Type is an MO-Defined-Type - type fmcast_Id; + type ipmc_JoinType; + description "Join Type of the Groups. Supported Types Include Static or Join."; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This objects hold IP Multicast Group version information + container ver-items { + list Version-list { + key "version"; - // Type is an MO-Defined-Type - type fmcast_OperSt; + uses igmp_Version-group; + description "This Object Holds IP Multicast Group Version Information list"; + } + description "This Object Holds IP Multicast Group Version Information"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping igmp_Version-group { + description "This Object Holds IP Multicast Group Version Information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // IGMP version + leaf version { + + type ipmc_Ver; + description "IGMP Group Version"; } - // Fabric nodes active for this multicast group element - container node-items { - list NodeIdRec-list { - config "false"; - key "addr"; + // This object holds igmp group configuration per Interface + container group-items { + list Group-list { + key "grp"; - // Added containment: Prefix=node - // Acquired From Package isis - uses isis_NodeIdRec-group; + uses igmp_Group-group; + description "IGMP Group Information per Interface list"; } + description "IGMP Group Information per Interface"; } + } - // Outgoing interface List on Leaf - container oifleaf-items { - list OifListLeaf-list { - config "false"; - key "idx"; - - // Added containment: Prefix=oifleaf - // Acquired From Package isis - uses isis_OifListLeaf-group; - } + grouping igmp_Group-group { + description "IGMP Group Information per Interface"; + leaf grp { + type address_Ip; + description "Route IP Address for Choosing Groups"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interace is Being Used"; } - // Outgoing interface List on Spine - container oifspine-items { - list OifListSpine-list { - config "false"; - key "idx"; + // This object holds static igmp source per group + container source-items { + list Source-list { + key "src"; - // Added containment: Prefix=oifspine - // Acquired From Package isis - uses isis_OifListSpine-group; + uses igmp_Source-group; + description "This Object Holds Static IGMP Source per Group list"; } + description "This Object Holds Static IGMP Source per Group"; } } - grouping isis_Gr-group { + grouping igmp_Source-group { + description "This Object Holds Static IGMP Source per Group"; + leaf src { + type address_Ip; + description "IGMP Source IP Address"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is being used"; + } + } - // Graceful Restart - // Type is an MO-Defined-Type - leaf adminSt { + grouping igmp_ResP-group { + description "Holds Resource policy to limit amount of multicast routing state on the router"; + + // Reserved entry Limit Status + leaf rsvdEntries { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type igmp_LimitSt; + description "Reserved entries availability status"; } - // T3 timer for graceful restart - // Type is an MO-Defined-Type - leaf grT3Intvl { + // Regular entry Limit Status + leaf regEntries { config "false"; - description "T3 Interval"; - // Type is an MO-Defined-Type - type isis_GrT3Intvl; + type igmp_LimitSt; + description "Regular entries availability status"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf availRsvdEntries { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint32; + description "Availble reserved entries"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + leaf availRegEntries { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint32; + description "Available regular entries"; } - } - grouping isis_If-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Maximum Multicast Entries + leaf max { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_NumEntries; + description "Maximum Multicast Entries"; } - // Circuit type - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf cktT { - description "Holds ISIS interface Circuit Type"; + // Reserved Multicast Entries + leaf rsvd { - // Type is an MO-Defined-Type - type isis_IsT; + type mcast_NumEntries; + description "Reserved Multicast Entries"; } - - // Metric (deprecated) - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf metric { - description "Holds ISIS interface Metric"; - - // Type is an MO-Defined-Type - type isis_Metric; + leaf rtMap { + type string; + description "Reserved Entries Route Map"; } + } - // Interface controls - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS interface Control messages"; - - // Type is an MO-Defined-Type - type isis_IfControl; + grouping igmp_RepP-group { + description "This object holds igmp reports policy state per Interface"; + leaf rtMap { + type string; + description "Route Map"; } - leaf v4enable { - type boolean; - default "true"; + leaf pfxList { + type string; + description "Prefix List"; } - leaf v6enable { + leaf useAccessGrpCommand { type boolean; - default "true"; + description "Flag to use access-group"; } - leaf authCheckLvl1 { - type boolean; - default "true"; + } + + grouping igmp_StRepP-group { + description "Holds Static IGMP report policy"; + leaf rtMap { + type string; + description "Route Map"; } - leaf authCheckLvl2 { - type boolean; - default "true"; + leaf pfxList { + type string; + description "Prefix List"; } - leaf authCheck { + leaf useAccessGrpCommand { type boolean; - default "true"; + description "Flag to use access-group"; } - leaf networkTypeP2P { - type boolean; - default "true"; + + // Join Type of the groups + leaf joinType { + + type ipmc_JoinType; + description "Join Type of Groups"; } + } - // LSP refresh Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf lspRefreshIntvl { - description "Holds ISIS Interface LSP Refresh Interval"; + grouping igmp_QuerierP-group { + description "Holds IGMP querier information"; - // Type is an MO-Defined-Type - type isis_LspRefreshIntvl; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // LSP Retransmit Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransInterval { - description "Holds ISIS Interface Retransmit Interval"; + leaf descr { - // Type is an MO-Defined-Type - type isis_RetransInterval; + type naming_Descr; + description "Description of the specified attribute"; } - // LSP Retransmit Throttle Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransThrottleInterval { - description "Holds ISIS Interface Retransmit Throttle Interval"; + // Querier version + leaf ver { - // Type is an MO-Defined-Type - type isis_RetransThrottleInterval; + type mcast_Ver; + description "Version"; } - // Passive-interface Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf passive { - description "Holds ISIS Passive Interface Info"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type isis_PassiveIntfT; + type mcast_QuerierIp; + description "Address"; } - // Interface Hello padding Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf helloPad { - description "Holds ISIS Interface Hello Padding Info"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type isis_HelloPadT; + type mcast_QueryIntvl; + description "Query Interval"; } - // This object holds isis neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "type sysId"; + // Query response interval + leaf rspIntvl { - // Added containment: Prefix=adj - // Acquired From Package isis - uses isis_AdjEp-group; + type mcast_QueryRspIntvl { + range "1..25"; } + description "Response Interval of Querier"; } - // This object holds mesh group information per interface - container meshgrp-items { - list MeshGrp-list { - key "id"; + // Robustness factor + leaf robustFac { - // Added containment: Prefix=meshgrp - // Acquired From Package isis - uses isis_MeshGrp-group; - } + type mcast_RobustFactor; + description "Robustness Factor"; } - // This object holds per level isis interface information - container lvl-items { - list IfLvl-list { - key "type"; + // Startup query interval + leaf startQueryIntvl { - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_IfLvl-group; - } + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // This object holds per IF States information - container traffic-items { + // Startup query count + leaf startQueryCnt { - // Added containment as a singleton: Prefix=traffic - // Acquired From Package isis - uses isis_IfTraffic-group; + type mcast_QueryCnt; + description "Startup Query Count"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - container rtvrfMbr-items { + // Querier timeout + leaf querierTimeout { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mcast_QuerierTimeout; + description "Querier Timeout"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Last member query count + leaf lastMbrCnt { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mcast_LastMbrQueryCnt; + description "Last Member Query Count"; } - } - grouping isis_AdjEp-group { + // Last member response time + leaf lastMbrRespTime { - // Adjacency type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Level Type"; + type mcast_LastMbrRespTime; + description "Last Member Response Time"; + } + } - // Type is an MO-Defined-Type - type isis_LvlT; + grouping igmp_MvrIf-group { + description "This objects hold per igmp external interface information that supports mvr configs"; + leaf mvrRcvr { + type boolean; + description "Enable/disable MVR Receiver Port"; } - leaf sysId { - config "false"; - type address_Mac; + leaf mvrSrc { + type boolean; + description "Enable/disable MVR Source Port"; } - // Operational state of the adjacency - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_AdjOperSt; + type igmp_VlanIdT; + description "Interface default multicast vlan configuration"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - container addr-items { - list PeerIpAddr-list { - config "false"; - key "addr"; - // Added containment: Prefix=addr - // Acquired From Package isis - uses isis_PeerIpAddr-group; - } - } - } + leaf descr { - grouping isis_PeerIpAddr-group { - leaf addr { - config "false"; - type address_Ip; + type naming_Descr1024; + description "Description"; } - } - grouping isis_MeshGrp-group { - - // Mesh Group Id - // Type is an MO-Defined-Type + // Interface ID of this endpoint leaf id { - description "Holds ISIS Mesh Group ID per Interface"; - - // Type is an MO-Defined-Type - type isis_MeshGrpId; - } - // Mesh group controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Holds ISIS Mesh Group Control Info per Interface"; - - // Type is an MO-Defined-Type - type isis_MeshGrpControl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This objects holds multicast vlan registartion group information + container mvrgrp-items { + list MvrGrp-list { + key "ip"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses igmp_MvrGrp-group; + description "This objects holds multicast vlan registartion group information list"; } + description "This objects holds multicast vlan registartion group information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping isis_IfLvl-group { - - // ISIS Priority for Level-1 - // Type is an MO-Defined-Type - leaf priorityLvl1 { - description "Holds ISIS Interface Level-1 Circuit Priority"; - - // Type is an MO-Defined-Type - type isis_CktPrio; + grouping igmp_MvrGrp-group { + description "This objects holds multicast vlan registartion group information"; + leaf ip { + type address_Ip; + description "Multicast Group IP Address"; } - // ISIS Priority for Level-2 - // Type is an MO-Defined-Type - leaf priorityLvl2 { - description "Holds ISIS Interface Level-2 Circuit Priority"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_CktPrio; + type igmp_VlanIdT; + description "Global default MVR vlan identifier"; } - - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Holds Interface Hello Interval value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; + leaf ipMask { + type address_Ip; + description "IP network mask in format m.m.m.m"; } - - // ISIS Hello Interval for Level-1 - // Type is an MO-Defined-Type - leaf helloIntvlLvl1 { - description "Holds ISIS interface Hello Interval Level-1 value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; + leaf count { + type uint32; + description "Number of contiguous groups"; } + } - // ISIS Hello Interval for Level-2 - // Type is an MO-Defined-Type - leaf helloIntvlLvl2 { - description "Holds ISIS interface Hello Interval Level-2 value"; - - // Type is an MO-Defined-Type - type isis_HelloIntvl; - } + grouping igmp_Mvr-group { + description "This objects holds multicast vlan registartion state"; - // Hello Multiplier - // Type is an MO-Defined-Type - leaf helloMult { - description "Holds Interface Hello Multiplier value"; + leaf adminSt { - // Type is an MO-Defined-Type - type isis_HelloMult; + type nw_AdminSt; + description "Enable/disable multicast vlan registration capability"; } - // ISIS Hello Multiplier for Level-1 - // Type is an MO-Defined-Type - leaf helloMultLvl1 { - description "Holds ISIS interface Hello Multiplier Level-1 value"; + leaf vlan { - // Type is an MO-Defined-Type - type isis_HelloMult; + type igmp_VlanIdT; + description "Global default MVR vlan identifier"; } - // ISIS Hello Multiplier for Level-2 - // Type is an MO-Defined-Type - leaf helloMultLvl2 { - description "Holds ISIS interface Hello Multiplier Level-2 value"; + leaf suppressQuery { - // Type is an MO-Defined-Type - type isis_HelloMult; + type l2_VlanBitmap; + description "Suppress IGMP General query forwarding from vlans"; } - // ISIS CSNP Interval for Level-1 - // Type is an MO-Defined-Type - leaf csnpIntvlLvl1 { - description "Holds ISIS Interface Level-1 CSNP Interval"; + // This objects holds multicast vlan registartion group information + container mvrgrp-items { + list MvrGrp-list { + key "ip"; - // Type is an MO-Defined-Type - type isis_CsnpIntvl; + uses igmp_MvrGrp-group; + description "This objects holds multicast vlan registartion group information list"; + } + description "This objects holds multicast vlan registartion group information"; } + } - // ISIS Wide Metric MT0[IPV4] topology for Level-1 - // Type is an MO-Defined-Type - leaf mt0MetricLvl1 { - description "Holds ISIS interface IPV4 wide metric value for Level-1"; - - // Type is an MO-Defined-Type - type isis_WideMetric; - } + grouping igmp_SSMXlate-group { + description "Holds Source Specific Multicast (SSM) translation information"; - // ISIS Wide Metric MT0[IPV4] topology for Level-2 - // Type is an MO-Defined-Type - leaf mt0MetricLvl2 { - description "Holds ISIS interface IPV4 wide metric value for Level-2"; + // Group IP Prefix address + leaf grpPfx { - // Type is an MO-Defined-Type - type isis_WideMetric; + type mcast_GrpIp; + description "Address"; } - - // ISIS Wide Metric MT2[IPV6] topology for Level-1 - // Type is an MO-Defined-Type - leaf mt2MetricLvl1 { - description "Holds ISIS interface IPV6 wide metric value for Level-1"; - - // Type is an MO-Defined-Type - type isis_WideMetric; + leaf srcAddr { + type address_Ip; + description "Address"; } + } - // ISIS Wide Metric MT2[IPV6] topology for Level-2 - // Type is an MO-Defined-Type - leaf mt2MetricLvl2 { - description "Holds ISIS interface IPV6 wide metric value for Level-2"; - - // Type is an MO-Defined-Type - type isis_WideMetric; - } + grouping igmp_LogLevel-group { + description "Configure logging level"; - // Type is an MO-Defined-Type - leaf authType { - description "Holds Authentication Type value for ISIS Interface"; + leaf type { - // Type is an MO-Defined-Type - type isis_AuthT; + type igmp_LogType; + description "Configures logging type"; } - // Authentication Type for Level-1 - // Type is an MO-Defined-Type - leaf authTypeLvl1 { - description "Holds ISIS Level-1 Authentication Type value for Interface"; + leaf level { - // Type is an MO-Defined-Type - type isis_AuthT; + type igmp_LvlType; + description "Configures log level"; } + } - // Authentication Type for Level-2 - // Type is an MO-Defined-Type - leaf authTypeLvl2 { - description "Holds ISIS Level-2 Authentication Type value for Interface"; - - // Type is an MO-Defined-Type - type isis_AuthT; - } + grouping igmp_RouteDb-group { + description "IGMP database for show commands"; - // Authentication Key for ISIS Interface - // Type is an MO-Defined-Type - leaf authKey { - description "Holds Authentication Key for ISIS Interface"; + // Ephemeral data + leaf name { + config "false"; - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Authentication Key for ISIS Interface on Level-1 - // Type is an MO-Defined-Type - leaf authKeyLvl1 { - description "Holds Authentication Key for ISIS Interface on Level-1"; + // Type of the repository + // Ephemeral data + leaf type { + config "false"; - // Type is an MO-Defined-Type - type isis_AuthKeyN; + type rtdmc_DbT; + description "Type"; } - // Authentication Key for ISIS Interface on Level-2 - // Type is an MO-Defined-Type - leaf authKeyLvl2 { - description "Holds Authentication Key for ISIS Interface on Level-2"; + // This objects hold per igmp domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type isis_AuthKeyN; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses igmp_Vrf-group; + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information list"; + } + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information"; } + } + + grouping igmp_Vrf-group { + description "This Objects holds per IGMP Virtual Routing and Forwarding (VRF) Information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type + // Vrf name + // Ephemeral data leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "Virtual Routing and Forwarding Name"; } - // Type - // Inherited From isis:Lvl - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // This object holds igmp route group information + // Ephemeral data + container group-items { - // Type is an MO-Defined-Type - type isis_LvlT; + // Ephemeral data + list RouteGroup-list { + config "false"; + key "grpAddr"; + + uses igmp_RouteGroup-group; + description "This Object holds IGMP Route Group Information list"; + } + description "This Object holds IGMP Route Group Information"; } } - grouping isis_IfTraffic-group; - - grouping isis_DefRtLeakP-group { + grouping igmp_RouteGroup-group { + description "This Object holds IGMP Route Group Information"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf grpAddr { config "false"; - description "Name"; + type address_Ip; + description "Group IP Address"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // This object holds igmp route source information + // Ephemeral data + container source-items { + + // Ephemeral data + list RouteSource-list { + config "false"; + key "srcAddr"; + + uses igmp_RouteSource-group; + description "This Object holds IGMP Route Source Information list"; } + description "This Object holds IGMP Route Source Information"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping igmp_RouteSource-group { + description "This Object holds IGMP Route Source Information"; - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "IGMP Route Source IP Address"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type - leaf scope { + // Ephemeral data + leaf oifcount { config "false"; - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; + type uint32; + description "Outgoing Interface (OIF) Count"; } - leaf rtMap { - config "false"; - type string; + + // IGMP Route Oif MOs. We create one object per interface in the oif list + // Ephemeral data + container oif-items { + + // Ephemeral data + list RouteOif-list { + config "false"; + key "oif"; + + uses igmp_RouteOif-group; + description "Holds Route Outgoing Interface(OIF) Details list"; + } + description "Holds Route Outgoing Interface(OIF) Details"; } } - grouping isis_InterLeakP-group { + grouping igmp_RouteOif-group { + description "Holds Route Outgoing Interface(OIF) Details"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf local { config "false"; - description "Name"; + type boolean; + description "Indicates if the Route is Local"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf static { + config "false"; + type boolean; + description "Indicates if the Route is Static"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf hostProxy { config "false"; - description "Description"; + type boolean; + description "Indicates if Host is Proxy"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf uptime { + config "false"; + type union { + type string; + type uint64; + } + description "Route OIF Uptime Timestamp"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type - leaf scope { + // Ephemeral data + leaf oif { config "false"; - description "Scope"; - // Type is an MO-Defined-Type - type rtleak_Scope; + type nw_IfId; + description "Outgoing interface"; } - leaf rtMap { + leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - - // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf proto { + leaf createTs { config "false"; - description "Protocol"; - - // Type is an MO-Defined-Type - type rtleak_Proto; + type union { + type string; + type uint64; + } + description "Create Timestamp"; } - - // Routing protocol instance, the routing instance of the - // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf inst { + leaf lastRep { config "false"; - description "Instance"; - - // Type is an MO-Defined-Type - type rtleak_Inst; + type address_Ip; + description "Last reporter info"; } - // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf asn { + leaf type { config "false"; - description "Autonomous System Number"; - // Type is an MO-Defined-Type - type rtleak_Asn { - } + type ipmc_RouteFlags; + description "Join type"; } } - grouping isis_InternalIf-group { + grouping isis_Entity-group { + description "Holds ISIS Control Plane Entity Information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // Operational state + leaf operSt { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // This objects hold per isis instance information. + container inst-items { + list Inst-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses isis_Inst-group; + description "Holds ISIS per Instance Information list"; + } + description "Holds ISIS per Instance Information"; } - // Circuit type - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf cktT { - config "false"; - description "Holds ISIS interface Circuit Type"; + // This object holds isis logging information + container syslog-items { - // Type is an MO-Defined-Type - type isis_IsT; + uses isis_SysLog-group; + description "Holds ISIS logging Information"; } - // Metric (deprecated) - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf metric { - config "false"; - description "Holds ISIS interface Metric"; + // This object holds isis information that is operated at a + // interface level + container if-items { + list InternalIf-list { + key "id"; - // Type is an MO-Defined-Type - type isis_Metric; + uses isis_InternalIf-group; + description "Internal Model for ISIS Interface list"; + } + description "Internal Model for ISIS Interface"; } + } - // Interface controls - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Holds ISIS interface Control messages"; + grouping isis_Inst-group { + description "Holds ISIS per Instance Information"; - // Type is an MO-Defined-Type - type isis_IfControl; - } - leaf v4enable { - config "false"; - type boolean; - default "true"; - } - leaf v6enable { - config "false"; - type boolean; - default "true"; - } - leaf authCheckLvl1 { - config "false"; - type boolean; - default "true"; - } - leaf authCheckLvl2 { + // Operational state + leaf operSt { config "false"; - type boolean; - default "true"; + + type isis_OperSt; + description "Holds ISIS Instance Operational State"; } - leaf authCheck { - config "false"; + leaf flushRoutes { type boolean; - default "true"; + description "Flush ISIS Routes on non graceful controlled restart"; } - leaf networkTypeP2P { - config "false"; + leaf isolate { type boolean; - default "true"; + description "Isolate ISIS Instance from other process tags"; } - // LSP refresh Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf lspRefreshIntvl { - config "false"; - description "Holds ISIS Interface LSP Refresh Interval"; + leaf name { - // Type is an MO-Defined-Type - type isis_LspRefreshIntvl; + type naming_Name256 { + length "1..64"; + pattern ".*[a-zA-Z0-9_-]{1,20}.*"; + } + description "Name"; } - // LSP Retransmit Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransInterval { - config "false"; - description "Holds ISIS Interface Retransmit Interval"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type isis_RetransInterval; + type nw_AdminSt; + description "Admin State"; } - // LSP Retransmit Throttle Interval - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf retransThrottleInterval { - config "false"; - description "Holds ISIS Interface Retransmit Throttle Interval"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type isis_RetransThrottleInterval; + type nw_InstCtrl; + description "Controls"; } - // Passive-interface Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf passive { - config "false"; - description "Holds ISIS Passive Interface Info"; + // This objects hold per isis domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type isis_PassiveIntfT; + uses isis_Dom-group; + description "IS-IS Domain list"; + } + description "IS-IS Domain"; } - // Interface Hello padding Info - // Inherited From isis:AIf - // Type is an MO-Defined-Type - leaf helloPad { - config "false"; - description "Holds ISIS Interface Hello Padding Info"; + // This object holds event-history buffers information for ISIS + container evthstry-items { + list EvtHstry-list { + key "type"; - // Type is an MO-Defined-Type - type isis_HelloPadT; + uses isis_EvtHstry-group; + description "Holds ISIS event-history buffers Information for ISIS list"; + } + description "Holds ISIS event-history buffers Information for ISIS"; } + } - // Instance name - // Inherited From isis:AInternalIf - // Type is an MO-Defined-Type - leaf instance { - config "false"; - description "Owning Instance"; - - // Type is an MO-Defined-Type - type isis_InstanceName; - } + grouping isis_Dom-group { + description "IS-IS Domain"; - // Dom name - // Inherited From isis:AInternalIf - // Type is an MO-Defined-Type - leaf dom { - config "false"; - description "Dom to which the interface belongs to"; + leaf net { - // Type is an MO-Defined-Type - type isis_DomName; + type isis_Net; + description "Holds ISIS Domain Net value"; } - // This object holds mesh group information per interface - container meshgrp-items { - list MeshGrp-list { - key "id"; + // LSP MTU + leaf mtu { - // Added containment: Prefix=meshgrp - // Acquired From Package isis - uses isis_MeshGrp-group; - } + type isis_Mtu; + description "Holds ISIS Domain Maximum Transmission Unit"; } - // This object holds per level isis interface information - container lvl-items { - list IfLvl-list { - key "type"; + // Bandwidth Reference + leaf bwRef { - // Added containment: Prefix=lvl - // Acquired From Package isis - uses isis_IfLvl-group; - } + type isis_BwRef; + description "Holds ISIS Domain Bandwidth Reference"; } - // This object holds per IF States information - container traffic-items { + // Bandwidth Reference Unit + leaf bwRefUnit { - // Added containment as a singleton: Prefix=traffic - // Acquired From Package isis - uses isis_IfTraffic-group; + type isis_BwRefUnit; + description "Holds ISIS Domain Bandwidth Reference Unit (Mbps or Gbps)"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - container rtvrfMbr-items { + // Narrow/Wide Metric Style + leaf metricStyle { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type isis_MetricStyle; + description "Holds ISIS Domain Metric Style"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // IS Type + leaf isType { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type isis_IsT; + description "Holds ISIS Domain IS[Level] Type"; } - } - grouping lacp_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Max LSP Lifetime + leaf lspLifetime { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type isis_MaxLSPLife; + description "Holds ISIS Domain LSP Lifetime"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Shutdown VRF context in ISIS leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Holds ISIS Domain Administative state"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - - // This objects hold per lacp instance information. There is only - // one instance of lacp running in the system today - container inst-items { + // Dom controls + leaf ctrl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package lacp - uses lacp_Inst-group; + type isis_DomControl; + description "Holds ISIS Domain Control messages"; } - } - - grouping lacp_Inst-group { - - // Administrative system priority - // Type is an MO-Defined-Type - leaf adminPrio { - description "LACP instance adminstrative priority"; - - // Type is an MO-Defined-Type - type lacp_SysPrio; + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Authentication Check for ISIS DOM on Level-1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Authentication Check for ISIS DOM on Level-2"; } - // Administrative System mac - // Type is an MO-Defined-Type - leaf adminSysMac { - description "System MAC"; + // ISIS DOM Authentication Type for Level-1 + leaf authTypeLvl1 { - // Type is an MO-Defined-Type - type lacp_SysMac; + type isis_AuthT; + description "Holds ISIS DOM Authentication-Type for Level-1"; } - // Administrative Role - // Type is an MO-Defined-Type - leaf adminRole { - description "System Role"; + // ISIS DOM Authentication Type for Level-2 + leaf authTypeLvl2 { - // Type is an MO-Defined-Type - type lacp_SysRole; + type isis_AuthT; + description "Holds ISIS DOM Authentication-Type for Level-2"; } - // Instance Control Fields - // Type is an MO-Defined-Type - leaf lacpctrl { - description "Instance Control"; + // ISIS DOM Authentication Key for Level-1 + leaf authKeyLvl1 { - // Type is an MO-Defined-Type - type lacp_LACPInstCtrl; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS DOM on Level-1"; } - // Operational system priority - // Type is an MO-Defined-Type - leaf operPrio { - config "false"; - description "Specifies the LACP instance operational system priority"; + // ISIS DOM Authentication Key for Level-2 + leaf authKeyLvl2 { - // Type is an MO-Defined-Type - type lacp_SysPrio; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS DOM on Level-2"; } - // System mac - // Type is an MO-Defined-Type - leaf sysMac { - config "false"; - description "System MAC"; + // Passive Interface default level + leaf passiveDflt { - // Type is an MO-Defined-Type - type lacp_SysMac; + type isis_PassiveT; + description "Holds ISIS Domain passive-interface default level"; } - // Operational Role - // Type is an MO-Defined-Type - leaf operRole { + // Operational state + leaf operSt { config "false"; - description "System Role"; - // Type is an MO-Defined-Type - type lacp_SysRole; + type isis_OperSt; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // ISIS databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses isis_Db-group; + description "IS-IS Database list"; + } + description "IS-IS Database"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds overload information + container overload-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses isis_Overload-group; + description "Holds ISIS Domain Overload Policy"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // This object holds per level isis vrf information + container lvl-items { + list DomLvl-list { + key "type"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + uses isis_DomLvl-group; + description "Holds ISIS Domain Level Properties list"; + } + description "Holds ISIS Domain Level Properties"; } - // This object holds lacp information that is operated at a - // interface (member port of the port channel) level - container if-items { - list If-list { - key "id"; + // This object holds per address family isis vrf information + container af-items { + list DomAf-list { + key "type"; - // Added containment: Prefix=if - // Acquired From Package lacp - uses lacp_If-group; + uses isis_DomAf-group; + description "Holds ISIS Domain Address Family Domain related properties list"; } + description "Holds ISIS Domain Address Family Domain related properties"; } - } - - grouping lacp_If-group { - // Port priority - LACP uses the port priority to decide - // which ports should be put in standby mode when there - // is a limitation that prevents all compatible ports - // from aggregating and which ports should be put into - // active mode. A higher port priority value means a - // lower priority for LACP - // Type is an MO-Defined-Type - leaf prio { - description "Specifies the LACP Interface Port Priority"; + // ISIS Distribute link-state + container distrls-items { - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_DistrLs-group; + description "Holds ISIS Distribute link-state information"; } - // Transmit rate, the rate at which the packets are - // transmitted - // Type is an MO-Defined-Type - leaf txRate { - description "Specifies the rate at which the LACP Packets are transmitted"; + // Fabric multicast (ftag) tree element + container fmtree-items { + list FmcastTree-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type lacp_TxRate; + uses isis_FmcastTree-group; + description "IS-IS Fabric Multicast Tree list"; + } + description "IS-IS Fabric Multicast Tree"; } - // Activity flags - // Type is an MO-Defined-Type - leaf activityFlags { - config "false"; - description "Specifies the LACP interface activity flags"; + // This objects hold per graceful restart information + container gr-items { - // Type is an MO-Defined-Type - type lacp_ActivityFlags; - } - leaf lastActive { - config "false"; - type string; + uses isis_Gr-group; + description "Graceful Restart Policy"; } - // Local port num - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Specifies the LACP interface local port number"; + // This object holds ospf information that is operated at an + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type lacp_PortNum; + uses isis_If-group; + description "ISIS Interface list"; + } + description "ISIS Interface"; } - // Operational port priority - // Type is an MO-Defined-Type - leaf operPrio { - config "false"; - description "Specifies the LACP Interface Operational Port Priority"; + // This objects holds default route leak policy + container defrtleak-items { - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_DefRtLeakP-group; + description "Default Route Leak Policy"; } + } - // Operational key - // Type is an MO-Defined-Type - leaf key { + grouping isis_Db-group { + description "IS-IS Database"; + + // Type of the repository + leaf type { config "false"; - description "Specifies the LACP Interface Operational Key"; - // Type is an MO-Defined-Type - type lacp_Key; + type isis_DbT; + description "Type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Database of fabric multicast group elements + container grp-items { + list GrpRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses isis_GrpRec-group; + description "Group Record list"; + } + description "Group Record"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Node records + container node-items { + list NodeRec-list { + config "false"; + key "sysId"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses isis_NodeRec-group; + description "Node Record list"; + } + description "Node Record"; } - // This object holds lacp neighbor information - container adj-items { + // LSP records + container lsp-items { + list LspRec-list { + config "false"; + key "sysId lanId frag"; - // Added containment as a singleton: Prefix=adj - // Acquired From Package lacp - uses lacp_AdjEp-group; + uses isis_LspRec-group; + description "LSP Record list"; + } + description "LSP Record"; } - // This object holds lacp intf statistics operational information. - // This is a singleton within an intferace - container ifstats-items { + // This object holds the isis nexthop information + container nh-items { + list Nexthop-list { + config "false"; + key "nhIf addr"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package lacp - uses lacp_IfStats-group; + uses isis_Nexthop-group; + description "IS-IS Nexthop list"; + } + description "IS-IS Nexthop"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - container rtvrfMbr-items { + // This object holds the isis route information + container rt-items { + list Route-list { + config "false"; + key "pfx"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses isis_Route-group; + description "IS-IS Route list"; + } + description "IS-IS Route"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Tunnel endpoints discovered through isis + container dtep-items { + list DTEp-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses isis_DTEp-group; + description "Discovered Tunnel Endpoint list"; } + description "Discovered Tunnel Endpoint"; } } - grouping lacp_AdjEp-group { + grouping isis_GrpRec-group { + description "Group Record"; - // Neighbor system priority - // Type is an MO-Defined-Type - leaf sysPrio { + // Group address + leaf addr { config "false"; - description "Specifies the Adjacency Neighbor System Priority"; - // Type is an MO-Defined-Type - type lacp_SysPrio; + type mcast_GrpIp; + description "Address"; } - // Neighbor system id - // Type is an MO-Defined-Type - leaf sysId { + leaf name { config "false"; - description "Specifies the Adjacency Neighbor System ID"; - // Type is an MO-Defined-Type - type lacp_SysMac; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Neighbor Port number - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Specifies the Adjacency Neighbor Port Number"; + // Per FTAG OIF List Record + container ftagoif-items { + list FtagOifRec-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type lacp_PortNum; + uses isis_FtagOifRec-group; + description "FTAG OIF Record list"; + } + description "FTAG OIF Record"; } - // Neighbor port priority - // Type is an MO-Defined-Type - leaf portPrio { - config "false"; - description "Neighbor Port Priority"; + // BD records active for this multicast group element + container bd-items { + list BdIdRec-list { + config "false"; + key "encap"; - // Type is an MO-Defined-Type - type lacp_PortPrio; + uses isis_BdIdRec-group; + description "Bridge Domain ID Record list"; + } + description "Bridge Domain ID Record"; } - // Neighbor activity flags - // Type is an MO-Defined-Type - leaf activityFlags { - config "false"; - description "Specifies the LACP Adjacency Neighbor Activity Flags"; + // Fabric nodes active for this multicast group element + container node-items { + list NodeIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type lacp_ActivityFlags; + uses isis_NodeIdRec-group; + description "Node ID Record list"; + } + description "Node ID Record"; } - // Neighbor oper key - // Type is an MO-Defined-Type - leaf key { + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; + + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; + } + + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; + + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; + } + } + + grouping isis_FtagOifRec-group { + description "FTAG OIF Record"; + + // Ftag ID + leaf id { config "false"; - description "Specifies the Adjacency Neighbor Operational Key"; - // Type is an MO-Defined-Type - type lacp_Key; + type fmcast_Id; + description "Ftag ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping lacp_IfStats-group { + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; - // LACP Interface Stats Number of LACP pdus sent - // Type is an MO-Defined-Type - leaf pduSent { - config "false"; - description "Number of PDUs Sent"; + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; + } - // Type is an MO-Defined-Type - type nw_Counter64; + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; + + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; } + } - // Number of LACP pdus received - // Type is an MO-Defined-Type - leaf pduRcvd { + grouping isis_OifListLeaf-group { + description "OIF List"; + + // Index + leaf idx { config "false"; - description "Number of PDUs Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type fmcast_Id; + description "Index"; } - // Number of marker sent - // Type is an MO-Defined-Type - leaf markerSent { + leaf name { config "false"; - description "Number of Markers Sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Number of marker received - // Type is an MO-Defined-Type - leaf markerRcvd { + grouping isis_OifListSpine-group { + description "OIF List"; + + // Index + leaf idx { config "false"; - description "Number of Markers Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type fmcast_Id; + description "Index"; } - // Number of marker response sent - // Type is an MO-Defined-Type - leaf markerRspSent { + leaf name { config "false"; - description "Number of Marker Responses Sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Number of marker reponse received - // Type is an MO-Defined-Type - leaf markerRspRcvd { + grouping isis_BdIdRec-group { + description "Bridge Domain ID Record"; + leaf encap { config "false"; - description "Number of Marker Responses Received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type string; + description "Encapsulation"; } - // Number of error packets received - // Type is an MO-Defined-Type - leaf errPktRcvd { + leaf name { config "false"; - description "Number of Error Packets Received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } } - grouping mgmt_MgmtIf-group { + grouping isis_NodeIdRec-group { + description "Node ID Record"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + grouping isis_NodeRec-group { + description "Node Record"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Multicast groups identifier record + container grp-items { + list GrpIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses isis_GrpIdRec-group; + description "Group IP Record list"; + } + description "Group IP Record"; } + } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + grouping isis_GrpIdRec-group { + description "Group IP Record"; - // Type is an MO-Defined-Type - type l1_AdminSt; + // Group address + leaf addr { + config "false"; + + type mcast_GrpIp; + description "Address"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Modified by Override: mgmt:MgmtIf->speed - // Type is an MO-Defined-Type - leaf speed { + leaf name { config "false"; - description "Administrative Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; - - // Type is an MO-Defined-Type - type l1_Duplex; + grouping isis_LspRec-group { + description "LSP Record"; + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + // LAN id + leaf lanId { + config "false"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + type isis_LanId; + description "LAN ID"; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + // Fragment number + leaf frag { + config "false"; - // Type is an MO-Defined-Type - type l1_Mtu; + type isis_FragNum; + description "Fragment Number"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + // Level type + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type isis_LvlT; + description "Level Type"; } - // Mgmt interface - container mgmt-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=mgmt - // Acquired From Package im - uses im_MgmtIf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Mgmt0 interface capabilities - container portcap-items { + // Extended IS Record + container extisrec-items { + list ExtIsRec-list { + config "false"; + key "name"; - // Added containment as a singleton: Prefix=portcap - // Acquired From Package im - uses im_PortCap-group; + uses isis_ExtIsRec-group; + description "Extended IS Record list"; + } + description "Extended IS Record"; } - // Rel-def target from rtdMgmtConf - // Inherited From mgmt:MgmtIf - container rtrtdMgmtConf-items { + // Generic TLV Record + container tlvRec-items { + list TlvRec-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=rtrtdMgmtConf - // Acquired From Package mgmt - uses mgmt_RtRtdMgmtConf_target-group; + uses isis_TlvRec-group; + description "Generic TLV Record list"; + } + description "Generic TLV Record"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - container rtvrfMbr-items { + // IP Prefix record + container iprec-items { + list IpRec-list { + config "false"; + key "pfx"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses isis_IpRec-group; + description "IP Prefix Record list"; + } + description "IP Prefix Record"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + grouping isis_ExtIsRec-group { + description "Extended IS Record"; + + leaf name { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } + } - container dbgIfIn-items { + grouping isis_TlvRec-group { + description "Generic TLV Record"; - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + // TLV Type + leaf type { + config "false"; + + type isis_TlvType; + description "TLV"; } - container dbgIfOut-items { + // TLV Value + leaf value { + config "false"; - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + type isis_TlvVal; + description "Value"; } - container dbgIpIn-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgDot1d-items { - - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + grouping isis_IpRec-group { + description "IP Prefix Record"; + leaf pfx { + config "false"; + type address_Ip; + description "Prefix"; } - container dbgEtherStats-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgDot3Stats-items { + grouping isis_Nexthop-group { + description "IS-IS Nexthop"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + // Nexhop interface [Deprecated] + leaf if { + config "false"; + + type nw_Iod; + description "Interface (IOD Internal)"; } - container dbgIfHCIn-items { + // Nexhop interface + leaf nhIf { + config "false"; - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + type nw_IfId; + description "Interface"; + } + leaf addr { + config "false"; + type address_Ip; + description "Address"; } - container dbgIfHCOut-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - container dbgIpv6IfStats-items { + grouping isis_Route-group { + description "IS-IS Route"; + leaf pfx { + config "false"; + type address_Ip; + description "Prefix"; + } - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - container dbgIfStorm-items { + container rsnhAtt-items { - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + list RsNhAtt-list { + key "tDn"; + + uses isis_RsNhAtt_source-group; + description "IS-IS Nexthop Attachment list"; + } + description "IS-IS Nexthop Attachment"; } } - grouping im_MgmtIf-group { + grouping isis_DTEp-group { + description "Discovered Tunnel Endpoint"; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Runtime state of the object or policy"; - // Type is an MO-Defined-Type - type l1_OperSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational port status reason - // Type is an MO-Defined-Type - leaf operStQual { + // Endpoint identifier + leaf id { config "false"; - description "Chassis Operational Port Status Qualifier"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type tunnel_EpId; + description "ID"; } - // Operational port speed - // Type is an MO-Defined-Type - leaf operSpeed { + // Endpoint encapsulation type + leaf encapt { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type tunnel_EncapT; + description "Encapsulation Type"; } - // Operational duplex - // Type is an MO-Defined-Type - leaf operDuplex { + // Endpoint type + leaf type { config "false"; - description "Operational Duplex"; - // Type is an MO-Defined-Type - type l1_Duplex; + type tunnel_EpT; + description "Type"; } - // Operational physical port layer - // Type is an MO-Defined-Type - leaf operPhyLayer { + // Role of the remote endpoint + leaf role { config "false"; - description "Operational Physical Port Layer"; - // Type is an MO-Defined-Type - type l1_PhyLayer; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf portInitEvalFlag { - config "false"; - type uint8; + type top_NodeRole; + description "Role"; } + } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Mtu"; + grouping isis_Overload-group { + description "Holds ISIS Domain Overload Policy"; - // Type is an MO-Defined-Type - type l1_Mtu; - } - leaf iod { - config "false"; - type uint64; + // Adminstrative state + leaf adminSt { + + type isis_OverloadAdminSt; + description "Admin State"; } - // Vdc id - // Type is an MO-Defined-Type - leaf vdcId { - config "false"; - description "Vdc Id"; + // On at startup till the following duration + leaf startupTime { - // Type is an MO-Defined-Type - type l2_VdcId; + type isis_StartupTime; + description "Startup Time"; } - leaf lastLinkStChg { - config "false"; - type string; + leaf bgpAsNum { + type uint16; + description "BGP ASN"; } - } - grouping im_PortCap-group { - leaf portCap { - config "false"; - type uint32; + // Suppress information + leaf suppress { + + type isis_SuppressControl; + description "Suppress Internal/External"; } } - grouping mit_MitOperRoot-group { + grouping isis_DomLvl-group { + description "Holds ISIS Domain Level Properties"; - container commitMit-items { + // Per level controls + leaf ctrl { - // Added containment as a singleton: Prefix=commitMit - // Acquired From Package mit - uses mit_CommitMit-group; + type isis_DomLvlControl; + description "Controls"; } - container copyMit-items { + leaf name { - // Added containment as a singleton: Prefix=copyMit - // Acquired From Package mit - uses mit_CopyMit-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - container mitLock-items { - list MitLock-list { - key "treeId"; - // Added containment: Prefix=mitLock - // Acquired From Package mit - uses mit_MitLock-group; - } + // Type + leaf type { + + type isis_LvlT; + description "Type"; } - container sessionLock-items { - list SessionLock-list { - key "name"; - // Added containment: Prefix=sessionLock - // Acquired From Package mit - uses mit_SessionLock-group; + // ISIS databases + container db-items { + list Db-list { + config "false"; + key "type"; + + uses isis_Db-group; + description "IS-IS Database list"; } + description "IS-IS Database"; } - } - grouping mit_CommitMit-group { - leaf srcTreeId { - type uint32; + // This object holds lsp generation interval controls + container lspgen-items { + + uses isis_LspGen-group; + description "LSP Generation Controls"; } - // Type is an MO-Defined-Type - leaf commitOperType { - description "commit operation type"; + // This object holds spf computation frequency controls + container spfcomp-items { - // Type is an MO-Defined-Type - type mit_OperType; - } - leaf timeout { - type uint32; - } - leaf txnId { - type string; + uses isis_SpfComp-group; + description "SPF Computation Controls"; } } - grouping mit_CopyMit-group { + grouping isis_LspGen-group { + description "LSP Generation Controls"; - // Type is an MO-Defined-Type - leaf srcTreeId { - description "source id of mit"; + // Initial wait interval + leaf initIntvl { - // Type is an MO-Defined-Type - type mit_TreeType; + type isis_LspGenInitIntvl; + description "Initial Wait Interval"; } - // Type is an MO-Defined-Type - leaf dstTreeId { - description "destination id of mit"; - - // Type is an MO-Defined-Type - type mit_TreeType; - } - } + // Second wait interval + leaf secIntvl { - grouping mit_MitLock-group { - leaf treeId { - type uint32; + type isis_LspGenSecIntvl; + description "Second Wait Interval"; } - // Type is an MO-Defined-Type - leaf lockStatus { - description "current lock status of a mit"; + // Maximum wait interval + leaf maxIntvl { - // Type is an MO-Defined-Type - type mit_LockStatus; - } - leaf pid { - type uint32; - } - leaf isForceUnlock { - type boolean; - default "true"; + type isis_LspGenMaxIntvl; + description "Maximum Wait Interval"; } } - grouping mit_SessionLock-group { - leaf treeId { - type uint32; - } + grouping isis_SpfComp-group { + description "SPF Computation Controls"; - // Type is an MO-Defined-Type - leaf lockStatus { - description "current lock status of a session"; + // Initial wait inerval + leaf initIntvl { - // Type is an MO-Defined-Type - type mit_LockStatus; + type isis_SpfCompInitIntvl; + description "Initial Wait Interval"; } - leaf pid { - type uint32; + + // Second wait interval + leaf secIntvl { + + type isis_SpfCompSecIntvl; + description "Second Wait Interval"; } - leaf name { - type string; + + // Maximum wait interval + leaf maxIntvl { + + type isis_SpfCompMaxIntvl; + description "Maximum Wait Interval"; } } - grouping snmp_Entity-group { + grouping isis_DomAf-group { + description "Holds ISIS Domain Address Family Domain related properties"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Per address family controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type isis_DomAfControl; + description "Controls"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // ISIS Multi-topology information + leaf mtType { - // Type is an MO-Defined-Type - type nw_AdminSt; + type isis_TopoT; + description "Holds ISIS Domain address family Multi-topology information"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf dist { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type isis_Dist; + description "Holds ISIS Domain address family Administrative Distance"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Modified by Override: snmp:Entity->operErr - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // MAX ECMP + leaf maxEcmp { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type isis_Ecmp; + description "Holds ISIS Domain address family Max ECMP value"; } - // This objects hold per snmp instance information - container inst-items { + // default-information originate command + leaf defInfOrig { - // Added containment as a singleton: Prefix=inst - // Acquired From Package snmp - uses snmp_Inst-group; + type isis_DefInfOrigSt; + description "Holds ISIS Domain address family default-information originate state for Route"; + } + leaf defInfOrigRtMap { + type string; + description "Holds Route-map name for ISIS Domain address family default-information originate"; + } + leaf enableBfd { + type boolean; + description "Enabling BFD on all ISIS domain interfaces"; + } + leaf tblMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Holds Route-map name to filter routes downloaded"; } - } - grouping snmp_Inst-group { + // Configure table-map for Selective route download + leaf tblMapFltr { - // Engine Id - // Type is an MO-Defined-Type - leaf engId { - description "Engine Id"; + type isis_AdminSt; + description "Enables table-map for Selective route"; + } + leaf rtrIdIpAddr { + type address_Ip; + description "Holds ip address to become router id"; + } - // Type is an MO-Defined-Type - type snmp_EngId; + // Router interface + leaf rtrIdIf { + + type nw_IfId; + description "Holds interface"; + } + leaf srMpls { + type boolean; + default "true"; + description "Segment routing for MPLS"; } - // Inherited From pol:Obj - // Modified by Override: snmp:APol->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_AfT; + description "Type"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Distribute policy defines distribution of routes from one level to another level + container distribute-items { + list Distribute-list { + key "source"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses isis_Distribute-group; + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level list"; } + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Advertise interface + container advertiseint-items { + list AdvertiseInt-list { + key "advtIf"; - // Type is an MO-Defined-Type - type naming_Descr; + uses isis_AdvertiseInt-group; + description "Holds Advertise Interface medialist Level list"; + } + description "Holds Advertise Interface medialist Level"; } - // Inherited From snmp:APol - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to isis + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses isis_InterLeakP-group; + description "Inter Protocol Route Leak Policy list"; + } + description "Inter Protocol Route Leak Policy"; } - // Access control based on ip addresses and communities. - // This is valid only with v1/v2c security Client group - container clgrp-items { - list ClientGrp-list { - key "name"; + // Leak controls related to the number of routes leaked + container leakctrl-items { - // Added containment: Prefix=clgrp - // Acquired From Package snmp - uses snmp_ClientGrp-group; - } + uses isis_LeakCtrlP-group; + description "Leak Control Policy"; } - container globals-items { + // This objects hold summarization address. Any address + // that maps to this prefix will be summarized through + // this address + container rtsum-items { + list RtSum-list { + key "addr"; - // Added containment as a singleton: Prefix=globals - // Acquired From Package snmp - uses snmp_Globals-group; + uses isis_RtSum-group; + description "Route Summarization Policy list"; + } + description "Route Summarization Policy"; } - container host-items { - list Host-list { - key "hostName udpPortID"; - // Added containment: Prefix=host - // Acquired From Package snmp - uses snmp_Host-group; + // This object holds ISIS Segment Routing configurations + container segrt-items { + list SgmRtg-list { + key "sr"; + + uses isis_SgmRtg-group; + description "Object to hold isis Segment Routing configurations list"; } + description "Object to hold isis Segment Routing configurations"; } + } - container rmon-items { + grouping isis_Distribute-group { + description "Holds ISIS Instance Distribution policy which distributes router from one level to another level"; - // Added containment as a singleton: Prefix=rmon - // Acquired From Package snmp - uses snmp_Rmon-group; + // Source domain, level from which the routes are leaked + leaf source { + + type isis_LvlT; + description "Holds Source Domain for Routes Distribute Policy"; } - // Security policy using communities. Uses a community - // string match for authentication - container community-items { - list CommSecP-list { - key "name"; + // Destination domain, level to which the routes are leaked + leaf destination { - // Added containment: Prefix=community - // Acquired From Package snmp - uses snmp_CommSecP-group; + type isis_LvlT; + description "Holds Destination Domain for Routes Distribute Policy"; + } + leaf all { + type boolean; + default "true"; + description "Holds Distribution of all level-n routes"; + } + leaf rmap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Holds Route-map name for Distribute Policy"; } + } - // Authentication policy using user names - container user-items { - list UserSecP-list { - key "name"; + grouping isis_AdvertiseInt-group { + description "Holds Advertise Interface medialist Level"; - // Added containment: Prefix=user - // Acquired From Package snmp - uses snmp_UserSecP-group; - } + // Interface + leaf advtIf { + + type nw_IfId; + description "Holds Advertise interface"; } - // This objects holds snmp context information - container ctx-items { - list Ctx-list { - key "name"; + // Level + leaf advtLevel { - // Added containment: Prefix=ctx - // Acquired From Package snmp - uses snmp_Ctx-group; - } + type isis_AdvtLvl; + description "Holds Advertise interface level"; } + } - container sysinfo-items { + grouping isis_InterLeakP-group { + description "Inter Protocol Route Leak Policy"; - // Added containment as a singleton: Prefix=sysinfo - // Acquired From Package snmp - uses snmp_SysInfo-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container traps-items { + leaf descr { - // Added containment as a singleton: Prefix=traps - // Acquired From Package snmp - uses snmp_Traps-group; + type naming_Descr; + description "Description of the specified attribute"; } - container rmtUser-items { - list RemoteUser-list { - key "userName usrengineId"; - // Added containment: Prefix=rmtUser - // Acquired From Package snmp - uses snmp_RemoteUser-group; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + + type rtleak_Scope; + default "inter"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Route Map"; } - container lclUser-items { - list LocalUser-list { - key "userName"; - // Added containment: Prefix=lclUser - // Acquired From Package snmp - uses snmp_LocalUser-group; - } + // Protocol from where the routes are leaked + leaf proto { + + type rtleak_Proto; + description "Protocol"; } - } - grouping snmp_ClientGrp-group { + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // The vrf that this client group belongs to - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + type rtleak_Inst; + description "Instance"; + } - // Type is an MO-Defined-Type - type l3_VrfName; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { + + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; + } + description "Autonomous System Number"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Type is an MO-Defined-Type - type nw_OSSum; + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } + } + + grouping isis_LeakCtrlP-group { + description "Leak Control Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf epgDn { - config "false"; - type string; - } - container client-items { - list Client-list { - key "addr"; - // Added containment: Prefix=client - // Acquired From Package snmp - uses snmp_Client-group; - } + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { + + type rtleak_Ctrl; + description "Controls"; } - // Rel-def from CommSecPClientGrpAtt - container rscommSecPClientGrpAtt-items { + // Maximum limit on routes leaked + leaf max { - // Abstract containment of rscommSecPClientGrpAtt derived from snmp:ClientGrp - list RsCommSecPClientGrpAtt-list { - config "false"; - key "tDn"; + type rtleak_MaxPfx; + description "Maximum Limit"; + } - // Added containment: Prefix=rscommSecPClientGrpAtt - // Acquired From Package snmp - uses snmp_RsCommSecPClientGrpAtt_source-group; - } + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { + + type rtleak_Thresh; + description "Threshold"; + } + + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { + + type rtleak_Retries; + description "Retries"; + } + + // Duration between the retries + leaf duration { + + type rtleak_Duration; + description "Duration"; } } - grouping snmp_Client-group { + grouping isis_RtSum-group { + description "Route Summarization Policy"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Summary Level + leaf sumLevel { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_SumLvl; + description "Holds summary address level"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; + description "Address"; } } - grouping snmp_Globals-group { + grouping isis_SgmRtg-group { + description "Object to hold isis Segment Routing configurations"; - // Type is an MO-Defined-Type - leaf aaaUserCacheTimeout { - description "Timeout for AAA Cache"; + leaf sr { - // Type is an MO-Defined-Type - type snmp_AaaUserCacheTimeout; + type isis_SgmntRtg; + description "Support Segment-Routing options in ISIS"; } - // Type is an MO-Defined-Type - leaf protocolEnable { - description "Enable/Disable snmp protocol operations"; + // This object holds ISIS Segment Routing Locator configuration + container loc-items { + list Locator-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_Boolean; + uses isis_Locator-group; + description "Object to hold ISIS Segment Routing SRv6 Locator configurations list"; + } + description "Object to hold ISIS Segment Routing SRv6 Locator configurations"; } + } - // Type is an MO-Defined-Type - leaf counterCacheEnable { - description "Enable port stats cache"; - - // Type is an MO-Defined-Type - type snmp_Boolean; - } + grouping isis_Locator-group { + description "Object to hold ISIS Segment Routing SRv6 Locator configurations"; - // Type is an MO-Defined-Type - leaf counterCacheTimeout { - description "Timeout for port stats cache"; + leaf name { - // Type is an MO-Defined-Type - type snmp_CounterCacheTimeout; + type naming_Name256 { + length "1..64"; + pattern ".*[!-~]{1,58}.*"; + } + description "Name"; } - // SNMP SERVER Packet Size - // Type is an MO-Defined-Type - leaf pktSize { - description "Packet size config"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_PktSizeT; + type nw_AdminSt; + description "Admin State"; } - // tcp-session auth config - // Type is an MO-Defined-Type - leaf tcpSessionAuth { - description "tcp-session auth config"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type snmp_tcpSessionAuthT; + type nw_EntOperSt; + description "Indicates whether locator state is operational"; } + } - container srcInterfaceTraps-items { - - // Added containment as a singleton: Prefix=srcInterfaceTraps - // Acquired From Package snmp - uses snmp_SourceInterfaceTraps-group; + grouping isis_DistrLs-group { + description "Holds ISIS Distribute link-state information"; + leaf state { + type boolean; + default "true"; + description "Holds State of ISIS Distribute Link-state"; } - container srcInterfaceInforms-items { + // Instance id of ISIS Distribute Link-state + leaf instId { - // Added containment as a singleton: Prefix=srcInterfaceInforms - // Acquired From Package snmp - uses snmp_SourceInterfaceInforms-group; + type isis_InstId; + description "Holds Instance id of ISIS Distribute Link-state"; } - } - - grouping snmp_SourceInterfaceTraps-group { - // Type is an MO-Defined-Type - leaf ifname { - description "Source interface name for Traps"; + // Level of ISIS Distribute Link-state + leaf level { - // Type is an MO-Defined-Type - type nw_IfId; + type isis_DistrLvl; + description "Holds Level of ISIS Distribute Link-state"; } - } - - grouping snmp_SourceInterfaceInforms-group { - // Type is an MO-Defined-Type - leaf ifname { - description "Source interface name for informs"; + // Throttle timer of ISIS Distribute Link-state + leaf throt { - // Type is an MO-Defined-Type - type nw_IfId; + type isis_Throttle; + description "Holds Throttle timer of ISIS Distribute Link-state"; } } - grouping snmp_Host-group { + grouping isis_FmcastTree-group { + description "IS-IS Fabric Multicast Tree"; - // Host name - // Type is an MO-Defined-Type - leaf hostName { - description "snmp-server host name"; + // Id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type snmp_hostNameT; + type fmcast_Id; + description "Tree ID"; } - // IP address in string - // Type is an MO-Defined-Type - leaf ipAddr { + // Operational state + leaf operSt { config "false"; - description "Ip address corresponding to the host"; - // Type is an MO-Defined-Type - type snmp_hostNameT; + type fmcast_OperSt; + description "Operational State"; } - // Community name - // Type is an MO-Defined-Type - leaf commName { - description "community to be associated to the host"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type snmp_commNameT; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Ctrl bits to decide Traps / Informs - // Type is an MO-Defined-Type - leaf notifType { - description "Ctrl bits indicating traps/informs config"; + // Fabric nodes active for this multicast group element + container node-items { + list NodeIdRec-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type snmp_NotificationType; + uses isis_NodeIdRec-group; + description "Node ID Record list"; + } + description "Node ID Record"; } - // Ctrl bits to decide version - // Type is an MO-Defined-Type - leaf version { - description "Ctrl bits indicating version"; + // Outgoing interface List on Leaf + container oifleaf-items { + list OifListLeaf-list { + config "false"; + key "idx"; - // Type is an MO-Defined-Type - type snmp_Version; + uses isis_OifListLeaf-group; + description "OIF List list"; + } + description "OIF List"; } - // Control bitmask for deciding auth/ priv/ noauth for v3 - // Type is an MO-Defined-Type - leaf secLevel { - description "Ctrl bits indicating auth/ priv/ noauth for v3"; + // Outgoing interface List on Spine + container oifspine-items { + list OifListSpine-list { + config "false"; + key "idx"; - // Type is an MO-Defined-Type - type snmp_V3SecLvl; + uses isis_OifListSpine-group; + description "OIF List list"; + } + description "OIF List"; } + } - // udp-port ID - // Type is an MO-Defined-Type - leaf udpPortID { - description "snmp-server host udp-port"; + grouping isis_Gr-group { + description "Graceful Restart Policy"; - // Type is an MO-Defined-Type - type snmp_PortIdT; - } - container usevrf-items { - list UseVrf-list { - key "vrfname"; + // Graceful Restart + leaf adminSt { - // Added containment: Prefix=usevrf - // Acquired From Package snmp - uses snmp_UseVrf-group; - } + type nw_AdminSt; + description "Admin State"; } - } - - grouping snmp_UseVrf-group { - // Type is an MO-Defined-Type - leaf vrfname { - description "vrfname to be used by host"; + // T3 timer for graceful restart + leaf grT3Intvl { - // Type is an MO-Defined-Type - type l3_VrfName; + type isis_GrT3Intvl; + description "T3 Interval"; } - } - grouping snmp_Rmon-group { - container event-items { - list Event-list { - key "num"; + leaf name { - // Added containment: Prefix=event - // Acquired From Package snmp - uses snmp_Event-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container alarm-items { - list Alarm-list { - key "num"; - // Added containment: Prefix=alarm - // Acquired From Package snmp - uses snmp_Alarm-group; - } + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping snmp_Event-group { + grouping isis_If-group { + description "ISIS Interface"; - // Event Number - // Type is an MO-Defined-Type - leaf num { - description "rmon event number"; + leaf name { - // Type is an MO-Defined-Type - type snmp_EventNum; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // To generate / not log when alarm event is fired - // Type is an MO-Defined-Type - leaf log { - description "Whether to generate / not log when alarm event is fired"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_LogEnableType; + type naming_Descr1024; + description "Description"; } - // Type is an MO-Defined-Type - leaf owner { - description "rmon event owner"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type snmp_OwnerType; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Type is an MO-Defined-Type - leaf description { - description "rmon event description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_DescType; + type nw_IfAdminSt; + description "Admin State"; } - // Type is an MO-Defined-Type - leaf trap { - description "rmon event description"; + // Circuit type + leaf cktT { - // Type is an MO-Defined-Type - type snmp_TrapCommType; + type isis_IsT; + description "Holds ISIS interface Circuit Type"; } - } - - grouping snmp_Alarm-group { - // Alarm Number - // Type is an MO-Defined-Type - leaf num { - description "rmon alarm number"; + // Metric level-1 + leaf metricLvl1 { - // Type is an MO-Defined-Type - type snmp_EventNum; - } - leaf oid { - type string; + type isis_Metric; + description "Holds ISIS interface Metric level-1"; } - // Sample Interval - // Type is an MO-Defined-Type - leaf sampleInterval { - description "rmon alarm sample interval"; + // Metric level-2 + leaf metricLvl2 { - // Type is an MO-Defined-Type - type snmp_smplIntvl; + type isis_Metric; + description "Holds ISIS interface Metric level-2"; } - // Sample Type - // Type is an MO-Defined-Type - leaf sampleType { - description "rmon alarm sample interval type"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type snmp_smplType; + type isis_IfControl; + description "Holds ISIS interface Control messages"; } - - // Rising Threshold - // Type is an MO-Defined-Type - leaf risingThr { - description "rmon alarm rising threshold"; - - // Type is an MO-Defined-Type - type snmp_thrshld; + leaf v4enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV4 family"; + } + leaf v6enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV6 family"; + } + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level2"; + } + leaf authCheck { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface without specific Level"; } - // Rising Threshold Event Index - // Type is an MO-Defined-Type - leaf risingEvntIndx { - description "rmon alarm rising threshold event index"; + // Enable P2P Interface + leaf networkTypeP2P { - // Type is an MO-Defined-Type - type snmp_EventIndx; + type isis_NetworkTypeP2PSt; + description "Enabling Point-to-Point Network Type on ISIS Interface"; } - // Falling Threshold - // Type is an MO-Defined-Type - leaf fallingThr { - description "rmon alarm falling threshold"; + // LSP refresh Interval + leaf lspRefreshIntvl { - // Type is an MO-Defined-Type - type snmp_thrshld; + type isis_LspRefreshIntvl; + description "Holds ISIS Interface LSP Refresh Interval"; } - // Falling Threshold Event Index - // Type is an MO-Defined-Type - leaf fallingEvntIndx { - description "rmon alarm falling threshold event index"; + // LSP Retransmit Interval + leaf retransInterval { - // Type is an MO-Defined-Type - type snmp_EventIndx; + type isis_RetransInterval; + description "Holds ISIS Interface Retransmit Interval"; } - // Owner Name - // Type is an MO-Defined-Type - leaf owner { - description "rmon alarm owner"; + // LSP Retransmit Throttle Interval + leaf retransThrottleInterval { - // Type is an MO-Defined-Type - type snmp_OwnerType; + type isis_RetransThrottleInterval; + description "Holds ISIS Interface Retransmit Throttle Interval"; } - } - - grouping snmp_CommSecP-group { - // Group to which community belongs to - // Type is an MO-Defined-Type - leaf grpName { - description "SNMP community group"; + // IPv4 BFD + leaf v4Bfd { - // Type is an MO-Defined-Type - type snmp_GrpNameT; + type isis_BfdT; + description "Holds ISIS Interface BFD Configruation"; } - // Community Access - // Type is an MO-Defined-Type - leaf commAcess { - description "SNMP community group"; + // IPv6 BFD + leaf v6Bfd { - // Type is an MO-Defined-Type - type snmp_CommAcessT; + type isis_BfdT; + description "Holds Interface BFD Configruation for IPV6 family"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Passive-interface Info + leaf passive { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_PassiveIntfT; + description "Holds ISIS Passive Interface Info"; } - // Inherited From pol:Obj - // Modified by Override: snmp:CommSecP->name - // Modified by Override: snmp:ACommunityP->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Interface Hello padding Info + leaf helloPad { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_HelloPadT; + description "Holds ISIS Interface Hello Padding Info"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Interface Hello Interval Info + leaf helloIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_HelloIntvl; + description "Holds Interface Hello Interval value"; } - // This object hold the ACl informations - container acl-items { + // ISIS Hello Interval for Level-1 + leaf helloIntvlLvl1 { - // Added containment as a singleton: Prefix=acl - // Acquired From Package snmp - uses snmp_Acl-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-1 value"; } - // Rel-def from CommToCtxAtt - container rscommToCtxAtt-items { + // ISIS Hello Interval for Level-2 + leaf helloIntvlLvl2 { - // Added containment as a singleton: Prefix=rscommToCtxAtt - // Acquired From Package snmp - uses snmp_RsCommToCtxAtt_source-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-2 value"; } - } - - grouping snmp_Acl-group { - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useAclName { - description "SNMP community acl name"; + // Hello Multiplier + leaf helloMult { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds Interface Hello Multiplier value"; } - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useIpv4AclName { - description "SNMP community acl name"; + // ISIS Hello Multiplier for Level-1 + leaf helloMultLvl1 { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-1 value"; } - // SNMP ACL name - // Type is an MO-Defined-Type - leaf useIpv6AclName { - description "SNMP community acl name"; + // ISIS Hello Multiplier for Level-2 + leaf helloMultLvl2 { - // Type is an MO-Defined-Type - type snmp_AclNameT; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-2 value"; } - } - - grouping snmp_UserSecP-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // ISIS Priority for Level-1 + leaf priorityLvl1 { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_CktPrio; + description "Holds ISIS Interface Level-1 Circuit Priority"; } - // Inherited From pol:Obj - // Modified by Override: snmp:AUserP->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // ISIS Priority for Level-2 + leaf priorityLvl2 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_CktPrio; + description "Holds ISIS Interface Level-2 Circuit Priority"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // ISIS Wide Metric MT2[IPV6] topology for Level-1 + leaf mt2MetricLvl1 { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-1"; } - // Authentication type - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf authType { - description "Authentication Type"; + // ISIS Wide Metric MT2[IPV6] topology for Level-2 + leaf mt2MetricLvl2 { - // Type is an MO-Defined-Type - type snmp_AuthType; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-2"; } - // Authentication key - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf authKey { - description "Authentication Key"; + // ISIS CSNP Interval for Level-1 + leaf csnpIntvlLvl1 { - // Type is an MO-Defined-Type - type snmp_AuthKey; + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-1 CSNP Interval"; } - // Privacy (encryption) type - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf privType { - description "Privacy"; + // ISIS CSNP Interval for Level-2 + leaf csnpIntvlLvl2 { - // Type is an MO-Defined-Type - type snmp_PrivType; + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-2 CSNP Interval"; } - // Privacy key - // Inherited From snmp:AUserP - // Type is an MO-Defined-Type - leaf privKey { - description "Privacy Key"; + leaf authType { - // Type is an MO-Defined-Type - type snmp_PrivKey; + type isis_AuthT; + description "Holds Authentication Type value for ISIS Interface"; } - } - - grouping snmp_Ctx-group { - // The vrf that this client group belongs to - // Type is an MO-Defined-Type - leaf vrf { - config "false"; - description "VRF"; + // Authentication Type for Level-1 + leaf authTypeLvl1 { - // Type is an MO-Defined-Type - type l3_VrfName; + type isis_AuthT; + description "Holds ISIS Level-1 Authentication Type value for Interface"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Authentication Type for Level-2 + leaf authTypeLvl2 { - // Type is an MO-Defined-Type - type nw_OSSum; + type isis_AuthT; + description "Holds ISIS Level-2 Authentication Type value for Interface"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Authentication Key for ISIS Interface + leaf authKey { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Authentication Key for ISIS Interface on Level-1 + leaf authKeyLvl1 { - // Type is an MO-Defined-Type - type naming_Descr; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-1"; } - } - - grouping snmp_SysInfo-group { - // Type is an MO-Defined-Type - leaf sysLocation { - description "System Location"; + // Authentication Key for ISIS Interface on Level-2 + leaf authKeyLvl2 { - // Type is an MO-Defined-Type - type snmp_SnmpSysLoc; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-2"; } - - // Type is an MO-Defined-Type - leaf sysContact { - description "System Contact"; - - // Type is an MO-Defined-Type - type snmp_SnmpSysContact; + leaf mtuCheckLvl1 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level1"; } - - // Type is an MO-Defined-Type - leaf sysDescription { - description "System Description"; - - // Type is an MO-Defined-Type - type snmp_SnmpSysDescr; + leaf mtuCheckLvl2 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level2"; } - } - - grouping snmp_Traps-group { - leaf enableAllTriggerCount { - config "false"; - type uint16; + leaf mtuCheck { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface without specific Level"; } - leaf enableAllViaCLI { - config "false"; + leaf nFlagClear { type boolean; + default "true"; + description "Enabling N flag clear for ISIS interface"; } - // Default traps List Starts From Here StormControl trap - container stormcontrol-items { + // This object holds isis neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "type sysId"; - // Added containment as a singleton: Prefix=stormcontrol - // Acquired From Package snmp - uses snmp_TstormControl-group; + uses isis_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } - // Default traps List Starts From Here AAA trap - container aaa-items { + // This object holds mesh group information per interface + container meshgrp-items { - // Added containment as a singleton: Prefix=aaa - // Acquired From Package snmp - uses snmp_Taaa-group; + uses isis_MeshGrp-group; + description "Holds ISIS interface Mesh Group Policy"; } - // Bfd trap - container bfd-items { + // This object holds per level isis interface information + container lvl-items { + list IfLvl-list { + key "type"; - // Added containment as a singleton: Prefix=bfd - // Acquired From Package snmp - uses snmp_Tbfd-group; + uses isis_IfLvl-group; + description "IS-IS Interface Policy Per Level list"; + } + description "IS-IS Interface Policy Per Level"; } - // Bridge trap - container bridge-items { + // This object holds per IF States information + container traffic-items { - // Added containment as a singleton: Prefix=bridge - // Acquired From Package snmp - uses snmp_Tbridge-group; + uses isis_IfTraffic-group; + description "Interface Traffic Statistics"; } - // Callhome trap - container callhome-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=callhome - // Acquired From Package snmp - uses snmp_Tcallhome-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // CFS trap - container cfs-items { + grouping isis_AdjEp-group { + description "Adjacency"; - // Added containment as a singleton: Prefix=cfs - // Acquired From Package snmp - uses snmp_Tcfs-group; + // Adjacency type + leaf type { + config "false"; + + type isis_LvlT; + description "Level Type"; + } + leaf sysId { + config "false"; + type address_Mac; + description "System ID"; } - // Config trap - container config-items { + // Operational state of the adjacency + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=config - // Acquired From Package snmp - uses snmp_Tconfig-group; + type isis_AdjOperSt; + description "Operational State"; } - // Entity trap - container entity-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=entity - // Acquired From Package snmp - uses snmp_Tentity-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + container addr-items { + list PeerIpAddr-list { + config "false"; + key "addr"; - // Feature-control trap - container featurecontrol-items { + uses isis_PeerIpAddr-group; + description "Peer IP Address list"; + } + description "Peer IP Address"; + } + } - // Added containment as a singleton: Prefix=featurecontrol - // Acquired From Package snmp - uses snmp_Tfeaturecontrol-group; + grouping isis_PeerIpAddr-group { + description "Peer IP Address"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; } + } - // hsrp trap - container hsrp-items { + grouping isis_MeshGrp-group { + description "Holds ISIS interface Mesh Group Policy"; - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package snmp - uses snmp_Thsrp-group; + // Mesh Group Id + leaf id { + + type isis_MeshGrpId; + description "Holds ISIS Mesh Group ID per Interface"; } - // generic trap - container generic-items { + // Mesh group controls + leaf ctrl { - // Added containment as a singleton: Prefix=generic - // Acquired From Package snmp - uses snmp_Tgeneric-group; + type isis_MeshGrpControl; + description "Holds ISIS Mesh Group Control Info per Interface"; } - // ip trap - container ip-items { + leaf name { - // Added containment as a singleton: Prefix=ip - // Acquired From Package snmp - uses snmp_Tip-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // license trap - container license-items { + leaf descr { - // Added containment as a singleton: Prefix=license - // Acquired From Package snmp - uses snmp_Tlicense-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // poe trap - container poe-items { + grouping isis_IfLvl-group { + description "IS-IS Interface Policy Per Level"; - // Added containment as a singleton: Prefix=poe - // Acquired From Package snmp - uses snmp_Tpoe-group; + // ISIS Wide Metric MT0[IPV4] topology for Level-1 + leaf mt0MetricLvl1 { + + type isis_WideMetric; + description "Holds ISIS interface IPV4 wide metric value for Level-1"; } - // link trap - container link-items { + // ISIS Wide Metric MT0[IPV4] topology for Level-2 + leaf mt0MetricLvl2 { - // Added containment as a singleton: Prefix=link - // Acquired From Package snmp - uses snmp_Tlink-group; + type isis_WideMetric; + description "Holds ISIS interface IPV4 wide metric value for Level-2"; } - // lldp trap - container lldp-items { + leaf name { - // Added containment as a singleton: Prefix=lldp - // Acquired From Package snmp - uses snmp_Tlldp-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // msdp trap - container msdp-items { + // Type + leaf type { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package snmp - uses snmp_Tmsdp-group; + type isis_LvlT; + description "Type"; } + } - // mmode trap - container mmode-items { + grouping isis_IfTraffic-group { + description "Interface Traffic Statistics"; + } - // Added containment as a singleton: Prefix=mmode - // Acquired From Package snmp - uses snmp_Tmmode-group; + grouping isis_DefRtLeakP-group { + description "Default Route Leak Policy"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // pim trap - container pim-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=pim - // Acquired From Package snmp - uses snmp_Tpim-group; + type naming_Descr; + description "Description of the specified attribute"; } - // rf trap - container rf-items { + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + config "false"; - // Added containment as a singleton: Prefix=rf - // Acquired From Package snmp - uses snmp_Trf-group; + type rtleak_Scope; + default "defrt"; + description "Scope"; } + leaf rtMap { + config "false"; + type string; + description "Route Map"; + } + } - // rmon trap - container rmon-items { + grouping isis_EvtHstry-group { + description "Holds ISIS event-history buffers Information for ISIS"; - // Added containment as a singleton: Prefix=rmon - // Acquired From Package snmp - uses snmp_Trmon-group; + // Holds type of event history + leaf type { + + type isis_EhType; + description "configures type of event history"; } - // snmp trap - container snmp-items { + leaf size { - // Added containment as a singleton: Prefix=snmp - // Acquired From Package snmp - uses snmp_Tsnmp-group; + type isis_EhSize; + description "configures buffer size in text/kb"; } + } - // stpx trap - container stpx-items { + grouping isis_SysLog-group { + description "Holds ISIS logging Information"; - // Added containment as a singleton: Prefix=stpx - // Acquired From Package snmp - uses snmp_Tstpx-group; + // Logging level for IS-IS + leaf logLevel { + + type isis_LogL; + description "Holds ISIS Logging Level"; } - // sysmgr trap - container sysmgr-items { + leaf name { - // Added containment as a singleton: Prefix=sysmgr - // Acquired From Package snmp - uses snmp_Tsysmgr-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // system trap - container system-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=system - // Acquired From Package snmp - uses snmp_Tsystem-group; + type nw_AdminSt; + description "Admin State"; } - // upgrade trap - container upgrade-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=upgrade - // Acquired From Package snmp - uses snmp_Tupgrade-group; + type nw_InstCtrl; + description "Controls"; } - // vsan trap - container vsan-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=vsan - // Acquired From Package snmp - uses snmp_Tvsan-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // vtp trap - container vtp-items { + grouping isis_InternalIf-group { + description "Internal Model for ISIS Interface"; - // Added containment as a singleton: Prefix=vtp - // Acquired From Package snmp - uses snmp_Tvtp-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // port-security trap - container portsecurity-items { + leaf descr { - // Added containment as a singleton: Prefix=portsecurity - // Acquired From Package snmp - uses snmp_Tportsecurity-group; + type naming_Descr1024; + description "Description"; } - // mpls trap - container mpls-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package snmp - uses snmp_Tmpls-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping snmp_TstormControl-group { + // Administrative state + leaf adminSt { - // SNMP trap-rate - // Type is an MO-Defined-Type - leaf traprate { - description "Number of traps per minute"; + type nw_IfAdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type snmp_TrapRateT; + // Circuit type + leaf cktT { + + type isis_IsT; + description "Holds ISIS interface Circuit Type"; } - // snmp authentication trap - container cpscEventRev1-items { + // Metric level-1 + leaf metricLvl1 { - // Added containment as a singleton: Prefix=cpscEventRev1 - // Acquired From Package snmp - uses snmp_CpscEventRev1-group; + type isis_Metric; + description "Holds ISIS interface Metric level-1"; } - } - grouping snmp_CpscEventRev1-group { + // Metric level-2 + leaf metricLvl2 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_Metric; + description "Holds ISIS interface Metric level-2"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Interface controls + leaf ctrl { + + type isis_IfControl; + description "Holds ISIS interface Control messages"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf v4enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV4 family"; } - } - - grouping snmp_Taaa-group { - leaf enableViaCLI { - config "false"; + leaf v6enable { + type boolean; + default "true"; + description "Enabling ISIS router tag on Interface's IPV6 family"; + } + leaf authCheckLvl1 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level1"; + } + leaf authCheckLvl2 { + type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface at Level2"; + } + leaf authCheck { type boolean; + default "true"; + description "Enabling Authentication check for ISIS interface without specific Level"; } - // AAA server-state-change trap - container serverstatechange-items { + // Enable P2P Interface + leaf networkTypeP2P { - // Added containment as a singleton: Prefix=serverstatechange - // Acquired From Package snmp - uses snmp_ServerStateChange-group; + type isis_NetworkTypeP2PSt; + description "Enabling Point-to-Point Network Type on ISIS Interface"; } - } - - grouping snmp_ServerStateChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // LSP refresh Interval + leaf lspRefreshIntvl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_LspRefreshIntvl; + description "Holds ISIS Interface LSP Refresh Interval"; } - } - - grouping snmp_Tbfd-group { - // Bfd session-down trap - container sessiondown-items { + // LSP Retransmit Interval + leaf retransInterval { - // Added containment as a singleton: Prefix=sessiondown - // Acquired From Package snmp - uses snmp_SessionDown-group; + type isis_RetransInterval; + description "Holds ISIS Interface Retransmit Interval"; } - // Bfd session-up trap - container sessionup-items { + // LSP Retransmit Throttle Interval + leaf retransThrottleInterval { - // Added containment as a singleton: Prefix=sessionup - // Acquired From Package snmp - uses snmp_SessionUp-group; + type isis_RetransThrottleInterval; + description "Holds ISIS Interface Retransmit Throttle Interval"; } - } - - grouping snmp_SessionDown-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // IPv4 BFD + leaf v4Bfd { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_BfdT; + description "Holds ISIS Interface BFD Configruation"; } - } - grouping snmp_SessionUp-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // IPv6 BFD + leaf v6Bfd { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_BfdT; + description "Holds Interface BFD Configruation for IPV6 family"; } - } - - grouping snmp_Tbridge-group { - // Bridge newroot trap - container newroot-items { + // Passive-interface Info + leaf passive { - // Added containment as a singleton: Prefix=newroot - // Acquired From Package snmp - uses snmp_NewRoot-group; + type isis_PassiveIntfT; + description "Holds ISIS Passive Interface Info"; } - // Bridge topologychange trap - container topologychange-items { + // Interface Hello padding Info + leaf helloPad { - // Added containment as a singleton: Prefix=topologychange - // Acquired From Package snmp - uses snmp_TopologyChange-group; + type isis_HelloPadT; + description "Holds ISIS Interface Hello Padding Info"; } - } - - grouping snmp_NewRoot-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Interface Hello Interval Info + leaf helloIntvl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloIntvl; + description "Holds Interface Hello Interval value"; } - } - grouping snmp_TopologyChange-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Interval for Level-1 + leaf helloIntvlLvl1 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-1 value"; } - } - - grouping snmp_Tcallhome-group { - // callhome event-notify trap - container eventnotify-items { + // ISIS Hello Interval for Level-2 + leaf helloIntvlLvl2 { - // Added containment as a singleton: Prefix=eventnotify - // Acquired From Package snmp - uses snmp_EventNotify-group; + type isis_HelloIntvl; + description "Holds ISIS interface Hello Interval Level-2 value"; } - // callhome smtp-send-fail trap - container smtpsendfail-items { + // Hello Multiplier + leaf helloMult { - // Added containment as a singleton: Prefix=smtpsendfail - // Acquired From Package snmp - uses snmp_SmtpSendFail-group; + type isis_HelloMult; + description "Holds Interface Hello Multiplier value"; } - } - - grouping snmp_EventNotify-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Multiplier for Level-1 + leaf helloMultLvl1 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-1 value"; } - } - - grouping snmp_SmtpSendFail-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // ISIS Hello Multiplier for Level-2 + leaf helloMultLvl2 { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type isis_HelloMult; + description "Holds ISIS interface Hello Multiplier Level-2 value"; } - } - grouping snmp_Tcfs-group { + // ISIS Priority for Level-1 + leaf priorityLvl1 { - // cfs state-change-notif trap - container statechangenotif-items { + type isis_CktPrio; + description "Holds ISIS Interface Level-1 Circuit Priority"; + } - // Added containment as a singleton: Prefix=statechangenotif - // Acquired From Package snmp - uses snmp_StateChangeNotif-group; + // ISIS Priority for Level-2 + leaf priorityLvl2 { + + type isis_CktPrio; + description "Holds ISIS Interface Level-2 Circuit Priority"; } - // cfs merge-failure trap - container mergefailure-items { + // ISIS Wide Metric MT2[IPV6] topology for Level-1 + leaf mt2MetricLvl1 { - // Added containment as a singleton: Prefix=mergefailure - // Acquired From Package snmp - uses snmp_MergeFailure-group; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-1"; } - } - grouping snmp_StateChangeNotif-group { + // ISIS Wide Metric MT2[IPV6] topology for Level-2 + leaf mt2MetricLvl2 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_WideMetric; + description "Holds ISIS interface IPV6 wide metric value for Level-2"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // ISIS CSNP Interval for Level-1 + leaf csnpIntvlLvl1 { + + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-1 CSNP Interval"; } - leaf isToggleAction { - config "false"; - type uint16; + + // ISIS CSNP Interval for Level-2 + leaf csnpIntvlLvl2 { + + type isis_CsnpIntvl; + description "Holds ISIS Interface Level-2 CSNP Interval"; } - } - grouping snmp_MergeFailure-group { + leaf authType { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type isis_AuthT; + description "Holds Authentication Type value for ISIS Interface"; } - leaf isToggleAction { - config "false"; - type uint16; + + // Authentication Type for Level-1 + leaf authTypeLvl1 { + + type isis_AuthT; + description "Holds ISIS Level-1 Authentication Type value for Interface"; } - } - grouping snmp_Tconfig-group { + // Authentication Type for Level-2 + leaf authTypeLvl2 { - // config CLIRunningConfigChange trap - container ccmCLIRunningConfigChanged-items { + type isis_AuthT; + description "Holds ISIS Level-2 Authentication Type value for Interface"; + } - // Added containment as a singleton: Prefix=ccmCLIRunningConfigChanged - // Acquired From Package snmp - uses snmp_CLIRunningConfigChange-group; + // Authentication Key for ISIS Interface + leaf authKey { + + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface"; } - } - grouping snmp_CLIRunningConfigChange-group { + // Authentication Key for ISIS Interface on Level-1 + leaf authKeyLvl1 { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-1"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Authentication Key for ISIS Interface on Level-2 + leaf authKeyLvl2 { + + type isis_AuthKeyN; + description "Holds Authentication Key for ISIS Interface on Level-2"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf mtuCheckLvl1 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level1"; + } + leaf mtuCheckLvl2 { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface at Level2"; + } + leaf mtuCheck { + type boolean; + default "true"; + description "Enabling Mtu check for ISIS interface without specific Level"; + } + leaf nFlagClear { + type boolean; + default "true"; + description "Enabling N flag clear for ISIS interface"; } - } - - grouping snmp_Tentity-group { - // entity entitymibchange trap - container entitymibchange-items { + // Instance name + leaf instance { - // Added containment as a singleton: Prefix=entitymibchange - // Acquired From Package snmp - uses snmp_EntityMIBChange-group; + type isis_InstanceName; + description "Instance to which the interface belongs to"; } - // entity entitymodulestatuschange trap - container entitymodulestatuschange-items { + // Dom name + leaf dom { - // Added containment as a singleton: Prefix=entitymodulestatuschange - // Acquired From Package snmp - uses snmp_EntityModuleStatusChange-group; + type isis_DomName; + description "Dom to which the interface belongs to"; } - // entity entitypowerstatuschange trap - container entitypowerstatuschange-items { + // This object holds mesh group information per interface + container meshgrp-items { - // Added containment as a singleton: Prefix=entitypowerstatuschange - // Acquired From Package snmp - uses snmp_EntityPowerStatusChange-group; + uses isis_MeshGrp-group; + description "Holds ISIS interface Mesh Group Policy"; } - // entity entitymoduleinserted trap - container entitymoduleinserted-items { + // This object holds per level isis interface information + container lvl-items { + list IfLvl-list { + key "type"; - // Added containment as a singleton: Prefix=entitymoduleinserted - // Acquired From Package snmp - uses snmp_EntityModuleInserted-group; + uses isis_IfLvl-group; + description "IS-IS Interface Policy Per Level list"; + } + description "IS-IS Interface Policy Per Level"; } - // entity entitymoduleremoved trap - container entitymoduleremoved-items { + // This object holds per IF States information + container traffic-items { - // Added containment as a singleton: Prefix=entitymoduleremoved - // Acquired From Package snmp - uses snmp_EntityModuleRemoved-group; + uses isis_IfTraffic-group; + description "Interface Traffic Statistics"; } - // entity entityunrecognisedmodule trap - container entityunrecognisedmodule-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=entityunrecognisedmodule - // Acquired From Package snmp - uses snmp_EntityUnrecognisedModule-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // entity entityfanstatuschange trap - container entityfanstatuschange-items { + grouping itd_Entity-group { + description "ITD Entity"; - // Added containment as a singleton: Prefix=entityfanstatuschange - // Acquired From Package snmp - uses snmp_EntityFanStatusChange-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // entity entitypoweroutchange trap - container entitypoweroutchange-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=entitypoweroutchange - // Acquired From Package snmp - uses snmp_EntityPowerOutChange-group; + type nw_AdminSt; + description "Admin State"; } - // entity entitysensor trap - container entitysensor-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entitysensor - // Acquired From Package snmp - uses snmp_EntitySensor-group; + type nw_EntOperSt; + description "Operational State"; } - // entity entitymibenablestatusnotification trap - container cefcMIBEnableStatusNotification-items { + container inst-items { - // Added containment as a singleton: Prefix=cefcMIBEnableStatusNotification - // Acquired From Package snmp - uses snmp_EntityMIBEnableStatusNotification-group; + uses itd_Inst-group; + description "ITD Instance"; } } - grouping snmp_EntityMIBChange-group { + grouping itd_Inst-group { + description "ITD Instance"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf isToggleAction { - config "false"; - type uint16; + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - } - grouping snmp_EntityModuleStatusChange-group { + // Instance controls + leaf ctrl { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type nw_InstCtrl; + description "Controls"; + } + container devgrp-items { + list DeviceGroup-list { + key "dgName"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_DeviceGroup-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container prtgrp-items { + list PortGroup-list { + key "pgName"; + + uses itd_PortGroup-group; + } } - } + container service-items { + list Service-list { + key "name"; - grouping snmp_EntityPowerStatusChange-group { + uses itd_Service-group; + } + } + container sessiondevgrp-items { + list SessionDevGrp-list { + key "devGroupName"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_SessionDevGrp-group; + } + } + container refreshacl-items { + list AclAction-list { + key "aclName"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_AclAction-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container stats-items { + list StatsAction-list { + key "svcName"; + + uses itd_StatsAction-group; + } } } - grouping snmp_EntityModuleInserted-group { + grouping itd_DeviceGroup-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf dgName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_DevGrpNameType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; - } - } - grouping snmp_EntityModuleRemoved-group { + type itd_dgFaultBitmapT; + description "Error state for the device-group."; + } + container nodev4-items { + list Nodev4-list { + key "ip"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_Nodev4-group; + } + } + container nodev6-items { + list Nodev6-list { + key "ip"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_Nodev6-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntityUnrecognisedModule-group { + grouping itd_Nodev4-group { + leaf ip { + type address_Ipv4; + } + leaf weight { + type uint32; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf mode { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_nodeModeType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_nodeFaultBitmapT; + description "Error state for the IPV4 nodes."; } - } - grouping snmp_EntityFanStatusChange-group { + leaf port { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; + } + container stbynodev4-items { + list StandbyNodev4-list { + key "ip"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_StandbyNodev4-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntityPowerOutChange-group { + grouping itd_StandbyNodev4-group { + leaf ip { + type address_Ipv4; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_standbyNodeFaultBitmapT; + description "Error state for the standby IPV4 nodes."; } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_EntitySensor-group { + grouping itd_Probe-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf protocol { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_protocolType; + description "TBD"; } - } - - grouping snmp_EntityMIBEnableStatusNotification-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf port { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf frequency { + type uint32 { + range "0..604800"; + } + default "0"; + } + leaf retryDownCount { + type uint32 { + range "0..5"; + } + default "0"; + } + leaf retryUpCount { + type uint32 { + range "0..5"; + } + default "0"; + } + leaf timeout { + type uint32 { + range "0..604800"; + } + default "0"; } - } - - grouping snmp_Tfeaturecontrol-group { - // feature-control FeatureOpStatusChange trap - container FeatureOpStatusChange-items { + leaf dnshost { - // Added containment as a singleton: Prefix=FeatureOpStatusChange - // Acquired From Package snmp - uses snmp_FeatureOpStatusChange-group; + type itd_DnsHostType; + description "TBD"; + } + leaf probeIp { + type address_Ipv4; } - // feature-control CiscoFeatOpStatusChange trap - container ciscoFeatOpStatusChange-items { + leaf httpGetStr { - // Added containment as a singleton: Prefix=ciscoFeatOpStatusChange - // Acquired From Package snmp - uses snmp_CiscoFeatOpStatusChange-group; + type itd_HttpStringType; + description "TBD"; } - } - - grouping snmp_FeatureOpStatusChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf ctrlStatusEnable { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_ctrlType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_probeFaultBitmapT; + description "Error state for probes."; } } - grouping snmp_CiscoFeatOpStatusChange-group { + grouping itd_Nodev6-group { + leaf ip { + type address_Ipv6; + } + leaf weight { + type uint32; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf mode { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_nodeModeType; + description "TBD"; } - leaf isToggleAction { + + leaf propFaultBitmap { config "false"; - type uint16; + + type itd_nodeFaultBitmapT; + description "Error state for the IPV6 nodes."; } - } + container stbynodev6-items { + list StandbyNodev6-list { + key "ip"; - grouping snmp_Thsrp-group { + uses itd_StandbyNodev6-group; + } + } - // hsrp statechange trap - container statechange-items { + container probe-items { - // Added containment as a singleton: Prefix=statechange - // Acquired From Package snmp - uses snmp_StateChange-group; + uses itd_Probe-group; } } - grouping snmp_StateChange-group { + grouping itd_StandbyNodev6-group { + leaf ip { + type address_Ipv6; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_standbyNodeFaultBitmapT; + description "Error state for the standby IPV6 nodes."; } - leaf isToggleAction { - config "false"; - type uint16; + + container probe-items { + + uses itd_Probe-group; } } - grouping snmp_Tgeneric-group { + grouping itd_PortGroup-group { - // generic coldstart trap - container coldStart-items { + leaf pgName { - // Added containment as a singleton: Prefix=coldStart - // Acquired From Package snmp - uses snmp_ColdStart-group; + type itd_PortGrpNameType; + description "TBD"; } + container if-items { + list L2If-list { + key "name"; - // generic warmstart trap - container warmStart-items { - - // Added containment as a singleton: Prefix=warmStart - // Acquired From Package snmp - uses snmp_WarmStart-group; + uses itd_L2If-group; + } } } - grouping snmp_ColdStart-group { + grouping itd_L2If-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type nw_IfId; + description "TBD"; } } - grouping snmp_WarmStart-group { + grouping itd_Service-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_SvcNameType; + description "TBD"; } - } - grouping snmp_Tip-group { + leaf adminSt { - // ip sla trap - container sla-items { + type itd_AdminSt; + description "TBD"; + } - // Added containment as a singleton: Prefix=sla - // Acquired From Package snmp - uses snmp_Sla-group; + leaf defaultDevGroup { + + type itd_DevGrpNameType; + description "TBD"; } - } - grouping snmp_Sla-group { + leaf defaultPortGroup { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_PortGrpNameType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf excludeACL { + + type itd_AclNameType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf vrf { + + type itd_vrfName; + description "TBD"; } - } - grouping snmp_Tlicense-group { + leaf failactionMode { - // license Notify licenseexpiry trap - container notifylicenseexpiry-items { + type itd_failactionType; + description "TBD"; + } - // Added containment as a singleton: Prefix=notifylicenseexpiry - // Acquired From Package snmp - uses snmp_NotifyLicenseExpiry-group; + leaf lbMethod { + + type itd_LBMethod; + description "TBD"; } - // license Notify LicenseExpiryWarning trap - container notifylicenseexpirywarning-items { + leaf lbProtocol { - // Added containment as a singleton: Prefix=notifylicenseexpirywarning - // Acquired From Package snmp - uses snmp_NotifyLicenseExpiryWarning-group; + type itd_protocolType; + description "TBD"; } - // license Notify licensefilemissing trap - container notifylicensefilemissing-items { + leaf rangeX { - // Added containment as a singleton: Prefix=notifylicensefilemissing - // Acquired From Package snmp - uses snmp_NotifyLicenseFileMissing-group; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - // license Notifynolicenceforfeature trap - container notifynolicenseforfeature-items { + leaf rangeY { - // Added containment as a singleton: Prefix=notifynolicenseforfeature - // Acquired From Package snmp - uses snmp_NotifyNoLicenceForFeature-group; + type address_PortNumber { + range "0..65535"; + } + description "TBD"; } - } - grouping snmp_NotifyLicenseExpiry-group { + leaf bucket { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_BucketNumType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf maskPosition { + + type itd_MaskPosType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf natDestination { + + type itd_ctrlType; + description "TBD"; } - } - grouping snmp_NotifyLicenseExpiryWarning-group { + leaf peerLocalServiceName { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type itd_SvcNameType; + description "TBD"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + leaf sourceIntf { + + type nw_IfId; + description "Source interface for probe generation."; } - leaf isToggleAction { - config "false"; - type uint16; + leaf leastBit { + type boolean; } - } - grouping snmp_NotifyLicenseFileMissing-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf propFaultBitmap { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_serviceFaultBitmapT; + description "Error state for service."; } - leaf isToggleAction { - config "false"; - type uint16; + container if-items { + list IngressIf-list { + key "name"; + + uses itd_IngressIf-group; + } } - } + container vlan-items { + list SourceVlan-list { + key "name"; - grouping snmp_NotifyNoLicenceForFeature-group { + uses itd_SourceVlan-group; + } + } + container acl-items { + list Accesslist-list { + key "name"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_Accesslist-group; + } + } + container vipv4-items { + list VirtualIPv4-list { + key "ip subnet protocol port"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + uses itd_VirtualIPv4-group; + } } - leaf isToggleAction { - config "false"; - type uint16; + container vipv6-items { + list VirtualIPv6-list { + key "ip prefix protocol port"; + + uses itd_VirtualIPv6-group; + } } } - grouping snmp_Tpoe-group { + grouping itd_IngressIf-group { - // POE police notify trap - container policenotify-items { + leaf name { - // Added containment as a singleton: Prefix=policenotify - // Acquired From Package snmp - uses snmp_PoliceNotify-group; + type nw_IfId; + description "TBD"; } - // POE control enable notify trap - container controlenable-items { + leaf propFaultBitmap { + config "false"; - // Added containment as a singleton: Prefix=controlenable - // Acquired From Package snmp - uses snmp_ControlEnable-group; + type itd_ingressIfFaultBitmapT; + description "Error state for the ingress interface."; } } - grouping snmp_PoliceNotify-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; - } + grouping itd_SourceVlan-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l2_DomId; + description "TBD"; } } - grouping snmp_ControlEnable-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; + grouping itd_Accesslist-group { + + leaf name { + + type itd_AclNameType; + description "TBD"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf deviceGroup { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_DevGrpNameType; + description "TBD"; } - leaf isToggleAction { - config "false"; - type uint16; + leaf isIPv6 { + type boolean; } } - grouping snmp_Tlink-group { - - // link Ciscoxcvrmonstatuschange trap - container ciscoxcvrmonstatuschg-items { - - // Added containment as a singleton: Prefix=ciscoxcvrmonstatuschg - // Acquired From Package snmp - uses snmp_CiscoXcvrMonStatusChange-group; + grouping itd_VirtualIPv4-group { + leaf ip { + type address_Ipv4; } - - // link linkdown trap - container linkDown-items { - - // Added containment as a singleton: Prefix=linkDown - // Acquired From Package snmp - uses snmp_LinkDown-group; + leaf subnet { + type address_Ipv4; + } + leaf advertise { + type boolean; + } + leaf active { + type boolean; } - // link linkup trap - container linkUp-items { + leaf deviceGroup { - // Added containment as a singleton: Prefix=linkUp - // Acquired From Package snmp - uses snmp_LinkUp-group; + type itd_DevGrpNameType; + description "TBD"; } - // link extended linkdown trap - container extendedlinkDown-items { + leaf protocol { - // Added containment as a singleton: Prefix=extendedlinkDown - // Acquired From Package snmp - uses snmp_ExtendedLinkDown-group; + type itd_protocolType; + description "TBD"; } - // link extended linkup trap - container extendedlinkUp-items { + leaf port { - // Added containment as a singleton: Prefix=extendedlinkUp - // Acquired From Package snmp - uses snmp_ExtendedLinkUp-group; + type address_PortNumber; + description "TBD"; } + } - // link cielinkdown trap - container cieLinkDown-items { - - // Added containment as a singleton: Prefix=cieLinkDown - // Acquired From Package snmp - uses snmp_CieLinkDown-group; + grouping itd_VirtualIPv6-group { + leaf ip { + type address_Ipv6; } - // link Cie linkup trap - container cieLinkUp-items { + leaf prefix { - // Added containment as a singleton: Prefix=cieLinkUp - // Acquired From Package snmp - uses snmp_CieLinkUp-group; + type itd_Prefix; + description "TBD"; + } + leaf advertise { + type boolean; + } + leaf active { + type boolean; } - // link delayedlinkstatechange trap - container delayedlinkstatechange-items { + leaf deviceGroup { - // Added containment as a singleton: Prefix=delayedlinkstatechange - // Acquired From Package snmp - uses snmp_DelayedLinkStateChange-group; + type itd_DevGrpNameType; + description "TBD"; } - // link cErrDisableInterfaceEventRev1 trap - container cerrdisableinterfaceeventrev1-items { + leaf protocol { - // Added containment as a singleton: Prefix=cerrdisableinterfaceeventrev1 - // Acquired From Package snmp - uses snmp_CErrDisableInterfaceEventRev1-group; + type itd_protocolType; + description "TBD"; } - // link cmnMacMoveNotification trap - container cmnmacmovenotification-items { + leaf port { - // Added containment as a singleton: Prefix=cmnmacmovenotification - // Acquired From Package snmp - uses snmp_CmnMacMoveNotification-group; + type address_PortNumber; + description "TBD"; } } - grouping snmp_CiscoXcvrMonStatusChange-group { + grouping itd_SessionDevGrp-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf devGroupName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_DevGrpNameType; + description "TBD"; } - } - grouping snmp_LinkDown-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf sessAction { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_sessActionType; + description "TBD"; } - leaf isToggleAction { + leaf actionSet { config "false"; - type uint16; + type boolean; } - } + container nodev4-items { + list SessNodev4-list { + key "ip"; - grouping snmp_LinkUp-group { + uses itd_SessNodev4-group; + } + } + container nodev6-items { + list SessNodev6-list { + key "ip"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + uses itd_SessNodev6-group; + } + } + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + grouping itd_SessNodev4-group { + leaf ip { + type address_Ipv4; } - leaf isToggleAction { - config "false"; - type uint16; + + leaf action { + + type itd_sessNodeActionType; + description "TBD"; } } - grouping snmp_ExtendedLinkDown-group { + grouping itd_SessNodev6-group { + leaf ip { + type address_Ipv6; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf action { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type itd_sessNodeActionType; + description "TBD"; } } - grouping snmp_ExtendedLinkUp-group { + grouping itd_AclAction-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf aclName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_AclNameType; + description "TBD"; } - leaf isToggleAction { + leaf refreshSet { config "false"; - type uint16; + type boolean; } } - grouping snmp_CieLinkDown-group { + grouping itd_StatsAction-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf svcName { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type itd_SvcNameType; + description "TBD"; } - leaf isToggleAction { + + leaf startStats { + + type itd_statsActionType; + description "TBD"; + } + leaf clearStats { + type boolean; + } + leaf statsSet { config "false"; - type uint16; + type boolean; } } - grouping snmp_CieLinkUp-group { + grouping lacp_Entity-group { + description "LACP Entity"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // This objects hold per lacp instance information. There is only + // one instance of lacp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses lacp_Inst-group; + description "LACP Instance"; } } - grouping snmp_DelayedLinkStateChange-group { + grouping lacp_Inst-group { + description "LACP Instance"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative system priority + leaf adminPrio { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type lacp_SysPrio; + description "LACP instance adminstrative priority"; } - } - grouping snmp_CErrDisableInterfaceEventRev1-group { - leaf toggleState { - config "false"; - type uint16; + // Administrative System mac + leaf adminSysMac { + + type lacp_SysMac; + description "System MAC"; } - leaf toggleStateCount { - config "false"; - type uint16; + + // Administrative Role + leaf adminRole { + + type lacp_SysRole; + description "System Role"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Instance Control Fields + leaf lacpctrl { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_LACPInstCtrl; + description "Instance Control"; } - leaf isToggleAction { + + // Operational system priority + leaf operPrio { config "false"; - type uint16; + + type lacp_SysPrio; + description "Specifies the LACP instance operational system priority"; } - } - grouping snmp_CmnMacMoveNotification-group { - leaf toggleState { + // System mac + leaf sysMac { config "false"; - type uint16; + + type lacp_SysMac; + description "System MAC"; } - leaf toggleStateCount { + + // Operational Role + leaf operRole { config "false"; - type uint16; + + type lacp_SysRole; + description "System Role"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf isToggleAction { - config "false"; - type uint16; + + // This object holds lacp information that is operated at a + // interface (member port of the port channel) level + container if-items { + list If-list { + key "id"; + + uses lacp_If-group; + description "LACP Interface list"; + } + description "LACP Interface"; } } - grouping snmp_Tlldp-group { + grouping lacp_If-group { + description "LACP Interface"; - // lldp RemTablesChange trap - container lldpRemTablesChange-items { + // Port priority - LACP uses the port priority to decide + // which ports should be put in standby mode when there + // is a limitation that prevents all compatible ports + // from aggregating and which ports should be put into + // active mode. A higher port priority value means a + // lower priority for LACP + leaf prio { - // Added containment as a singleton: Prefix=lldpRemTablesChange - // Acquired From Package snmp - uses snmp_LldpRemTablesChange-group; + type lacp_PortPrio; + description "Specifies the LACP Interface Port Priority"; } - } - grouping snmp_LldpRemTablesChange-group { + // Transmit rate, the rate at which the packets are + // transmitted + leaf txRate { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + type lacp_TxRate; + description "Specifies the rate at which the LACP Packets are transmitted"; + } - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + // Activity flags + leaf activityFlags { + config "false"; + + type lacp_ActivityFlags; + description "Specifies the LACP interface activity flags"; } - leaf isToggleAction { + leaf lastActive { config "false"; - type uint16; + type union { + type string; + type uint64; + } + description "Indicates the last operationally active timestamp on the LACP interface"; } - } - - grouping snmp_Tmsdp-group { - // msdp BackwardTransition trap - container msdpBackwardTransition-items { + // Local port num + leaf port { + config "false"; - // Added containment as a singleton: Prefix=msdpBackwardTransition - // Acquired From Package snmp - uses snmp_MsdpBackwardTransition-group; + type lacp_PortNum; + description "Specifies the LACP interface local port number"; } - } - - grouping snmp_MsdpBackwardTransition-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port priority + leaf operPrio { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_PortPrio; + description "Specifies the LACP Interface Operational Port Priority"; } - leaf isToggleAction { + + // Operational key + leaf key { config "false"; - type uint16; + + type lacp_Key; + description "Specifies the LACP Interface Operational Key"; } - } - grouping snmp_Tmmode-group { + // Interface ID of this endpoint + leaf id { - // mmode CseMaintModeChangeNotify trap - container cseMaintModeChangeNotify-items { + type nw_IfId; + description "Interface Identifier of this endpoint"; + } - // Added containment as a singleton: Prefix=cseMaintModeChangeNotify - // Acquired From Package snmp - uses snmp_CseMaintModeChangeNotify-group; + // This object holds lacp neighbor information + container adj-items { + + uses lacp_AdjEp-group; + description "Adjacency"; } - // mmode CseNormalModeChangeNotify trap - container cseNormalModeChangeNotify-items { + // This object holds lacp intf statistics operational information. + // This is a singleton within an intferace + container ifstats-items { - // Added containment as a singleton: Prefix=cseNormalModeChangeNotify - // Acquired From Package snmp - uses snmp_CseNormalModeChangeNotify-group; + uses lacp_IfStats-group; + description "Interface Statistics"; } } - grouping snmp_CseMaintModeChangeNotify-group { + grouping lacp_AdjEp-group { + description "Adjacency"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor system priority + leaf sysPrio { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_SysPrio; + description "Specifies the Adjacency Neighbor System Priority"; } - leaf isToggleAction { + + // Neighbor system id + leaf sysId { config "false"; - type uint16; - } - } - grouping snmp_CseNormalModeChangeNotify-group { + type lacp_SysMac; + description "Specifies the Adjacency Neighbor System ID"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor Port number + leaf port { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_PortNum; + description "Specifies the Adjacency Neighbor Port Number"; } - leaf isToggleAction { + + // Neighbor port priority + leaf portPrio { config "false"; - type uint16; - } - } - grouping snmp_Tpim-group { + type lacp_PortPrio; + description "Neighbor Port Priority"; + } - // pim PimNeighborloss trap - container pimNeighborLoss-items { + // Neighbor activity flags + leaf activityFlags { + config "false"; - // Added containment as a singleton: Prefix=pimNeighborLoss - // Acquired From Package snmp - uses snmp_PimNeighborLoss-group; + type lacp_ActivityFlags; + description "Specifies the LACP Adjacency Neighbor Activity Flags"; } - } - - grouping snmp_PimNeighborLoss-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Neighbor oper key + leaf key { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type lacp_Key; + description "Specifies the Adjacency Neighbor Operational Key"; } - leaf isToggleAction { + + leaf name { config "false"; - type uint16; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } } - grouping snmp_Trf-group { + grouping lacp_IfStats-group { + description "Interface Statistics"; - // rf redundancyframework trap - container redundancyframework-items { + // LACP Interface Stats Number of LACP pdus sent + leaf pduSent { + config "false"; - // Added containment as a singleton: Prefix=redundancyframework - // Acquired From Package snmp - uses snmp_RedundancyFramework-group; + type nw_Counter64; + description "Number of PDUs Sent"; } - } - - grouping snmp_RedundancyFramework-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Number of LACP pdus received + leaf pduRcvd { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_Counter64; + description "Number of PDUs Received"; } - leaf isToggleAction { + + // Number of marker sent + leaf markerSent { config "false"; - type uint16; - } - } - grouping snmp_Trmon-group { + type nw_Counter64; + description "Number of Markers Sent"; + } - // rmon RisingAlarm trap - container risingAlarm-items { + // Number of marker received + leaf markerRcvd { + config "false"; - // Added containment as a singleton: Prefix=risingAlarm - // Acquired From Package snmp - uses snmp_RisingAlarm-group; + type nw_Counter64; + description "Number of Markers Received"; } - // rmon FallingAlarm trap - container fallingAlarm-items { + // Number of marker response sent + leaf markerRspSent { + config "false"; - // Added containment as a singleton: Prefix=fallingAlarm - // Acquired From Package snmp - uses snmp_FallingAlarm-group; + type nw_Counter64; + description "Number of Marker Responses Sent"; } - // rmon HcRisingAlarm trap - container hcRisingAlarm-items { + // Number of marker reponse received + leaf markerRspRcvd { + config "false"; - // Added containment as a singleton: Prefix=hcRisingAlarm - // Acquired From Package snmp - uses snmp_HcRisingAlarm-group; + type nw_Counter64; + description "Number of Marker Responses Received"; } - // rmon HcFallingAlarm trap - container hcFallingAlarm-items { + // Number of error packets received + leaf errPktRcvd { + config "false"; - // Added containment as a singleton: Prefix=hcFallingAlarm - // Acquired From Package snmp - uses snmp_HcFallingAlarm-group; + type nw_Counter64; + description "Number of Error Packets Received"; } - } - grouping snmp_RisingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Number of PDU timeout count + leaf pduTimeoutCount { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type nw_Counter64; + description "Number of PDU timeout received"; } - leaf isToggleAction { + + // Number of flaps + leaf flapCount { config "false"; - type uint16; + + type nw_Counter64; + description "Number of flaps on this port"; } } - grouping snmp_FallingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + grouping mgmt_MgmtIf-group { + description "Management Interface"; + leaf mediaType { + type enumeration { + enum sfp { + value 7; + } + enum rj45 { + value 8; + } + enum auto { + value 9; + } + } + default "auto"; + description "Configuring the interface media-type"; } - } - - grouping snmp_HcRisingAlarm-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf name { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - } - grouping snmp_HcFallingAlarm-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type naming_Descr1024 { + length "0..254"; + } + description "descr"; } - } - - grouping snmp_Tsnmp-group { - // snmp authentication trap - container authentication-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=authentication - // Acquired From Package snmp - uses snmp_Authentication-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping snmp_Authentication-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_AdminSt; + description "Administrative Port State"; } - } - - grouping snmp_Tstpx-group { - // stpx inconsistency trap - container inconsistency-items { + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { - // Added containment as a singleton: Prefix=inconsistency - // Acquired From Package snmp - uses snmp_Inconsistency-group; + type l1_Speed; + description "Administrative Port Speed"; } - // stpx rootinconsistency trap - container rootinconsistency-items { + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { - // Added containment as a singleton: Prefix=rootinconsistency - // Acquired From Package snmp - uses snmp_RootInconsistency-group; + type l1_Duplex; + description "Duplex"; } - // stpx Loopinconsistency trap - container loopinconsistency-items { + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { - // Added containment as a singleton: Prefix=loopinconsistency - // Acquired From Package snmp - uses snmp_LoopInconsistency-group; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - } - - grouping snmp_Inconsistency-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_Mtu; + description "Administrative port MTU"; } - } - grouping snmp_RootInconsistency-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - } - - grouping snmp_LoopInconsistency-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Mgmt interface + container mgmt-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses im_MgmtIf-group; + description "Managment Interface"; } - } - grouping snmp_Tsysmgr-group { - - // sysmgr CseFailSwCoreNotifyExtended trap - container cseFailSwCoreNotifyExtended-items { + // Mgmt0 interface capabilities + container portcap-items { - // Added containment as a singleton: Prefix=cseFailSwCoreNotifyExtended - // Acquired From Package snmp - uses snmp_CseFailSwCoreNotifyExtended-group; + uses im_PortCap-group; + description "Port Capability"; } - } - - grouping snmp_CseFailSwCoreNotifyExtended-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container rtrtdMgmtConf-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses mgmt_RtRtdMgmtConf_target-group; } - } - - grouping snmp_Tsystem-group { - // system ClockChangeNotification trap - container Clockchangenotification-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=Clockchangenotification - // Acquired From Package snmp - uses snmp_ClockChangeNotification-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - } - - grouping snmp_ClockChangeNotification-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIfIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IfIn-group; + description "Interface Input Counters"; } - } - - grouping snmp_Tupgrade-group { - // upgrade UpgradeJobStatusNotify trap - container UpgradeJobStatusNotify-items { + container dbgIfOut-items { - // Added containment as a singleton: Prefix=UpgradeJobStatusNotify - // Acquired From Package snmp - uses snmp_UpgradeJobStatusNotify-group; + uses rmon_IfOut-group; + description "Interface Output Counters"; } - } - - grouping snmp_UpgradeJobStatusNotify-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIpIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IpIn-group; + description "IPV4 Input Counters"; } - } - - grouping snmp_Tvsan-group { - // vsan PortMembershipChange trap - container vsanPortMembershipChange-items { + container dbgDot1d-items { - // Added containment as a singleton: Prefix=vsanPortMembershipChange - // Acquired From Package snmp - uses snmp_VsanPortMembershipChange-group; + uses rmon_Dot1d-group; + description "Dot1d Counters"; } - // vsan vsanStatusChange trap - container vsanStatusChange-items { + container dbgEtherStats-items { - // Added containment as a singleton: Prefix=vsanStatusChange - // Acquired From Package snmp - uses snmp_VsanStatusChange-group; + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; } - } - - grouping snmp_VsanPortMembershipChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgDot3Stats-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; } - } - - grouping snmp_VsanStatusChange-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + container dbgIfHCIn-items { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; } - } - - grouping snmp_Tvtp-group { - // vtp notifs trap - container notifs-items { + container dbgIfHCOut-items { - // Added containment as a singleton: Prefix=notifs - // Acquired From Package snmp - uses snmp_Notifs-group; + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; } - // vtp vlancreate trap - container vlancreate-items { + container dbgIpv6IfStats-items { - // Added containment as a singleton: Prefix=vlancreate - // Acquired From Package snmp - uses snmp_Vlancreate-group; + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; } - // vtp vlandelete trap - container vlandelete-items { + container dbgIfStorm-items { - // Added containment as a singleton: Prefix=vlandelete - // Acquired From Package snmp - uses snmp_Vlandelete-group; + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; } } - grouping snmp_Notifs-group { + grouping im_MgmtIf-group { + description "Managment Interface"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_OperSt; + description "Runtime state of the object or policy"; } - leaf isToggleAction { + + // Operational port status reason + leaf operStQual { config "false"; - type uint16; - } - } - grouping snmp_Vlancreate-group { + type l1_OperStQual; + description "Chassis Operational Port Status Qualifier"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational port speed + leaf operSpeed { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_Speed; + description "Operational Port Speed"; } - leaf isToggleAction { + + // Operational duplex + leaf operDuplex { config "false"; - type uint16; - } - } - grouping snmp_Vlandelete-group { + type l1_Duplex; + description "Operational Duplex"; + } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Operational physical port layer + leaf operPhyLayer { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l1_PhyLayer; + description "Operational Physical Port Layer"; } - leaf isToggleAction { + leaf backplaneMac { config "false"; - type uint16; + type address_Mac; + description "Port Backplane Mac"; } - } - - grouping snmp_Tportsecurity-group { - - // port-security access-secure-mac-violation - container accesssecuremacviolation-items { - - // Added containment as a singleton: Prefix=accesssecuremacviolation - // Acquired From Package snmp - uses snmp_AccessSecureMacViolation-group; + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router Mac"; + } + leaf portInitEvalFlag { + config "false"; + type uint8; + description "Port Initialize Evaluation Flag"; } - // port-security trunk-secure-mac-violation - container trunksecuremacviolation-items { + // Operational Mtu + leaf operMtu { + config "false"; - // Added containment as a singleton: Prefix=trunksecuremacviolation - // Acquired From Package snmp - uses snmp_TrunkSecureMacViolation-group; + type l1_Mtu; + description "Operational Mtu"; + } + leaf iod { + config "false"; + type uint64; + description "Specifies the IOD"; } - } - - grouping snmp_AccessSecureMacViolation-group { - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + // Vdc id + leaf vdcId { + config "false"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; + type l2_VdcId; + description "Vdc Id"; } - leaf isToggleAction { + leaf lastLinkStChg { config "false"; - type uint16; + type union { + type string; + type uint64; + } + description "Holds the Last Link State Change"; } } - grouping snmp_TrunkSecureMacViolation-group { - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; - - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { + grouping im_PortCap-group { + description "Port Capability"; + leaf portCap { config "false"; - type uint16; + type uint32; + description "Port Capability Flags"; } } - grouping snmp_Tmpls-group { + grouping logging_Logging-group { + description "Logging root node for logging operations"; - // ldp trap - container ldp-items { + container loglevel-items { - // Added containment as a singleton: Prefix=ldp - // Acquired From Package snmp - uses snmp_Ldp-group; + uses logging_LogLevel-group; + description "Logging level root node for all facilities"; } } - grouping snmp_Ldp-group { + grouping logging_LogLevel-group { + description "Logging level root node for all facilities"; - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf all { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type logging_LoggingEnableAll; + default "unspecified"; + description "Logging level all state disabled/enabled"; } - // ldp session-down trap - container ldpsessiondown-items { + leaf severityLevel { - // Added containment as a singleton: Prefix=ldpsessiondown - // Acquired From Package snmp - uses snmp_LdpSessiondown-group; + type syslog_Severity; + description "Logging severity level for all the facilites"; } + container facility-items { + list Facility-list { + key "facilityName"; - // ldp session-up trap - container ldpsessionup-items { - - // Added containment as a singleton: Prefix=ldpsessionup - // Acquired From Package snmp - uses snmp_LdpSessionup-group; + uses logging_Facility-group; + description "Syslog Logging Levels For Individual Facilities list"; + } + description "Syslog Logging Levels For Individual Facilities"; } } - grouping snmp_LdpSessiondown-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; - } - - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + grouping logging_Facility-group { + description "Syslog Logging Levels For Individual Facilities"; - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; - } - } + leaf facilityName { - grouping snmp_LdpSessionup-group { - leaf toggleState { - config "false"; - type uint16; - } - leaf toggleStateCount { - config "false"; - type uint16; + type comp_DelimitedString; + description "Facility Name of individual processes subscribed for logging level"; } - // Inherited From snmp:ATraps - // Type is an MO-Defined-Type - leaf trapstatus { - description "Status to show enabled/disable trap"; + leaf severityLevel { - // Type is an MO-Defined-Type - type snmp_SnmpTrapSt; - } - leaf isToggleAction { - config "false"; - type uint16; + type syslog_Severity; + description "Logging severity level for individual facility name"; } } - grouping snmp_RemoteUser-group { + grouping snmp_Entity-group { + description "SNMP Entity"; - // User name - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf userName { - description "snmp-server user name"; + leaf name { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authpwd { - description "Auth Password"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_AuthPasswd; + type nw_AdminSt; + description "Admin State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encAuthpwd { + // Operational state + leaf operSt { config "false"; - description "Encrypted Auth Password"; - // Type is an MO-Defined-Type - type snmp_EncryptedAuthArray; - } - leaf authPwdLen { - config "false"; - type uint32; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authtype { - description "Auth Protocol Type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type snmp_AuthTypeT; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privpwd { - description "Priv Password"; + // This objects hold per snmp instance information + container inst-items { - // Type is an MO-Defined-Type - type snmp_PrivPasswd; + uses snmp_Inst-group; + description "SNMP Instance"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encPrivpwd { - config "false"; - description "Encrypted Priv Password"; + // Snmp server system shutdown control MO + container servershutdown-items { - // Type is an MO-Defined-Type - type snmp_EncryptedPrivArray; - } - leaf privPwdLen { - config "false"; - type uint32; + uses snmp_ServerShutdown-group; + description "SNMP server system shutdown"; } + } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privtype { - description "Priv Protocol Type"; + grouping snmp_Inst-group { + description "SNMP Instance"; - // Type is an MO-Defined-Type - type snmp_PrivTypeT; - } - leaf islocalizedkey { - type boolean; - } - leaf isenforcepriv { - type boolean; + // Logging Level + leaf loggingLevel { + + type snmp_SnmpLogLevel; + description "Set level for SNMP syslog messages"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineId { - description "Configured Engine Id"; + // Engine Id + leaf engId { - // Type is an MO-Defined-Type type snmp_EngId; + description "Engine Id"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineIdlen { - description "Configured Engine Id len"; + leaf unknownEngId { - // Type is an MO-Defined-Type - type snmp_EngIdLen; + type snmp_Boolean; + default "no"; + description "Indicates the Unknown Engine Id MO thats needs to be created"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf isAaaNotify { - config "false"; - description "Notify to AAA"; + leaf unknownUser { - // Type is an MO-Defined-Type type snmp_Boolean; + default "no"; + description "Indicates the Unknown User MO thats needs to be created"; } - } - - grouping snmp_LocalUser-group { - // User name - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf userName { - description "snmp-server user name"; + leaf name { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authpwd { - description "Auth Password"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type snmp_AuthPasswd; + type naming_Descr; + description "TBD"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encAuthpwd { - config "false"; - description "Encrypted Auth Password"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type snmp_EncryptedAuthArray; - } - leaf authPwdLen { - config "false"; - type uint32; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf authtype { - description "Auth Protocol Type"; + leaf descr { - // Type is an MO-Defined-Type - type snmp_AuthTypeT; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privpwd { - description "Priv Password"; + leaf adminSt { - // Type is an MO-Defined-Type - type snmp_PrivPasswd; + type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf encPrivpwd { - config "false"; - description "Encrypted Priv Password"; + // Access control based on ip addresses and communities. + // This is valid only with v1/v2c security Client group + container clgrp-items { + list ClientGrp-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_EncryptedPrivArray; + uses snmp_ClientGrp-group; + description "Client Group list"; + } + description "Client Group"; } - leaf privPwdLen { - config "false"; - type uint32; + + container globals-items { + + uses snmp_Globals-group; + description "The global info maintained by SNMP"; } + container host-items { + list Host-list { + key "hostName udpPortID"; - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf privtype { - description "Priv Protocol Type"; + uses snmp_Host-group; + description "Snmp Host Configuration MO list"; + } + description "Snmp Host Configuration MO"; + } - // Type is an MO-Defined-Type - type snmp_PrivTypeT; + container rmon-items { + + uses snmp_Rmon-group; + description "Snmp RMON configurations"; } - leaf islocalizedkey { - type boolean; + + // Security policy using communities. Uses a community + // string match for authentication + container community-items { + list CommSecP-list { + key "name"; + + uses snmp_CommSecP-group; + description "Community Security Policy list"; + } + description "Community Security Policy"; } - leaf isenforcepriv { - type boolean; + + // Authentication policy using user names + container user-items { + list UserSecP-list { + key "name"; + + uses snmp_UserSecP-group; + description "User Security Policy list"; + } + description "User Security Policy"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineId { - description "Configured Engine Id"; + // This objects holds snmp context information + container ctx-items { + list Ctx-list { + key "name"; - // Type is an MO-Defined-Type - type snmp_EngId; + uses snmp_Ctx-group; + description "Context list"; + } + description "Context"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf usrengineIdlen { - description "Configured Engine Id len"; + container sysinfo-items { - // Type is an MO-Defined-Type - type snmp_EngIdLen; + uses snmp_SysInfo-group; + description "The System Info maintained by SNMP"; } - // Inherited From snmp:User - // Type is an MO-Defined-Type - leaf isAaaNotify { - config "false"; - description "Notify to AAA"; + container traps-items { - // Type is an MO-Defined-Type - type snmp_Boolean; + uses snmp_Traps-group; + description "Snmp Trap COnfiguration"; } - container group-items { - list UserGroup-list { - key "groupName"; + container rmtUser-items { + list RemoteUser-list { + key "userName usrengineId"; - // Added containment: Prefix=group - // Acquired From Package snmp - uses snmp_UserGroup-group; + uses snmp_RemoteUser-group; + description "Snmp remote user notification target list"; + } + description "Snmp remote user notification target"; + } + container lclUser-items { + list LocalUser-list { + key "userName"; + + uses snmp_LocalUser-group; + description "Snmp local user list"; } + description "Snmp local user"; } } - grouping snmp_UserGroup-group { + grouping snmp_ClientGrp-group { + description "Client Group"; - // Group name - // Type is an MO-Defined-Type - leaf groupName { - description "snmp-server user name"; + // The vrf that this client group belongs to + leaf vrf { - // Type is an MO-Defined-Type - type snmp_hostNameT; + type l3_VrfName; + description "VRF"; } - } - grouping syslog_Acct-group { - leaf timerTick { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_OSSum; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf epgDn { config "false"; - description "Admin State"; + type string; + } + container client-items { + list Client-list { + key "addr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses snmp_Client-group; + description "Client Entry list"; + } + description "Client Entry"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rscommSecPClientGrpAtt-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + list RsCommSecPClientGrpAtt-list { + config "false"; + key "tDn"; + + uses snmp_RsCommSecPClientGrpAtt_source-group; + description "Community Security Policy Attachment list"; + } + description "Community Security Policy Attachment"; } } - grouping syslog_Syslog-group { + grouping snmp_Client-group { + description "Client Entry"; - container timestamp-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=timestamp - // Acquired From Package syslog - uses syslog_TimeStamp-group; + type nw_OSSum; + description "Operational State"; } - container level-items { - list Level-list { - key "facility"; - // Added containment: Prefix=level - // Acquired From Package syslog - uses syslog_Level-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; + } + leaf addr { + type address_Ip; + description "Client Address"; } + } - container monitor-items { + grouping snmp_Globals-group { + description "The global info maintained by SNMP"; - // Added containment as a singleton: Prefix=monitor - // Acquired From Package syslog - uses syslog_TermMonitor-group; + leaf aaaUserCacheTimeout { + + type snmp_AaaUserCacheTimeout; + description "Timeout for AAA Cache"; } - container console-items { + leaf protocolEnable { - // Added containment as a singleton: Prefix=console - // Acquired From Package syslog - uses syslog_Console-group; + type snmp_Boolean; + description "Enable/Disable snmp protocol operations"; } - container rdst-items { - list RemoteDest-list { - key "host"; - // Added containment: Prefix=rdst - // Acquired From Package syslog - uses syslog_RemoteDest-group; - } + leaf counterCacheEnable { + + type snmp_Boolean; + description "Enable port stats cache"; } - container source-items { + leaf counterCacheTimeout { - // Added containment as a singleton: Prefix=source - // Acquired From Package syslog - uses syslog_SourceInterface-group; + type snmp_CounterCacheTimeout; + description "Timeout for port stats cache"; } - container file-items { + // If-mib Ifalias long setting + leaf enableIfAliasLong { - // Added containment as a singleton: Prefix=file - // Acquired From Package syslog - uses syslog_File-group; + type snmp_Boolean; + default "no"; + description "Enable long description upto 256 characters for interface alias"; } - container inst-items { + // SNMP SERVER enforce privacy protocol + leaf enforcePrivacy { - // Added containment as a singleton: Prefix=inst - // Acquired From Package syslog - uses syslog_Inst-group; + type snmp_Boolean; + default "no"; + description "Globally enforce privacy for all the users"; } - } - - grouping syslog_TimeStamp-group { - // Type is an MO-Defined-Type - leaf format { - description "Format"; + // SNMP SERVER Packet Size + leaf pktSize { - // Type is an MO-Defined-Type - type syslog_TimeStampFormat; + type snmp_PktSizeT; + description "Packet size config"; } - } - grouping syslog_Level-group { + // tcp-session auth config + leaf tcpSessionAuth { - // Type is an MO-Defined-Type - leaf facility { - description "Facility Name"; + type snmp_tcpSessionAuthT; + description "tcp-session auth config"; + } - // Type is an MO-Defined-Type - type syslog_Facility; + container srcInterfaceTraps-items { + + uses snmp_SourceInterfaceTraps-group; + description "SNMP source interface for traps"; } - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf severity { - description "Severity"; + container srcInterfaceInforms-items { - // Type is a Local-MO-Defined-Type - type syslog_Severity_Level_severity; + uses snmp_SourceInterfaceInforms-group; + description "SNMP source interface for informs"; } } - grouping syslog_TermMonitor-group { + grouping snmp_SourceInterfaceTraps-group { + description "SNMP source interface for traps"; - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; + leaf ifname { - // Type is an MO-Defined-Type - type mon_AdminState; + type nw_IfId; + description "Source interface name for Traps"; } + } - // Type is an MO-Defined-Type - leaf severity { - description "Severity"; + grouping snmp_SourceInterfaceInforms-group { + description "SNMP source interface for informs"; - // Type is an MO-Defined-Type - type syslog_Severity; + leaf ifname { + + type nw_IfId; + description "Source interface name for informs"; } } - grouping syslog_SourceInterface-group { + grouping snmp_Host-group { + description "Snmp Host Configuration MO"; - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; + // Host name + leaf hostName { - // Type is an MO-Defined-Type - type mon_AdminState; + type snmp_hostNameT; + description "snmp-server host name"; } - // Type is an MO-Defined-Type - leaf ifName { - description "Interface"; + // Community name + leaf commName { - // Type is an MO-Defined-Type - type nw_IfId; + type snmp_commNameT; + description "community to be associated to the host"; } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "TBD"; + // Ctrl bits to decide Traps / Informs + leaf notifType { - // Type is an MO-Defined-Type - type syslog_OperState; + type snmp_NotificationType; + description "Ctrl bits indicating traps/informs config"; } - } - - grouping syslog_Inst-group { - // Type is an MO-Defined-Type - leaf modAdminState { - description "TBD"; + // Ctrl bits to decide version + leaf version { - // Type is an MO-Defined-Type - type mon_AdminState; + type snmp_Version; + description "Ctrl bits indicating version"; } - // Type is an MO-Defined-Type - leaf modSeverity { - description "Severity level"; + // Control bitmask for deciding auth/ priv/ noauth for v3 + leaf secLevel { - // Type is an MO-Defined-Type - type syslog_Severity; + type snmp_V3SecLvl; + description "Ctrl bits indicating auth/ priv/ noauth for v3"; } - } - - grouping mts_Mts-group { - container topsaps-items { + // udp-port ID + leaf udpPortID { - // Added containment as a singleton: Prefix=topsaps - // Acquired From Package mts - uses mts_TopSaps-group; + type snmp_PortIdT; + description "snmp-server host udp-port"; } - container qfullsaps-items { + // Source interface setting for hosts + container hostsourceinterface-items { - // Added containment as a singleton: Prefix=qfullsaps - // Acquired From Package mts - uses mts_QfullSaps-group; + uses snmp_HostSrcInterface-group; + description "SNMP source interface for host"; } - } + container usevrf-items { + list UseVrf-list { + key "vrfname"; - grouping mts_TopSaps-group { - leaf memUsed { - config "false"; - type uint32; + uses snmp_UseVrf-group; + description "SNMP VRF for host list"; + } + description "SNMP VRF for host"; } - container tsap-items { - list TSap-list { - config "false"; - key "index"; - // Added containment: Prefix=tsap - // Acquired From Package mts - uses mts_TSap-group; + // Filter VRF setting + container filtervrf-items { + list FilterVrf-list { + key "vrfName"; + + uses snmp_FilterVrf-group; + description "Filter notifications to host receiver based on the configured VRF list"; } + description "Filter notifications to host receiver based on the configured VRF"; } } - grouping mts_TSap-group { - leaf sapId { - config "false"; - type uint32; - } - leaf desc { - config "false"; - type string; - } - leaf process { - config "false"; - type string; - } - leaf timestamp { - config "false"; - type string; - } - leaf msgCount { - config "false"; - type uint32; - } - leaf bytesCount { - config "false"; - type uint32; - } - leaf memUsedInTotalMem { - config "false"; - type uint32; - } - leaf memUsedInSapShare { - config "false"; - type uint32; - } - leaf index { - config "false"; - type uint32; - } - leaf nodeId { - config "false"; - type uint32; - } - } + grouping snmp_HostSrcInterface-group { + description "SNMP source interface for host"; - grouping mts_QfullSaps-group { - container qsap-items { - list QSap-list { - config "false"; - key "sapId"; + // If Name of the interface + leaf ifName { - // Added containment: Prefix=qsap - // Acquired From Package mts - uses mts_QSap-group; - } + type nw_IfId; + description "Source interface name for host"; } } - grouping mts_QSap-group { - leaf qstate { - config "false"; - type string; - } - leaf sapId { - config "false"; - type uint32; - } - leaf desc { - config "false"; - type string; - } - leaf process { - config "false"; - type string; - } - leaf timestamp { - config "false"; - type string; - } - leaf msgCount { - config "false"; - type uint32; - } - leaf bytesCount { - config "false"; - type uint32; - } - leaf memUsedInTotalMem { - config "false"; - type uint32; - } - leaf memUsedInSapShare { - config "false"; - type uint32; - } - leaf index { - config "false"; - type uint32; - } - leaf nodeId { - config "false"; - type uint32; + grouping snmp_UseVrf-group { + description "SNMP VRF for host"; + + leaf vrfname { + + type l3_VrfName; + description "vrfname to be used by host"; } } - grouping nat_Entity-group { + grouping snmp_FilterVrf-group { + description "Filter notifications to host receiver based on the configured VRF"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // VRF name property + leaf vrfName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type l3_VrfName; + description "VRF name to be used by host"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping snmp_Rmon-group { + description "Snmp RMON configurations"; + container event-items { + list Event-list { + key "num"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses snmp_Event-group; + description "Snmp RMON Event configurations list"; + } + description "Snmp RMON Event configurations"; } + container alarm-items { + list Alarm-list { + key "num"; - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses snmp_Alarm-group; + description "Snmp RMON Alarm configurations list"; + } + description "Snmp RMON Alarm configurations"; } + container hcalarm-items { + list HcAlarm-list { + key "num"; - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package nat - uses nat_Inst-group; + uses snmp_HcAlarm-group; + description "Configure high capacity RMON alarm list"; + } + description "Configure high capacity RMON alarm"; } } - grouping nat_Inst-group { + grouping snmp_Event-group { + description "Snmp RMON Event configurations"; - // Holds TCP Time-Out values - // Type is an MO-Defined-Type - leaf tcpTimeout { - description "NAT tcp timeout values "; + // Event Number + leaf num { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_EventNum; + description "rmon event number"; } - // Holds UDP Time-Out values - // Type is an MO-Defined-Type - leaf udpTimeout { - description "NAT udp timeout value"; + // To generate / not log when alarm event is fired + leaf log { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_LogEnableType; + description "Whether to generate / not log when alarm event is fired"; } - // Holds ICMP Time-out values - // Type is an MO-Defined-Type - leaf icmpTimeout { - description "NAT icmp timeout value"; + leaf owner { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_OwnerType; + description "rmon event owner"; } - // Holds DYN Time-out value - // Type is an MO-Defined-Type - leaf timeout { - description "NAT timeout value"; + leaf description { - // Type is an MO-Defined-Type - type nat_NatTimeout; + type snmp_DescType; + description "rmon event description"; } - // Holds FINRST Timeout value - // Type is an MO-Defined-Type - leaf finrstTimeout { - description "FIN or RST Timeout"; + leaf trap { - // Type is an MO-Defined-Type - type nat_FinSynTimeout; + type snmp_TrapCommType; + description "rmon event description"; } + } - // Holds SYN Timeout value - // Type is an MO-Defined-Type - leaf synTimeout { - description "SYN Timeout value"; + grouping snmp_Alarm-group { + description "Snmp RMON Alarm configurations"; - // Type is an MO-Defined-Type - type nat_FinSynTimeout; + // Alarm Number + leaf num { + + type snmp_EventNum; + description "rmon alarm number"; + } + leaf oid { + type string; + description "rmon alarm oid"; } - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config error FINRST SYN timers"; + // Sample Interval + leaf sampleInterval { - // Type is an MO-Defined-Type - type nat_ConfigErrNat; + type snmp_smplIntvl; + description "rmon alarm sample interval"; } - // Type is an MO-Defined-Type - leaf maxtranslation { - description "NAT max trasnaltions"; + // Sample Type + leaf sampleType { - // Type is an MO-Defined-Type - type nat_NatMaxTranslation; + type snmp_smplType; + description "rmon alarm sample interval type"; } - // Type is an MO-Defined-Type - leaf allhost { - description "NAT max trasnaltions all host"; + // Rising Threshold + leaf risingThr { - // Type is an MO-Defined-Type - type nat_NatMaxTranslationAllHost; + type snmp_thrshld; + description "rmon alarm rising threshold"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Rising Threshold Event Index + leaf risingEvntIndx { + + type snmp_EventIndx; + description "rmon alarm rising threshold event index"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Falling Threshold + leaf fallingThr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_thrshld; + description "rmon alarm falling threshold"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Falling Threshold Event Index + leaf fallingEvntIndx { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type snmp_EventIndx; + description "rmon alarm falling threshold event index"; } - container pool-items { - list Pool-list { - key "poolname"; - // Added containment: Prefix=pool - // Acquired From Package nat - uses nat_Pool-group; - } + // Owner Name + leaf owner { + + type snmp_OwnerType; + description "rmon alarm owner"; } } - grouping nat_Pool-group { + grouping snmp_HcAlarm-group { + description "Configure high capacity RMON alarm"; - // Properties Starts here - // Type is an MO-Defined-Type - leaf poolname { - description "NAT pool name"; + // Alarm Number + leaf num { - // Type is an MO-Defined-Type - type nat_NatPoolname; + type snmp_EventNum; + description "RMON alarm number"; } - leaf mask { - type address_Ip; + leaf oid { + type string { + pattern ".*[0-9\\.]+.*"; + } + description "MIB object to monitor"; } - // Type is an MO-Defined-Type - leaf prefixlen { - description "NAT prefix len"; + // Sample Interval + leaf sampleInterval { - // Type is an MO-Defined-Type - type nat_NatPrefixType; + type snmp_smplIntvl; + description "RMON alarm sample interval"; } - // Type is an MO-Defined-Type - leaf noalias { - description "NAT no alias"; + // Sample Type + leaf sampleType { - // Type is an MO-Defined-Type - type nat_booltype; + type snmp_smplType; + description "RMON sample interval type"; } - container startip-items { - list PoolAddress-list { - key "startip endip"; - // Added containment: Prefix=startip - // Acquired From Package nat - uses nat_PoolAddress-group; - } - } - } + // Startup alarm + leaf startupAlarm { - grouping nat_PoolAddress-group { - leaf startip { - type address_Ip; - } - leaf endip { - type address_Ip; + type snmp_startupAlarmType; + description "RMON startup alarm"; } - // Type is an MO-Defined-Type - leaf configErr { - config "false"; - description "Config error pool address"; + // Rising Threshold + leaf risingThr { - // Type is an MO-Defined-Type - type nat_ConfigErrNat; + type snmp_HcThrshld; + description "Alarm rising threshold value"; } - // Type is an MO-Defined-Type - leaf poolAddrDeleted { - config "false"; - description "Pool address deleted"; + // Rising Threshold Event Index + leaf risingEvntIndx { - // Type is an MO-Defined-Type - type nat_booltype; + type snmp_EventIndx; + description "RMON alarm rising threshold event crossing"; } - } - grouping opflex_ODevCmdReq-group { - leaf req { - config "false"; - type string; + // Falling Threshold + leaf fallingThr { + + type snmp_HcThrshld; + description "RMON alarm falling threshold"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Falling Threshold Event Index + leaf fallingEvntIndx { - // Type is an MO-Defined-Type - type naming_Name; + type snmp_EventIndx; + description "RMON alarm falling threshold event crossing"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + // Owner Name + leaf owner { - // Type is an MO-Defined-Type - type naming_Id; + type snmp_OwnerType; + description "RMON alarm owner"; } - leaf devId { - config "false"; - type uint32; + } + + grouping snmp_CommSecP-group { + description "Community Security Policy"; + + // Group to which community belongs to + leaf grpName { + + type snmp_GrpNameT; + description "SNMP community group"; } - leaf sessId { - config "false"; - type uint32; + leaf contextName { + type string; + description "Name of the SNMP context"; } - leaf cmdId { - config "false"; - type uint32; + + // Community Access + leaf commAcess { + + type snmp_CommAcessT; + description "SNMP community group"; } - } - grouping opflex_ODevCmdResp-group { - leaf resp { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_OSSum; + description "Operational State"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type pol_ObjName { + length "0..64"; + pattern "[^\\s@]{1,32}"; + } + description "Name of the given attribute"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Id"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Id; - } - leaf devId { - config "false"; - type uint32; + type naming_Descr; + description "Description of the specified attribute"; } - leaf sessId { - config "false"; - type uint32; + + // This object hold the ACl informations + container acl-items { + + uses snmp_Acl-group; + description "snmp community acl"; } - leaf cmdId { - config "false"; - type uint32; + + container rscommToCtxAtt-items { + + uses snmp_RsCommToCtxAtt_source-group; } } - grouping ospf_Entity-group { + grouping snmp_Acl-group { + description "snmp community acl"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Modified by Override: ospf:AEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // SNMP ACL name + leaf useAclName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_AclNameT; + description "SNMP community acl name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // SNMP ACL name + leaf useIpv4AclName { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_AclNameT; + description "SNMP community acl name"; + } + + // SNMP ACL name + leaf useIpv6AclName { + + type snmp_AclNameT; + description "SNMP community acl name"; } + } + + grouping snmp_UserSecP-group { + description "User Security Policy"; // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_OSSum; + description "Operational State"; } - // This objects hold per ospf instance information - container inst-items { - list Inst-list { - key "name"; + leaf name { - // Added containment: Prefix=inst - // Acquired From Package ospf - uses ospf_Inst-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.@-]{0,31}.*"; } + description "Name of the given attribute"; } - } - - grouping ospf_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Modified by Override: ospf:AInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Authentication type + leaf authType { - // Type is an MO-Defined-Type - type nw_AdminSt; + type snmp_AuthType; + description "Authentication Type"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: ospf:AInst->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + // Authentication key + leaf authKey { - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + type snmp_AuthKey; + description "Authentication Key"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Privacy (encryption) type + leaf privType { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type snmp_PrivType; + description "Privacy"; } - // Memory alert level - // Inherited From ospf:AInst - // Type is an MO-Defined-Type - leaf memAlert { - config "false"; - description "Memory Alert Level"; + // Privacy key + leaf privKey { - // Type is an MO-Defined-Type - type nw_MemAlertLevel; + type snmp_PrivKey; + description "Privacy Key"; + } + } + + grouping snmp_Ctx-group { + description "Context"; + leaf ctxInstance { + type string; + description "Protocol instance associated with the SNMP context"; + } + leaf ctxTopology { + type string; + description "Topology associated with the SNMP context"; + } + leaf vrf { + type string; + description "VRF associated with the SNMP context"; } - leaf deletedViaCLI { + + // Operational state + leaf operSt { config "false"; - type boolean; + + type nw_OSSum; + description "Operational State"; } - // This objects hold per ospf domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package ospf - uses ospf_Dom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This object holds the size of the Logfiles for - // various types of OSPF events - container evtlogs-items { - list EventLogs-list { - key "eventType"; + leaf descr { - // Added containment: Prefix=evtlogs - // Acquired From Package ospf - uses ospf_EventLogs-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ospf_Dom-group { + grouping snmp_SysInfo-group { + description "The System Info maintained by SNMP"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ospf:ADom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf sysLocation { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpSysLoc; + description "System Location"; } - // Router id for this domain, if this is not specified - // the router-id is automatically picked up based on the - // first interface that comes up in that domain - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf rtrId { - description "Router ID"; + leaf sysContact { - // Type is an MO-Defined-Type - type ip_RtrId; + type snmp_SnmpSysContact; + description "System Contact"; } - // Dom controls - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf sysDescription { - // Type is an MO-Defined-Type - type ospf_DomControl; + type snmp_SnmpSysDescr; + description "System Description"; } + } - // Admin state - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative state"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping snmp_Traps-group { + description "Snmp Trap COnfiguration"; + leaf enableAllViaCLI { + type boolean; + description "Was trap enabled via CLI"; } - // Administrative distance preference - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf dist { - description "Distance"; + // Default traps List Starts From Here StormControl trap + container stormcontrol-items { - // Type is an MO-Defined-Type - type ospf_Dist; + uses snmp_TstormControl-group; + description "StormControl Traps"; } - // MAX ECMP - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf maxEcmp { - description "Max ECMP"; + // Default traps List Starts From Here AAA trap + container aaa-items { - // Type is an MO-Defined-Type - type ospf_Ecmp; + uses snmp_Taaa-group; + description "AAA Traps"; } - // Bandwidth Reference value. If bwRefUnit is mbps, then the - // range is 1 to 4000000 and if bwRefUnit is gbps, then the - // range is 1 to 4000 - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf bwRef { - description "Bandwidth Reference value"; + // Bfd trap + container bfd-items { - // Type is an MO-Defined-Type - type ospf_BwRef; + uses snmp_Tbfd-group; + description "Bfd Traps"; } - // Bandwidth Reference Unit - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf bwRefUnit { - description "Bandwidth Reference Unit (Mbps or Gbps)"; + // Bridge trap + container bridge-items { - // Type is an MO-Defined-Type - type ospf_BwRefUnit; + uses snmp_Tbridge-group; + description "Bridge Traps"; } - // Default Metric for redistributed routes - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf defMetric { - description "Default metric cost"; + // Callhome trap + container callhome-items { - // Type is an MO-Defined-Type - type ospf_Metric; - } - leaf rfc1583Compat { - type boolean; - } - leaf deletedViaCLI { - config "false"; - type boolean; + uses snmp_Tcallhome-group; + description "Callhome Traps"; } - // Adjacency change logging level - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf adjChangeLogLevel { - description "Adjacency change logging level"; + // Syslog trap + container syslog-items { - // Type is an MO-Defined-Type - type ospf_AdjChangeLogLevel; + uses snmp_Tsyslog-group; + description "Syslog Traps"; } - // L3VM Operational state - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "L3vm Operational State"; + // CFS trap + container cfs-items { - // Type is an MO-Defined-Type - type ospf_OperSt; + uses snmp_Tcfs-group; + description "CFS Traps"; } - // Operational Router id for this dom, if it is not specified - // the router-id is automatically picked up based on the - // first interface that comes up in that domain - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operRtrId { - config "false"; - description "Operational Router ID"; + // Config trap + container config-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_Tconfig-group; + description "Entity Traps"; } - // Operational SRGB minimum label - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSrgbStart { - config "false"; - description "Segment Routing Global Block Start Index for OSPF"; + // Entity trap + container entity-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses snmp_Tentity-group; + description "Entity Traps"; } - // Operational SRGB maximum label - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operSrgbEnd { - config "false"; - description "Segment Routing Global Block End Index for OSPF"; + // Feature-control trap + container featurecontrol-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses snmp_Tfeaturecontrol-group; + description "Feature-control Traps"; } - // Operational State of Segment Routing MPLS in OSPF Dom/VRF - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf operStSgmntRtgMpls { - config "false"; - description "Segment Routing MPLS Operational State in OSPF which is Enable/Disable"; + // hsrp trap + container hsrp-items { - // Type is an MO-Defined-Type - type ospf_SgmntRtgMplsOperSt; + uses snmp_Thsrp-group; + description "Hsrp Traps"; } - // Discard Route Bits - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf discardRoute { - description "Ctrl bits for discard-route external and internal"; + // generic trap + container generic-items { - // Type is an MO-Defined-Type - type ospf_DiscardRoute; + uses snmp_Tgeneric-group; + description "Generic Traps"; } - leaf downbitIgnore { - type boolean; + + // ip trap + container ip-items { + + uses snmp_Tip-group; + description "Ip Traps"; } - // Capability vrf-lite - // Inherited From ospf:ADom - // Type is an MO-Defined-Type - leaf capVrfLite { - description "capability vrf-lite"; + // license trap + container license-items { - // Type is an MO-Defined-Type - type ospf_VrfLiteControl; + uses snmp_Tlicense-group; + description "license Traps"; } - // This object holds ospf information that is operated at a - // interface level - container area-items { - list Area-list { - key "id"; + // poe trap + container poe-items { - // Added containment: Prefix=area - // Acquired From Package ospf - uses ospf_Area-group; - } + uses snmp_Tpoe-group; + description "poe Traps"; } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; + // link trap + container link-items { - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } + uses snmp_Tlink-group; + description "link Traps"; } - // This object holds spf computation frequency controls, none - // of these need to be exposed to the user - container spfcomp-items { + // lldp trap + container lldp-items { - // Added containment as a singleton: Prefix=spfcomp - // Acquired From Package ospf - uses ospf_SpfComp-group; + uses snmp_Tlldp-group; + description "lldp Traps"; } - // This object holds lsa related frequency controls, none of - // these need to be exposed to the user - container lsactrl-items { + // msdp trap + container msdp-items { - // Added containment as a singleton: Prefix=lsactrl - // Acquired From Package ospf - uses ospf_LsaCtrl-group; + uses snmp_Tmsdp-group; + description "msdp Traps"; } - // This object holds the ospf dom related statistics - container domstats-items { + // mmode trap + container mmode-items { - // Added containment as a singleton: Prefix=domstats - // Acquired From Package ospf - uses ospf_DomStats-group; + uses snmp_Tmmode-group; + description "mmode Traps"; } - // This objects hold per domain graceful restart information - container gr-items { + // pim trap + container pim-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package ospf - uses ospf_Gr-group; + uses snmp_Tpim-group; + description "pim Traps"; } - // This object holds ospf information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // rf trap + container rf-items { - // Added containment: Prefix=if - // Acquired From Package ospf - uses ospf_If-group; - } + uses snmp_Trf-group; + description "rf Traps"; } - // This object holds per domain max-lsa information - container maxlsap-items { + // rmon trap + container rmon-items { - // Added containment as a singleton: Prefix=maxlsap - // Acquired From Package ospf - uses ospf_MaxLsaP-group; + uses snmp_Trmon-group; + description "rmon Traps"; } - // This object holds per domain max-lsa information - container maxmetriclsap-items { + // snmp trap + container snmp-items { - // Added containment as a singleton: Prefix=maxmetriclsap - // Acquired From Package ospf - uses ospf_MaxMetricLsaP-group; + uses snmp_Tsnmp-group; + description "snmp Traps"; } - // This objects holds default route leak policy, - // this is not needed for FCS in our solution - container defrtleak-items { + // stpx trap + container stpx-items { - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package ospf - uses ospf_DefRtLeakP-group; + uses snmp_Tstpx-group; + description "lldp Traps"; } - // Inter protocol route leak policy. This defines distribution - // of routes from other protocols to ospf - container interleak-items { - list InterLeakP-list { - key "proto inst asn"; + // sysmgr trap + container sysmgr-items { - // Added containment: Prefix=interleak - // Acquired From Package ospf - uses ospf_InterLeakP-group; - } + uses snmp_Tsysmgr-group; + description "sysmgr Traps"; } - // Leak controls related to the number of routes leaked - container leakctrl-items { + // system trap + container system-items { - // Added containment as a singleton: Prefix=leakctrl - // Acquired From Package ospf - uses ospf_LeakCtrlP-group; + uses snmp_Tsystem-group; + description "system Traps"; } - container ribleak-items { + // upgrade trap + container upgrade-items { - // Added containment as a singleton: Prefix=ribleak - // Acquired From Package ospf - uses ospf_RibLeakP-group; + uses snmp_Tupgrade-group; + description "upgrade Traps"; } - // External route summarization is specific to external - // routes that are injected into OSPF using route leak. - // Configure external route summarization on ASBRs that - // are leaking routes into OSPF - container extrtsum-items { - list ExtRtSum-list { - key "addr"; + // vsan trap + container vsan-items { - // Added containment: Prefix=extrtsum - // Acquired From Package ospf - uses ospf_ExtRtSum-group; - } + uses snmp_Tvsan-group; + description "vsan Traps"; } - // This object holds the ospf traffic related information - container trstats-items { + // vtp trap + container vtp-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package ospf - uses ospf_TrafficStats-group; + uses snmp_Tvtp-group; + description "vtp Traps"; } - } - - grouping ospf_Area-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ospf:AArea->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // port-security trap + container portsecurity-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_Tportsecurity-group; + description "port-security Traps"; } - // Area id - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf id { - description "Area ID"; + // mpls trap + container mpls-items { - // Type is an MO-Defined-Type - type ospf_AreaId; + uses snmp_Tmpls-group; + description "mpls Traps"; } + } - // Area type (stub | nssa | backbone, etc) - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf type { - description "Type"; + grouping snmp_TstormControl-group { + description "StormControl Traps"; - // Type is an MO-Defined-Type - type ospf_AreaT; + // SNMP trap-rate + leaf traprate { + + type snmp_TrapRateT; + description "Number of traps per minute"; } - // Area controls - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // snmp authentication trap + container cpscEventRev1-items { - // Type is an MO-Defined-Type - type ospf_AreaControl; + uses snmp_CpscEventRev1-group; + description "storm-control cpscEventRev1 Traps"; } + } - // Area cost, specifies cost for default summary LSAs. - // Used with nssa/stub area types. Not applicable in - // our fabric solution - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf cost { - description "Cost"; + grouping snmp_CpscEventRev1-group { + description "storm-control cpscEventRev1 Traps"; - // Type is an MO-Defined-Type - type ospf_AreaCost; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Segment Routing control - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf sgmntRtgMpls { - description "Segment Routing Control"; + grouping snmp_Taaa-group { + description "AAA Traps"; - // Type is an MO-Defined-Type - type ospf_SegRtControl; + // AAA server-state-change trap + container serverstatechange-items { + + uses snmp_ServerStateChange-group; + description "AAA server-state-change Traps"; } + } - // NSSA translator role - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransRole { - description "NSSA Translator Role"; + grouping snmp_ServerStateChange-group { + description "AAA server-state-change Traps"; - // Type is an MO-Defined-Type - type ospf_NssaTransRole; - } + leaf trapstatus { - // Border router count - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf brCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Area Border Router Count"; - - // Type is an MO-Defined-Type - type ospf_BrCnt; + type uint16; + description "whether it is default config"; } + } - // AS Border router count - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf asbrCnt { - config "false"; - description "AS Border Router Count"; + grouping snmp_Tbfd-group { + description "Bfd Traps"; - // Type is an MO-Defined-Type - type ospf_AsbrCnt; + // Bfd session-down trap + container sessiondown-items { + + uses snmp_SessionDown-group; + description "Bfd session-down Traps"; } - // LSA checksum sum - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf lsaCksumSum { - config "false"; - description "LSA Checksum Sum"; + // Bfd session-up trap + container sessionup-items { - // Type is an MO-Defined-Type - type ospf_LsaCksumSum; + uses snmp_SessionUp-group; + description "Bfd session-up Traps"; } + } - // NSSA translator state - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransSt { - config "false"; - description "NSSA Translator State"; + grouping snmp_SessionDown-group { + description "Bfd session-down Traps"; - // Type is an MO-Defined-Type - type ospf_NssaTransSt; - } + leaf trapstatus { - // NSSA translator stability interval - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf nssaTransStabIntvl { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "NSSA Translator Stability Interval"; - - // Type is an MO-Defined-Type - type ospf_NssaTransStabIntvl; + type uint16; + description "whether it is default config"; } + } - // Operational State of Segment Routing MPLS in OSPF Area - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf operStSgmntRtgMpls { - config "false"; - description "Segment Routing MPLS Operational State in OSPF Area which is Enable/Disable"; + grouping snmp_SessionUp-group { + description "Bfd session-up Traps"; - // Type is an MO-Defined-Type - type ospf_SgmntRtgMplsOperSt; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Authentication type - // Inherited From ospf:AArea - // Type is an MO-Defined-Type - leaf authType { - description "Type"; + grouping snmp_Tbridge-group { + description "Bridge Traps"; - // Type is an MO-Defined-Type - type ospf_AuthT; + // Bridge newroot trap + container newroot-items { + + uses snmp_NewRoot-group; + description "Bridge Newroot"; } - // This object holds the ospf area related statistics - container areastats-items { + // Bridge topologychange trap + container topologychange-items { - // Added containment as a singleton: Prefix=areastats - // Acquired From Package ospf - uses ospf_AreaStats-group; + uses snmp_TopologyChange-group; + description "Bridge Newroot"; } + } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping snmp_NewRoot-group { + description "Bridge Newroot"; - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf information about OSPF virtual - // links - container vlink-items { - list VLink-list { - key "nbrRtrId"; + grouping snmp_TopologyChange-group { + description "Bridge Newroot"; - // Added containment: Prefix=vlink - // Acquired From Package ospf - uses ospf_VLink-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf information about OSPF sham - // links - container slink-items { - list SLink-list { - config "false"; - key "srcAddr dstAddr"; + grouping snmp_Tcallhome-group { + description "Callhome Traps"; - // Added containment: Prefix=slink - // Acquired From Package ospf - uses ospf_SLink-group; - } + // callhome event-notify trap + container eventnotify-items { + + uses snmp_EventNotify-group; + description "Callhome event-notify Traps"; } - // Lsa Leak concrete class. - container lsaleakp-items { + // callhome smtp-send-fail trap + container smtpsendfail-items { - // Added containment as a singleton: Prefix=lsaleakp - // Acquired From Package ospf - uses ospf_LsaLeakP-group; + uses snmp_SmtpSendFail-group; + description "Callhome smtp-send-fail Traps"; } + } - // Lsa Leak Control concrete class. - container lsaleakctrlp-items { - list LsaLeakCtrlP-list { - key "dir"; + grouping snmp_EventNotify-group { + description "Callhome event-notify Traps"; - // Added containment: Prefix=lsaleakctrlp - // Acquired From Package ospf - uses ospf_LsaLeakCtrlP-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; + } + } - // This objects holds default route leak policy, - // this is not needed for FCS in our solution - container defrtleak-items { + grouping snmp_SmtpSendFail-group { + description "Callhome smtp-send-fail Traps"; - // Added containment as a singleton: Prefix=defrtleak - // Acquired From Package ospf - uses ospf_DefRtLeakP-group; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Inter-area route summarization. This is configured - // on ABRs, summarizing routes between areas in the - // autonomous system - container iartsum-items { - list InterAreaRtSum-list { - key "addr"; + grouping snmp_Tsyslog-group { + description "Syslog Traps"; - // Added containment: Prefix=iartsum - // Acquired From Package ospf - uses ospf_InterAreaRtSum-group; - } + // syslog message-generated trap + container messagegenerated-items { + + uses snmp_MessageGenerated-group; + description "Syslog message-generated Traps"; } } - grouping ospf_AreaStats-group { - leaf areaCreatedTs { + grouping snmp_MessageGenerated-group { + description "Syslog message-generated Traps"; + leaf toggleState { config "false"; - type string; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of SPF runs - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf spfRuns { + leaf toggleStateCount { config "false"; - description "SPF Runs"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // LSA count - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf lsaCnt { - config "false"; - description "LSA Count"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf lastSpfDuration { + leaf isToggleAction { config "false"; - type uint32; + type uint16; + description "whether it is default config"; } + } - // Total number of interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf ifCnt { - config "false"; - description "Interface Count"; + grouping snmp_Tcfs-group { + description "CFS Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // cfs state-change-notif trap + container statechangenotif-items { + + uses snmp_StateChangeNotif-group; + description "cfs state-change-notif Traps"; } - // Number of active interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf activeIfCnt { - config "false"; - description "Active Interface Count"; + // cfs merge-failure trap + container mergefailure-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_MergeFailure-group; + description "cfs merge-failure Traps"; } + } - // Number of passive interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf passiveIfCnt { - config "false"; - description "Passive Interface Count"; + grouping snmp_StateChangeNotif-group { + description "cfs state-change-notif Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Number of loopback interfaces - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf lpbkIfCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Loopback Interface Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Number of adjacency - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf adjCnt { - config "false"; - description "Adjacency Count"; + grouping snmp_MergeFailure-group { + description "cfs merge-failure Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Number of peers in hitless helper mode - // Inherited From ospf:AAreaStats - // Type is an MO-Defined-Type - leaf grHelperPeerCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "GR Helper Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } } - grouping ospf_Db-group { + grouping snmp_Tconfig-group { + description "Entity Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // config CLIRunningConfigChange trap + container ccmCLIRunningConfigChanged-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_CLIRunningConfigChange-group; + description "config CLIRunningConfigChange Traps"; } + } - // Type of the repository - // Inherited From ospf:ADb - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + grouping snmp_CLIRunningConfigChange-group { + description "config CLIRunningConfigChange Traps"; - // Type is an MO-Defined-Type - type ospf_DbT; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // LSA records - container lsa-items { - list LsaRec-list { - config "false"; - key "type id advRtr"; + grouping snmp_Tentity-group { + description "Entity Traps"; - // Added containment: Prefix=lsa - // Acquired From Package ospf - uses ospf_LsaRec-group; - } + // entity entitymibchange trap + container entitymibchange-items { + + uses snmp_EntityMIBChange-group; + description "entity entitymibchange Traps"; } - // This object holds the ospf route information - container rt-items { - list Route-list { - config "false"; - key "pfx"; + // entity entitymodulestatuschange trap + container entitymodulestatuschange-items { - // Added containment: Prefix=rt - // Acquired From Package ospf - uses ospf_Route-group; - } + uses snmp_EntityModuleStatusChange-group; + description "entity entitymodulestatuschange Traps"; } - } - - grouping ospf_LsaRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // entity entitypowerstatuschange trap + container entitypowerstatuschange-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses snmp_EntityPowerStatusChange-group; + description "entity entitypowerstatuschange Traps"; } - // Lsa type - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // entity entitymoduleinserted trap + container entitymoduleinserted-items { - // Type is an MO-Defined-Type - type ospf_LsaT; + uses snmp_EntityModuleInserted-group; + description "entity entitymoduleinserted Traps"; } - // Lsa id - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // entity entitymoduleremoved trap + container entitymoduleremoved-items { - // Type is an MO-Defined-Type - type ospf_LsaId; + uses snmp_EntityModuleRemoved-group; + description "entity entitymoduleremoved Traps"; } - // Router id - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf advRtr { - config "false"; - description "Advertising Router"; + // entity entityunrecognisedmodule trap + container entityunrecognisedmodule-items { - // Type is an MO-Defined-Type - type ospf_LsaAdvRtr; + uses snmp_EntityUnrecognisedModule-group; + description "entity entityunrecognisedmodule Traps"; } - // Sequence number - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf seq { - config "false"; - description "Sequence Number"; + // entity entityfanstatuschange trap + container entityfanstatuschange-items { - // Type is an MO-Defined-Type - type ospf_LsaSeq; + uses snmp_EntityFanStatusChange-group; + description "entity entityfanstatuschange Traps"; } - // Age - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf age { - config "false"; - description "Age"; + // entity entitypoweroutchange trap + container entitypoweroutchange-items { - // Type is an MO-Defined-Type - type ospf_LsaAge; - } - leaf arrivalTs { - config "false"; - type string; + uses snmp_EntityPowerOutChange-group; + description "entity entitypoweroutchange Traps"; } - // Checksum - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf cksum { - config "false"; - description "Checksum"; + // entity entitysensor trap + container entitysensor-items { - // Type is an MO-Defined-Type - type ospf_LsaCksum; + uses snmp_EntitySensor-group; + description "entity entitysensor Traps"; } - // Advertisement - // Inherited From ospf:ALsaRec - // Type is an MO-Defined-Type - leaf advert { - config "false"; - description "LSA Advertisement"; + // entity entitymibenablestatusnotification trap + container cefcMIBEnableStatusNotification-items { - // Type is an MO-Defined-Type - type ospf_LsaAdvert; + uses snmp_EntityMIBEnableStatusNotification-group; + description "entity entitymibenablestatusnotification Traps"; } } - grouping ospf_Route-group { + grouping snmp_EntityMIBChange-group { + description "entity entitymibchange Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf pfx { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Path type - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf pathT { - config "false"; - description "Path Type"; + grouping snmp_EntityModuleStatusChange-group { + description "entity entitymodulestatuschange Traps"; - // Type is an MO-Defined-Type - type ospf_PathT; - } + leaf trapstatus { - // Area id - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf area { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Area ID"; - - // Type is an MO-Defined-Type - type ospf_AreaId; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_EntityPowerStatusChange-group { + description "entity entitypowerstatuschange Traps"; - // Type is an MO-Defined-Type - type ospf_RtFlags; - } + leaf trapstatus { - // Unicast cost - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf ucastCost { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Unicast Cost"; - - // Type is an MO-Defined-Type - type ospf_RtCost; + type uint16; + description "whether it is default config"; } + } - // Multicast cost - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf mcastCost { - config "false"; - description "Multicast Cost"; + grouping snmp_EntityModuleInserted-group { + description "entity entitymoduleinserted Traps"; - // Type is an MO-Defined-Type - type ospf_RtCost; - } + leaf trapstatus { - // Route Tag - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf tag { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Route Tag"; - - // Type is an MO-Defined-Type - type ospf_RtTag; + type uint16; + description "whether it is default config"; } + } - // Administrative distance preference - // Inherited From ospf:ARoute - // Type is an MO-Defined-Type - leaf dist { - config "false"; - description "Distance"; + grouping snmp_EntityModuleRemoved-group { + description "entity entitymoduleremoved Traps"; - // Type is an MO-Defined-Type - type ospf_Dist; - } + leaf trapstatus { - // Unicast nexthop - container ucnh-items { - list UcNexthop-list { - config "false"; - key "if addr"; - - // Added containment: Prefix=ucnh - // Acquired From Package ospf - uses ospf_UcNexthop-group; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Multicast nexthop - container mcnh-items { - list McNexthop-list { - config "false"; - key "if addr"; + grouping snmp_EntityUnrecognisedModule-group { + description "entity entityunrecognisedmodule Traps"; - // Added containment: Prefix=mcnh - // Acquired From Package ospf - uses ospf_McNexthop-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_UcNexthop-group { + grouping snmp_EntityFanStatusChange-group { + description "entity entityfanstatuschange Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Nexhop interface - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf if { + leaf isToggleAction { config "false"; - description "Interface"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type nw_IfId; + grouping snmp_EntityPowerOutChange-group { + description "entity entitypoweroutchange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf addr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_EntitySensor-group { + description "entity entitysensor Traps"; - // Type is an MO-Defined-Type - type ospf_NhFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_McNexthop-group { + grouping snmp_EntityMIBEnableStatusNotification-group { + description "entity entitymibenablestatusnotification Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Name"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + grouping snmp_Tfeaturecontrol-group { + description "Feature-control Traps"; + + // feature-control FeatureOpStatusChange trap + container FeatureOpStatusChange-items { + + uses snmp_FeatureOpStatusChange-group; + description "feature-control FeatureOpStatusChange Traps"; } - // Nexhop interface - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface"; + // feature-control CiscoFeatOpStatusChange trap + container ciscoFeatOpStatusChange-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses snmp_CiscoFeatOpStatusChange-group; + description "feature-control ciscoFeatOpStatusChange Traps"; } - leaf addr { + } + + grouping snmp_FeatureOpStatusChange-group { + description "feature-control FeatureOpStatusChange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:ANexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_CiscoFeatOpStatusChange-group { + description "feature-control ciscoFeatOpStatusChange Traps"; - // Type is an MO-Defined-Type - type ospf_NhFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_VLink-group { + grouping snmp_Thsrp-group { + description "Hsrp Traps"; - // Router id associated with virtual link neighbor - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf nbrRtrId { - description "Router ID"; + // hsrp statechange trap + container statechange-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_StateChange-group; + description "hsrp statechange Traps"; } + } - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; + grouping snmp_StateChange-group { + description "hsrp statechange Traps"; - // Type is an MO-Defined-Type - type ospf_HelloIntvl; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf deadIntvl { - description "Dead Interval"; + grouping snmp_Tgeneric-group { + description "Generic Traps"; - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + // generic coldstart trap + container coldStart-items { + + uses snmp_ColdStart-group; + description "generic coldstart Traps"; } - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf rexmitIntvl { - description "Retransmit Interval"; + // generic warmstart trap + container warmStart-items { - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + uses snmp_WarmStart-group; + description "generic warmstart Traps"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AVLink - // Type is an MO-Defined-Type - leaf xmitDelay { - description "Transmit Delay"; + grouping snmp_ColdStart-group { + description "generic coldstart Traps"; - // Type is an MO-Defined-Type - type ospf_XmitDelay; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; + grouping snmp_WarmStart-group { + description "generic warmstart Traps"; - // Added containment: Prefix=adj - // Acquired From Package ospf - uses ospf_AdjEp-group; - } + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds authentication new policy information - container authnew-items { + grouping snmp_Tip-group { + description "Ip Traps"; - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + // ip sla trap + container sla-items { + + uses snmp_Sla-group; + description "ip sla Traps"; } } - grouping ospf_AdjEp-group { + grouping snmp_Sla-group { + description "ip sla Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Neighbor's router id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf id { + leaf isToggleAction { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type ospf_AdjId; + type uint16; + description "whether it is default config"; } + } - // Neighbor's interface id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Interface ID"; + grouping snmp_Tlicense-group { + description "license Traps"; - // Type is an MO-Defined-Type - type ospf_AdjIfId; + // license Notify licenseexpiry trap + container notifylicenseexpiry-items { + + uses snmp_NotifyLicenseExpiry-group; + description "Notify license LicenseExpiry Traps"; } - // Adjacency state - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // license Notify LicenseExpiryWarning trap + container notifylicenseexpirywarning-items { - // Type is an MO-Defined-Type - type ospf_AdjOperSt; + uses snmp_NotifyLicenseExpiryWarning-group; + description "license Notify LicenseExpiryWarning Traps"; } - // BFD state - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf bfdSt { - config "false"; - description "BFD State"; + // license Notify licensefilemissing trap + container notifylicensefilemissing-items { - // Type is an MO-Defined-Type - type ospf_BfdOperSt; + uses snmp_NotifyLicenseFileMissing-group; + description "license Notify licensefilemissing Traps"; } - // Area id - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf area { - config "false"; - description "Area ID"; + // license Notifynolicenceforfeature trap + container notifynolicenseforfeature-items { - // Type is an MO-Defined-Type - type ospf_AreaId; + uses snmp_NotifyNoLicenceForFeature-group; + description "license Notify nolicenceforfeature Traps"; } + } - // Neighbor priority - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping snmp_NotifyLicenseExpiry-group { + description "Notify license LicenseExpiry Traps"; - // Type is an MO-Defined-Type - type ospf_DesigPrio; - } + leaf trapstatus { - // Designated router address - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf dr { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Designated Router"; - - // Type is an MO-Defined-Type - type ospf_DesigAddr; + type uint16; + description "whether it is default config"; } + } - // Backup designated router address - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf bdr { - config "false"; - description "Backup Designated Router"; + grouping snmp_NotifyLicenseExpiryWarning-group { + description "license Notify LicenseExpiryWarning Traps"; - // Type is an MO-Defined-Type - type ospf_DesigAddr; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf peerIp { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Peer options from hello packet - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf helloOptions { - config "false"; - description "Hello Options"; + grouping snmp_NotifyLicenseFileMissing-group { + description "license Notify licensefilemissing Traps"; - // Type is an MO-Defined-Type - type ospf_Options; - } + leaf trapstatus { - // Peer options from DBD packet - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf dbdOptions { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "DBD Options"; - - // Type is an MO-Defined-Type - type ospf_Options; + type uint16; + description "whether it is default config"; } + } - // Flags - // Inherited From ospf:AAdjEp - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_NotifyNoLicenceForFeature-group { + description "license Notify nolicenceforfeature Traps"; - // Type is an MO-Defined-Type - type ospf_AdjFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf peerName { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // This object holds the ospf neighbor related statistics - container adjstats-items { + grouping snmp_Tpoe-group { + description "poe Traps"; - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package ospf - uses ospf_AdjStats-group; + // POE police notify trap + container policenotify-items { + + uses snmp_PoliceNotify-group; + description "POE police notify Traps"; } - // This object holds ospf graceful restart operational - // information - container gr-items { + // POE control enable notify trap + container controlenable-items { - // Added containment as a singleton: Prefix=gr - // Acquired From Package ospf - uses ospf_GrSt-group; + uses snmp_ControlEnable-group; + description "POE control enable notify Traps"; } } - grouping ospf_AdjStats-group { - - // State change count - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf stChgCnt { - config "false"; - description "State Change Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; - } - leaf lastStChgTs { + grouping snmp_PoliceNotify-group { + description "POE police notify Traps"; + leaf toggleState { config "false"; - type string; + type uint16; + description "1 for enable / 2 for disable"; } - leaf lastNonHelloPktTs { + leaf toggleStateCount { config "false"; - type string; + type uint16; + description "Incremental counter for triggering BI"; } - // DBD Sequence number - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf dbdSeqNum { - config "false"; - description "DBD Sequence Number"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Number of LSAs on request list - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf reqLsaCnt { + leaf isToggleAction { config "false"; - description "Request LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Outstanding LSAs from last request - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf outstandingLsaCnt { + grouping snmp_ControlEnable-group { + description "POE control enable notify Traps"; + leaf toggleState { config "false"; - description "Outstanding LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of retransmissions of LSA request - // Inherited From ospf:AAdjStats - // Type is an MO-Defined-Type - leaf lsaReqRexmitCnt { + leaf toggleStateCount { config "false"; - description "LSA Request Retransmission Count"; + type uint16; + description "Incremental counter for triggering BI"; + } - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf deadTimerExpTs { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } } - grouping ospf_GrSt-group { + grouping snmp_Tlink-group { + description "link Traps"; - // Peer restart helper Status - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperSt { - config "false"; - description "Peer Restart Helper Status"; + // link Ciscoxcvrmonstatuschange trap + container ciscoxcvrmonstatuschg-items { - // Type is an MO-Defined-Type - type ospf_HelperSt; + uses snmp_CiscoXcvrMonStatusChange-group; + description "link Ciscoxcvrmonstatuschange Traps"; } - // Peer restart helper age - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperAge { - config "false"; - description "Peer Restart Helper Age"; + // link linkdown trap + container linkDown-items { - // Type is an MO-Defined-Type - type ospf_HelperAge; + uses snmp_LinkDown-group; + description "link linkdown Traps"; } - // Peer restart helper exit qualifier - // Inherited From ospf:AGrSt - // Type is an MO-Defined-Type - leaf helperExitQual { - config "false"; - description "Peer Restart Helper Exit Qualifier"; + // link linkup trap + container linkUp-items { - // Type is an MO-Defined-Type - type ospf_HelperExitQual; + uses snmp_LinkUp-group; + description "link linkup Traps"; } - } - grouping ospf_AuthNewP-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:AAuthNewP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // link extended linkdown trap + container extendedlinkDown-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses snmp_ExtendedLinkDown-group; + description "link Extended linkdown Traps"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AAuthNewP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // link extended linkup trap + container extendedlinkUp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses snmp_ExtendedLinkUp-group; + description "link extended linkup Traps"; } - // Authentication type - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // link cielinkdown trap + container cieLinkDown-items { - // Type is an MO-Defined-Type - type ospf_AuthT; + uses snmp_CieLinkDown-group; + description "link Cie linkdown Traps"; } - // Authentication key id - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf keyId { - description "Key ID"; + // link Cie linkup trap + container cieLinkUp-items { - // Type is an MO-Defined-Type - type ospf_AuthKeyId; + uses snmp_CieLinkUp-group; + description "link Cie linkup Traps"; } - // Authentication key - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // link delayedlinkstatechange trap + container delayedlinkstatechange-items { - // Type is an MO-Defined-Type - type ospf_AuthKey; + uses snmp_DelayedLinkStateChange-group; + description "link DelayedLinkStateChange Traps"; } - leaf keySecureMode { - type boolean; - default "true"; + + // link cErrDisableInterfaceEventRev1 trap + container cerrdisableinterfaceeventrev1-items { + + uses snmp_CErrDisableInterfaceEventRev1-group; + description "link cErrDisableInterfaceEventRev1 Traps"; } - // Authentication md5 key - // Inherited From ospf:AAuthNewP - // Type is an MO-Defined-Type - leaf md5key { - description "Key"; + // link cmnMacMoveNotification trap + container cmnmacmovenotification-items { - // Type is an MO-Defined-Type - type ospf_AuthKey; + uses snmp_CmnMacMoveNotification-group; + description "link cmnMacMoveNotification Traps"; } - leaf md5keySecureMode { - type boolean; - default "true"; + } + + grouping snmp_CiscoXcvrMonStatusChange-group { + description "link Ciscoxcvrmonstatuschange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf keychain { - type string; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_SLink-group { - leaf srcAddr { - config "false"; - type address_Ip; + grouping snmp_LinkDown-group { + description "link linkdown Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf dstAddr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } - leaf demandCkt { - config "false"; - type boolean; - } - - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf helloIntvl { - config "false"; - description "Hello Interval"; + } - // Type is an MO-Defined-Type - type ospf_HelloIntvl; - } + grouping snmp_LinkUp-group { + description "link linkup Traps"; - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf deadIntvl { - config "false"; - description "Dead Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf rexmitIntvl { + leaf isToggleAction { config "false"; - description "Retransmit Interval"; - - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + type uint16; + description "whether it is default config"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // From Interface ospf:IIntfIntvl - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf xmitDelay { - config "false"; - description "Transmit Delay"; - - // Type is an MO-Defined-Type - type ospf_XmitDelay; - } + grouping snmp_ExtendedLinkDown-group { + description "link Extended linkdown Traps"; - // Cost of the interface - // From Interface ospf:IIntfCost - // Inherited From ospf:ASLink - // Type is an MO-Defined-Type - leaf cost { - config "false"; - description "Cost"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_IfCost; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // This object holds authentication new policy information - container authnew-items { - - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_LsaLeakP-group { + grouping snmp_ExtendedLinkUp-group { + description "link extended linkup Traps"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "Scope"; + grouping snmp_CieLinkDown-group { + description "link Cie linkdown Traps"; - // Type is an MO-Defined-Type - type rtleak_Scope; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf rtMap { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // Operational state - // Inherited From ospf:ALsaLeakP - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping snmp_CieLinkUp-group { + description "link Cie linkup Traps"; - // Type is an MO-Defined-Type - type ospf_LsaLeakOperSt; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_LsaLeakCtrlP-group { + grouping snmp_DelayedLinkStateChange-group { + description "link DelayedLinkStateChange Traps"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; + grouping snmp_CErrDisableInterfaceEventRev1-group { + description "link cErrDisableInterfaceEventRev1 Traps"; + leaf toggleState { + config "false"; + type uint16; + description "1 for enable / 2 for disable"; } - leaf rtMap { - type string; + leaf toggleStateCount { + config "false"; + type uint16; + description "Incremental counter for triggering BI"; } - // Inherited From ospf:ALsaLeakCtrlP - // Type is an MO-Defined-Type - leaf dir { - description "Filter Type"; + leaf trapstatus { - // Type is an MO-Defined-Type - type rtleak_RtCtrlDir; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Operational state - // Inherited From ospf:ALsaLeakCtrlP - // Type is an MO-Defined-Type - leaf operSt { + leaf isToggleAction { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type ospf_LsaLeakOperSt; + type uint16; + description "whether it is default config"; } } - grouping ospf_DefRtLeakP-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:ADefRtLeakP->name - // Type is an MO-Defined-Type - leaf name { + grouping snmp_CmnMacMoveNotification-group { + description "link cmnMacMoveNotification Traps"; + leaf toggleState { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint16; + description "1 for enable / 2 for disable"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ADefRtLeakP->descr - // Type is an MO-Defined-Type - leaf descr { + leaf toggleStateCount { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "Incremental counter for triggering BI"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:DefRtLeakP->scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + leaf trapstatus { - // Type is an MO-Defined-Type - type rtleak_Scope; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf rtMap { - type string { - } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // DefRtLeak always advertise - // Inherited From ospf:ADefRtLeakP - // Type is an MO-Defined-Type - leaf always { - description "Always advertise default leak"; + grouping snmp_Tlldp-group { + description "lldp Traps"; - // Type is an MO-Defined-Type - type ospf_Always; + // lldp RemTablesChange trap + container lldpRemTablesChange-items { + + uses snmp_LldpRemTablesChange-group; + description "lldp LldpRemTablesChange Traps"; } } - grouping ospf_InterAreaRtSum-group { + grouping snmp_LldpRemTablesChange-group { + description "lldp LldpRemTablesChange Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ARtSum->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ARtSum->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf addr { - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Summary address no Advertise - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping snmp_Tmsdp-group { + description "msdp Traps"; - // Type is an MO-Defined-Type - type ospf_SumControl; + // msdp BackwardTransition trap + container msdpBackwardTransition-items { + + uses snmp_MsdpBackwardTransition-group; + description "msdp BackwardTransition Traps"; } + } - // Number of component routes - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf compRtCnt { - config "false"; - description "Number of component routes"; + grouping snmp_MsdpBackwardTransition-group { + description "msdp BackwardTransition Traps"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + leaf trapstatus { - // Route summary cost - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf operCost { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Route Summary Operational Cost"; + type uint16; + description "whether it is default config"; + } + } - // Type is an MO-Defined-Type - type ospf_SumCost; + grouping snmp_Tmmode-group { + description "mmode Traps"; + + // mmode CseMaintModeChangeNotify trap + container cseMaintModeChangeNotify-items { + + uses snmp_CseMaintModeChangeNotify-group; + description "mmode CseMaintModeChangeNotify Traps"; } - // Area range cost - // Inherited From ospf:AInterAreaRtSum - // Type is an MO-Defined-Type - leaf cost { - description "Area range cost"; + // mmode CseNormalModeChangeNotify trap + container cseNormalModeChangeNotify-items { - // Type is an MO-Defined-Type - type ospf_SumCost; + uses snmp_CseNormalModeChangeNotify-group; + description "mmode CseNormalModeChangeNotify Traps"; } } - grouping ospf_SpfComp-group { + grouping snmp_CseMaintModeChangeNotify-group { + description "mmode CseMaintModeChangeNotify Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ASpfComp->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ASpfComp->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Initial spf schedule delay interval - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf initIntvl { - description "Initial Interval"; - - // Type is an MO-Defined-Type - type ospf_SpfCompInitIntvl; - } + grouping snmp_CseNormalModeChangeNotify-group { + description "mmode CseNormalModeChangeNotify Traps"; - // Minimum hold time between spf calculations - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_SpfCompHoldIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Maximum wait time between spf calculations - // Inherited From ospf:ASpfComp - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Interval"; + grouping snmp_Tpim-group { + description "pim Traps"; - // Type is an MO-Defined-Type - type ospf_SpfCompMaxIntvl; + // pim PimNeighborloss trap + container pimNeighborLoss-items { + + uses snmp_PimNeighborLoss-group; + description "pim PimNeighborloss Traps"; } } - grouping ospf_LsaCtrl-group { + grouping snmp_PimNeighborLoss-group { + description "pim PimNeighborloss Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:ALsaCtrl->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ALsaCtrl->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // LSA group pacing interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf gpPacingIntvl { - description "Group Pacing Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaGpPacingIntvl; - } + grouping snmp_Trf-group { + description "rf Traps"; - // Minimum interval between arrival of a LSA - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf arrivalIntvl { - description "Arrival Interval"; + // rf redundancyframework trap + container redundancyframework-items { - // Type is an MO-Defined-Type - type ospf_LsaArrivalIntvl; + uses snmp_RedundancyFramework-group; + description "rf redundancyframework Traps"; } + } - // LSA generation throttle start wait interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf startIntvl { - description "Start Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaThStartIntvl; - } + grouping snmp_RedundancyFramework-group { + description "rf redundancyframework Traps"; - // LSA generation throttle hold interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_LsaThHoldIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // LSA generation throttle maximum interval - // Inherited From ospf:ALsaCtrl - // Type is an MO-Defined-Type - leaf maxIntvl { - description "Maximum Interval"; - - // Type is an MO-Defined-Type - type ospf_LsaThMaxIntvl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_DomStats-group { + grouping snmp_Trmon-group { + description "rmon Traps"; - // Interface count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf ifCnt { - config "false"; - description "Interface Count"; + // rmon RisingAlarm trap + container risingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_RisingAlarm-group; + description "rmon RisingAlarm Traps"; } - // Area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf areaCnt { - config "false"; - description "Area Count"; + // rmon FallingAlarm trap + container fallingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_FallingAlarm-group; + description "rmon FallingAlarm Traps"; } - // Stub area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf stubAreaCnt { - config "false"; - description "Stub Area Count"; + // rmon HcRisingAlarm trap + container hcRisingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_HcRisingAlarm-group; + description "rmon HcRisingAlarm Traps"; } - // NSSA area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf nssaAreaCnt { - config "false"; - description "NSSA Area Count"; + // rmon HcFallingAlarm trap + container hcFallingAlarm-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_HcFallingAlarm-group; + description "rmon HcFallingAlarm Traps"; } + } - // External area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf extAreaCnt { - config "false"; - description "External Area Count"; + grouping snmp_RisingAlarm-group { + description "rmon RisingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Active stub area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeStubAreaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Active Stub Area Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Active NSSA area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeNssaAreaCnt { - config "false"; - description "Active NSSA Area Count"; + grouping snmp_FallingAlarm-group { + description "rmon FallingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Active external area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeExtAreaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Active External Area Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Active Area count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf activeAreaCnt { - config "false"; - description "Active Area Count"; + grouping snmp_HcRisingAlarm-group { + description "rmon HcRisingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf lastStatsClearTs { + leaf isToggleAction { config "false"; - type string; + type uint16; + description "whether it is default config"; } + } - // Neighbor count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf peerCnt { - config "false"; - description "Peer Count"; + grouping snmp_HcFallingAlarm-group { + description "rmon HcFallingAlarm Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // External LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf extLsaCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "External LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Opaque AS LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf opaqueAsLsaCnt { - config "false"; - description "Opaque AS LSA Count"; + grouping snmp_Tsnmp-group { + description "snmp Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // snmp authentication trap + container authentication-items { + + uses snmp_Authentication-group; + description "snmp authentication Traps"; } + } - // Total AS LSA count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf totalAsLsaCnt { - config "false"; - description "Total AS LSA Count"; + grouping snmp_Authentication-group { + description "snmp authentication Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // New LSA Rx count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf newLsaRxCnt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "New LSA Rx Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // New LSA Tx count - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf newLsaTxCnt { - config "false"; - description "New LSA Tx Count"; + grouping snmp_Tstpx-group { + description "lldp Traps"; - // Type is an MO-Defined-Type - type ospf_Counter32; + // stpx inconsistency trap + container inconsistency-items { + + uses snmp_Inconsistency-group; + description "stpx inconsistency Traps"; } - // Area Border Router Status - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf areaBdrRtr { - config "false"; - description "Area Border Router"; + // stpx rootinconsistency trap + container rootinconsistency-items { - // Type is an MO-Defined-Type - type ospf_AreaBdrRtr; + uses snmp_RootInconsistency-group; + description "stpx root inconsistency Traps"; } - // ASBR Router Status - // Inherited From ospf:ADomStats - // Type is an MO-Defined-Type - leaf asBdrRtr { - config "false"; - description "Autonomous System Boundary Router"; + // stpx Loopinconsistency trap + container loopinconsistency-items { - // Type is an MO-Defined-Type - type ospf_ASBdrRtr; + uses snmp_LoopInconsistency-group; + description "stpx loop inconsistency Traps"; } } - grouping ospf_Gr-group { + grouping snmp_Inconsistency-group { + description "stpx inconsistency Traps"; - // Inherited From pol:Obj - // Modified by Override: ospf:AGr->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AGr->descr - // Type is an MO-Defined-Type - leaf descr { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint16; + description "whether it is default config"; } + } - // Graceful restart controls - // Inherited From ospf:AGr - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; - - // Type is an MO-Defined-Type - type ospf_GrCtrl; - } - leaf helper { - type boolean; - default "true"; - } + grouping snmp_RootInconsistency-group { + description "stpx root inconsistency Traps"; - // Graceful restart period - // Inherited From ospf:AGr - // Type is an MO-Defined-Type - leaf gracePeriod { - description "Control"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_GrPeriod; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_If-group { + grouping snmp_LoopInconsistency-group { + description "stpx loop inconsistency Traps"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Modified by Override: ospf:AIf->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf trapstatus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Inherited From nw:If - // Modified by Override: ospf:AIf->descr - // Type is an MO-Defined-Type - leaf descr { + leaf isToggleAction { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; + type uint16; + description "whether it is default config"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping snmp_Tsysmgr-group { + description "sysmgr Traps"; - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // sysmgr CseFailSwCoreNotifyExtended trap + container cseFailSwCoreNotifyExtended-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses snmp_CseFailSwCoreNotifyExtended-group; + description "sysmgr CseFailSwCoreNotifyExtended Traps"; } + } - // Interface controls - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type ospf_IfControl; - } + grouping snmp_CseFailSwCoreNotifyExtended-group { + description "sysmgr CseFailSwCoreNotifyExtended Traps"; - // Passive interface control - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf passiveCtrl { - description "Passive Interface Control"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_PassiveControl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // BFD control - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf bfdCtrl { - description "BFD Control"; - - // Type is an MO-Defined-Type - type ospf_BfdControl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Network type - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf nwT { - description "Network Type"; - - // Type is an MO-Defined-Type - type ospf_NwT; - } + grouping snmp_Tsystem-group { + description "system Traps"; - // Priority, used in determining the designated router on - // this network - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf prio { - description "Priority"; + // system ClockChangeNotification trap + container Clockchangenotification-items { - // Type is an MO-Defined-Type - type ospf_DesigPrio; + uses snmp_ClockChangeNotification-group; + description "system ClockChangeNotification Traps"; } + } - // Cost of the interface - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf cost { - description "Cost"; + grouping snmp_ClockChangeNotification-group { + description "system ClockChangeNotification Traps"; - // Type is an MO-Defined-Type - type ospf_IfCost; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Transmit delay, estimated time needed to send an LSA - // update packet - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf xmitDelay { - description "Transmit Delay"; + grouping snmp_Tupgrade-group { + description "upgrade Traps"; - // Type is an MO-Defined-Type - type ospf_XmitDelay; + // upgrade UpgradeJobStatusNotify trap + container UpgradeJobStatusNotify-items { + + uses snmp_UpgradeJobStatusNotify-group; + description "upgrade UpgradeJobStatusNotify Traps"; } + } - // Area to which this interface belongs to - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf area { - description "Area ID"; + grouping snmp_UpgradeJobStatusNotify-group { + description "upgrade UpgradeJobStatusNotify Traps"; - // Type is an MO-Defined-Type - type ospf_AreaId; - } - leaf advertiseSecondaries { - type boolean; - default "true"; - } + leaf trapstatus { - // Operational state - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operSt { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type ospf_IfOperSt; + type uint16; + description "whether it is default config"; } + } - // Operational failed state qualifier - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf failStQual { - config "false"; - description "Failed State Qualifier"; + grouping snmp_Tvsan-group { + description "vsan Traps"; - // Type is an MO-Defined-Type - type ospf_FailStQual; + // vsan PortMembershipChange trap + container vsanPortMembershipChange-items { + + uses snmp_VsanPortMembershipChange-group; + description "vsan PortMembershipChange Traps"; } - // Interface type - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // vsan vsanStatusChange trap + container vsanStatusChange-items { - // Type is an MO-Defined-Type - type ospf_IfType; + uses snmp_VsanStatusChange-group; + description "vsan vsanStatusChange Traps"; } + } - // Flags - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + grouping snmp_VsanPortMembershipChange-group { + description "vsan PortMembershipChange Traps"; - // Type is an MO-Defined-Type - type ospf_IfFlags; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf addr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } - leaf dr { - config "false"; - type address_Ip; + } + + grouping snmp_VsanStatusChange-group { + description "vsan vsanStatusChange Traps"; + + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - leaf bdr { + leaf isToggleAction { config "false"; - type address_Ip; + type uint16; + description "whether it is default config"; } + } - // Designated router id - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf drId { - config "false"; - description "DR Id"; - - // Type is an MO-Defined-Type - type ip_RtrId; - } + grouping snmp_Tvtp-group { + description "vtp Traps"; - // Backup designated router id - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf bdrId { - config "false"; - description "BDR Id"; + // vtp notifs trap + container notifs-items { - // Type is an MO-Defined-Type - type ip_RtrId; + uses snmp_Notifs-group; + description "vtp notifs Traps"; } - // LSA checksum sum - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf lsaCksumSum { - config "false"; - description "LSA Checksum Sum"; + // vtp vlancreate trap + container vlancreate-items { - // Type is an MO-Defined-Type - type ospf_LsaCksumSum; + uses snmp_Vlancreate-group; + description "vtp vlancreate Traps"; } - // Operational Cost - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operCost { - config "false"; - description "Operational Cost"; + // vtp vlandelete trap + container vlandelete-items { - // Type is an MO-Defined-Type - type ospf_IfCost; + uses snmp_Vlandelete-group; + description "vtp vlandelete Traps"; } + } - // Operational Dead interval - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operDeadIntvl { - config "false"; - description "Operational Dead Interval"; + grouping snmp_Notifs-group { + description "vtp notifs Traps"; - // Type is an MO-Defined-Type - type ospf_DeadIntvl; - } + leaf trapstatus { - // Operational SID value for this interface - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf operSidIndex { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Operational Segment-Routing prefix SID value. It is relative value to SRBG start."; - - // Type is an MO-Defined-Type - type ospf_SidIndex; + type uint16; + description "whether it is default config"; } + } - // Hello interval, interval between hello packets that - // OSPF sends on the interface - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; - - // Type is an MO-Defined-Type - type ospf_HelloIntvl; - } + grouping snmp_Vlancreate-group { + description "vtp vlancreate Traps"; - // Dead interval, interval during which at least one - // hello packet must be received from a neighbor before - // the router declares that neighbor as down - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf deadIntvl { - description "Dead Interval"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_DeadIntvl; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Retransmit interval, time between LSA retransmissions. - // When a router sends an LSA to its neighbor, it keeps - // the LSA until it receives an acknowledgement from the - // neighbor. If the router receives no acknowldegement - // within the retransmit interval, the local router - // resends the LSA - // From Interface ospf:IIntfIntvl - // Inherited From ospf:AIf - // Type is an MO-Defined-Type - leaf rexmitIntvl { - description "Retransmit Interval"; - - // Type is an MO-Defined-Type - type ospf_RexmitIntvl; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // This object holds ospf neighbor information - container adj-items { - list AdjEp-list { - config "false"; - key "id"; - - // Added containment: Prefix=adj - // Acquired From Package ospf - uses ospf_AdjEp-group; - } - } + grouping snmp_Vlandelete-group { + description "vtp vlandelete Traps"; - // This object holds authentication policy information - container auth-items { + leaf trapstatus { - // Added containment as a singleton: Prefix=auth - // Acquired From Package ospf - uses ospf_AuthP-group; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // This object holds authentication new policy information - container authnew-items { - - // Added containment as a singleton: Prefix=authnew - // Acquired From Package ospf - uses ospf_AuthNewP-group; + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // OSPF databases - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package ospf - uses ospf_Db-group; - } - } + grouping snmp_Tportsecurity-group { + description "port-security Traps"; - // This object holds the ospf interface related statistics - container ifstats-items { + // port-security access-secure-mac-violation + container accesssecuremacviolation-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package ospf - uses ospf_IfStats-group; + uses snmp_AccessSecureMacViolation-group; + description "port-security access-secure-mac-violation Traps"; } - // This object holds multi-area information - // at a interface level - container multiarea-items { - list MultiArea-list { - key "multiareaid"; + // port-security trunk-secure-mac-violation + container trunksecuremacviolation-items { - // Added containment: Prefix=multiarea - // Acquired From Package ospf - uses ospf_MultiArea-group; - } + uses snmp_TrunkSecureMacViolation-group; + description "port-security trunk-secure-mac-violation Traps"; } + } - // This object holds the ospf traffic related information - container trstats-items { + grouping snmp_AccessSecureMacViolation-group { + description "port-security access-secure-mac-violation Traps"; - // Added containment as a singleton: Prefix=trstats - // Acquired From Package ospf - uses ospf_TrafficStats-group; + leaf trapstatus { + + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } + } - // Rel-def target from IfDefToOspfIf - // Inherited From ospf:If - container rtospfIfDefToOspfIf-items { + grouping snmp_TrunkSecureMacViolation-group { + description "port-security trunk-secure-mac-violation Traps"; - // Abstract containment of rtospfIfDefToOspfIf derived from ospf:If - list RtOspfIfDefToOspfIf-list { - config "false"; - key "tDn"; + leaf trapstatus { - // Added containment: Prefix=rtospfIfDefToOspfIf - // Acquired From Package ospf - uses ospf_RtOspfIfDefToOspfIf_target-group; - } + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; + } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - container rtvrfMbr-items { + grouping snmp_Tmpls-group { + description "mpls Traps"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // ldp trap + container ldp-items { + + uses snmp_Ldp-group; + description "Enable LDP notifications"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // vpn trap + container vpn-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses snmp_Vpn-group; + description "Enable VPN notifications"; } } - grouping ospf_AuthP-group { - - // Authentication type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ospf_AuthT; - } + grouping snmp_Ldp-group { + description "Enable LDP notifications"; - // Authentication key id - // Type is an MO-Defined-Type - leaf keyId { - config "false"; - description "Key ID"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_AuthKeyId; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Authentication key - // Type is an MO-Defined-Type - leaf key { + leaf isToggleAction { config "false"; - description "Key"; - - // Type is an MO-Defined-Type - type ospf_AuthKey; + type uint16; + description "whether it is default config"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // ldp session-down trap + container ldpsessiondown-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses snmp_LdpSessiondown-group; + description "MPLS LDP Session Down Notification"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // ldp session-up trap + container ldpsessionup-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses snmp_LdpSessionup-group; + description "MPLS LDP Session Up Notification"; } } - grouping ospf_IfStats-group { - - // If events count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf evCnt { + grouping snmp_LdpSessiondown-group { + description "MPLS LDP Session Down Notification"; + leaf toggleState { config "false"; - description "If Events Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // LSA count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf lsaCnt { + leaf toggleStateCount { config "false"; - description "LSA Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Neighbor count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf peerCnt { - config "false"; - description "Peer Count"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Flood to neighbor count - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf floodToPeerCnt { + leaf isToggleAction { config "false"; - description "Flood To Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Number of adjacency - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf adjCnt { + grouping snmp_LdpSessionup-group { + description "MPLS LDP Session Up Notification"; + leaf toggleState { config "false"; - description "Adjacency Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Number of peers in hitless helper mode - // Inherited From ospf:AIfStats - // Type is an MO-Defined-Type - leaf grHelperPeerCnt { + leaf toggleStateCount { config "false"; - description "GR Helper Peer Count"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - } - - grouping ospf_MultiArea-group { - // Multi Area id - // Inherited From ospf:AMultiArea - // Type is an MO-Defined-Type - leaf multiareaid { - description "Multi Area ID"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_AreaId; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { + config "false"; + type uint16; + description "whether it is default config"; } } - grouping ospf_TrafficStats-group { + grouping snmp_Vpn-group { + description "Enable VPN notifications"; - // Total packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf totalPktsRcvd { - config "false"; - description "Total Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Hello packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf helloPktsRcvd { + leaf isToggleAction { config "false"; - description "Hello Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } - // Database description packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dbdPktsRcvd { - config "false"; - description "DBD Packets Received"; + // vpn vrf-down trap + container vpnvrfdown-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnVrfdown-group; + description "MPLS VPN VRF Down Notification"; } - // Link-state request packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsReqPktsRcvd { - config "false"; - description "LSREQ Packets Received"; + // Vpn vrf-up trap + container vpnvrfup-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnVrfup-group; + description "MPLS VPN VRF Up Notification"; } - // Link-state update packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsUpdPktsRcvd { - config "false"; - description "LSU Packets Received"; + // vpn max-thresh-cleared trap + container vpnmaxthreshcleared-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMaxThreshcleared-group; + description "MPLS VPN max thresh cleared notification"; } - // Link-state ack packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsAckPktsRcvd { - config "false"; - description "LSACK Packets Received"; + // vpn max-thresh-exceeded trap + container vpnmaxthreshexceeded-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMaxThreshexceeded-group; + description "MPLS VPN max thresh exceeded notification"; } - // Received packets dropped - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf rcvdPktsDropped { - config "false"; - description "Received Packets Dropped"; + // vpn mid-thresh-exceeded trap + container vpnmidthreshexceeded-items { - // Type is an MO-Defined-Type - type ospf_Counter32; + uses snmp_VpnMidThreshexceeded-group; + description "MPLS VPN mid thresh exceeded notification"; } + } - // Error packets rcvd - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errPktsRcvd { + grouping snmp_VpnVrfdown-group { + description "MPLS VPN VRF Down Notification"; + leaf toggleState { config "false"; - description "Error Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Error hello packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errHelloPktsRcvd { + leaf toggleStateCount { config "false"; - description "Error Hello Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Error database description packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errDbdPktsRcvd { - config "false"; - description "Error DBD Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Error link-state request packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsReqPktsRcvd { + leaf isToggleAction { config "false"; - description "Error LSREQ Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Error link-state update packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsUpdPktsRcvd { + grouping snmp_VpnVrfup-group { + description "MPLS VPN VRF Up Notification"; + leaf toggleState { config "false"; - description "Error LSU Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "1 for enable / 2 for disable"; } - - // Error link-state ack packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errLsAckPktsRcvd { + leaf toggleStateCount { config "false"; - description "Error LSACK Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "Incremental counter for triggering BI"; } - // Unknown packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf unknownPktsRcvd { - config "false"; - description "Unknown Packets Received"; + leaf trapstatus { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; } - - // Duplicate routerid packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dupRtrIdPktsRcvd { + leaf isToggleAction { config "false"; - description "Duplicate RouterId Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Duplicate source addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dupSrcAddrPktsRcvd { - config "false"; - description "Duplicate Source Addr Packets Received"; + grouping snmp_VpnMaxThreshcleared-group { + description "MPLS VPN max thresh cleared notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Wrong area packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf wrongAreaPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Wrong Area Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Invalid source addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf invalidSrcAddrPktsRcvd { - config "false"; - description "Invalid Source Addr Packets Received"; + grouping snmp_VpnMaxThreshexceeded-group { + description "MPLS VPN max thresh exceeded notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Invalid destination addr packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf invalidDestAddrPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Invalid Destination Addr Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Bad CRC packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badCRCPktsRcvd { - config "false"; - description "Bad CRC Packets Received"; + grouping snmp_VpnMidThreshexceeded-group { + description "MPLS VPN mid thresh exceeded notification"; - // Type is an MO-Defined-Type - type ospf_Counter32; - } + leaf trapstatus { - // Bad version packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badVersionPktsRcvd { + type snmp_SnmpTrapSt; + description "Status to show enabled/disable trap"; + } + leaf isToggleAction { config "false"; - description "Bad Version Packets Received"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint16; + description "whether it is default config"; } + } - // Bad reserved fields packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badResvFieldPktsRcvd { + grouping snmp_RemoteUser-group { + description "Snmp remote user notification target"; + + leaf hashedauthpwd { config "false"; - description "Bad Reserved Field Packets Received"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Hashed Auth Password"; } - // Changed neighbor routerId or ip address packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf peerRtrIdChgdPktsRcvd { + leaf encrptprivpwd { config "false"; - description "Peer RouterId Changed Packets Received"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Encrypted Priv Password"; } - // Non hello received packets for which neighbor is not found - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf peerNotFoundPktsRcvd { - config "false"; - description "Peer Not Found Packets Received"; + // User name + leaf userName { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_userNameT; + description "snmp-server user name"; } - // Authentication failed packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badAuthPktsRcvd { - config "false"; - description "Bad Authentication Packets Received"; + leaf authpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Auth Password"; } - // Bad length packets received - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf badLenPktsRcvd { - config "false"; - description "Bad Length Packets Received"; + leaf authtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthTypeT; + description "Auth Protocol Type"; } - // Packets received on passive interface - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf passiveIntfPktsRcvd { - config "false"; - description "Passive Interface Packets Received"; + leaf privpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivPasswd; + description "Priv Password"; } - // Packets received on OSPF not enabled interface - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf noOspfIntfPktsRcvd { - config "false"; - description "No OSPF Interface Packets Received"; + leaf privtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivTypeT; + description "Priv Protocol Type"; + } + leaf islocalizedkey { + type boolean; + description "whether localized key configured"; + } + leaf isenforcepriv { + type boolean; + description "whether enforce priv con"; } - // Received LSA packets ignored - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf rcvdLsaPktsIgnored { - config "false"; - description "Received LSA Packets Ignored"; + leaf usrengineId { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngId; + description "Configured Engine Id"; } - // Number of LSA packets dropped during SPF run - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedLsaPktsWhileSPF { - config "false"; - description "LSA Packets Dropped During SPF"; + leaf usrengineIdlen { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngIdLen; + description "Configured Engine Id len"; } + } - // Number of LSA packets dropped during graceful restart - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedLsaPktsWhileGR { - config "false"; - description "LSA Packets Dropped During GR"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + grouping snmp_LocalUser-group { + description "Snmp local user"; + leaf ipv4AclName { + type string; + description "IPv4 ACL name to filter SNMP requests"; + } + leaf ipv6AclName { + type string; + description "IPv6 ACL name to filter SNMP requests"; } - // Total packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf totalPktsSent { + leaf hashedauthpwd { config "false"; - description "Total Packets Sent"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Hashed Auth Password"; } - // Hello packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf helloPktsSent { + leaf encrptprivpwd { config "false"; - description "Hello Packets Sent"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Encrypted Priv Password"; } - // Database description packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf dbdPktsSent { - config "false"; - description "DBD Packets Sent"; + // User name + leaf userName { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_userNameT; + description "snmp-server user name"; } - // Link-state request packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsReqPktsSent { - config "false"; - description "LSREQ Packets Sent"; + leaf authpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthPasswd; + description "Auth Password"; } - // Link-state update packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsUpdPktsSent { - config "false"; - description "LSU Packets Sent"; + leaf authtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_AuthTypeT; + description "Auth Protocol Type"; } - // Link-state ack packets sent - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsAckPktsSent { - config "false"; - description "LSACK Packets Sent"; + leaf privpwd { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivPasswd; + description "Priv Password"; } - // Dropped send packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf droppedSendPkts { - config "false"; - description "Dropped Send Packets"; + leaf privtype { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_PrivTypeT; + description "Priv Protocol Type"; + } + leaf islocalizedkey { + type boolean; + description "whether localized key configured"; + } + leaf isenforcepriv { + type boolean; + description "whether enforce priv con"; } - // Error send packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf errSendPkts { - config "false"; - description "Error Send Packets"; + leaf usrengineId { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngId; + description "Configured Engine Id"; } - // Number of first transmission of LSU packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuFirstTxPkts { - config "false"; - description "LSU First Tx Packets"; + leaf usrengineIdlen { - // Type is an MO-Defined-Type - type ospf_Counter32; + type snmp_EngIdLen; + description "Configured Engine Id len"; } + container group-items { + list UserGroup-list { + key "groupName"; - // Number of retransmissions of LSU packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuRexmitPkts { - config "false"; - description "LSU Retransmission Packets"; + uses snmp_UserGroup-group; + description "Snmp user group configuration MO list"; + } + description "Snmp user group configuration MO"; + } + } - // Type is an MO-Defined-Type - type ospf_Counter32; + grouping snmp_UserGroup-group { + description "Snmp user group configuration MO"; + + // Group name + leaf groupName { + + type snmp_userNameT; + description "snmp-server user name"; } + } - // Number of LSU packets sent in response to LSREQ packets - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuForLsreqPkts { - config "false"; - description "LSU Packets For LSREQ Packets"; + grouping snmp_ServerShutdown-group { + description "SNMP server system shutdown"; - // Type is an MO-Defined-Type - type ospf_Counter32; + leaf sysShutdown { + + type snmp_Boolean; + default "no"; + description "SNMP server system shutdown control"; } + } - // Number of LSU packets sent to a neighbor specifically - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf lsuPeerTxPkts { + grouping syslog_Acct-group { + description "Syslog Accounting"; + leaf timerTick { config "false"; - description "LSU Packets To Peer"; - - // Type is an MO-Defined-Type - type ospf_Counter32; + type uint32; } - // Number of times flooding packets dropped due to IP queue throttling - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf floodPktSendIpThrottle { + leaf name { config "false"; - description "Flood Packet Send IP Throttle"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Number of times flooding packets dropped due to token throttling - // Inherited From ospf:ATrafficStats - // Type is an MO-Defined-Type - leaf floodPktSendTokenThrottle { + // - Admin state + leaf adminSt { config "false"; - description "Flood Packet Send Token Throttle"; - // Type is an MO-Defined-Type - type ospf_Counter32; + type nw_AdminSt; + description "Admin State"; } - leaf lastStatsClearTs { + + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } } - grouping ospf_MaxLsaP-group { + grouping syslog_Syslog-group { + description "syslog root node"; - // Inherited From pol:Obj - // Modified by Override: ospf:AMaxLsaP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container timestamp-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses syslog_TimeStamp-group; + description "Syslog TimeStamp Format"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AMaxLsaP->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // MO for Rfc Strict support for syslog formats + container rfcstrict-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses syslog_RfcStrict-group; + description + "RFC Logging Format, with this option set to a supported syslog RFC number, + all syslogs from the device will follow configured RFC format"; } + container level-items { + list Level-list { + key "facility"; - // maximum number of non self-generated LSAs - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf maxLsa { - description "Maximum # of non self-generated LSAs"; - - // Type is an MO-Defined-Type - type ospf_MaxLsa; + uses syslog_Level-group; + description "Level list"; + } + description "Level"; } - // Threshold value (%) at which to generate a warning message - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf thresh { - description "Threshold"; + container monitor-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaThresh; + uses syslog_TermMonitor-group; + description "Terminal Monitor"; } - // Specifies the number of times the OSPF process can - // consecutively be placed into the sleep state. - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf sleepCnt { - description "Sleep Count"; + container console-items { - // Type is an MO-Defined-Type - type ospf_SleepCnt; + uses syslog_Console-group; + description "Console"; } - // Specifies the time (in minutes) to ignore all neighbors after - // the maximum limit of LSAs has been exceeded - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf sleepIntvl { - description "Sleep Interval"; + container originid-items { - // Type is an MO-Defined-Type - type ospf_SleepIntvl; + uses syslog_Originid-group; + description "Hostname,IP address,or string to append to syslog msgs"; } - // Specifies the time, in minutes, after which the - // sleep count is reset to zero. - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf resetIntvl { - description "Reset Interval"; + // dns-refresh-interval + container dnsinterval-items { - // Type is an MO-Defined-Type - type ospf_ResetIntvl; + uses syslog_DnsInterval-group; + description "Specifies the server dns-refresh-interval"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // logging rate-limit + container loggingratelimit-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaAct; + uses syslog_LoggingRateLimit-group; + description "Specifies the Logging Rate limit"; } + container rdst-items { + list RemoteDest-list { + key "host"; - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "OperSt"; + uses syslog_RemoteDest-group; + description "Syslog Remote Destination list"; + } + description "Syslog Remote Destination"; + } - // Type is an MO-Defined-Type - type ospf_MaxLsaOperSt; + container source-items { + + uses syslog_SourceInterface-group; + description "Source Interface"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + container file-items { - // Type is an MO-Defined-Type - type ospf_MaxLsaOperStQual; + uses syslog_File-group; + description "File"; } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf nonSelfLsaCnt { - config "false"; - description "Current # of non self-generated LSAs"; + container inst-items { - // Type is an MO-Defined-Type - type ospf_NonSelfLsaCnt; + uses syslog_Inst-group; + description "Logging Instances"; } + } - // Inherited From ospf:AMaxLsaP - // Type is an MO-Defined-Type - leaf currSleepCnt { - config "false"; - description "Current # of non self-generated LSAs"; + grouping syslog_TimeStamp-group { + description "Syslog TimeStamp Format"; - // Type is an MO-Defined-Type - type ospf_CurrSleepCnt; + leaf format { + + type syslog_TimeStampFormat; + description "Format"; } } - grouping ospf_MaxMetricLsaP-group { + grouping syslog_RfcStrict-group { + description + "RFC Logging Format, with this option set to a supported syslog RFC number, + all syslogs from the device will follow configured RFC format"; - // Max metric controls - specifies when to send max - // metric LSAs and for which routes/links - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf ctrl { - description "Maximum Metric Controls"; + // Syslogs will be complaint to the RFC number specifie for this below property + leaf format { - // Type is an MO-Defined-Type - type ospf_MaxMetricControl; + type syslog_RfcStrictFormat; + description "Rfc number to which syslogs are compliant"; } + } - // Max metric value to be used for external LSAs - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf maxMetricExtLsa { - description "Maximum metric value for external LSAs"; + grouping syslog_Level-group { + description "Level"; - // Type is an MO-Defined-Type - type ospf_MaxMetric; + leaf facility { + + type syslog_Facility; + description "Facility Name"; } - // Max metric value to be used for summary LSAs - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf maxMetricSummLsa { - description "Maximum metric value for summary LSAs"; + // Default value handled in local MO type + leaf severity { - // Type is an MO-Defined-Type - type ospf_MaxMetric; + // Type is a Local-MO-Defined-Type + type syslog_Severity_Level_severity; + description "Severity"; } + } - // Time (in secs) for which max metric should be advertised - // at startup - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf startupIntvl { - description "Startup interval"; + grouping syslog_TermMonitor-group { + description "Terminal Monitor"; - // Type is an MO-Defined-Type - type ospf_StartupIntvl; + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // At startup, advertise max metric until convergence of BGP ASN - // Inherited From ospf:AMaxMetricLsaP - // Type is an MO-Defined-Type - leaf awaitConvBgpAsn { - description "BGP ASN to wait for"; + leaf severity { - // Type is an MO-Defined-Type - type rtleak_Asn; + type syslog_Severity; + description "Severity"; } } - grouping ospf_InterLeakP-group { + grouping syslog_Originid-group { + description "Hostname,IP address,or string to append to syslog msgs"; - // Inherited From pol:Obj - // Modified by Override: ospf:AInterLeakP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf idtype { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type syslog_OriginIdType; + description "OriginId type for Hostname, IP or String"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:AInterLeakP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf idvalue { - // Type is an MO-Defined-Type - type naming_Descr; + type syslog_OriginIdValue; + description "OriginId value for Hostname, IP or String"; } + } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Modified by Override: rtleak:InterLeakP->scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtleak_Scope; - } - leaf rtMap { - type string { + grouping syslog_DnsInterval-group { + description "Specifies the server dns-refresh-interval"; + leaf dnsRefreshInterval { + type uint32 { + range "10..1440"; } + default "60"; + description "DNS refresh interval for remote syslog server hostnames"; } + } - // Protocol from where the routes are leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf proto { - description "Protocol"; + grouping syslog_LoggingRateLimit-group { + description "Specifies the Logging Rate limit"; - // Type is an MO-Defined-Type - type rtleak_Proto; + leaf ratelimit { + + type callhome_Boolean; + default "enabled"; + description "rate-limit of syslog messages"; } + } - // Routing protocol instance, the routing instance of the - // protocol from where the routes are being leaked - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf inst { - description "Instance"; + grouping syslog_SourceInterface-group { + description "Source Interface"; - // Type is an MO-Defined-Type - type rtleak_Inst; + leaf adminState { + + type mon_AdminState; + description "TBD"; } - // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number - // Inherited From rtleak:InterLeakP - // Type is an MO-Defined-Type - leaf asn { - description "Autonomous System Number"; + leaf ifName { - // Type is an MO-Defined-Type - type rtleak_Asn { - } + type nw_IfId; + description "Interface"; } - // DefRtLeak always advertise - // Inherited From ospf:AInterLeakP - // Type is an MO-Defined-Type - leaf always { - description "Always advertise default leak"; + leaf operState { + config "false"; - // Type is an MO-Defined-Type - type ospf_Always; + type syslog_OperState; + description "TBD"; } } - grouping ospf_LeakCtrlP-group { + grouping syslog_Inst-group { + description "Logging Instances"; - // Inherited From pol:Obj - // Modified by Override: ospf:ALeakCtrlP->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf modAdminState { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type mon_AdminState; + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ALeakCtrlP->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf modSeverity { - // Type is an MO-Defined-Type - type naming_Descr; + type syslog_Severity; + description "Severity level"; } + } - // Controls on what to do when the number of routes cross - // the maximum route/prefix limit - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping mts_Mts-group { + description "MTS stats"; - // Type is an MO-Defined-Type - type rtleak_Ctrl; + container topsaps-items { + + uses mts_TopSaps-group; + description "Top saps based on their usuage"; } - // Maximum limit on routes leaked - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf max { - description "Maximum Limit"; + container qfullsaps-items { - // Type is an MO-Defined-Type - type rtleak_MaxPfx; + uses mts_QfullSaps-group; + description "MTS Q full saps based on their queue limit"; } + } - // Threshold at which warning is issued when number of - // routes crosses the threshold - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf thresh { - description "Threshold"; - - // Type is an MO-Defined-Type - type rtleak_Thresh; - } - - // Maximum number of retries to retrieve the leaked routes, - // this is applicable only when the routes are withdrawn - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; - - // Type is an MO-Defined-Type - type rtleak_Retries; + grouping mts_TopSaps-group { + description "Top saps based on their usuage"; + leaf memUsed { + config "false"; + type uint32; + description "% of memory used by all apps"; } + container tsap-items { + list TSap-list { + config "false"; + key "index"; - // Duration between the retries - // Inherited From rtleak:LeakCtrlP - // Type is an MO-Defined-Type - leaf duration { - description "Duration"; - - // Type is an MO-Defined-Type - type rtleak_Duration; + uses mts_TSap-group; + description "Top saps list"; + } + description "Top saps"; } } - grouping ospf_RibLeakP-group { - leaf rtMap { - type string { - } + grouping mts_TSap-group { + description "Top saps"; + leaf sapId { + config "false"; + type uint32; + description "sap num"; } - - // If always is set to false, only routes that are permitted - // by the route map(rtMap) configuration are downloaded to the - // routing information base (RIB). - // Inherited From rtleak:RibLeakP - // Type is an MO-Defined-Type - leaf always { - description "Filter routes into RIB"; - - // Type is an MO-Defined-Type - type rtleak_Always; + leaf desc { + config "false"; + type string; + description "sap description"; } - } - - grouping ospf_ExtRtSum-group { - - // Inherited From pol:Obj - // Modified by Override: ospf:ARtSum->name - // Type is an MO-Defined-Type - leaf name { + leaf process { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type string; + description "Process owns sap"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: ospf:ARtSum->descr - // Type is an MO-Defined-Type - leaf descr { + leaf timestamp { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; + description "Exact time at which this condition happened"; } - leaf addr { - type address_Ip; + leaf msgCount { + config "false"; + type uint32; + description "Num of messages consumed by the sap"; } - - // Summary address no Advertise - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type ospf_SumControl; + leaf bytesCount { + config "false"; + type uint32; + description "Num of bytes consumed by the sap"; } - - // Number of component routes - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf compRtCnt { + leaf memUsedInTotalMem { config "false"; - description "Number of component routes"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "% of memory used from the global mts memory"; } - - // Route summary cost - // Inherited From ospf:ARtSum - // Type is an MO-Defined-Type - leaf operCost { + leaf memUsedInSapShare { config "false"; - description "Route Summary Operational Cost"; - - // Type is an MO-Defined-Type - type ospf_SumCost; + type uint32; + description "% of memory used from the memory limit assigned to sap"; } - - // Summary address tag - // Inherited From ospf:AExtRtSum - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; - - // Type is an MO-Defined-Type - type ospf_RtTag; + leaf index { + config "false"; + type uint32; + description "Index of the sap"; + } + leaf nodeId { + config "false"; + type uint32; + description "Node id of the sap"; } } - grouping ospf_EventLogs-group { - - // Event LogType - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + grouping mts_QfullSaps-group { + description "MTS Q full saps based on their queue limit"; + container qsap-items { + list QSap-list { + config "false"; + key "sapId"; - // Type is an MO-Defined-Type - type ospf_EventType; + uses mts_QSap-group; + description "Top saps list"; + } + description "Top saps"; } + } - // Event LogSize - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; - - // Type is an MO-Defined-Type - type ospf_EventLogSize; + grouping mts_QSap-group { + description "Top saps"; + leaf qstate { + config "false"; + type string; + description "Queue state of the sap"; } - - // Event Log size in bytes - // Inherited From ospf:AEventLogs - // Type is an MO-Defined-Type - leaf logSizeKBytes { - description "Event Log Size in KBytes"; - - // Type is an MO-Defined-Type - type ospf_EventLogSizeKBytes; + leaf sapId { + config "false"; + type uint32; + description "sap num"; + } + leaf desc { + config "false"; + type string; + description "sap description"; + } + leaf process { + config "false"; + type string; + description "Process owns sap"; + } + leaf timestamp { + config "false"; + type string; + description "Exact time at which this condition happened"; + } + leaf msgCount { + config "false"; + type uint32; + description "Num of messages consumed by the sap"; + } + leaf bytesCount { + config "false"; + type uint32; + description "Num of bytes consumed by the sap"; + } + leaf memUsedInTotalMem { + config "false"; + type uint32; + description "% of memory used from the global mts memory"; + } + leaf memUsedInSapShare { + config "false"; + type uint32; + description "% of memory used from the memory limit assigned to sap"; + } + leaf index { + config "false"; + type uint32; + description "Index of the sap"; + } + leaf nodeId { + config "false"; + type uint32; + description "Node id of the sap"; } } - grouping rtctrl_L2Evpn-group { + grouping nat_Entity-group { + description "NAT entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This object holds Bridge Domain - // Ethernet VPN instance information - container bdevi-items { - list BDEvi-list { - key "encap"; + container inst-items { - // Added containment: Prefix=bdevi - // Acquired From Package rtctrl - uses rtctrl_BDEvi-group; - } + uses nat_Inst-group; + description "NAT instance"; } } - grouping rtctrl_BDEvi-group { + grouping nat_Inst-group { + description "NAT instance"; - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; + // Holds TCP Time-Out values + leaf tcpTimeout { - // Type is an MO-Defined-Type - type bgp_AdminSt; - } - leaf operRd { - config "false"; - type mtx_array_community; + type nat_NatTimeout; + description "NAT tcp timeout values "; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Holds UDP Time-Out values + leaf udpTimeout { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nat_NatTimeout; + description "NAT udp timeout value"; } - leaf rd { - type mtx_array_community; + + // Holds ICMP Time-out values + leaf icmpTimeout { + + type nat_NatTimeout; + description "NAT icmp timeout value"; } - leaf encap { - type string; + + // Holds DYN Time-out value + leaf timeout { + + type nat_NatTimeout; + description "NAT timeout value"; } - // Route policy holds all route policy entries and route controls - container rttp-items { - list RttP-list { - key "type"; + // Holds Sampling Timeout value + leaf samplingTimeout { - // Added containment: Prefix=rttp - // Acquired From Package rtctrl - uses rtctrl_RttP-group; - } + type nat_SamplingTimeout; + description "Sampling Timeout value"; } - } - grouping rtctrl_RttP-group { + // Holds FINRST Timeout value + leaf finRstTimeout { - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; + type nat_FinSynTimeout; + description "FIN or RST wait timeout"; + } - // Type is an MO-Defined-Type - type bgp_AdminSt; + // Holds SYN Timeout value + leaf synTimeout { + + type nat_FinSynTimeout; + description "SYN wait timeout value"; } - leaf operRttAuto { + + leaf configError { config "false"; - type mtx_array_community; + + type nat_ConfigErrNat; + default "noerror"; + description "Config error for FIN/RST SYN timers"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type arp_LoggingLevel; + default "warning"; + description "Logging level information for NAT"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf creationDelay { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_BatchTimeout; + description "Creation delay timeout for NAT"; } - // Type - // Inherited From rtctrl:ARtP - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf maxTranslation { - // Type is an MO-Defined-Type - type rtctrl_RttPType; + type nat_NatMaxTranslation; + description "NAT max translations"; } - // List of route policy entries - container ent-items { - list RttEntry-list { - key "rtt"; + leaf allHost { - // Added containment: Prefix=ent - // Acquired From Package rtctrl - uses rtctrl_RttEntry-group; - } + type nat_NatMaxTranslationAllHost; + description "NAT max translations all host"; } - // Route control map policy for routes imported/exported - // into an AF. Control is through route maps. - container rtctrlmap-items { + leaf name { - // Added containment as a singleton: Prefix=rtctrlmap - // Acquired From Package rtctrl - uses rtctrl_MapP-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Route control map policy for routes imported/exported - // into an AF in the default VRF. Control is through route maps. - container rtctrldefmap-items { + // Holds NAT global statistics information + // Ephemeral data + container globalstats-items { - // Added containment as a singleton: Prefix=rtctrldefmap - // Acquired From Package rtctrl - uses rtctrl_DomDefMapP-group; + uses nat_GlobalStats-group; + description "NAT global statistics info"; } - } + container dom-items { + list Dom-list { + key "name"; - grouping rtctrl_RttEntry-group { - leaf rtt { - type mtx_array_community; + uses nat_Dom-group; + description "This Object Holds Per Domain (vrf) Information list"; + } + description "This Object Holds Per Domain (vrf) Information"; } + container pool-items { + list Pool-list { + key "poolname"; - // Config source set by controller - // Type is an MO-Defined-Type - leaf cfgSrcCtrlr { - description "Config Source set by controller"; - - // Type is an MO-Defined-Type - type bgp_AdminSt; + uses nat_Pool-group; + description "Pool instance to define pool-addresses list"; + } + description "Pool instance to define pool-addresses"; } } - // Has Polymorphic containment of abstract object aaa:Ep - // Has Polymorphic containment of abstract object aaa:Banner - grouping aaa_UserEp-group { + grouping nat_GlobalStats-group { + description "NAT global statistics info"; - // Type is an MO-Defined-Type - leaf pwdStrengthCheck { - description "Password Strength Check"; + // Holds max permitted and presently active NAT tranlslation infromation + // Ephemeral data + container nattransstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses nat_NatTransStats-group; + description "Max and present active translation stats"; } - // Type is an MO-Defined-Type - leaf pwdSecureMode { - description "Password secure-mode"; + // Ephemeral data + container nattransexpiredstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; - } - leaf pwdMinLength { - type uint16; - default "8"; - } - leaf pwdMaxLength { - type uint16; - default "127"; + uses nat_NatTransExpiredStats-group; + description "Nat translation expired statistics"; } - // Type is an MO-Defined-Type - leaf svcPwdRecovery { - description "Service Password Recovery"; + // Ephemeral data + container natpacketstats-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses nat_NatPacketStats-group; + description "Packets statistics hits/misses,software translation/drops"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // TCP session statistics + // Ephemeral data + container nattcpstats-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses nat_NatTcpStats-group; + description " Total TCP session statistics"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // NAT packet drops statistics + // Ephemeral data + container natpktdrops-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_NatPktDrops-group; + description "Dynamic nat Address pool usage statistics"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // NAT address pool statistics + // Ephemeral data + container acl-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + // Ephemeral data + list NatAclPooldb-list { + config "false"; + key "aclName"; + + uses nat_NatAclPooldb-group; + description "Dynamic nat address pool usage statistics list"; } + description "Dynamic nat address pool usage statistics"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // NAT interface statistics + // Ephemeral data + container natifstats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_NatIfStats-group; + description " NAT Inside/outside interfaces stats"; } + } - // Polymorphic containment of derivative object aaa:RadiusEp (from aaa:Ep) - container radiusext-items { + grouping nat_NatTransStats-group { + description "Max and present active translation stats"; - // Added containment as a singleton: Prefix=radiusext - // Acquired From Package aaa - uses aaa_RadiusEp-group; + // Ephemeral data + leaf maxDynTransAllowed { + config "false"; + type uint64; + description "Maximum number of dynamic translation allowed"; } - // Polymorphic containment of derivative object aaa:LdapEp (from aaa:Ep) - container ldapext-items { - - // Added containment as a singleton: Prefix=ldapext - // Acquired From Package aaa - uses aaa_LdapEp-group; + // Ephemeral data + leaf maxPerHostTransAllowed { + config "false"; + type uint64; + description "Maximum number of translation allowed per host IP"; } - // Polymorphic containment of derivative object aaa:TacacsPlusEp (from aaa:Ep) - container tacacsext-items { - - // Added containment as a singleton: Prefix=tacacsext - // Acquired From Package aaa - uses aaa_TacacsPlusEp-group; + // Ephemeral data + leaf noOfActiveStatic { + config "false"; + type uint64; + description "Present number of active static translation"; } - container authrealm-items { + // Ephemeral data + leaf noOfActiveDyanamic { + config "false"; + type uint64; + description "Present number of active dyanamic translation"; + } - // Added containment as a singleton: Prefix=authrealm - // Acquired From Package aaa - uses aaa_AuthRealm-group; + // Ephemeral data + leaf noOfActiveICMP { + config "false"; + type uint64; + description "Present number of active ICMP translation"; } + } - // This MO represents an AAA (accounting/authorization/accounting) - // domain. The AAA configuration can be configured per domain. - container logindomain-items { - list LoginDomain-list { - key "name"; + grouping nat_NatTransExpiredStats-group { + description "Nat translation expired statistics"; - // Added containment: Prefix=logindomain - // Acquired From Package aaa - uses aaa_LoginDomain-group; - } + // Ephemeral data + leaf totalNoOfExpiredTranslations { + config "false"; + type uint64; + description "Total number of expired translations"; } - // Banner presented to the user prior to the console, serial and ssh login prompts - container preloginbanner-items { + // Ephemeral data + leaf noOfSynTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to SYN timer expiry"; + } - // Added containment as a singleton: Prefix=preloginbanner - // Acquired From Package aaa - uses aaa_PreLoginBanner-group; + // Ephemeral data + leaf noOfFinRstTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to FIN-RST timer expiry"; } - container remoteuser-items { - list RemoteUser-list { - config "false"; - key "name"; - // Added containment: Prefix=remoteuser - // Acquired From Package aaa - uses aaa_RemoteUser-group; - } + // Ephemeral data + leaf noOfInactiveTimerExpired { + config "false"; + type uint64; + description "No of translations exired due to inactive timer expiry"; } - container user-items { - list User-list { - key "name"; + } - // Added containment: Prefix=user - // Acquired From Package aaa - uses aaa_User-group; - } + grouping nat_NatPacketStats-group { + description "Packets statistics hits/misses,software translation/drops"; + + // Ephemeral data + leaf totalHits { + config "false"; + type uint64; + description "Total number packet hit count"; } - container role-items { - list Role-list { - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_Role-group; - } + // Ephemeral data + leaf hitInToOut { + config "false"; + type uint64; + description "Total number packet hit count in to out flow"; } - container factoryrole-items { - list FactoryRole-list { - key "name"; - // Added containment: Prefix=factoryrole - // Acquired From Package aaa - uses aaa_FactoryRole-group; - } + // Ephemeral data + leaf hitOutToIn { + config "false"; + type uint64; + description "Total number packet hit count out to In flow"; } - container domain-items { - list Domain-list { - key "name"; - // Added containment: Prefix=domain - // Acquired From Package aaa - uses aaa_Domain-group; - } + // Ephemeral data + leaf totalMisses { + config "false"; + type uint64; + description "Total number packet miss count"; } - // This MO stores information about password constratints - // applicable to all the local users. - container pwdprofile-items { + // Ephemeral data + leaf missInToOut { + config "false"; + type uint64; + description "Total number packet miss count in to out flow"; + } - // Added containment as a singleton: Prefix=pwdprofile - // Acquired From Package aaa - uses aaa_PwdProfile-group; + // Ephemeral data + leaf missOutToIn { + config "false"; + type uint64; + description "Total number packet miss count out to in flow"; } - // PKI config: keyrings and CA certs - container pkiext-items { + // Ephemeral data + leaf totalSwTranslation { + config "false"; + type uint64; + description "Total number packet software translation"; + } - // Added containment as a singleton: Prefix=pkiext - // Acquired From Package pki - uses pki_Ep-group; + // Ephemeral data + leaf swTranslationInToOut { + config "false"; + type uint64; + description "Total number packet software translation in to out flow"; } - // Rel-def target from resUserEp - // Inherited From aaa:UserEp - container rtfabricResUserEp-items { + // Ephemeral data + leaf swTranslationOutToIn { + config "false"; + type uint64; + description "Total number packet software translation out to in flow"; + } + } - // Abstract containment of rtfabricResUserEp derived from aaa:UserEp - list RtFabricResUserEp-list { - config "false"; - key "tDn"; + grouping nat_NatTcpStats-group { + description " Total TCP session statistics"; - // Added containment: Prefix=rtfabricResUserEp - // Acquired From Package fabric - uses fabric_RtFabricResUserEp_target-group; - } + // Ephemeral data + leaf tcpEstablished { + config "false"; + type uint64; + description "Total TCP session established"; } - // Rel-def target from userEp - // Inherited From aaa:UserEp - container rtaaaUserEp-items { + // Ephemeral data + leaf tcpClosed { + config "false"; + type uint64; + description "Total TCP session closed"; + } + } - // Abstract containment of rtaaaUserEp derived from aaa:UserEp - list RtAaaUserEp-list { - config "false"; - key "tDn"; + grouping nat_NatPktDrops-group { + description "Dynamic nat Address pool usage statistics"; - // Added containment: Prefix=rtaaaUserEp - // Acquired From Package aaa - uses aaa_RtAaaUserEp_target-group; - } + // Ephemeral data + leaf addrAllocDrops { + config "false"; + type uint64; + description "Address allocation failure drops"; } - } - grouping aaa_RadiusEp-group { + // Ephemeral data + leaf portAllocDrops { + config "false"; + type uint64; + description "Port allocation failure drops"; + } - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + // Ephemeral data + leaf maxLimitDrops { + config "false"; + type uint64; + description "Dynamic translation max limit drops"; + } - // Type is an MO-Defined-Type - type aaa_TimeMin; + // Ephemeral data + leaf icmpMaxLimitDrops { + config "false"; + type uint64; + description "ICMP Translation max limit drops"; } - // Type is an MO-Defined-Type - leaf key { - description "Global RADIUS server shared secret"; + // Ephemeral data + leaf allowedHostLimitDrops { + config "false"; + type uint64; + description "Allowed host per max limit drops"; + } - // Type is an MO-Defined-Type - type aaa_EncKey; + // Ephemeral data + leaf totalSwDrops { + config "false"; + type uint64; + description "Total number packet software drops"; } - // Type is an MO-Defined-Type - leaf keyEnc { - description "Default key encryption"; + // Ephemeral data + leaf swDropInToOut { + config "false"; + type uint64; + description "Total number packet software drops in to out flow"; + } - // Type is an MO-Defined-Type - type aaa_KeyEnc; + // Ephemeral data + leaf swDropOutToIn { + config "false"; + type uint64; + description "Total number packet software drops out to in flow"; } + } - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Radius Logging level"; + grouping nat_NatAclPooldb-group { + description "Dynamic nat address pool usage statistics"; - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + // nat acl name + // Ephemeral data + leaf aclName { + config "false"; + + type nat_stringtype; + description "Nat ACL name"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // nat oveload + leaf overload { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nat_stringtype; + description "Overload ip address,PAT"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // nat pool name + // Ephemeral data + leaf poolName { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nat_stringtype; + description "Nat pool name"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Nat rule type inside/outside + // Ephemeral data + leaf ruleType { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_stringtype; + description "Inside/outside rule"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + leaf noOfAddrInPool { + config "false"; + type uint64; + description "Total number of Addresses in pool"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf noOfAllocated { + config "false"; + type uint64; + description "Pool address allocated in percentage"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Ephemeral data + leaf noOfMissed { + config "false"; + type uint64; + description "Pool address missed in percentage"; + } - // Type is an MO-Defined-Type - type aaa_TimeSec; + // Ephemeral data + leaf ifOverloadName { + config "false"; + + type nat_stringtype; + description "Interface overloaded"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Ephemeral data + leaf ifOverloadAddr { + config "false"; + type address_Ip; + description "Overloaded interface IP address"; + } - // Type is an MO-Defined-Type - type aaa_Retries; + // Ephemeral data + leaf ifOverloadState { + config "false"; + + type nat_stringtype; + description "Interface status"; } + } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + grouping nat_NatIfStats-group { + description " NAT Inside/outside interfaces stats"; - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf noOfInsideInterface { + config "false"; + type uint64; + description "Number of nat inside interface"; } - container radiusprovider-items { - list RadiusProvider-list { - key "name"; - // Added containment: Prefix=radiusprovider - // Acquired From Package aaa - uses aaa_RadiusProvider-group; - } + // Ephemeral data + leaf noOfOutsideInterface { + config "false"; + type uint64; + description "Number of nat outside interface"; } + } - // This MO represents a group of AAA RADIUS servers. - // A member of this group is represented by ProviderRef MO - container radiusprovidergroup-items { - list RadiusProviderGroup-list { - key "name"; + grouping nat_Dom-group { + description "This Object Holds Per Domain (vrf) Information"; + leaf encap { + config "false"; + type string; + description "Encapsulation"; + } - // Added containment: Prefix=radiusprovidergroup - // Acquired From Package aaa - uses aaa_RadiusProviderGroup-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container radiusservermonitor-items { + // NAT Interface config MO + container if-items { + list If-list { + key "id"; - // Added containment as a singleton: Prefix=radiusservermonitor - // Acquired From Package aaa - uses aaa_RadiusServerMonitor-group; + uses nat_If-group; + description "NAT interface config inside/outside list"; + } + description "NAT interface config inside/outside"; } + container xlate-items { + list IpNat-list { + key "xlateType"; - // Rel-def target from resRadiusEp - // Inherited From aaa:RadiusEp - container rtfabricResRadiusEp-items { + uses nat_IpNat-group; + description "IP NAT instance for config list"; + } + description "IP NAT instance for config"; + } - // Abstract containment of rtfabricResRadiusEp derived from aaa:RadiusEp - list RtFabricResRadiusEp-list { + // ip nat alias MO + // Ephemeral data + container natalias-items { + + // Ephemeral data + list IpNatAlias-list { config "false"; - key "tDn"; + key "ipAddr"; - // Added containment: Prefix=rtfabricResRadiusEp - // Acquired From Package fabric - uses fabric_RtFabricResRadiusEp_target-group; + uses nat_IpNatAlias-group; + description "Ip nat alias information list"; } + description "Ip nat alias information"; } - } - grouping aaa_RadiusProvider-group { + // Holds NAT translation information + // Ephemeral data + container proto-items { - // Type is an MO-Defined-Type - leaf useType { - description "Usage for the radius server"; + // Ephemeral data + list TranslationDb-list { + config "false"; + key "protocol insideGlobalAddress insideGlobalPort insideLocalAddress insideLocalPort outsideLocalAddress outsideLocalPort outsideGlobalAddress outsideGlobalPort"; - // Type is an MO-Defined-Type - type aaa_RadSrvUseType; + uses nat_TranslationDb-group; + description "Nat Translation Database list"; + } + description "Nat Translation Database"; } + } - // Type is an MO-Defined-Type - leaf authPort { - description "authPort"; + grouping nat_If-group { + description "NAT interface config inside/outside"; - // Type is an MO-Defined-Type - type aaa_RadPort; + leaf natIf { + + type nat_NatTrafficDir; + description "NAT interface config inside/outside"; } - // Type is an MO-Defined-Type - leaf acctPort { - description "acctPort"; + leaf configErrIf { + config "false"; - // Type is an MO-Defined-Type - type aaa_RadPort; + type nat_ConfigErrNat; + default "noerror"; + description "Config error in nat interface. "; } - // Per provider configuration, - // if set to 0, it uses global settings value - // - // - // - // - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + grouping nat_IpNat-group { + description "IP NAT instance for config"; - // Type is an MO-Defined-Type - type naming_Descr; + // Properties Starts here + leaf xlateType { + + type nat_InterfaceType; + description "Xlate type to define translation"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // static mo starts here + container protocol-items { + list StaticNat-list { + key "protocol localIp localPort globalIp globalPort"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses nat_StaticNat-group; + description "Static NAT config mo list"; } + description "Static NAT config mo"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // dynamicnat mo starts here + container list-items { + list DynamicNat-list { + key "aclName"; - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_DynamicNat-group; + description "Dynamic NAT MO for config list"; + } + description "Dynamic NAT MO for config"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + grouping nat_StaticNat-group { + description "Static NAT config mo"; - // Type is an MO-Defined-Type - type aaa_EncKey; + leaf protocol { + + type nat_ProtocolType; + description "Specifies tcp/udp/any protocol"; } - leaf keySet { - config "false"; - type boolean; + leaf localIp { + type address_Ip; + description "Local ip address of a network"; + } + leaf globalIp { + type address_Ip; + description "Global ip address of a network"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + leaf localPort { - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_RadiusProvider_keyEnc; + type nat_port; + description "Port number for localip "; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + leaf globalPort { - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_RadiusProvider_timeout; + type nat_port; + description "Port number for global ip"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; + leaf noAlias { - // Type is a Local-MO-Defined-Type - type aaa_Retries_RadiusProvider_retries; + type nat_booltype; + description "no-alias flag disables addition of alias"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { + leaf configErrStaticNat { config "false"; - description "Provider Operational State"; - // Type is an MO-Defined-Type - type aaa_ProviderState; + type nat_ConfigErrNat; + default "noerror"; + description "Config error in static nat."; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + leaf groupId { - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + type nat_twicenatgroup; + description "Group id for Twice-Nat"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + leaf dynamic { - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + type nat_booltype; + description "Dynamic flag for Twice-Nat"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + leaf matchInVrf { - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; - } - leaf epgDn { - config "false"; - type string; + type nat_booltype; + description "Match in vrf, flag used in vrf-aware Nat"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "Vrf Name"; + leaf addRoute { - // Type is an MO-Defined-Type - type l3_VrfName; + type nat_booltype; + description "Adds route for translations"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider SNMP Index"; + grouping nat_DynamicNat-group { + description "Dynamic NAT MO for config"; - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; - } - } + leaf aclName { - grouping aaa_RadiusProviderGroup-group { + type nat_stringtype; + description "To define ACL allowing set of addresses Property has READ-Create access."; + } - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + leaf interface { - // Type is an MO-Defined-Type - type aaa_ProviderGroupDeadtime; + type nw_IfId; + description "Interface name for overload case"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf poolName { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nat_NatPoolname; + description "Defines set of address-range"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf overload { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_booltype; + description "Allows usage of same ip , with different port numbers"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf configErrDynamicNat { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_ConfigErrNat; + default "noerror"; + description "Config error in Dynamic nat"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf groupId { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_twicenatgroup; + description "Group id for Twice-Nat"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider Group SNMP Index"; + leaf dynamic { - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; + type nat_booltype; + description "Dynamic flag for Twice-Nat"; } - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + leaf matchInVrf { - // Type is an MO-Defined-Type - type nw_IfId; + type nat_booltype; + description "Match in vrf, flag used in vrf-aware Nat"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + leaf addRoute { - // Type is an MO-Defined-Type - type l3_VrfName; + type nat_booltype; + description "Adds route for translations"; } + } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + grouping nat_IpNatAlias-group { + description "Ip nat alias information"; - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + // Ephemeral data + leaf ipAddr { + config "false"; + type address_Ip; + description "Nat alias ip address"; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Nat alias interface name"; } } - grouping aaa_ProviderRef-group { + grouping nat_TranslationDb-group { + description "Nat Translation Database"; - // This property dicates the order in which the Provider - // referred by this MO will be tried within the ProviderGroup - // Type is an MO-Defined-Type - leaf order { - description "Order in which Providers are Tried"; + // Ephemeral data + leaf protocol { + config "false"; + type string; + description "Protocol , tcp/udp/any"; + } - // Type is an MO-Defined-Type - type aaa_Order; + // Ephemeral data + leaf insideGlobalAddress { + config "false"; + type address_Ip; + description "Inside global address"; } - // Type is an MO-Defined-Type - leaf snmpIndex { + // Ephemeral data + leaf insideGlobalPort { config "false"; - description "Provider SNMP Index"; + type uint32; + description "Inside global port"; + } - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + // Ephemeral data + leaf insideLocalAddress { + config "false"; + type address_Ip; + description "Inside local address"; } - // Inherited From pol:Obj - // Modified by Override: aaa:ProviderRef->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf insideLocalPort { + config "false"; + type uint32; + description "Inside local port"; + } - // Type is an MO-Defined-Type - type naming_Name256 { + // Ephemeral data + leaf outsideLocalAddress { + config "false"; + type address_Ip; + description "Outside local address"; + } - // Copied from "ProviderName" type - length "0..64"; - } + // Ephemeral data + leaf outsideLocalPort { + config "false"; + type uint32; + description "Outside local port"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Ephemeral data + leaf outsideGlobalAddress { + config "false"; + type address_Ip; + description "Outside global address"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf outsideGlobalPort { + config "false"; + type uint32; + description "Outside global port"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Ephemeral data + leaf groupId { + config "false"; + type uint32; + description "Group ID for Twice-Nat"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + // Ephemeral data + leaf entryId { + config "false"; + type uint32; + description "Entry ID to identify unique translation."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + leaf inStats { + config "false"; + type uint32; + description "In statistics count"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf outStats { + config "false"; + type uint32; + description "Out statistics count"; } - } - grouping aaa_RadiusServerMonitor-group { + // Ephemeral data + leaf timeLeft { + config "false"; - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + type nat_NatTimeLeft; + description "Inactive time left"; + } - // Type is an MO-Defined-Type - type aaa_Passwd; + // Ephemeral data + leaf synTimer { + config "false"; + + type nat_NatTimeLeft; + description "TCP syn timer left"; } - // Type is an MO-Defined-Type - leaf idleTime { - description "Idle timer to monitor tacacs/radius server"; + // Ephemeral data + leaf finTimer { + config "false"; - // Type is an MO-Defined-Type - type aaa_IdleTimer; + type nat_NatTimeLeft; + description "TCP fin timer left"; } + } - // Inherited From pol:Obj - // Modified by Override: aaa:RadiusServerMonitor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping nat_Pool-group { + description "Pool instance to define pool-addresses"; - // Type is an MO-Defined-Type - type naming_Name256 { + // Properties Starts here + leaf poolname { - // Copied from "aaa:User" type - length "0..64"; - } + type nat_NatPoolname; + description + "Defines set of address + "; + } + leaf mask { + type address_Ip; + description "NAT netmask for pool-range "; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf prefixlen { - // Type is an MO-Defined-Type - type naming_Descr; + type nat_NatPrefixType; + description "NAT prefix len for pool-range"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf noalias { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nat_booltype; + description "no-alias flag disables addition of alias"; } + container startip-items { + list PoolAddress-list { + key "startip endip"; - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + uses nat_PoolAddress-group; + description "NAT pool address instance list"; + } + description "NAT pool address instance"; } } - grouping aaa_LdapEp-group { - - // Type is an MO-Defined-Type - leaf attribute { - description "LDAP Attribute"; - - // Type is an MO-Defined-Type - type aaa_LdapAttribute; + grouping nat_PoolAddress-group { + description "NAT pool address instance"; + leaf startip { + type address_Ip; + description "NAT start ip address for pool-range"; + } + leaf endip { + type address_Ip; + description "NAT end ip address for pool-range"; } - // Type is an MO-Defined-Type - leaf basedn { - description "LDAP Base DN"; + leaf configErr { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapDn; + type nat_ConfigErrNat; + default "noerror"; + description "Config error pool address"; } - // Type is an MO-Defined-Type - leaf filter { - description "LDAP Filter"; + leaf poolAddrDeleted { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapFilter; + type nat_booltype; + description "Pool address deleted"; } + } + + grouping ospf_Entity-group { + description "Holds OSPF control plane entity information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per OSPF instance information + container inst-items { + list Inst-list { + key "name"; + + uses ospf_Inst-group; + description "This object holds per OSPF instance information list"; } + description "This object holds per OSPF instance information"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping ospf_Inst-group { + description "This object holds per OSPF instance information"; - // Type is an MO-Defined-Type - type naming_Descr; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9_][A-Za-z0-9_-]{0,19}"; + } + description "Name"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Modified by Override: aaa:LdapEp->timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type aaa_TimeSec; + type nw_AdminSt; + description "Admin State"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Instance controls + // Default value handled in local MO type + leaf ctrl { - // Type is an MO-Defined-Type - type aaa_Retries; + // Type is a Local-MO-Defined-Type + type nw_InstCtrl_Inst_ctrl; + description "Holds OSPF instance controls"; } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This MO represents a group of AAA LDAP servers. - // A member of this group is represented by ProviderRef MO - container ldapprovidergroup-items { - list LdapProviderGroup-list { - key "name"; + // Memory alert level + leaf memAlert { + config "false"; - // Added containment: Prefix=ldapprovidergroup - // Acquired From Package aaa - uses aaa_LdapProviderGroup-group; - } + type nw_MemAlertLevel; + description "Specifies the memory alert level"; } - container ldapprovider-items { - list LdapProvider-list { + + // This objects hold per OSPF domain (vrf) information + container dom-items { + list Dom-list { key "name"; - // Added containment: Prefix=ldapprovider - // Acquired From Package aaa - uses aaa_LdapProvider-group; + uses ospf_Dom-group; + description "This object holds per OSPF VRF information list"; } + description "This object holds per OSPF VRF information"; } - // Rel-def target from resLdapEp - // Inherited From aaa:LdapEp - container rtfabricResLdapEp-items { - - // Abstract containment of rtfabricResLdapEp derived from aaa:LdapEp - list RtFabricResLdapEp-list { - config "false"; - key "tDn"; + // This object holds the size of the Logfiles for + // various types of OSPF events + container evtlogs-items { + list EventLogs-list { + key "eventType"; - // Added containment: Prefix=rtfabricResLdapEp - // Acquired From Package fabric - uses fabric_RtFabricResLdapEp_target-group; + uses ospf_EventLogs-group; + description "Object holding the size of the Logfiles for various types of OSPF events list"; } + description "Object holding the size of the Logfiles for various types of OSPF events "; } } - grouping aaa_LdapProviderGroup-group { + grouping ospf_Dom-group { + description "This object holds per OSPF VRF information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Router id for this domain, if this is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that domain + leaf rtrId { - // Type is an MO-Defined-Type - type naming_Descr; + type ip_RtrId; + description "Router identifier for this domain"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Dom controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_DomControl; + description "Holds the controls bfd, name-lookup, default-passive and Segment Routing"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Holds the administrative state of domain"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider Group SNMP Index"; + // Administrative distance preference + leaf dist { - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; - } - - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_Dist; + description "Administrative distance preference"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // MAX ECMP + leaf maxEcmp { - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_Ecmp; + description "Maximum Equal Cost Multi Path(ECMP)"; } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + // Bandwidth Reference value. If bwRefUnit is mbps, then the + // range is 1 to 4000000 and if bwRefUnit is gbps, then the + // range is 1 to 4000 + leaf bwRef { - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + type ospf_BwRef; + description + "Bandwidth reference value, holds the range from 1-4000000 if unit is mbps + and holds range from 1-4000 if unit is gbps"; } - } - grouping aaa_LdapProvider-group { - - // Type is an MO-Defined-Type - leaf rootdn { - description "Root DN"; + // Bandwidth Reference Unit + leaf bwRefUnit { - // Type is an MO-Defined-Type - type aaa_LdapDn; + type ospf_BwRefUnit; + description "Bandwidth reference unit (Mbps or Gbps)"; } - // Type is an MO-Defined-Type - leaf port { - description "Port"; + // Default Metric for redistributed routes + leaf defMetric { - // Type is an MO-Defined-Type - type aaa_Port; + type ospf_Metric; + description "Default metric cost for redistributed routes"; } - leaf enableSSL { + leaf rfc1583Compat { type boolean; + description "RFC 1583 compatibility for external path preferences"; } - // Type is an MO-Defined-Type - leaf SSLValidationLevel { - description "SSL certificate validation level"; + // Adjacency change logging level + leaf adjChangeLogLevel { - // Type is an MO-Defined-Type - type aaa_LdapSSLStrictnessLevel; + type ospf_AdjChangeLogLevel; + description "Adjacency change logging level"; } - // This property names the attribute to be downloaded - // which has user's roles and domains information. - // The value of this property takes precendence over the - // value of 'attribute' property in LdapEp MO - // Type is an MO-Defined-Type - leaf attribute { - description "LDAP Attribute"; + // L3VM Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapAttribute; + type ospf_OperSt; + description "Operational state of Layer 3 virtualization related commands(l3vm)"; } - // Ldap Base DN to be used while searching for the user. - // The value of this property takes precendence over the value - // of 'basedn' property in LdapEp MO - // Type is an MO-Defined-Type - leaf basedn { - description "LDAP Base DN"; + // Operational Router id for this dom, if it is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that domain + leaf operRtrId { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapDn; + type ip_RtrId; + description "Operational router identifier for this domain"; } - // Ldap filter to be used while searching for the user. - // The value of this property takes precendence over the - // value of 'filter' property in LdapEp MO - // Type is an MO-Defined-Type - leaf filter { - description "LDAP Filter"; + // Operational SRGB minimum label + leaf operSrgbStart { + config "false"; - // Type is an MO-Defined-Type - type aaa_LdapFilter; + type ulib_LabelVal; + description "Operational Segment Routing Global Block(SRGB) start index for OSPF"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Operational SRGB maximum label + leaf operSrgbEnd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ulib_LabelVal; + description "Operational Segment Routing Global Block(SRGB) end index for OSPF"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Operational State of Segment Routing MPLS in OSPF Dom/VRF + leaf operStSgmntRtgMpls { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_SgmntRtgMplsOperSt; + description "Operational state of Segment Routing MPLS in OSPF VRF which is Enable/Disable"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Discard Route Bits + leaf discardRoute { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_DiscardRoute; + description "Control bits for discard-route external and internal"; } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf downbitIgnore { + type boolean; + description "Holds the status of Down-bit ignore"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // Capability vrf-lite + leaf capVrfLite { - // Type is an MO-Defined-Type - type aaa_EncKey; - } - leaf keySet { - config "false"; - type boolean; + type ospf_VrfLiteControl; + description "Capability vrf-lite for L3VPN or Ethernet VPN "; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + // This object holds OSPF information that is operated at a + // interface level + container area-items { + list Area-list { + key "id"; - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_LdapProvider_keyEnc; + uses ospf_Area-group; + description "This object holds OSPF area properties information list"; + } + description "This object holds OSPF area properties information"; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Modified by Override: aaa:LdapProvider->timeout - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_LdapProvider_timeout { - range "5..60"; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; } + description "This object holds OSPF link state databases (LSDB)"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; + // This object holds spf computation frequency controls, none + // of these need to be exposed to the user + container spfcomp-items { - // Type is a Local-MO-Defined-Type - type aaa_Retries_LdapProvider_retries; + uses ospf_SpfComp-group; + description "Shortest Path First(SPF) computation frequency controls"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "Provider Operational State"; + // This object holds lsa related frequency controls, none of + // these need to be exposed to the user + container lsactrl-items { - // Type is an MO-Defined-Type - type aaa_ProviderState; + uses ospf_LsaCtrl-group; + description "Link State Advertisement(LSA) related frequency controls"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + // This object holds the OSPF VRF related statistics + container domstats-items { - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + uses ospf_DomStats-group; + description "This object holds the OSPF VRF related statistics"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + // This object holds per OSPF VRF graceful restart information + container gr-items { - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + uses ospf_Gr-group; + description "Object holding per OSPF VRF graceful restart information"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + // This object holds OSPF information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; + uses ospf_If-group; + description "Object holds OSPF information that is operated at interface level list"; + } + description "Object holds OSPF information that is operated at interface level"; } - leaf epgDn { - config "false"; - type string; + + // This object holds per domain max-lsa information + container maxlsap-items { + + uses ospf_MaxLsaP-group; + description "Max-LSA(Link State Advertisement) Database overflow for each domain or VRF"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "Vrf Name"; + // This object holds per domain max-lsa information + container maxmetriclsap-items { - // Type is an MO-Defined-Type - type l3_VrfName; + uses ospf_MaxMetricLsaP-group; + description "Max-Metric Link State Advertisement information per Domain/VRF"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { - config "false"; - description "Provider SNMP Index"; + // This objects holds default route leak policy, + // this is not needed for FCS in our solution + container defrtleak-items { - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + uses ospf_DefRtLeakP-group; + description "Default Route leak or the distribution policy"; } - } - grouping aaa_TacacsPlusEp-group { + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to ospf + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + uses ospf_InterLeakP-group; + description "This defines distribution of routes from other protocols to OSPF list"; + } + description "This defines distribution of routes from other protocols to OSPF"; + } - // Type is an MO-Defined-Type - type aaa_TimeMin; + // Leak controls related to the number of routes leaked + container leakctrl-items { + + uses ospf_LeakCtrlP-group; + description "Leak controls related to the number of routes leaked"; } - // Type is an MO-Defined-Type - leaf key { - description "Global TACACS+ server shared secret"; + container ribleak-items { - // Type is an MO-Defined-Type - type aaa_EncKey; + uses ospf_RibLeakP-group; + description "OSPF to Route Information Base(RIB) Route Leak/distribution Policy Per Domain or VRF"; } - // Type is an MO-Defined-Type - leaf keyEnc { - description "Default key encryption"; + // External route summarization is specific to external + // routes that are injected into OSPF using route leak. + // Configure external route summarization on ASBRs that + // are leaking routes into OSPF + container extrtsum-items { + list ExtRtSum-list { + key "addr"; - // Type is an MO-Defined-Type - type aaa_KeyEnc; + uses ospf_ExtRtSum-group; + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF list"; + } + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF"; } - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Tacacs Logging level"; + // This object holds the OSPF traffic related information + container trstats-items { - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + uses ospf_TrafficStats-group; + description "This object holds the OSPF traffic related information"; } + } + + grouping ospf_Area-group { + description "This object holds OSPF area properties information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Area id + leaf id { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaId; + description "Area identifier to which a network or interface belongs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Area type (stub | nssa | backbone, etc) + leaf type { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AreaT; + description "Area types can be stub, nssa, backbone etc."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Area controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaControl; + description "Area controls can be ABRs originate summary LSAs into other areas, redistributed LSAs or suppress forwarding address"; } - // add units for timeout. This helps display in CLI - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout in Seconds"; + // Area cost, specifies cost for default summary LSAs. + // Used with nssa/stub area types. Not applicable in + // our fabric solution + leaf cost { - // Type is an MO-Defined-Type - type aaa_TimeSec; + type ospf_AreaCost; + description "Area cost, specifies cost for default summary LSAs, Used with nssa/stub area types"; } - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf retries { - description "Retries"; + // Segment Routing control + leaf sgmntRtgMpls { - // Type is an MO-Defined-Type - type aaa_Retries; + type ospf_SegRtControl; + description "Segment routing mpls control"; } - // Source interface - // Inherited From aaa:Ep - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // NSSA translator role + leaf nssaTransRole { - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_NssaTransRole; + description "Not-so-stubby area(NSSA) translator role"; } - container tacacsplusprovider-items { - list TacacsPlusProvider-list { - key "name"; - // Added containment: Prefix=tacacsplusprovider - // Acquired From Package aaa - uses aaa_TacacsPlusProvider-group; - } + // Border router count + leaf brCnt { + config "false"; + + type ospf_BrCnt; + description "Area border router count"; } - // This MO represents a group of AAA TACACS+ servers. - container tacacsplusprovidergroup-items { - list TacacsPlusProviderGroup-list { - key "name"; + // AS Border router count + leaf asbrCnt { + config "false"; - // Added containment: Prefix=tacacsplusprovidergroup - // Acquired From Package aaa - uses aaa_TacacsPlusProviderGroup-group; - } + type ospf_AsbrCnt; + description "Autonomous system border router count"; } - container tacacsservermonitor-items { + // LSA checksum sum + leaf lsaCksumSum { + config "false"; - // Added containment as a singleton: Prefix=tacacsservermonitor - // Acquired From Package aaa - uses aaa_TacacsServerMonitor-group; + type ospf_LsaCksumSum; + description "Link-state advertisement(LSA) checksum sum"; } - // Rel-def target from resTacacsPlusEp - // Inherited From aaa:TacacsPlusEp - container rtfabricResTacacsPlusEp-items { + // NSSA translator state + leaf nssaTransSt { + config "false"; - // Abstract containment of rtfabricResTacacsPlusEp derived from aaa:TacacsPlusEp - list RtFabricResTacacsPlusEp-list { - config "false"; - key "tDn"; + type ospf_NssaTransSt; + description "Not-so-stubby area (NSSA) translator state"; + } - // Added containment: Prefix=rtfabricResTacacsPlusEp - // Acquired From Package fabric - uses fabric_RtFabricResTacacsPlusEp_target-group; - } + // NSSA translator stability interval + leaf nssaTransStabIntvl { + config "false"; + + type ospf_NssaTransStabIntvl; + description "Not-so-stubby area (NSSA) translator stability interval"; } - } - grouping aaa_TacacsPlusProvider-group { + // Operational State of Segment Routing MPLS in OSPF Area + leaf operStSgmntRtgMpls { + config "false"; - // Type is an MO-Defined-Type - leaf port { - description "Port"; + type ospf_SgmntRtgMplsOperSt; + description "Segment routing MPLS operational state in OSPF area which is Enable/Disable"; + } - // Type is an MO-Defined-Type - type aaa_Port; + // Authentication type + leaf authType { + + type ospf_AuthT; + description "Authentication type can be simple, none or md5"; } - // Type is an MO-Defined-Type - leaf authProtocol { - description "TACACS+ Authentication Protocol"; + // This object holds the OSPF area related statistics + container areastats-items { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + uses ospf_AreaStats-group; + description "Object holding the OSPF area related statistics"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:AProvider->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; } + description "This object holds OSPF link state databases (LSDB)"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // This object holds OSPF information about OSPF virtual + // links + container vlink-items { + list VLink-list { + key "nbrRtrId"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_VLink-group; + description "This object holds information about OSPF virtual links list"; + } + description "This object holds information about OSPF virtual links"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds OSPF information about OSPF sham + // links + container slink-items { + list SLink-list { + config "false"; + key "srcAddr dstAddr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_SLink-group; + description "This object holds information about OSPF sham links list"; } + description "This object holds information about OSPF sham links"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Lsa Leak concrete class. + container lsaleakp-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_LsaLeakP-group; + description "Thi object holds link-state advertisement(LSA) leak policies"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf key { - description "Key"; + // Lsa Leak Control concrete class. + container lsaleakctrlp-items { + list LsaLeakCtrlP-list { + key "dir"; - // Type is an MO-Defined-Type - type aaa_EncKey; - } - leaf keySet { - config "false"; - type boolean; + uses ospf_LsaLeakCtrlP-group; + description "This object holds link-state advertisement(LSA) leak control policies list"; + } + description "This object holds link-state advertisement(LSA) leak control policies"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf keyEnc { - description "Default key encryption"; + // This objects holds default route leak policy, + // this is not needed for FCS in our solution + container defrtleak-items { - // Type is a Local-MO-Defined-Type - type aaa_KeyEnc_TacacsPlusProvider_keyEnc; + uses ospf_DefRtLeakP-group; + description "Default Route leak or the distribution policy"; } - // The following two properties are also defined in Ep MO. - // Here they reperesent per server configuration which would - // take precedence over global configuration defined in Ep MO - // Inherited From aaa:AProvider - // Modified by Override: aaa:TacacsPlusProvider->timeout - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf timeout { - description "Timeout in Seconds"; + // Inter-area route summarization. This is configured + // on ABRs, summarizing routes between areas in the + // autonomous system + container iartsum-items { + list InterAreaRtSum-list { + key "addr"; - // Type is a Local-MO-Defined-Type - type aaa_TimeSec_TacacsPlusProvider_timeout { - range "0..60"; + uses ospf_InterAreaRtSum-group; + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system list"; } + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system"; } + } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf retries { - description "Retries"; - - // Type is a Local-MO-Defined-Type - type aaa_Retries_TacacsPlusProvider_retries; + grouping ospf_AreaStats-group { + description "Object holding the OSPF area related statistics"; + leaf areaCreatedTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the area created"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf operState { + // Number of SPF runs + leaf spfRuns { config "false"; - description "Provider Operational State"; - // Type is an MO-Defined-Type - type aaa_ProviderState; + type ospf_Counter32; + description "Number of Shortest Path First (SPF) runs"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitorServer { - description "Periodic Server Monitoring"; + // LSA count + leaf lsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitorServerType; + type ospf_Counter32; + description "Count of link-state advertisements(LSA)"; + } + leaf lastSpfDuration { + config "false"; + type uint32; + description "Duration of last Shortest Path First (SPF)"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringUser { - description "Periodic Server Monitoring Username"; + // Total number of interfaces + leaf ifCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitoringUserType; + type ospf_Counter32; + description "Total number of interfaces"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf monitoringPassword { - description "Periodic Server Monitoring Password"; + // Number of active interfaces + leaf activeIfCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_MonitoringPasswordType; + type ospf_Counter32; + description "Number of active interfaces"; } - leaf epgDn { + + // Number of passive interfaces + leaf passiveIfCnt { config "false"; - type string; + + type ospf_Counter32; + description "Number of passive interfaces"; } - // The vrf that this client group belongs to - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf vrfName { + // Number of loopback interfaces + leaf lpbkIfCnt { config "false"; - description "Vrf Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_Counter32; + description "Number of loopback interfaces"; } - // Inherited From aaa:AProvider - // Type is an MO-Defined-Type - leaf snmpIndex { + // Number of adjacency + leaf adjCnt { config "false"; - description "Provider SNMP Index"; - // Type is an MO-Defined-Type - type aaa_ProviderSnmpIndex; + type ospf_Counter32; + description "Number of adjacencies formed"; } - } - - grouping aaa_TacacsPlusProviderGroup-group { - // Type is an MO-Defined-Type - leaf deadtime { - description "Duration for which non-reachable server is skipped"; + // Number of peers in hitless helper mode + leaf grHelperPeerCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupDeadtime; + type ospf_Counter32; + description "Gracefull restart helper peer count"; } + } + + grouping ospf_Db-group { + description "This object holds OSPF link state databases (LSDB)"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Modified by Override: aaa:ProviderGroup->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Type of the repository + leaf type { + config "false"; + + type ospf_DbT; + description "Type of database repository"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // LSA records + container lsa-items { + list LsaRec-list { + config "false"; + key "type id advRtr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_LsaRec-group; + description "This object holds Link-state advertisement (LSA) database definitions list"; } + description "This object holds Link-state advertisement (LSA) database definitions"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds the OSPF route information + container rt-items { + list Route-list { + config "false"; + key "pfx"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_Route-group; + description "Open Shortest Path First (OSPF) Route information list"; + } + description "Open Shortest Path First (OSPF) Route information"; } + } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf snmpIndex { + grouping ospf_LsaRec-group { + description "This object holds Link-state advertisement (LSA) database definitions"; + + // Lsa type + leaf type { config "false"; - description "Provider Group SNMP Index"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupSnmpIndex; + type ospf_LsaT; + description "Holds Link-state advertisement (LSA) type"; } - // Source interface - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Lsa id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type ospf_LsaId; + description "Holds Link-state advertisement (LSA) Id"; } - // Inherited From aaa:ProviderGroup - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Router id + leaf advRtr { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type ospf_LsaAdvRtr; + description "Link-state advertisement (LSA) advertising router"; } - // The MO represents member of ProviderGroup - container providerref-items { - list ProviderRef-list { - key "name"; + // Sequence number + leaf seq { + config "false"; - // Added containment: Prefix=providerref - // Acquired From Package aaa - uses aaa_ProviderRef-group; - } + type ospf_LsaSeq; + description "Holds Link-state advertisement (LSA) sequence number"; } - } - grouping aaa_TacacsServerMonitor-group { - - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + // Age + leaf age { + config "false"; - // Type is an MO-Defined-Type - type aaa_Passwd; + type ospf_LsaAge; + description "Holds the age of Link-state advertisement (LSA)"; + } + leaf arrivalTs { + config "false"; + type union { + type string; + type uint64; + } + description "Holds the arrival timestamp of LSA"; } - // Type is an MO-Defined-Type - leaf idleTime { - description "Idle timer to monitor tacacs/radius server"; + // Checksum + leaf cksum { + config "false"; - // Type is an MO-Defined-Type - type aaa_IdleTimer; + type ospf_LsaCksum; + description "Link-state advertisement (LSA) checksum "; } - // Inherited From pol:Obj - // Modified by Override: aaa:TacacsServerMonitor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { + // Advertisement + leaf advert { + config "false"; - // Copied from "aaa:User" type - length "0..64"; - } + type ospf_LsaAdvert; + description "Link-state advertisement (LSA) Advertisement"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Router Information (RI) LSA records + container ri-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_RiLsaRec-group; + description "Router Information LSA Record"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Extended Prefix LSA records + container epl-items { + list ExtPfxRec-list { + config "false"; + key "ipPfx"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses ospf_ExtPfxRec-group; + description "Extended Prefix LSA Record list"; } + description "Extended Prefix LSA Record"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Extended Link TLV records + container ell-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_ExtLinkRec-group; + description "Extended Link LSA Record"; } } - grouping aaa_AuthRealm-group { + grouping ospf_RiLsaRec-group { + description "Router Information LSA Record"; - // default role policy for remote user - // Type is an MO-Defined-Type - leaf defRolePolicy { - description "Default Role Policy"; + // Graceful Restart Capability + leaf grRestartCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_NoRolePolicy; + type ospf_CapFlag; + description "Graceful Restart Capability Flag"; } - // Type is an MO-Defined-Type - leaf radDirectedReq { - description "Enable direct authentication requests to server"; + // Graceful Restart Helper Capability + leaf grRestartHelperCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_CapFlag; + description "Graceful Restart Helper Capability Flag"; } - // Type is an MO-Defined-Type - leaf tacDirectedReq { - description "Enable direct authentication requests to server"; + // Stub Router Support Capability + leaf stubRouterCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_CapFlag; + description "Stub Router Support Capability Flag"; } - // for aaa logging level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "AAA Logging level"; + // Traffic Engineering Support Capability + leaf teCap { + config "false"; - // Type is an MO-Defined-Type - type aaa_LoggingLevel; + type ospf_CapFlag; + description "Traffic Engineering Support Capability Flag"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Point to Point over LAN Support Capability + leaf p2pOverLanCap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_CapFlag; + description "Point to Point over LAN Support Capability Flag"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Experimental Traffic Engineering Support Capability + leaf expTeCap { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_CapFlag; + description "Experimental Traffic Engineering Support Capability Flag"; + } + leaf sgmntRtgGlobalRange { + config "false"; + type uint32; + description "Segment Routing Global Block Range"; + } + leaf sgmntRtgGlobalRangeStart { + config "false"; + type uint32; + description "Segment Routing Global Block Range Start Label"; + } + leaf sgmntRtgLocalRange { + config "false"; + type uint32; + description "Segment Routing Local Block Range"; + } + leaf sgmntRtgLocalRangeStart { + config "false"; + type uint32; + description "Segment Routing Local Block Range Start Label"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + grouping ospf_ExtPfxRec-group { + description "Extended Prefix LSA Record"; + leaf ipPfx { + config "false"; + type address_Ip; + description "ip address with mask"; + } + leaf addressFamily { + config "false"; + type uint16; + description "Extended Prefix Address Family - Ipvx"; + } - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + // Extended Prefix Route Type, Intra, Inter, External, NSSA + leaf routeType { + config "false"; + + type ospf_PathT; + description "Extended Prefix Route Type, Intra, Inter, External, NSSA"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Extended Prefix Flags + leaf pfxFlags { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_PfxFlags; + description "Extended Prefix Flags, Attach/Node Flag as in rfc7684"; } - container aaagroup-items { - list AaaServerGroup-list { + + // Segment Routing Prefix SID TLV record + container sid-items { + list SgmntRtgPfxSidRec-list { config "false"; - key "name"; + key "sgmntRtgAlgo"; - // Added containment: Prefix=aaagroup - // Acquired From Package aaa - uses aaa_AaaServerGroup-group; + uses ospf_SgmntRtgPfxSidRec-group; + description "Segment Routing Prefix SID TLV Record list"; } + description "Segment Routing Prefix SID TLV Record"; } + } - // MO representing the Default Authentication configuration for - // all logins - container defaultauth-items { + grouping ospf_SgmntRtgPfxSidRec-group { + description "Segment Routing Prefix SID TLV Record"; - // Added containment as a singleton: Prefix=defaultauth - // Acquired From Package aaa - uses aaa_DefaultAuth-group; - } - container defaultauthor-items { - list DefaultAuthor-list { - key "cmdType"; + // Segment Routing MPLS Prefix Sid Flags + leaf sgmntRtgPfxSidFlags { + config "false"; - // Added containment: Prefix=defaultauthor - // Acquired From Package aaa - uses aaa_DefaultAuthor-group; - } + type ospf_PfxSidFlags; + description "Segment Routing MPLS Prefix Sid Flags, NP/M/E/V/L"; } - container consoleauthor-items { - list ConsoleAuthor-list { - key "cmdType"; - - // Added containment: Prefix=consoleauthor - // Acquired From Package aaa - uses aaa_ConsoleAuthor-group; - } + leaf sgmntRtgMtid { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; } - - container defaultacc-items { - - // Added containment as a singleton: Prefix=defaultacc - // Acquired From Package aaa - uses aaa_DefaultAcc-group; + leaf sgmntRtgAlgo { + config "false"; + type uint16; + description "Segment Routing Algorithm Type"; } - - container pkisshcert-items { - - // Added containment as a singleton: Prefix=pkisshcert - // Acquired From Package aaa - uses aaa_PkiSSHCertificate-group; + leaf sgmntRtgAlgoName { + config "false"; + type string; + description "Segment Routing Algorithm Name ; Name if it's a supported else Unsupported"; } - container pkisshpubkey-items { + // Segment Routing MPLS SID/Index/Label + leaf sgmntRtgPfxSid { + config "false"; - // Added containment as a singleton: Prefix=pkisshpubkey - // Acquired From Package aaa - uses aaa_PkiSSHPublicKey-group; + type ospf_SidIndex; + description "Segment Routing MPLS SID/Index/Label based on Flag"; } + } - // MO representing the Authentication configuration for Console - // Login - container consoleauth-items { + grouping ospf_ExtLinkRec-group { + description "Extended Link LSA Record"; - // Added containment as a singleton: Prefix=consoleauth - // Acquired From Package aaa - uses aaa_ConsoleAuth-group; - } + // Extended Link TLV, Link Type + leaf linkType { + config "false"; - // Rel-def target from resAuthRealm - // Inherited From aaa:AuthRealm - container rtfabricResAuthRealm-items { + type ospf_NwT; + description "OSPFv2 Link type as per rfc7684"; + } + leaf linkId { + config "false"; + type address_Ip; + description "OSPFv2 Link ID as per rfc7684"; + } + leaf linkData { + config "false"; + type address_Ip; + description "OSPFv2 Link Data as per rfc7684"; + } - // Abstract containment of rtfabricResAuthRealm derived from aaa:AuthRealm - list RtFabricResAuthRealm-list { + // Segment Routing Adjacency SID TLV record + container sid-items { + list SgmntRtgAdjSidRec-list { config "false"; - key "tDn"; + key "sgmntRtgAdjSidLabel"; - // Added containment: Prefix=rtfabricResAuthRealm - // Acquired From Package fabric - uses fabric_RtFabricResAuthRealm_target-group; + uses ospf_SgmntRtgAdjSidRec-group; + description "Segment Routing Adjacency SID TLV Record list"; } + description "Segment Routing Adjacency SID TLV Record"; } } - grouping aaa_AaaServerGroup-group { + grouping ospf_SgmntRtgAdjSidRec-group { + description "Segment Routing Adjacency SID TLV Record"; - // Type is an MO-Defined-Type - leaf name { + // Segment Routing Adjacency SID Type + leaf adjSidTlvType { config "false"; - description "server Group"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AdjSidTlvType; + description "Segment Routing Adjacency SID TLV type"; + } + leaf sgmntRtgMtid { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; + } + leaf sgmntRtgWeight { + config "false"; + type uint16; + description "Segment Routing MPLS Multi-Topology ID (as defined in RFC4915)"; } - // Type is an MO-Defined-Type - leaf protocol { + // Segment Routing Adjacency SID TLV Flags + leaf sgmntRtgAdjSidFlags { config "false"; - description "server Group protocol"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupProtocol; + type ospf_AdjSidFlags; + description "Segment Routing Adjacency SID TLV Flags"; + } + leaf sgmntRtgAdjSidNbrId { + config "false"; + type address_Ip; + description "Segment Routing Adjacency SID TLV Neighbor ID"; + } + + // Segment Routing Adjacency SID TLV SID/Index/Label + leaf sgmntRtgAdjSidLabel { + config "false"; + + type ospf_AdjSidLabel; + description "Segment Routing Adjacency SID TLV SID/Index/Label"; } } - grouping aaa_DefaultAuth-group { + grouping ospf_Route-group { + description "Open Shortest Path First (OSPF) Route information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf pfx { + config "false"; + type address_Ip; + description "Specifies the prefix IP address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Path type + leaf pathT { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_PathT; + description "Specifies the path type of route"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Area id + leaf area { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AreaId; + description "Specifies the Area identifier (ID)"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_RtFlags; + description "Specifies the route flags"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Unicast cost + leaf ucastCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtCost; + description "Holds the unicast route cost"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Multicast cost + leaf mcastCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtCost; + description "Holds the multicast route cost"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Route Tag + leaf tag { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RtTag; + description "Specifies the route tag information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Administrative distance preference + leaf dist { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Dist; + description "Administrative distance preference"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // MPLS Segment ID + leaf sgmntRtgMplsSid { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment routing MPLS segment ID"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Segment Routing MPLS in-label + leaf sgmntRtgMplsInLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment Routing MPLS in-label"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Unicast nexthop + container ucnh-items { + list UcNexthop-list { + config "false"; + key "if addr"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + uses ospf_UcNexthop-group; + description "Open Shortest Path First (OSPF) Unicast nexthop information list"; + } + description "Open Shortest Path First (OSPF) Unicast nexthop information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Multicast nexthop + container mcnh-items { + list McNexthop-list { + config "false"; + key "if addr"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf errEn { - type boolean; - default "true"; + uses ospf_McNexthop-group; + description "Holds OSPF Multicast nexthop information list"; + } + description "Holds OSPF Multicast nexthop information"; } + } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + grouping ospf_UcNexthop-group { + description "Open Shortest Path First (OSPF) Unicast nexthop information"; - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + // Nexhop interface + leaf if { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type nw_IfId; + description "Specifies the nexhop interface"; + } + leaf addr { + config "false"; + type address_Ip; + description "Specifies the nexhop interface IP address"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_NhFlags; + description "Specifies nexhop interface flags"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // Segment Routing MPLS out-label + leaf sgmntRtgMplsOutLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_SgmntRtgMplsLabel; + description "Segment-routing Multiprotocol Label Switching(MPLS) out-label"; } } - grouping aaa_DefaultAuthor-group { + grouping ospf_McNexthop-group { + description "Holds OSPF Multicast nexthop information"; - // Inherited From pol:Obj - // Modified by Override: aaa:DefaultAuthor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Nexhop interface + leaf if { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type nw_IfId; + description "Specifies the nexhop interface"; } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf addr { + config "false"; + type address_Ip; + description "Specifies the nexhop interface IP address"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:DefaultAuthor->realm - // Type is an MO-Defined-Type - leaf realm { + // Flags + leaf flags { config "false"; - description "Realm"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_NhFlags; + description "Specifies nexhop interface flags"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Segment Routing MPLS out-label + leaf sgmntRtgMplsOutLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SgmntRtgMplsLabel; + description "Segment-routing Multiprotocol Label Switching(MPLS) out-label"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } + grouping ospf_VLink-group { + description "This object holds information about OSPF virtual links"; - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Router id associated with virtual link neighbor + leaf nbrRtrId { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ip_RtrId; + description "Router id associated with virtual link neighbor"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // This object holds OSPF neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf authorMethodNone { - type boolean; - } - leaf localRbac { - type boolean; - default "true"; + uses ospf_AdjEp-group; + description "This object holds OSPF adjacency information list"; + } + description "This object holds OSPF adjacency information"; } - // Inherited From aaa:AuthorConfig - // Type is an MO-Defined-Type - leaf cmdType { - description "Type of command for authorization"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_CmdType; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } } - grouping aaa_ConsoleAuthor-group { + grouping ospf_AdjEp-group { + description "This object holds OSPF adjacency information"; - // Inherited From pol:Obj - // Modified by Override: aaa:ConsoleAuthor->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Neighbor's router id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AdjId; + description "OSPF adjacency neighbor's router id"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Neighbor's interface id + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AdjIfId; + description "Neighbor's interface id"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Adjacency state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AdjOperSt; + description "Operational state of OSPF adjacency"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:ConsoleAuthor->realm - // Type is an MO-Defined-Type - leaf realm { + // BFD state + leaf bfdSt { config "false"; - description "Realm"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_BfdOperSt; + description "Operational Bidirectional Forwarding Detection(BFD) State"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Area id + leaf area { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AreaId; + description "OSPF adjacency operational area ID"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Neighbor priority + leaf prio { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigPrio; + description "Operational neighbor priority"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Designated router address + leaf dr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigAddr; + description "Designated router address(DR)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Backup designated router address + leaf bdr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DesigAddr; + description "Backup designated router address(BDR)"; } - - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf peerIp { + config "false"; + type address_Ip; + description "Adjacency peer IP address"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Peer options from hello packet + leaf helloOptions { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Options; + description "Peer options from hello packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Peer options from DBD packet + leaf dbdOptions { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Options; + description "Peer options from database descriptor(DBD) packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf authorMethodNone { - type boolean; + type ospf_AdjFlags; + description "Adjacency flags can be master-self,all-dbds-sent,all-dbds-acked and peer-gr-helper"; } - leaf localRbac { - type boolean; - default "true"; + leaf peerName { + config "false"; + type string; + description "OSPf adjacency Neighbor name"; } - // Inherited From aaa:AuthorConfig - // Type is an MO-Defined-Type - leaf cmdType { - description "Type of command for authorization"; + // Segment Routing Adjacency sid label + leaf sgmntRtgMplsAdjSidLabel { + config "false"; - // Type is an MO-Defined-Type - type aaa_CmdType; + type ospf_AdjSidLabel; + description "Segment routing adjacency label absolute value"; } - } - - grouping aaa_DefaultAcc-group { - // Inherited From pol:Obj - // Modified by Override: aaa:DefaultAcc->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Segment Routing Adjacency sid flags + leaf sgmntRtgMplsAdjSidFlags { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_AdjSidFlags; + description "Segment routing adjacency sid flags"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // This object holds the OSPF neighbor related statistics + container adjstats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses ospf_AdjStats-group; + description "Object holds OSPF neighbor adjacency related statistics"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds OSPF graceful restart operational + // information + container gr-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses ospf_GrSt-group; + description "Object holds OSPF Graceful Restart operational Information"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } + grouping ospf_AdjStats-group { + description "Object holds OSPF neighbor adjacency related statistics"; - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // State change count + leaf stChgCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_Counter32; + description "Number of states changed during OSPF adjacency"; } - - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf lastStChgTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the latest state change"; + } + leaf lastNonHelloPktTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the last non hello packet received"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // DBD Sequence number + leaf dbdSeqNum { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Database descriptor(DBD) sequence number"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Number of LSAs on request list + leaf reqLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of link-state advertisement(LSAs) on request list"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Outstanding LSAs from last request + leaf outstandingLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of outstanding LSAs from last request"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Number of retransmissions of LSA request + leaf lsaReqRexmitCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Number of retransmissions of LSA request"; + } + leaf deadTimerExpTs { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp of the dead timer expiry"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + grouping ospf_GrSt-group { + description "Object holds OSPF Graceful Restart operational Information"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + // Peer restart helper Status + leaf helperSt { + config "false"; + + type ospf_HelperSt; + description "Peer restart helper status"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Peer restart helper age + leaf helperAge { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelperAge; + description "Peer restart helper age"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // Peer restart helper exit qualifier + leaf helperExitQual { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; - } - leaf accMethodNone { - type boolean; - default "true"; - } - leaf localRbac { - type boolean; - default "true"; + type ospf_HelperExitQual; + description "Peer restart helper exit qualifier"; } } - grouping aaa_PkiSSHCertificate-group { - leaf local { - type boolean; - } + grouping ospf_AuthNewP-group { + description "This object holds authentication new policy information"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Authentication type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_AuthT; + description "Authentication types can be simple, md5 or none."; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Authentication key id + leaf keyId { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_AuthKeyId; + description "Key id used for authentication"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_AuthKey; + description "Key used for authenticatoin"; + } + leaf keySecureMode { + type boolean; + default "false"; + description "Encrypted authentication key or plain text key"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Authentication md5 key + leaf md5key { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AuthKey; + description "Authentication md5 key"; } + leaf md5keySecureMode { + type boolean; + default "false"; + description "Encrypted authentication md5 key or plain text key"; + } + leaf keychain { + type string; + description "Authentication keychain"; + } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; - - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + grouping ospf_SLink-group { + description "This object holds information about OSPF sham links"; + leaf srcAddr { + config "false"; + type address_Ip; + description "Sham-link source IP address"; + } + leaf dstAddr { + config "false"; + type address_Ip; + description "Sham-link destination IP address"; + } + leaf demandCkt { + config "false"; + type boolean; + description "Specifies whether a OSPF sham-link interface is a demand circuit or not"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Cost of the interface + leaf cost { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_IfCost; + description "Specifies the cost of interface"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } } - grouping aaa_PkiSSHPublicKey-group { - leaf local { - type boolean; - } + grouping ospf_LsaLeakP-group { + description "Thi object holds link-state advertisement(LSA) leak policies"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type rtleak_Scope; + description "Scope"; + } + leaf rtMap { + config "false"; + type string; + description "Route Map"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_LsaLeakOperSt; + description "Operational state of LSA leak"; } + } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + grouping ospf_LsaLeakCtrlP-group { + description "This object holds link-state advertisement(LSA) leak control policies"; - // Type is an MO-Defined-Type - type aaa_Realm; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + leaf descr { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_Scope; + description "Scope"; + } + leaf rtMap { + type string; + description "Route Map"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + leaf dir { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_RtCtrlDir; + description "Holds route control directory information"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_LsaLeakOperSt; + description "Operational state of LSA leak"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + grouping ospf_DefRtLeakP-group { + description "Default Route leak or the distribution policy"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type rtleak_Scope; + default "defrt"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route map for default-information originate"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + // DefRtLeak always advertise + leaf always { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Always; + description "Always advertise default route leak"; } } - grouping aaa_ConsoleAuth-group { + grouping ospf_InterAreaRtSum-group { + description "Inter-area Route Summarization on ABRs, summarizing routes between areas in the autonomous system"; - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; + } + leaf addr { + type address_Ip; + description "Address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Summary address no Advertise + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_SumControl; + description "Summary address no advertise"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Number of component routes + leaf compRtCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Number of component routes"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // Route summary cost + leaf operCost { + config "false"; - // Type is an MO-Defined-Type - type aaa_Realm; + type ospf_SumCost; + description "Route summary operational cost"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Area range cost + leaf cost { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SumCost; + description "Area range cost for route summarization"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + grouping ospf_SpfComp-group { + description "Shortest Path First(SPF) computation frequency controls"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // Initial spf schedule delay interval + leaf initIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompInitIntvl; + description "Initial SPF schedule delay interval"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Minimum hold time between spf calculations + leaf holdIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompHoldIntvl; + description "Minimum hold time interval between SPF calculations"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // Maximum wait time between spf calculations + leaf maxIntvl { - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_SpfCompMaxIntvl; + description "Maximum wait time between SPF calculations"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + grouping ospf_LsaCtrl-group { + description "Link State Advertisement(LSA) related frequency controls"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - leaf errEn { - type boolean; - default "true"; + + // LSA group pacing interval + leaf gpPacingIntvl { + + type ospf_LsaGpPacingIntvl; + description "LSA group pacing interval"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Minimum interval between arrival of a LSA + leaf arrivalIntvl { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type ospf_LsaArrivalIntvl; + description "Minimum interval between arrival of a LSA"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + // LSA generation throttle start wait interval + leaf startIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThStartIntvl; + description "LSA generation throttle start wait interval"; } - // Inherited From aaa:AuthConfig - // Modified by Override: aaa:ConsoleAuth->local - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + // LSA generation throttle hold interval + leaf holdIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThHoldIntvl; + description "LSA generation throttle hold interval"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // LSA generation throttle maximum interval + leaf maxIntvl { - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_LsaThMaxIntvl; + description "LSA generation throttle maximum interval"; } } - grouping aaa_LoginDomain-group { + grouping ospf_DomStats-group { + description "This object holds the OSPF VRF related statistics"; - // Inherited From pol:Obj - // Modified by Override: aaa:LoginDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Interface count + leaf ifCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of interfaces"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Area count + leaf areaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the number of area's configured"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Stub area count + leaf stubAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of stub areas"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // NSSA area count + leaf nssaAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Count of not-so-stubby area(NSSA) area"; } - // MO representing the Authentication configuration for - // a domain login - this is always a child of a LoginDomain object - container domainauth-items { + // External area count + leaf extAreaCnt { + config "false"; - // Added containment as a singleton: Prefix=domainauth - // Acquired From Package aaa - uses aaa_DomainAuth-group; + type ospf_Counter32; + description "Holds the count of external areas"; } - // Rel-def target from loginDomain - // Inherited From aaa:LoginDomain - container rtaaaLoginDomain-items { - - // Abstract containment of rtaaaLoginDomain derived from aaa:LoginDomain - list RtAaaLoginDomain-list { - config "false"; - key "tDn"; + // Active stub area count + leaf activeStubAreaCnt { + config "false"; - // Added containment: Prefix=rtaaaLoginDomain - // Acquired From Package aaa - uses aaa_RtAaaLoginDomain_target-group; - } + type ospf_Counter32; + description "Holds the count of active stub areas"; } - } - grouping aaa_DomainAuth-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:DomainAuth->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Active NSSA area count + leaf activeNssaAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Active not-so-stubby area(NSSA) area count"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Active external area count + leaf activeExtAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the active external area count"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Active Area count + leaf activeAreaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type ospf_Counter32; + description "Holds the count of active areas"; + } + leaf lastStatsClearTs { + config "false"; + type union { + type string; + type uint64; } + description "Holds the last statistics clear timestamp"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Neighbor count + leaf peerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Holds the neighbor/peer count"; } - // The realm to be used for processing - // authentication/accounting requests - // Inherited From aaa:Config - // Modified by Override: aaa:DomainAuth->realm - // Type is an MO-Defined-Type - leaf realm { - description "Realm"; + // External LSA count + leaf extLsaCnt { + config "false"; - // Type is a Local-MO-Defined-Type - type aaa_Realm_DomainAuth_realm; + type ospf_Counter32; + description "Holds the external link-state advertisement(LSA) count"; } - // This property specifies the name of ProviderGroup which - // will be used for for authentication/accounting.The usage - // of this property value depends on the value of 'realm' - // property above. When an value is provided for property, - // this would restrict the servers which will be tried. - // When no value is provided, then all the servers will be - // tried for the protocol realm configured in the 'realm' - // property above. - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup { - description "Provider Group"; + // Opaque AS LSA count + leaf opaqueAsLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the count of opaque AS LSAs"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup2 { - description "Provider Group"; + // Total AS LSA count + leaf totalAsLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the total AS link-state advertisement(LSA) count"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup3 { - description "Provider Group"; + // New LSA Rx count + leaf newLsaRxCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the Rx count of new link-state advertisement(LSA)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup4 { - description "Provider Group"; + // New LSA Tx count + leaf newLsaTxCnt { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_Counter32; + description "Holds the Tx count of new link-state advertisement(LSA)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup5 { - description "Provider Group"; + // Area Border Router Status + leaf areaBdrRtr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_AreaBdrRtr; + description "Status of Area Border Router(ABR)"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup6 { - description "Provider Group"; + // ASBR Router Status + leaf asBdrRtr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type ospf_ASBdrRtr; + description "Holds the status of Autonomous System Boundary Router(ASBR)"; } + } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup7 { - description "Provider Group"; + grouping ospf_Gr-group { + description "Object holding per OSPF VRF graceful restart information"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aaa:Config - // Type is an MO-Defined-Type - leaf providerGroup8 { - description "Provider Group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_ProviderGroupName; + type naming_Descr; + description "Description of the specified attribute"; } - leaf errEn { + + // Graceful restart controls + leaf ctrl { + + type ospf_GrCtrl; + description "Graceful restart controls like planned, complete and disabled state"; + } + leaf helper { type boolean; default "true"; + description "Graceful restart helper mode"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf authProtocol { - description "Authentication Protocol"; + // Graceful restart period + leaf gracePeriod { - // Type is an MO-Defined-Type - type aaa_authenticationProtocol; + type ospf_GrPeriod; + description "Graceful restart period in seconds starting from 5 to 1800"; } + } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf fallback { - description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + grouping ospf_If-group { + description "Object holds OSPF information that is operated at interface level"; - // Type is an MO-Defined-Type - type aaa_Boolean; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf local { - description "Use local username authentication"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type naming_Descr1024; + description "Description"; } - // Inherited From aaa:AuthConfig - // Type is an MO-Defined-Type - leaf none { - description "No authentication"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type aaa_Boolean; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // MO representing the Default Authentication configuration for - // all logins - container defaultauth-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=defaultauth - // Acquired From Package aaa - uses aaa_DefaultAuth-group; + type nw_IfAdminSt; + description "Admin State"; } - // MO representing the Authentication configuration for Console - // Login - container consoleauth-items { + // Interface controls + leaf ctrl { - // Added containment as a singleton: Prefix=consoleauth - // Acquired From Package aaa - uses aaa_ConsoleAuth-group; + type ospf_IfControl; + description "Interface controls can be MTU ignore, Advertise subnet"; } - } - - grouping aaa_PreLoginBanner-group { - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Passive interface control + leaf passiveCtrl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_PassiveControl; + description "Passive interface control. Interface can be configured as passive or non-passive"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // BFD control + leaf bfdCtrl { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_BfdControl; + description "Bidirectional Forwarding Detection (BFD) control"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Network type + leaf nwT { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_NwT; + description "Holds the network type as point2point or broadcast"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Priority, used in determining the designated router on + // this network + leaf prio { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_DesigPrio; + description "Priority, used in determining the designated router on this network"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->message - // Type is an MO-Defined-Type - leaf message { - description "Login Banner Message"; + // Cost of the interface + leaf cost { - // Type is an MO-Defined-Type - type aaa_BannerMsg; + type ospf_IfCost; + description "Cost of the interface ranging from 0 to 65535"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->guiMessage - // Type is an MO-Defined-Type - leaf guiMessage { - description "Login GUI Message"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf xmitDelay { - // Type is an MO-Defined-Type - type aaa_BannerMsg; + type ospf_XmitDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Inherited From aaa:Banner - // Modified by Override: aaa:PreLoginBanner->delimiter - // Type is an MO-Defined-Type - leaf delimiter { - description "Delimiter character"; + // Area to which this interface belongs to + leaf area { - // Type is an MO-Defined-Type - type aaa_Delimiter; + type ospf_AreaId; + description "Area to which this interface belongs to"; + } + leaf advertiseSecondaries { + type boolean; + default "true"; + description "Advertise secondary IP addresses"; } - // Rel-def target from preLoginBanner - // Inherited From aaa:PreLoginBanner - container rtpreLoginBanner-items { + // Node Flag, determines if prefix attribute + // should have the node flag or not + leaf nodeFlag { - // Added containment as a singleton: Prefix=rtpreLoginBanner - // Acquired From Package aaa - uses aaa_RtPreLoginBanner_target-group; + type ospf_FlagStatus; + description "Node flag, determines if prefix attribute should have the node flag or not"; } - } - - grouping aaa_RemoteUser-group { - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUser->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Operational state + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_IfOperSt; + description "Operational state of the interface"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Operational failed state qualifier + leaf failStQual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_FailStQual; + description "Operational failed state qualifier"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Interface type + leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_IfType; + description "Type of the interface, loopback, p2p, p2mp, nbma, bcast etc."; } - // From Interface naming:Described - // Inherited From pol:Def - // Modified by Override: aaa:RemoteUser->descr - // Type is an MO-Defined-Type - leaf descr { + // Flags + leaf flags { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_IfFlags; + description "Interface flags, Admin up or Proto up"; } - container userdomain-items { - list RemoteUserDomain-list { - config "false"; - key "name"; - - // Added containment: Prefix=userdomain - // Acquired From Package aaa - uses aaa_RemoteUserDomain-group; - } + leaf addr { + config "false"; + type address_Ip; + description "Interface IPv4 address"; } - } - - grouping aaa_RemoteUserDomain-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUserDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + leaf dr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type address_Ip; + description "Designated router(DR) IP address"; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + leaf bdr { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + type address_Ip; + description "Backup designated router(BDR) Ip address"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Designated router id + leaf drId { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ip_RtrId; + description "Designated router(DR) identifier"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // Backup designated router id + leaf bdrId { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - container role-items { - list RemoteUserRole-list { - config "false"; - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_RemoteUserRole-group; - } + type ip_RtrId; + description "Backup designated router (BDR) identifier"; } - } - grouping aaa_RemoteUserRole-group { - - // Type is an MO-Defined-Type - leaf privType { + // LSA checksum sum + leaf lsaCksumSum { config "false"; - description "Privilege Type"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_LsaCksumSum; + description " Link-state advertisement(LSA) checksum sum"; } - // Inherited From pol:Obj - // Modified by Override: aaa:RemoteUserRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { + // Operational Cost + leaf operCost { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_IfCost; + description "Operational cost of interface"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Operational Dead interval + leaf operDeadIntvl { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_DeadIntvl; + description "Interface operational dead interval"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Operational SID value for this interface + leaf operSidIndex { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_SidIndex; + description "Operational Segment-Routing prefix SID value. It is relative value to SRBG start."; + } + leaf sgmntRtgMplsEllLsid { + config "false"; + type address_Ip; + description "Segment Routing MPLS Extended Link LSA Link State ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // Explicit-NULL + leaf explicitNull { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Active; + description "Holds the Explicit-NULL state as active or not active"; } - } - grouping aaa_User-group { - - // The user's first name - // Type is an MO-Defined-Type - leaf firstName { - description "First Name"; + // Hello interval, interval between hello packets that + // OSPF sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..32"; - } + type ospf_HelloIntvl; + description "Hello interval, interval between hello packets that OSPF sends on the interface"; } - // The user's last name - // Type is an MO-Defined-Type - leaf lastName { - description "Last Name"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..32"; - } + type ospf_DeadIntvl; + description "Dead interval, interval after which router declares that neighbor as down"; } - // The user's e-mail address - // Type is an MO-Defined-Type - leaf email { - description "Email Address"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf rexmitIntvl { - // Type is an MO-Defined-Type - type aaa_Email; + type ospf_RexmitIntvl; + description "Retransmit interval, time between LSA retransmissions"; } - // The user's phone number - // Type is an MO-Defined-Type - leaf phone { - description "Phone Number"; + // This object holds OSPF neighbor information + container adj-items { + list AdjEp-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type aaa_Phone; + uses ospf_AdjEp-group; + description "This object holds OSPF adjacency information list"; + } + description "This object holds OSPF adjacency information"; } - // The expiration date of this account - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf expiration { - description "Account Expiration Date"; + // This object holds authentication policy information + container auth-items { - // Type is a Local-MO-Defined-Type - type aaa_Date_User_expiration; + uses ospf_AuthP-group; + description "This object holds authentication policy information"; } - // A boolean value indicating whether this account has an expiration date or not - // Type is an MO-Defined-Type - leaf expires { - description "Expiration Set Status"; + // This object holds authentication new policy information + container authnew-items { - // Type is an MO-Defined-Type - type aaa_Boolean; + uses ospf_AuthNewP-group; + description "This object holds authentication new policy information"; } - // Type is an MO-Defined-Type - leaf allowExpired { - description "Allow expired user to be configured"; + // OSPF databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type aaa_Boolean; + uses ospf_Db-group; + description "This object holds OSPF link state databases (LSDB) list"; + } + description "This object holds OSPF link state databases (LSDB)"; } - // Type is an MO-Defined-Type - leaf accountStatus { - description "Account Status"; + // This object holds the OSPF interface related statistics + container ifstats-items { - // Type is an MO-Defined-Type - type aaa_AccountStatus; + uses ospf_IfStats-group; + description "Object holds the OSPF interface related Statistics"; } - // Type is an MO-Defined-Type - leaf pwd { - description "Password"; + // This object holds multi-area information + // at a interface level + container multiarea-items { + list MultiArea-list { + key "multiareaid"; - // Type is an MO-Defined-Type - type aaa_Passwd; + uses ospf_MultiArea-group; + description "This object holds multi-area information operated at interface level list"; + } + description "This object holds multi-area information operated at interface level"; } - // Type is an MO-Defined-Type - leaf encPwd { - config "false"; - description "BI encrypted password"; + // This object holds the OSPF traffic related information + container trstats-items { - // Type is an MO-Defined-Type - type aaa_EncryptedArray; + uses ospf_TrafficStats-group; + description "This object holds the OSPF traffic related information"; } - // Type is an MO-Defined-Type - leaf pwdLen { - config "false"; - description "Length of user password"; + container rtospfIfDefToOspfIf-items { - // Type is an MO-Defined-Type - type aaa_PwdLen; - } - leaf pwdSet { - config "false"; - type boolean; - default "true"; + list RtOspfIfDefToOspfIf-list { + config "false"; + key "tDn"; + + uses ospf_RtOspfIfDefToOspfIf_target-group; + } } - // Type is an MO-Defined-Type - leaf pwdEncryptType { - description "Password Encryption Type"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type aaa_KeyEncUserPass; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } + + grouping ospf_AuthP-group { + description "This object holds authentication policy information"; - // Adding a property to hold the old value - // Type is an MO-Defined-Type - leaf oldPwdEncryptType { + // Authentication type + leaf type { config "false"; - description "Old Password Encryption Type"; - // Type is an MO-Defined-Type - type aaa_KeyEncUserPass; + type ospf_AuthT; + description "Authentication types can be simple, md5 or none."; } - // Type is an MO-Defined-Type - leaf isSnmpNotify { + // Authentication key id + leaf keyId { config "false"; - description "Notify to snmp"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_AuthKeyId; + description "Key id used for authentication"; } - // Type is an MO-Defined-Type - leaf pwdLifeTime { - description "Password Life Time"; + // Authentication key + leaf key { + config "false"; - // Type is an MO-Defined-Type - type aaa_PwdLifeTime; + type ospf_AuthKey; + description "Key used for authenticatoin"; } - // This is to allow the admin/aaa users to clear - // locally-authenticated users's password history - // Type is an MO-Defined-Type - leaf clearPwdHistory { - description "Clear Password History"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_Clear; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf unixUserId { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_UnixUID; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inherited From pol:Obj - // Modified by Override: aaa:User->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping ospf_IfStats-group { + description "Object holds the OSPF interface related Statistics"; - // Type is an MO-Defined-Type - type naming_Name256 { + // If events count + leaf evCnt { + config "false"; - // Copied from "aaa:UserName" type - length "0..64"; - } + type ospf_Counter32; + description "Interface events count"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // LSA count + leaf lsaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state advertisement(LSA) count"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Neighbor count + leaf peerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Holds the count of peers/neighbors"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flood to neighbor count + leaf floodToPeerCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Flood to neighbor count"; } - container sshauth-items { + // Number of adjacency + leaf adjCnt { + config "false"; - // Added containment as a singleton: Prefix=sshauth - // Acquired From Package aaa - uses aaa_SshAuth-group; + type ospf_Counter32; + description "Holds the count of adjacency"; } - container usercert-items { - list UserCert-list { - key "name"; - // Added containment: Prefix=usercert - // Acquired From Package aaa - uses aaa_UserCert-group; - } - } - container userdomain-items { - list UserDomain-list { - key "name"; + // Number of peers in hitless helper mode + leaf grHelperPeerCnt { + config "false"; - // Added containment: Prefix=userdomain - // Acquired From Package aaa - uses aaa_UserDomain-group; - } + type ospf_Counter32; + description "Number of peers in GR hitless helper mode"; } + } - // Do not taking backup of this MO, this user data become invalid - // with time - container userdata-items { + grouping ospf_MultiArea-group { + description "This object holds multi-area information operated at interface level"; - // Added containment as a singleton: Prefix=userdata - // Acquired From Package aaa - uses aaa_UserData-group; + // Multi Area id + leaf multiareaid { + + type ospf_AreaId; + description "Holds multi area identifier (ID)"; } } - grouping aaa_SshAuth-group { + grouping ospf_TrafficStats-group { + description "This object holds the OSPF traffic related information"; - // Type is an MO-Defined-Type - leaf data { - description "Ssh Authorization Data"; + // Total packets received + leaf totalPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type aaa_SshData; + type ospf_Counter32; + description "Total number of packets received"; } - leaf fingerprint { + + // Hello packets received + leaf helloPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Total number of hello packets received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:SshAuth->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Database description packets received + leaf dbdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Database description packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Link-state request packets received + leaf lsReqPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state request packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Link-state update packets received + leaf lsUpdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Link-state update packets received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Link-state ack packets received + leaf lsAckPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Link-state ACK packets received"; } - } - - grouping aaa_UserCert-group { - // Type is an MO-Defined-Type - leaf data { - description "User X509 Certificate"; + // Received packets dropped + leaf rcvdPktsDropped { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Count of received packets dropped"; } - leaf fingerprint { + + // Error packets rcvd + leaf errPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Count of Error packets received"; } - // Populated with the output of openssl output of the x509 certificate analysis - // Type is an MO-Defined-Type - leaf certificateDecodeInformation { + // Error hello packets received + leaf errHelloPktsRcvd { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Number of Error hello packets received"; } - // Populated with the PEM format public key extracted from the x509 certificate - // Type is an MO-Defined-Type - leaf publicKey { + // Error database description packets received + leaf errDbdPktsRcvd { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type aaa_UserCertDataType; + type ospf_Counter32; + description "Error database description packets received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Error link-state request packets received + leaf errLsReqPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Error link-state request packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Error link-state update packets received + leaf errLsUpdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Error link-state update packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Error link-state ack packets received + leaf errLsAckPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Error LSACK Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Unknown packets received + leaf unknownPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Count of unknown packets received"; } - } - grouping aaa_UserDomain-group { - - // Inherited From pol:Obj - // Modified by Override: aaa:UserDomain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Duplicate routerid packets received + leaf dupRtrIdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Duplicate router-id packets received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Duplicate source addr packets received + leaf dupSrcAddrPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Duplicate source address packets received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Wrong area packets received + leaf wrongAreaPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Wrong Area Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Invalid source addr packets received + leaf invalidSrcAddrPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Invalid Source Addr Packets Received"; } - container role-items { - list UserRole-list { - key "name"; - // Added containment: Prefix=role - // Acquired From Package aaa - uses aaa_UserRole-group; - } - } - } + // Invalid destination addr packets received + leaf invalidDestAddrPktsRcvd { + config "false"; - grouping aaa_UserRole-group { + type ospf_Counter32; + description "Invalid Destination Addr Packets Received"; + } - // Type is an MO-Defined-Type - leaf privType { - description "Privilege Type"; + // Bad CRC packets received + leaf badCRCPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_Counter32; + description "Bad CRC Packets Received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:UserRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Bad version packets received + leaf badVersionPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Bad Version Packets Received"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Bad reserved fields packets received + leaf badResvFieldPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Bad Reserved Field Packets Received"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Changed neighbor routerId or ip address packets received + leaf peerRtrIdChgdPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Peer RouterId Changed Packets Received"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Non hello received packets for which neighbor is not found + leaf peerNotFoundPktsRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Peer Not Found Packets Received"; } - } - grouping aaa_UserData-group { - leaf pwdChangedDate { + // Authentication failed packets received + leaf badAuthPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "Bad Authentication Packets Received"; } - // User password history, stores encrypted passwords - // max of PwdProfile.historyCount recent passwords are stored - // Type is an MO-Defined-Type - leaf pwdHistory { + // Bad length packets received + leaf badLenPktsRcvd { config "false"; - description "Password History"; - // Type is an MO-Defined-Type - type aaa_PwdHistory; + type ospf_Counter32; + description "Bad Length Packets Received"; } - // How many times user has changed the password within - // the given time interval - // (pwdChangeIntervalBegin + PwdProfile.changeInterval) - // Type is an MO-Defined-Type - leaf pwdChangeCount { + // Packets received on passive interface + leaf passiveIntfPktsRcvd { config "false"; - description "Password Change Count"; - // Type is an MO-Defined-Type - type aaa_PwdChangeCount; + type ospf_Counter32; + description "Passive Interface Packets Received"; } - leaf pwdChangeIntervalBegin { + + // Packets received on OSPF not enabled interface + leaf noOspfIntfPktsRcvd { config "false"; - type string; + + type ospf_Counter32; + description "No OSPF Interface Packets Received"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Received LSA packets ignored + leaf rcvdLsaPktsIgnored { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Received LSA Packets Ignored"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Number of LSA packets dropped during SPF run + leaf droppedLsaPktsWhileSPF { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "LSA Packets Dropped During SPF"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Number of LSA packets dropped during graceful restart + leaf droppedLsaPktsWhileGR { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "LSA Packets Dropped During GR"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Total packets sent + leaf totalPktsSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Total number of packets sent"; } - } - grouping aaa_Role-group { - - // Type is an MO-Defined-Type - leaf denyVRF { - description "Deny all VRF except allowed ones"; + // Hello packets sent + leaf helloPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Total number of hello packets sent"; } - // Type is an MO-Defined-Type - leaf allowedVRF { - description "mention the allowed VRF if denyVRF is set to yes"; + // Database description packets sent + leaf dbdPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_Counter32; + description "Database description packets sent"; } - // Type is an MO-Defined-Type - leaf denyVLAN { - description "Deny all VLAN except allowed ones"; + // Link-state request packets sent + leaf lsReqPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Link-state request packets sent"; } - // Type is an MO-Defined-Type - leaf allowedVLAN { - description "mention the allowed VLAN if denyVLAN is set to yes"; + // Link-state update packets sent + leaf lsUpdPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_Counter32; + description "Link-state update packets sent"; } - // Type is an MO-Defined-Type - leaf denyIntf { - description "Deny all interfaces except allowed ones"; + // Link-state ack packets sent + leaf lsAckPktsSent { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; - } - leaf priv { - type string; + type ospf_Counter32; + description "Link-state ACK packets sent"; } - // Type is an MO-Defined-Type - leaf rolePrivType { - description "Privilege Type"; + // Dropped send packets + leaf droppedSendPkts { + config "false"; - // Type is an MO-Defined-Type - type aaa_UserRolePrivType; + type ospf_Counter32; + description "Total number of dropped send packets"; } - // Type is an MO-Defined-Type - leaf roleIsBuiltin { + // Error send packets + leaf errSendPkts { config "false"; - description "Role is Built-in"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Total number of error send packets"; } - // Type is an MO-Defined-Type - leaf resetToFactory { - description "Trigger Reset to Factory settings"; + // Number of first transmission of LSU packets + leaf lsuFirstTxPkts { + config "false"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_Counter32; + description "Number of first transmission of LSU packets"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Role->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of retransmissions of LSU packets + leaf lsuRexmitPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_Counter32; + description "Number of retransmissions of LSU packets"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Number of LSU packets sent in response to LSREQ packets + leaf lsuForLsreqPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Number of LSU packets sent in response to LSREQ packets"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Number of LSU packets sent to a neighbor specifically + leaf lsuPeerTxPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_Counter32; + description "Number of LSU packets sent to a neighbor specifically"; } - // From Interface naming:Described - // Inherited From pol:Def - // Modified by Override: aaa:Role->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Number of times flooding packets dropped due to IP queue throttling + leaf floodPktSendIpThrottle { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Counter32; + description "Number of times flooding packets dropped due to IP queue throttling"; } - container rule-items { - list RoleRule-list { - key "ruleNumber"; - // Added containment: Prefix=rule - // Acquired From Package aaa - uses aaa_RoleRule-group; - } - } - container intf-items { - list RoleIntf-list { - key "intfName"; + // Number of times flooding packets dropped due to token throttling + leaf floodPktSendTokenThrottle { + config "false"; - // Added containment: Prefix=intf - // Acquired From Package aaa - uses aaa_RoleIntf-group; + type ospf_Counter32; + description "Number of times flooding packets dropped due to token throttling"; + } + leaf lastStatsClearTs { + config "false"; + type union { + type string; + type uint64; } + description "Last traffic statistics clear timestamp"; } } - grouping aaa_RoleRule-group { + grouping ospf_MaxLsaP-group { + description "Max-LSA(Link State Advertisement) Database overflow for each domain or VRF"; - // Type is an MO-Defined-Type - leaf ruleNumber { - description "Role Rule number"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_RuleNumberType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf permission { - description "Permission type permit or deny"; + leaf descr { - // Type is an MO-Defined-Type - type aaa_RulePermissionType; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf ruleAccess { - description "Rule access type command or read or read-write"; + // maximum number of non self-generated LSAs + leaf maxLsa { - // Type is an MO-Defined-Type - type aaa_RuleAccessType; + type ospf_MaxLsa; + description "Maximum number of non self-generated LSAs"; } - // Type is an MO-Defined-Type - leaf ruleScope { - description "Role Rule scope feature or feature-group or OID"; + // Threshold value (%) at which to generate a warning message + leaf thresh { - // Type is an MO-Defined-Type - type aaa_RuleScopeType; + type ospf_MaxLsaThresh; + description "Max LSA threshold value (%) at which to generate a warning message"; } - // Type is an MO-Defined-Type - leaf cmdStr { - description "Allowed command string pattern"; + // Specifies the number of times the OSPF process can + // consecutively be placed into the sleep state. + leaf sleepCnt { - // Type is an MO-Defined-Type - type aaa_RuleCmdStrType; + type ospf_SleepCnt; + description "Specifies the number of times the OSPF process can consecutively be placed into the sleep state"; } - // Type is an MO-Defined-Type - leaf scopeEntity { - description "Allowed scope string"; + // Specifies the time (in minutes) to ignore all neighbors after + // the maximum limit of LSAs has been exceeded + leaf sleepIntvl { - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_SleepIntvl; + description "Specifies time interval(in minutes) to ignore all neighbors after the maximum limit of LSAs has been exceeded"; } - } - grouping aaa_RoleIntf-group { - leaf intfName { - type string; + // Specifies the time, in minutes, after which the + // sleep count is reset to zero. + leaf resetIntvl { + + type ospf_ResetIntvl; + description "Specifies the time, in minutes, after which the sleep count reset to zero"; } - // Type is an MO-Defined-Type - leaf allowInst { - description "interface instances which can be allowed and deny rest"; + leaf action { - // Type is an MO-Defined-Type - type aaa_RuleEntityType; + type ospf_MaxLsaAct; + description "Specifies the Max LSA action"; } - } - grouping aaa_FactoryRole-group { - leaf priv { + leaf operSt { config "false"; - type string; - } - - // Type is an MO-Defined-Type - leaf resetToFactory { - description "Trigger Reset to Factory settings"; - // Type is an MO-Defined-Type - type aaa_Boolean; + type ospf_MaxLsaOperSt; + description "Operational state of max LSA"; } - // Inherited From pol:Obj - // Modified by Override: aaa:FactoryRole->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operStQual { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_MaxLsaOperStQual; + description "Operational state qualifier for max LSA"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf nonSelfLsaCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_NonSelfLsaCnt; + description "Current number of non self-generated LSAs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf currSleepCnt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_CurrSleepCnt; + description "Current number of sleep LSAs"; } + } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping ospf_MaxMetricLsaP-group { + description "Max-Metric Link State Advertisement information per Domain/VRF"; - // Type is an MO-Defined-Type - type naming_Descr; - } - } + // Max metric controls - specifies when to send max + // metric LSAs and for which routes/links + leaf ctrl { - grouping aaa_Domain-group { + type ospf_MaxMetricControl; + description "Maximum Metric Controls - specifies when to send max-metric LSAs"; + } - // Inherited From pol:Obj - // Modified by Override: aaa:Domain->name - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Max metric value to be used for external LSAs + leaf maxMetricExtLsa { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ospf_MaxMetric; + description "Maximum metric value for external LSAs"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Max metric value to be used for summary LSAs + leaf maxMetricSummLsa { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_MaxMetric; + description "Maximum metric value for summary LSAs"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Time (in secs) for which max metric should be advertised + // at startup + leaf startupIntvl { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type ospf_StartupIntvl; + description "Time (in secs) for which max metric should be advertised at startup"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // At startup, advertise max metric until convergence of BGP ASN + leaf awaitConvBgpAsn { - // Type is an MO-Defined-Type - type naming_Descr; + type rtleak_Asn; + description "At startup, advertise max metric until convergence of BGP ASN"; } } - grouping aaa_PwdProfile-group { + grouping ospf_InterLeakP-group { + description "This defines distribution of routes from other protocols to OSPF"; - // Interval used to warn the users whose password is closed - // to expiry date. warn the user before expirationWarnTime - // days of actual password expiration. - // Type is an MO-Defined-Type - leaf expirationWarnTime { - description "Password Expiration Warn Time in Days"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type aaa_PwdExpWarnTime; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // How many recent user passwords should be stored in user - // password history. - // Type is an MO-Defined-Type - leaf historyCount { - description "Password History Count"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type aaa_HistoryDepth; + type naming_Descr; + description "Description of the specified attribute"; } - // There are two ways of restricting the user from changing - // the password frequently. - // 1. allow no passwd changes within given time interval. - // 2. allow max of n psswd changes within give time interval. - // noChangeInterval holds the 1st policy mentioned above - // Type is an MO-Defined-Type - leaf noChangeInterval { - description "No Password Change Interval in Hours"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type aaa_PwdChangeInterval; + type rtleak_Scope; + default "inter"; + description "Scope"; } - - // ChangeInterval holds the 2nd policy mentioned above - // Type is an MO-Defined-Type - leaf changeInterval { - description "Change Interval in Hours"; - - // Type is an MO-Defined-Type - type aaa_PwdChangeInterval; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; + } + description "Route-map for Inter protocol route leak"; } - // stores which one of the above two policies is active now - // Type is an MO-Defined-Type - leaf changeDuringInterval { - description "Password Policy"; + // Protocol from where the routes are leaked + leaf proto { - // Type is an MO-Defined-Type - type aaa_PwdPolicy; + type rtleak_Proto; + description "Protocol"; } - // How many password changes allowed within changeInterval - // Type is an MO-Defined-Type - leaf changeCount { - description "Number of Password Changes in Interval"; + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // Type is an MO-Defined-Type - type aaa_PwdChangeCount; + type rtleak_Inst; + description "Instance"; } - // Inherited From pol:Obj - // Modified by Override: aaa:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } + description "Autonomous System Number"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // DefRtLeak always advertise + leaf always { - // Type is an MO-Defined-Type - type naming_Descr; + type ospf_Always; + description "Always advertise default route leak"; } } - grouping pki_Ep-group { + grouping ospf_LeakCtrlP-group { + description "Leak controls related to the number of routes leaked"; - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type rtleak_Ctrl; + description "Controls"; } - container webtokendata-items { + // Maximum limit on routes leaked + leaf max { - // Added containment as a singleton: Prefix=webtokendata - // Acquired From Package pki - uses pki_WebTokenData-group; + type rtleak_MaxPfx; + description "Maximum Limit"; } - // Csync2 Pre Shared Key - used to distribute the key to all IFC nodes - container csyncsharedkey-items { + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { - // Added containment as a singleton: Prefix=csyncsharedkey - // Acquired From Package pki - uses pki_CsyncSharedKey-group; + type rtleak_Thresh; + description "Threshold"; } - // Csync2 Policy - used to control csync timeout and enable/disable - container csyncpolicy-items { + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { - // Added containment as a singleton: Prefix=csyncpolicy - // Acquired From Package pki - uses pki_CsyncPolicy-group; + type rtleak_Retries; + description "Retries"; } - container dbgplgch-items { + // Duration between the retries + leaf duration { - // Added containment as a singleton: Prefix=dbgplgch - // Acquired From Package pki - uses pki_DebugPluginChallenge-group; + type rtleak_Duration; + description "Duration"; } - container keyring-items { - list KeyRing-list { - key "name"; + } - // Added containment: Prefix=keyring - // Acquired From Package pki - uses pki_KeyRing-group; + grouping ospf_RibLeakP-group { + description "OSPF to Route Information Base(RIB) Route Leak/distribution Policy Per Domain or VRF"; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Route map used in distribution of routes"; } - // CertificateAuthority object, also called Trust Points in DCOS - container tp-items { - list TP-list { - key "name"; + // If always is set to false, only routes that are permitted + // by the route map(rtMap) configuration are downloaded to the + // routing information base (RIB). + leaf always { - // Added containment: Prefix=tp - // Acquired From Package pki - uses pki_TP-group; - } + type rtleak_Always; + description "Filter routes into RIB"; } + } - // Rel-def target from resPkiEp - // Inherited From pki:Ep - container rtfabricResPkiEp-items { + grouping ospf_ExtRtSum-group { + description "External Route Summarization on ASBRs that are Leaking Routes into OSPF"; - // Abstract containment of rtfabricResPkiEp derived from pki:Ep - list RtFabricResPkiEp-list { - config "false"; - key "tDn"; + leaf name { + config "false"; - // Added containment: Prefix=rtfabricResPkiEp - // Acquired From Package fabric - uses fabric_RtFabricResPkiEp_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping pki_WebTokenData-group { - - // The encryption parameters cannot be modified by a client request - // Type is an MO-Defined-Type - leaf key { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_AES128Key { - length "24"; - } + type naming_Descr; + description "Description of the specified attribute"; + } + leaf addr { + type address_Ip; + description "Address"; } - // Type is an MO-Defined-Type - leaf initializationVector { - config "false"; - description "TBD"; + // Summary address no Advertise + leaf ctrl { - // Type is an MO-Defined-Type - type pki_AES128IV { - length "24"; - } + type ospf_SumControl; + description "Summary address no advertise"; } - // Type is an MO-Defined-Type - leaf hashSecret { + // Number of component routes + leaf compRtCnt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_SHA256_SharedSecret16 { - length "24"; - } + type nw_Counter32; + description "Number of component routes"; } - // Token timeout modifications are allowed - // Type is an MO-Defined-Type - leaf webtokenTimeoutSeconds { - description "Timeout in Seconds"; + // Route summary cost + leaf operCost { + config "false"; - // Type is an MO-Defined-Type - type pki_WebTokenTimeoutType; + type ospf_SumCost; + description "Route summary operational cost"; } - // Knob to control absolute maximum validity period for a webtoken beyond which it cannot be refreshed Units are in hours - minimum 4 hours, maximum 24 hours - // Type is an MO-Defined-Type - leaf maximumValidityPeriod { - description "Maximum Validity Period in hours"; + // Summary address tag + leaf tag { - // Type is an MO-Defined-Type - type pki_WebTokenValidityPeriodType; + type ospf_RtTag; + description "Route tag of external route"; } + } - // Type is an MO-Defined-Type - leaf uiIdleTimeoutSeconds { - description "GUI Idle Timeout in Seconds"; + grouping ospf_EventLogs-group { + description "Object holding the size of the Logfiles for various types of OSPF events "; - // Type is an MO-Defined-Type - type pki_GuiIdleTimeoutType; + // Event LogType + leaf eventType { + + type ospf_EventType; + description "Holds the type of event logging"; } - // Type is an MO-Defined-Type - leaf sessionRecordFlags { - description "Session Recording Options"; + // Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type pki_SessionRecordFlags; + type ospf_EventLogSize; + description "Holds the size of event logging"; } - leaf siteFingerprint { - config "false"; - type string; + + // Event Log size in bytes + leaf logSizeKBytes { + + type ospf_EventLogSizeKBytes; + description "Event Log Size in KBytes"; } + } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping rtctrl_L2Evpn-group { + description "L2EVPN Entity"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // This object holds Bridge Domain + // Ethernet VPN instance information + container bdevi-items { + list BDEvi-list { + key "encap"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses rtctrl_BDEvi-group; + description "Bridge Domain Ethernet VPN Instance list"; } + description "Bridge Domain Ethernet VPN Instance"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container encap_mpls-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nvo_EncapMpls-group; + description "Configuration of MPLS-based segment routing encapsulation"; } } - grouping pki_CsyncSharedKey-group { - - // The encryption parameters cannot be modified by any client requests - // Type is an MO-Defined-Type - leaf key { + grouping rtctrl_BDEvi-group { + description "Bridge Domain Ethernet VPN Instance"; + leaf operRd { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type pki_Csync2KeyType; + type mtx_array_community; + description "Operational Route Distinguisher"; } - - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf tblMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route-map name for table-map command to filter routes."; } - - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf tblMapFltr { + type boolean; + description "Filter option used with table-map configuration for selective route download."; } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; + } + leaf encap { + type string; + description "Encapsulation"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Route policy holds all route policy entries and route controls + container rttp-items { + list RttP-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_RttP-group; + description "Route Policy list"; + } + description "Route Policy"; } } - grouping pki_CsyncPolicy-group { - - // Type is an MO-Defined-Type - leaf state { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_CsyncActivationStateType; + grouping rtctrl_RttP-group { + description "Route Policy"; + leaf operRttAuto { + config "false"; + type mtx_array_community; + description "Operational Route Target Import Auto Evpn"; } - // Type is an MO-Defined-Type - leaf interval { - description "TBD"; + // Type + leaf type { - // Type is an MO-Defined-Type - type pki_CsyncRefreshIntervalType; + type rtctrl_RttPType; + description "Type"; } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of route policy entries + container ent-items { + list RttEntry-list { + key "rtt"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses rtctrl_RttEntry-group; + description "Route Entry list"; } + description "Route Entry"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + // Route control map policy for routes imported/exported + // into an AF. Control is through route maps. + container rtctrlmap-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_MapP-group; + description "Route Control Map Policy"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + // Route control map policy for routes imported/exported + // into an AF in the default VRF. Control is through route maps. + container rtctrldefmap-items { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + uses rtctrl_DomDefMapP-group; + description "Route Control Map Policy for the default VRF"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Route control policy for routes imported/exported + // into an AF in the non-default VRF + container rtctrlnondef-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses rtctrl_DomNonDefP-group; + description "Route Control Policy for the non-default VRF"; } + } - // Csync2 Element - contains - // a) file pattern - // b) type of pattern (include or exclude) - // c) symbolic name of the pattern - container csyncelem-items { - list CsyncElement-list { - key "name"; + grouping rtctrl_RttEntry-group { + description "Route Entry"; + leaf rtt { + type mtx_array_community; + description "Route Target"; + } + } - // Added containment: Prefix=csyncelem - // Acquired From Package pki - uses pki_CsyncElement-group; + grouping rtctrl_MapP-group { + description "Route Control Map Policy"; + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } - grouping pki_CsyncElement-group { - leaf pattern { - type string; + grouping rtctrl_DomDefMapP-group { + description "Route Control Map Policy for the default VRF"; + leaf pfxLimit { + type uint32 { + range "0..2147483647"; + } + default "0"; + description "Default Vrf Prefix Limit"; } - - // Type is an MO-Defined-Type - leaf type { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_CsyncElementType; + leaf allowVpn { + type boolean; + description "Allow VPN to be considered for route leaking"; } - - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf advtVpn { + type boolean; + description "Allow leaked routes to be advertised to VPN"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping rtctrl_DomNonDefP-group { + description "Route Control Policy for the non-default VRF"; + leaf allowVpn { + type boolean; + description "Allow VPN to be considered for route leaking"; } + leaf advtVpn { + type boolean; + description "Allow leaked routes to be advertised to VPN"; + } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + grouping nvo_EncapMpls-group { + description "Configuration of MPLS-based segment routing encapsulation"; + leaf encapCfg { + type boolean; + description "Enable/disable segment routing encapsulation"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf sourceIf { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Source interface associated with segment routing encapsulation."; + } + leaf operPrimaryIp { + config "false"; + type address_Ip; + description "Indicates primary IP address of source interface."; + } + leaf operSecondaryIp { + config "false"; + type address_Ip; + description "Indicates secondary IP address of source interface."; + } + leaf operFlags { + config "false"; + type uint32; + description "Indicates internal operational flags set"; } - } - - grouping pki_DebugPluginChallenge-group { - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operSmSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nvo_SrStateT; + description "Indicates operational FSM state"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf operEncapT { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nvo_MplsEncapT; + description "Indicates encapsulation type"; + } + leaf operDownReason { + config "false"; + type string; + description "Indicates the reason the encapsulation is down (if applicable)."; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + grouping comm_Entity-group { + description "Communication Entity"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + container ssh-items { + + uses comm_Ssh-group; + description "Ssh Service"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container telnet-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses comm_Telnet-group; + description "Telnet Service"; } } - grouping pki_KeyRing-group { - - // Type is an MO-Defined-Type - leaf adminState { - description "TBD"; - - // Type is an MO-Defined-Type - type pki_KeyringState; + grouping comm_Ssh-group { + description "Ssh Service"; + leaf loginAttempts { + type uint32 { + range "1..10"; + } + default "3"; + description "Max number of login attempts allowed before SSH session is reset"; } - leaf regen { - type boolean; - default "true"; + leaf loginGraceTime { + type uint32 { + range "0..3600"; + } + default "120"; + description "Maximum grace time of SSH login"; } - // Type is an MO-Defined-Type - leaf key { - description "TBD"; + leaf enWeakCiphers { - // Type is an MO-Defined-Type - type pki_PrivateKey; + type aaa_Boolean; + default "no"; + description "Enable or Disable weak Ciphers"; } - // Type is an MO-Defined-Type - leaf modulus { - description "Modulus"; + leaf keyExchangeAlgorithms { - // Type is an MO-Defined-Type - type pki_Modulus; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Key Exchange methods"; } - // Type is an MO-Defined-Type - leaf cert { - description "Certificate"; + leaf ciphers { - // Type is an MO-Defined-Type - type pki_Cert; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Ciphers"; } - // Type is an MO-Defined-Type - leaf certValidUntil { - config "false"; - description "Certificate Validity"; + leaf messageAuthCodes { - // Type is an MO-Defined-Type - type pki_CertValidity; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Message Authentication Codes"; } - // Populated with the output of openssl output of the x509 certificate analysis - // Type is an MO-Defined-Type - leaf certificateDecodeInformation { - config "false"; - description "Certificate Decode Information"; + leaf keyTypes { - // Type is an MO-Defined-Type - type pki_Cert; + type aaa_Boolean; + default "no"; + description "Enable Or Disable All Public Key Algorithms"; } - // trust point (CA) reference - // DN IS IMPLIED AND RESOLVED PROGRAMATICALLY - // refers="pki:TP" - // Type is an MO-Defined-Type - leaf tp { - description "Certificate Authority"; + // Operational properties + leaf configErrSshPort { + config "false"; - // Type is an MO-Defined-Type - type naming_Name; + type comm_SshPortfaultBitmapT; + default "noerror"; + description "Error for SSH port config."; } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type comm_Port { + range "22..65535"; } + description "Port"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type comm_AdminState; + description "Admin State"; } - container certreq-items { + // need protocol for creating iptable rule + leaf proto { + config "false"; - // Added containment as a singleton: Prefix=certreq - // Acquired From Package pki - uses pki_CertReq-group; + type comm_Protocol; + default "tcp"; + description "TBD"; } + container key-items { + list SshKey-list { + key "type"; - // Rel-def target from KeyRing - // Inherited From pki:KeyRing - container rtcommKeyRing-items { - - // Abstract containment of rtcommKeyRing derived from pki:KeyRing - list RtCommKeyRing-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtcommKeyRing - // Acquired From Package comm - uses comm_RtCommKeyRing_target-group; + uses comm_SshKey-group; + description "Ssh Keys list"; } + description "Ssh Keys"; } - // Rel-def target from keyringRef - // Inherited From pki:KeyRing - container rtaaaKeyringRef-items { + container rekey-items { - // Abstract containment of rtaaaKeyringRef derived from pki:KeyRing - list RtAaaKeyringRef-list { - config "false"; - key "tDn"; + uses comm_Rekey-group; + description "SSH rekey container"; + } - // Added containment: Prefix=rtaaaKeyringRef - // Acquired From Package aaa - uses aaa_RtAaaKeyringRef_target-group; - } + container sshsession-items { + + uses comm_SshSession-group; + description "SSH Session Idle Timeout"; } } - grouping pki_CertReq-group { - leaf pwd { - type string; - } + grouping comm_SshKey-group { + description "Ssh Keys"; - // TODO how to set this value to hostname by default - // Type is an MO-Defined-Type - leaf subjName { - description "Subject Name"; + leaf type { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type comm_SshKeyType; + description "SSH server key type"; + } + leaf keyLen { + type uint32 { + range "0..4096"; } + default "1024"; + description "Length of the key in bytes"; } + } - // Type is an MO-Defined-Type - leaf email { - description "Email Address"; + grouping comm_Rekey-group { + description "SSH rekey container"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..40"; - } + leaf maxData { + + type comm_RekeyDataType; + description "SSH max-data"; } - // Type is an MO-Defined-Type - leaf country { - description "Country"; + leaf maxTime { - // Type is an MO-Defined-Type - type naming_Name { - } + type comm_RekeyDataType; + description "SSH max-time"; } + } - // Type is an MO-Defined-Type - leaf state { - description "State"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + grouping comm_SshSession-group { + description "SSH Session Idle Timeout"; + leaf idleTimeout { + type uint32 { + range "0..120"; } + default "0"; + description "Idle Timeout value in Seconds"; } - - // Type is an MO-Defined-Type - leaf locality { - description "Locality"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf keepAliveCount { + type uint32 { + range "0..5"; } + default "0"; + description "Count of KeepAlive packets to be sent to SSH Client"; } - // Type is an MO-Defined-Type - leaf orgUnitName { - description "Organization Unit Name"; + leaf name { - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf orgName { - description "Organization Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // PEM encoded certificate request - // Type is an MO-Defined-Type - leaf req { - config "false"; - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type pki_Cert; + type comm_Port; + description "Port"; } - } - - grouping pki_TP-group { - // Type is an MO-Defined-Type - leaf certChain { - description "Certificate Chain"; + leaf adminSt { - // Type is an MO-Defined-Type - type pki_Cert; + type comm_AdminState; + description "Admin State"; } - // Certificate Fingerprint populated by backend - // Type is an MO-Defined-Type - leaf fp { + // need protocol for creating iptable rule + leaf proto { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type pki_FP; - } - leaf numCerts { - config "false"; - type uint32; - default "0"; + type comm_Protocol; + default "tcp"; + description "TBD"; } + } - // Inherited From pol:Obj - // Modified by Override: pki:Definition->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + grouping comm_Telnet-group { + description "Telnet Service"; + leaf loginAttempts { + type uint32 { + range "1..10"; } + default "3"; + description "Max number of login attempts allowed before TELNET session is reset"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - description "TBD"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr1024 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; - } - } - - grouping mock_MockRoot-group { - leaf disable { - config "false"; - type boolean; - } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + description "Description of the specified attribute"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + leaf port { - // Type is an MO-Defined-Type - type naming_Descr; + type comm_Port; + description "Port"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type comm_AdminState; + default "disabled"; + description "Admin State"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { + // need protocol for creating iptable rule + leaf proto { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - container session-items { - list MockSession-list { - config "false"; - key "name"; - // Added containment: Prefix=session - // Acquired From Package mock - uses mock_MockSession-group; - } + type comm_Protocol; + default "tcp"; + description "TBD"; } } - grouping mock_MockSession-group { + grouping aaa_UserEp-group { + description "User Management"; - // The DN of the mocked Observable - // Type is an MO-Defined-Type - leaf observable { - config "false"; - description "DN of a Mocked Mo"; + leaf pwdStrengthCheck { - // Type is an MO-Defined-Type - type mock_Observable; + type aaa_Boolean; + description "Password Strength Check"; } - // The duration of the mock operation - // Type is an MO-Defined-Type - leaf duration { - config "false"; - description "Duration of Mock Session "; + leaf pwdSecureMode { - // Type is an MO-Defined-Type - type mock_Duration; + type aaa_Boolean; + description "Password secure-mode"; + } + leaf pwdMinLength { + type uint16; + default "8"; + description "Password min length"; + } + leaf pwdMaxLength { + type uint16; + default "127"; + description "Password max length"; } - // The duration of the mock operation - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mock Session Mode "; + leaf svcPwdRecovery { - // Type is an MO-Defined-Type - type mock_Mode; + type aaa_Boolean; + description "Service Password Recovery"; + } + leaf maxLogins { + type uint32 { + range "0..7"; + } + default "0"; + description "Maximum Simultaneous Logins"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - container stat-items { - list Stats-list { - config "false"; - key "nameSpace statName"; - - // Added containment: Prefix=stat - // Acquired From Package mock - uses mock_Stats-group; - } - } - } - grouping mock_Stats-group { - - // The namespace of the Stats - // Type is an MO-Defined-Type - leaf nameSpace { - config "false"; - description "Stat Namespace "; + container radiusext-items { - // Type is an MO-Defined-Type - type naming_Name; + uses aaa_RadiusEp-group; + description "Default Radius Authentication Settings"; } - // The name of the Stats - // Type is an MO-Defined-Type - leaf statName { - config "false"; - description "Stat Name "; + container ldapext-items { - // Type is an MO-Defined-Type - type naming_Name; + uses aaa_LdapEp-group; + description "Default LDAP Authentication Settings"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container tacacsext-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses aaa_TacacsPlusEp-group; + description "Default TACACS+ Authentication Settings"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + container authrealm-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_AuthRealm-group; + description "AAA Authentication"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + // This MO represents an AAA (accounting/authorization/accounting) + // domain. The AAA configuration can be configured per domain. + container logindomain-items { + list LoginDomain-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses aaa_LoginDomain-group; + description "Login Domain list"; } + description "Login Domain"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This MO represents System login for block with attempts fail values. + container loginprotection-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_LoginProtection-group; + description "Specifies the System login block for attempts and within"; } - container counter-items { - list Counter-list { - config "false"; - key "name"; - // Added containment: Prefix=counter - // Acquired From Package mock - uses mock_Counter-group; - } + // Banner presented to the user post login + container postloginbanner-items { + + uses aaa_PostLoginBanner-group; + description "Post Login Banner"; } - } - grouping mock_Counter-group { - - // The start value of the mocked counter - // Type is an MO-Defined-Type - leaf start { - config "false"; - description "Start Value of Mocked Counter "; + // Banner presented to the user prior to the console, serial and ssh login prompts + container preloginbanner-items { - // Type is an MO-Defined-Type - type mock_Value; + uses aaa_PreLoginBanner-group; + description "Pre Login Banner"; } + container remoteuser-items { + list RemoteUser-list { + key "name"; - // The end value of the mocked counter - // Type is an MO-Defined-Type - leaf end { - config "false"; - description "End Value of Mocked Counter "; - - // Type is an MO-Defined-Type - type mock_Value; + uses aaa_RemoteUser-group; + description "Remote User list"; + } + description "Remote User"; } + container user-items { + list User-list { + key "name"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aaa_User-group; + description "Local User list"; } + description "Local User"; } + container role-items { + list Role-list { + key "name"; - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + uses aaa_Role-group; + description "Role list"; + } + description "Role"; + } + container factoryrole-items { + list FactoryRole-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_FactoryRole-group; + description "Role list"; + } + description "Role"; } + container domain-items { + list Domain-list { + key "name"; - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + uses aaa_Domain-group; + description "Security Domain list"; + } + description "Security Domain"; + } + container privsecret-items { + list PrivSecret-list { + key "privLvl"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + uses aaa_PrivSecret-group; + description "Enable user to a higher privilege after prompting for secret password list"; } + description "Enable user to a higher privilege after prompting for secret password"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This MO stores information about password constratints + // applicable to all the local users. + container pwdprofile-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aaa_PwdProfile-group; + description "Password Change/Expiration Policy"; } - } - - grouping stp_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Role feature-group configuration + container rolefeaturegroup-items { + list RoleFeatureGroup-list { + key "groupName"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses aaa_RoleFeatureGroup-group; + description "Create or Modify role feature group list"; } + description "Create or Modify role feature group"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // PKI config: keyrings and CA certs + container pkiext-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses pki_Ep-group; + description "Public Key Management"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtfabricResUserEp-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + list RtFabricResUserEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResUserEp_target-group; + } } - // This objects hold per stp instance information. There is - // only one instance of stp running in the system today - container inst-items { + container rtaaaUserEp-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package stp - uses stp_Inst-group; + list RtAaaUserEp-list { + config "false"; + key "tDn"; + + uses aaa_RtAaaUserEp_target-group; + } } } - grouping stp_Inst-group { + grouping aaa_RadiusEp-group { + description "Default Radius Authentication Settings"; - // Spanning Tree operating mode - // Type is an MO-Defined-Type - leaf mode { - description "Protocol Mode"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_Mode; + type aaa_TimeMin; + description "Duration for which non-reachable server is skipped"; } - // Linecard ISSU type pathcost options - // Type is an MO-Defined-Type - leaf pathcostOp { - description "Spanning tree pathcost options"; + leaf key { - // Type is an MO-Defined-Type - type stp_PathcostOp; + type aaa_EncKey; + description "Global RADIUS server shared secret"; } - // Enable STP for FCoE VLANs - // Type is an MO-Defined-Type - leaf fcoe { - description "enable spanning tree for fcoe vlan"; + leaf keyEnc { - // Type is an MO-Defined-Type - type stp_AdminSt; + type aaa_KeyEnc; + description "Default key encryption"; } - // Enable spanning tree bridge assurance - // Type is an MO-Defined-Type - leaf bridge { - description "enable spanning-tree bridge assurance on all ports"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type stp_AdminSt; + type aaa_LoggingLevel; + description "Radius Logging level"; } - // spanning tree loopguard options - // Type is an MO-Defined-Type - leaf loopguard { - description "enable loop guard on all ports"; + leaf name { - // Type is an MO-Defined-Type - type stp_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // spanning tree L2 Gateway domain ID - // Type is an MO-Defined-Type - leaf l2GStpDomId { - description "spanning tree L2 Gateway Domain Id"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_L2GStpDomId; + type naming_Descr; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: stp:Inst->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + // add units for timeout. This helps display in CLI + leaf timeout { - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + type aaa_TimeSec; + description "Timeout in Seconds"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + leaf retries { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type aaa_Retries; + description "Retries"; } - // This object holds mcp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Source interface + leaf srcIf { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_If-group; - } + type nw_IfId; + description "Source Interface"; } + container radiusprovider-items { + list RadiusProvider-list { + key "name"; - // Holds mst informaton at switch level - container mstent-items { - - // Added containment as a singleton: Prefix=mstent - // Acquired From Package stp - uses stp_MstEntity-group; + uses aaa_RadiusProvider-group; + description "RADIUS Provider list"; + } + description "RADIUS Provider"; } - // This object holds stp information that is operated at - // vlan level - container vlan-items { - list Vlan-list { - key "id"; + // This MO represents a group of AAA RADIUS servers. + // A member of this group is represented by ProviderRef MO + container radiusprovidergroup-items { + list RadiusProviderGroup-list { + key "name"; - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_Vlan-group; + uses aaa_RadiusProviderGroup-group; + description "RADIUS Provider Group list"; } + description "RADIUS Provider Group"; } - } - - grouping stp_If-group { - // Port mode - // Type is an MO-Defined-Type - leaf mode { - description "Port Mode"; + container radiusservermonitor-items { - // Type is an MO-Defined-Type - type stp_IfMode; + uses aaa_RadiusServerMonitor-group; + description "Periodic server monitoring for Radius"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container dynamicradiusauthserver-items { - // Type is an MO-Defined-Type - type stp_IfControl; + uses aaa_DynamicRadiusAuthServer-group; + description "dynamic authorization local server configuration object"; } - // guard mode - // Type is an MO-Defined-Type - leaf guard { - description "Guard Mode"; + container rtfabricResRadiusEp-items { - // Type is an MO-Defined-Type - type stp_Guard; + list RtFabricResRadiusEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResRadiusEp_target-group; + } } + } - // bpdufilter mode - // Type is an MO-Defined-Type - leaf bpdufilter { - description "bpdufilter mode"; + grouping aaa_RadiusProvider-group { + description "RADIUS Provider"; - // Type is an MO-Defined-Type - type stp_Bpdufilter; + leaf useType { + + type aaa_RadSrvUseType; + description "Usage for the radius server"; } - // bpduguard mode - // Type is an MO-Defined-Type - leaf bpduguard { - description "Guard Mode"; + leaf authPort { - // Type is an MO-Defined-Type - type stp_BPDUGuard; + type aaa_RadPort; + description "authPort"; } - // Link Type - // Type is an MO-Defined-Type - leaf linkType { - description "Link Type"; + leaf acctPort { - // Type is an MO-Defined-Type - type stp_LinkType; + type aaa_RadPort; + description "acctPort"; } - // Port Priority - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf authProtocol { - // Type is an MO-Defined-Type - type stp_PortPriority; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + leaf monitoringIdleTime { - // Type is an MO-Defined-Type - type stp_Cost; + type aaa_IdleTimer; + description "Idle timer to monitor radius server"; } - // PortFast - // Type is an MO-Defined-Type - leaf portFast { - description "Port Fast"; + leaf monitoringPasswordType { - // Type is an MO-Defined-Type - type stp_PortFast; + type aaa_LdapPwdEnc; + description "Monitoring password type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "TBD"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // This object describes interface level config per vlan - container vlan-items { - list VlanCfg-list { - key "vlanId"; + leaf key { - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_VlanCfg-group; - } + type aaa_EncKey; + description "Key"; } - // This object describes interface level config per mst instance - container mst-items { - list MstCfg-list { - key "mstId"; + // Default value handled in local MO type + leaf keyEnc { - // Added containment: Prefix=mst - // Acquired From Package stp - uses stp_MstCfg-group; - } + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_RadiusProvider_keyEnc; + description "Default key encryption"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - container rtvrfMbr-items { + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_RadiusProvider_timeout; + description "Timeout in Seconds"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Default value handled in local MO type + leaf retries { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + // Type is a Local-MO-Defined-Type + type aaa_Retries_RadiusProvider_retries; + description "Retries"; } - } - - grouping stp_VlanCfg-group { - // Vlan Id - // Type is an MO-Defined-Type - leaf vlanId { - description "Vlan Id"; + leaf monitoringUser { - // Type is an MO-Defined-Type - type stp_VlanId; + type aaa_MonitoringUserType { + length "1..32"; + } + description "Periodic Server Monitoring Username"; } - // Port Priority in increments of 32 - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type stp_PortPriority; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; + } + leaf epgDn { + config "false"; + type string; + description "Reachability EpG"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type stp_Cost; + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping stp_MstCfg-group { + grouping aaa_RadiusProviderGroup-group { + description "RADIUS Provider Group"; - // MST Id - // Type is an MO-Defined-Type - leaf mstId { - description "Mst Instance Id"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_MstId; + type aaa_ProviderGroupDeadtime; + description "Duration for which non-reachable server is skipped"; } - // Port Priority in increments of 32 - // Type is an MO-Defined-Type - leaf priority { - description "Port Priority"; + leaf name { - // Type is an MO-Defined-Type - type stp_PortPriority; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Port path cost - // Type is an MO-Defined-Type - leaf cost { - description "Port Path Cost"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_Cost; + type naming_Descr; + description "TBD"; } - } - - grouping stp_MstEntity-group { - // spanning tree max hops - // Type is an MO-Defined-Type - leaf maxHops { - description "STP mst max hops"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_MaxHops; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // enable spanning tree simulation - // Type is an MO-Defined-Type - leaf simulate { - description "spanning tree simulation"; + leaf descr { - // Type is an MO-Defined-Type - type stp_Simulate; + type naming_Descr; + description "Description of the specified attribute"; } - // operation error - // Type is an MO-Defined-Type - leaf operErr { + leaf snmpIndex { config "false"; - description "Operation Error Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - // Region name - // Type is an MO-Defined-Type - leaf regName { - description "Region Name"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type stp_RegName; + type nw_IfId; + description "Source Interface"; } - // Region revision - // Type is an MO-Defined-Type - leaf rev { - description "Region Revision"; + leaf vrf { - // Type is an MO-Defined-Type - type stp_RegRev; + type l3_VrfName; + description "VRF"; } - // spanning tree state: enabled or disabled - // Inherited From stp:StEntity - // Modified by Override: stp:MstEntity->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { + key "name"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; + } + description "Provider Group Member"; } + } - // spanning tree forward delay - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf fwdTime { - description "STP forward delay"; - - // Type is an MO-Defined-Type - type stp_FwdTime; - } + grouping aaa_ProviderRef-group { + description "Provider Group Member"; - // spanning tree hello interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf helloTime { - description "STP Hello interval"; + // This property dicates the order in which the Provider + // referred by this MO will be tried within the ProviderGroup + leaf order { - // Type is an MO-Defined-Type - type stp_HelloTime; + type aaa_Order; + description "Order in which Providers are Tried"; } - // spanning tree max age interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf maxAge { - description "STP max age interval"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type stp_MaxAge; + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } - // This objects describes an mst instance - container mst-items { - list MstDom-list { - key "id"; + leaf name { - // Added containment: Prefix=mst - // Acquired From Package stp - uses stp_MstDom-group; + type pol_ObjName { + + // Copied from "ProviderName" type + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - } - - grouping stp_MstDom-group { - // MST config state - // Type is an MO-Defined-Type - leaf cfgSt { - description "Instance config State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_AdminSt; + type naming_Descr; + description "TBD"; } - // Id - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description "ID Property has READ-Create access."; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_MstId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // root type - // Type is an MO-Defined-Type - leaf root { - description "Root Options"; + leaf descr { - // Type is an MO-Defined-Type - type stp_Root; + type naming_Descr; + description "Description of the specified attribute"; } + } - // network diameter - // Type is an MO-Defined-Type - leaf diameter { - description "Network Diameter"; + grouping aaa_RadiusServerMonitor-group { + description "Periodic server monitoring for Radius"; - // Type is an MO-Defined-Type - type stp_Diameter; + leaf pwd { + + type aaa_MonitoringPasswordType; + description "Password"; } - // hello interval - // Type is an MO-Defined-Type - leaf helloTime { - description "Hello interval"; + leaf passwordType { - // Type is an MO-Defined-Type - type stp_HelloTime; + type aaa_LdapPwdEnc; + description "Radius Server Monitor Password type"; } - // priority - // Type is an MO-Defined-Type - leaf priority { - description "Bridge Priority"; + leaf idleTime { - // Type is an MO-Defined-Type - type stp_BridgePriority; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs/radius server"; } - // VlanRange - // Type is an MO-Defined-Type - leaf vlanRange { - description "Vlan Range Bitmap"; + leaf name { - // Type is an MO-Defined-Type - type stp_VlanBitmap; - } - leaf bridgePriority { - config "false"; - type uint16; + type pol_ObjName { + + // Copied from "aaa:User" type + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - leaf bridgeAddress { - config "false"; - type address_Mac; + + // Clients can add their own data for entity correlation + leaf ownerKey { + + type naming_Descr; + description "TBD"; } - leaf rootPriority { - config "false"; - type uint16; + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf rootAddress { - config "false"; - type address_Mac; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rootPortPriority { - config "false"; - type uint16; + } + + grouping aaa_DynamicRadiusAuthServer-group { + description "dynamic authorization local server configuration object"; + leaf port { + type uint32 { + range "0..65535"; + } + default "1700"; + description "Configuration for port number"; } - leaf rootPortNumber { - config "false"; - type uint16; + leaf key { + type string { + length "0..63"; + } + description "Configuration for server key"; } - // Root port name. The interface name that corresponds to the - // root port. E.g. eth1/1. - // From Interface stp:RootPort - // Type is an MO-Defined-Type - leaf rootPort { - config "false"; - description "Root port name"; + leaf keyEnc { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf rootPathCost { - config "false"; - type uint32; + type aaa_KeyEnc; + description "server key Encription type"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This objects describes a vlan range - container vlan-items { - list VlanRange-list { - config "false"; - key "start end"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=vlan - // Acquired From Package stp - uses stp_VlanRange-group; - } + type naming_Descr; + description "TBD"; } - // This object holds STP MST interface operational - // information. - container if-items { - list MstIf-list { - config "false"; - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_MstIf-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - - grouping stp_VlanRange-group { - // Start of the range - // Type is an MO-Defined-Type - leaf start { - config "false"; - description "Start"; + leaf descr { - // Type is an MO-Defined-Type - type stp_VlanId; + type naming_Descr; + description "Description of the specified attribute"; } + container dynamicauthclient-items { + list DynamicAuthClient-list { + key "name"; - // End of the range - // Type is an MO-Defined-Type - leaf end { - config "false"; - description "End"; - - // Type is an MO-Defined-Type - type stp_VlanId; + uses aaa_DynamicAuthClient-group; + description "dynamic authorization local client configuration object list"; + } + description "dynamic authorization local client configuration object"; } } - grouping stp_MstIf-group { + grouping aaa_DynamicAuthClient-group { + description "dynamic authorization local client configuration object"; + leaf key { + type string { + length "0..63"; + } + description "serverkey for dynamic-author client"; + } - // Interface ID. - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf keyEnc { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf designatedRootPriority { - config "false"; - type uint16; - } - leaf designatedRootAddress { - config "false"; - type address_Mac; - } - leaf designatedRootCost { - config "false"; - type uint32; - } - leaf designatedBridgePriority { - config "false"; - type uint16; - } - leaf designatedBridgeAddress { - config "false"; - type address_Mac; - } - leaf designatedPortPriority { - config "false"; - type uint16; - } - leaf designatedPortNumber { - config "false"; - type uint16; - } - leaf portPriority { - config "false"; - type uint16; - } - leaf portNumber { - config "false"; - type uint16; - } - leaf portPathCost { - config "false"; - type uint32; + type aaa_KeyEnc; + description "Default key encryption type"; } - // Port role - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portRole { - config "false"; - description "Port role"; + leaf vrf { - // Type is an MO-Defined-Type - type stp_PortRole; + type l3_VrfName; + description "vrf name for dynamic-author client"; } - // Port state - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portState { - config "false"; - description "Port state"; + leaf name { - // Type is an MO-Defined-Type - type stp_PortState; - } - leaf p2p { - config "false"; - type boolean; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "just for verifying purpose overriding this"; } - // VpcState - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf vpcState { - config "false"; - description "vPC State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_VpcState; + type naming_Descr; + description "TBD"; } - // Port mode - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "mode"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_ModeType; - } - leaf dispute { - config "false"; - type boolean; - } - leaf peer { - config "false"; - type boolean; - } - leaf bound { - config "false"; - type boolean; - } - leaf inconsistent { - config "false"; - type boolean; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf prestd { - config "false"; - type boolean; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping stp_Vlan-group { + grouping aaa_LdapEp-group { + description "Default LDAP Authentication Settings"; - // vlan id - // Type is an MO-Defined-Type - leaf id { - description "Access Encapsulation"; + leaf deadtime { - // Type is an MO-Defined-Type - type stp_VlanId; + type aaa_TimeMin { + range "0..60"; + } + description "LDAP Global Deadtime"; } - // bridge priority - // Type is an MO-Defined-Type - leaf priority { - description "Bridge Priority"; + leaf port { - // Type is an MO-Defined-Type - type stp_Priority; + type aaa_Port; + description "Port"; } - // network diameter of spanning tree - // Type is an MO-Defined-Type - leaf diameter { - description "network diameter"; + leaf attribute { - // Type is an MO-Defined-Type - type stp_Diameter; + type aaa_LdapAttribute; + description "LDAP Attribute"; } - // Spanning tree protocol - // Type is an MO-Defined-Type - leaf protocol { - config "false"; - description "Spanning tree protocol"; + leaf basedn { - // Type is an MO-Defined-Type - type stp_Protocol; - } - leaf bridgePriority { - config "false"; - type uint16; - } - leaf bridgeAddress { - config "false"; - type address_Mac; - } - leaf rootPriority { - config "false"; - type uint16; - } - leaf rootAddress { - config "false"; - type address_Mac; - } - leaf rootPortPriority { - config "false"; - type uint16; - } - leaf rootPortNumber { - config "false"; - type uint16; + type aaa_LdapDn; + description "LDAP Base DN"; } - // Root port name. The interface name that corresponds to the - // root port. E.g. eth1/1. - // From Interface stp:RootPort - // Type is an MO-Defined-Type - leaf rootPort { - config "false"; - description "Root port name"; + leaf filter { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_LdapFilter; + description "LDAP Filter"; } - leaf rootPathCost { - config "false"; - type uint32; + + leaf loggingLevel { + + type aaa_LdapLogLevel; + description "LDAP Logging level"; } - // spanning tree state: enabled or disabled - // Inherited From stp:StEntity - // Modified by Override: stp:Vlan->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // spanning tree forward delay - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf fwdTime { - description "STP forward delay"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type stp_FwdTime; + type naming_Descr; + description "TBD"; } - // spanning tree hello interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf helloTime { - description "STP Hello interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type stp_HelloTime; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // spanning tree max age interval - // Inherited From stp:StEntity - // Type is an MO-Defined-Type - leaf maxAge { - description "STP max age interval"; + leaf descr { - // Type is an MO-Defined-Type - type stp_MaxAge; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds STP VLAN interface operational - // information. - container if-items { - list VlanIf-list { - config "false"; - key "id"; + // add units for timeout. This helps display in CLI + leaf timeout { - // Added containment: Prefix=if - // Acquired From Package stp - uses stp_VlanIf-group; - } + type aaa_TimeSec; + description "Timeout in Seconds"; } - } - grouping stp_VlanIf-group { + leaf retries { - // Interface ID. - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + type aaa_Retries; + description "Retries"; + } + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; - } - leaf designatedRootPriority { - config "false"; - type uint16; - } - leaf designatedRootAddress { - config "false"; - type address_Mac; - } - leaf designatedRootCost { - config "false"; - type uint32; - } - leaf designatedBridgePriority { - config "false"; - type uint16; - } - leaf designatedBridgeAddress { - config "false"; - type address_Mac; - } - leaf designatedPortPriority { - config "false"; - type uint16; - } - leaf designatedPortNumber { - config "false"; - type uint16; - } - leaf portPriority { - config "false"; - type uint16; - } - leaf portNumber { - config "false"; - type uint16; - } - leaf portPathCost { - config "false"; - type uint32; + description "Source Interface"; } - // Port role - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portRole { - config "false"; - description "Port role"; + // This MO represents a group of AAA LDAP servers. + // A member of this group is represented by ProviderRef MO + container ldapprovidergroup-items { + list LdapProviderGroup-list { + key "name"; - // Type is an MO-Defined-Type - type stp_PortRole; + uses aaa_LdapProviderGroup-group; + description "LDAP Provider Group list"; + } + description "LDAP Provider Group "; } + container ldapprovider-items { + list LdapProvider-list { + key "name"; - // Port state - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf portState { - config "false"; - description "Port state"; - - // Type is an MO-Defined-Type - type stp_PortState; + uses aaa_LdapProvider-group; + description "LDAP Provider list"; + } + description "LDAP Provider"; } - leaf p2p { - config "false"; - type boolean; + container searchmap-items { + list LdapSearchMap-list { + key "name"; + + uses aaa_LdapSearchMap-group; + description "Search Map list"; + } + description "Search Map"; } - // VpcState - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf vpcState { - config "false"; - description "vPC State"; + container rtfabricResLdapEp-items { - // Type is an MO-Defined-Type - type stp_VpcState; + list RtFabricResLdapEp-list { + config "false"; + key "tDn"; + + uses fabric_RtFabricResLdapEp_target-group; + } } + } - // Port mode - // From Interface stp:Port - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "mode"; + grouping aaa_LdapProviderGroup-group { + description "LDAP Provider Group "; - // Type is an MO-Defined-Type - type stp_ModeType; + leaf deadtime { + + type aaa_ProviderGroupDeadtime; + description "LDAP Provider Group Deadtime"; } - leaf dispute { - config "false"; + leaf enAuthCompare { type boolean; + default "true"; + description "Enable LDAP Compare Operation"; } - leaf peer { - config "false"; + leaf enCertDnMatch { type boolean; + default "true"; + description "Enable Cert-DN matching"; } - leaf bound { - config "false"; + leaf enUserServerGroup { type boolean; + default "true"; + description "Enable Group Validation"; } - leaf inconsistent { - config "false"; + leaf enAuthBindFirst { type boolean; + default "true"; + description "Enable Authentication Bind First"; } - leaf prestd { - config "false"; - type boolean; + leaf authBaseDnAppendStr { + type string { + length "0..63"; + } + description "LDAP Append with Base DN String"; } - } - - grouping aggregate_BdTable-group { - - // Aggregate BdEntry - container vlan-items { - list BdEntry-list { - key "vlan"; - - // Added containment: Prefix=vlan - // Acquired From Package aggregate - uses aggregate_BdEntry-group; + leaf authComparePasswdAttribute { + type string { + length "1..63"; } + default "userPassword"; + description "LDAP password attribute"; } - } - grouping aggregate_BdEntry-group { - leaf vlan { - type string; - } - leaf bd { - type uint32; + leaf authMechanism { + + type aaa_AuthMechanism; + description "Authentication Mechanism"; } - leaf vnid { - type string; + leaf searchMap { + type string { + length "0..127"; + } + description "Ldap Search Map"; } - // Type is an MO-Defined-Type - leaf replicationMode { - description "The mode of replication for BUM data packets"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_ReplicationModeType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf ingressRepProtocol { - description "The protocol type used to get the list of replication nodes"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IngressRepProtocolType; - } - leaf gipo { - type address_Ip; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf suppressArp { - description "Flag to enable or disable the ARP suppression"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf resourceStatus { - description "Backend Resource Status"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf isL3 { - description "Is L3 Vlan"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; - } - leaf description { - type string; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - container floodList-items { + // Source interface + leaf srcIf { - // Added containment as a singleton: Prefix=floodList - // Acquired From Package aggregate - uses aggregate_FloodList-group; + type nw_IfId; + description "Source Interface"; } - // Domain (vrf) information - // - // - // - // - // - // - // - // - // - // List of route types - container af-items { - list DomainAf-list { - key "type"; + leaf vrf { - // Added containment: Prefix=af - // Acquired From Package aggregate - uses aggregate_DomainAf-group; - } + type l3_VrfName; + description "VRF"; } - // Rel-def target from vlanMemberAtt - // Inherited From aggregate:BdEntry - container rtaggregateVlanMemberAtt-items { - - // Abstract containment of rtaggregateVlanMemberAtt derived from aggregate:BdEntry - list RtAggregateVlanMemberAtt-list { - config "false"; - key "tDn"; + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { + key "name"; - // Added containment: Prefix=rtaggregateVlanMemberAtt - // Acquired From Package aggregate - uses aggregate_RtAggregateVlanMemberAtt_target-group; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; } + description "Provider Group Member"; } } - grouping aggregate_FloodList-group { + grouping aaa_LdapProvider-group { + description "LDAP Provider"; - container localFloodList-items { + leaf rootdn { - // Added containment as a singleton: Prefix=localFloodList - // Acquired From Package aggregate - uses aggregate_LocalFloodList-group; + type aaa_LdapDn; + description "Root DN"; } - container remoteFloodList-items { + leaf rootdnPwd { - // Added containment as a singleton: Prefix=remoteFloodList - // Acquired From Package aggregate - uses aggregate_RemoteFloodList-group; + type aaa_EncKey { + length "0..64"; + pattern ".*"; + } + description "Root DN Password"; } - } - grouping aggregate_LocalFloodList-group { - container intf-items { - list LocalFloodListEntry-list { - key "intf"; + leaf pwdEncryptType { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_LocalFloodListEntry-group; - } + type aaa_LdapPwdEnc; + default "0"; + description "Password Encryption Type"; } - } - - grouping aggregate_LocalFloodListEntry-group { - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + leaf port { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_Port; + description "Port"; + } + leaf enableSSL { + type boolean; + default "true"; + description "Enable SSL"; + } + leaf disableReferral { + type boolean; + default "true"; + description "LDAP Server Disable Referrals"; } - } - grouping aggregate_RemoteFloodList-group { - container vtep-items { - list RemoteFloodListEntry-list { - key "vtep"; + leaf SSLValidationLevel { - // Added containment: Prefix=vtep - // Acquired From Package aggregate - uses aggregate_RemoteFloodListEntry-group; - } + type aaa_LdapSSLStrictnessLevel; + description "SSL certificate validation level"; } - } - grouping aggregate_RemoteFloodListEntry-group { - leaf vtep { - type address_Ip; - } + // This property names the attribute to be downloaded + // which has user's roles and domains information. + // The value of this property takes precendence over the + // value of 'attribute' property in LdapEp MO + leaf attribute { - // Rel-def from vtepAtt - container rsvtepAtt-items { + type aaa_LdapAttribute; + description "LDAP Attribute"; + } - // Abstract containment of rsvtepAtt derived from aggregate:RemoteFloodListEntry - list RsVtepAtt-list { - config "false"; - key "tDn"; + // LDAP Base DN to be used while searching for the user. + // The value of this property takes precendence over the value + // of 'basedn' property in LdapEp MO + leaf basedn { - // Added containment: Prefix=rsvtepAtt - // Acquired From Package aggregate - uses aggregate_RsVtepAtt_source-group; - } + type aaa_LdapDn; + description "LDAP Base DN"; } - } - grouping aggregate_DomainAf-group { + // Ldap filter to be used while searching for the user. + // The value of this property takes precendence over the + // value of 'filter' property in LdapEp MO + leaf filter { - // Type is an MO-Defined-Type - leaf type { - description "Type"; + type aaa_LdapFilter; + description "LDAP Filter"; + } - // Type is an MO-Defined-Type - type aggregate_AfT; + leaf monitoringPasswordType { + + type aaa_LdapPwdEnc; + description "Monitoring password encryption type"; } - leaf vrf { - type string; + + leaf monitoringIdleTime { + + type aaa_IdleTimer; + description "Idle timer to monitor ldap server"; } - leaf rd { - type mtx_array_community; + + leaf monitoringRootdn { + + type aaa_LdapDn; + description "Root DN"; } - // Route target policy - container rttp-items { - list RttP-list { - key "type"; + leaf name { - // Added containment: Prefix=rttp - // Acquired From Package aggregate - uses aggregate_RttP-group; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "Name of the given attribute"; } - // - // - // - // - // - // - // - // - // - // - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list AfCtrl-list { - key "type"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=ctrl - // Acquired From Package aggregate - uses aggregate_AfCtrl-group; + type naming_Descr; + description "TBD"; + } + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping aggregate_RttP-group { + leaf descr { - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + type naming_Descr; + description "Description of the specified attribute"; + } - // Type is an MO-Defined-Type - type aggregate_RttPType; + leaf key { + + type aaa_EncKey; + description "Key"; + } + leaf keySet { + config "false"; + type boolean; + description "Key Set"; } - // isL3 VRF - // Type is an MO-Defined-Type - leaf isL3 { - description "IsL3"; + // Default value handled in local MO type + leaf keyEnc { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_LdapProvider_keyEnc; + description "Default key encryption"; } - // List of route types - container ent-items { - list RttEntry-list { - key "rtt"; + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Added containment: Prefix=ent - // Acquired From Package aggregate - uses aggregate_RttEntry-group; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_LdapProvider_timeout { + range "0..60"; } + description "Timeout in Seconds"; } - } - grouping aggregate_RttEntry-group { - leaf rtt { - type mtx_array_community; - } - } + // Default value handled in local MO type + leaf retries { - grouping aggregate_AfCtrl-group { + // Type is a Local-MO-Defined-Type + type aaa_Retries_LdapProvider_retries; + description "Retries"; + } - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf operState { + config "false"; - // Type is an MO-Defined-Type - type aggregate_AfT; + type aaa_ProviderState; + description "Provider Operational State"; } - // Route target policy - container rttp-items { - list RttP-list { - key "type"; + leaf monitoringUser { - // Added containment: Prefix=rttp - // Acquired From Package aggregate - uses aggregate_RttP-group; + type aaa_MonitoringUserType { + length "1..32"; } + description "Periodic Server Monitoring Username"; } - } - - grouping aggregate_GlobalConfTable-group { - // Type is an MO-Defined-Type - leaf vxLanMC { - description "VxLan Multicast Flag"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; } - leaf agMac { - type address_Mac; + leaf epgDn { + config "false"; + type string; + description "Reachability EpG"; } - } - grouping aggregate_IntfTable-group { - container intf-items { - list IntfEntry-list { - key "name"; + // The vrf that this client group belongs to + leaf vrfName { + config "false"; - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_IntfEntry-group; - } + type l3_VrfName; + description "Vrf Name"; } - container svi-items { - list Svi-list { - key "intf"; - // Added containment: Prefix=svi - // Acquired From Package aggregate - uses aggregate_Svi-group; - } + leaf snmpIndex { + config "false"; + + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping aggregate_IntfEntry-group { + grouping aaa_LdapSearchMap-group { + description "Search Map"; - // Type is an MO-Defined-Type leaf name { - description "Name of the interface entry"; - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf type { - description "Indicates the type of the interface"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IntfType; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf adminState { - description "Indicates the adminstration state of interface whether interface is up or down"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf operState { - description "Indicates the operational state of the interface whether up or down"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_OperState; + type naming_Descr; + description "Description of the specified attribute"; } + container entry-items { + list LdapSearchMapEntry-list { + key "type"; - // Type is an MO-Defined-Type - leaf trunkVlans { - description "List of vlans allowed on this interface"; - - // Type is an MO-Defined-Type - type aggregate_IntfTrunkVlans; - } - leaf isControllerOwnedIntf { - config "false"; - type boolean; + uses aaa_LdapSearchMapEntry-group; + description "Search Map Entry list"; + } + description "Search Map Entry"; } + } - // Type is an MO-Defined-Type - leaf ownerControllersIdList { - config "false"; - description "List of the controller owning this interface"; + grouping aaa_LdapSearchMapEntry-group { + description "Search Map Entry"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; - } - leaf untaggedVlan { - type string; - } - leaf untaggedVlanCtrlUse { - type boolean; + leaf type { + + type aaa_SearchMapEntryType; + description "Search Map Filter type"; } - leaf untaggedVlanExplicitMap { - type boolean; + + leaf baseDn { + + type aaa_LdapDn; + description "LDAP Base DN"; } - container vlanMemberTable-items { + leaf attribute { - // Added containment as a singleton: Prefix=vlanMemberTable - // Acquired From Package aggregate - uses aggregate_VlanMemberTable-group; + type aaa_LdapAttribute; + description "LDAP Attribute"; } - // Rel-def target from vpcIntfEntryAtt - // Inherited From aggregate:IntfEntry - container rtvpcIntfEntryAtt-items { + leaf searchFilter { - // Added containment as a singleton: Prefix=rtvpcIntfEntryAtt - // Acquired From Package aggregate - uses aggregate_RtVpcIntfEntryAtt_target-group; + type aaa_LdapFilter; + description "LDAP Filter"; } - } - grouping aggregate_VlanMemberTable-group { - container member-items { - list VlanMemberEntry-list { - key "vlan"; + leaf name { - // Added containment: Prefix=member - // Acquired From Package aggregate - uses aggregate_VlanMemberEntry-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from vlanMemberAtt - container rsvlanMemberAtt-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Abstract containment of rsvlanMemberAtt derived from aggregate:VlanMemberTable - list RsVlanMemberAtt-list { - config "false"; - key "tDn"; + type naming_Descr; + description "TBD"; + } - // Added containment: Prefix=rsvlanMemberAtt - // Acquired From Package aggregate - uses aggregate_RsVlanMemberAtt_source-group; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping aggregate_VlanMemberEntry-group { - leaf vlan { - type string; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping aggregate_Svi-group { - leaf intf { - type string; - } + grouping aaa_TacacsPlusEp-group { + description "Default TACACS+ Authentication Settings"; - // Type is an MO-Defined-Type - leaf adminState { - description "Admin state of the interface whether up or down"; + leaf deadtime { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type aaa_TimeMin; + description "Duration for which non-reachable server is skipped"; } - // Type is an MO-Defined-Type - leaf operState { - description "Operational state of the interface whether up or down"; + leaf key { - // Type is an MO-Defined-Type - type aggregate_OperState; - } - leaf ip { - type address_Ip; + type aaa_EncKey; + description "Global TACACS+ server shared secret"; } - // Type is an MO-Defined-Type - leaf ownerCtrlrsIdList { - config "false"; - description "List of the controller Ids owning this interface"; + leaf keyEnc { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type aaa_KeyEnc; + description "Default key encryption"; } - // Type is an MO-Defined-Type - leaf mtu { - description "Size of the MTU this interface is able to transmit"; + leaf loggingLevel { - // Type is an MO-Defined-Type - type aggregate_MTU; + type aaa_LoggingLevel; + description "Tacacs Logging level"; } - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth Of SVI"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_Bw; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf fwdMode { - description "Fabric Forwarding Mode"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_fabFwdMode; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf vrf { - description "VRF context"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type l3_VrfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_MacTable-group { + leaf descr { - container dynamic-items { + type naming_Descr; + description "Description of the specified attribute"; + } - // Added containment as a singleton: Prefix=dynamic - // Acquired From Package aggregate - uses aggregate_DynamicMac-group; + // add units for timeout. This helps display in CLI + leaf timeout { + + type aaa_TimeSec; + description "Timeout in Seconds"; } - container static-items { + leaf retries { - // Added containment as a singleton: Prefix=static - // Acquired From Package aggregate - uses aggregate_StaticMac-group; + type aaa_Retries; + description "Retries"; } - } - grouping aggregate_DynamicMac-group { + // Source interface + leaf srcIf { - // Aggregate MacEntry - container mac-items { - list MacEntry-list { - key "mac vlan"; + type nw_IfId; + description "Source Interface"; + } + container tacacsplusprovider-items { + list TacacsPlusProvider-list { + key "name"; - // Added containment: Prefix=mac - // Acquired From Package aggregate - uses aggregate_MacEntry-group; + uses aaa_TacacsPlusProvider-group; + description "TACACS+ Provider list"; } + description "TACACS+ Provider"; } - } - grouping aggregate_MacEntry-group { - leaf mac { - type address_Mac; - } - leaf vlan { - type string; - } - - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf tunnelDstIp { - type address_Ip; - } - leaf isIntf { - type boolean; - } - - // Type is an MO-Defined-Type - leaf type { - description "MacType"; + // This MO represents a group of AAA TACACS+ servers. + container tacacsplusprovidergroup-items { + list TacacsPlusProviderGroup-list { + key "name"; - // Type is an MO-Defined-Type - type aggregate_MacType; - } - leaf pushedMacToBackEnd { - type boolean; - default "true"; + uses aaa_TacacsPlusProviderGroup-group; + description "TACACS+ Provider Group list"; + } + description "TACACS+ Provider Group"; } - // Rel-def target from mac - // Inherited From aggregate:MacEntry - container rtmac-items { + container tacacsservermonitor-items { - // Added containment as a singleton: Prefix=rtmac - // Acquired From Package aggregate - uses aggregate_RtMac_target-group; + uses aaa_TacacsServerMonitor-group; + description "Periodic server monitoring for Radius/tacacs"; } - } - grouping aggregate_StaticMac-group { + container rtfabricResTacacsPlusEp-items { - // Aggregate MacEntry - container mac-items { - list MacEntry-list { - key "mac vlan"; + list RtFabricResTacacsPlusEp-list { + config "false"; + key "tDn"; - // Added containment: Prefix=mac - // Acquired From Package aggregate - uses aggregate_MacEntry-group; + uses fabric_RtFabricResTacacsPlusEp_target-group; } } } - grouping aggregate_SystemTable-group { + grouping aaa_TacacsPlusProvider-group { + description "TACACS+ Provider"; - // Type is an MO-Defined-Type - leaf stTime { - description "System Start Time"; + leaf port { - // Type is an MO-Defined-Type - type mo_TStamp; - } - leaf mgmtIp { - config "false"; - type address_Ip; - } - leaf switchType { - type string; + type aaa_Port; + description "Port"; } - // Type is an MO-Defined-Type - leaf purgeDBRequest { - description "Client DB Purge Request"; + leaf authProtocol { - // Type is an MO-Defined-Type - type mo_TStamp; - } - leaf isControllerConfigured { - type boolean; - } - leaf nxdbEnabled { - config "false"; - type boolean; + type aaa_authenticationProtocol; + default "pap"; + description "TACACS+ Authentication Protocol"; } - container controllerTable-items { + leaf singleConnection { - // Added containment as a singleton: Prefix=controllerTable - // Acquired From Package aggregate - uses aggregate_ControllerTable-group; + type aaa_Boolean; + default "no"; + description "TACACS+ single connection mode enabled"; } - container cpuTable-items { + leaf monitoringIdleTime { - // Added containment as a singleton: Prefix=cpuTable - // Acquired From Package aggregate - uses aggregate_CPUTable-group; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs server"; } - container moduleTable-items { + leaf monitoringPasswordType { - // Added containment as a singleton: Prefix=moduleTable - // Acquired From Package aggregate - uses aggregate_ModuleTable-group; + type aaa_LdapPwdEnc; + description "Monitoring password type"; } - container vxlanTable-items { + leaf name { - // Added containment as a singleton: Prefix=vxlanTable - // Acquired From Package aggregate - uses aggregate_VxlanTable-group; + type pol_ObjName { + length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; + } + description "Name of the given attribute"; } - container shadowVxlanTable-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=shadowVxlanTable - // Acquired From Package aggregate - uses aggregate_ShadowVxlanTable-group; + type naming_Descr; + description "TBD"; } - } - grouping aggregate_ControllerTable-group { - container controller-items { - list ControllerEntry-list { - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=controller - // Acquired From Package aggregate - uses aggregate_ControllerEntry-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } - } - } - - grouping aggregate_ControllerEntry-group { - leaf id { - type uint32; - } - leaf readRole { - type string; - } - leaf writeRole { - type string; - } - leaf controllerType { - type string; + description "TBD"; } - // Type is an MO-Defined-Type - leaf configuredVlans { - config "false"; - description "Vlans that are assigned under this controller"; + leaf descr { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf dedicatedVlans { - config "false"; - description "Dedicated Vlans"; + leaf key { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type aaa_EncKey; + description "Key"; } - // Type is an MO-Defined-Type - leaf publishedVlans { - config "false"; - description "Vlans that are published to the controller after VPC consistency checks are completed"; + // Default value handled in local MO type + leaf keyEnc { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + // Type is a Local-MO-Defined-Type + type aaa_KeyEnc_TacacsPlusProvider_keyEnc; + description "Default key encryption"; } - // Type is an MO-Defined-Type - leaf vlanResourceStatus { - config "false"; - description "Indicate that at least one Vlan is assigned to the controller"; + // The following two properties are also defined in Ep MO. + // Here they reperesent per server configuration which would + // take precedence over global configuration defined in Ep MO + // Default value handled in local MO type + leaf timeout { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + // Type is a Local-MO-Defined-Type + type aaa_TimeSec_TacacsPlusProvider_timeout { + range "0..60"; + } + description "Timeout in Seconds"; } - // Type is an MO-Defined-Type - leaf intfResourceStatus { - config "false"; - description "Indicate that at least one interface is assigned to the controller"; + // Default value handled in local MO type + leaf retries { - // Type is an MO-Defined-Type - type aggregate_ResourceStatus; + // Type is a Local-MO-Defined-Type + type aaa_Retries_TacacsPlusProvider_retries; + description "Retries"; } - // Type is an MO-Defined-Type - leaf isSystemReadyForController { - description "Indicate that switch is now ready to acccept the NXAPI requests from the controller"; + leaf monitoringUser { - // Type is an MO-Defined-Type - type aggregate_ConfigStatus; + type aaa_MonitoringUserType { + length "1..32"; + } + description "Periodic Server Monitoring Username"; } - // Type is an MO-Defined-Type - leaf type { - description "Type of the Vxlan the controller is controlling"; + leaf monitoringPassword { - // Type is an MO-Defined-Type - type aggregate_CtrlrType; + type aaa_MonitoringPasswordType; + description "Periodic Server Monitoring Password"; } - leaf vrfPrefix { + leaf epgDn { + config "false"; type string; + description "Reachability EpG"; } - leaf numVrf { - type uint32; - } - leaf publishVrf { - type boolean; - } - leaf publishNumVrf { - type uint32; - } - - container controllerAssignedIntfTable-items { - - // Added containment as a singleton: Prefix=controllerAssignedIntfTable - // Acquired From Package aggregate - uses aggregate_ControllerAssignedIntfTable-group; - } - } - grouping aggregate_ControllerAssignedIntfTable-group { - container controllerAssignedIntfEntry-items { - list ControllerAssignedIntfEntry-list { - key "intfName"; + leaf snmpIndex { + config "false"; - // Added containment: Prefix=controllerAssignedIntfEntry - // Acquired From Package aggregate - uses aggregate_ControllerAssignedIntfEntry-group; - } + type aaa_ProviderSnmpIndex; + description "Provider SNMP Index"; } } - grouping aggregate_ControllerAssignedIntfEntry-group { + grouping aaa_TacacsPlusProviderGroup-group { + description "TACACS+ Provider Group"; - // Type is an MO-Defined-Type - leaf intfName { - description "IntfName"; + leaf deadtime { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_ProviderGroupDeadtime; + description "Duration for which non-reachable server is skipped"; } - // Port channel id - // Type is an MO-Defined-Type - leaf pcId { - description "Identity of the Port channel"; + leaf name { - // Type is an MO-Defined-Type - type pc_PcId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf type { - description "Type of the interface"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_IntfType; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf mode { - description "Suggest if interface is dedicated to controller or shared between CLI"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_IntfAssignMode; - } - leaf published { - type boolean; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_CPUTable-group { - container cpuEntry-items { - list CPUEntry-list { - key "type"; + leaf descr { - // Added containment: Prefix=cpuEntry - // Acquired From Package aggregate - uses aggregate_CPUEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping aggregate_CPUEntry-group { - // Type is an MO-Defined-Type - leaf type { - description "CPU Type"; + leaf snmpIndex { + config "false"; - // Type is an MO-Defined-Type - type aggregate_CpuType; + type aaa_ProviderGroupSnmpIndex; + description "Provider Group SNMP Index"; } - } - grouping aggregate_ModuleTable-group { - container moduleEntry-items { - list ModuleEntry-list { - key "type"; + // Source interface + leaf srcIf { - // Added containment: Prefix=moduleEntry - // Acquired From Package aggregate - uses aggregate_ModuleEntry-group; - } + type nw_IfId; + description "Source Interface"; } - } - - grouping aggregate_ModuleEntry-group { - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf vrf { - // Type is an MO-Defined-Type - type aggregate_ModuleType; + type l3_VrfName; + description "VRF"; } - } - grouping aggregate_VxlanTable-group { - container intf-items { - list VxlanInterfaceEntry-list { + // The MO represents member of ProviderGroup + container providerref-items { + list ProviderRef-list { key "name"; - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_VxlanInterfaceEntry-group; + uses aaa_ProviderRef-group; + description "Provider Group Member list"; } + description "Provider Group Member"; } } - grouping aggregate_VxlanInterfaceEntry-group { - leaf name { - type string; - } + grouping aaa_TacacsServerMonitor-group { + description "Periodic server monitoring for Radius/tacacs"; - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:VxlanInterfaceEntry->myTepStatus - // Type is an MO-Defined-Type - leaf myTepStatus { - config "false"; - description "MyTepStatus"; + leaf pwd { - // Type is an MO-Defined-Type - type aggregate_OperState; + type aaa_MonitoringPasswordType; + description "Password"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:VxlanInterfaceEntry->hostReachability - // Type is an MO-Defined-Type - leaf hostReachability { - config "false"; - description "HostReachability"; + leaf passwordType { - // Type is an MO-Defined-Type - type aggregate_HostReachabilityMode; - } - leaf controllerId { - type uint32; + type aaa_LdapPwdEnc; + description "Tacacs Server Monitor Password type"; } - // Inherited From aggregate:NveIntf - // Type is an MO-Defined-Type - leaf configSource { - config "false"; - description "configSource"; + leaf idleTime { - // Type is an MO-Defined-Type - type aggregate_ConfigSourceType; - } - leaf primaryTunnelIp { - config "false"; - type address_Ip; - } - leaf secondaryTunnelIp { - config "false"; - type address_Ip; + type aaa_IdleTimer; + description "Idle timer to monitor tacacs/radius server"; } - container localBfd-items { + leaf name { - // Added containment as a singleton: Prefix=localBfd - // Acquired From Package aggregate - uses aggregate_LocalBfd-group; - } - } + type pol_ObjName { - grouping aggregate_LocalBfd-group { - leaf mac { - config "false"; - type address_Mac; - } - leaf ip { - config "false"; - type address_Ip; + // Copied from "aaa:User" type + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_\\.-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minTxIntvl { - config "false"; - description "Desired Minimum TX Interval"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_MinTxIntvl; + type naming_Descr; + description "TBD"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minRxIntvl { - config "false"; - description "Desired Minimum RX Interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_MinRxIntvl; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_ShadowVxlanTable-group { - container intf-items { - list ShadowVxlanInterfaceEntry-list { - key "name"; + leaf descr { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_ShadowVxlanInterfaceEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping aggregate_ShadowVxlanInterfaceEntry-group { - leaf name { - type string; - } + grouping aaa_AuthRealm-group { + description "AAA Authentication"; - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->myTepStatus - // Type is an MO-Defined-Type - leaf myTepStatus { - config "false"; - description "MyTepStatus"; + // default role policy for remote user + leaf defRolePolicy { - // Type is an MO-Defined-Type - type aggregate_OperState; + type aaa_NoRolePolicy; + default "assign-default-role"; + description "Default Role Policy"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->hostReachability - // Type is an MO-Defined-Type - leaf hostReachability { - config "false"; - description "HostReachability"; + leaf radDirectedReq { - // Type is an MO-Defined-Type - type aggregate_HostReachabilityMode; - } - leaf controllerId { - type uint32; + type aaa_Boolean; + default "no"; + description "Enable direct authentication requests to server"; } - // Inherited From aggregate:NveIntf - // Modified by Override: aggregate:ShadowVxlanInterfaceEntry->configSource - // Type is an MO-Defined-Type - leaf configSource { - config "false"; - description "configSource"; + leaf tacDirectedReq { - // Type is an MO-Defined-Type - type aggregate_ConfigSourceType; - } - leaf primaryTunnelIp { - config "false"; - type address_Ip; + type aaa_Boolean; + default "no"; + description "Enable direct authentication requests to server"; } - leaf secondaryTunnelIp { - config "false"; - type address_Ip; + + // for aaa logging level + leaf loggingLevel { + + type aaa_LoggingLevel; + description "AAA Logging level"; } - } - grouping aggregate_TunnelIntfTable-group { - container intf-items { - list TunnelIntfEntry-list { - key "destIp"; + leaf name { - // Added containment: Prefix=intf - // Acquired From Package aggregate - uses aggregate_TunnelIntfEntry-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping aggregate_TunnelIntfEntry-group { - leaf description { - type string; + // Clients can add their own data for entity correlation + leaf ownerKey { + + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf ifId { - description "Unique tunnel interface Id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf type { - description "Indicate if the tunnel is of IPv4 or IPv6 type"; + leaf descr { - // Type is an MO-Defined-Type - type aggregate_TunnelType; - } - leaf srcIp { - type address_Ip; - } - leaf destIp { - type address_Ip; + type naming_Descr; + description "Description of the specified attribute"; } + container aaagroup-items { + list AaaServerGroup-list { + config "false"; + key "name"; - // Type is an MO-Defined-Type - leaf mtu { - description "Size of MTU on the tunnel interface"; - - // Type is an MO-Defined-Type - type aggregate_MTU; + uses aaa_AaaServerGroup-group; + description "Server groups list"; + } + description "Server groups"; } - // Type is an MO-Defined-Type - leaf state { - description "Operational state of the tunnel interface"; + // MO representing the Default Authentication configuration for + // all logins + container defaultauth-items { - // Type is an MO-Defined-Type - type aggregate_OperState; + uses aaa_DefaultAuth-group; + description "Default Authentication Method for all Logins"; } + container defaultauthor-items { + list DefaultAuthor-list { + key "cmdType"; - // Type is an MO-Defined-Type - leaf vrf { - description "The name of the VRF that is supported by this tunnel"; + uses aaa_DefaultAuthor-group; + description "Authorization Method for the domain list"; + } + description "Authorization Method for the domain"; + } + container consoleauthor-items { + list ConsoleAuthor-list { + key "cmdType"; - // Type is an MO-Defined-Type - type l3_VrfName; + uses aaa_ConsoleAuthor-group; + description "Console Authorization Method for the domain list"; + } + description "Console Authorization Method for the domain"; } - // Type is an MO-Defined-Type - leaf ipVnidBinding { - description "Indicates if the L3 VNID binding is established or not"; + container defaultacc-items { - // Type is an MO-Defined-Type - type aggregate_BooleanFlag; - } - leaf isTunnelCreated { - config "false"; - type boolean; - default "true"; - } - leaf isTunnelCreatedByController { - config "false"; - type boolean; - default "true"; - } - leaf noOfMacsSeenBeforeTunnelCreatedbyController { - config "false"; - type uint32; + uses aaa_DefaultAcc-group; + description "Accounting Method for the domain"; } - // Type is an MO-Defined-Type - leaf epType { - description "The type of the tunnel endpoint"; + container pkisshcert-items { - // Type is an MO-Defined-Type - type aggregate_EpType; + uses aaa_PkiSSHCertificate-group; + description "Authorization Method for the application"; } - container tunMacTable-items { + container pkisshpubkey-items { - // Added containment as a singleton: Prefix=tunMacTable - // Acquired From Package aggregate - uses aggregate_TunMacTable-group; + uses aaa_PkiSSHPublicKey-group; + description "Authorization Method for the application"; } - container vnidTable-items { + container loginstatuslogging-items { - // Added containment as a singleton: Prefix=vnidTable - // Acquired From Package aggregate - uses aggregate_VnidTable-group; + uses aaa_LoginStatusLogging-group; + description "Logging options for failed and successful login attempts"; } - container remoteBfd-items { + container authreject-items { - // Added containment as a singleton: Prefix=remoteBfd - // Acquired From Package aggregate - uses aggregate_RemoteBfd-group; + uses aaa_AuthReject-group; + description "Maximum number of rejected authentication attempts"; } + container bypassuser-items { + list ByPassUser-list { + key "userName"; - // Rel-def target from vtepAtt - // Inherited From aggregate:TunnelIntfEntry - container rtaggregateVtepAtt-items { + uses aaa_ByPassUser-group; + description "Option to bypass AAA for user list"; + } + description "Option to bypass AAA for user"; + } - // Abstract containment of rtaggregateVtepAtt derived from aggregate:TunnelIntfEntry - list RtAggregateVtepAtt-list { - config "false"; - key "tDn"; + // MO representing the Authentication configuration for Console + // Login + container consoleauth-items { - // Added containment: Prefix=rtaggregateVtepAtt - // Acquired From Package aggregate - uses aggregate_RtAggregateVtepAtt_target-group; - } + uses aaa_ConsoleAuth-group; + description "Console Authentication Method"; } - } - - grouping aggregate_TunMacTable-group { - // Rel-def from mac - container rsmac-items { + container rtfabricResAuthRealm-items { - // Abstract containment of rsmac derived from aggregate:TunMacTable - list RsMac-list { + list RtFabricResAuthRealm-list { config "false"; key "tDn"; - // Added containment: Prefix=rsmac - // Acquired From Package aggregate - uses aggregate_RsMac_source-group; + uses fabric_RtFabricResAuthRealm_target-group; } } } - grouping aggregate_VnidTable-group { - container vnid-items { - list VnidEntry-list { - key "vnid"; + grouping aaa_AaaServerGroup-group { + description "Server groups"; - // Added containment: Prefix=vnid - // Acquired From Package aggregate - uses aggregate_VnidEntry-group; - } - } - } + leaf name { + config "false"; - grouping aggregate_VnidEntry-group { - leaf vnid { - type string; + type aaa_ProviderGroupName; + description "server Group"; } - // Type is an MO-Defined-Type - leaf groupAddr { - description "GroupAddr"; + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type aggregate_GroupAddr; + type aaa_ProviderGroupProtocol; + description "server Group protocol"; } } - grouping aggregate_RemoteBfd-group { + grouping aaa_DefaultAuth-group { + description "Default Authentication Method for all Logins"; - // Type is an MO-Defined-Type - leaf bfdStatus { - description "Vnid"; + leaf name { - // Type is an MO-Defined-Type - type aggregate_BfdStatus; - } - leaf mac { - type address_Mac; - } - leaf ip { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type aggregate_MinTxIntvl; + type naming_Descr; + description "TBD"; } - // Inherited From aggregate:Bfd - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Desired Minimum RX Interval"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_MinRxIntvl; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - grouping aggregate_VlanTable-group { - - // Aggregate VlanEntry - container vlan-items { - list VlanEntry-list { - key "id"; + leaf descr { - // Added containment: Prefix=vlan - // Acquired From Package aggregate - uses aggregate_VlanEntry-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping aggregate_VlanEntry-group { - leaf id { - type string; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { + + type aaa_Realm; + description "Realm"; } - // Type is an MO-Defined-Type - leaf adminState { - description "AdminState"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type aggregate_AdminState; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping aggregate_VpcDomTable-group { - container vpcDom-items { - list VpcDomEntry-list { - key "domainId"; + leaf providerGroup2 { - // Added containment: Prefix=vpcDom - // Acquired From Package aggregate - uses aggregate_VpcDomEntry-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VpcDomEntry-group { - // Type is an MO-Defined-Type - leaf domainId { - description "The unique VPC domain Id"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type vpc_DomId; - } - leaf keepaliveDestIp { - type address_Ip; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf keepaliveSrcIp { - type address_Ip; + + leaf providerGroup4 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf virtualIp { - type address_Ip; + + leaf providerGroup5 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf keepaliveSts { - config "false"; - description "Keep alive status between the VPC pair switches"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type aggregate_VpcKeepaliveStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf peerLinkSts { - config "false"; - description "Peer Link Status between the VPC pair switches"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type aggregate_VpcPeerLinkStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf vpcRole { - config "false"; - description "Indicates if the switch is primary or secondary in the VPC pair"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type vpc_Role; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf peerGW { + leaf invalidUserLog { type boolean; + default "true"; + description "Enable logging for invalid users"; } - leaf dualActive { + leaf errEn { type boolean; + default "true"; + description "Enable display of error message on login failures"; } - // Type is an MO-Defined-Type - leaf peerLinkIf { - description "Port channel interface of the peer link"; + leaf authProtocol { - // Type is an MO-Defined-Type - type nw_IfId; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // VPCTAB - container vpcTable-items { + leaf fallback { - // Added containment as a singleton: Prefix=vpcTable - // Acquired From Package aggregate - uses aggregate_VpcTable-group; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; } - } - grouping aggregate_VpcTable-group { - container vpc-items { - list VpcEntry-list { - key "vpcnum"; + leaf local { - // Added containment: Prefix=vpc - // Acquired From Package aggregate - uses aggregate_VpcEntry-group; - } + type aaa_Boolean; + description "Use local username authentication"; + } + + leaf none { + + type aaa_Boolean; + default "no"; + description "No authentication"; } } - grouping aggregate_VpcEntry-group { + grouping aaa_DefaultAuthor-group { + description "Authorization Method for the domain"; - // Type is an MO-Defined-Type - leaf vpcnum { - description "Unique number identifying this Vpc pair"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type vpc_Id; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf ifId { - description "VPC port channel number"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "TBD"; } - // Type is an MO-Defined-Type - leaf operState { - description "Operationsl status of the VPC port channel"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type aggregate_VpcOperStatus; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type is an MO-Defined-Type - leaf consCheckSts { - config "false"; - description "Indication of whether consistency checks have passed or failed"; + leaf descr { - // Type is an MO-Defined-Type - type vpc_CompatSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf consCheckReason { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { config "false"; - description "Provides a reason why consistency check have failed"; - // Type is an MO-Defined-Type - type vpc_CompatQual; + type aaa_Realm; + default "tacacs"; + description "Realm"; } - container vpcintf-items { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Added containment as a singleton: Prefix=vpcintf - // Acquired From Package aggregate - uses aggregate_VpcIntfEntry-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VpcIntfEntry-group { - // Rel-def from vpcIntfEntryAtt - container rsvpcIntfEntryAtt-items { + leaf providerGroup2 { - // Added containment as a singleton: Prefix=rsvpcIntfEntryAtt - // Acquired From Package aggregate - uses aggregate_RsVpcIntfEntryAtt_source-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping aggregate_VrfTable-group { - container vrf-items { - list VrfEntry-list { - key "name"; + leaf providerGroup3 { - // Added containment: Prefix=vrf - // Acquired From Package aggregate - uses aggregate_VrfEntry-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping aggregate_VrfEntry-group { - // Type is an MO-Defined-Type - leaf name { - description "Name of the VRF instance"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type l3_VrfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf genName { - description "Generic name of the VRF instance"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type l3_VrfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Id of the controller this VRF is assigned to"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type aggregate_ControllerID; - } - leaf vnid { - type string; - } - leaf rd { - type mtx_array_community; - } - leaf genExtraRt { - type boolean; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf templateName { - type string; + + leaf providerGroup7 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf templateStatus { - config "false"; - description "Indicates the execution status of the config template"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type aggregate_ConfTmplStatus; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf shdwTemplateName { - config "false"; - type string; + leaf authorMethodNone { + type boolean; + description "No authorization"; } - leaf shdwVrfGenName { - config "false"; - type string; + leaf localRbac { + type boolean; + default "true"; + description "Use Local RBAC based Authorization"; } - // Domain (vrf) information - // - // - // - // - // - // - // - // - // - // List of route types - container af-items { - list DomainAf-list { - key "type"; + leaf cmdType { - // Added containment: Prefix=af - // Acquired From Package aggregate - uses aggregate_DomainAf-group; - } + type aaa_CmdType; + description "Type of command for authorization"; } } - grouping acl_Entity-group { + grouping aaa_ConsoleAuthor-group { + description "Console Authorization Method for the domain"; - // IPv4 and IPv6 port object-group - container oName-items { - list PortGroup-list { - key "name"; + leaf name { + config "false"; - // Added containment: Prefix=oName - // Acquired From Package acl - uses acl_PortGroup-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // MO: VLAN ACL - container vlan-items { - list VLANACL-list { - key "name"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=vlan - // Acquired From Package acl - uses acl_VLANACL-group; - } + type naming_Descr; + description "TBD"; } - // IPv4 - container mac-items { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment as a singleton: Prefix=mac - // Acquired From Package macacl - uses macacl_AF-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // IPv4 - container ipv4-items { + leaf descr { - // Added containment as a singleton: Prefix=ipv4 - // Acquired From Package ipv4acl - uses ipv4acl_AF-group; + type naming_Descr; + description "Description of the specified attribute"; } - // IPv6 - container ipv6-items { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { + config "false"; - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package ipv6acl - uses ipv6acl_AF-group; + type aaa_Realm; + default "tacacs"; + description "Realm"; } - } - grouping acl_PortGroup-group { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type - leaf name { - description "Object-group Name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Name; + leaf providerGroup2 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // IPv4 and IPv6 Port Object Group member - container seq-items { - list PortMember-list { - key "seqNum"; + leaf providerGroup3 { - // Added containment: Prefix=seq - // Acquired From Package acl - uses acl_PortMember-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_PortMember-group { + leaf providerGroup4 { - // port operator - // Type is an MO-Defined-Type - leaf portOp { - description "Source port operator"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Operator; + leaf providerGroup5 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // first port - // Type is an MO-Defined-Type - leaf port1 { - description "First source port"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_ProviderGroupName; + description "Provider Group"; } - // second port - // Type is an MO-Defined-Type - leaf port2 { - description "Second source port"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_ProviderGroupName; + description "Provider Group"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - description "config status"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_ProviderGroupName; + description "Provider Group"; + } + leaf authorMethodNone { + type boolean; + description "No authorization"; + } + leaf localRbac { + type boolean; + default "true"; + description "Use Local RBAC based Authorization"; } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf cmdType { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_CmdType; + description "Type of command for authorization"; } } - grouping acl_VLANACL-group { + grouping aaa_DefaultAcc-group { + description "Accounting Method for the domain"; - // VLAN ACL name - // Type is an MO-Defined-Type leaf name { - description "Vacl name"; - - // Type is an MO-Defined-Type - type acl_Name; - } - leaf maxseq { config "false"; - type uint32; - } - - // MO: VLAN sequence number - container seq-items { - list VLANSeq-list { - key "seqNum"; - // Added containment: Prefix=seq - // Acquired From Package acl - uses acl_VLANSeq-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // ==== MO: VLAN list ==== - // VLANList: - // /sys/acl/vlan-[foo]/vlanlist - // list: given arguments for vlan-list - // operation: indicate apply/remove - // listoper: vlan-list actual in effect. - // listerr: erroneous vlan-list, for fault purpose, updated via - // second trunk by aclmgr. - container vlanlist-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=vlanlist - // Acquired From Package acl - uses acl_VLANList-group; + type naming_Descr; + description "TBD"; } - } - grouping acl_VLANSeq-group { - leaf seqNum { - type uint32; - } - - // toggle per-entry statistics - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; - - // Type is an MO-Defined-Type - type acl_ACEStats; - } - - // MO: VLAN ACL match - // /sys/acl/vlan-[foo]/seq-30/match-[ip_ipv6_mac]-address-[acl1]/ - container match-items { - list VLANACLMatch-list { - key "acltype aclname"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=match - // Acquired From Package acl - uses acl_VLANACLMatch-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // MO: VLAN ACL action - // /sys/acl/vlan-[foo]/seq-30/action.log=[yes_no]/ - // /sys/acl/vlan-[foo]/seq-30/action.actiontype=[forward_redirect_drop]/ - // /sys/acl/vlan-[foo]/seq-30/action.redirectintf=[eth1/31_po1]/ - container action-items { + leaf descr { - // Added containment as a singleton: Prefix=action - // Acquired From Package acl - uses acl_VLANACLAction-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping acl_VLANACLMatch-group { - // Match ACL type: ip_ipv4_mac - // Type is an MO-Defined-Type - leaf acltype { - description "match acl type"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type acl_VAclMatchType; + type aaa_Realm; + description "Realm"; } - // Match ACL name - // Type is an MO-Defined-Type - leaf aclname { - description "match acl name"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type acl_Name; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_VLANACLAction-group { - - // forward_drop_redirect - // Type is an MO-Defined-Type - leaf actiontype { - description "VLAN ACL action forward or drop or redirect"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type acl_VAclActionType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // toggle log options - // Type is an MO-Defined-Type - leaf log { - description "Log option"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type acl_VAclLog; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf redirectintf { - description "Redirect Interfaces example, eth1/11 or po1"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type acl_IfName; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping acl_VLANList-group { - // Type is an MO-Defined-Type - leaf list { - description "VLAN or a list of VLANS example 1,2 or 2-4"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf operation { - description "Vlan Filter Operation apply or remove"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_operation; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf listoper { - description "Vlan List String oper after apply or remove"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Type is an MO-Defined-Type - leaf listerr { - config "false"; - description "Vlan List String error"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type acl_VlanListStr; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf timeStamp { - type string; + leaf accMethodNone { + type boolean; + default "true"; + description "No accounting"; + } + leaf localRbac { + type boolean; + default "true"; + description "Use Local"; } } - grouping macacl_AF-group { + grouping aaa_PkiSSHCertificate-group { + description "Authorization Method for the application"; + leaf local { + type boolean; + description "Use Local RBAC based Authorization"; + } - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; + type naming_Descr; + description "TBD"; } - // IPv4 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=name - // Acquired From Package macacl - uses macacl_ACL-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - - grouping acl_StatClear-group { - // StatClear ACL name - // Type is an MO-Defined-Type - leaf name { - description "ACL Name to clear the statistics"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf timeStamp { - type string; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping acl_Policy-group { - // Ingress directions - container ingress-items { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Added containment as a singleton: Prefix=ingress - // Acquired From Package acl - uses acl_Ingress-group; + type aaa_Realm; + description "Realm"; } - // Egress directions - container egress-items { + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Added containment as a singleton: Prefix=egress - // Acquired From Package acl - uses acl_Egress-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_Ingress-group { + leaf providerGroup2 { - // Target interface - container intf-items { - list If-list { - key "name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Added containment: Prefix=intf - // Acquired From Package acl - uses acl_If-group; - } + leaf providerGroup3 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - container vty-items { + leaf providerGroup4 { - // Added containment as a singleton: Prefix=vty - // Acquired From Package acl - uses acl_Vty-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_If-group { + leaf providerGroup5 { - // interface name string - // Type is an MO-Defined-Type - leaf name { - description "Interface to which ACL is applied"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_IfName; + leaf providerGroup6 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // ACL instance - container acl-items { + leaf providerGroup7 { - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl - uses acl_Inst-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - // port ACL instance - container portacl-items { + leaf providerGroup8 { - // Added containment as a singleton: Prefix=portacl - // Acquired From Package acl - uses acl_PortInst-group; + type aaa_ProviderGroupName; + description "Provider Group"; } } - grouping acl_Inst-group { + grouping aaa_PkiSSHPublicKey-group { + description "Authorization Method for the application"; + leaf local { + type boolean; + description "Use Local RBAC based Authorization"; + } - // Type is an MO-Defined-Type leaf name { - description "ACL name"; - // Type is an MO-Defined-Type - type acl_Name; - } - leaf configStatus { - config "false"; - type uint32; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - } - grouping acl_PortInst-group { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + type naming_Descr; + description "TBD"; + } - // Type is an MO-Defined-Type - type acl_Name; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf configStatus { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping acl_Vty-group { + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // ACL instance - container acl-items { + type aaa_Realm; + description "Realm"; + } - // Added containment as a singleton: Prefix=acl - // Acquired From Package acl - uses acl_Inst-group; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping acl_Egress-group { + leaf providerGroup2 { - // Target interface - container intf-items { - list If-list { - key "name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Added containment: Prefix=intf - // Acquired From Package acl - uses acl_If-group; - } + leaf providerGroup3 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - container vty-items { + leaf providerGroup4 { - // Added containment as a singleton: Prefix=vty - // Acquired From Package acl - uses acl_Vty-group; + type aaa_ProviderGroupName; + description "Provider Group"; } - } - grouping macacl_ACL-group { + leaf providerGroup5 { - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + type aaa_ProviderGroupName; + description "Provider Group"; + } - // Type is an MO-Defined-Type - type acl_Name; + leaf providerGroup6 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type acl_ACEStats; + type aaa_ProviderGroupName; + description "Provider Group"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { + leaf providerGroup8 { - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; + type aaa_ProviderGroupName; + description "Provider Group"; } + } - // IPv4 ACE - container seq-items { - list SEQ-list { - key "seqNum"; + grouping aaa_LoginStatusLogging-group { + description "Logging options for failed and successful login attempts"; + leaf enableLoginFailureLogging { + type boolean; + description "Syslog message on failed login attempt"; + } + leaf enableLoginSuccessLogging { + type boolean; + description "Syslog message on successful login attempt"; + } + } - // Added containment: Prefix=seq - // Acquired From Package macacl - uses macacl_SEQ-group; + grouping aaa_AuthReject-group { + description "Maximum number of rejected authentication attempts"; + leaf failAttempt { + type uint16 { + range "0..65535"; + } + description "Maximum number of failed attempts"; + } + leaf timeIntervel { + type uint16 { + range "0..65535"; + } + description "Time period for failed attempts"; + } + leaf blockTime { + type uint16 { + range "0..65535"; } + description "Block time period in seconds"; } } - grouping acl_Resequence-group { - leaf start { - type uint32; + grouping aaa_ByPassUser-group { + description "Option to bypass AAA for user"; + leaf userName { + type string { + length "1..28"; + } + description "Username to include for bypassing AAA"; } - leaf step { - type uint32; + leaf accounting { + type boolean; + description "By pass aaa accounting"; + } + leaf authorization { + type boolean; + description "By pass aaa authorization"; } } - grouping macacl_SEQ-group { + grouping aaa_ConsoleAuth-group { + description "Console Authentication Method"; - // ACE sequence number - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf name { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MAC ACE - container ace-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=ace - // Acquired From Package macacl - uses macacl_ACE-group; + type naming_Descr; + description "TBD"; } - // Remark ACE - container remark-items { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment as a singleton: Prefix=remark - // Acquired From Package macacl - uses macacl_Remark-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - } - - grouping macacl_ACE-group { - // protocol number - // Type is an MO-Defined-Type - leaf protocol { - description "protocol number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_MACProtocol; + type naming_Descr; + description "Description of the specified attribute"; } - // cos number - // Type is an MO-Defined-Type - leaf cos { - description "Cos number"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type acl_cosType; + type aaa_Realm; + description "Realm"; } - leaf redirect { - type string; + + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // time-range - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type acl_TimeRangeName; + type aaa_ProviderGroupName; + description "Provider Group"; } - // vlan number - // Type is an MO-Defined-Type - leaf vlan { - description "vlan number"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type acl_VlanType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // set-erspan-dscp- - // Type is an MO-Defined-Type - leaf erspanDscp { - description "dscp value"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type acl_erspanDscpType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // erspan gre proto - // Type is an MO-Defined-Type - leaf erspanGre { - description "dscp gre protocol"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type acl_erspanGreType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ACE filtering action - // Inherited From acl:L2ACE - // Type is an MO-Defined-Type - leaf action { - description "ACE action, permit or deny"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type acl_ActionType; + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf srcPrefix { - type address_Mac; + + leaf providerGroup7 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf srcPrefixMask { - type address_Mac; + + leaf providerGroup8 { + + type aaa_ProviderGroupName; + description "Provider Group"; } - leaf dstPrefix { - type address_Mac; + leaf invalidUserLog { + type boolean; + default "true"; + description "Enable logging for invalid users"; } - leaf dstPrefixMask { - type address_Mac; + leaf errEn { + type boolean; + default "true"; + description "Enable display of error message on login failures"; } - leaf packets { - config "false"; - type uint64; + + leaf authProtocol { + + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - } - grouping macacl_Remark-group { + leaf fallback { - // ACE sequence number - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; + } - // Type is an MO-Defined-Type - type acl_SequenceNumber; + leaf local { + + type aaa_Boolean; + default "no"; + description "Use local username authentication"; } - // remark - // Type is an MO-Defined-Type - leaf remark { - description "ACL entry commment"; + leaf none { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aaa_Boolean; + default "no"; + description "No authentication"; } } - grouping ipv4acl_AF-group { + grouping aaa_LoginDomain-group { + description "Login Domain"; - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9][a-zA-Z0-9_]{0,63}.*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { - - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; - } - - // IPv4 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=name - // Acquired From Package ipv4acl - uses ipv4acl_ACL-group; - } + type naming_Descr; + description "TBD"; } - // IPv4 address object-group - container oName-items { - list AddrGroup-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=oName - // Acquired From Package ipv4acl - uses ipv4acl_AddrGroup-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - } - grouping ipv4acl_ACL-group { - - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "Description of the specified attribute"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + // MO representing the Authentication configuration for + // a domain login - this is always a child of a LoginDomain object + container domainauth-items { - // Type is an MO-Defined-Type - type acl_ACEStats; - } - leaf configStatus { - config "false"; - type uint32; + uses aaa_DomainAuth-group; + description "Authentication Method for the Domain"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { - - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; - } + container rtaaaLoginDomain-items { - // IPv4 ACE - container seq-items { - list ACE-list { - key "seqNum"; + list RtAaaLoginDomain-list { + config "false"; + key "tDn"; - // Added containment: Prefix=seq - // Acquired From Package ipv4acl - uses ipv4acl_ACE-group; + uses aaa_RtAaaLoginDomain_target-group; } } } - grouping ipv4acl_ACE-group { + grouping aaa_DomainAuth-group { + description "Authentication Method for the Domain"; - // protocol to match - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf name { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Protocol Mask - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type naming_Descr; + description "TBD"; } - // source prefix - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // source prefix wildcard mask - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + leaf descr { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type naming_Descr; + description "Description of the specified attribute"; } - // source prefix length - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + // The realm to be used for processing + // authentication/accounting requests + leaf realm { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + // Type is a Local-MO-Defined-Type + type aaa_Realm_DomainAuth_realm; + description "Realm"; } - // destination prefix - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type aaa_ProviderGroupName; + description "Provider Group"; } - // destination prefix wildcard mask - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type aaa_ProviderGroupName; + description "Provider Group"; } - // destination prefix length - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type aaa_ProviderGroupName; + description "Provider Group"; } - // precedence - // Type is an MO-Defined-Type - leaf precedence { - description "IPv4 precedence"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type ipv4acl_Precedence; - } - leaf ttl { - type uint8; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP Str - // Type is an MO-Defined-Type - leaf icmpStr { - description "ICMP type"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPEnum; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP type - // Type is an MO-Defined-Type - leaf icmpType { - description "ICMP type"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPType; + type aaa_ProviderGroupName; + description "Provider Group"; } - // ICMP code - // Type is an MO-Defined-Type - leaf icmpCode { - description "ICMP code"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type ipv4acl_ICMPCode; + type aaa_ProviderGroupName; + description "Provider Group"; } - // tos - // Type is an MO-Defined-Type - leaf tos { - description "capture session"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type ipv4acl_Tos; + type aaa_ProviderGroupName; + description "Provider Group"; + } + leaf invalidUserLog { + type boolean; + default "true"; + description "Enable logging for invalid users"; + } + leaf errEn { + type boolean; + default "true"; + description "Enable display of error message on login failures"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - description "config status"; + leaf authProtocol { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_authenticationProtocol; + default "pap"; + description "Authentication Protocol"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf fallback { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aaa_Boolean; + description "Fallback in case all AAA servers configured for remote authentication are unreachable"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf local { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_Boolean; + description "Use local username authentication"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf none { - // Type is an MO-Defined-Type - type acl_ActionType; + type aaa_Boolean; + default "no"; + description "No authentication"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + // MO representing the Default Authentication configuration for + // all logins + container defaultauth-items { - // Type is an MO-Defined-Type - type acl_Operator; + uses aaa_DefaultAuth-group; + description "Default Authentication Method for all Logins"; } - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + // MO representing the Authentication configuration for Console + // Login + container consoleauth-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aaa_ConsoleAuth-group; + description "Console Authentication Method"; } + } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + grouping aaa_LoginProtection-group { + description "Specifies the System login block for attempts and within"; + leaf loginBlockTimeOnDoSAttack { + type uint32 { + range "0..65535"; + } + description "system login block time in seconds"; + } + leaf loginAttempts { + type uint32 { + range "0..65535"; + } + description "system login fail attempts value"; + } + leaf loginAttemptsFailureThreshold { + type uint32 { + range "0..65535"; + } + description "system login watch period for fail attempts"; + } + leaf loginAccessList { + type string { + length "0..64"; + } + description "configuration for system login access list name"; } + } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + grouping aaa_PostLoginBanner-group { + description "Post Login Banner"; - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Operator; + type naming_Descr; + description "TBD"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_PortNumber; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_PortNumber; + type naming_Descr; + description "Description of the specified attribute"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf message { - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; - } + type aaa_BannerMsg; + description "Login Banner Message"; } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + leaf guiMessage { - // Type is an MO-Defined-Type - type acl_Operator; + type aaa_BannerMsg; + description "Login GUI Message"; } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + leaf delimiter { - // Type is an MO-Defined-Type - type acl_PktLen; + type aaa_Delimiter; + description "Delimiter character"; } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aaa_PreLoginBanner-group { + description "Pre Login Banner"; - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; - } - leaf rev { - type boolean; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; - } - leaf packets { - config "false"; - type uint64; - } - leaf fragment { - type boolean; + type naming_Descr; + description "TBD"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_CaptureSes; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf descr { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type naming_Descr; + description "Description of the specified attribute"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + leaf message { - // Type is an MO-Defined-Type - type acl_VniType; + type aaa_BannerMsg; + description "Login Banner Message"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + leaf guiMessage { - // Type is an MO-Defined-Type - type acl_VlanType; + type aaa_BannerMsg; + description "Login GUI Message"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf delimiter { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type aaa_Delimiter; + description "Delimiter character"; } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + container rtpreLoginBanner-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aaa_RtPreLoginBanner_target-group; } + } - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + grouping aaa_RemoteUser-group { + description "Remote User"; - // Type is an MO-Defined-Type - type acl_Name; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_][a-zA-Z0-9_\\.@-]{0,31}.*"; + } + description "Name of the given attribute"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "TBD"; } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type naming_Descr; + description "Description of the specified attribute"; } + container userdomain-items { + list RemoteUserDomain-list { + config "false"; + key "name"; - // UDF - container udf-items { - - // Added containment as a singleton: Prefix=udf - // Acquired From Package ipv4acl - uses ipv4acl_UDF-group; + uses aaa_RemoteUserDomain-group; + description "Remote User Domain list"; + } + description "Remote User Domain"; } } - grouping ipv4acl_UDF-group { + grouping aaa_RemoteUserDomain-group { + description "Remote User Domain"; - // supports at most 18 UDF udf1 Name - // Type is an MO-Defined-Type - leaf udf1Name { - description "User-defined field match 1"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf1 Value - // Type is an MO-Defined-Type - leaf udf1Val { - description "UDF1 value to match"; + // Clients can add their own data for entity correlation + leaf ownerKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "TBD"; } - // udf1 Mask - // Type is an MO-Defined-Type - leaf udf1Mask { - description "Mask to apply to UDF1 value"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf2 Name - // Type is an MO-Defined-Type - leaf udf2Name { - description "User-defined field match 2"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "Description of the specified attribute"; } + container role-items { + list RemoteUserRole-list { + config "false"; + key "name"; - // udf2 Value - // Type is an MO-Defined-Type - leaf udf2Val { - description "UDF2 value to match"; - - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_RemoteUserRole-group; + description "Remote User Role list"; + } + description "Remote User Role"; } + } - // udf2 Mask - // Type is an MO-Defined-Type - leaf udf2Mask { - description "Mask to apply to UDF2 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + grouping aaa_RemoteUserRole-group { + description "Remote User Role"; - // udf3 Name - // Type is an MO-Defined-Type - leaf udf3Name { - description "User-defined field match 3"; + leaf privType { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UserRolePrivType; + description "Privilege Type"; } - // udf3 Value - // Type is an MO-Defined-Type - leaf udf3Val { - description "UDF3 value to match"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf3 Mask - // Type is an MO-Defined-Type - leaf udf3Mask { - description "Mask to apply to UDF3 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf4 Name - // Type is an MO-Defined-Type - leaf udf4Name { - description "User-defined field match 4"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf4 Value - // Type is an MO-Defined-Type - leaf udf4Val { - description "UDF4 value to match"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf4 Mask - // Type is an MO-Defined-Type - leaf udf4Mask { - description "Mask to apply to UDF4 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + grouping aaa_User-group { + description "Local User"; - // udf5 Name - // Type is an MO-Defined-Type - leaf udf5Name { - description "User-defined field match 5"; + // The user's first name + leaf firstName { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Name256 { + length "0..32"; + } + description "First Name"; } - // udf5 Value - // Type is an MO-Defined-Type - leaf udf5Val { - description "UDF5 value to match"; + // The user's last name + leaf lastName { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Name256 { + length "0..32"; + } + description "Last Name"; } - // udf5 Mask - // Type is an MO-Defined-Type - leaf udf5Mask { - description "Mask to apply to UDF5 value"; + // The user's e-mail address + leaf email { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Email; + description "Email Address"; } - // udf6 Name - // Type is an MO-Defined-Type - leaf udf6Name { - description "User-defined field match 6"; + // The user's phone number + leaf phone { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_Phone; + description "Phone Number"; } - // udf6 Value - // Type is an MO-Defined-Type - leaf udf6Val { - description "UDF6 value to match"; + // The expiration date of this account + // Default value handled in local MO type + leaf expiration { - // Type is an MO-Defined-Type - type acl_UdfVal; + // Type is a Local-MO-Defined-Type + type aaa_Date_User_expiration; + description "Account Expiration Date"; } - // udf6 Mask - // Type is an MO-Defined-Type - leaf udf6Mask { - description "Mask to apply to UDF6 value"; + // A boolean value indicating whether this account has an expiration date or not + leaf expires { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Boolean; + default "no"; + description "Expiration Set Status"; } - // udf7 Name - // Type is an MO-Defined-Type - leaf udf7Name { - description "User-defined field match 7"; + leaf allowExpired { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_Boolean; + default "no"; + description "Allow expired user to be configured"; } - // udf7 Value - // Type is an MO-Defined-Type - leaf udf7Val { - description "UDF7 value to match"; + leaf accountStatus { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_AccountStatus; + description "Account Status"; } - // udf7 Mask - // Type is an MO-Defined-Type - leaf udf7Mask { - description "Mask to apply to UDF7 value"; + leaf pwd { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Passwd; + description "Password"; } - // udf8 Name - // Type is an MO-Defined-Type - leaf udf8Name { - description "User-defined field match 8"; + leaf pwdEncryptType { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_KeyEncUserPass; + default "Encrypt"; + description "Password Encryption Type"; } - // udf8 Value - // Type is an MO-Defined-Type - leaf udf8Val { - description "UDF8 value to match"; + leaf pwdLifeTime { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_PwdLifeTime; + description "Password Life Time"; } - // udf8 Mask - // Type is an MO-Defined-Type - leaf udf8Mask { - description "Mask to apply to UDF8 value"; + // This is to allow the admin/aaa users to clear + // locally-authenticated users's password history + leaf clearPwdHistory { - // Type is an MO-Defined-Type - type acl_UdfMask; + type aaa_Clear; + description "Clear Password History"; } - // udf9 Name - // Type is an MO-Defined-Type - leaf udf9Name { - description "User-defined field match 9"; + leaf unixUserId { - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UnixUID; + description "TBD"; } - // udf9 Value - // Type is an MO-Defined-Type - leaf udf9Val { - description "UDF9 value to match"; + leaf shelltype { - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_loginShellType; + description "User Shelltype Access"; } - // udf9 Mask - // Type is an MO-Defined-Type - leaf udf9Mask { - description "Mask to apply to UDF9 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; - } + leaf name { - // udf10 Name - // Type is an MO-Defined-Type - leaf udf10Name { - description "User-defined field match 10"; + type pol_ObjName { - // Type is an MO-Defined-Type - type acl_UdfName; + // Copied from "aaa:UserName" type + length "0..64"; + pattern ".*[a-zA-Z0-9_][a-zA-Z0-9_\\.'-\\\\\\+=$@]{0,31}.*"; + } + description "Name of the given attribute"; } - // udf10 Value - // Type is an MO-Defined-Type - leaf udf10Val { - description "UDF10 value to match"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "TBD"; } - // udf10 Mask - // Type is an MO-Defined-Type - leaf udf10Mask { - description "Mask to apply to UDF10 value"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf11 Name - // Type is an MO-Defined-Type - leaf udf11Name { - description "User-defined field match 11"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "Description of the specified attribute"; } - // udf11 Value - // Type is an MO-Defined-Type - leaf udf11Val { - description "UDF11 value to match"; + container sshcertauth-items { - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_SshCertAuth-group; + description "Certificate Based User Authentication"; } + container userkey-items { + list UserSshKey-list { + key "type"; - // udf11 Mask - // Type is an MO-Defined-Type - leaf udf11Mask { - description "Mask to apply to UDF11 value"; - - // Type is an MO-Defined-Type - type acl_UdfMask; + uses aaa_UserSshKey-group; + description "Ssh Keys list"; + } + description "Ssh Keys"; } - // udf12 Name - // Type is an MO-Defined-Type - leaf udf12Name { - description "User-defined field match 12"; + container sshauth-items { - // Type is an MO-Defined-Type - type acl_UdfName; + uses aaa_SshAuth-group; + description "SSH Authorization"; } + container usercert-items { + list UserCert-list { + key "name"; - // udf12 Value - // Type is an MO-Defined-Type - leaf udf12Val { - description "UDF12 value to match"; + uses aaa_UserCert-group; + description "X509 Certificate list"; + } + description "X509 Certificate"; + } + container userdomain-items { + list UserDomain-list { + key "name"; - // Type is an MO-Defined-Type - type acl_UdfVal; + uses aaa_UserDomain-group; + description "User Domain list"; + } + description "User Domain"; } - // udf12 Mask - // Type is an MO-Defined-Type - leaf udf12Mask { - description "Mask to apply to UDF12 value"; + // Do not taking backup of this MO, this user data become invalid + // with time + container userdata-items { - // Type is an MO-Defined-Type - type acl_UdfMask; + uses aaa_UserData-group; + description "User Password Change History"; } + } - // udf13 Name - // Type is an MO-Defined-Type - leaf udf13Name { - description "User-defined field match 13"; - - // Type is an MO-Defined-Type - type acl_UdfName; + grouping aaa_SshCertAuth-group { + description "Certificate Based User Authentication"; + leaf certDn { + type string { + length "0..512"; + } + description "Distinguished Name For SSH X.509 Certificate"; + } + leaf algorithm { + type string { + length "0..4"; + } + description "DSA Or RSA Algorithm"; } - // udf13 Value - // Type is an MO-Defined-Type - leaf udf13Val { - description "UDF13 value to match"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf13 Mask - // Type is an MO-Defined-Type - leaf udf13Mask { - description "Mask to apply to UDF13 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf14 Name - // Type is an MO-Defined-Type - leaf udf14Name { - description "User-defined field match 14"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf14 Value - // Type is an MO-Defined-Type - leaf udf14Val { - description "UDF14 value to match"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf14 Mask - // Type is an MO-Defined-Type - leaf udf14Mask { - description "Mask to apply to UDF14 value"; + grouping aaa_UserSshKey-group { + description "Ssh Keys"; - // Type is an MO-Defined-Type - type acl_UdfMask; + leaf type { + + type comm_SshKeyType; + description "SSH server key type"; + } + leaf keyLen { + type uint32 { + range "0..4096"; + } + default "1024"; + description "Length of the key in bytes"; } + } - // udf15 Name - // Type is an MO-Defined-Type - leaf udf15Name { - description "User-defined field match 15"; + grouping aaa_SshAuth-group { + description "SSH Authorization"; - // Type is an MO-Defined-Type - type acl_UdfName; + leaf data { + + type aaa_SshData; + description "Ssh Authorization Data"; } - // udf15 Value - // Type is an MO-Defined-Type - leaf udf15Val { - description "UDF15 value to match"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfVal; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf15 Mask - // Type is an MO-Defined-Type - leaf udf15Mask { - description "Mask to apply to UDF15 value"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "TBD"; } - // udf16 Name - // Type is an MO-Defined-Type - leaf udf16Name { - description "User-defined field match 16"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf16 Value - // Type is an MO-Defined-Type - leaf udf16Val { - description "UDF16 value to match"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr; + description "Description of the specified attribute"; } + } - // udf16 Mask - // Type is an MO-Defined-Type - leaf udf16Mask { - description "Mask to apply to UDF16 value"; + grouping aaa_UserCert-group { + description "X509 Certificate"; - // Type is an MO-Defined-Type - type acl_UdfMask; + leaf data { + + type aaa_UserCertDataType; + description "User X509 Certificate"; + } + leaf fingerprint { + config "false"; + type string; } - // udf17 Name - // Type is an MO-Defined-Type - leaf udf17Name { - description "User-defined field match 17"; + // Populated with the output of openssl output of the x509 certificate analysis + leaf certificateDecodeInformation { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfName; + type aaa_UserCertDataType; + description "TBD"; } - // udf17 Value - // Type is an MO-Defined-Type - leaf udf17Val { - description "UDF17 value to match"; + // Populated with the PEM format public key extracted from the x509 certificate + leaf publicKey { + config "false"; - // Type is an MO-Defined-Type - type acl_UdfVal; + type aaa_UserCertDataType; + description "TBD"; } - // udf17 Mask - // Type is an MO-Defined-Type - leaf udf17Mask { - description "Mask to apply to UDF17 value"; + leaf name { - // Type is an MO-Defined-Type - type acl_UdfMask; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // udf18 Name - // Type is an MO-Defined-Type - leaf udf18Name { - description "User-defined field match 18"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_UdfName; + type naming_Descr; + description "TBD"; } - // udf18 Value - // Type is an MO-Defined-Type - leaf udf18Val { - description "UDF18 value to match"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_UdfVal; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // udf18 Mask - // Type is an MO-Defined-Type - leaf udf18Mask { - description "Mask to apply to UDF18 value"; + leaf descr { - // Type is an MO-Defined-Type - type acl_UdfMask; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv4acl_AddrGroup-group { + grouping aaa_UserDomain-group { + description "User Domain"; - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type leaf name { - description "Object-group Name"; - - // Type is an MO-Defined-Type - type acl_Name; - } - // IPv4 Address Object Group member - container seq-items { - list AddrMember-list { - key "seqNum"; - - // Added containment: Prefix=seq - // Acquired From Package ipv4acl - uses ipv4acl_AddrMember-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; } + description "Name of the given attribute"; } - } - grouping ipv4acl_AddrMember-group { - - // prefix - // Type is an MO-Defined-Type - leaf prefix { - description "IPv4 prefix"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type naming_Descr; + description "TBD"; } - // prefix wildcard mask - // Type is an MO-Defined-Type - leaf prefixMask { - description "IPv4 prefix mask"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // prefix length - // Type is an MO-Defined-Type - leaf prefixLength { - description "IPv4 prefix length"; + leaf descr { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type naming_Descr; + description "Description of the specified attribute"; } + container role-items { + list UserRole-list { + key "name"; - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; - - // Type is an MO-Defined-Type - type acl_ConfigState; + uses aaa_UserRole-group; + description "User Role list"; + } + description "User Role"; } + } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + grouping aaa_UserRole-group { + description "User Role"; - // Type is an MO-Defined-Type - type acl_SequenceNumber; - } - } + leaf privType { - grouping ipv6acl_AF-group { + type aaa_UserRolePrivType; + description "Privilege Type"; + } - container statClear-items { + leaf name { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package acl - uses acl_StatClear-group; + type pol_ObjName { + length "0..64"; + pattern ".*"; + } + description "Name of the given attribute"; } - // ACL policies - container policy-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=policy - // Acquired From Package acl - uses acl_Policy-group; + type naming_Descr; + description "TBD"; } - // IPv6 ACL - container name-items { - list ACL-list { - key "name"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=name - // Acquired From Package ipv6acl - uses ipv6acl_ACL-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // IPv6 address object-group - container oName-items { - list AddrGroup-list { - key "name"; + leaf descr { - // Added containment: Prefix=oName - // Acquired From Package ipv6acl - uses ipv6acl_AddrGroup-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv6acl_ACL-group { + grouping aaa_UserData-group { + description "User Password Change History"; + leaf pwdChangedDate { + config "false"; + type union { + type string; + type uint64; + } + description "Password Change Date"; + } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + // User password history, stores encrypted passwords + // max of PwdProfile.historyCount recent passwords are stored + leaf pwdHistory { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aaa_PwdHistory; + description "Password History"; } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + // How many times user has changed the password within + // the given time interval + // (pwdChangeIntervalBegin + PwdProfile.changeInterval) + leaf pwdChangeCount { + config "false"; - // Type is an MO-Defined-Type - type acl_ACEStats; + type aaa_PwdChangeCount; + description "Password Change Count"; } - leaf configStatus { + leaf pwdChangeIntervalBegin { config "false"; - type uint32; + type union { + type string; + type uint64; + } + description "Password Change Interval Begin Date"; } - // End of Layer 3 ACE (abstract MO) resequnce MO - container reseq-items { + leaf name { - // Added containment as a singleton: Prefix=reseq - // Acquired From Package acl - uses acl_Resequence-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // IPv6 ACE - container seq-items { - list ACE-list { - key "seqNum"; - - // Added containment: Prefix=seq - // Acquired From Package ipv6acl - uses ipv6acl_ACE-group; - } - } - } - - grouping ipv6acl_ACE-group { - - // protocol to match - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type ipv6acl_Protocol; + type naming_Descr; + description "TBD"; } - // Protocol Mask - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type ipv6acl_Protocol; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // source prefix - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv6 prefix"; + leaf descr { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type naming_Descr; + description "Description of the specified attribute"; } + } - // source prefix wildcard mask - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv6 prefix mask"; - - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; - } + grouping aaa_Role-group { + description "Role"; - // source prefix length - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv6 prefix length"; + leaf denyVRF { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_Boolean; + default "no"; + description "Deny all VRF except allowed ones"; } - // destination prefix - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv6 prefix"; + leaf allowedVRF { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type aaa_RuleEntityType; + description "mention the allowed VRF if denyVRF is set to yes"; } - // destination prefix wildcard mask - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv6 prefix mask"; + leaf denyVLAN { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; + type aaa_Boolean; + default "no"; + description "Deny all VLAN except allowed ones"; } - // destination prefix length - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv6 prefix length"; + leaf allowedVLAN { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_RuleEntityType; + description "mention the allowed VLAN if denyVLAN is set to yes"; } - // flow-label - // Type is an MO-Defined-Type - leaf flowLabel { - description "Flow label"; + leaf denyIntf { - // Type is an MO-Defined-Type - type ipv6acl_FlowLabel; + type aaa_Boolean; + default "no"; + description "Deny all interfaces except allowed ones"; + } + leaf priv { + type string; + description "Privilege"; } - // ICMP Str - // Type is an MO-Defined-Type - leaf icmpStr { - description "ICMPv6 Str"; + leaf rolePrivType { - // Type is an MO-Defined-Type - type ipv6acl_ICMPEnum; + type aaa_UserRolePrivType; + description "Privilege Type"; } - // ICMP type - // Type is an MO-Defined-Type - leaf icmpType { - description "ICMPv6 type"; + leaf resetToFactory { - // Type is an MO-Defined-Type - type ipv6acl_ICMPType; + type aaa_Boolean; + default "no"; + description "Trigger Reset to Factory settings"; } - // ICMP code - // Type is an MO-Defined-Type - leaf icmpCode { - description "ICMPv6 code"; + leaf name { - // Type is an MO-Defined-Type - type ipv6acl_ICMPCode; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_ConfigState; + type naming_Descr; + description "TBD"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf descr { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type naming_Descr { + length "0..128"; + pattern ".*"; + } + description "Description of the specified attribute"; } + container rule-items { + list RoleRule-list { + key "ruleNumber"; - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; - - // Type is an MO-Defined-Type - type acl_ActionType; + uses aaa_RoleRule-group; + description "Rules for role list"; + } + description "Rules for role"; } + container intf-items { + list RoleIntf-list { + key "intfName"; - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + uses aaa_RoleIntf-group; + description "Permit specific interface name and deny rest list"; + } + description "Permit specific interface name and deny rest"; + } + container permitintf-items { + list PermitIntf-list { + key "ifName"; - // Type is an MO-Defined-Type - type acl_Operator; + uses aaa_PermitIntf-group; + description "Enter the range of interfaces accessible the role list"; + } + description "Enter the range of interfaces accessible the role"; } + container permitvlan-items { + list PermitVlan-list { + key "vlanRange"; - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + uses aaa_PermitVlan-group; + description "Enter the range of vlans accessible the role list"; + } + description "Enter the range of vlans accessible the role"; + } + container permitvrf-items { + list PermitVrf-list { + key "vrfName"; - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aaa_PermitVrf-group; + description "Enter the range of vrf accessible the role list"; + } + description "Enter the range of vrf accessible the role"; } + } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; + grouping aaa_RoleRule-group { + description "Rules for role"; - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf ruleNumber { + + type aaa_RuleNumberType; + description "Role Rule number"; } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + leaf permission { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RulePermissionType; + description "Permission type permit or deny"; } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + leaf ruleAccess { - // Type is an MO-Defined-Type - type acl_Operator; + type aaa_RuleAccessType; + description "Rule access type command or read or read-write"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + leaf ruleScope { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RuleScopeType; + description "Role Rule scope feature or feature-group or OID"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf cmdStr { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aaa_RuleCmdStrType; + description "Allowed command string pattern"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf scopeEntity { - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; - } + type aaa_RuleEntityType; + description "Allowed scope string"; } + } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; - - // Type is an MO-Defined-Type - type acl_Operator; + grouping aaa_RoleIntf-group { + description "Permit specific interface name and deny rest"; + leaf intfName { + type string; + description "interface name which can be allowed and deny rest"; } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + leaf allowInst { - // Type is an MO-Defined-Type - type acl_PktLen; + type aaa_RuleEntityType; + description "interface instances which can be allowed and deny rest"; } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aaa_PermitIntf-group { + description "Enter the range of interfaces accessible the role"; - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; + leaf ifName { + + type nw_IfId; + description "Enter the interface range"; } - leaf rev { - type boolean; + } + + grouping aaa_PermitVlan-group { + description "Enter the range of vlans accessible the role"; + leaf vlanRange { + type string; + description "Enter the vlan range"; } + } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + grouping aaa_PermitVrf-group { + description "Enter the range of vrf accessible the role"; - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; + leaf vrfName { + + type aaa_RuleEntityType { + pattern ".*[-a-zA-Z0-9_:;!@#$\\^\\*=\\+\\{\\}\\.]{1,32}.*"; + } + description "Enter the vrf name to access the role"; } - leaf packets { + } + + grouping aaa_FactoryRole-group { + description "Role"; + leaf priv { config "false"; - type uint64; - } - leaf fragment { - type boolean; + type string; + description "Privilege"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf resetToFactory { - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aaa_Boolean; + default "no"; + description "Trigger Reset to Factory settings"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf name { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_VniType; + type naming_Descr; + description "TBD"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_VlanType; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf descr { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type naming_Descr; + description "Description of the specified attribute"; } + } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; - - // Type is an MO-Defined-Type - type acl_Name; - } + grouping aaa_Domain-group { + description "Security Domain"; - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + leaf name { - // Type is an MO-Defined-Type - type acl_Name; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z][a-zA-Z0-9_\\.-]{0,31}.*"; + } + description "Name of the given attribute"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr; + description "TBD"; } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type acl_Name; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf descr { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping ipv6acl_AddrGroup-group { + grouping aaa_PrivSecret-group { + description "Enable user to a higher privilege after prompting for secret password"; - // object-group name - // Inherited From acl:OGroup - // Type is an MO-Defined-Type - leaf name { - description "Object-group Name"; + leaf pwd { - // Type is an MO-Defined-Type - type acl_Name; + type aaa_Passwd; + description "Password for user privilege escalation"; } - // IPv6 Address Object Group member - container seq-items { - list AddrMember-list { - key "seqNum"; + leaf encType { - // Added containment: Prefix=seq - // Acquired From Package ipv6acl - uses ipv6acl_AddrMember-group; - } + type aaa_SecretEncType; + description "Type of encryption specified"; + } + + leaf privLvl { + + type aaa_PrivLvlType; + description "Privilege level to which the password is set"; } } - grouping ipv6acl_AddrMember-group { + grouping aaa_PwdProfile-group { + description "Password Change/Expiration Policy"; - // prefix - // Type is an MO-Defined-Type - leaf prefix { - description "IPv6 prefix"; + // Interval used to warn the users whose password is closed + // to expiry date. warn the user before expirationWarnTime + // days of actual password expiration. + leaf expirationWarnTime { - // Type is an MO-Defined-Type - type ipv6acl_IPv6Prefix; + type aaa_PwdExpWarnTime; + description "Password Expiration Warn Time in Days"; } - // prefix wildcard mask - // Type is an MO-Defined-Type - leaf prefixMask { - description "IPv6 prefix mask"; + // How many recent user passwords should be stored in user + // password history. + leaf historyCount { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixMask; + type aaa_HistoryDepth; + description "Password History Count"; } - // prefix length - // Type is an MO-Defined-Type - leaf prefixLength { - description "IPv6 prefix length"; + // There are two ways of restricting the user from changing + // the password frequently. + // 1. allow no passwd changes within given time interval. + // 2. allow max of n psswd changes within give time interval. + // noChangeInterval holds the 1st policy mentioned above + leaf noChangeInterval { - // Type is an MO-Defined-Type - type ipv6acl_IPv6PrefixLen; + type aaa_PwdChangeInterval; + description "No Password Change Interval in Hours"; } - // configState - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "config status"; + // ChangeInterval holds the 2nd policy mentioned above + leaf changeInterval { - // Type is an MO-Defined-Type - type acl_ConfigState; + type aaa_PwdChangeInterval; + description "Change Interval in Hours"; } - // Object Group Member sequence number - // Inherited From acl:OMember - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + // stores which one of the above two policies is active now + leaf changeDuringInterval { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aaa_PwdPolicy; + description "Password Policy"; } - } - grouping actrl_Entity-group { + // How many password changes allowed within changeInterval + leaf changeCount { + + type aaa_PwdChangeCount; + description "Number of Password Changes in Interval"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "TBD"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // The object contains the auxillary state of the process, used - // for internal information - container aux-items { + leaf descr { - // Added containment as a singleton: Prefix=aux - // Acquired From Package actrl - uses actrl_AuxSt-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Filter rules identifying a group of filter entries - container filt-items { - list Flt-list { - config "false"; - key "id"; - - // Added containment: Prefix=filt - // Acquired From Package actrl - uses actrl_Flt-group; + grouping aaa_RoleFeatureGroup-group { + description "Create or Modify role feature group"; + leaf groupName { + type string { + length "1..32"; } + description "Enter feature-group name"; } - // Holds actrl instance information - container inst-items { + // Feature name configuration + container featurename-items { + list FeatureName-list { + key "name"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package actrl - uses actrl_Inst-group; + uses aaa_FeatureName-group; + description "Add features to the Feature-group list"; + } + description "Add features to the Feature-group"; } + } - // Holds the scope of the zoning rules - container scope-items { - list Scope-list { - config "false"; - key "id"; - - // Added containment: Prefix=scope - // Acquired From Package actrl - uses actrl_Scope-group; + grouping aaa_FeatureName-group { + description "Add features to the Feature-group"; + leaf name { + type string { + length "1..32"; } + description "Enter the feature name"; } } - grouping actrl_AuxSt-group { + grouping pki_Ep-group { + description "Public Key Management"; - // Inherited From nw:CpSt - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Scope auxillary information - container scope-items { - list AuxScope-list { - config "false"; - key "id"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment: Prefix=scope - // Acquired From Package actrl - uses actrl_AuxScope-group; - } + type naming_Descr; + description "TBD"; } - // Rule auxillary information - container rule-items { - list AuxRule-list { - config "false"; - key "id"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rule - // Acquired From Package actrl - uses actrl_AuxRule-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Filter auxillary information - container flt-items { - list AuxFlt-list { - config "false"; - key "id"; + leaf descr { - // Added containment: Prefix=flt - // Acquired From Package actrl - uses actrl_AuxFlt-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // MgmtRule auxillary information - container mgmtrule-items { - list MgmtAuxRule-list { - config "false"; - key "id"; + container webtokendata-items { - // Added containment: Prefix=mgmtrule - // Acquired From Package actrl - uses actrl_MgmtAuxRule-group; - } + uses pki_WebTokenData-group; + description "Web Token Data"; } - // Filter auxillary information - container mgmtauxflt-items { - list MgmtAuxFlt-list { - config "false"; - key "id"; + // Csync2 Pre Shared Key - used to distribute the key to all IFC nodes + container csyncsharedkey-items { - // Added containment: Prefix=mgmtauxflt - // Acquired From Package actrl - uses actrl_MgmtAuxFlt-group; - } + uses pki_CsyncSharedKey-group; + description "Csync Shared Key"; } - } - grouping actrl_AuxScope-group { + // Csync2 Policy - used to control csync timeout and enable/disable + container csyncpolicy-items { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type actrl_ScopeId; + uses pki_CsyncPolicy-group; + description "File Synchronization Policy"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container dbgplgch-items { - // Type is an MO-Defined-Type - type naming_Name256; + uses pki_DebugPluginChallenge-group; + description "Debug Plugin Challenge Values"; } - } - - grouping actrl_AuxRule-group { - - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + container keyring-items { + list KeyRing-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_RuleId; + uses pki_KeyRing-group; + description "Key Ring list"; + } + description "Key Ring"; } - // Filter Id - // Type is an MO-Defined-Type - leaf fltid { - config "false"; - description "Filter ID"; + // CertificateAuthority object, also called Trust Points in DCOS + container tp-items { + list TP-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_FltId; + uses pki_TP-group; + description "Certificate Authority list"; + } + description "Certificate Authority"; } - // Priority - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + container calookup-items { - // Type is an MO-Defined-Type - type actrl_RulePrio; + uses pki_CertstoreLookup-group; + description "Certstore Lookup Configuration for Authentication"; } + container certificatemap-items { + list CertificateMap-list { + key "name"; - // scope ID - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + uses pki_CertificateMap-group; + description "Crypto CertificateMap Filters list"; + } + description "Crypto CertificateMap Filters"; + } + container sshauthcert-items { + list SshAuth-list { + key "certIssuerName"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + uses pki_SshAuth-group; + description "Configure Mapping Filter for Ssh list"; + } + description "Configure Mapping Filter for Ssh"; } - // Direction - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + container remotecert-items { - // Type is an MO-Defined-Type - type actrl_Direction; + uses pki_RemoteCertstore-group; + description "Remote CA Certstore Configuration"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container trustpool-items { - // Type is an MO-Defined-Type - type naming_Name256; + uses pki_TrustPool-group; + description "CA Trustpool Policy Configuration"; } - } - grouping actrl_AuxFlt-group { + container rtfabricResPkiEp-items { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + list RtFabricResPkiEp-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type actrl_FltId; + uses fabric_RtFabricResPkiEp_target-group; + } } + } - // Rule Id array - // Type is an MO-Defined-Type - leaf ruleidArr { - config "false"; - description "Rule ID"; - - // Type is an MO-Defined-Type - type actrl_RuleIdArray; - } + grouping pki_WebTokenData-group { + description "Web Token Data"; - // Rule array index - // Type is an MO-Defined-Type - leaf ruleIndex { + // The encryption parameters cannot be modified by a client request + leaf key { config "false"; - description "Rule Index"; - // Type is an MO-Defined-Type - type actrl_RuleIndex; + type pki_AES128Key { + length "24"; + } + description "TBD"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf initializationVector { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type pki_AES128IV { + length "24"; + } + description "TBD"; } - // FilterEntry auxillary information - container ent-items { - list AuxEntry-list { - config "false"; - key "name"; + leaf hashSecret { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package actrl - uses actrl_AuxEntry-group; + type pki_SHA256_SharedSecret16 { + length "24"; } + description "TBD"; } - } - grouping actrl_AuxEntry-group { - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Token timeout modifications are allowed + leaf webtokenTimeoutSeconds { - // Type is an MO-Defined-Type - type naming_Name256; + type pki_WebTokenTimeoutType; + description "Timeout in Seconds"; } - } - grouping actrl_MgmtAuxRule-group { - - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Knob to control absolute maximum validity period for a webtoken beyond which it cannot be refreshed Units are in hours - minimum 4 hours, maximum 24 hours + leaf maximumValidityPeriod { - // Type is an MO-Defined-Type - type actrl_RuleId; - } - leaf ctx_id { - config "false"; - type uint32; + type pki_WebTokenValidityPeriodType; + description "Maximum Validity Period in hours"; } - // Scope Id - // Type is an MO-Defined-Type - leaf scope_id { - config "false"; - description "Scope ID"; + leaf uiIdleTimeoutSeconds { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type pki_GuiIdleTimeoutType; + description "GUI Idle Timeout in Seconds"; } - // Filter Id - // Type is an MO-Defined-Type - leaf fltid { - config "false"; - description "Filter ID"; + leaf sessionRecordFlags { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_SessionRecordFlags; + description "Session Recording Options"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf siteFingerprint { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type string; + description "Issuing Site Fingerprint"; } - } - - grouping actrl_MgmtAuxFlt-group { - // Id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf name { - // Type is an MO-Defined-Type - type actrl_FltId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MgmtRule Id array - // Type is an MO-Defined-Type - leaf mgmtruleidArr { - config "false"; - description "Rule ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type actrl_RuleIdArray; + type naming_Descr; + description "TBD"; } - // Rule array index - // Type is an MO-Defined-Type - leaf mgmtruleIndex { - config "false"; - description "Rule Index"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleIndex; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf descr { - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping actrl_Flt-group { + grouping pki_CsyncSharedKey-group { + description "Csync Shared Key"; - // Id - // Type is an MO-Defined-Type - leaf id { + // The encryption parameters cannot be modified by any client requests + leaf key { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_Csync2KeyType; + description "TBD"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Filter entry, unique set of classification filters identified - // by various l4 parameters - container ent-items { - list Entry-list { - config "false"; - key "name"; + grouping pki_CsyncPolicy-group { + description "File Synchronization Policy"; - // Added containment: Prefix=ent - // Acquired From Package actrl - uses actrl_Entry-group; - } - } + leaf state { - // Rel-def target from toRemoteRFltP - // Inherited From actrl:Flt - container rtfvToRemoteRFltP-items { + type pki_CsyncActivationStateType; + description "TBD"; + } - // Abstract containment of rtfvToRemoteRFltP derived from vz:AFilterableUnit - list RtFvToRemoteRFltP-list { - config "false"; - key "tDn"; + leaf interval { - // Added containment: Prefix=rtfvToRemoteRFltP - // Acquired From Package fv - uses fv_RtFvToRemoteRFltP_target-group; - } + type pki_CsyncRefreshIntervalType; + description "TBD"; } - // Rel-def target from toRemoteRFltAtt - // Inherited From actrl:Flt - container rtfvToRemoteRFltAtt-items { - - // Abstract containment of rtfvToRemoteRFltAtt derived from vz:AFilterableUnit - list RtFvToRemoteRFltAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtfvToRemoteRFltAtt - // Acquired From Package fv - uses fv_RtFvToRemoteRFltAtt_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from rfltpConn - container rsrfltpConn-items { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Added containment as a singleton: Prefix=rsrfltpConn - // Acquired From Package actrl - uses actrl_RsRfltpConn_source-group; + type naming_Descr; + description "TBD"; } - // Rel-def target from ConnToFltInst - // Inherited From actrl:Flt - container rtvnsConnToFltInst-items { - - // Abstract containment of rtvnsConnToFltInst derived from vz:AFilterable - list RtVnsConnToFltInst-list { - config "false"; - key "tDn"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rtvnsConnToFltInst - // Acquired From Package vns - uses vns_RtVnsConnToFltInst_target-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Rel-def target from FwdRFltPAtt - // Inherited From actrl:Flt - container rtvzFwdRFltPAtt-items { - - // Abstract containment of rtvzFwdRFltPAtt derived from vz:AFilterableUnit - list RtVzFwdRFltPAtt-list { - config "false"; - key "tDn"; + leaf descr { - // Added containment: Prefix=rtvzFwdRFltPAtt - // Acquired From Package vz - uses vz_RtVzFwdRFltPAtt_target-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from RevRFltPAtt - // Inherited From actrl:Flt - container rtvzRevRFltPAtt-items { - - // Abstract containment of rtvzRevRFltPAtt derived from vz:AFilterableUnit - list RtVzRevRFltPAtt-list { - config "false"; - key "tDn"; + // Csync2 Element - contains + // a) file pattern + // b) type of pattern (include or exclude) + // c) symbolic name of the pattern + container csyncelem-items { + list CsyncElement-list { + key "name"; - // Added containment: Prefix=rtvzRevRFltPAtt - // Acquired From Package vz - uses vz_RtVzRevRFltPAtt_target-group; + uses pki_CsyncElement-group; + description "File Pattern for Synchronization list"; } + description "File Pattern for Synchronization"; } + } - // Rel-def target from tabooRFltAtt - // Inherited From actrl:Flt - container rtvzTabooRFltAtt-items { + grouping pki_CsyncElement-group { + description "File Pattern for Synchronization"; + leaf pattern { + type string; + } - // Abstract containment of rtvzTabooRFltAtt derived from vz:AFilterableUnit - list RtVzTabooRFltAtt-list { - config "false"; - key "tDn"; + leaf type { - // Added containment: Prefix=rtvzTabooRFltAtt - // Acquired From Package vz - uses vz_RtVzTabooRFltAtt_target-group; - } + type pki_CsyncElementType; + description "TBD"; } - // Rel-def target from rFltAtt - // Inherited From actrl:Flt - container rtvzRFltAtt-items { - - // Abstract containment of rtvzRFltAtt derived from vz:AFilterableUnit - list RtVzRFltAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtvzRFltAtt - // Acquired From Package vz - uses vz_RtVzRFltAtt_target-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - } - grouping actrl_Entry-group { + // Clients can add their own data for entity correlation + leaf ownerKey { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type naming_Descr; + description "TBD"; + } - // Type is an MO-Defined-Type - type naming_Name256 { + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { + + type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf applyToFrag { - config "false"; - type boolean; - default "true"; - } + } - // Ether type - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf etherT { - config "false"; - description "Ethernet Type"; + grouping pki_DebugPluginChallenge-group { + description "Debug Plugin Challenge Values"; + + leaf name { - // Type is an MO-Defined-Type - type l2_EtherType; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ARP opcodes - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf arpOpc { - config "false"; - description "ARP Opcodes"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type arp_Opcode; + type naming_Descr; + description "TBD"; } - // ICMPv4 types - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf icmpv4T { - config "false"; - description "ICMPv4 Type"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type icmpv4_Type; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // ICMPv6 types - // Inherited From vz:AFiltEntry - // Type is an MO-Defined-Type - leaf icmpv6T { - config "false"; - description "ICMPv6 Type"; + leaf descr { - // Type is an MO-Defined-Type - type icmpv6_Type; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping actrl_Inst-group { + grouping pki_KeyRing-group { + description "Key Ring"; - // Global access controls - // Type is an MO-Defined-Type - leaf accCtrl { - config "false"; - description "Access Controls"; + leaf adminState { - // Type is an MO-Defined-Type - type actrl_AccControl; + type pki_KeyringState; + description "TBD"; + } + leaf regen { + type boolean; + default "false"; + description "Regenerate"; } - // Timer interval to clear security group log - // Type is an MO-Defined-Type - leaf logClrIntvl { - config "false"; - description "Log Clear Interval"; + leaf key { - // Type is an MO-Defined-Type - type actrl_LogClrIntvl; + type pki_PrivateKey; + description "TBD"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf modulus { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type pki_Modulus; + description "Modulus"; + } + leaf exportable { + type boolean; + description "Enable to Make the Keypair Exportable"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf cert { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pki_Cert; + description "Certificate"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + leaf certValidUntil { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type pki_CertValidity; + description "Certificate Validity"; } - } - grouping actrl_Scope-group { - - // Id - // Type is an MO-Defined-Type - leaf id { + // Populated with the output of openssl output of the x509 certificate analysis + leaf certificateDecodeInformation { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + type pki_Cert; + description "Certificate Decode Information"; } - // SecurityLabel, this must be in sync with l3Ctx:SecLbl - // Type is an MO-Defined-Type - leaf secLbl { - config "false"; - description "Security Label"; + // trust point (CA) reference + // DN IS IMPLIED AND RESOLVED PROGRAMATICALLY + // refers="pki:TP" + leaf tp { - // Type is an MO-Defined-Type - type actrl_SecLbl; + type naming_Name; + description "Certificate Authority"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Zoning rules for tenant epgs - container rule-items { - list Rule-list { - config "false"; - key "scopeId sPcTag dPcTag fltId"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=rule - // Acquired From Package actrl - uses actrl_Rule-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Zoning rules for management epgs - container mr-items { - list MgmtRule-list { - config "false"; - key "scopeId sPcTag dPcTag fltId"; + leaf descr { - // Added containment: Prefix=mr - // Acquired From Package actrl - uses actrl_MgmtRule-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + + container certreq-items { + + uses pki_CertReq-group; + description "Certificate Request"; } - // Zoning rules for snmp epgs - container sr-items { - list SnmpRule-list { + container rtcommKeyRing-items { + + list RtCommKeyRing-list { config "false"; - key "scopeId sPcTag dPcTag fltId"; + key "tDn"; - // Added containment: Prefix=sr - // Acquired From Package actrl - uses actrl_SnmpRule-group; + uses comm_RtCommKeyRing_target-group; + description "Key Ring list"; } + description "Key Ring"; } - // Rel-def from tenConn - container rstenConn-items { + container rtaaaKeyringRef-items { - // Abstract containment of rstenConn derived from actrl:Scope - list RsTenConn-list { + list RtAaaKeyringRef-list { config "false"; key "tDn"; - // Added containment: Prefix=rstenConn - // Acquired From Package actrl - uses actrl_RsTenConn_source-group; + uses aaa_RtAaaKeyringRef_target-group; } } } - grouping actrl_Rule-group { + grouping pki_CertReq-group { + description "Certificate Request"; + leaf pwd { + type string; + description "Password"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // TODO how to set this value to hostname by default + leaf subjName { - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Subject Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf email { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name256 { + length "0..40"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Email Address"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf country { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Name { + pattern ".*[A-Z][A-Z].*"; + } + description "Country"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf state { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "State"; } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + leaf locality { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Locality"; } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + leaf orgUnitName { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Organization Unit Name"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + leaf orgName { - // Type is an MO-Defined-Type - type actrl_PcTag; + type naming_Name256 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^\\s]+.*"; + } + description "Organization Name"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { + // PEM encoded certificate request + leaf req { config "false"; - description "Destination PC Tag"; - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_Cert; + description "TBD"; } + } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + grouping pki_TP-group { + description "Certificate Authority"; + + leaf certChain { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_Cert; + description "Certificate Chain"; } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { + // Certificate Fingerprint populated by backend + leaf fp { config "false"; - description "Direction"; - // Type is an MO-Defined-Type - type actrl_Direction; + type pki_FP; + description "TBD"; } - - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { + leaf numCerts { config "false"; - description "Action"; - - // Type is an MO-Defined-Type - type actrl_Action; + type uint32; + default "0"; } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + leaf enrollmentType { - // Type is an MO-Defined-Type - type qos_Prio; + type pki_CertEnrollType; + description "Configure Trustpoint Enrollment"; } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "Dscp"; + leaf revokeCheckConf { - // Type is an MO-Defined-Type - type qosp_Dscp; + type pki_CertRevokeCheck; + description "Configure Trustpoint Revocation Check Methods"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf keyLabel { - // Type is an MO-Defined-Type - type actrl_OperSt; + type pki_KeyLabel; + description "Trustpoint RSA Key-pair Label"; } - } - grouping actrl_MgmtRule-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping pki_CertstoreLookup-group { + description "Certstore Lookup Configuration for Authentication"; + + leaf type { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type pki_CertLookupType; + description "Certstore Type for Lookup"; } + } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + grouping pki_CertificateMap-group { + description "Crypto CertificateMap Filters"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + leaf name { + + type pki_FilterName; + description "CertificateMap Filter Name"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + leaf subjectName { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_FilterName; + description "Subject Name of the Certificate"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { - config "false"; - description "Destination PC Tag"; + leaf altnameEmail { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pki_FilterName; + description "Email Id as an Alternate Name"; } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + leaf altnameUpn { - // Type is an MO-Defined-Type - type actrl_FltId; + type pki_FilterName; + description "User Principal Name as an Alternate Name"; } + } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + grouping pki_SshAuth-group { + description "Configure Mapping Filter for Ssh"; - // Type is an MO-Defined-Type - type actrl_Direction; + leaf certIssuerName { + + type pki_FilterName; + description "Issuer Name of the Certificate"; } - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { - config "false"; - description "Action"; + leaf mapFilter1 { - // Type is an MO-Defined-Type - type actrl_Action; + type pki_FilterName; + description "Mapping Filter to be Applied"; } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + leaf mapFilter2 { - // Type is an MO-Defined-Type - type qos_Prio; + type pki_FilterName; + description "Mapping Filter to be Applied"; } + } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "Dscp"; + grouping pki_RemoteCertstore-group { + description "Remote CA Certstore Configuration"; - // Type is an MO-Defined-Type - type qosp_Dscp; + leaf ldapGroupName { + + type pki_ProviderGroupName; + description "Ldap Server Group Containing Remote CA"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf crlTimer { - // Type is an MO-Defined-Type - type actrl_OperSt; + type pki_CrlRefreshTime; + description "Refresh Time to Fetch Crl from Remote Certstore"; } } - grouping actrl_SnmpRule-group { + grouping pki_TrustPool-group { + description "CA Trustpool Policy Configuration"; + leaf sourceUrl { + type string; + description "Configure Cabundle Source HTTP Url"; + } + + leaf vrf { + + type l3_VrfName; + description "Vrf to be Used to Contact HTTP Server"; + } + + leaf srcIf { + + type nw_IfId; + description "Source Interface to Reach HTTP Server"; + } + + container proxyserver-items { + + uses pki_HttpProxy-group; + description "Http Proxy Server Related Parameters"; + } + } + + grouping pki_HttpProxy-group { + description "Http Proxy Server Related Parameters"; + + leaf port { + + type pki_Port; + description "HTTP Proxy Server Port"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern "(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])|(([a-zA-Z]|[a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z0-9-]*[A-Za-z0-9])|((([0-9a-fA-F]{1,4}:){6}(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((::([0-9a-fA-F]{1,4}:){5})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|((([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){4})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:)?[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){3})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,2}[0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:){2})(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,3}[0-9a-fA-F]{1,4})?::[0-9a-fA-F]{1,4}:)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,4}[0-9a-fA-F]{1,4})?::)(([0-9a-fA-F]{1,4}:[0-9a-fA-F]{1,4})|(((25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9])\\.){3}(25[0-5]|([1-9]|1[0-9]|2[0-4])?[0-9]))))|(((([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4})?::)[0-9a-fA-F]{1,4})|((([0-9a-fA-F]{1,4}:){0,6}[0-9a-fA-F]{1,4})?::))"; } + description "IPV4/IPV6 Address or DNS Name of Proxy Server"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } - // Id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_RuleId; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Type - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_RuleT; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Priority - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf prio { - config "false"; - description "Priority"; + grouping security_Security-group { + description "Security Rules For User And Fips"; + + leaf commonCriteria { - // Type is an MO-Defined-Type - type actrl_RulePrio; + type aaa_Boolean; + default "no"; + description "Enable or Disable Common Criteria"; } - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf scopeId { - config "false"; - description "Scope ID"; + leaf enFipsMode { - // Type is an MO-Defined-Type - type actrl_ScopeId; + type aaa_Boolean; + default "no"; + description " Enable/Disable FIPS Mode"; } - // Source policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf sPcTag { - config "false"; - description "Source PC Tag"; + // for security logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type actrl_PcTag; + type arp_LoggingLevel; + description "Security Logging Level"; } - // Destination policy tag - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf dPcTag { - config "false"; - description "Destination PC Tag"; + leaf name { - // Type is an MO-Defined-Type - type actrl_PcTag; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Filter id - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf fltId { - config "false"; - description "Filter ID"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type actrl_FltId; + type naming_Descr; + description "TBD"; } - // Direction - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf direction { - config "false"; - description "Direction"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Type is an MO-Defined-Type - type actrl_Direction; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - // Action - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf action { - config "false"; - description "Action"; + leaf descr { - // Type is an MO-Defined-Type - type actrl_Action; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Qos actions, the next two attributes define the qos - // actions when the rule is matched Qos group - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "QOS Group"; + grouping smartcard_PasswdEncrypt-group { + description "password encryption aes feature"; - // Type is an MO-Defined-Type - type qos_Prio; + leaf adminSt { + + type smartcard_AdminState; + description "TBD"; } - // Our Fabric only supportes DSCP mutation. Dot1P mutation - // is not supported - // Inherited From actrl:ARule - // Type is an MO-Defined-Type - leaf markDscp { + // Operational properties + leaf configErrMasterKey { config "false"; - description "Dscp"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type smartcard_SksdmasterkeyfaultBitmapT; + default "noerror"; + description "Error for master key unconfigured"; + } + } + + grouping stp_Entity-group { + description "STP Entity"; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Rule operational state - // Inherited From actrl:ARule - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; + + type nw_EntOperSt; description "Operational State"; + } - // Type is an MO-Defined-Type - type actrl_OperSt; + // This objects hold per stp instance information. There is + // only one instance of stp running in the system today + container inst-items { + + uses stp_Inst-group; + description "STP Instance"; } } - grouping actrlcap_Prov-group { + grouping stp_Inst-group { + description "STP Instance"; - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { - config "false"; - description "TBD"; + // Spanning Tree operating mode + leaf mode { - // Type is an MO-Defined-Type - type actrlcap_Subj; + type stp_Mode; + description "Protocol Mode"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { - config "false"; - description "TBD"; + // Linecard ISSU type + leaf lcIssu { - // Type is an MO-Defined-Type - type cap_Counter; + type stp_LcIssu; + description "Linecard ISSU type"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { - config "false"; - description "TBD"; + // pathcost options + leaf pathcostOp { - // Type is an MO-Defined-Type - type cap_Counter; + type stp_PathcostOp; + description "Spanning tree pathcost options"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { - config "false"; - description "TBD"; + // Enable STP for FCoE VLANs + leaf fcoe { - // Type is an MO-Defined-Type - type cap_StorageHint; + type stp_AdminSt; + description "enable spanning tree for fcoe vlan"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Enable spanning tree bridge assurance + leaf bridge { - // Type is an MO-Defined-Type - type cap_RuleT; + type stp_AdminSt; + description "enable spanning-tree bridge assurance on all ports"; } - } - - grouping analytics_Entity-group { - // Holds netflow and analytics instance information - container inst-items { - list Inst-list { - key "mode"; + // spanning tree loopguard options + leaf loopguard { - // Added containment: Prefix=inst - // Acquired From Package analytics - uses analytics_Inst-group; - } + type stp_AdminSt; + default "disabled"; + description "enable loop guard on all ports"; } - } - - grouping analytics_Inst-group { - // analytics/netflow mode - // Type is an MO-Defined-Type - leaf mode { - description "Mode Select"; + // spanning tree L2 Gateway domain ID + leaf l2GStpDomId { - // Type is an MO-Defined-Type - type analytics_ModeT; + type stp_L2GStpDomId; + description "spanning tree L2 Gateway Domain Id"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Default value handled in local MO type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Type is a Local-MO-Defined-Type + type nw_InstCtrl_Inst_ctrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Platform capability informations - container capability-items { + // This object holds mcp information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Added containment as a singleton: Prefix=capability - // Acquired From Package analytics - uses analytics_Capability-group; + uses stp_If-group; + description "STP Interface list"; + } + description "STP Interface"; } - // Controller information for bootstrapping the analytics agent - container controller-items { - list Controller-list { - key "name"; + // Holds mst informaton at switch level + container mstent-items { - // Added containment: Prefix=controller - // Acquired From Package analytics - uses analytics_Controller-group; - } + uses stp_MstEntity-group; + description "STP MST Entity"; } - // Flow Record - container recordp-items { - list RecordP-list { - key "name"; + // stp pseudo-information, placeholder for future implementation + container pseudo-items { - // Added containment: Prefix=recordp - // Acquired From Package analytics - uses analytics_RecordP-group; - } + uses stp_PseudoInfo-group; + description "STP pseudo information"; } - // Flow Collector - container collector-items { - list Collector-list { - key "name"; + // This object holds stp information that is operated at + // vlan level + container vlan-items { + list Vlan-list { + key "id"; - // Added containment: Prefix=collector - // Acquired From Package analytics - uses analytics_Collector-group; + uses stp_Vlan-group; + description "Vlan list"; } + description "Vlan"; } + } - // Flow Monitor one monitor can be attached to n records - container monitor-items { - list Monitor-list { - key "name"; + grouping stp_If-group { + description "STP Interface"; - // Added containment: Prefix=monitor - // Acquired From Package analytics - uses analytics_Monitor-group; - } + // Port mode + leaf mode { + + type stp_IfMode; + description "Port Mode"; } - // Analytics profile - container prof-items { - list Profile-list { - key "name"; + // Interface controls + leaf ctrl { - // Added containment: Prefix=prof - // Acquired From Package analytics - uses analytics_Profile-group; - } + type stp_IfControl; + description "Controls"; } - // Forwarding instance based target - container fwdinst-items { - list FwdInstTarget-list { - key "id"; + // guard mode + leaf guard { - // Added containment: Prefix=fwdinst - // Acquired From Package analytics - uses analytics_FwdInstTarget-group; - } + type stp_Guard; + description "Guard Mode"; } - // Physical interface target - container if-items { - list PhysIfTarget-list { - key "id fltType"; + // bpdufilter mode + leaf bpdufilter { - // Added containment: Prefix=if - // Acquired From Package analytics - uses analytics_PhysIfTarget-group; - } + type stp_Bpdufilter; + description "bpdufilter mode"; } - // Bridge Domain target - container bd-items { - list BDTarget-list { - key "id"; + // bpduguard mode + leaf bpduguard { - // Added containment: Prefix=bd - // Acquired From Package analytics - uses analytics_BDTarget-group; - } + type stp_BPDUGuard; + description "Guard Mode"; } - // Policy Container for ACLs - container policy-items { - list Policy-list { - key "name"; + // Link Type + leaf linkType { - // Added containment: Prefix=policy - // Acquired From Package analytics - uses analytics_Policy-group; - } + type stp_LinkType; + description "Link Type"; } - } - - grouping analytics_Capability-group { - // Mode - // Type is an MO-Defined-Type - leaf fabricMode { - config "false"; - description "Mode to Indicate Platform Type"; + // Port Priority + leaf priority { - // Type is an MO-Defined-Type - type analytics_CModeT; + type stp_PortPriority; + description "Port Priority"; } - // Collector Bucket Hash Width - // Type is an MO-Defined-Type - leaf bucketHashWidth { - config "false"; - description "Bit Width of the Collector Bucket Hash"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type analytics_HashWidthT; + type stp_Cost; + description "Port Path Cost"; } - // Number of TCAM entries - // Type is an MO-Defined-Type - leaf numTcamEnt { - config "false"; - description "Number of TCAM Entries"; + // Port simulate pvst + leaf simulatePvst { - // Type is an MO-Defined-Type - type analytics_numTcamEntT; + type stp_SimulateIf; + description "Port simulate pvst"; } - // Number of TCAM entries per V4 type - // Type is an MO-Defined-Type - leaf numTcamEntPerV4 { - config "false"; - description "Number of TCAM Entries per V4 type"; + // Port lc issu + leaf lcIssu { - // Type is an MO-Defined-Type - type analytics_numTcamEntV4T; + type stp_LcIssu; + description "Port lc issu"; } - // Number of TCAM entries per V6 type - // Type is an MO-Defined-Type - leaf numTcamEntPerV6 { - config "false"; - description "Number of TCAM Entries per V6 type"; + // Port mst prestd + leaf prestdCfg { - // Type is an MO-Defined-Type - type analytics_numTcamEntV6T; + type stp_AdminSt; + default "disabled"; + description "Port mst prestd"; } - } - grouping analytics_Controller-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Descr1024; + description "Description"; } - // Remote node VRF - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Remote node destination port - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l4_Port; + type nw_IfAdminSt; + description "Admin State"; } - // IP dscp value - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + // This object describes interface level config per vlan + container vlan-items { + list VlanCfg-list { + key "vlanId"; - // Type is an MO-Defined-Type - type qosp_DscpCP; + uses stp_VlanCfg-group; + description "Interface Level Configure per Vlan list"; + } + description "Interface Level Configure per Vlan"; } - // Source interface - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // This object describes interface level config per mst instance + container mst-items { + list MstCfg-list { + key "mstId"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf srcAddr { - type address_Ip; + uses stp_MstCfg-group; + description "Interface Level Configure per MST list"; + } + description "Interface Level Configure per MST"; } - } - - grouping analytics_RecordP-group { - // Match parameters for the flow record - // Type is an MO-Defined-Type - leaf match { - description "Match Params"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type analytics_MatchParams; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Collect parameters for the flow record - // Type is an MO-Defined-Type - leaf collect { - description "Collect Params"; + grouping stp_VlanCfg-group { + description "Interface Level Configure per Vlan"; - // Type is an MO-Defined-Type - type analytics_CollectParams; + // Vlan Id + leaf vlanId { + + type stp_VlanId; + description "Vlan Id"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port Priority in increments of 32 + leaf priority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_PortPriority; + description "Port Priority"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_Cost; + description "Port Path Cost"; } } - grouping analytics_Collector-group { + grouping stp_MstCfg-group { + description "Interface Level Configure per MST"; - // Collector version - // Type is an MO-Defined-Type - leaf ver { - description "Collector Version Format"; + // MST Id + leaf mstId { - // Type is an MO-Defined-Type - type analytics_CollVersion; + type stp_MstId; + description "Mst Instance Id"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Port Priority in increments of 32 + leaf priority { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_PortPriority; + description "Port Priority"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port path cost + leaf cost { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_Cost; + description "Port Path Cost"; } + } - // Remote node VRF - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + grouping stp_MstEntity-group { + description "STP MST Entity"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + // spanning tree max hops + leaf maxHops { + + type stp_MaxHops; + description "STP mst max hops"; } - // Remote node destination port - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + // enable spanning tree simulation + leaf simulate { - // Type is an MO-Defined-Type - type l4_Port; + type stp_Simulate; + description "spanning tree simulation"; } - // IP dscp value - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + // operation error + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type qosp_DscpCP; + type nw_OperErrQual; + description "Operation Error Qualifier"; } - // Source interface - // Inherited From analytics:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Region name + leaf regName { - // Type is an MO-Defined-Type - type nw_IfId; + type stp_RegName; + description "Region Name"; } - leaf srcAddr { - type address_Ip; + + // Region revision + leaf rev { + + type stp_RegRev; + description "Region Revision"; } - } - grouping analytics_Monitor-group { + // spanning tree forward delay + leaf fwdTime { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + type stp_FwdTime; + description "STP forward delay"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // spanning tree hello interval + leaf helloTime { + + type stp_HelloTime; + description "STP Hello interval"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // spanning tree max age interval + leaf maxAge { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_MaxAge; + description "STP max age interval"; } - // Collector bucket info - container collectorbucket-items { - list CollectorBucket-list { + // This objects describes an mst instance + container mst-items { + list MstDom-list { key "id"; - // Added containment: Prefix=collectorbucket - // Acquired From Package analytics - uses analytics_CollectorBucket-group; + uses stp_MstDom-group; + description "MST Domain list"; } + description "MST Domain"; } + } - // Rel-def from recordPAtt - container rsrecordPAtt-items { + grouping stp_MstDom-group { + description "MST Domain"; - // Added containment as a singleton: Prefix=rsrecordPAtt - // Acquired From Package analytics - uses analytics_RsRecordPAtt_source-group; - } - } + // MST config state + leaf cfgSt { - grouping analytics_CollectorBucket-group { + type stp_AdminSt; + default "disabled"; + description "Instance config State"; + } - // Collector bucket identifier - // Type is an MO-Defined-Type + // Id leaf id { - description "Flow Collector Bucket Id"; - // Type is an MO-Defined-Type - type analytics_CollBucketId; + type stp_MstId; + description "ID Property has READ-Create access."; } - // HashLo value for this collector bucket - // Type is an MO-Defined-Type - leaf hashLo { - description "Hash Low Value"; + // root type + leaf root { - // Type is an MO-Defined-Type - type analytics_HashT; + type stp_Root; + description "Root Options"; } - // HashHi value for this collector bucket - // Type is an MO-Defined-Type - leaf hashHi { - description "Hash High Value"; + // network diameter + leaf diameter { - // Type is an MO-Defined-Type - type analytics_HashT; + type stp_Diameter; + description "Network Diameter"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // priority + leaf priority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_BridgePriority; + description "Bridge Priority"; } - // Rel-def from collectorAtt - container rscollectorAtt-items { + // VlanRange + leaf vlanRange { - // Abstract containment of rscollectorAtt derived from analytics:CollectorBucket - list RsCollectorAtt-list { - key "tDn"; + type stp_VlanBitmap; + description "Vlan Range Bitmap"; + } - // Added containment: Prefix=rscollectorAtt - // Acquired From Package analytics - uses analytics_RsCollectorAtt_source-group; - } + // Root type for bridge + leaf rootType { + + type stp_RootType; + description "Bridge Root Type"; } - } - grouping analytics_Profile-group { + // Root Mode added for root bridge cli, since the cli accepts hello time and updates forward_delay + // and max_Age based on hello time and diameter entered. If hello time is entered in normal mode for + // spanning tree using "spanning tree vlan ", this should not update the values + // of forward_delay and max_age. To differentiate this property has been added. When is + // used with the root mode cli, values will be updated depending on if this property is set or not + leaf rootMode { - // Collect interval - // Type is an MO-Defined-Type - leaf collectIntvl { - description "Collect Interval in Milliseconds"; + type stp_RootMode; + description "Bridge Root Config mode"; + } + leaf bridgePriority { + config "false"; + type uint16; + description "Bridge ID: Priority with extended system ID"; + } + leaf bridgeAddress { + config "false"; + type address_Mac; + description "Bridge ID: MAC address"; + } + leaf rootPriority { + config "false"; + type uint16; + description "Root ID: Priority"; + } + leaf rootAddress { + config "false"; + type address_Mac; + description "Root ID: MAC address"; + } + leaf rootPortPriority { + config "false"; + type uint16; + description "Root port ID: Priority"; + } + leaf rootPortNumber { + config "false"; + type uint16; + description "Root port ID: Port number"; + } - // Type is an MO-Defined-Type - type analytics_CollIntvl; + // Root port name. The interface name that corresponds to the + // root port. E.g. eth1/1. + leaf rootPort { + config "false"; + + type nw_IfId; + description "Root port name"; + } + leaf rootPathCost { + config "false"; + type uint32; + description "Root path cost"; } - // Source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source L4 Port"; + // This objects describes a vlan range + container vlan-items { + list VlanRange-list { + config "false"; + key "start end"; - // Type is an MO-Defined-Type - type analytics_L4Port; + uses stp_VlanRange-group; + description "Vlan Range list"; + } + description "Vlan Range"; } - // IP packet id shift - // Type is an MO-Defined-Type - leaf ipPktIdShift { - description "IP Packet Id Shift"; + // This object holds STP MST interface operational + // information. + container if-items { + list MstIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type analytics_IpPktIdShift; + uses stp_MstIf-group; + description "STP MST interface operational list"; + } + description "STP MST interface operational"; } + } - // Burst interval shift - // Type is an MO-Defined-Type - leaf burstIntvlShift { - description "Timestamp Shift Value for Burst Interval"; + grouping stp_VlanRange-group { + description "Vlan Range"; - // Type is an MO-Defined-Type - type analytics_BurstIntvlShift; + // Start of the range + leaf start { + config "false"; + + type stp_VlanId; + description "Start"; } - // Collector export packet MTU - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + // End of the range + leaf end { + config "false"; - // Type is an MO-Defined-Type - type analytics_Mtu; + type stp_VlanId; + description "End"; } + } - // Sequence number guess threshold low - // Type is an MO-Defined-Type - leaf seqNumGuessThreshLo { - description "Sequence Number Guess Threshold Low"; + grouping stp_MstIf-group { + description "STP MST interface operational"; - // Type is an MO-Defined-Type - type analytics_ThresholdT; + // Interface ID. + leaf id { + config "false"; + + type nw_IfId; + description "Interface ID"; + } + leaf designatedRootPriority { + config "false"; + type uint16; + description "Designated root priority"; + } + leaf designatedRootAddress { + config "false"; + type address_Mac; + description "Designated root MAC address"; + } + leaf designatedRootCost { + config "false"; + type uint32; + description "Designated root cost"; + } + leaf designatedBridgePriority { + config "false"; + type uint16; + description "Designated bridge priority"; + } + leaf designatedBridgeAddress { + config "false"; + type address_Mac; + description "Designated bridge MAC address"; + } + leaf designatedPortPriority { + config "false"; + type uint16; + description "Designated Port ID: Priority"; + } + leaf designatedPortNumber { + config "false"; + type uint16; + description "Designated Port ID: Port number"; + } + leaf portPriority { + config "false"; + type uint16; + description "Port ID: Priority"; + } + leaf portNumber { + config "false"; + type uint16; + description "Port ID: Port number"; + } + leaf portPathCost { + config "false"; + type uint32; + description "Port path cost"; } - // Sequence number guess threshold high - // Type is an MO-Defined-Type - leaf seqNumGuessThreshHi { - description "Sequence Number Guess Threshold High"; + // Port role + leaf portRole { + config "false"; - // Type is an MO-Defined-Type - type analytics_ThresholdT; + type stp_PortRole; + description "Port role"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Port state + leaf portState { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type stp_PortState; + description "Port state"; + } + leaf p2p { + config "false"; + type boolean; + description "Is the oper link-type p2p"; + } + leaf operBpduguard { + config "false"; + type boolean; + description "Is the oper bpduguard"; + } + leaf operBpdufilter { + config "false"; + type boolean; + description "Is the oper bpdufilter"; + } + leaf operPortfast { + config "false"; + type boolean; + description "Is the oper portfast"; + } + leaf operLoopguard { + config "false"; + type boolean; + description "Is the oper loopguard"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // VpcState + leaf vpcState { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type stp_VpcState; + description "vPC State"; } - // Payload length bin - container payloadlenbin-items { - list PayloadLenBin-list { - key "id"; + // Port mode + leaf mode { + config "false"; - // Added containment: Prefix=payloadlenbin - // Acquired From Package analytics - uses analytics_PayloadLenBin-group; + type stp_ModeType; + description "mode"; + } + leaf dispute { + config "false"; + type boolean; + description "Is the port dispute"; + } + leaf peer { + config "false"; + type boolean; + description "Is the port peer type"; + } + leaf bound { + config "false"; + type boolean; + description "Is the port bound"; + } + leaf inconsistent { + config "false"; + type boolean; + description "Is the port inconsistent"; + } + leaf prestd { + config "false"; + type boolean; + description "Is the port mst prestd"; + } + } + + grouping stp_PseudoInfo-group { + description "STP pseudo information"; + leaf start { + type uint16 { + range "1..2"; } + default "1"; + description "start pseudo cfg"; } - // TCP options header length bin - container tcpopthdrlenbin-items { - list TCPOptHdrLenBin-list { + // stp pseudo-information, mst domain designated and root priority + container mstinst-items { + list MstInst-list { key "id"; - // Added containment: Prefix=tcpopthdrlenbin - // Acquired From Package analytics - uses analytics_TCPOptHdrLenBin-group; + uses stp_MstInst-group; + description "MST Domain ID list"; } + description "MST Domain ID"; } - // Receive window size bin - container rcvwindowszbin-items { - list RcvWindowSzBin-list { + // This object holds stp information that is operated at + // vlan level in pseudo information mode + container vlan-items { + list VlanInst-list { key "id"; - // Added containment: Prefix=rcvwindowszbin - // Acquired From Package analytics - uses analytics_RcvWindowSzBin-group; + uses stp_VlanInst-group; + description "Vlan list"; } + description "Vlan"; } } - grouping analytics_PayloadLenBin-group { + grouping stp_MstInst-group { + description "MST Domain ID"; - // Identifier - // Type is an MO-Defined-Type leaf id { - description "Payload Length Bin Id"; - - // Type is an MO-Defined-Type - type analytics_PayloadLenIdT; - } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; - - // Type is an MO-Defined-Type - type analytics_PayloadLenT; + type stp_MstId; + description "Mst Instance Id"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // Pseudo mst designated Priority + leaf designatedPriority { - // Type is an MO-Defined-Type - type analytics_PayloadLenT; + type stp_BridgePriority; + description "Designated Priority"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Pseudo mst root Priority + leaf rootPriority { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_BridgePriority; + description "Root Priority"; } } - grouping analytics_TCPOptHdrLenBin-group { + grouping stp_VlanInst-group { + description "Vlan"; - // Identifier - // Type is an MO-Defined-Type + // vlan id leaf id { - description "TCP option header length bin ID"; - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenIdT; + type stp_VlanId; + description "Access Encapsulation"; } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; + // designated bridge priority + leaf designatedBridgePriority { - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenT; + type stp_Priority; + description "Designated Bridge Priority"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // root bridge priority + leaf rootBridgePriority { - // Type is an MO-Defined-Type - type analytics_TCPOptHdrLenT; + type stp_Priority; + description "Root Bridge Priority"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Spanning tree protocol + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type stp_Protocol; + description "Spanning tree protocol"; } - } - grouping analytics_RcvWindowSzBin-group { - - // Identifier - // Type is an MO-Defined-Type - leaf id { - description "Receive window size bin ID"; + // spanning tree state: enabled or disabled + leaf adminSt { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzIdT; + type nw_AdminSt; + description "Admin State"; } - // Low value - // Type is an MO-Defined-Type - leaf lo { - description "Bin Low Value"; + // spanning tree forward delay + leaf fwdTime { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzT; + type stp_FwdTime; + description "STP forward delay"; } - // High value - // Type is an MO-Defined-Type - leaf hi { - description "Bin High Value"; + // spanning tree hello interval + leaf helloTime { - // Type is an MO-Defined-Type - type analytics_RcvWindowSzT; + type stp_HelloTime; + description "STP Hello interval"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // spanning tree max age interval + leaf maxAge { - // Type is an MO-Defined-Type - type naming_Descr; + type stp_MaxAge; + description "STP max age interval"; } } - grouping analytics_FwdInstTarget-group { + grouping stp_Vlan-group { + description "Vlan"; - // Identifier - // Type is an MO-Defined-Type + // vlan id leaf id { - description "Identifier"; - // Type is an MO-Defined-Type - type analytics_FwdInstTargetId; + type stp_VlanId; + description "Access Encapsulation"; } - // Collector identifier provided by the analytics controller - // Type is an MO-Defined-Type - leaf collectorId { - description "Collector Id"; + // bridge priority + leaf priority { - // Type is an MO-Defined-Type - type analytics_CollectorId; + type stp_Priority; + description "Bridge Priority"; } - // Default filtering policy - // Type is an MO-Defined-Type - leaf DefPolicy { - description "Default Filtering Policy"; + // network diameter of spanning tree + leaf diameter { - // Type is an MO-Defined-Type - type analytics_DefPolicyT; + type stp_Diameter; + description "network diameter"; } - // IPv4 Hit Count - // Type is an MO-Defined-Type - leaf ipv4Hit { - description "IPv4 Hit Count"; + // Spanning tree protocol + leaf protocol { + config "false"; - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_Protocol; + description "Spanning tree protocol"; } - // IPv6 Hit Count - // Type is an MO-Defined-Type - leaf ipv6Hit { - description "IPv6 Hit Count"; + // Root type for bridge + leaf rootType { - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_RootType; + description "Bridge Root Type"; } - // CE Hit Count - // Type is an MO-Defined-Type - leaf ceHit { - description "CE Hit Count"; + // Root Mode added for root bridge cli, since the cli accepts hello time and updates forward_delay + // and max_Age based on hello time and diameter entered. If hello time is entered in normal mode for + // spanning tree using "spanning tree vlan ", this should not update the values + // of forward_delay and max_age. To differentiate this property has been added. When is + // used with the root mode cli, values will be updated depending on if this property is set or not + leaf rootMode { - // Type is an MO-Defined-Type - type analytics_hitCount; + type stp_RootMode; + description "Bridge Root Config mode"; } - - // IPv4 Create Count - // Type is an MO-Defined-Type - leaf ipv4Create { - description "IPv4 Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf bridgePriority { + config "false"; + type uint16; + description "Bridge ID: Priority with extended system ID"; } - - // IPv6 Create Count - // Type is an MO-Defined-Type - leaf ipv6Create { - description "IPv6 Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf bridgeAddress { + config "false"; + type address_Mac; + description "Bridge ID: MAC address"; } - - // CE Create Count - // Type is an MO-Defined-Type - leaf ceCreate { - description "CE Create Count"; - - // Type is an MO-Defined-Type - type analytics_createCount; + leaf rootPriority { + config "false"; + type uint16; + description "Root ID: Priority"; } - leaf exportCount { - type uint32; + leaf rootAddress { + config "false"; + type address_Mac; + description "Root ID: MAC address"; } - leaf skipCount { - type uint32; + leaf rootPortPriority { + config "false"; + type uint16; + description "Root port ID: Priority"; + } + leaf rootPortNumber { + config "false"; + type uint16; + description "Root port ID: Port number"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Root port name. The interface name that corresponds to the + // root port. E.g. eth1/1. + leaf rootPort { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type nw_IfId; + description "Root port name"; + } + leaf rootPathCost { + config "false"; + type uint32; + description "Root path cost"; } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + // spanning tree state: enabled or disabled + leaf adminSt { - // Type is an MO-Defined-Type - type analytics_DirectionT; + type nw_AdminSt; + description "Admin State"; } - // Rel-def from profAtt - container rsprofAtt-items { + // spanning tree forward delay + leaf fwdTime { - // Added containment as a singleton: Prefix=rsprofAtt - // Acquired From Package analytics - uses analytics_RsProfAtt_source-group; + type stp_FwdTime; + description "STP forward delay"; } - // Rel-def from policyAtt - container rspolicyAtt-items { + // spanning tree hello interval + leaf helloTime { - // Added containment as a singleton: Prefix=rspolicyAtt - // Acquired From Package analytics - uses analytics_RsPolicyAtt_source-group; + type stp_HelloTime; + description "STP Hello interval"; } - container dbgStatistics-items { + // spanning tree max age interval + leaf maxAge { - // Added containment as a singleton: Prefix=dbgStatistics - // Acquired From Package analytics - uses analytics_Statistics-group; + type stp_MaxAge; + description "STP max age interval"; } - } - grouping analytics_PhysIfTarget-group { - - // Identifier - // Type is an MO-Defined-Type - leaf id { - description "Interface Id"; + // This object holds STP VLAN interface operational + // information. + container if-items { + list VlanIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_IfId; + uses stp_VlanIf-group; + description "STP VLAN interface operational list"; + } + description "STP VLAN interface operational"; } + } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + grouping stp_VlanIf-group { + description "STP VLAN interface operational"; + + // Interface ID. + leaf id { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type analytics_OperSt; + type nw_IfId; + description "Interface ID"; + } + leaf designatedRootPriority { + config "false"; + type uint16; + description "Designated root priority"; + } + leaf designatedRootAddress { + config "false"; + type address_Mac; + description "Designated root MAC address"; + } + leaf designatedRootCost { + config "false"; + type uint32; + description "Designated root cost"; + } + leaf designatedBridgePriority { + config "false"; + type uint16; + description "Designated bridge priority"; + } + leaf designatedBridgeAddress { + config "false"; + type address_Mac; + description "Designated bridge MAC address"; + } + leaf designatedPortPriority { + config "false"; + type uint16; + description "Designated Port ID: Priority"; + } + leaf designatedPortNumber { + config "false"; + type uint16; + description "Designated Port ID: Port number"; + } + leaf portPriority { + config "false"; + type uint16; + description "Port ID: Priority"; + } + leaf portNumber { + config "false"; + type uint16; + description "Port ID: Port number"; + } + leaf portPathCost { + config "false"; + type uint32; + description "Port path cost"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Port role + leaf portRole { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type stp_PortRole; + description "Port role"; } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + // Port state + leaf portState { + config "false"; - // Type is an MO-Defined-Type - type analytics_DirectionT; + type stp_PortState; + description "Port state"; } - } - - grouping analytics_BDTarget-group { - leaf id { - type string; + leaf p2p { + config "false"; + type boolean; + description "Is the oper link-type p2p"; } - leaf ctxEncap { - type string; + leaf operBpduguard { + config "false"; + type boolean; + description "Is the oper bpduguard"; + } + leaf operBpdufilter { + config "false"; + type boolean; + description "Is the oper bpdufilter"; + } + leaf operPortfast { + config "false"; + type boolean; + description "Is the oper portfast"; + } + leaf operLoopguard { + config "false"; + type boolean; + description "Is the oper loopguard"; } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + // VpcState + leaf vpcState { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type analytics_OperSt; + type stp_VpcState; + description "vPC State"; } - // IP filter type - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf fltType { - description "Netflow Target Type"; + // Port mode + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type analytics_FltType; + type stp_ModeType; + description "mode"; + } + leaf dispute { + config "false"; + type boolean; + description "Is the port dispute"; + } + leaf peer { + config "false"; + type boolean; + description "Is the port peer type"; + } + leaf bound { + config "false"; + type boolean; + description "Is the port bound"; + } + leaf inconsistent { + config "false"; + type boolean; + description "Is the port inconsistent"; } + leaf prestd { + config "false"; + type boolean; + description "Is the port mst prestd"; + } + } - // Direction - // Inherited From analytics:Target - // Type is an MO-Defined-Type - leaf dir { - description "Direction"; + grouping aggregate_BdTable-group { + description "Bd Table"; - // Type is an MO-Defined-Type - type analytics_DirectionT; + // Aggregate BdEntry + container vlan-items { + list BdEntry-list { + key "vlan"; + + uses aggregate_BdEntry-group; + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network list"; + } + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network"; } } - grouping analytics_Policy-group { + grouping aggregate_BdEntry-group { + description "Bridged domain vlan vnid configuration in the VXLAN overlay Network"; + leaf vlan { + type string; + description "Identity of the Vlan in the bridged domain"; + } + leaf bd { + type uint32; + description "Access Encapsulation"; + } + leaf vnid { + type string; + description "Identity of the Vnid in the bridged domain"; + } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf replicationMode { - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_ReplicationModeType; + description "The mode of replication for BUM data packets"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ingressRepProtocol { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type aggregate_IngressRepProtocolType; + description "The protocol type used to get the list of replication nodes"; + } + leaf gipo { + type address_Ip; + description "Multicast Address for Replication"; } - // Match ACL - container acl-items { - list MatchAcl-list { - key "name"; + leaf suppressArp { - // Added containment: Prefix=acl - // Acquired From Package analytics - uses analytics_MatchAcl-group; - } + type aggregate_BooleanFlag; + description "Flag to enable or disable the ARP suppression"; } - } - grouping analytics_MatchAcl-group { - leaf aclName { - type string; + leaf resourceStatus { + + type aggregate_ResourceStatus; + description "Backend Resource Status"; } - // Filter type - // Type is an MO-Defined-Type - leaf fltType { - description "ACL Filter Type"; + leaf isL3 { - // Type is an MO-Defined-Type - type analytics_FltType; + type aggregate_BooleanFlag; + description "Is L3 Vlan"; + } + leaf description { + type string; + description "description"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container floodList-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_FloodList-group; + description "Bd Member Entry"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Domain (vrf) information + // + // + // + // + // + // + // + // + // + // List of route types + container af-items { + list DomainAf-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_DomainAf-group; + description "Domain Address Family list"; } + description "Domain Address Family"; } - } - grouping analytics_HwTelemetry-group { + container rtaggregateVlanMemberAtt-items { - container fte-items { + list RtAggregateVlanMemberAtt-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=fte - // Acquired From Package fte - uses fte_Fte-group; + uses aggregate_RtAggregateVlanMemberAtt_target-group; + description "Vlan Membership Attachment list"; + } + description "Vlan Membership Attachment"; } + } - container inbandtelemetry-items { + grouping aggregate_FloodList-group { + description "Bd Member Entry"; - // Added containment as a singleton: Prefix=inbandtelemetry - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Int-group; + container localFloodList-items { + + uses aggregate_LocalFloodList-group; + description "List of local ports configured under the bridged domain"; } - } - grouping fte_Fte-group { - leaf enable { - type boolean; + container remoteFloodList-items { + + uses aggregate_RemoteFloodList-group; + description "VTEP IP address list of the remote VTEPs within the VNI"; } } - grouping inbandTelemetry_Int-group { - - // Holds int instance information - container inst-items { - list Inst-list { - key "mode"; + grouping aggregate_LocalFloodList-group { + description "List of local ports configured under the bridged domain"; + container intf-items { + list LocalFloodListEntry-list { + key "intf"; - // Added containment: Prefix=inst - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Inst-group; + uses aggregate_LocalFloodListEntry-group; + description "Interface info of LocalFloodListEntry list"; } + description "Interface info of LocalFloodListEntry"; } } - grouping inbandTelemetry_Inst-group { + grouping aggregate_LocalFloodListEntry-group { + description "Interface info of LocalFloodListEntry"; - // int mode - // Type is an MO-Defined-Type - leaf mode { - description "Mode Select"; + leaf intf { - // Type is an MO-Defined-Type - type inbandTelemetry_ModeT; + type nw_IfId; + description "Interface"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping aggregate_RemoteFloodList-group { + description "VTEP IP address list of the remote VTEPs within the VNI"; + container vtep-items { + list RemoteFloodListEntry-list { + key "vtep"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses aggregate_RemoteFloodListEntry-group; + description "VTEP IP address in the list of the remote VTEPs within the VNI list"; } + description "VTEP IP address in the list of the remote VTEPs within the VNI"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping aggregate_RemoteFloodListEntry-group { + description "VTEP IP address in the list of the remote VTEPs within the VNI"; + leaf vtep { + type address_Ip; + description "VTEP IP address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rsvtepAtt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + list RsVtepAtt-list { + config "false"; + key "tDn"; + + uses aggregate_RsVtepAtt_source-group; + description "Link To Tunnel Intf Entry list"; + } + description "Link To Tunnel Intf Entry"; } + } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + grouping aggregate_DomainAf-group { + description "Domain Address Family"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + leaf type { + + type aggregate_AfT; + description "Type"; + } + leaf vrf { + type string; + description "VRF"; + } + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; } - // INT Watchlist Acl - container watchlist-items { - list WatchlistAcl-list { - key "name"; + // Route target policy + container rttp-items { + list RttP-list { + key "type"; - // Added containment: Prefix=watchlist - // Acquired From Package inbandTelemetry - uses inbandTelemetry_WatchlistAcl-group; + uses aggregate_RttP-group; + description "Route Target Policy list"; } + description "Route Target Policy"; } - // INT Droplist Acl - container droplist-items { - list DroplistAcl-list { - key "name"; + // + // + // + // + // + // + // + // + // + // + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list AfCtrl-list { + key "type"; - // Added containment: Prefix=droplist - // Acquired From Package inbandTelemetry - uses inbandTelemetry_DroplistAcl-group; + uses aggregate_AfCtrl-group; + description "Virtual Private Network Control Policy list"; } + description "Virtual Private Network Control Policy"; } + } - // int Record - container recordp-items { - list RecordP-list { - key "name"; + grouping aggregate_RttP-group { + description "Route Target Policy"; - // Added containment: Prefix=recordp - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RecordP-group; - } + // Type + leaf type { + + type aggregate_RttPType; + description "Type"; } - // int Collector - container collector-items { - list Collector-list { - key "name"; + // isL3 VRF + leaf isL3 { - // Added containment: Prefix=collector - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Collector-group; - } + type aggregate_BooleanFlag; + description "IsL3"; } - // INT Monitor one monitor can be attached to n records - container monitor-items { - list Monitor-list { - config "false"; - key "name"; + // List of route types + container ent-items { + list RttEntry-list { + key "rtt"; - // Added containment: Prefix=monitor - // Acquired From Package inbandTelemetry - uses inbandTelemetry_Monitor-group; + uses aggregate_RttEntry-group; + description "Route Target Entry list"; } + description "Route Target Entry"; } + } - // Forwarding instance based target - container fwdinst-items { - list FwdInstTarget-list { - config "false"; - key "id"; - - // Added containment: Prefix=fwdinst - // Acquired From Package inbandTelemetry - uses inbandTelemetry_FwdInstTarget-group; - } + grouping aggregate_RttEntry-group { + description "Route Target Entry"; + leaf rtt { + type mtx_array_community; + description "Route Target"; } } - grouping inbandTelemetry_WatchlistAcl-group { + grouping aggregate_AfCtrl-group { + description "Virtual Private Network Control Policy"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Type + leaf type { - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_AfT; + description "Type"; } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + // Route target policy + container rttp-items { + list RttP-list { + key "type"; - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_RttP-group; + description "Route Target Policy list"; + } + description "Route Target Policy"; } + } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + grouping aggregate_GlobalConfTable-group { + description "Global Configuration Table"; - // Type is an MO-Defined-Type - type acl_ACEStats; + leaf vxLanMC { + + type aggregate_BooleanFlag; + description "VxLan Multicast Flag"; } - leaf configStatus { - config "false"; - type uint32; + leaf agMac { + type address_Mac; + description "Anycast Gateway mac"; } + } - // INT Watchlist Ace - container ace-items { - list WatchlistAce-list { - key "seqNum"; + grouping aggregate_IntfTable-group { + description "Interface Table"; + container intf-items { + list IntfEntry-list { + key "name"; - // Added containment: Prefix=ace - // Acquired From Package inbandTelemetry - uses inbandTelemetry_WatchlistAce-group; + uses aggregate_IntfEntry-group; + description "Interface Entry list"; + } + description "Interface Entry"; + } + container svi-items { + list Svi-list { + key "intf"; + + uses aggregate_Svi-group; + description "SVI Interface Entry list"; } + description "SVI Interface Entry"; } } - grouping inbandTelemetry_WatchlistAce-group { + grouping aggregate_IntfEntry-group { + description "Interface Entry"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Name of the interface entry"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf type { - // Type is an MO-Defined-Type - type acl_RemarkStr; + type aggregate_IntfType; + description "Indicates the type of the interface"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf adminState { - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aggregate_AdminState; + description "Indicates the adminstration state of interface whether interface is up or down"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf operState { - // Type is an MO-Defined-Type - type acl_ActionType; + type aggregate_OperState; + description "Indicates the operational state of the interface whether up or down"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + leaf trunkVlans { - // Type is an MO-Defined-Type - type acl_Operator; - } - - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfTrunkVlans; + description "List of vlans allowed on this interface"; } - - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; - - // Type is an MO-Defined-Type - type acl_PortNumber; + leaf isControllerOwnedIntf { + config "false"; + type boolean; + description "Indicates whether interface is assigned to the controller"; } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + leaf ownerControllersIdList { + config "false"; - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_ControllerIdBitmap; + description "List of the controller owning this interface"; } - - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; - - // Type is an MO-Defined-Type - type acl_Operator; + leaf untaggedVlan { + type string; + description "port-acccess-VLAN or native-VLAN for untagged traffic"; + } + leaf untaggedVlanCtrlUse { + type boolean; + description "untagged VLAN is used by Controller"; + } + leaf untaggedVlanExplicitMap { + type boolean; + description "untagged VLAN is also explicitly mapped by Controller"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + container vlanMemberTable-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_VlanMemberTable-group; + description "Vlan Member Table"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + container rtvpcIntfEntryAtt-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_RtVpcIntfEntryAtt_target-group; + description "Vpc Interface Entry Attachment"; } + } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + grouping aggregate_VlanMemberTable-group { + description "Vlan Member Table"; + container member-items { + list VlanMemberEntry-list { + key "vlan"; - // Type is an MO-Defined-Type - type acl_PortNumber; - } - leaf logging { - type boolean; - default "true"; - } - leaf dscp { - type uint8 { - range "0..63"; + uses aggregate_VlanMemberEntry-group; + description "Vlan Member Entry list"; } + description "Vlan Member Entry"; } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + container rsvlanMemberAtt-items { - // Type is an MO-Defined-Type - type acl_Operator; + list RsVlanMemberAtt-list { + config "false"; + key "tDn"; + + uses aggregate_RsVlanMemberAtt_source-group; + description "Vlan Membership Attachment list"; + } + description "Vlan Membership Attachment"; } + } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + grouping aggregate_VlanMemberEntry-group { + description "Vlan Member Entry"; + leaf vlan { + type string; + description "Vlan id of the vlan member entry"; + } + } - // Type is an MO-Defined-Type - type acl_PktLen; + grouping aggregate_Svi-group { + description "SVI Interface Entry"; + leaf intf { + type string; + description "Interface id of the switch virtual interface"; } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + leaf adminState { - // Type is an MO-Defined-Type - type acl_PktLen; - } - leaf urg { - type boolean; - } - leaf ack { - type boolean; - } - leaf psh { - type boolean; - } - leaf rst { - type boolean; - } - leaf syn { - type boolean; - } - leaf fin { - type boolean; - } - leaf est { - type boolean; - } - leaf rev { - type boolean; + type aggregate_AdminState; + description "Admin state of the interface whether up or down"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + leaf operState { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; - } - leaf packets { - config "false"; - type uint64; + type aggregate_OperState; + description "Operational state of the interface whether up or down"; } - leaf fragment { - type boolean; + leaf ip { + type address_Ip; + description "IP addr address assigned to this interface"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf ownerCtrlrsIdList { + config "false"; - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aggregate_ControllerIdBitmap; + description "List of the controller Ids owning this interface"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf mtu { - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type aggregate_MTU; + description "Size of the MTU this interface is able to transmit"; } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + leaf bw { - // Type is an MO-Defined-Type - type acl_VniType; + type aggregate_Bw; + description "Bandwidth Of SVI"; } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; + leaf fwdMode { - // Type is an MO-Defined-Type - type acl_VlanType; + type aggregate_fabFwdMode; + description "Fabric Forwarding Mode"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf vrf { - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type l3_VrfName; + description "VRF context"; } + } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; - - // Type is an MO-Defined-Type - type acl_Name; - } + grouping aggregate_MacTable-group { + description "MAC Table"; - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + container dynamic-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_DynamicMac-group; + description "Dynamic MAC Table"; } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + container static-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_StaticMac-group; + description "Static MAC Table"; } + } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; + grouping aggregate_DynamicMac-group { + description "Dynamic MAC Table"; - // Type is an MO-Defined-Type - type acl_Name; - } + // Aggregate MacEntry + container mac-items { + list MacEntry-list { + key "mac vlan"; - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + uses aggregate_MacEntry-group; + description "MAC Entry list"; + } + description "MAC Entry"; + } + } - // Type is an MO-Defined-Type - type acl_Name; + grouping aggregate_MacEntry-group { + description "MAC Entry"; + leaf mac { + type address_Mac; + description "MAC"; } - leaf redirect { + leaf vlan { type string; + description "Vlan"; } - // Filter type - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf fltType { - description "Acl Filter Type"; + leaf intf { - // Type is an MO-Defined-Type - type inbandTelemetry_FltType; + type nw_IfId; + description "Interface"; + } + leaf tunnelDstIp { + type address_Ip; + description "TunnelDstIp"; + } + leaf isIntf { + type boolean; + description "isIf"; } - // protocol to match - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf type { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_MacType; + description "MacType"; + } + leaf pushedMacToBackEnd { + type boolean; + default "false"; + description "pushedMacToBackEnd"; } - // Protocol Mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + container rtmac-items { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + uses aggregate_RtMac_target-group; + description "Tunnel Mac Entry"; } + } - // source prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + grouping aggregate_StaticMac-group { + description "Static MAC Table"; - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + // Aggregate MacEntry + container mac-items { + list MacEntry-list { + key "mac vlan"; + + uses aggregate_MacEntry-group; + description "MAC Entry list"; + } + description "MAC Entry"; } + } - // source prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + grouping aggregate_SystemTable-group { + description "System or switch level properties for SDN controller interface."; - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + leaf stTime { + + type mo_TStamp; + description "System Start Time"; + } + leaf mgmtIp { + config "false"; + type address_Ip; + description "Management IP address of the switch"; + } + leaf switchType { + type string; + description "Switch Type"; } - // source prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + leaf purgeDBRequest { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type mo_TStamp; + description "Client DB Purge Request"; + } + leaf isControllerConfigured { + type boolean; + description "IsControllerConfigured"; + } + leaf nxdbEnabled { + config "false"; + type boolean; + description "nxdbEnabled"; } - // destination prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + container controllerTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + uses aggregate_ControllerTable-group; + description "Controller Table"; } - // destination prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + container cpuTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + uses aggregate_CPUTable-group; + description "CPU Table"; } - // destination prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + container moduleTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + uses aggregate_ModuleTable-group; } - } - - grouping inbandTelemetry_DroplistAcl-group { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container vxlanTable-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_VxlanTable-group; + description "Vxlan Table"; } - // ACL name - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf name { - description "ACL Name"; + container shadowVxlanTable-items { - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_ShadowVxlanTable-group; + description "Shadow Vxlan Table"; } + } - // toggle per-entry statistics - // Inherited From acl:ACL - // Type is an MO-Defined-Type - leaf perACEStatistics { - description "Per ACE statistics"; + grouping aggregate_ControllerTable-group { + description "Controller Table"; + container controller-items { + list ControllerEntry-list { + key "id"; - // Type is an MO-Defined-Type - type acl_ACEStats; + uses aggregate_ControllerEntry-group; + description "Configuration properties of the controller instance controlling this switch list"; + } + description "Configuration properties of the controller instance controlling this switch"; } - leaf configStatus { - config "false"; + } + + grouping aggregate_ControllerEntry-group { + description "Configuration properties of the controller instance controlling this switch"; + leaf id { type uint32; + description "Unique identity of the controller instance"; + } + leaf readRole { + type string; + description "Name of the read role for get APIs"; + } + leaf writeRole { + type string; + description "Name of the write role for get and set APIs"; + } + leaf controllerType { + type string; + description "Type of the vxlan overlay this controller is controlling"; } - // INT Droplist ACE - container ace-items { - list DroplistAce-list { - key "seqNum"; + leaf configuredVlans { + config "false"; - // Added containment: Prefix=ace - // Acquired From Package inbandTelemetry - uses inbandTelemetry_DroplistAce-group; - } + type l2_VlanBitmap; + description "Vlans that are assigned under this controller"; } - } - - grouping inbandTelemetry_DroplistAce-group { - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf dedicatedVlans { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type l2_VlanBitmap; + description "Dedicated Vlans"; } - // remark - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf remark { - description "Access-list entry comment"; + leaf publishedVlans { + config "false"; - // Type is an MO-Defined-Type - type acl_RemarkStr; + type l2_VlanBitmap; + description "Vlans that are published to the controller after VPC consistency checks are completed"; } - // ACE sequence number - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf seqNum { - description "Sequence number"; + leaf vlanResourceStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_SequenceNumber; + type aggregate_ResourceStatus; + description "Indicate that at least one Vlan is assigned to the controller"; } - // ACE filtering action - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf action { - description "Specify packets to forward or reject"; + leaf intfResourceStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_ActionType; + type aggregate_ResourceStatus; + description "Indicate that at least one interface is assigned to the controller"; } - // source port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortOp { - description "Source port operator"; + leaf isSystemReadyForController { - // Type is an MO-Defined-Type - type acl_Operator; + type aggregate_ConfigStatus; + description "Indicate that switch is now ready to acccept the NXAPI requests from the controller"; } - // first source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort1 { - description "First source port"; + leaf type { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_CtrlrType; + description "Type of the Vxlan the controller is controlling"; + } + leaf vrfPrefix { + type string; + description "The string prefix that will be prefixed to all VRFs created by this controller"; + } + leaf numVrf { + type uint32; + description "Maximum number of VRFs that this controller can create on the switch"; + } + leaf publishVrf { + type boolean; + description "Flag indicate if vrfs are tobe published to the controller not not"; + } + leaf publishNumVrf { + type uint32; + description "Numumber of vrfs published to controller after VPC consistency checks are completed"; } - // second source port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPort2 { - description "Second source port"; + container controllerAssignedIntfTable-items { - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_ControllerAssignedIntfTable-group; + description "Controller Assigned Interface Table"; } + } - // Source Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortMask { - description "Source Port Mask"; + grouping aggregate_ControllerAssignedIntfTable-group { + description "Controller Assigned Interface Table"; + container controllerAssignedIntfEntry-items { + list ControllerAssignedIntfEntry-list { + key "intfName"; - // Type is an MO-Defined-Type - type acl_PortNumber; + uses aggregate_ControllerAssignedIntfEntry-group; + description "Properties of an interface assigned to the controller list"; + } + description "Properties of an interface assigned to the controller"; } + } - // destination port operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortOp { - description "Destination port operator"; + grouping aggregate_ControllerAssignedIntfEntry-group { + description "Properties of an interface assigned to the controller"; - // Type is an MO-Defined-Type - type acl_Operator; + leaf intfName { + + type nw_IfId; + description "IntfName"; } - // first destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort1 { - description "First destination port number"; + // Port channel id + leaf pcId { - // Type is an MO-Defined-Type - type acl_PortNumber; + type pc_PcId; + description "Identity of the Port channel"; } - // second destination port - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPort2 { - description "Second destination port number"; + leaf type { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfType; + description "Type of the interface"; } - // Destination Port Mask - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortMask { - description "Destination Port Mask"; + leaf mode { - // Type is an MO-Defined-Type - type acl_PortNumber; + type aggregate_IntfAssignMode; + description "Suggest if interface is dedicated to controller or shared between CLI"; } - leaf logging { + leaf published { type boolean; - default "true"; + description "Indicates whether interface is published to the controller or not"; } - leaf dscp { - type uint8 { - range "0..63"; + } + + grouping aggregate_CPUTable-group { + description "CPU Table"; + container cpuEntry-items { + list CPUEntry-list { + key "type"; + + uses aggregate_CPUEntry-group; + description "CPU Entry list"; } + description "CPU Entry"; } + } - // packet-length operator - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLenOp { - description "packet length operator"; + grouping aggregate_CPUEntry-group { + description "CPU Entry"; - // Type is an MO-Defined-Type - type acl_Operator; + leaf type { + + type aggregate_CpuType; + description "CPU Type"; } + } - // First packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen1 { - description "first packet length"; + grouping aggregate_ModuleTable-group { + container moduleEntry-items { + list ModuleEntry-list { + key "type"; - // Type is an MO-Defined-Type - type acl_PktLen; + uses aggregate_ModuleEntry-group; + } } + } - // second packet-length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf pktLen2 { - description "second packet length"; + grouping aggregate_ModuleEntry-group { - // Type is an MO-Defined-Type - type acl_PktLen; + leaf type { + + type aggregate_ModuleType; + description "Type"; } - leaf urg { - type boolean; + } + + grouping aggregate_VxlanTable-group { + description "Vxlan Table"; + container intf-items { + list VxlanInterfaceEntry-list { + key "name"; + + uses aggregate_VxlanInterfaceEntry-group; + description "Vxlan interface entry represents the properties of the VTEP list"; + } + description "Vxlan interface entry represents the properties of the VTEP"; } - leaf ack { - type boolean; + } + + grouping aggregate_VxlanInterfaceEntry-group { + description "Vxlan interface entry represents the properties of the VTEP"; + leaf name { + type string; + description "Name"; } - leaf psh { - type boolean; + + leaf myTepStatus { + config "false"; + + type aggregate_OperState; + description "MyTepStatus"; } - leaf rst { - type boolean; + + leaf hostReachability { + config "false"; + + type aggregate_HostReachabilityMode; + description "HostReachability"; } - leaf syn { - type boolean; + leaf controllerId { + type uint32; + description "Controller ID"; } - leaf fin { - type boolean; + + leaf configSource { + config "false"; + + type aggregate_ConfigSourceType; + description "configSource"; } - leaf est { - type boolean; + leaf primaryTunnelIp { + config "false"; + type address_Ip; + description "PrimaryTunnelIp"; } - leaf rev { - type boolean; + leaf secondaryTunnelIp { + config "false"; + type address_Ip; + description "SecondaryTunnelIp"; } - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpFlagsMask { - description "tcp flags mask"; + container localBfd-items { - // Type is an MO-Defined-Type - type acl_TcpFlagsMask; + uses aggregate_LocalBfd-group; + description "Configuration properties of the local BFD endpoint of VTEP"; } - leaf packets { + } + + grouping aggregate_LocalBfd-group { + description "Configuration properties of the local BFD endpoint of VTEP"; + leaf mac { config "false"; - type uint64; + type address_Mac; + description "BFD DMAC"; } - leaf fragment { - type boolean; + leaf ip { + config "false"; + type address_Ip; + description "BFD IP"; } - // capture session - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf captureSession { - description "capture session"; + leaf minTxIntvl { + config "false"; - // Type is an MO-Defined-Type - type acl_CaptureSes; + type aggregate_MinTxIntvl; + description "Desired Minimum TX Interval"; } - // http option (http-method) - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf httpOption { - description "http option http-method"; + leaf minRxIntvl { + config "false"; - // Type is an MO-Defined-Type - type acl_HttpOptionType; + type aggregate_MinRxIntvl; + description "Desired Minimum RX Interval"; } + } - // nve vni ID - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vni { - description "nve vni ID"; + grouping aggregate_ShadowVxlanTable-group { + description "Shadow Vxlan Table"; + container intf-items { + list ShadowVxlanInterfaceEntry-list { + key "name"; - // Type is an MO-Defined-Type - type acl_VniType; + uses aggregate_ShadowVxlanInterfaceEntry-group; + description "Vxlan Interface Entry list"; + } + description "Vxlan Interface Entry"; } + } - // vlan - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf vlan { - description "vlan"; - - // Type is an MO-Defined-Type - type acl_VlanType; + grouping aggregate_ShadowVxlanInterfaceEntry-group { + description "Vxlan Interface Entry"; + leaf name { + type string; + description "Name"; } - // TCP option length - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf tcpOptionLength { - description "TCP options length"; + leaf myTepStatus { + config "false"; - // Type is an MO-Defined-Type - type acl_TcpOptionLengthType; + type aggregate_OperState; + description "MyTepStatus"; } - // time-range - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf timeRange { - description "time range name"; + leaf hostReachability { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aggregate_HostReachabilityMode; + description "HostReachability"; + } + leaf controllerId { + type uint32; + description "Controller ID"; } - // source address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcAddrGroup { - description "Source address group"; + leaf configSource { + config "false"; - // Type is an MO-Defined-Type - type acl_Name; + type aggregate_ConfigSourceType; + description "configSource"; + } + leaf primaryTunnelIp { + config "false"; + type address_Ip; + description "PrimaryTunnelIp"; + } + leaf secondaryTunnelIp { + config "false"; + type address_Ip; + description "SecondaryTunnelIp"; } + } - // destination address group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstAddrGroup { - description "Destination address group"; + grouping aggregate_TunnelIntfTable-group { + description "Tunnel Interface Table"; + container intf-items { + list TunnelIntfEntry-list { + key "destIp"; - // Type is an MO-Defined-Type - type acl_Name; + uses aggregate_TunnelIntfEntry-group; + description "Properties of the remote VTEP tunnel endpoint list"; + } + description "Properties of the remote VTEP tunnel endpoint"; } + } - // source port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf srcPortGroup { - description "Source port group"; - - // Type is an MO-Defined-Type - type acl_Name; + grouping aggregate_TunnelIntfEntry-group { + description "Properties of the remote VTEP tunnel endpoint"; + leaf description { + type string; + description "description"; } - // destination port group - // Inherited From acl:L3ACE - // Type is an MO-Defined-Type - leaf dstPortGroup { - description "Destination port group"; + leaf ifId { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf redirect { - type string; + type nw_IfId; + description "Unique tunnel interface Id"; } - // Filter type - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf fltType { - description "Acl Filter Type"; + leaf type { - // Type is an MO-Defined-Type - type inbandTelemetry_FltType; + type aggregate_TunnelType; + description "Indicate if the tunnel is of IPv4 or IPv6 type"; + } + leaf srcIp { + type address_Ip; + description "Source IP address of the tunnel interface"; + } + leaf destIp { + type address_Ip; + description "Destination IP address of the tunnel interface"; } - // protocol to match - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocol { - description "Protocol for access-list entry"; + leaf mtu { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_MTU; + description "Size of MTU on the tunnel interface"; } - // Protocol Mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf protocolMask { - description "Protocol Mask"; + leaf state { - // Type is an MO-Defined-Type - type ipv4acl_Protocol; + type aggregate_OperState; + description "Operational state of the tunnel interface"; } - // source prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefix { - description "Source IPv4 prefix"; + leaf vrf { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + type l3_VrfName; + description "The name of the VRF that is supported by this tunnel"; } - // source prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixMask { - description "Source IPv4 prefix mask"; + leaf ipVnidBinding { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + type aggregate_BooleanFlag; + description "Indicates if the L3 VNID binding is established or not"; + } + leaf isTunnelCreated { + config "false"; + type boolean; + default "false"; + description "Indicates if the tunnel is created and initialized for transport of the VTEP traffic"; + } + leaf isTunnelCreatedByController { + config "false"; + type boolean; + default "true"; + description "Indicates if the tunnel is created by the controller"; + } + leaf noOfMacsSeenBeforeTunnelCreatedbyController { + config "false"; + type uint32; + description "The number of MACs that are learned locally before tunnel interface is created by the controller"; } - // source prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf srcPrefixLength { - description "Source IPv4 prefix length"; + leaf epType { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + type aggregate_EpType; + description "The type of the tunnel endpoint"; } - // destination prefix - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefix { - description "Destination IPv4 prefix"; + container tunMacTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4Prefix; + uses aggregate_TunMacTable-group; + description "Tunnel Mac Table"; } - // destination prefix wildcard mask - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixMask { - description "Destination IPv4 prefix mask"; + container vnidTable-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixMask; + uses aggregate_VnidTable-group; + description "Vnid Table"; } - // destination prefix length - // Inherited From inbandTelemetry:Ace - // Type is an MO-Defined-Type - leaf dstPrefixLength { - description "Destination IPv4 prefix length"; + container remoteBfd-items { - // Type is an MO-Defined-Type - type ipv4acl_IPv4PrefixLen; + uses aggregate_RemoteBfd-group; + description "Managed object for configuration properties of the remote BFD endpoint of VTEP"; } - } - grouping inbandTelemetry_RecordP-group { + container rtaggregateVtepAtt-items { - // Collect parameters for the int record - // Type is an MO-Defined-Type - leaf collect0 { - description "Collect Params Set0"; + list RtAggregateVtepAtt-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type inbandTelemetry_CollectParams0; + uses aggregate_RtAggregateVtepAtt_target-group; + description "Link To Tunnel Intf Entry list"; + } + description "Link To Tunnel Intf Entry"; } + } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping aggregate_TunMacTable-group { + description "Tunnel Mac Table"; - // Type is an MO-Defined-Type - type naming_Descr; - } + container rsmac-items { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + list RsMac-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_RsMac_source-group; + description "Tunnel Mac Entry list"; } + description "Tunnel Mac Entry"; } } - grouping inbandTelemetry_Collector-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping aggregate_VnidTable-group { + description "Vnid Table"; + container vnid-items { + list VnidEntry-list { + key "vnid"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses aggregate_VnidEntry-group; + description "A specific vnid Entry in the Vnid table list"; } + description "A specific vnid Entry in the Vnid table"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping aggregate_VnidEntry-group { + description "A specific vnid Entry in the Vnid table"; + leaf vnid { + type string; + description "Vnid"; } - // Remote node VRF - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf vrfName { - description "Remote Entity VRF"; + leaf groupAddr { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf dstAddr { - type address_Ip; + type aggregate_GroupAddr; + description "GroupAddr"; } + } - // Remote node destination port - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf dstPort { - description "Remote Entity L4 Port"; + grouping aggregate_RemoteBfd-group { + description "Managed object for configuration properties of the remote BFD endpoint of VTEP"; - // Type is an MO-Defined-Type - type l4_Port; + leaf bfdStatus { + + type aggregate_BfdStatus; + description "Vnid"; + } + leaf mac { + type address_Mac; + description "BFD DMAC"; + } + leaf ip { + type address_Ip; + description "BFD IP"; } - // IP dscp value - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf dscp { - description "DSCP Value"; + leaf minTxIntvl { - // Type is an MO-Defined-Type - type qosp_DscpCP; + type aggregate_MinTxIntvl; + description "Desired Minimum TX Interval"; } - // Source interface - // Inherited From inbandTelemetry:RemoteNode - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + leaf minRxIntvl { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf srcAddr { - type address_Ip; + type aggregate_MinRxIntvl; + description "Desired Minimum RX Interval"; } } - grouping inbandTelemetry_Monitor-group { + grouping aggregate_VlanTable-group { + description "Vlan Table"; - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Aggregate VlanEntry + container vlan-items { + list VlanEntry-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses aggregate_VlanEntry-group; + description "Vlan Entry list"; + } + description "Vlan Entry"; } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; + grouping aggregate_VlanEntry-group { + description "Vlan Entry"; + leaf id { + type string; description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } } - // Rel-def from recordPAtt - container rsrecordPAtt-items { + leaf adminState { - // Added containment as a singleton: Prefix=rsrecordPAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsRecordPAtt_source-group; + type aggregate_AdminState; + description "AdminState"; } + } - // Rel-def from collectorAtt - container rscollectorAtt-items { - - // Abstract containment of rscollectorAtt derived from inbandTelemetry:Monitor - list RsCollectorAtt-list { - config "false"; - key "tDn"; + grouping aggregate_VpcDomTable-group { + description "Vpc Domain Table"; + container vpcDom-items { + list VpcDomEntry-list { + key "domainId"; - // Added containment: Prefix=rscollectorAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsCollectorAtt_source-group; + uses aggregate_VpcDomEntry-group; + description "List of properties of a specific VPC domain entry list"; } + description "List of properties of a specific VPC domain entry"; } + } - // Rel-def from watchlistAtt - container rswatchlistAtt-items { + grouping aggregate_VpcDomEntry-group { + description "List of properties of a specific VPC domain entry"; - // Added containment as a singleton: Prefix=rswatchlistAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsWatchlistAtt_source-group; + leaf domainId { + + type vpc_DomId; + description "The unique VPC domain Id"; + } + leaf keepaliveDestIp { + type address_Ip; + description "The destination IP address of the keep alive link between VPC pair"; + } + leaf keepaliveSrcIp { + type address_Ip; + description "The source IP address of the keep alive link between VPC pair"; + } + leaf virtualIp { + type address_Ip; + description "The IP address that represent the VPC tunnel endpoint"; + } + leaf peerIp { + type address_Ip; + description "Peer IP"; } - // Rel-def from droplistAtt - container rsdroplistAtt-items { + leaf keepaliveSts { + config "false"; - // Added containment as a singleton: Prefix=rsdroplistAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsDroplistAtt_source-group; + type aggregate_VpcKeepaliveStatus; + description "Keep alive status between the VPC pair switches"; } - } - - grouping inbandTelemetry_FwdInstTarget-group { - // Identifier - // Type is an MO-Defined-Type - leaf id { + leaf peerLinkSts { config "false"; - description "Identifier"; - // Type is an MO-Defined-Type - type inbandTelemetry_FwdInstTargetId; + type aggregate_VpcPeerLinkStatus; + description "Peer Link Status between the VPC pair switches"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf vpcRole { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type vpc_Role; + description "Indicates if the switch is primary or secondary in the VPC pair"; + } + leaf peerGW { + type boolean; + description "Gateway where the non-standard layer 2 packets are forwarded in a vPC environment"; + } + leaf dualActive { + type boolean; + description "Indication that both the peer link and the peer keep alive link are disconnected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf peerLinkIf { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Port channel interface of the peer link"; } - // Rel-def from monitorAtt - container rsmonitorAtt-items { + // VPCTAB + container vpcTable-items { - // Abstract containment of rsmonitorAtt derived from inbandTelemetry:FwdInstTarget - list RsMonitorAtt-list { - config "false"; - key "tDn"; + uses aggregate_VpcTable-group; + description "Vpc Table"; + } + } - // Added containment: Prefix=rsmonitorAtt - // Acquired From Package inbandTelemetry - uses inbandTelemetry_RsMonitorAtt_source-group; + grouping aggregate_VpcTable-group { + description "Vpc Table"; + container vpc-items { + list VpcEntry-list { + key "vpcnum"; + + uses aggregate_VpcEntry-group; + description "vpc Entry list"; } + description "vpc Entry"; } } - grouping copp_Entity-group { - leaf error { - config "false"; - type uint64; - default "0"; + grouping aggregate_VpcEntry-group { + description "vpc Entry"; + + leaf vpcnum { + + type vpc_Id; + description "Unique number identifying this Vpc pair"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ifId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_IfId; + description "VPC port channel number"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf operState { - // Type is an MO-Defined-Type - type nw_AdminSt; + type aggregate_VpcOperStatus; + description "Operationsl status of the VPC port channel"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf consCheckSts { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type vpc_CompatSt; + description "Indication of whether consistency checks have passed or failed"; } - // Holder for copp class policy, each class describes a - // set of rules describing the policer rates - container classp-items { - list Class-list { - key "cName"; + leaf consCheckReason { + config "false"; - // Added containment: Prefix=classp - // Acquired From Package copp - uses copp_Class-group; - } + type vpc_CompatQual; + description "Provides a reason why consistency check have failed"; } - // Holder for copp class policy, each class describes a - // set of rules describing the policer rates - container policy-items { - list Policy-list { - key "name"; + container vpcintf-items { - // Added containment: Prefix=policy - // Acquired From Package copp - uses copp_Policy-group; - } + uses aggregate_VpcIntfEntry-group; + description "VPC Interface Entry"; } + } - // Model for COPP profile - container profile-items { + grouping aggregate_VpcIntfEntry-group { + description "VPC Interface Entry"; - // Added containment as a singleton: Prefix=profile - // Acquired From Package copp - uses copp_Profile-group; + container rsvpcIntfEntryAtt-items { + + uses aggregate_RsVpcIntfEntryAtt_source-group; + description "Vpc Interface Entry Attachment"; } + } - // Model for Copp Copy profile - container name-items { - list CopyProfile-list { - key "affixName"; + grouping aggregate_VrfTable-group { + container vrf-items { + list VrfEntry-list { + key "name"; - // Added containment: Prefix=name - // Acquired From Package copp - uses copp_CopyProfile-group; + uses aggregate_VrfEntry-group; } } + } - // Scale factor - container scale-items { - list Scale-list { - key "module"; + grouping aggregate_VrfEntry-group { - // Added containment: Prefix=scale - // Acquired From Package copp - uses copp_Scale-group; - } + leaf name { + + type l3_VrfName; + description "Name of the VRF instance"; } - // Service-Policy - container service-items { - list Service-list { - key "name"; + leaf genName { - // Added containment: Prefix=service - // Acquired From Package copp - uses copp_Service-group; - } + type l3_VrfName; + description "Generic name of the VRF instance"; } - } - grouping copp_Class-group { - leaf cName { + leaf ctrlrId { + + type aggregate_ControllerID; + description "Id of the controller this VRF is assigned to"; + } + leaf vnid { type string; + description "Virtual network id this VRF is associated with"; } - - // Match any/all - // Type is an MO-Defined-Type - leaf matchOption { - description "Match Option"; - - // Type is an MO-Defined-Type - type copp_MatchOption; + leaf rd { + type mtx_array_community; + description "A unique number prepended to route in VRF to distinguish its belonging to a particular VRF"; } - leaf flag { + leaf genExtraRt { type boolean; + description "A flag to indicate whether to generate extra route target for VRF"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf templateName { + type string; + description "Name of the config template which is executed upon creation of this VRF"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf templateStatus { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type aggregate_ConfTmplStatus; + description "Indicates the execution status of the config template"; } - - // Allowed rate, committed rate at which the packets - // are allowed into the system - // Inherited From policer:Class - // Type is an MO-Defined-Type - leaf rate { + leaf shdwTemplateName { config "false"; - description "Rate"; - - // Type is an MO-Defined-Type - type policer_Rate; + type string; + description "Name of the shadow template name the config template is associated"; } - - // Committed burst size, number of packets to absorb during - // a burst - // Inherited From policer:Class - // Type is an MO-Defined-Type - leaf burst { + leaf shdwVrfGenName { config "false"; - description "Burst"; - - // Type is an MO-Defined-Type - type policer_Burst; + type string; + description "Shadow VRF-controller-prefix Name"; } - // Set of match conditions for this copp policer - container match-items { - list Match-list { + // Domain (vrf) information + // + // + // + // + // + // + // + // + // + // List of route types + container af-items { + list DomainAf-list { key "type"; - // Added containment: Prefix=match - // Acquired From Package copp - uses copp_Match-group; - } - } - - // Match access-group - container acl-items { - list Acl-list { - key "name"; - - // Added containment: Prefix=acl - // Acquired From Package copp - uses copp_Acl-group; + uses aggregate_DomainAf-group; + description "Domain Address Family list"; } + description "Domain Address Family"; } + } - // Match redirect - container rdirect-items { - - // Added containment as a singleton: Prefix=rdirect - // Acquired From Package copp - uses copp_Rdirect-group; - } + grouping acl_Entity-group { + description "Entity of the Access Control List"; - // Match exception fcoe-fib-miss - container fcoe-items { + container systemacl-items { - // Added containment as a singleton: Prefix=fcoe - // Acquired From Package copp - uses copp_Fcoe-group; + uses acl_SystemAcl-group; + description "System Acl Management Command"; } - // Match exception multicast - container mcast-items { - list Multicast-list { - key "mcastOption"; + // IPv4 and IPv6 port object-group + container oName-items { + list PortGroup-list { + key "name"; - // Added containment: Prefix=mcast - // Acquired From Package copp - uses copp_Multicast-group; + uses acl_PortGroup-group; + description "IPv4 and IPv6 port object group list"; } + description "IPv4 and IPv6 port object group"; } - // Match exception - container excep-items { - list ExeOptions-list { - key "option"; + // MO: VLAN ACL + container vlan-items { + list VLANACL-list { + key "name"; - // Added containment: Prefix=excep - // Acquired From Package copp - uses copp_ExeOptions-group; + uses acl_VLANACL-group; + description "Defines the VLAN Access Control Lists list"; } + description "Defines the VLAN Access Control Lists"; } - // Match exception ip - container ip-items { + // IPv4 + container mac-items { - // Added containment as a singleton: Prefix=ip - // Acquired From Package copp - uses copp_Ip-group; + uses macacl_AF-group; + description "mac access control list configuration space"; } - // Match exception ip icmp - container icmp-items { - list IpIcmp-list { - key "option"; + // MPLS + container mpls-items { - // Added containment: Prefix=icmp - // Acquired From Package copp - uses copp_IpIcmp-group; - } + uses mplsacl_AF-group; + description "MPLS access control list configuration space"; } - // Match exception ipv6 - container ipv6-items { + // Time Range + container timerange-items { - // Added containment as a singleton: Prefix=ipv6 - // Acquired From Package copp - uses copp_Ipv6-group; + uses timerange_Timerange-group; + description "Time-Range configuration space"; } - // Match exception ipv6 icmp - container icmpv6-items { - list Ipv6Icmp-list { - key "option"; + // IPv4 + container ipv4-items { - // Added containment: Prefix=icmpv6 - // Acquired From Package copp - uses copp_Ipv6Icmp-group; - } + uses ipv4acl_AF-group; + description "IPv4 access control list configuration space"; } - // Match Protocol - container prot-items { - list Protocol-list { - key "type"; + // IPv6 + container ipv6-items { - // Added containment: Prefix=prot - // Acquired From Package copp - uses copp_Protocol-group; - } + uses ipv6acl_AF-group; + description "IPv6 access control list configuration space"; } } - grouping copp_Match-group { - - // Match type - // Type is an MO-Defined-Type - leaf type { - description "Match type"; - - // Type is an MO-Defined-Type - type copp_MatchT; + grouping acl_SystemAcl-group { + description "System Acl Management Command"; + leaf state { + type boolean; + description "Check the status of System ACL"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type + // Name of Access-Lists leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type acl_AclName; + description "Name of Access-Lists"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ingress or Egress direction + leaf inout { - // Type is an MO-Defined-Type - type naming_Descr; + type acl_Direction; + description "Ingress or Egress direction"; } } - grouping copp_Acl-group { + grouping acl_PortGroup-group { + description "IPv4 and IPv6 port object group"; + + // object-group name leaf name { - type string; + + type acl_Name; + description "Object-group Name in ACL"; } - leaf flag { - type boolean; + + // IPv4 and IPv6 Port Object Group member + container seq-items { + list PortMember-list { + key "seqNum"; + + uses acl_PortMember-group; + description "IPv4 and IPv6 Port Object Group member list"; + } + description "IPv4 and IPv6 Port Object Group member"; } } - grouping copp_Rdirect-group { + grouping acl_PortMember-group { + description "IPv4 and IPv6 Port Object Group member"; - // Redirect options - // Type is an MO-Defined-Type - leaf rdrct { - description "Match redirect options"; + // port operator + leaf portOp { - // Type is an MO-Defined-Type - type copp_Rdrct; + type acl_Operator; + description "Source port operator"; } - } - - grouping copp_Fcoe-group { - // Fcoe option - // Type is an MO-Defined-Type - leaf option { - description "fcoe-fib-miss"; + // first port + leaf port1 { - // Type is an MO-Defined-Type - type copp_Fcoe; + type acl_PortNumber; + description "First source port"; } - } - grouping copp_Multicast-group { + // second port + leaf port2 { - // Type is an MO-Defined-Type - leaf mcastOption { - description "Multicast options"; + type acl_PortNumber; + description "Second source port"; + } - // Type is an MO-Defined-Type - type copp_Mcast; + // configState + leaf configStatus { + + type acl_ConfigState; + description "config status"; } - leaf flag { - type boolean; + + // Object Group Member sequence number + leaf seqNum { + + type acl_SequenceNumber; + description "Sequence number"; } } - grouping copp_ExeOptions-group { + grouping acl_VLANACL-group { + description "Defines the VLAN Access Control Lists"; - // Type is an MO-Defined-Type - leaf option { - description "Match options"; + // VLAN ACL name + leaf name { - // Type is an MO-Defined-Type - type copp_Excep; + type acl_Name; + description "Defines the VLAN acl name"; } - leaf flag { - type boolean; + leaf maxseq { + config "false"; + type uint32; + description "Defines the Max sequence number"; } - } - grouping copp_Ip-group { - leaf options { - type boolean; + // MO: VLAN sequence number + container seq-items { + list VLANSeq-list { + key "seqNum"; + + uses acl_VLANSeq-group; + description "VLAN ACL sequence number list"; + } + description "VLAN ACL sequence number"; } - leaf flag { - type boolean; + + // ==== MO: VLAN list ==== + // VLANList: + // /sys/acl/vlan-[foo]/vlanlist + // list: given arguments for vlan-list + // operation: indicate apply/remove + // listoper: vlan-list actual in effect. + // listerr: erroneous vlan-list, for fault purpose, updated via + // second trunk by aclmgr. + container vlanlist-items { + + uses acl_VLANList-group; + description "Defines the VLAN list"; } } - grouping copp_IpIcmp-group { + grouping acl_VLANSeq-group { + description "VLAN ACL sequence number"; + leaf seqNum { + type uint32; + description "Defines the Sequence number"; + } - // ICMP options - // Type is an MO-Defined-Type - leaf option { - description "icmp options"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type copp_Icmp; - } - leaf flag { - type boolean; + type acl_ACEStats; + description "Per Access Control Entry statistics"; } - } - grouping copp_Ipv6-group { - leaf options { - type boolean; + // MO: VLAN ACL match + // /sys/acl/vlan-[foo]/seq-30/match-[ip_ipv6_mac]-address-[acl1]/ + container match-items { + list VLANACLMatch-list { + key "acltype aclname"; + + uses acl_VLANACLMatch-group; + description "VLAN Access Control List match list"; + } + description "VLAN Access Control List match"; } - leaf flag { - type boolean; + + // MO: VLAN ACL action + // /sys/acl/vlan-[foo]/seq-30/action.log=[yes_no]/ + // /sys/acl/vlan-[foo]/seq-30/action.actiontype=[forward_redirect_drop]/ + // /sys/acl/vlan-[foo]/seq-30/action.redirectintf=[eth1/31_po1]/ + container action-items { + + uses acl_VLANACLAction-group; + description "VLAN Access Control List Action"; } } - grouping copp_Ipv6Icmp-group { + grouping acl_VLANACLMatch-group { + description "VLAN Access Control List match"; - // ICMP options - // Type is an MO-Defined-Type - leaf option { - description "icmp options"; + // Match ACL type: ip_ipv4_mac + leaf acltype { - // Type is an MO-Defined-Type - type copp_Icmp; + type acl_VAclMatchType; + description "match access control list type"; } - leaf flag { - type boolean; + + // Match ACL name + leaf aclname { + + type acl_Name; + description "match access control list name"; } } - grouping copp_Protocol-group { + grouping acl_VLANACLAction-group { + description "VLAN Access Control List Action"; - // Type is an MO-Defined-Type - leaf type { - description "Protocol List"; + // forward_drop_redirect + leaf actiontype { - // Type is an MO-Defined-Type - type copp_Proto; + type acl_VAclActionType; + description "VLAN ACL action forward or drop or redirect"; } - leaf flag { - type boolean; + + // toggle log options + leaf log { + + type acl_VAclLog; + description "Defines the Log option"; } - // Match protocol mpls - container mpls-items { + leaf redirectintf { - // Added containment as a singleton: Prefix=mpls - // Acquired From Package copp - uses copp_MPLSoption-group; + type acl_IfName; + description "Redirect Interfaces example, eth1/11 or po1"; } } - grouping copp_MPLSoption-group { + grouping acl_VLANList-group { + description "Defines the VLAN list"; - // Type is an MO-Defined-Type - leaf exp { - description "Experimental value"; + leaf list { - // Type is an MO-Defined-Type - type copp_ExpVal; + type acl_VlanListStr; + description "VLAN or a list of VLANS example 1,2 or 2-4"; } - // Type is an MO-Defined-Type - leaf routerAlert { - description "router-alert"; + leaf operation { - // Type is an MO-Defined-Type - type copp_Ralert; + type acl_operation; + description "Vlan Filter Operation apply or remove"; } - } - grouping copp_Policy-group { - leaf name { - type string; - } - leaf flag { - type boolean; + leaf listoper { + + type acl_VlanListStr; + description "Vlan List String oper after apply or remove"; } - // Class included in Policy-map - container classp-items { - list Classp-list { - key "name"; + leaf listerr { + config "false"; - // Added containment: Prefix=classp - // Acquired From Package copp - uses copp_Classp-group; + type acl_VlanListStr; + description "Vlan List String error"; + } + leaf timeStamp { + type union { + type string; + type uint64; } + description "INTERNAL: time stamp"; } } - grouping copp_Classp-group { - leaf name { - type string; - } - leaf insertBeforeName { - type string; - } - leaf flag { - type boolean; - } + grouping macacl_AF-group { + description "mac access control list configuration space"; - // Set policer action - container cir-items { - list PolicerAction-list { - key "cirVal cirUnit burstC burstUnit"; + container statClear-items { - // Added containment: Prefix=cir - // Acquired From Package copp - uses copp_PolicerAction-group; - } + uses acl_StatClear-group; + description "clear acl statistics"; } - // Set policer action with pir rate - container policeActionE-items { + // ACL policies + container policy-items { - // Added containment as a singleton: Prefix=policeActionE - // Acquired From Package copp - uses copp_PolicerActionExc-group; + uses acl_Policy-group; + description "Access Control List policy"; } - // Logging Action - container logging-items { - list Logging-list { - key "threshold levelRange"; + // IPv4 ACL + container name-items { + list ACL-list { + key "name"; - // Added containment: Prefix=logging - // Acquired From Package copp - uses copp_Logging-group; + uses macacl_ACL-group; + description "IPv4 access control list list"; } + description "IPv4 access control list"; } + } - // Set cos action - container setCos-items { - list SetCos-list { - key "cosVal"; - - // Added containment: Prefix=setCos - // Acquired From Package copp - uses copp_SetCos-group; - } - } + grouping acl_StatClear-group { + description "clear acl statistics"; - container setDscp-items { + // StatClear ACL name + leaf name { - // Added containment as a singleton: Prefix=setDscp - // Acquired From Package copp - uses copp_SetDscp-group; + type acl_Name; + description "ACL Name to clear the statistics"; + } + leaf timeStamp { + type union { + type string; + type uint64; + } + description "Clear ACL statistics time stamp"; } } - grouping copp_PolicerAction-group { + grouping acl_Policy-group { + description "Access Control List policy"; - // Type is an MO-Defined-Type - leaf cirVal { - description "Cir value"; + // Ingress directions + container ingress-items { - // Type is an MO-Defined-Type - type copp_IrVal; + uses acl_Ingress-group; + description "Ingress direction of packets"; } - // Type is an MO-Defined-Type - leaf cirUnit { - description "Cir rate"; + // Egress directions + container egress-items { - // Type is an MO-Defined-Type - type copp_IrUnit; + uses acl_Egress-group; + description "Egress direction of packets"; } + } - // Type is an MO-Defined-Type - leaf burstC { - description "Burst count"; + grouping acl_Ingress-group { + description "Ingress direction of packets"; - // Type is an MO-Defined-Type - type copp_BurstVal; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses acl_If-group; + description "Interface to which ACL is applied list"; + } + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf burstUnit { - description "BC unit"; + container vty-items { - // Type is an MO-Defined-Type - type copp_BurstUnit; + uses acl_Vty-group; + description "Defines the virtual terminal lines (Vty)"; } + } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform Action"; + grouping acl_If-group { + description "Interface to which ACL is applied"; - // Type is an MO-Defined-Type - type copp_ConformAction; + // interface name string + leaf name { + + type nw_IfId; + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; + // ACL instance + container acl-items { - // Type is an MO-Defined-Type - type copp_ViolateAction; + uses acl_Inst-group; + description "Access Control List instance"; } - leaf flag { - type boolean; + + // port ACL instance + container portacl-items { + + uses acl_PortInst-group; + description "Port Access Control List instance"; + } + + // ACL instance + container macif-items { + + uses macacl_MacIf-group; + description "Mac packet-classify container"; } } - grouping copp_PolicerActionExc-group { + grouping acl_Inst-group { + description "Access Control List instance"; - // Type is an MO-Defined-Type - leaf cirVal { - description "Cir value"; + leaf name { - // Type is an MO-Defined-Type - type copp_IrVal; + type acl_Name; + description "Access Control List name"; + } + leaf configStatus { + config "false"; + type uint32; + description "config status indicator"; } + } - // Type is an MO-Defined-Type - leaf cirUnit { - description "Cir rate"; + grouping acl_PortInst-group { + description "Port Access Control List instance"; - // Type is an MO-Defined-Type - type copp_IrUnit; - } + leaf name { - // Type is an MO-Defined-Type - leaf burstC { - description "Burst count"; + type acl_Name; + description "Access Control List Name"; + } + leaf configStatus { + config "false"; + type uint32; + description "config status indicator"; + } + } - // Type is an MO-Defined-Type - type copp_BurstVal; + grouping macacl_MacIf-group { + description "Mac packet-classify container"; + leaf macPacketClassify { + type boolean; + description "Flag for mac packet-classify on L2"; } + } - // Type is an MO-Defined-Type - leaf burstUnit { - description "BC unit"; + grouping acl_Vty-group { + description "Defines the virtual terminal lines (Vty)"; - // Type is an MO-Defined-Type - type copp_BurstUnit; + // ACL instance + container acl-items { + + uses acl_Inst-group; + description "Access Control List instance"; } + } - // Type is an MO-Defined-Type - leaf pirVal { - description "Pir value"; + grouping acl_Egress-group { + description "Egress direction of packets"; - // Type is an MO-Defined-Type - type copp_IrVal; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses acl_If-group; + description "Interface to which ACL is applied list"; + } + description "Interface to which ACL is applied"; } - // Type is an MO-Defined-Type - leaf pirUnit { - description "Pir rate"; + container vty-items { - // Type is an MO-Defined-Type - type copp_IrUnit; + uses acl_Vty-group; + description "Defines the virtual terminal lines (Vty)"; } + } - // Type is an MO-Defined-Type - leaf burstE { - description "Burst exceed "; + grouping macacl_ACL-group { + description "IPv4 access control list"; - // Type is an MO-Defined-Type - type copp_BurstVal; + // ACL name + leaf name { + + type acl_Name; + description "Name of Access lists"; } - // Type is an MO-Defined-Type - leaf burstEUnit { - description "BE unit"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type copp_BurstUnit; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform Action"; + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Type is an MO-Defined-Type - type copp_ConformAction; + uses acl_Resequence-group; + description "resequence access-list"; } - // Type is an MO-Defined-Type - leaf exceedAction { - description "Exceed Action"; + // IPv4 ACE + container seq-items { + list SEQ-list { + key "seqNum"; - // Type is an MO-Defined-Type - type copp_ExceedAction; + uses macacl_SEQ-group; + description "sequence number of MO list"; + } + description "sequence number of MO"; } + } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; - - // Type is an MO-Defined-Type - type copp_ViolateAction; + grouping acl_Resequence-group { + description "resequence access-list"; + leaf start { + type uint32; + description "starting sequence number"; + } + leaf step { + type uint32; + description "step to increase the sequence number"; } } - grouping copp_Logging-group { + grouping macacl_SEQ-group { + description "sequence number of MO"; - // Type is an MO-Defined-Type - leaf threshold { - description "Logging Threshold"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type copp_IrVal; + type acl_SequenceNumber; + description "Sequence number of ACE"; } - // Type is an MO-Defined-Type - leaf levelRange { - description "logging range"; + // MAC ACE + container ace-items { - // Type is an MO-Defined-Type - type copp_LevelRange; + uses macacl_ACE-group; + description "mac access-list entry"; + } + + // Remark ACE + container remark-items { + + uses macacl_Remark-group; + description "Defines the Mac remark entry"; } } - grouping copp_SetCos-group { - leaf inner { - type boolean; + grouping macacl_ACE-group { + description "mac access-list entry"; + + // protocol number + leaf protocol { + + type acl_MACProtocol; + description "protocol number of ACE"; } - // Cos value - // Type is an MO-Defined-Type - leaf cosVal { - description "Cos Value"; + // cos number + leaf cos { - // Type is an MO-Defined-Type - type copp_CosVal; + type acl_cosType; + description "Cos number of Access Control Entry"; } - leaf flag { - type boolean; + leaf redirect { + type string; + description "redirect to interface"; } - } - grouping copp_SetDscp-group { - leaf tunnel { - type boolean; + // time-range + leaf timeRange { + + type acl_TimeRangeName; + description "Defines the time range name"; } - // Type is an MO-Defined-Type - leaf dscpVal { - description "Dscp Value"; + // vlan number + leaf vlan { - // Type is an MO-Defined-Type - type copp_DscpVal; + type acl_VlanType; + description "Defines the vlan number"; } - } - - grouping copp_Profile-group { - // Profile type - // Type is an MO-Defined-Type - leaf prof { - description "Profile type "; + // set-erspan-dscp- + leaf erspanDscp { - // Type is an MO-Defined-Type - type copp_ProfT; + type acl_erspanDscpType; + description "Defines the dscp value"; } - } - grouping copp_CopyProfile-group { - - // Profile type - // Type is an MO-Defined-Type - leaf profile { - description "Profile type "; + // erspan gre proto + leaf erspanGre { - // Type is an MO-Defined-Type - type copp_ProfT; + type acl_erspanGreType; + description "Defines the dscp gre protocol"; } - // affix type - // Type is an MO-Defined-Type - leaf affix { - description "Affix type"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type copp_Affix; - } - leaf affixName { - type string; + type acl_ActionType; + description "ACE action, permit or deny"; } - leaf copyNum { - type uint32; + leaf srcPrefix { + type address_Mac; + description "Defines the Source MAC Address"; } - } - - grouping copp_Scale-group { - leaf scaleVal { - type decimal64 { - fraction-digits 2; - } + leaf srcPrefixMask { + type address_Mac; + description "Defines the Source prefix mask"; } - leaf module { - type uint16; + leaf dstPrefix { + type address_Mac; + description "destination MAC Address"; } - } - - grouping copp_Service-group { - leaf name { - type string; + leaf dstPrefixMask { + type address_Mac; + description "destination MAC address mask"; } - leaf error { + leaf packets { config "false"; type uint64; - default "0"; + description "Number of packets hitting ACE"; + } + + // UDF + container udf-items { + + uses macacl_UDF-group; + description "Defines the MAC UDFs"; } } - grouping glean_Entity-group { + grouping macacl_UDF-group { + description "Defines the MAC UDFs"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // supports at most 18 UDF udf1 Name + leaf udf1Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 1"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // udf1 Value + leaf udf1Val { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfVal; + description "UDF1 value to match"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // udf1 Mask + leaf udf1Mask { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_UdfMask; + description "Mask to apply to UDF1 value"; } - // Holds glean instance information - container inst-items { + // udf2 Name + leaf udf2Name { - // Added containment as a singleton: Prefix=inst - // Acquired From Package glean - uses glean_Inst-group; + type acl_UdfName; + description "User-defined field match 2"; } - } - - grouping glean_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf2 Value + leaf udf2Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF2 value to match"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // udf2 Mask + leaf udf2Mask { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfMask; + description "Mask to apply to UDF2 value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + // udf3 Name + leaf udf3Name { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfName; + description "User-defined field match 3"; } - // This objects hold per glean domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "encap"; + // udf3 Value + leaf udf3Val { - // Added containment: Prefix=dom - // Acquired From Package glean - uses glean_Dom-group; - } + type acl_UdfVal; + description "UDF3 value to match"; } - } - grouping glean_Dom-group { - leaf encap { - config "false"; - type string; + // udf3 Mask + leaf udf3Mask { + + type acl_UdfMask; + description "Mask to apply to UDF3 value"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf4 Name + leaf udf4Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 4"; } - // This objects hold per glean l2 domain (BD) information - container bd-items { - list BD-list { - config "false"; - key "encap"; + // udf4 Value + leaf udf4Val { - // Added containment: Prefix=bd - // Acquired From Package glean - uses glean_BD-group; - } + type acl_UdfVal; + description "UDF4 value to match"; } - } - grouping glean_BD-group { - leaf encap { - config "false"; - type string; + // udf4 Mask + leaf udf4Mask { + + type acl_UdfMask; + description "Mask to apply to UDF4 value"; } - // Gateway mac - // Type is an MO-Defined-Type - leaf gwMac { - config "false"; - description "Gateway MAC"; + // udf5 Name + leaf udf5Name { - // Type is an MO-Defined-Type - type glean_GwMac; + type acl_UdfName; + description "User-defined field match 5"; } - // Fabric multicast group - // Type is an MO-Defined-Type - leaf fmcastGrp { - config "false"; - description "Fabric Multicast Group"; + // udf5 Value + leaf udf5Val { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type acl_UdfVal; + description "UDF5 value to match"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // udf5 Mask + leaf udf5Mask { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfMask; + description "Mask to apply to UDF5 value"; } - // This objects holds gateway information. For a given BD, - // there could be multiple gateways - container gw-items { - list Gateway-list { - config "false"; - key "ip"; + // udf6 Name + leaf udf6Name { - // Added containment: Prefix=gw - // Acquired From Package glean - uses glean_Gateway-group; - } + type acl_UdfName; + description "User-defined field match 6"; } - } - - grouping glean_Gateway-group { - // Gateway ip address - // Type is an MO-Defined-Type - leaf ip { - config "false"; - description "Gateway IP Address"; + // udf6 Value + leaf udf6Val { - // Type is an MO-Defined-Type - type glean_GwIp; + type acl_UdfVal; + description "UDF6 value to match"; } - } - - grouping hmm_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf6 Mask + leaf udf6Mask { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfMask; + description "Mask to apply to UDF6 value"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf7 Name + leaf udf7Name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfName; + description "User-defined field match 7"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // udf7 Value + leaf udf7Val { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_UdfVal; + description "UDF7 value to match"; } - // Fabric Forwarding Object - container fwdinst-items { + // udf7 Mask + leaf udf7Mask { - // Added containment as a singleton: Prefix=fwdinst - // Acquired From Package hmm - uses hmm_FwdInst-group; + type acl_UdfMask; + description "Mask to apply to UDF7 value"; } - } - grouping hmm_FwdInst-group { - leaf amac { - type address_Mac; + // udf8 Name + leaf udf8Name { + + type acl_UdfName; + description "User-defined field match 8"; } - leaf limitVlanMac { - type uint16 { - range "5..2048"; - } - default "2048"; + + // udf8 Value + leaf udf8Val { + + type acl_UdfVal; + description "UDF8 value to match"; } - // selective-host-probe - // Type is an MO-Defined-Type - leaf selHostProbe { - description "When set to True, host mobility will be triggered when a remote host route exists irrespective of the sequence id."; + // udf8 Mask + leaf udf8Mask { - // Type is an MO-Defined-Type - type hmm_Boolean; + type acl_UdfMask; + description "Mask to apply to UDF8 value"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf9 Name + leaf udf9Name { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfName; + description "User-defined field match 9"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf9 Value + leaf udf9Val { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfVal; + description "UDF9 value to match"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // udf9 Mask + leaf udf9Mask { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfMask; + description "Mask to apply to UDF9 value"; } - // Fabric Forwarding Interface Object - container if-items { - list FwdIf-list { - key "id"; + // udf10 Name + leaf udf10Name { - // Added containment: Prefix=if - // Acquired From Package hmm - uses hmm_FwdIf-group; - } + type acl_UdfName; + description "User-defined field match 10"; } - // Fabric Forwarding EVPN Object - container evpn-items { + // udf10 Value + leaf udf10Val { - // Added containment as a singleton: Prefix=evpn - // Acquired From Package hmm - uses hmm_FwdEvpn-group; + type acl_UdfVal; + description "UDF10 value to match"; } - // Holds HMM vrf information - container tenant-items { - list TenantDb-list { - config "false"; - key "vrfName"; + // udf10 Mask + leaf udf10Mask { - // Added containment: Prefix=tenant - // Acquired From Package hmm - uses hmm_TenantDb-group; - } + type acl_UdfMask; + description "Mask to apply to UDF10 value"; } - } - - grouping hmm_FwdIf-group { - // Forwarding mode - // Type is an MO-Defined-Type - leaf mode { - description "HMM Fabric Forwarding mode information for the interface."; + // udf11 Name + leaf udf11Name { - // Type is an MO-Defined-Type - type hmm_FwdMode; - } - leaf VrfName { - config "false"; - type string; + type acl_UdfName; + description "User-defined field match 11"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf11 Value + leaf udf11Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF11 value to match"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // udf11 Mask + leaf udf11Mask { - // Type is an MO-Defined-Type - type naming_Descr1024; + type acl_UdfMask; + description "Mask to apply to UDF11 value"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // udf12 Name + leaf udf12Name { - // Type is an MO-Defined-Type - type nw_IfId; + type acl_UdfName; + description "User-defined field match 12"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf12 Value + leaf udf12Val { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type acl_UdfVal; + description "UDF12 value to match"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - container rtvrfMbr-items { + // udf12 Mask + leaf udf12Mask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type acl_UdfMask; + description "Mask to apply to UDF12 value"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // udf13 Name + leaf udf13Name { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type acl_UdfName; + description "User-defined field match 13"; } - } - grouping hmm_FwdEvpn-group { - leaf ddHmmoves { - type uint16 { - range "1..1000"; - } - default "5"; - } - leaf ddHnsecs { - type uint16 { - range "2..36000"; - } - default "180"; + // udf13 Value + leaf udf13Val { + + type acl_UdfVal; + description "UDF13 value to match"; } - leaf dhrtimeout { - type uint16 { - range "30..36000"; - } - default "30"; + + // udf13 Mask + leaf udf13Mask { + + type acl_UdfMask; + description "Mask to apply to UDF13 value"; } - leaf dhrcount { - type uint16 { - range "1..3000"; - } - default "5"; + + // udf14 Name + leaf udf14Name { + + type acl_UdfName; + description "User-defined field match 14"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // udf14 Value + leaf udf14Val { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_UdfVal; + description "UDF14 value to match"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // udf14 Mask + leaf udf14Mask { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_UdfMask; + description "Mask to apply to UDF14 value"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // udf15 Name + leaf udf15Name { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_UdfName; + description "User-defined field match 15"; } - } - grouping hmm_TenantDb-group { - leaf vrfName { - config "false"; - type string; + // udf15 Value + leaf udf15Val { + + type acl_UdfVal; + description "UDF15 value to match"; } - leaf vrfState { - config "false"; - type string; + + // udf15 Mask + leaf udf15Mask { + + type acl_UdfMask; + description "Mask to apply to UDF15 value"; } - leaf vniId { - config "false"; - type uint32; + + // udf16 Name + leaf udf16Name { + + type acl_UdfName; + description "User-defined field match 16"; } - leaf refCount { - config "false"; - type uint32; + + // udf16 Value + leaf udf16Val { + + type acl_UdfVal; + description "UDF16 value to match"; } - // Holds Address family information - container af-items { - list TenantDBAf-list { - config "false"; - key "type"; + // udf16 Mask + leaf udf16Mask { - // Added containment: Prefix=af - // Acquired From Package hmm - uses hmm_TenantDBAf-group; - } + type acl_UdfMask; + description "Mask to apply to UDF16 value"; } - } - grouping hmm_TenantDBAf-group { + // udf17 Name + leaf udf17Name { - // Address family type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Tenant Address Family type (IPv4/IPv6)."; + type acl_UdfName; + description "User-defined field match 17"; + } - // Type is an MO-Defined-Type - type bgp_AfT; + // udf17 Value + leaf udf17Val { + + type acl_UdfVal; + description "UDF17 value to match"; } - leaf tblState { - config "false"; - type string; + + // udf17 Mask + leaf udf17Mask { + + type acl_UdfMask; + description "Mask to apply to UDF17 value"; } - leaf localHosts { - config "false"; - type uint32; + + // udf18 Name + leaf udf18Name { + + type acl_UdfName; + description "User-defined field match 18"; } - leaf remoteHosts { - config "false"; - type uint32; + + // udf18 Value + leaf udf18Val { + + type acl_UdfVal; + description "UDF18 value to match"; } - leaf aggregates { - config "false"; - type uint32; + + // udf18 Mask + leaf udf18Mask { + + type acl_UdfMask; + description "Mask to apply to UDF18 value"; } } - grouping icam_Entity-group { + grouping macacl_Remark-group { + description "Defines the Mac remark entry"; - // This objects hold per mrib Inst information - container inst-items { + // ACE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=inst - // Acquired From Package icam - uses icam_Inst-group; + type acl_SequenceNumber; + description "Sequence number"; + } + + // remark + leaf remark { + + type acl_RemarkStr; + description "ACL entry commment"; } } - grouping icam_Inst-group { - container mod-items { - list MonACLEntries-list { - config "false"; - key "module inst feature value_mask"; + grouping mplsacl_AF-group { + description "MPLS access control list configuration space"; - // Added containment: Prefix=mod - // Acquired From Package icam - uses icam_MonACLEntries-group; - } + // ACL policies + container policy-items { + + uses acl_Policy-group; + description "Access Control List policy"; } - container aclresmod-items { - list AclResEntries-list { - config "false"; - key "module inst tcam_no bank_no"; - // Added containment: Prefix=aclresmod - // Acquired From Package icam - uses icam_AclResEntries-group; + // MPLS ACL + container name-items { + list ACL-list { + key "name"; + + uses mplsacl_ACL-group; + description "MPLS access control list list"; } + description "MPLS access control list"; } } - grouping icam_MonACLEntries-group { - leaf feature { - config "false"; - type string; - } - leaf class_type { - config "false"; - type string; - } - leaf value_mask { - config "false"; - type string; - } - leaf action { - config "false"; - type string; - } + grouping mplsacl_ACL-group { + description "MPLS access control list"; - // Type is an MO-Defined-Type - leaf ifindex { - config "false"; - description "Interface ifindex"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type icam_Index; - } - leaf cum_stats { - config "false"; - type uint64; - } - leaf module { - config "false"; - type uint32; - } - leaf inst { - config "false"; - type uint32; + type acl_Name; + description "Name of Access lists"; } - } - grouping icam_AclResEntries-group { - leaf tcam_no { - config "false"; - type uint32; - } - leaf bank_no { - config "false"; - type uint32; - } - leaf used { - config "false"; - type uint32; - } - leaf free { - config "false"; - type uint32; + // toggle per-entry statistics + leaf perACEStatistics { + + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - leaf percent_util { - config "false"; - type decimal64 { - fraction-digits 2; + + // SEQ Number + container seq-items { + list SEQ-list { + key "seqNum"; + + uses mplsacl_SEQ-group; + description "Defines the sequence number list"; } - } - leaf timestamp { - config "false"; - type uint64; - } - leaf module { - config "false"; - type uint32; - } - leaf inst { - config "false"; - type uint32; + description "Defines the sequence number"; } } - grouping ipqos_Entity-group { + grouping mplsacl_SEQ-group { + description "Defines the sequence number"; - // Type is an MO-Defined-Type - leaf statsState { - description "Globally enable/disable QoS statistics"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type ipqos_statsState; + type acl_SequenceNumber; + description "Defines the Sequence number"; } - container statClear-items { + // MPLS ACE + container ace-items { - // Added containment as a singleton: Prefix=statClear - // Acquired From Package ipqos - uses ipqos_StatClear-group; + uses mplsacl_ACE-group; + description "MPLS access-list entry"; } + } - // Queuing QoS - container queuing-items { + grouping mplsacl_ACE-group { + description "MPLS access-list entry"; - // Added containment as a singleton: Prefix=queuing - // Acquired From Package ipqos - uses ipqos_Queuing-group; + // Action permit or deny + leaf action { + + type acl_ActionType; + description "Specify packets to forward or reject"; } - // Network QoS - container nw-items { + // Label 1 + leaf labelOne { - // Added containment as a singleton: Prefix=nw - // Acquired From Package ipqos - uses ipqos_NwQoS-group; + type acl_LabelRange; + description "Defines Mpls Label One"; } - // Default QoS - container dflt-items { + // Label 2 + leaf labelTwo { - // Added containment as a singleton: Prefix=dflt - // Acquired From Package ipqos - uses ipqos_DefaultQoS-group; + type acl_LabelRange; + description "Defines Mpls Label Two"; } - } - grouping ipqos_StatClear-group { + // Label 3 + leaf labelThree { - // StatClear pmap type - // Type is an MO-Defined-Type - leaf pmapType { - description "policy-map type"; + type acl_LabelRange; + description "Defines Mpls Label Three"; + } - // Type is an MO-Defined-Type - type ipqos_policyType; + // Label 4 + leaf labelFour { + + type acl_LabelRange; + description "Defines Mpls Label Four"; } - // StatClear pmap diretion - // Type is an MO-Defined-Type - leaf direction { - description "policy-map direction input or output"; + // Label 1 Mask + leaf labelOneMask { - // Type is an MO-Defined-Type - type ipqos_policyDirection; + type acl_LabelMaskRange; + description "Defines Mpls Label One Mask"; } - // StatClear ethernet list - // Type is an MO-Defined-Type - leaf ethernet { - description "list of ethernet interfaces"; + // Label 2 Mask + leaf labelTwoMask { - // Type is an MO-Defined-Type - type ipqos_ethernetList; + type acl_LabelMaskRange; + description "Defines Mpls Label Two Mask"; } - // StatClear vlan list - // Type is an MO-Defined-Type - leaf vlan { - description "list of vlan interfaces"; + // Label 3 Mask + leaf labelThreeMask { - // Type is an MO-Defined-Type - type ipqos_vlanList; + type acl_LabelMaskRange; + description "Mpls Label Three Mask"; } - // StatClear portChan list - // Type is an MO-Defined-Type - leaf portChan { - description "list of port-channel interfaces"; + // Label 4 Mask + leaf labelFourMask { - // Type is an MO-Defined-Type - type ipqos_portChanList; + type acl_LabelMaskRange; + description "Mpls Label Four Mask"; } - leaf timeStamp { + leaf redirect { type string; + description "redirect to interface"; } } - grouping ipqos_Queuing-group { + grouping timerange_Timerange-group { + description "Time-Range configuration space"; - // service policy applied on target - container policy-items { + // Time Range specific + container tr-items { + list Tr-list { + key "name"; - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + uses timerange_Tr-group; + description "Specifies the time-range list"; + } + description "Specifies the time-range"; } + } - // class-map - container c-items { - - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; - } + grouping timerange_Tr-group { + description "Specifies the time-range"; - // policy-map - container p-items { + // Time-Range name + leaf name { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type timerange_Name; + description "Timerange Name configuration"; } - container copyPMap-items { + // TRE + container seq-items { + list SEQ-list { + key "seqNum"; - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + uses timerange_SEQ-group; + description "Defines the time range entry list"; + } + description "Defines the time range entry"; } } - grouping ipqos_ServPol-group { + grouping timerange_SEQ-group { + description "Defines the time range entry"; - // Ingress direction - container in-items { + // TRE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=in - // Acquired From Package ipqos - uses ipqos_Ingress-group; + type timerange_SequenceNumber; + description "Sequence number for timerange rule"; } - // Ingress direction - container out-items { + // TRE Absolute + container absolute-items { - // Added containment as a singleton: Prefix=out - // Acquired From Package ipqos - uses ipqos_Egress-group; + uses timerange_TreAbsolute-group; + description "time range absolute entry"; + } + + // TRE Periodic + container periodic-items { + + uses timerange_TrePeriodic-group; + description "time range periodic entry"; } } - grouping ipqos_Ingress-group { + grouping timerange_TreAbsolute-group { + description "time range absolute entry"; - // Target interface - container intf-items { - list If-list { - key "name"; + // start time + leaf startTime { - // Added containment: Prefix=intf - // Acquired From Package ipqos - uses ipqos_If-group; - } + type timerange_HourMinSec; + description "Start Time (hh:mm:ss) for absolute rule of timerange"; } - // system qos - container sys-items { + // start day + leaf startDay { - // Added containment as a singleton: Prefix=sys - // Acquired From Package ipqos - uses ipqos_System-group; + type timerange_Day; + description "Start Day of the Month (1-31) for absolute rule of timerange"; } - // Service policy instance - container pmap-items { + // start month + leaf startMonth { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type timerange_Month; + description "Start Month for absolute rule of timerange"; } - } - - grouping ipqos_If-group { - // interface name string - // Type is an MO-Defined-Type - leaf name { - description "Interface name in a short form. eth1/1 or pc1"; + // start year + leaf startYear { - // Type is an MO-Defined-Type - type ipqos_IfName; + type timerange_Year; + description "Start Year (2000-2037) for absolute rule of timerange"; } - leaf delIntfBit { - type boolean; - default "false"; + + // end time + leaf endTime { + + type timerange_HourMinSec; + description "End Time (hh:mm:ss) for absolute rule of timerange"; } - // Service policy instance - container pmap-items { + // end day + leaf endDay { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type timerange_Day; + description "End Day of the Month (1-31) for absolute rule of timerange"; } - container cmap-items { - list Stats-list { - config "false"; - key "cmapName statType"; - // Added containment: Prefix=cmap - // Acquired From Package ipqos - uses ipqos_Stats-group; - } + // end month + leaf endMonth { + + type timerange_Month; + description "End Month for absolute rule of timerange"; } - container queCmap-items { - list QueuingStats-list { - config "false"; - key "cmapName statType"; - // Added containment: Prefix=queCmap - // Acquired From Package ipqos - uses ipqos_QueuingStats-group; - } + // end year + leaf endYear { + + type timerange_Year; + description "End Year (2000-2037) for absolute rule of timerange"; } } - grouping ipqos_Inst-group { + grouping timerange_TrePeriodic-group { + description "time range periodic entry"; - // name of policy map - // Type is an MO-Defined-Type - leaf name { - description "Policy-map Name"; + // period of weekday/weekend/daily + leaf period { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type timerange_period; + description "Period for periodic rule of timerange"; } - leaf stats { - type boolean; - default "true"; + + // period of strt day + leaf startPeriod { + + type timerange_period; + description "Start Period for periodic rule of timerange"; } - leaf configStatus { - config "false"; - type uint32; + + // period of end day + leaf endPeriod { + + type timerange_period; + description "End Period for periodic rule of timerange"; } - // Rel-def from PolicyInstToPMap - container rspolicyInstToPMap-items { + // start time + leaf startTime { - // Added containment as a singleton: Prefix=rspolicyInstToPMap - // Acquired From Package ipqos - uses ipqos_RsPolicyInstToPMap_source-group; + type timerange_HourMinSec; + description "Start Time for periodic rule of timerange"; + } + + // end time + leaf endTime { + + type timerange_HourMinSec; + description "End Time for periodic rule of timerange"; } } - grouping ipqos_Stats-group { + grouping ipv4acl_AF-group { + description "IPv4 access control list configuration space"; - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf cmapName { - config "false"; - description "Class map name"; + container statClear-items { - // Type is an MO-Defined-Type - type ipqos_CMapName; + uses acl_StatClear-group; + description "clear acl statistics"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf statType { - config "false"; - description "QoS statistics type"; + // ACL policies + container policy-items { - // Type is an MO-Defined-Type - type ipqos_StatsType; + uses acl_Policy-group; + description "Access Control List policy"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf pmapName { - config "false"; - description "Policy map name"; + // IPv4 ACL + container name-items { + list ACL-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_PMapName; - } - leaf dropPackets { - config "false"; - type uint64; - } - leaf dropBytes { - config "false"; - type uint64; - } - leaf txPackets { - config "false"; - type uint64; - } - leaf txBytes { - config "false"; - type uint64; - } - leaf conformBytes { - config "false"; - type uint64; - } - leaf exceedBytes { - config "false"; - type uint64; + uses ipv4acl_ACL-group; + description "IPv4 access control list list"; + } + description "IPv4 access control list"; } - leaf violateBytes { - config "false"; - type uint64; + + // IPv4 address object-group + container oName-items { + list AddrGroup-list { + key "name"; + + uses ipv4acl_AddrGroup-group; + description "IPv4 ACL address object group list"; + } + description "IPv4 ACL address object group"; } } - grouping ipqos_QueuingStats-group { + grouping ipv4acl_ACL-group { + description "IPv4 access control list"; - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf cmapName { - config "false"; - description "Class map name"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type acl_Name; + description "Name of Access lists"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf statType { - config "false"; - description "QoS statistics type"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type ipqos_StatsType; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // From Interface ipqos:StatPolicyInfo - // Type is an MO-Defined-Type - leaf pmapName { - config "false"; - description "Policy map name"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type ipqos_PMapName; - } - leaf dropPackets { - config "false"; - type uint64; - } - leaf dropBytes { - config "false"; - type uint64; - } - leaf txPackets { - config "false"; - type uint64; - } - leaf txBytes { - config "false"; - type uint64; - } - leaf currQueueDepth { - config "false"; - type uint64; - } - leaf maxQueueDepth { - config "false"; - type uint64; - } - leaf ingQDropPackets { - config "false"; - type uint64; - } - leaf ingQDepthBytes { - config "false"; - type uint64; - } - leaf randDropBytes { - config "false"; - type uint64; - } - leaf randDropPackets { - config "false"; - type uint64; - } - leaf randEcnMarkedPackets { - config "false"; - type uint64; - } - leaf pfcTxPpp { - config "false"; - type uint64; - } - leaf pfcRxPpp { - config "false"; - type uint64; - } - leaf pfcwdShutdownCount { - config "false"; - type uint64; - } - leaf pfcwdRestoredCount { - config "false"; - type uint64; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - leaf pfcwdFlushedPackets { + leaf configStatus { config "false"; - type uint64; + type uint32; + description "config success indicator"; } - } - grouping ipqos_System-group { + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Service policy instance - container pmap-items { + uses acl_Resequence-group; + description "resequence access-list"; + } - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + // IPv4 ACE + container seq-items { + list ACE-list { + key "seqNum"; + + uses ipv4acl_ACE-group; + description "IPv4 access-list entry list"; + } + description "IPv4 access-list entry"; } } - grouping ipqos_Egress-group { + grouping ipv4acl_ACE-group { + description "IPv4 access-list entry"; - // Target interface - container intf-items { - list If-list { - key "name"; + // protocol to match + leaf protocol { - // Added containment: Prefix=intf - // Acquired From Package ipqos - uses ipqos_If-group; - } + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // system qos - container sys-items { + // Protocol Mask + leaf protocolMask { - // Added containment as a singleton: Prefix=sys - // Acquired From Package ipqos - uses ipqos_System-group; + type ipv4acl_Protocol; + description "Defines the Protocol Mask"; } - // Service policy instance - container pmap-items { + // source prefix + leaf srcPrefix { - // Added containment as a singleton: Prefix=pmap - // Acquired From Package ipqos - uses ipqos_Inst-group; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - } - grouping ipqos_CMapEntity-group { - container name-items { - list CMapInst-list { - key "name"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Added containment: Prefix=name - // Acquired From Package ipqos - uses ipqos_CMapInst-group; - } + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - } - - grouping ipqos_CMapInst-group { - // name of class map - // Type is an MO-Defined-Type - leaf name { - description "Name of class-map"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - // type of matching - // Type is an MO-Defined-Type - leaf matchType { - description "Match-any, match-all or match-first"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type ipqos_QoSMatchType; - } - leaf configStatus { - config "false"; - type uint32; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - // access-group - container acl-items { - list Acl-list { - key "name"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Added containment: Prefix=acl - // Acquired From Package ipqos - uses ipqos_Acl-group; - } + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // dscp matching - container dscp-items { - list Dscp-list { - key "val"; + // destination prefix length + leaf dstPrefixLength { - // Added containment: Prefix=dscp - // Acquired From Package ipqos - uses ipqos_Dscp-group; - } + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } - // ip rtp matching - container ipRtp-items { + // precedence + leaf precedence { - // Added containment as a singleton: Prefix=ipRtp - // Acquired From Package ipqos - uses ipqos_IpRtp-group; + type ipv4acl_Precedence; + description "IPv4 precedence"; + } + leaf ttl { + type uint8; + description "TTL Operator"; } - // packet length matching - container packetLength-items { + // ICMP Str + leaf icmpStr { - // Added containment as a singleton: Prefix=packetLength - // Acquired From Package ipqos - uses ipqos_PacketLength-group; + type ipv4acl_ICMPEnum; + description "ICMP type"; } - // cos marking - container cos-items { - list Cos-list { - key "val"; + // ICMP type + leaf icmpType { - // Added containment: Prefix=cos - // Acquired From Package ipqos - uses ipqos_Cos-group; - } + type ipv4acl_ICMPType; + description "ICMP type"; } - // mpls experimental matching - container mplsExperimental-items { - list MPLSExperimental-list { - key "val"; + // ICMP code + leaf icmpCode { - // Added containment: Prefix=mplsExperimental - // Acquired From Package ipqos - uses ipqos_MPLSExperimental-group; - } + type ipv4acl_ICMPCode; + description "ICMP code"; } - // precedence matching - container precedence-items { - list Precedence-list { - key "val"; + // tos + leaf tos { - // Added containment: Prefix=precedence - // Acquired From Package ipqos - uses ipqos_Precedence-group; - } + type ipv4acl_Tos; + description "capture session"; } - // protocol matching - container protocol-items { - list Protocol-list { - key "val"; + // configState + leaf configStatus { + config "false"; - // Added containment: Prefix=protocol - // Acquired From Package ipqos - uses ipqos_Protocol-group; - } + type acl_ConfigState; + description "config status"; } - // description - container Description-items { + // remark + leaf remark { - // Added containment as a singleton: Prefix=Description - // Acquired From Package ipqos - uses ipqos_Description-group; + type acl_RemarkStr; + description "Access-list entry comment"; } - // NOT dscp matching - container dscpNot-items { - list NotDscp-list { - key "val"; + // ACE sequence number + leaf seqNum { - // Added containment: Prefix=dscpNot - // Acquired From Package ipqos - uses ipqos_NotDscp-group; - } + type acl_SequenceNumber; + description "Sequence number"; } - // NOT cos matching - container cosNot-items { - list NotCos-list { - key "val"; + // ACE filtering action + leaf action { - // Added containment: Prefix=cosNot - // Acquired From Package ipqos - uses ipqos_NotCos-group; - } + type acl_ActionType; + description "Specify packets to forward or reject"; } - // NOT mpls experimental matching - container mplsExperimentalNot-items { - list NotMPLSExperimental-list { - key "val"; + // source port operator + leaf srcPortOp { - // Added containment: Prefix=mplsExperimentalNot - // Acquired From Package ipqos - uses ipqos_NotMPLSExperimental-group; - } + type acl_Operator; + description "Source port operator"; } - // NOT precedence matching - container precedenceNot-items { - list NotPrecedence-list { - key "val"; + // first source port + leaf srcPort1 { - // Added containment: Prefix=precedenceNot - // Acquired From Package ipqos - uses ipqos_NotPrecedence-group; - } + type acl_PortNumber; + description "First source port"; } - // NOT protocol matching - container protocolNot-items { - list NotProtocol-list { - key "val"; + // second source port + leaf srcPort2 { - // Added containment: Prefix=protocolNot - // Acquired From Package ipqos - uses ipqos_NotProtocol-group; - } + type acl_PortNumber; + description "Second source port"; } - // NOT ip rtp matching - container ipRtpNot-items { + // Source Port Mask + leaf srcPortMask { - // Added containment as a singleton: Prefix=ipRtpNot - // Acquired From Package ipqos - uses ipqos_NotIpRtp-group; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // packet length matching - container packetLengthNot-items { + // destination port operator + leaf dstPortOp { - // Added containment as a singleton: Prefix=packetLengthNot - // Acquired From Package ipqos - uses ipqos_NotPacketLength-group; + type acl_Operator; + description "Destination port operator"; } - // match qos-group - container grp-items { - list QoSGrp-list { - key "id"; + // first destination port + leaf dstPort1 { - // Added containment: Prefix=grp - // Acquired From Package ipqos - uses ipqos_QoSGrp-group; - } + type acl_PortNumber; + description "First destination port number"; } - // Rel-def from classMapToPolicyMap - container rsclassMapToPolicyMap-items { + // second destination port + leaf dstPort2 { - // Abstract containment of rsclassMapToPolicyMap derived from ipqos:CMapInst - list RsClassMapToPolicyMap-list { - key "tDn"; + type acl_PortNumber; + description "Second destination port number"; + } - // Added containment: Prefix=rsclassMapToPolicyMap - // Acquired From Package ipqos - uses ipqos_RsClassMapToPolicyMap_source-group; + // Destination Port Mask + leaf dstPortMask { + + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - } - - grouping ipqos_Acl-group { - // ACL to match - // Type is an MO-Defined-Type - leaf name { - description "Match using ACL"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type acl_Name; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Operator; + description "packet length operator"; } - } - grouping ipqos_Dscp-group { + // First packet-length + leaf pktLen1 { - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Dscp value"; + type acl_PktLen; + description "first packet length"; + } - // Type is an MO-Defined-Type - type ipqos_Dscp; + // second packet-length + leaf pktLen2 { + + type acl_PktLen; + description "second packet length"; } - leaf configStatus { - config "false"; - type uint32; + leaf urg { + type boolean; + description "tcp urg"; } - } - - grouping ipqos_IpRtp-group { - leaf configStatus { - config "false"; - type uint32; + leaf ack { + type boolean; + description "tcp ack"; } - leaf range { - type string; + leaf psh { + type boolean; + description "tcp psh"; } - } - - grouping ipqos_PacketLength-group { - leaf configStatus { - config "false"; - type uint32; + leaf rst { + type boolean; + description "tcp rst"; } - leaf range { - type string; + leaf syn { + type boolean; + description "tcp syn"; } - } - - grouping ipqos_Cos-group { - - // cos value - // Type is an MO-Defined-Type - leaf val { - description "Cos value"; - - // Type is an MO-Defined-Type - type ipqos_Cos; + leaf fin { + type boolean; + description "tcp fin"; } - leaf configStatus { - config "false"; - type uint32; + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - } - - grouping ipqos_MPLSExperimental-group { - // mpls experimental value - // Type is an MO-Defined-Type - leaf val { - description "MPLS experimental value"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type ipqos_MPLSExperimental; + type acl_TcpFlagsMask; + description "tcp flags mask"; } - leaf configStatus { + leaf packets { config "false"; - type uint32; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - } - - grouping ipqos_Precedence-group { - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Precedence value"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf configStatus { - config "false"; - type uint32; + type acl_CaptureSes; + description "capture session"; } - } - grouping ipqos_Protocol-group { - - // protocol value - // Type is an MO-Defined-Type - leaf val { - description "Protocol value"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type ipqos_Protocol; - } - leaf configStatus { - config "false"; - type uint32; + type acl_HttpOptionType; + description "http option http-method"; } - } - grouping ipqos_Description-group { + // nve vni ID + leaf vni { - // description value - // Type is an MO-Defined-Type - leaf val { - description "Description string"; + type acl_VniType; + description "nve vni ID"; + } - // Type is an MO-Defined-Type - type ipqos_DescStr; - } - } + // vlan + leaf vlan { - grouping ipqos_NotDscp-group { + type acl_VlanType; + description "vlan"; + } - // dscp value - // Type is an MO-Defined-Type - leaf val { - description "Not dscp value"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type ipqos_Dscp; - } - leaf configStatus { - config "false"; - type uint32; + type acl_TcpOptionLengthType; + description "TCP options length"; } - } - - grouping ipqos_NotCos-group { - // cos value - // Type is an MO-Defined-Type - leaf val { - description "Not cos value"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type ipqos_Cos; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "time range name"; } - } - - grouping ipqos_NotMPLSExperimental-group { - // mpls experimental value - // Type is an MO-Defined-Type - leaf val { - description "Not mpls experimental value"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type ipqos_MPLSExperimental; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Source address group"; } - } - grouping ipqos_NotPrecedence-group { - - // precedence value - // Type is an MO-Defined-Type - leaf val { - description "Not precedence value"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Destination address group"; } - } - - grouping ipqos_NotProtocol-group { - // protocol value - // Type is an MO-Defined-Type - leaf val { - description "Not protocol value"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type ipqos_Protocol; - } - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Source port group"; } - } - grouping ipqos_NotIpRtp-group { - leaf configStatus { - config "false"; - type uint32; - } - leaf range { - type string; - } - } + // destination port group + leaf dstPortGroup { - grouping ipqos_NotPacketLength-group { - leaf configStatus { - config "false"; - type uint32; + type acl_Name; + description "Destination port group"; } - leaf range { + leaf redirect { type string; + description "Redirect action"; } - } - - grouping ipqos_QoSGrp-group { - // QoS-Group ID - // Type is an MO-Defined-Type - leaf id { - description "QoS group ID"; + // UDF + container udf-items { - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; - } - leaf configStatus { - config "false"; - type uint32; + uses ipv4acl_UDF-group; + description "Internet Protocol version4 UDF"; } } - grouping ipqos_PMapEntity-group { + grouping ipv4acl_UDF-group { + description "Internet Protocol version4 UDF"; - // policy map instance - container name-items { - list PMapInst-list { - key "name"; + // supports at most 18 UDF udf1 Name + leaf udf1Name { - // Added containment: Prefix=name - // Acquired From Package ipqos - uses ipqos_PMapInst-group; - } + type acl_UdfName; + description "User-defined field match 1"; } - } - grouping ipqos_PMapInst-group { - - // policy map name - // Type is an MO-Defined-Type - leaf name { - description "Name of policy-map"; + // udf1 Value + leaf udf1Val { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_UdfVal; + description "UDF1 value to match"; } - // type of matching - // Type is an MO-Defined-Type - leaf matchType { - description "Match-any, match-all or match-first"; + // udf1 Mask + leaf udf1Mask { - // Type is an MO-Defined-Type - type ipqos_QoSMatchType; - } - leaf refCount { - config "false"; - type uint32; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfMask; + description "Mask to apply to UDF1 value"; } - // match a class-map - container cmap-items { - list MatchCMap-list { - key "name"; + // udf2 Name + leaf udf2Name { - // Added containment: Prefix=cmap - // Acquired From Package ipqos - uses ipqos_MatchCMap-group; - } + type acl_UdfName; + description "User-defined field match 2"; } - // description - container Description-items { + // udf2 Value + leaf udf2Val { - // Added containment as a singleton: Prefix=Description - // Acquired From Package ipqos - uses ipqos_Description-group; + type acl_UdfVal; + description "UDF2 value to match"; } - // Rel-def target from PolicyInstToPMap - // Inherited From ipqos:PMapInst - container rtipqosPolicyInstToPMap-items { - - // Abstract containment of rtipqosPolicyInstToPMap derived from ipqos:PMapInst - list RtIpqosPolicyInstToPMap-list { - config "false"; - key "tDn"; + // udf2 Mask + leaf udf2Mask { - // Added containment: Prefix=rtipqosPolicyInstToPMap - // Acquired From Package ipqos - uses ipqos_RtIpqosPolicyInstToPMap_target-group; - } + type acl_UdfMask; + description "Mask to apply to UDF2 value"; } - // Rel-def target from classMapToPolicyMap - // Inherited From ipqos:PMapInst - container rtclassMapToPolicyMap-items { + // udf3 Name + leaf udf3Name { - // Added containment as a singleton: Prefix=rtclassMapToPolicyMap - // Acquired From Package ipqos - uses ipqos_RtClassMapToPolicyMap_target-group; + type acl_UdfName; + description "User-defined field match 3"; } - } - - grouping ipqos_MatchCMap-group { - // use class-map with this name - // Type is an MO-Defined-Type - leaf name { - description "Match using class-map"; + // udf3 Value + leaf udf3Val { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type acl_UdfVal; + description "UDF3 value to match"; } - // Type is an MO-Defined-Type - leaf prevCMap { - description "Insert after the given class-map"; + // udf3 Mask + leaf udf3Mask { - // Type is an MO-Defined-Type - type ipqos_MatchCMapName; + type acl_UdfMask; + description "Mask to apply to UDF3 value"; } - // Type is an MO-Defined-Type - leaf nextCMap { - description "Insert before the given class-map"; + // udf4 Name + leaf udf4Name { - // Type is an MO-Defined-Type - type ipqos_MatchCMapName; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 4"; } - container setCos-items { + // udf4 Value + leaf udf4Val { - // Added containment as a singleton: Prefix=setCos - // Acquired From Package ipqos - uses ipqos_SetCos-group; + type acl_UdfVal; + description "UDF4 value to match"; } - // set MTU - container mtu-items { + // udf4 Mask + leaf udf4Mask { - // Added containment as a singleton: Prefix=mtu - // Acquired From Package ipqos - uses ipqos_SetMTU-group; + type acl_UdfMask; + description "Mask to apply to UDF4 value"; } - // set precedence - container setPrecedence-items { + // udf5 Name + leaf udf5Name { - // Added containment as a singleton: Prefix=setPrecedence - // Acquired From Package ipqos - uses ipqos_SetPrecedence-group; + type acl_UdfName; + description "User-defined field match 5"; } - // set dscp - container setDscp-items { + // udf5 Value + leaf udf5Val { - // Added containment as a singleton: Prefix=setDscp - // Acquired From Package ipqos - uses ipqos_SetDscp-group; + type acl_UdfVal; + description "UDF5 value to match"; } - // set qos-group - container setGrp-items { + // udf5 Mask + leaf udf5Mask { - // Added containment as a singleton: Prefix=setGrp - // Acquired From Package ipqos - uses ipqos_SetQoSGrp-group; + type acl_UdfMask; + description "Mask to apply to UDF5 value"; } - // set dlb-disable - container setDlbDisable-items { + // udf6 Name + leaf udf6Name { - // Added containment as a singleton: Prefix=setDlbDisable - // Acquired From Package ipqos - uses ipqos_SetDlbDisable-group; + type acl_UdfName; + description "User-defined field match 6"; } - // queue-limit - container QueueLimit-items { + // udf6 Value + leaf udf6Val { - // Added containment as a singleton: Prefix=QueueLimit - // Acquired From Package ipqos - uses ipqos_QueueLimit-group; + type acl_UdfVal; + description "UDF6 value to match"; } - // pause - container pause-items { + // udf6 Mask + leaf udf6Mask { - // Added containment as a singleton: Prefix=pause - // Acquired From Package ipqos - uses ipqos_Pause-group; + type acl_UdfMask; + description "Mask to apply to UDF6 value"; } - // dpp - container dpp-items { + // udf7 Name + leaf udf7Name { - // Added containment as a singleton: Prefix=dpp - // Acquired From Package ipqos - uses ipqos_Dpp-group; + type acl_UdfName; + description "User-defined field match 7"; } - // bandwidth - container setBW-items { + // udf7 Value + leaf udf7Val { - // Added containment as a singleton: Prefix=setBW - // Acquired From Package ipqos - uses ipqos_SetBW-group; + type acl_UdfVal; + description "UDF7 value to match"; } - // bandwidth - container setRemBW-items { + // udf7 Mask + leaf udf7Mask { - // Added containment as a singleton: Prefix=setRemBW - // Acquired From Package ipqos - uses ipqos_SetRemBW-group; + type acl_UdfMask; + description "Mask to apply to UDF7 value"; } - // shape traffic - container shape-items { + // udf8 Name + leaf udf8Name { - // Added containment as a singleton: Prefix=shape - // Acquired From Package ipqos - uses ipqos_Shape-group; + type acl_UdfName; + description "User-defined field match 8"; } - // police - container police-items { + // udf8 Value + leaf udf8Val { - // Added containment as a singleton: Prefix=police - // Acquired From Package ipqos - uses ipqos_Police-group; + type acl_UdfVal; + description "UDF8 value to match"; } - // priority - container prio-items { + // udf8 Mask + leaf udf8Mask { - // Added containment as a singleton: Prefix=prio - // Acquired From Package ipqos - uses ipqos_Priority-group; + type acl_UdfMask; + description "Mask to apply to UDF8 value"; } - container RandDet-items { + // udf9 Name + leaf udf9Name { - // Added containment as a singleton: Prefix=RandDet - // Acquired From Package ipqos - uses ipqos_RandomDetect-group; + type acl_UdfName; + description "User-defined field match 9"; } - container RandDetNonEcn-items { + // udf9 Value + leaf udf9Val { - // Added containment as a singleton: Prefix=RandDetNonEcn - // Acquired From Package ipqos - uses ipqos_RandomDetectNonEcn-group; + type acl_UdfVal; + description "UDF9 value to match"; } - } - - grouping ipqos_SetCos-group { - // Cos value - // Type is an MO-Defined-Type - leaf val { - description "Cos value"; + // udf9 Mask + leaf udf9Mask { - // Type is an MO-Defined-Type - type ipqos_Cos; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfMask; + description "Mask to apply to UDF9 value"; } - } - - grouping ipqos_SetMTU-group { - // MTU value - // Type is an MO-Defined-Type - leaf value { - description "Set MTU value"; + // udf10 Name + leaf udf10Name { - // Type is an MO-Defined-Type - type ipqos_MTU; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 10"; } - } - - grouping ipqos_SetPrecedence-group { - // Precedence value - // Type is an MO-Defined-Type - leaf val { - description "Precedence value"; + // udf10 Value + leaf udf10Val { - // Type is an MO-Defined-Type - type ipqos_Prec; - } - leaf tunnel { - type boolean; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfVal; + description "UDF10 value to match"; } - } - - grouping ipqos_SetDscp-group { - // Dscp value - // Type is an MO-Defined-Type - leaf val { - description "Dscp value"; + // udf10 Mask + leaf udf10Mask { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type acl_UdfMask; + description "Mask to apply to UDF10 value"; } - leaf tunnel { - type boolean; + + // udf11 Name + leaf udf11Name { + + type acl_UdfName; + description "User-defined field match 11"; } - leaf configStatus { - config "false"; - type uint32; + + // udf11 Value + leaf udf11Val { + + type acl_UdfVal; + description "UDF11 value to match"; } - } - grouping ipqos_SetQoSGrp-group { + // udf11 Mask + leaf udf11Mask { - // QoS-Group ID - // Type is an MO-Defined-Type - leaf id { - description "QoS group ID"; + type acl_UdfMask; + description "Mask to apply to UDF11 value"; + } - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + // udf12 Name + leaf udf12Name { + + type acl_UdfName; + description "User-defined field match 12"; } - leaf configStatus { - config "false"; - type uint32; + + // udf12 Value + leaf udf12Val { + + type acl_UdfVal; + description "UDF12 value to match"; } - } - grouping ipqos_SetDlbDisable-group { - leaf configStatus { - config "false"; - type uint32; + // udf12 Mask + leaf udf12Mask { + + type acl_UdfMask; + description "Mask to apply to UDF12 value"; } - } - grouping ipqos_QueueLimit-group { + // udf13 Name + leaf udf13Name { - // queue-limit - // Type is an MO-Defined-Type - leaf QueueLimitVal { - description "Value in bytes/kbytes/mbytes"; + type acl_UdfName; + description "User-defined field match 13"; + } - // Type is an MO-Defined-Type - type ipqos_QueueLimit; + // udf13 Value + leaf udf13Val { + + type acl_UdfVal; + description "UDF13 value to match"; } - // queue-limit unit - // Type is an MO-Defined-Type - leaf QueueLimitUnit { - description "Bytes/kbytes/mbytes"; + // udf13 Mask + leaf udf13Mask { - // Type is an MO-Defined-Type - type ipqos_QueueLimitUnit; + type acl_UdfMask; + description "Mask to apply to UDF13 value"; } - // queue-limit dynamic - // Type is an MO-Defined-Type - leaf dynamic { - description "Queue-limit dynamic value"; + // udf14 Name + leaf udf14Name { - // Type is an MO-Defined-Type - type ipqos_QueueLimitDynamic; + type acl_UdfName; + description "User-defined field match 14"; } - leaf configStatus { - config "false"; - type uint32; + + // udf14 Value + leaf udf14Val { + + type acl_UdfVal; + description "UDF14 value to match"; } - } - grouping ipqos_Pause-group { + // udf14 Mask + leaf udf14Mask { - // buffer-size - // Type is an MO-Defined-Type - leaf bufferSize { - description "size in bytes"; + type acl_UdfMask; + description "Mask to apply to UDF14 value"; + } - // Type is an MO-Defined-Type - type ipqos_BuffSize; + // udf15 Name + leaf udf15Name { + + type acl_UdfName; + description "User-defined field match 15"; } - // pause-threshold - // Type is an MO-Defined-Type - leaf pauseThreshold { - description "xoff bytes"; + // udf15 Value + leaf udf15Val { - // Type is an MO-Defined-Type - type ipqos_XoffBytes; + type acl_UdfVal; + description "UDF15 value to match"; } - // resume-threshold - // Type is an MO-Defined-Type - leaf resumeThreshold { - description "xon bytes"; + // udf15 Mask + leaf udf15Mask { - // Type is an MO-Defined-Type - type ipqos_XonBytes; + type acl_UdfMask; + description "Mask to apply to UDF15 value"; } - leaf pfcCos0 { - type boolean; - } - leaf pfcCos1 { - type boolean; - } - leaf pfcCos2 { - type boolean; - } - leaf pfcCos3 { - type boolean; - } - leaf pfcCos4 { - type boolean; - } - leaf pfcCos5 { - type boolean; - } - leaf pfcCos6 { - type boolean; - } - leaf pfcCos7 { - type boolean; - } - leaf receive { - type boolean; - } - leaf configStatus { - config "false"; - type uint32; - } - } - - grouping ipqos_Dpp-group { - - // set-qos-group - // Type is an MO-Defined-Type - leaf setQosGroup { - description "QoS Group Value"; - - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; - } - } - - grouping ipqos_SetBW-group { - - // Percent of available bandwidth - // Type is an MO-Defined-Type - leaf val { - description "Available bandwidth"; - - // Type is an MO-Defined-Type - type ipqos_Percent; - } - leaf configStatus { - config "false"; - type uint32; - } - } - - grouping ipqos_SetRemBW-group { - - // Percent of available bandwidth - // Type is an MO-Defined-Type - leaf val { - description "Remaining bandwidth"; - - // Type is an MO-Defined-Type - type ipqos_Percent; - } - leaf configStatus { - config "false"; - type uint32; - } - } - grouping ipqos_Shape-group { - - // Type is an MO-Defined-Type - leaf min { - description "Minimum shape rate"; + // udf16 Name + leaf udf16Name { - // Type is an MO-Defined-Type - type ipqos_ShapeRate; + type acl_UdfName; + description "User-defined field match 16"; } - // Type is an MO-Defined-Type - leaf minRateUnit { - description "Minimum shape rate unit"; + // udf16 Value + leaf udf16Val { - // Type is an MO-Defined-Type - type ipqos_RateUnit; + type acl_UdfVal; + description "UDF16 value to match"; } - // Type is an MO-Defined-Type - leaf max { - description "Maximum shape rate"; + // udf16 Mask + leaf udf16Mask { - // Type is an MO-Defined-Type - type ipqos_ShapeRate; + type acl_UdfMask; + description "Mask to apply to UDF16 value"; } - // Type is an MO-Defined-Type - leaf maxRateUnit { - description "Maximum shape rate unit"; + // udf17 Name + leaf udf17Name { - // Type is an MO-Defined-Type - type ipqos_RateUnit; - } - leaf configStatus { - config "false"; - type uint32; + type acl_UdfName; + description "User-defined field match 17"; } - } - - grouping ipqos_Police-group { - // Type is an MO-Defined-Type - leaf cirRate { - description "CIR"; + // udf17 Value + leaf udf17Val { - // Type is an MO-Defined-Type - type ipqos_PoliceRate; + type acl_UdfVal; + description "UDF17 value to match"; } - // Type is an MO-Defined-Type - leaf cirUnit { - description "CIR unit"; + // udf17 Mask + leaf udf17Mask { - // Type is an MO-Defined-Type - type ipqos_RateUnit; + type acl_UdfMask; + description "Mask to apply to UDF17 value"; } - // Type is an MO-Defined-Type - leaf bcRate { - description "CIR burst"; + // udf18 Name + leaf udf18Name { - // Type is an MO-Defined-Type - type ipqos_BurstRate; + type acl_UdfName; + description "User-defined field match 18"; } - // Type is an MO-Defined-Type - leaf bcUnit { - description "CIR burst unit"; + // udf18 Value + leaf udf18Val { - // Type is an MO-Defined-Type - type ipqos_BurstRateUnit; + type acl_UdfVal; + description "UDF18 value to match"; } - // Type is an MO-Defined-Type - leaf pirRate { - description "PIR"; + // udf18 Mask + leaf udf18Mask { - // Type is an MO-Defined-Type - type ipqos_PoliceRate; + type acl_UdfMask; + description "Mask to apply to UDF18 value"; } + } - // Type is an MO-Defined-Type - leaf pirUnit { - description "PIR unit"; - - // Type is an MO-Defined-Type - type ipqos_RateUnit; - } + grouping ipv4acl_AddrGroup-group { + description "IPv4 ACL address object group"; - // Type is an MO-Defined-Type - leaf beRate { - description "PIR burst"; + // object-group name + leaf name { - // Type is an MO-Defined-Type - type ipqos_BurstRate; + type acl_Name; + description "Object-group Name in ACL"; } - // Type is an MO-Defined-Type - leaf beUnit { - description "PIR burst unit"; + // IPv4 Address Object Group member + container seq-items { + list AddrMember-list { + key "seqNum"; - // Type is an MO-Defined-Type - type ipqos_BurstRateUnit; + uses ipv4acl_AddrMember-group; + description "IPv4 Address Object Group member list"; + } + description "IPv4 Address Object Group member"; } + } - // Type is an MO-Defined-Type - leaf conformAction { - description "Conform action"; - - // Type is an MO-Defined-Type - type ipqos_PoliceAction; - } + grouping ipv4acl_AddrMember-group { + description "IPv4 Address Object Group member"; - // Type is an MO-Defined-Type - leaf conformSetCosTransmit { - description "set cos for conforming traffic"; + // prefix + leaf prefix { - // Type is an MO-Defined-Type - type ipqos_Cos; + type ipv4acl_IPv4Prefix; + description "IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf conformSetDscpTransmit { - description "set dscp for conforming traffic"; + // prefix wildcard mask + leaf prefixMask { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type ipv4acl_IPv4PrefixMask; + description "IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf conformSetPrecTransmit { - description "set precedence for conforming traffic"; + // prefix length + leaf prefixLength { - // Type is an MO-Defined-Type - type ipqos_Prec; + type ipv4acl_IPv4PrefixLen; + description "IPv4 prefix length"; } - // Type is an MO-Defined-Type - leaf conformSetQosGrpTransmit { - description "set qos-group for conforming traffic"; + // configState + leaf configStatus { + config "false"; - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + type acl_ConfigState; + description "config status"; } - // Type is an MO-Defined-Type - leaf exceedAction { - description "Exceed action"; + // Object Group Member sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type ipqos_PoliceAction; + type acl_SequenceNumber; + description "Sequence number"; } + } - // Type is an MO-Defined-Type - leaf exceedSetCosTransmit { - description "set cos for exceeding traffic"; - - // Type is an MO-Defined-Type - type ipqos_Cos; - } + grouping ipv6acl_AF-group { + description "IPv6 access control list configuration space"; - // Type is an MO-Defined-Type - leaf exceedSetDscpTransmit { - description "set dscp for exceeding traffic"; + container statClear-items { - // Type is an MO-Defined-Type - type ipqos_Dscp; + uses acl_StatClear-group; + description "clear acl statistics"; } - // Type is an MO-Defined-Type - leaf exceedSetPrecTransmit { - description "set precedence for exceeding traffic"; + // ACL policies + container policy-items { - // Type is an MO-Defined-Type - type ipqos_Prec; + uses acl_Policy-group; + description "Access Control List policy"; } - // Type is an MO-Defined-Type - leaf exceedSetQosGrpTransmit { - description "set qos-group for exceeding traffic"; + // IPv6 ACL + container name-items { + list ACL-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + uses ipv6acl_ACL-group; + description "IPv6 access control list list"; + } + description "IPv6 access control list"; } - // Type is an MO-Defined-Type - leaf violateAction { - description "Violate action"; + // IPv6 address object-group + container oName-items { + list AddrGroup-list { + key "name"; - // Type is an MO-Defined-Type - type ipqos_PoliceAction; + uses ipv6acl_AddrGroup-group; + description "IPv6 address object group list"; + } + description "IPv6 address object group"; } + } - // Type is an MO-Defined-Type - leaf violateSetCosTransmit { - description "set cos for violating traffic"; - - // Type is an MO-Defined-Type - type ipqos_Cos; - } + grouping ipv6acl_ACL-group { + description "IPv6 access control list"; - // Type is an MO-Defined-Type - leaf violateSetDscpTransmit { - description "set dscp for violating traffic"; + // ACL name + leaf name { - // Type is an MO-Defined-Type - type ipqos_Dscp; + type acl_Name; + description "Name of Access lists"; } - // Type is an MO-Defined-Type - leaf violateSetPrecTransmit { - description "set precedence for violating traffic"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type ipqos_Prec; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // Type is an MO-Defined-Type - leaf violateSetQosGrpTransmit { - description "set qos-group for violating traffic"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type ipqos_QoSGrpId; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } leaf configStatus { config "false"; type uint32; + description "config success indicator"; } - } - - grouping ipqos_Priority-group { - // Type is an MO-Defined-Type - leaf level { - description "Optional priority level"; + // End of Layer 3 ACE (abstract MO) resequnce MO + container reseq-items { - // Type is an MO-Defined-Type - type ipqos_PriorityLevel; + uses acl_Resequence-group; + description "resequence access-list"; } - leaf configStatus { - config "false"; - type uint32; + + // IPv6 ACE + container seq-items { + list ACE-list { + key "seqNum"; + + uses ipv6acl_ACE-group; + description "IPv6 access-list entry list"; + } + description "IPv6 access-list entry"; } } - grouping ipqos_RandomDetect-group { + grouping ipv6acl_ACE-group { + description "IPv6 access-list entry"; - // minimun thresold - // Type is an MO-Defined-Type - leaf minThreshold { - description "min threshold"; + // protocol to match + leaf protocol { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_Protocol; + description "Protocol for access-list entry"; } - // minimun thresold unit - // Type is an MO-Defined-Type - leaf minThresholdUnit { - description "min threshold"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_Protocol; + description "Defines the Protocol Mask"; } - // max threshold - // Type is an MO-Defined-Type - leaf maxThreshold { - description "max threshold"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_IPv6Prefix; + description "Source IPv6 prefix"; } - // max thresold unit - // Type is an MO-Defined-Type - leaf maxThresholdUnit { - description "max threshold"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_IPv6PrefixMask; + description "Source IPv6 prefix mask"; } - // drop availability - // Type is an MO-Defined-Type - leaf dropAvail { - description "drop availability range"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type ipqos_DropAvailRange; + type ipv6acl_IPv6PrefixLen; + description "Source IPv6 prefix length"; } - // threshold weight - // Type is an MO-Defined-Type - leaf weight { - description "weight range"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type ipqos_Weight; - } - leaf capAverage { - type boolean; + type ipv6acl_IPv6Prefix; + description "Destination IPv6 prefix"; } - // mesh or burst optimization - // Type is an MO-Defined-Type - leaf optimization { - description "random optimization type"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type ipqos_RandOptType; - } - leaf ecn { - type boolean; + type ipv6acl_IPv6PrefixMask; + description "Destination IPv6 prefix mask"; } - } - grouping ipqos_RandomDetectNonEcn-group { - - // minimun thresold - // Type is an MO-Defined-Type - leaf minThresholdNonEcn { - description "non ecn min threshold"; + // destination prefix length + leaf dstPrefixLength { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_IPv6PrefixLen; + description "Destination IPv6 prefix length"; } - // minimun thresold unit - // Type is an MO-Defined-Type - leaf minThresholdUnitNonEcn { - description "non ecn min threshold"; + // flow-label + leaf flowLabel { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_FlowLabel; + description "Flow label"; } - // max threshold - // Type is an MO-Defined-Type - leaf maxThresholdNonEcn { - description "non ecn max threshold"; + // ICMP Str + leaf icmpStr { - // Type is an MO-Defined-Type - type ipqos_ThreshVal; + type ipv6acl_ICMPEnum; + description "ICMPv6 Str"; } - // max thresold unit - // Type is an MO-Defined-Type - leaf maxThresholdUnitNonEcn { - description "non ecn max threshold"; + // ICMP type + leaf icmpType { - // Type is an MO-Defined-Type - type ipqos_ThreshUnit; + type ipv6acl_ICMPType; + description "ICMPv6 type"; } - // drop availability - // Type is an MO-Defined-Type - leaf dropAvailNonEcn { - description "drop availability range"; + // ICMP code + leaf icmpCode { - // Type is an MO-Defined-Type - type ipqos_DropAvailRange; + type ipv6acl_ICMPCode; + description "ICMPv6 code"; } - } - - grouping ipqos_CopyPMap-group { - // Type is an MO-Defined-Type - leaf lastFrom { + // configState + leaf configStatus { config "false"; - description "Name of source policy-map to copy from"; - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_ConfigState; + description "config status"; } - // Type is an MO-Defined-Type - leaf lastTo { - config "false"; - description "Name of policy-map resulting from copying"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type acl_RemarkStr; + description "Access-list entry comment"; } - } - - grouping ipqos_NwQoS-group { - // service policy applied on target - container policy-items { + // ACE sequence number + leaf seqNum { - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + type acl_SequenceNumber; + description "Sequence number"; } - // class-map - container c-items { + // ACE filtering action + leaf action { - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; + type acl_ActionType; + description "Specify packets to forward or reject"; } - // policy-map - container p-items { + // source port operator + leaf srcPortOp { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type acl_Operator; + description "Source port operator"; } - container copyPMap-items { + // first source port + leaf srcPort1 { - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + type acl_PortNumber; + description "First source port"; } - } - - grouping ipqos_DefaultQoS-group { - // service policy applied on target - container policy-items { + // second source port + leaf srcPort2 { - // Added containment as a singleton: Prefix=policy - // Acquired From Package ipqos - uses ipqos_ServPol-group; + type acl_PortNumber; + description "Second source port"; } - // class-map - container c-items { + // Source Port Mask + leaf srcPortMask { - // Added containment as a singleton: Prefix=c - // Acquired From Package ipqos - uses ipqos_CMapEntity-group; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // policy-map - container p-items { + // destination port operator + leaf dstPortOp { - // Added containment as a singleton: Prefix=p - // Acquired From Package ipqos - uses ipqos_PMapEntity-group; + type acl_Operator; + description "Destination port operator"; } - container copyPMap-items { + // first destination port + leaf dstPort1 { - // Added containment as a singleton: Prefix=copyPMap - // Acquired From Package ipqos - uses ipqos_CopyPMap-group; + type acl_PortNumber; + description "First destination port number"; } - } - grouping monitor_Entity-group { + // second destination port + leaf dstPort2 { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type acl_PortNumber; + description "Second destination port number"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Destination Port Mask + leaf dstPortMask { + + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Operator; + description "packet length operator"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // First packet-length + leaf pktLen1 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_PktLen; + description "first packet length"; } - // Abstraction of coop database (repository) - container db-items { - list Db-list { - config "false"; - key "type"; + // second packet-length + leaf pktLen2 { - // Added containment: Prefix=db - // Acquired From Package monitor - uses monitor_Db-group; - } + type acl_PktLen; + description "second packet length"; } - - // Monitor session definition. there could be only few sessions - // active at a given time (max 4) - container session-items { - list Session-list { - config "false"; - key "name"; - - // Added containment: Prefix=session - // Acquired From Package monitor - uses monitor_Session-group; - } + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - } - grouping monitor_Db-group { + leaf tcpFlagsMask { - // Type of the database - // Type is an MO-Defined-Type - leaf type { + type acl_TcpFlagsMask; + description "tcp flags mask"; + } + leaf packets { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type monitor_DbT; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_CaptureSes; + description "capture session"; } - // Ep records - container epr-items { - list EpRec-list { - config "false"; - key "vnid ip"; + // http option (http-method) + leaf httpOption { - // Added containment: Prefix=epr - // Acquired From Package monitor - uses monitor_EpRec-group; - } + type acl_HttpOptionType; + description "http option http-method"; } - } - grouping monitor_EpRec-group { - leaf vnid { - config "false"; - type string; - } - leaf ip { - config "false"; - type address_Ip; + // nve vni ID + leaf vni { + + type acl_VniType; + description "nve vni ID"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_VlanType; + description "vlan"; } - } - grouping monitor_Session-group { - - // Identifier of the session - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type monitor_SessionId; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Administrative state of the session - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "time range name"; } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type monitor_OperSt; + type acl_Name; + description "Source address group"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type acl_Name; + description "Destination address group"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type naming_Descr; + type acl_Name; + description "Source port group"; } - // Monitor sources. The sources which we want to monitor - container src-items { - list Source-list { - config "false"; - key "type mode dir from to port"; + // destination port group + leaf dstPortGroup { - // Added containment: Prefix=src - // Acquired From Package monitor - uses monitor_Source-group; - } + type acl_Name; + description "Destination port group"; + } + leaf redirect { + type string; + description "Redirect action"; } + } - // ERSpan destination information - container erdst-items { + grouping ipv6acl_AddrGroup-group { + description "IPv6 address object group"; - // Added containment as a singleton: Prefix=erdst - // Acquired From Package monitor - uses monitor_ERDest-group; + // object-group name + leaf name { + + type acl_Name; + description "Object-group Name in ACL"; } - // Local span destination information - container ldst-items { + // IPv6 Address Object Group member + container seq-items { + list AddrMember-list { + key "seqNum"; - // Added containment as a singleton: Prefix=ldst - // Acquired From Package monitor - uses monitor_LocalDest-group; + uses ipv6acl_AddrMember-group; + description "IPv6 Address Object Group member list"; + } + description "IPv6 Address Object Group member"; } } - grouping monitor_Source-group { + grouping ipv6acl_AddrMember-group { + description "IPv6 Address Object Group member"; - // Source id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // prefix + leaf prefix { - // Type is an MO-Defined-Type - type monitor_SrcId; + type ipv6acl_IPv6Prefix; + description "IPv6 prefix"; } - // Type of the source - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // prefix wildcard mask + leaf prefixMask { - // Type is an MO-Defined-Type - type monitor_SrcT; + type ipv6acl_IPv6PrefixMask; + description "IPv6 prefix mask"; } - // The direction of the packets to monitor - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Direction"; + // prefix length + leaf prefixLength { - // Type is an MO-Defined-Type - type monitor_Direction; - } - leaf from { - config "false"; - type string; + type ipv6acl_IPv6PrefixLen; + description "IPv6 prefix length"; } - leaf to { + + // configState + leaf configStatus { config "false"; - type string; + + type acl_ConfigState; + description "config status"; } - // Port to monitor - // Type is an MO-Defined-Type - leaf port { - config "false"; - description "Port"; + // Object Group Member sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type nw_IfId; + type acl_SequenceNumber; + description "Sequence number"; } + } - // Mode of the source (access side or fabric side) - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + grouping analytics_Entity-group { + description "Entity"; - // Type is an MO-Defined-Type - type monitor_Mode; + // Holds netflow and analytics instance information + container inst-items { + list Inst-list { + key "mode"; + + uses analytics_Inst-group; + description "Holds the Analytics instance information list"; + } + description "Holds the Analytics instance information"; } + } - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping analytics_Inst-group { + description "Holds the Analytics instance information"; - // Type is an MO-Defined-Type - type monitor_OperSt; + // analytics/netflow mode + leaf mode { + + type analytics_ModeT; + description "Mode Select to represent the feature"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - } - grouping monitor_ERDest-group { + // Instance controls + leaf ctrl { - // Encapsulation type, the encapsulation of the monitored - // packet sent to the destination - // Type is an MO-Defined-Type - leaf type { + type nw_InstCtrl; + description "Controls"; + } + + // Operational errors qualifier + leaf operErr { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type monitor_DestEncapT; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf srcIp { - config "false"; - type address_Ip; + + // Platform capability informations + container capability-items { + + uses analytics_Capability-group; + description "Platform Capability Information"; } - leaf dstIp { - config "false"; - type address_Ip; + + // Slot info + container slot-items { + list Slot-list { + config "false"; + key "slotid"; + + uses analytics_Slot-group; + description "Module Number for this Capability list"; + } + description "Module Number for this Capability"; } - // Erspan version - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Controller information for bootstrapping the analytics agent + container controller-items { + list Controller-list { + key "name"; - // Type is an MO-Defined-Type - type monitor_ErSpanVer; + uses analytics_Controller-group; + description "Controller Reachability list"; + } + description "Controller Reachability"; } - // Flow id of the erspan packet - // Type is an MO-Defined-Type - leaf flowId { - config "false"; - description "Flow ID"; + // Flow Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type monitor_FlowId; + uses analytics_RecordP-group; + description "Flow Record list"; + } + description "Flow Record"; } - // Ttl used in the erspan packet - // Type is an MO-Defined-Type - leaf ttl { - config "false"; - description "TTL"; + // Flow Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type l3_Ttl; + uses analytics_Collector-group; + description "Collector entry list"; + } + description "Collector entry"; } - // the vrf on which the erspan packet is sent - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "VRF"; + // Flow Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type l3_VrfName; + uses analytics_Monitor-group; + description "Flow Monitor list"; + } + description "Flow Monitor"; } - leaf vnid { - config "false"; - type string; + + // Analytics profile + container prof-items { + list Profile-list { + key "name"; + + uses analytics_Profile-group; + description "Profile list"; + } + description "Profile"; } - // dscp value to be used when sending the monitored - // packets using ERSpan - // Type is an MO-Defined-Type - leaf dscp { - config "false"; - description "Dscp"; + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { + key "id"; - // Type is an MO-Defined-Type - type qosp_Dscp; + uses analytics_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Policy Container for ACLs + container policy-items { + list Policy-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses analytics_Policy-group; + description "Policy list"; } + description "Policy"; } + } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + grouping analytics_Capability-group { + description "Platform Capability Information"; + + // Mode + leaf fabricMode { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type analytics_CModeT; + description "Mode to Indicate Platform Type"; } - // mtu truncation size for the packets - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf mtu { + // Collector Bucket Hash Width + leaf bucketHashWidth { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type monitor_Mtu; + type analytics_HashWidthT; + description "Bit Width of the Collector Bucket Hash"; } - // Operational state of the session - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf operSt { + // Number of TCAM entries + leaf numTcamEnt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type monitor_OperSt; + type analytics_numTcamEntT; + description "Number of TCAM Entries"; } - } - grouping monitor_LocalDest-group { - - // Port - // Type is an MO-Defined-Type - leaf port { + // Number of TCAM entries per V4 type + leaf numTcamEntPerV4 { config "false"; - description "Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type analytics_numTcamEntV4T; + description "Number of TCAM Entries per V4 type"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Number of TCAM entries per V6 type + leaf numTcamEntPerV6 { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type analytics_numTcamEntV6T; + description "Number of TCAM Entries per V6 type"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { + // Latency Resolution Factor + leaf configLatencyResFactor { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type analytics_configLatencyResFactorT; + description "Ability to Configure Resolution Factor"; } - // mtu truncation size for the packets - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf mtu { + // Oport support + leaf oportSupport { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type monitor_Mtu; + type analytics_oportSupportT; + description "Ability to expose Oport information"; } - // Operational state of the session - // Inherited From monitor:Destination - // Type is an MO-Defined-Type - leaf operSt { + // Oclass support + leaf oclassSupport { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type monitor_OperSt; + type analytics_oportSupportT; + description "Ability to expose Oclass information"; } } - grouping flow_Entity-group { + grouping analytics_Slot-group { + description "Module Number for this Capability"; - // Flow Record - container fr-items { - list Record-list { - key "name"; + // Slot identifier + leaf slotid { + config "false"; - // Added containment: Prefix=fr - // Acquired From Package flow - uses flow_Record-group; - } + type analytics_OclassId; + description "Module Number for this Capability"; } - // Flow Exporter - container fe-items { - list Exporter-list { - key "name"; + // Oclass info + container oclass-items { + list Oclass-list { + config "false"; + key "id"; - // Added containment: Prefix=fe - // Acquired From Package flow - uses flow_Exporter-group; + uses analytics_Oclass-group; + description "Oclass to Priority Mapping list"; } + description "Oclass to Priority Mapping"; } + } - // Flow Monitor - container fm-items { - list Monitor-list { - key "name"; + grouping analytics_Oclass-group { + description "Oclass to Priority Mapping"; - // Added containment: Prefix=fm - // Acquired From Package flow - uses flow_Monitor-group; - } + // Oclass identifier + leaf id { + config "false"; + + type analytics_OclassId; + description "Egress Port Class ID"; + } + leaf priorityMapping { + config "false"; + type string; + description "Egree Port Priority Mapping"; } + } - // Sampler - container s-items { - list Sampler-list { - key "name"; + grouping analytics_Controller-group { + description "Controller Reachability"; - // Added containment: Prefix=s - // Acquired From Package flow - uses flow_Sampler-group; - } - } - container cmap-items { - list ClassMap-list { - key "name"; + leaf name { - // Added containment: Prefix=cmap - // Acquired From Package flow - uses flow_ClassMap-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container pmap-items { - list PolicyMap-list { - key "name"; - // Added containment: Prefix=pmap - // Acquired From Package flow - uses flow_PolicyMap-group; - } + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Hardware profile - container hp-items { - list HwProfile-list { - key "name"; + // Remote node VRF + leaf vrfName { - // Added containment: Prefix=hp - // Acquired From Package flow - uses flow_HwProfile-group; - } + type l3_VrfName; + description "VRF to connect to the Remote Collector"; + } + leaf dstAddr { + type address_Ip; + description "Destination IP of the Remote Collector"; } - // Forwarding instance based target - container fit-items { - list FwdInstTarget-list { - key "slot asic slice"; + // Remote node destination port + leaf dstPort { - // Added containment: Prefix=fit - // Acquired From Package flow - uses flow_FwdInstTarget-group; - } + type l4_Port; + description "L4 Port of the Remote Collector"; } - } - grouping flow_Record-group { - leaf name { - type string; + // IP dscp value + leaf dscp { + + type qosp_DscpCP; + description "DSCP value of the Remote Collector"; } - leaf description { - type string; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "Source Interface that contains the Source IP for Analytics packets"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address for Analytics packets"; } + } - // Type is an MO-Defined-Type - leaf matchParams { - description "Match Params"; + grouping analytics_RecordP-group { + description "Flow Record"; - // Type is an MO-Defined-Type - type flow_MatchParams; + // Match parameters for the flow record + leaf match { + + type analytics_MatchParams; + description "Analytics Record profile parameters to match flows on."; } - // Type is an MO-Defined-Type - leaf collectParams { - description "Collect Params"; + // Collect parameters for the flow record + leaf collect { - // Type is an MO-Defined-Type - type flow_CollectParams; + type analytics_CollectParams; + description "Analytics Record parameters to collect in the flows."; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping flow_Exporter-group { + grouping analytics_Collector-group { + description "Collector entry"; + + // Collector version + leaf ver { + + type analytics_CollVersion; + description "Collector Version Format"; + } + leaf name { - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf description { - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type + // Remote node VRF leaf vrfName { - description "Collector VRF"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF to connect to the Remote Collector"; } - leaf destinationIp { + leaf dstAddr { type address_Ip; + description "Destination IP of the Remote Collector"; } - // Type is an MO-Defined-Type - leaf destinationPort { - description "Collector L4 Port"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type flow_L4Port; + type l4_Port; + description "L4 Port of the Remote Collector"; } - // Type is an MO-Defined-Type + // IP dscp value leaf dscp { - description "DSCP value"; - // Type is an MO-Defined-Type - type ipqos_Dscp; + type qosp_DscpCP; + description "DSCP value of the Remote Collector"; } - // check - // Type is an MO-Defined-Type - leaf sourceInterface { - description "Source Interface"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface that contains the Source IP for Analytics packets"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address for Analytics packets"; } + } - // Type is an MO-Defined-Type - leaf version { - description "Export version format"; + grouping analytics_Monitor-group { + description "Flow Monitor"; - // Type is an MO-Defined-Type - type flow_ExportVersion; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping flow_Monitor-group { leaf name { - type string; - } - leaf description { - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container feb-items { - list ExporterBucket-list { + + // Collector bucket info + container collectorbucket-items { + list CollectorBucket-list { key "id"; - // Added containment: Prefix=feb - // Acquired From Package flow - uses flow_ExporterBucket-group; + uses analytics_CollectorBucket-group; + description "Flow Collector Bucket Entry list"; } + description "Flow Collector Bucket Entry"; } - // Rel-def from record - container rsrecord-items { + container rsrecordPAtt-items { - // Added containment as a singleton: Prefix=rsrecord - // Acquired From Package flow - uses flow_RsRecord_source-group; + uses analytics_RsRecordPAtt_source-group; + description "Record Policy Attachment"; } - } - grouping flow_ExporterBucket-group { - leaf id { - type uint8; - } - leaf description { - type string; - } - leaf hashLo { - type uint32; - } - leaf hashHi { - type uint32; - } + container rtl3VrfMonitorAtt-items { - // Rel-def from exporter1 - container rsexporter1-items { + list RtL3VrfMonitorAtt-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=rsexporter1 - // Acquired From Package flow - uses flow_RsExporter1_source-group; + uses l3_RtL3VrfMonitorAtt_target-group; + description "Vrf Reference to Analytics monitor. list"; + } + description "Vrf Reference to Analytics monitor."; } + } - // Rel-def from exporter2 - container rsexporter2-items { + grouping analytics_CollectorBucket-group { + description "Flow Collector Bucket Entry"; - // Added containment as a singleton: Prefix=rsexporter2 - // Acquired From Package flow - uses flow_RsExporter2_source-group; - } - } + // Collector bucket identifier + leaf id { - grouping flow_Sampler-group { - leaf name { - type string; - } - leaf description { - type string; + type analytics_CollBucketId; + description "Flow Collector Bucket Id"; } - // Type is an MO-Defined-Type - leaf mode { - description "Sampler mode"; + // HashLo value for this collector bucket + leaf hashLo { - // Type is an MO-Defined-Type - type flow_SamplerMode; - } - leaf param1 { - type uint32; - } - leaf param2 { - type uint32; + type analytics_HashT; + description "Collector Bucket Hash Low Value"; } - } - - grouping flow_ClassMap-group { - // class map name - // Type is an MO-Defined-Type - leaf name { - description "Name of class-map"; + // HashHi value for this collector bucket + leaf hashHi { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type analytics_HashT; + description "Collector Bucket Hash High Value"; } - // match access-group - container acl-items { - list MatchAcl-list { - key "name"; + leaf descr { - // Added containment: Prefix=acl - // Acquired From Package flow - uses flow_MatchAcl-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping flow_MatchAcl-group { + container rscollectorAtt-items { - // ACL to match - // Type is an MO-Defined-Type - leaf name { - description "Match using ACL"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type acl_Name; + uses analytics_RsCollectorAtt_source-group; + description "Reference to Collector list"; + } + description "Reference to Collector"; } } - grouping flow_PolicyMap-group { + grouping analytics_Profile-group { + description "Profile"; - // policy map name - // Type is an MO-Defined-Type - leaf name { - description "Name of policy-map"; + // Collect interval + leaf collectIntvl { - // Type is an MO-Defined-Type - type ipqos_PMapName; + type analytics_CollIntvl; + description "Collect Interval in Milliseconds"; } - // match a class-map - container cmap-items { - list MatchClassMap-list { - key "name"; + // Source port + leaf srcPort { - // Added containment: Prefix=cmap - // Acquired From Package flow - uses flow_MatchClassMap-group; - } + type analytics_L4Port; + description "Source L4 Port for the Analytics packets"; } - } - - grouping flow_MatchClassMap-group { - // use class-map with this name - // Type is an MO-Defined-Type - leaf name { - description "Match using class-map"; + // IP packet id shift + leaf ipPktIdShift { - // Type is an MO-Defined-Type - type ipqos_CMapName; + type analytics_IpPktIdShift; + description "Analytics IP Packet Id Shift"; } - // set Flow Monitor - container fm-items { + // Burst interval shift + leaf burstIntvlShift { - // Added containment as a singleton: Prefix=fm - // Acquired From Package flow - uses flow_SetMonitor-group; + type analytics_BurstIntvlShift; + description "Timestamp Shift Value for Burst Interval"; } - } - - grouping flow_SetMonitor-group { - // Rel-def from monitor - container rsmonitor-items { + // Collector export packet MTU + leaf mtu { - // Added containment as a singleton: Prefix=rsmonitor - // Acquired From Package flow - uses flow_RsMonitor_source-group; + type analytics_Mtu; + description "MTU for the Analytics flow record packets."; } - } - grouping flow_HwProfile-group { - leaf name { - type string; - } - leaf description { - type string; - } - leaf exportInterval { - type uint32; - default "100"; + // Sequence number guess threshold low + leaf seqNumGuessThreshLo { + + type analytics_ThresholdT; + description "Sequence Number Guess Threshold Low"; } - // Type is an MO-Defined-Type - leaf sourcePort { - description "Source L4 Port"; + // Sequence number guess threshold high + leaf seqNumGuessThreshHi { - // Type is an MO-Defined-Type - type flow_L4Port; - } - leaf ipPacketIdShift { - type uint8; - } - leaf burstIntervalShift { - type uint8; + type analytics_ThresholdT; + description "Sequence Number Guess Threshold High"; } - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + leaf descr { - // Type is an MO-Defined-Type - type flow_Mtu; + type naming_Descr; + description "Description of the specified attribute"; } - container sngt-items { + leaf name { - // Added containment as a singleton: Prefix=sngt - // Acquired From Package flow - uses flow_SeqNumGuessThreshold-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container plb-items { + + // Payload length bin + container payloadlenbin-items { list PayloadLenBin-list { key "id"; - // Added containment: Prefix=plb - // Acquired From Package flow - uses flow_PayloadLenBin-group; + uses analytics_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - container tohlb-items { + + // TCP options header length bin + container tcpopthdrlenbin-items { list TCPOptHdrLenBin-list { key "id"; - // Added containment: Prefix=tohlb - // Acquired From Package flow - uses flow_TCPOptHdrLenBin-group; + uses analytics_TCPOptHdrLenBin-group; + description "TCP optional header length bin entry list"; } + description "TCP optional header length bin entry"; } - container rwsb-items { - list ReceiveWindowSizeBin-list { + + // Receive window size bin + container rcvwindowszbin-items { + list RcvWindowSzBin-list { key "id"; - // Added containment: Prefix=rwsb - // Acquired From Package flow - uses flow_ReceiveWindowSizeBin-group; + uses analytics_RcvWindowSzBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping flow_SeqNumGuessThreshold-group { - leaf lo { - type uint32; - } - leaf hi { - type uint32; - } - } + grouping analytics_PayloadLenBin-group { + description "Payload length bin entry"; - grouping flow_PayloadLenBin-group { + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_PayloadLenIdT; + description "Payload Length Bin Id"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_PayloadLen; + type analytics_PayloadLenT; + description "Analytics payload bin low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_PayloadLen; + type analytics_PayloadLenT; + description "Analytics payload bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_TCPOptHdrLenBin-group { + grouping analytics_TCPOptHdrLenBin-group { + description "TCP optional header length bin entry"; + + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_TCPOptHdrLenIdT; + description "TCP option header length bin ID"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_TCPOptHdrLen; + type analytics_TCPOptHdrLenT; + description "Analytics TCP option header bin Low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_TCPOptHdrLen; + type analytics_TCPOptHdrLenT; + description "Analytics TCP option header bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_ReceiveWindowSizeBin-group { + grouping analytics_RcvWindowSzBin-group { + description "Receive window size bin entry"; + + // Identifier leaf id { - type uint8; - } - leaf description { - type string; + + type analytics_RcvWindowSzIdT; + description "Receive window size bin ID"; } - // Type is an MO-Defined-Type + // Low value leaf lo { - description "Bin low value"; - // Type is an MO-Defined-Type - type flow_ReceiveWindowSize; + type analytics_RcvWindowSzT; + description "Analytics Receive Window Size header bin low value"; } - // Type is an MO-Defined-Type + // High value leaf hi { - description "Bin high value"; - // Type is an MO-Defined-Type - type flow_ReceiveWindowSize; + type analytics_RcvWindowSzT; + description "Analytics Receive Window Size header bin high value"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping flow_FwdInstTarget-group { - leaf slot { - type uint8 { - range "1..64"; - } + grouping analytics_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier + leaf id { + + type analytics_FwdInstTargetId; + description "Analytics Target identifier"; } - leaf asic { - type uint8 { - range "1..10"; - } + + // Collector identifier provided by the analytics controller + leaf collectorId { + + type analytics_CollectorId; + description "Analytics exporter Id to identify the exporting hardware instance."; } - leaf slice { - type uint8 { - range "1..10"; - } + + // Default filtering policy + leaf DefPolicy { + + type analytics_DefPolicyT; + description "Default Filtering Policy"; } - leaf exporterId { - type uint32; + + // IPv4 Hit Count + leaf ipv4Hit { + + type analytics_hitCount; + description "Analytics IPv4 Flow Hit Count"; } - // Service Policy - container sp-items { - list ServicePolicy-list { - key "direction"; + // IPv6 Hit Count + leaf ipv6Hit { - // Added containment: Prefix=sp - // Acquired From Package flow - uses flow_ServicePolicy-group; - } + type analytics_hitCount; + description "Analytics IPv6 Flow Hit Count"; } - // Rel-def from hwProfile - container rshwProfile-items { + // CE Hit Count + leaf ceHit { - // Added containment as a singleton: Prefix=rshwProfile - // Acquired From Package flow - uses flow_RsHwProfile_source-group; + type analytics_hitCount; + description "Analytics CE Flow Hit Count"; } - } - grouping flow_ServicePolicy-group { + // IPv4 Create Count + leaf ipv4Create { - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; + type analytics_createCount; + description "Analytics IPv4 Flow Create Count"; + } - // Type is an MO-Defined-Type - type flow_Direction; + // IPv6 Create Count + leaf ipv6Create { + + type analytics_createCount; + description "Analytics IPv6 Flow Create Count"; } - // Rel-def from pmap - container rspmap-items { + // CE Create Count + leaf ceCreate { - // Added containment as a singleton: Prefix=rspmap - // Acquired From Package flow - uses flow_RsPmap_source-group; + type analytics_createCount; + description "Analytics CE Flow Create Count"; + } + leaf exportCount { + type uint32; + description "Analytics Flow Export Count"; + } + leaf skipCount { + type uint32; + description "Analytics Flow Skip Count"; } - } - grouping ngoam_Entity-group { + // IP filter type + leaf fltType { - // Holds NGOAM entity information - container xcon-items { + type analytics_FltType; + description "Analytics Target filter type"; + } - // Added containment as a singleton: Prefix=xcon - // Acquired From Package ngoam - uses ngoam_Xcon-group; + // Direction + leaf dir { + + type analytics_DirectionT; + description "Analytics profile direction"; } - // NGOAM Profile Object - container profile-items { - list Profile-list { - key "profId"; + container rsprofAtt-items { - // Added containment: Prefix=profile - // Acquired From Package ngoam - uses ngoam_Profile-group; - } + uses analytics_RsProfAtt_source-group; + description "Reference to profile."; } - // NGOAM InstallACL Object - container installacl-items { + container rspolicyAtt-items { - // Added containment as a singleton: Prefix=installacl - // Acquired From Package ngoam - uses ngoam_InstallAcl-group; + uses analytics_RsPolicyAtt_source-group; + description "Reference to policy."; } - // NGOAM Authentication Object - container authentication-items { + container dbgStatistics-items { - // Added containment as a singleton: Prefix=authentication - // Acquired From Package ngoam - uses ngoam_Authentication-group; + uses analytics_Statistics-group; + description "Analytics Statistics"; } + } - // NGOAM Connectivity Check Object - container cc-items { - list ConnectCheck-list { - key "ccId"; + grouping analytics_Policy-group { + description "Policy"; - // Added containment: Prefix=cc - // Acquired From Package ngoam - uses ngoam_ConnectCheck-group; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // NGOAM Xconnect config Object - container xconnect-items { + // Match ACL + container acl-items { + list MatchAcl-list { + key "name"; - // Added containment as a singleton: Prefix=xconnect - // Acquired From Package ngoam - uses ngoam_XconCfg-group; + uses analytics_MatchAcl-group; + description "Match ACL list"; + } + description "Match ACL"; } - } - grouping ngoam_Xcon-group { + container rtl3VrfPolicyAtt-items { - // Interface name for list of all egress interfaces - container bd-items { - list XConnect-list { + list RtL3VrfPolicyAtt-list { config "false"; - key "swBd"; + key "tDn"; - // Added containment: Prefix=bd - // Acquired From Package ngoam - uses ngoam_XConnect-group; + uses l3_RtL3VrfPolicyAtt_target-group; + description "Vrf Reference to Analytics policy. list"; } + description "Vrf Reference to Analytics policy."; } } - grouping ngoam_XConnect-group { - leaf swBd { - config "false"; - type uint16; + grouping analytics_MatchAcl-group { + description "Match ACL"; + leaf aclName { + type string; + description "Match using ACL"; } - // Xc state - // Type is an MO-Defined-Type - leaf xcState { - config "false"; - description "xconnect state - could have multiple states at the same time"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type ngoam_xcState; + type analytics_FltType; + description "ACL Filter Type"; } - leaf peerIp { - config "false"; - type address_Ipv4; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf vni { - config "false"; - type uint32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf localPort { - config "false"; - type string; + } + + grouping analytics_HwTelemetry-group { + description "Entity for all Hardware Telemetry features"; + + container fte-items { + + uses fte_Fte-group; + description "Configure Flow Table Events"; } - // Local port state - // Type is an MO-Defined-Type - leaf localPortState { - config "false"; - description "Local Port State"; + // Contains BDC instance info + container visibility-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses visibility_Visibility-group; + description "Entity MO for all Visibility Features"; } - leaf localVpcPort { - config "false"; - type string; + + container inbandtelemetry-items { + + uses inbandTelemetry_Int-group; + description "int"; } - // Local Vpc port state - // Type is an MO-Defined-Type - leaf localVpcPortState { - config "false"; - description "Local Vpc Port State"; + container netflow-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses netflow_Netflow-group; + description "Netflow entity"; } - leaf remotePort { - config "false"; - type string; + + container sflow-items { + + uses sflow_Sflow-group; + description "Sflow entity"; } - // Remote port state - // Type is an MO-Defined-Type - leaf remotePortState { - config "false"; - description "Remote Port State"; + container ssx-items { - // Type is an MO-Defined-Type - type ngoam_xcPortState; + uses ssx_Ssx-group; + description "ssx"; } - leaf remoteVpcPort { - config "false"; - type string; + } + + grouping fte_Fte-group { + description "Configure Flow Table Events"; + leaf enable { + type boolean; + description "Enable FTE instance"; } - // Remote Vpc port state - // Type is an MO-Defined-Type - leaf remoteVpcPortState { - config "false"; - description "Remote Vpc Port State"; + // Holds FTE instance information + container inst-items { + list Inst-list { + key "mode"; - // Type is an MO-Defined-Type - type ngoam_xcPortState; - } - leaf lastChgTs { - config "false"; - type string; + uses fte_Inst-group; + description "Configure FTE Instance list"; + } + description "Configure FTE Instance"; } } - grouping ngoam_Profile-group { + grouping fte_Inst-group { + description "Configure FTE Instance"; - // Prof. ID - // Type is an MO-Defined-Type - leaf profId { - description "Profile ID"; + // FTE mode + leaf mode { - // Type is an MO-Defined-Type - type ngoam_ProfId; + type fte_ModeT; + description "Configure the type of FTE instance"; } - // Description - // Type is an MO-Defined-Type - leaf desc { - description "Description"; + // FTE Collector info + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Desc; + uses fte_Collector-group; + description "Configure the FTE Collector Information list"; + } + description "Configure the FTE Collector Information"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // FTE Record + container record-items { + list Record-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; + uses fte_Record-group; + description "Configure FTE Record Information list"; + } + description "Configure FTE Record Information"; } - // dot1q interface - // Type is an MO-Defined-Type - leaf dot1qIf { - description "dot1q"; + // FTE Events + container events-items { + list Events-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; + uses fte_Events-group; + description "Configure FTE Events Information list"; + } + description "Configure FTE Events Information"; } - // hop - // Type is an MO-Defined-Type - leaf hop { - description "hop count"; + // FTE Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Hop; + uses fte_Monitor-group; + description "Configure FTE Monitor Information list"; + } + description "Configure FTE Monitor Information"; } - // Egress Interface - // Type is an MO-Defined-Type - leaf interface { - description "Interface"; + // System FTE + container sysfte-items { + list SysFte-list { + key "name"; - // Type is an MO-Defined-Type - type ngoam_Interface; + uses fte_SysFte-group; + description "Configure System Flow Table Events list"; + } + description "Configure System Flow Table Events"; } + } - // Oam Channel - // Type is an MO-Defined-Type - leaf oamChannel { - description "OAM channel type"; + grouping fte_Collector-group { + description "Configure the FTE Collector Information"; - // Type is an MO-Defined-Type - type ngoam_OamChannel; + // Collector node VRF + leaf vrfName { + + type fte_VrfName; + description "Configure Collector Entity VRF"; + } + leaf dstAddr { + type address_Ip; + description "Configure Collector Entity IP"; } - // Payload Pad - // Type is an MO-Defined-Type - leaf payloadPad { - description "Payload padding pattern"; + // Source UDP Port + leaf srcPort { - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type l4_Port; + description "Configure Collector Entity Source L4 Port"; + } + leaf srcAddr { + type address_Ip; + description "Configure Collector Entity Source IP Address"; + } + leaf id { + type uint32; + description "Configure Collector Entity id Value"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port Range"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_Sport; + type naming_Descr; + description "Description of the specified attribute"; } - // NGOAM FlowFwd Object - container flowfwd-items { + leaf name { - // Added containment as a singleton: Prefix=flowfwd - // Acquired From Package ngoam - uses ngoam_FlowFwd-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping ngoam_FlowFwd-group { - leaf forward { + grouping fte_Record-group { + description "Configure FTE Record Information"; + leaf dstIpv4 { type boolean; + description "Configure the Match ipv4 destination address for FTE Record"; } - - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; - - // Type is an MO-Defined-Type - type ngoam_Dot1qFlow; + leaf dstIpv6 { + type boolean; + description "Configure the Match ipv6 destination address for FTE Record"; } - leaf ipDest { - type address_Ipv4; + leaf dstMac { + type boolean; + description "Configure the Match datalink mac destination address for FTE Record"; } - leaf ipSrc { - type address_Ipv4; + leaf dstPortIpv4 { + type boolean; + description "Configure the Match ipv4 transport destination port for FTE Record"; } - leaf ipv6Dest { - type address_Ipv6; + leaf dstPortIpv6 { + type boolean; + description "Configure the Match ipv6 transport destination port for FTE Record"; } - leaf ipv6Src { - type address_Ipv6; + leaf etherType { + type boolean; + description "Configure the Match datalink ethertype for FTE Record"; } - leaf macDest { - type address_Mac; + leaf flowLabel { + type boolean; + description "Configure the Match ipv6 flow-label for FTE Record"; } - leaf macSrc { - type address_Mac; + leaf protoIpv4 { + type boolean; + description "Configure the Match ipv4 protocol for FTE Record"; } - - // port destination - // Type is an MO-Defined-Type - leaf portDest { - description "TCP or UDP port destination"; - - // Type is an MO-Defined-Type - type ngoam_DestPort; + leaf protoIpv6 { + type boolean; + description "Configure the Match ipv6 protocol for FTE Record"; } - - // port source - // Type is an MO-Defined-Type - leaf portSrc { - description "TCP or UDP port source"; - - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf srcIpv4 { + type boolean; + description "Configure the Match ipv4 source address for FTE Record"; } - - // Flow protocol number - // Type is an MO-Defined-Type - leaf protocol { - description "Flow protocol number"; - - // Type is an MO-Defined-Type - type ngoam_Protocol; + leaf srcIpv6 { + type boolean; + description "Configure the Match ipv6 source address for FTE Record"; } - leaf packet { - type string; + leaf srcMac { + type boolean; + description "Configure the Match datalink mac source address for FTE Record"; } - } - - grouping ngoam_InstallAcl-group { - leaf enabled { + leaf srcPortIpv4 { type boolean; + description "Configure the Match ipv4 transport source-port for FTE Record"; } - } - - grouping ngoam_Authentication-group { - - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "Authentication key"; - - // Type is an MO-Defined-Type - type ngoam_AuthKey; + leaf srcPortIpv6 { + type boolean; + description "Configure the Match ipv6 transport source-port for FTE Record"; + } + leaf tosIpv4 { + type boolean; + description "Configure the Match ipv4 tos for FTE Record"; + } + leaf tosIpv6 { + type boolean; + description "Configure the Match ipv6 tos for FTE Record"; } - } - - grouping ngoam_ConnectCheck-group { - // Connectivity check id - // Type is an MO-Defined-Type - leaf ccId { - description "Ngoam Connectivity check ID"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_ProfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Prof. id - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_ProfIdCC; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf dstIp { - type address_Ipv4; + } + + grouping fte_Events-group { + description "Configure FTE Events Information"; + leaf groupDropEvents { + type boolean; + description "Configure the group drop events for FTE Event"; } - leaf dstIpv6 { - type address_Ipv6; + leaf groupLatencyEvents { + type boolean; + description "Configure the group latency events for FTE Event"; } - leaf dstMAC { - type address_Mac; + leaf aclDrops { + type boolean; + description "Configure the capture acl-drops in fte-event-drop-events mode for FTE Event"; } - leaf dstUnknown { + leaf bufferDrops { type boolean; + description "Configure the capture buffer-drops in fte-event-drop-events mode for FTE Record"; } - leaf srcIp { - type address_Ipv4; + leaf fwdDrops { + type boolean; + description "Configure the capture forward-drops in fte-event-drop-events mode for FTE Record"; } - leaf srcIpv6 { - type address_Ipv6; + leaf blackHole { + type boolean; + description "Configure the capture blackhole in fte-event-drop-events mode for FTE Record"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // Latency under FTE + leaf latencyThreshold { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type fte_LatencyValue; + description "Configure FTE Latency Threshold limit"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + // Latency Unit under FTE + leaf latencyThresholdUnit { - // Type is an MO-Defined-Type - type ngoam_Sport; + type fte_LatencyUnit; + description "Configure FTE Latency Threshold Unit"; } - // count - // Type is an MO-Defined-Type - leaf count { - description "Number of packets"; + // Latency events flow count under FTE + leaf latencyFlowCount { - // Type is an MO-Defined-Type - type ngoam_NumPkt; + type fte_FlowCountValue; + description "Configure FTE Latency events flow count"; } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Drop events flow count under FTE + leaf dropFlowCount { - // Type is an MO-Defined-Type - type ngoam_Timeout; + type fte_FlowCountValue; + description "Configure FTE drop events flow count"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Event Export max + leaf eventExportMax { - // Type is an MO-Defined-Type - type ngoam_SendIntvlCC; + type fte_EventExportMax; + description "Configure FTE Event Export Max Value"; } - // Type is an MO-Defined-Type - leaf dataPattern { - description "data pattern"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type naming_Descr; + description "Description of the specified attribute"; } - // packet size - // Type is an MO-Defined-Type - leaf packetSz { - description "Payload Size"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_PktSz; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } + } - // The vrf in which it is running - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; - - // Type is an MO-Defined-Type - type ngoam_Vrf; - } + grouping fte_Monitor-group { + description "Configure FTE Monitor Information"; - // The VxLAN vni - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_VnidCC; + type naming_Descr; + description "Description of the specified attribute"; } - // Egress Interface id - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + leaf name { - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // MAC Interface - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; - } + container rsrecordAtt-items { - // dot1q - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + list RsRecordAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; - } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; - } - leaf payload_srcport { - type uint16; - } - leaf payload_dstport { - type uint16; + uses fte_RsRecordAtt_source-group; + description "Attach FTE Record to FTE Monitor list"; + } + description "Attach FTE Record to FTE Monitor"; } - // protocol - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; - - // Type is an MO-Defined-Type - type ngoam_Protocol; - } + container rscollectorAtt-items { - // Source Interface - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type nw_IfId; + uses fte_RsCollectorAtt_source-group; + description "Attach FTE Collector to FTE Monitor list"; + } + description "Attach FTE Collector to FTE Monitor"; } - // Result for fabric ping - container pingnverslt-items { - list PingNveRslt-list { - config "false"; - key "sessionId"; + container rseventsAtt-items { - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; + list RsEventsAtt-list { + key "tDn"; + + uses fte_RsEventsAtt_source-group; + description "Attach FTE Events to FTE Monitor list"; } + description "Attach FTE Events to FTE Monitor"; } } - grouping ngoam_PingNveRslt-group { + grouping fte_SysFte-group { + description "Configure System Flow Table Events"; - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_SessionId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type - type action_Descr; + type naming_Descr; + description "Description of the specified attribute"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; - } + container rsmonitorAtt-items { - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + list RsMonitorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type action_Type; + uses fte_RsMonitorAtt_source-group; + description "Attach FTE Monitor to System FTE list"; + } + description "Attach FTE Monitor to System FTE"; } + } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + grouping visibility_Visibility-group { + description "Entity MO for all Visibility Features"; - // Type is an MO-Defined-Type - type action_RetentionSize; + // Contains Buffer Drop instance info + container bufferdrop-items { + + uses bd_BufferDropInst-group; + description "Instance MO for Buffer Drop"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Contains Buffer Latency instance info + container bufferlatency-items { - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + uses bl_BufferLatencyInst-group; + description "Instance MO for Buffer Latency"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Contains INT Clone MD instance info + container intclonemd-items { - // Type is an MO-Defined-Type - type action_Qual; + uses ipt_IntCloneMdInst-group; + description "Instance MO for INT Clone MD"; } - leaf ack { - config "false"; + } + + grouping bd_BufferDropInst-group { + description "Instance MO for Buffer Drop"; + leaf isEnabled { type boolean; + default "false"; + description "Denotes whether Buffer Drop feature is enabled"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; + // Contains Buffer Drop Monitor info + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type mo_TStamp; + uses bd_Monitor-group; + description "Monitor MO for Buffer Drop Capture list"; + } + description "Monitor MO for Buffer Drop Capture"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Buffer Drop Collector info + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type action_OperSt; - } - leaf replyIp { - config "false"; - type address_Ipv4; - } - leaf replyIpv6 { - config "false"; - type address_Ipv6; - } - leaf nodeName { - config "false"; - type string; - } - leaf errorCode { - config "false"; - type string; + uses bd_Collector-group; + description "Configure the Buffer Drop Collector Information list"; + } + description "Configure the Buffer Drop Collector Information"; } - leaf failReason { - config "false"; - type string; + + // System for Buffer Drop + container system-items { + + uses bd_System-group; + description "Configure System for Buffer Drop Capture"; } + } - // Source port - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf sPort { - config "false"; - description "Source Port"; + grouping bd_Monitor-group { + description "Monitor MO for Buffer Drop Capture"; - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf name { + + type bd_MonitorName; + description "Identifying name of the monitor"; } - // packet size - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf packetSz { - config "false"; - description "Packet Size"; + leaf description { - // Type is an MO-Defined-Type - type ngoam_PktSz; + type bd_Description; + description "Description of the specified monitor"; } - // Number of packets sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf sentPkts { - config "false"; - description "Sent Packets"; + leaf aclName { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Number of packets not sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf notSentPkts { - config "false"; - description "Not Sent Packets"; + leaf v6AclName { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Number of packets received - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf rcvdPkts { - config "false"; - description "Received Packets"; + // SAMPLING PROPERTIES Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type ngoam_Counter; + type bd_SamplingRate; + description "Value of the sampling rate for the given queues"; } - // Minimum round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf minRtt { - config "false"; - description "Minimum Round Trip Time"; + // Following 2 properties are only for MB Sampling Time intervals + leaf samplingMbRate { - // Type is an MO-Defined-Type - type ngoam_Rtt; + type bd_SamplingMbRate; + description "Sampling time intervals for the given range of queues"; } - // Average round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf avgRtt { - config "false"; - description "Average Round Trip Time"; + // Sampling Packets intervals + leaf samplingMbPackets { - // Type is an MO-Defined-Type - type ngoam_Rtt; + type bd_SamplingMbPackets; + description "Sampling packet count for the given range of queues"; } + container queue-items { + list Queue-list { + key "id"; - // Maximum round trip time of all the packets that - // have been sent in one exec - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf maxRtt { - config "false"; - description "Maximum Round Trip Time"; - - // Type is an MO-Defined-Type - type ngoam_Rtt; + uses bd_Queue-group; + description "Queue MOs for Buffer Drop Capture. list"; + } + description "Queue MOs for Buffer Drop Capture."; } - // Total Rtt of all the packets sent - // Inherited From ngoam:PingRslt - // Type is an MO-Defined-Type - leaf totalRtt { - config "false"; - description "Total Round Trip Time"; + container rscollectorAtt-items { - // Type is an MO-Defined-Type - type ngoam_Rtt; + list RsCollectorAtt-list { + key "tDn"; + + uses bd_RsCollectorAtt_source-group; + description "Attach Buffer Drop Collector to Buffer Drop Monitor list"; + } + description "Attach Buffer Drop Collector to Buffer Drop Monitor"; } } - grouping ngoam_XconCfg-group { + grouping bd_Queue-group { + description "Queue MOs for Buffer Drop Capture."; - // xconnect_hb_interval - // Type is an MO-Defined-Type - leaf hbinterval { - description "Heartbeat interval"; + leaf id { - // Type is an MO-Defined-Type - type ngoam_HbInterval; + type bd_QueueId; + description "Identifying number for the queue (0-7)"; } } - grouping nxapi_Inst-group { + grouping bd_Collector-group { + description "Configure the Buffer Drop Collector Information"; - // Type is an MO-Defined-Type - leaf httpPort { - description "HTTP Port"; + leaf description { - // Type is an MO-Defined-Type - type nxapi_port; + type bd_Description; + description "Description of the specified collector"; } - // Type is an MO-Defined-Type - leaf httpsPort { - description "HTTPS Port"; + leaf destination { - // Type is an MO-Defined-Type - type nxapi_port; + type nw_IfId; + description "Destination config under the current collector"; } - // Type is an MO-Defined-Type - leaf useVrf { - description "Vrf for NX-API"; + leaf descr { - // Type is an MO-Defined-Type - type os_OsString; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf certFile { - description "Certificate file for NX-API"; + leaf name { - // Type is an MO-Defined-Type - type os_OsString; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } + } - // Type is an MO-Defined-Type - leaf keyFile { - description "Key file for NX-API"; + grouping bd_System-group { + description "Configure System for Buffer Drop Capture"; - // Type is an MO-Defined-Type - type os_OsString; - } - leaf certEnable { - type boolean; + container rsmonitorAttch-items { + + list RsMonitorAttch-list { + key "tDn"; + + uses bd_RsMonitorAttch_source-group; + description "Monitor Attachment to System Buffer Drop list"; + } + description "Monitor Attachment to System Buffer Drop"; } - leaf sslCiphersWeak { + } + + grouping bl_BufferLatencyInst-group { + description "Instance MO for Buffer Latency"; + leaf isEnabled { type boolean; default "false"; + description "Denotes whether Buffer Latency feature is enabled"; } + container record-items { + list Record-list { + key "name"; - // Type is an MO-Defined-Type - leaf sslProtocols { - description "String of space separated SSL protocols to be supported"; + uses bl_Record-group; + description "Configure Buffer Latency Record Information list"; + } + description "Configure Buffer Latency Record Information"; + } - // Type is an MO-Defined-Type - type os_OsString; + // Contains Buffer Latency Monitor info + container monitor-items { + list Monitor-list { + key "name"; + + uses bl_Monitor-group; + description "Monitor MO for Buffer Latency list"; + } + description "Monitor MO for Buffer Latency"; } - } - grouping poe_Entity-group { + // Buffer Latency Collector info + container collector-items { + list Collector-list { + key "name"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses bl_Collector-group; + description "Configure the Buffer Latency Collector Information list"; + } + description "Configure the Buffer Latency Collector Information"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Contains Buffer Latency Queue Threshold info + container threshold-items { + list Threshold-list { + key "name"; + + uses bl_Threshold-group; + description "Threshold MO for Buffer Latency Queues list"; } + description "Threshold MO for Buffer Latency Queues"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // System Buffer Latency + container system-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses bl_System-group; + description "Configure System for Buffer Latency"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping bl_Record-group { + description "Configure Buffer Latency Record Information"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + leaf description { + + type bl_Description; + description "Description of the specified record"; } - // This class shall store the global configuration - // for a running poe instance - container inst-items { + leaf descr { - // Added containment as a singleton: Prefix=inst - // Acquired From Package poe - uses poe_Inst-group; + type naming_Descr; + description "Description of the specified attribute"; } - container physif-items { - list PhysIf-list { + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + container interface-items { + list Interface-list { key "id"; - // Added containment: Prefix=physif - // Acquired From Package poe - uses poe_PhysIf-group; + uses bl_Interface-group; + description "Interface configuration MO for Buffer Latency. list"; } + description "Interface configuration MO for Buffer Latency."; } } - grouping poe_Inst-group { + grouping bl_Interface-group { + description "Interface configuration MO for Buffer Latency."; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type nw_IfId; + description "The interface id for the session"; + } + container queue-items { + list Queue-list { + key "id"; + + uses bl_Queue-group; + description "Queue Config MO for Buffer Latency list"; } + description "Queue Config MO for Buffer Latency"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping bl_Queue-group { + description "Queue Config MO for Buffer Latency"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf id { + + type bl_QueueId; + description "Identifying Queue number for Buffer Latency"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rsthresholdAtt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses bl_RsThresholdAtt_source-group; + description "Queue Config Attachment to Threshold Values"; } } - grouping poe_PhysIf-group { + grouping bl_Monitor-group { + description "Monitor MO for Buffer Latency"; - // Type is an MO-Defined-Type - leaf portMode { - description "POE interface's current port mode "; + leaf name { - // Type is an MO-Defined-Type - type poe_poePortmode; - } - leaf maxConsumption { - type uint64; + type bl_Name; + description "Identifying name of the monitor"; } - // Type is an MO-Defined-Type - leaf portPriority { - description "POE interface's current port Priority "; + leaf description { - // Type is an MO-Defined-Type - type poe_poePriority; + type bl_Description; + description "Description of the specified monitor"; } - // Type is an MO-Defined-Type - leaf portPolice { - description "POE interface's current port police action "; + leaf aclName { - // Type is an MO-Defined-Type - type poe_poePolice; + type bl_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - leaf portDefaultConsumption { - type uint64; + + leaf v6AclName { + + type bl_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type bl_SamplingRate; + description "Value of the sampling rate for the given queues"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sampling Time intervals + leaf samplingMbRate { - // Type is an MO-Defined-Type - type naming_Descr1024; + type bl_SamplingMbRate; + description "Sampling time intervals for the given range of queues"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Sampling Packets intervals + leaf samplingMbPackets { - // Type is an MO-Defined-Type - type nw_IfId; + type bl_SamplingMbPackets; + description "Sampling packet count for the given range of queues"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - container rtvrfMbr-items { + container rsrecordAtt-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + list RsRecordAtt-list { + key "tDn"; + + uses bl_RsRecordAtt_source-group; + description "Attach Buffer Latency Record to Buffer Latency Monitor list"; + } + description "Attach Buffer Latency Record to Buffer Latency Monitor"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; + container rscollectorAtt-items { + + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses bl_RsCollectorAtt_source-group; + description "Attach Buffer Latency Collector to Buffer Latency Monitor list"; } + description "Attach Buffer Latency Collector to Buffer Latency Monitor"; } } - grouping qosm_Entity-group { + grouping bl_Collector-group { + description "Configure the Buffer Latency Collector Information"; + + leaf description { + + type bl_Description; + description "Description of the specified collector"; + } + + leaf destination { + + type nw_IfId; + description "Destination config under the current collector"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + grouping bl_Threshold-group { + description "Threshold MO for Buffer Latency Queues"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf name { + + type bl_Name; + description "Name of the threshold for Buffer Latency Queues"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf value { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type bl_ThresholdValue; + description "Value of the threshold for Buffer Latency queues"; } + } - // Qos interface defintion. Holds information about qos - // operated at a class level - container class-items { - list Class-list { - config "false"; - key "qosGrp"; + grouping bl_System-group { + description "Configure System for Buffer Latency"; - // Added containment: Prefix=class - // Acquired From Package qosm - uses qosm_Class-group; + container rsmonitorAttch-items { + + list RsMonitorAttch-list { + key "tDn"; + + uses bl_RsMonitorAttch_source-group; + description "Monitor Attachment to System Buffer Latency list"; } + description "Monitor Attachment to System Buffer Latency"; } + } - // Qos interface defintion. Holds information about qos - // operated at a interface level - container if-items { - list If-list { - config "false"; - key "id"; + grouping ipt_IntCloneMdInst-group { + description "Instance MO for INT Clone MD"; + leaf isEnabled { + type boolean; + default "false"; + description "Denotes whether INT Clone MD feature is enabled"; + } - // Added containment: Prefix=if - // Acquired From Package qosm - uses qosm_If-group; + // Source Record + container sourcerecord-items { + list SourceRecord-list { + key "name"; + + uses ipt_SourceRecord-group; + description "Configure INT Clone MD Source Record Information list"; } + description "Configure INT Clone MD Source Record Information"; } - // Holder for qos fabric class policy, each class describes - // qos attributes like mtu, etc - container classp-items { - list Class-list { - config "false"; - key "qosGrp"; + // Contains Source Monitor info + container sourcemonitor-items { + list SourceMonitor-list { + key "name"; - // Added containment: Prefix=classp - // Acquired From Package qosp - uses qosp_Class-group; + uses ipt_SourceMonitor-group; + description "Source Monitor MO for INT Clone MD list"; } + description "Source Monitor MO for INT Clone MD"; } - // Qos classification rules based on dscp values - container dscp-items { - list DscpRule-list { - config "false"; - key "from to qosGrp markDscp"; + // INT Clone MD Sink Collector info + container sinkcollector-items { + list SinkCollector-list { + key "name"; - // Added containment: Prefix=dscp - // Acquired From Package qosp - uses qosp_DscpRule-group; + uses ipt_SinkCollector-group; + description "Configure the INT Clone MD Collector Information list"; } + description "Configure the INT Clone MD Collector Information"; } - // Qos classification rules based on dot1p values - container dot1p-items { - list Dot1pRule-list { - config "false"; - key "from to qosGrp markDscp"; + // Sink Record + container sinkrecord-items { + list SinkRecord-list { + key "name"; - // Added containment: Prefix=dot1p - // Acquired From Package qosp - uses qosp_Dot1pRule-group; + uses ipt_SinkRecord-group; + description "Configure INT Clone MD Sink Record Information list"; } + description "Configure INT Clone MD Sink Record Information"; } - // Qos classification rules based on IP values - container ip-items { - list IpRule-list { - config "false"; - key "addr"; + // Sink Monitor + container sinkmonitor-items { + list SinkMonitor-list { + key "name"; - // Added containment: Prefix=ip - // Acquired From Package qosp - uses qosp_IpRule-group; + uses ipt_SinkMonitor-group; + description "Configure System Sink Monitor for INT Clone MD list"; } + description "Configure System Sink Monitor for INT Clone MD"; } - } - grouping qosm_Class-group { + // ProbeMarker INT Clone MD + container probemarker-items { + list ProbeMarker-list { + key "value"; - // QoS Group - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "ID"; + uses ipt_ProbeMarker-group; + description "Configure ProbeMarker for INT Clone MD list"; + } + description "Configure ProbeMarker for INT Clone MD"; + } - // Type is an MO-Defined-Type - type qos_Prio; + // System for Source and Sink Monitor + container intclonemdsystem-items { + + uses ipt_IntCloneMdSystem-group; + description "Configure System for Source and Sink Monitor"; } } - grouping qosm_If-group { + grouping ipt_SourceRecord-group { + description "Configure INT Clone MD Source Record Information"; - // Interface ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // IfClass information. Holds information about qos operated - // at a per port per class level - container class-items { - list IfClass-list { - config "false"; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + // Source Interface + container sourceinterface-items { + list SourceInterface-list { key "id"; - // Added containment: Prefix=class - // Acquired From Package qosm - uses qosm_IfClass-group; + uses ipt_SourceInterface-group; + description "Ingress interface configuration MO for INT Clone MD. list"; } + description "Ingress interface configuration MO for INT Clone MD."; } } - grouping qosm_IfClass-group { + grouping ipt_SourceInterface-group { + description "Ingress interface configuration MO for INT Clone MD."; - // Class id - // Type is an MO-Defined-Type leaf id { - config "false"; - description "ID"; - // Type is an MO-Defined-Type - type qos_Prio; + type nw_IfId; + description "The interface id for the session"; } } - grouping qosp_Class-group { + grouping ipt_SourceMonitor-group { + description "Source Monitor MO for INT Clone MD"; - // Administrative state - // Type is an MO-Defined-Type - leaf admin { - config "false"; - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipt_Name; + description "Identifying name of the source monitor"; } - // mtu - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "MTU"; + // ACL filter + leaf aclName { - // Type is an MO-Defined-Type - type qosp_MTU; + type ipt_AclName; + description "Name of the Access Control List applied on the current monitor session"; } - // Class id - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Priority"; + leaf v6AclName { - // Type is an MO-Defined-Type - type qos_Prio; + type ipt_AclName; + description "Name of the IPv6 Access Control List applied on the current monitor session"; } - // Qos Class operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Sampling Rate + leaf samplingRate { - // Type is an MO-Defined-Type - type qosp_OperSt; + type ipt_SamplingRate; + description "Value of the sampling rate for the given interfaces"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container rssourcerecordAtt-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + list RsSourcerecordAtt-list { + key "tDn"; + + uses ipt_RsSourcerecordAtt_source-group; + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor list"; } + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + grouping ipt_SinkCollector-group { + description "Configure the INT Clone MD Collector Information"; + leaf dstAddr { + type address_Ip; + description "Remote Entity IP address for INT Clone MD Collector"; + } + leaf srcAddr { + type address_Ip; + description "Source IP address for INT Clone MD Collector"; } - // Congestion policy holder, describes the congestion - // parameters like congestion algo, ecn etc. These are - // applied at a per class today in the system - container cong-items { + // IPT TTL value + leaf ttl { - // Added containment as a singleton: Prefix=cong - // Acquired From Package qosp - uses qosp_Cong-group; + type ipt_Ttl; + description "IPT header TTL value for INT Clone MD Collector"; } - // Queue management policy holder, describes the queue - // threshold parameters like management method, limts, - // etc. These are applied at a per class today in the - // system - container queue-items { + // IP dscp value + leaf dscp { - // Added containment as a singleton: Prefix=queue - // Acquired From Package qosp - uses qosp_Queue-group; + type ipt_Dscp; + description "IPT header DSCP Value for INT Clone MD Collector"; } - // Buffer policy holder, describes the minimum - // guaranteed packet buffer reservations. These are - // applied at a per class today in the system - container buffer-items { + // Destination interface + leaf destination { - // Added containment as a singleton: Prefix=buffer - // Acquired From Package qosp - uses qosp_Buffer-group; + type nw_IfId; + description "Destination interface for INT Clone MD collector"; } - // Schedule policy holder, describes the minimum - // guaranteed packet buffer reservations. These are - // applied at a per class today in the system - container sched-items { + leaf descr { - // Added containment as a singleton: Prefix=sched - // Acquired From Package qosp - uses qosp_Sched-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping qosp_Cong-group { - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } + } + + grouping ipt_SinkRecord-group { + description "Configure INT Clone MD Sink Record Information"; - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // What algorithm to use when congestion happens - // Inherited From qos:ACong - // Type is an MO-Defined-Type - leaf algo { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_CongAlgo; - } - - // Explicit congestion notification (ecn) ECN is disabled for FCS, thus this is implicit - // Inherited From qos:ACong - // Type is an MO-Defined-Type - leaf ecn { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_ECN; - } - } - - grouping qosp_Queue-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Sink Interface + container sinkinterface-items { + list SinkInterface-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ipt_SinkInterface-group; + description "Sink interface configuration MO for INT Clone MD. list"; + } + description "Sink interface configuration MO for INT Clone MD."; } + } - // Queue control method (static/dynamic) - // Inherited From qos:AQueue - // Type is an MO-Defined-Type - leaf meth { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type qosp_CtrlMeth; - } + grouping ipt_SinkInterface-group { + description "Sink interface configuration MO for INT Clone MD."; - // queue limit, only applicable with static control - // method - // Inherited From qos:AQueue - // Type is an MO-Defined-Type - leaf limit { - config "false"; - description "TBD"; + leaf id { - // Type is an MO-Defined-Type - type qosp_QueueLimit; + type nw_IfId; + description "The interface id for the data egress path"; } } - grouping qosp_Buffer-group { + grouping ipt_SinkMonitor-group { + description "Configure System Sink Monitor for INT Clone MD"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type ipt_Name; + description "Identifying name of the sink monitor"; } - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + container rssinkcollectorAtt-items { - // Type is an MO-Defined-Type - type naming_Descr; + list RsSinkcollectorAtt-list { + key "tDn"; + + uses ipt_RsSinkcollectorAtt_source-group; + description "Collector Attachment to System Sink Monitor INT Clone MD list"; + } + description "Collector Attachment to System Sink Monitor INT Clone MD"; } - // Minimum buffers reserved in units of MTU - // Inherited From qos:ABuffer - // Type is an MO-Defined-Type - leaf min { - config "false"; - description "TBD"; + container rssinkrecordAtt-items { - // Type is an MO-Defined-Type - type qosp_MinBuf; + list RsSinkrecordAtt-list { + key "tDn"; + + uses ipt_RsSinkrecordAtt_source-group; + description "Sink Record Attachment to System Sink Monitor INT Clone MD list"; + } + description "Sink Record Attachment to System Sink Monitor INT Clone MD"; } } - grouping qosp_Sched-group { + grouping ipt_ProbeMarker-group { + description "Configure ProbeMarker for INT Clone MD"; + leaf value { + type uint64; + description "Denotes the probe marker value to be used for INT Clone MD feature"; + } + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping ipt_IntCloneMdSystem-group { + description "Configure System for Source and Sink Monitor"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } + container rssourcemonitorAtt-items { - // From Interface naming:Described - // Inherited From pol:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + list RsSourcemonitorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type naming_Descr; + uses ipt_RsSourcemonitorAtt_source-group; + description "Source Monitor Attachment to System list"; + } + description "Source Monitor Attachment to System"; } - // Scheduling algorithm - // Inherited From qos:ASched - // Type is an MO-Defined-Type - leaf meth { - config "false"; - description "TBD"; + container rssinkmonitorAtt-items { - // Type is an MO-Defined-Type - type qosp_SchedAlgo; + list RsSinkmonitorAtt-list { + key "tDn"; + + uses ipt_RsSinkmonitorAtt_source-group; + description "Sink Monitor Attachment to System list"; + } + description "Sink Monitor Attachment to System"; } + } - // If wrr, what is the bandwidth allocated (in %) - // Inherited From qos:ASched - // Type is an MO-Defined-Type - leaf bw { - config "false"; - description "TBD"; + grouping inbandTelemetry_Int-group { + description "int"; - // Type is an MO-Defined-Type - type qosp_BwPercent; + // Holds int instance information + container inst-items { + list Inst-list { + key "mode"; + + uses inbandTelemetry_Inst-group; + description "int Instance list"; + } + description "int Instance"; } } - grouping qosp_DscpRule-group { + grouping inbandTelemetry_Inst-group { + description "int Instance"; - // Range from - // Type is an MO-Defined-Type - leaf from { - config "false"; - description "From"; + // int mode + leaf mode { - // Type is an MO-Defined-Type - type qosp_Dscp; + type inbandTelemetry_ModeT; + description "Mode Select"; } - // Range to - // Type is an MO-Defined-Type - leaf to { + // switch profile + leaf profile { config "false"; - description "To"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type inbandTelemetry_Profile; + description "Switch Profile - Transit or End Point"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type qos_Prio; + type nw_InstCtrl; + description "Controls"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { + // Operational errors qualifier + leaf operErr { config "false"; - description "DSCP"; - // Type is an MO-Defined-Type - type qosp_Dscp; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // INT Watchlist Acl + container watchlist-items { + list WatchlistAcl-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_OperSt; + uses inbandTelemetry_WatchlistAcl-group; + description "Watchlist Acl list"; + } + description "Watchlist Acl"; } - } - - grouping qosp_Dot1pRule-group { - // Range from - // Type is an MO-Defined-Type - leaf from { - config "false"; - description "From"; + // INT Droplist Acl + container droplist-items { + list DroplistAcl-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dot1P; + uses inbandTelemetry_DroplistAcl-group; + description "Droplist Acl list"; + } + description "Droplist Acl"; } - // Range to - // Type is an MO-Defined-Type - leaf to { - config "false"; - description "To"; + // int Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dot1P; + uses inbandTelemetry_RecordP-group; + description "int Record list"; + } + description "int Record"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // int Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses inbandTelemetry_Collector-group; + description "Collector entry list"; } + description "Collector entry"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // INT Flow Profile + container flowprof-items { + list FlowProfile-list { + key "name"; - // Type is an MO-Defined-Type - type naming_Descr; + uses inbandTelemetry_FlowProfile-group; + description "Inband Telemetry Flow Profile list"; + } + description "Inband Telemetry Flow Profile"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // INT Queue Profile + container queueprof-items { + list QueueProfile-list { + key "name"; - // Type is an MO-Defined-Type - type qos_Prio; + uses inbandTelemetry_QueueProfile-group; + description "Inband Telemetry Queue Profile list"; + } + description "Inband Telemetry Queue Profile"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "DSCP"; + // INT Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; - // Type is an MO-Defined-Type - type qosp_Dscp; + uses inbandTelemetry_Monitor-group; + description "int Monitor list"; + } + description "int Monitor"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { + key "id"; - // Type is an MO-Defined-Type - type qosp_OperSt; + uses inbandTelemetry_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; } } - grouping qosp_IpRule-group { - leaf addr { - config "false"; - type address_Ip; + grouping inbandTelemetry_WatchlistAcl-group { + description "Watchlist Acl"; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type + // ACL name leaf name { + + type acl_Name; + description "Name of Access lists"; + } + + // fragments + leaf fragments { + + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; + } + + // toggle per-entry statistics + leaf perACEStatistics { + + type acl_ACEStats; + description "Per Access Control Entries statistics"; + } + leaf configStatus { config "false"; - description "Name"; + type uint32; + description "config success indicator"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // INT Watchlist Ace + container ace-items { + list WatchlistAce-list { + key "seqNum"; + + uses inbandTelemetry_WatchlistAce-group; + description "Watchlist Ace list"; } + description "Watchlist Ace"; } + } + + grouping inbandTelemetry_WatchlistAce-group { + description "Watchlist Ace"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Group Id - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf qosGrp { - config "false"; - description "Group ID"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type qos_Prio; + type acl_RemarkStr; + description "Access-list entry comment"; } - // Mark Dscp - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf markDscp { - config "false"; - description "DSCP"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type qosp_Dscp; + type acl_SequenceNumber; + description "Sequence number"; } - // Qos Class operational state - // Inherited From qosp:ClassRule - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type qosp_OperSt; + type acl_ActionType; + description "Specify packets to forward or reject"; } - } - - grouping sisf_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // source port operator + leaf srcPortOp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Operator; + description "Source port operator"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // first source port + leaf srcPort1 { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_PortNumber; + description "First source port"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // second source port + leaf srcPort2 { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type acl_PortNumber; + description "Second source port"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Source Port Mask + leaf srcPortMask { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // This objects hold per sisf instance information. There is only - // one instance of dhcp running in the system today - container snooping-items { - list InstSnooping-list { - key "policyName"; + // destination port operator + leaf dstPortOp { - // Added containment: Prefix=snooping - // Acquired From Package sisf - uses sisf_InstSnooping-group; - } + type acl_Operator; + description "Destination port operator"; } - // Ipv6 Neighbor Binding Global Configuration - container neighborbinding-items { + // first destination port + leaf dstPort1 { - // Added containment as a singleton: Prefix=neighborbinding - // Acquired From Package sisf - uses sisf_InstBinding-group; + type acl_PortNumber; + description "First destination port number"; } - // Ipv6 DHCP Guard Configure - container dhcpguard-items { - list InstDhcpGuard-list { - key "policyName"; + // second destination port + leaf dstPort2 { - // Added containment: Prefix=dhcpguard - // Acquired From Package sisf - uses sisf_InstDhcpGuard-group; - } + type acl_PortNumber; + description "Second destination port number"; } - // Ipv6 RA Guard Configure - container raguard-items { - list InstRaGuard-list { - key "policyName"; + // Destination Port Mask + leaf dstPortMask { - // Added containment: Prefix=raguard - // Acquired From Package sisf - uses sisf_InstRaGuard-group; + type acl_PortNumber; + description "Destination Port Mask"; + } + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // This object holds bfd interface information - container fhsif-items { - list FhsIf-list { - key "id"; + // packet-length operator + leaf pktLenOp { - // Added containment: Prefix=fhsif - // Acquired From Package sisf - uses sisf_FhsIf-group; - } + type acl_Operator; + description "packet length operator"; } - container fhsvlan-items { - list FhsVlan-list { - key "vlanID"; - // Added containment: Prefix=fhsvlan - // Acquired From Package sisf - uses sisf_FhsVlan-group; - } + // First packet-length + leaf pktLen1 { + + type acl_PktLen; + description "first packet length"; } - } - grouping sisf_InstSnooping-group { - leaf policyName { - type string; + // second packet-length + leaf pktLen2 { + + type acl_PktLen; + description "second packet length"; } - leaf trustedPortEnabled { + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { type boolean; + description "tcp reversed"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Sets the role of the device attached to the port"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type sisf_deviceRole; + type acl_TcpFlagsMask; + description "tcp flags mask"; + } + leaf packets { + config "false"; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { + type boolean; + description "Non-initial fragment"; } - // Type is an MO-Defined-Type - leaf ndpProtocol { - description "Glean addresses in NDP packets"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type sisf_ndpflag; + type acl_CaptureSes; + description "capture session"; } - // Type is an MO-Defined-Type - leaf dhcpProtocol { - description "Glean addresses in DHCP packets"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type sisf_dhcpflag; + type acl_HttpOptionType; + description "http option http-method"; } - // Type is an MO-Defined-Type - leaf securityLevel { - description "Setup security level of snoopiong policy"; + // nve vni ID + leaf vni { - // Type is an MO-Defined-Type - type sisf_securityLevel; + type acl_VniType; + description "nve vni ID"; } - // Type is an MO-Defined-Type - leaf limitAddressCount { - description "Configure maximum address per port"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type sisf_limitAddressCount; + type acl_VlanType; + description "vlan"; } - // Type is an MO-Defined-Type - leaf tracking { - description "Override default tracking behavior"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type sisf_NonGlobalTracking; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "TBD"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type sisf_reachableLifetimerSnoopingPolicy; + type acl_Name; + description "time range name"; } - // Type is an MO-Defined-Type - leaf staleLifetimer { - description "TBD"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type sisf_staleLifetimerSnoopingPolicy; + type acl_Name; + description "Source address group"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "Destination address group"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "Source port group"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // destination port group + leaf dstPortGroup { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_Name; + description "Destination port group"; + } + leaf redirect { + type string; + description "Redirect action"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type inbandTelemetry_FltType; + description "Acl Filter Type"; } - } - grouping sisf_InstBinding-group { - leaf logging { - type boolean; + // protocol to match + leaf protocol { + + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // Type is an MO-Defined-Type - leaf maxEntries { - description "Define maximum number of entries in the IPv6 snoopiong binding table"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type sisf_maxEntries; + type ipv4acl_Protocol; + description "Protocol Mask"; } - // Type is an MO-Defined-Type - leaf vlanLimit { - description "Define maximum number of entries allowed per vlan"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type sisf_vlanLimit; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf macLimit { - description "Define maximum number of entries allowed per mac"; + // source prefix wildcard mask + leaf srcPrefixMask { - // Type is an MO-Defined-Type - type sisf_macLimit; + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf portLimit { - description "Define maximum number of entries allowed per port"; + // source prefix length + leaf srcPrefixLength { - // Type is an MO-Defined-Type - type sisf_portLimit; + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "Set reachable-lifetimer of IPv6 snooping binding table"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type sisf_reachableLifetimer; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - // Type is an MO-Defined-Type - leaf staleLifetimer { - description "Set stale-lifetimer of IPv6 snooping binding table"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type sisf_staleLifetimer; + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // Type is an MO-Defined-Type - leaf downLifetimer { - description "Set down-lifetimer of IPv6 snooping binding table"; + // destination prefix length + leaf dstPrefixLength { - // Type is an MO-Defined-Type - type sisf_downLifetimer; - } - leaf tracking { - type boolean; - default "false"; + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } + } - // Type is an MO-Defined-Type - leaf retryInterval { - description "Configure interval time between two probings"; + grouping inbandTelemetry_DroplistAcl-group { + description "Droplist Acl"; - // Type is an MO-Defined-Type - type sisf_retryInterval; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type + // ACL name leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "Name of Access lists"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // fragments + leaf fragments { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Fragments; + description "Fragments type for IPv4 and IPv6"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // toggle per-entry statistics + leaf perACEStatistics { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_ACEStats; + description "Per Access Control Entries statistics"; } - - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + leaf configStatus { config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + type uint32; + description "config success indicator"; } - container bindingip-items { - list StaticBinding-list { - key "v6Addr vlanID"; - // Added containment: Prefix=bindingip - // Acquired From Package sisf - uses sisf_StaticBinding-group; + // INT Droplist ACE + container ace-items { + list DroplistAce-list { + key "seqNum"; + + uses inbandTelemetry_DroplistAce-group; + description "Droplist Ace list"; } + description "Droplist Ace"; } } - grouping sisf_StaticBinding-group { + grouping inbandTelemetry_DroplistAce-group { + description "Droplist Ace"; - // Type is an MO-Defined-Type - leaf vlanID { - description "Configure Vlan ID of static binding entry"; + leaf descr { - // Type is an MO-Defined-Type - type sisf_VlanID; - } - leaf v6Addr { - type address_Ipv6; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf interface { - description "Configure interface of static binding entry"; + // remark + leaf remark { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf mac { - type address_Mac; + type acl_RemarkStr; + description "Access-list entry comment"; } - // Type is an MO-Defined-Type - leaf tracking { - description "Configure tracking option of static binding entry"; + // ACE sequence number + leaf seqNum { - // Type is an MO-Defined-Type - type sisf_NonGlobalTracking; + type acl_SequenceNumber; + description "Sequence number"; } - // Type is an MO-Defined-Type - leaf retryInterval { - description "Configure retry interfval between two probings of static binding entry"; + // ACE filtering action + leaf action { - // Type is an MO-Defined-Type - type sisf_RetryIntervalBinding; + type acl_ActionType; + description "Specify packets to forward or reject"; } - // Type is an MO-Defined-Type - leaf reachableLifetimer { - description "Configure reachable-lifetimer of static binding entry"; + // source port operator + leaf srcPortOp { - // Type is an MO-Defined-Type - type sisf_ReachableLifetimerBinding; + type acl_Operator; + description "Source port operator"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // first source port + leaf srcPort1 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_PortNumber; + description "First source port"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // second source port + leaf srcPort2 { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_PortNumber; + description "Second source port"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Source Port Mask + leaf srcPortMask { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_PortNumber; + description "Defines the Source Port Mask"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; - } - } + // destination port operator + leaf dstPortOp { - grouping sisf_InstDhcpGuard-group { - leaf policyName { - type string; + type acl_Operator; + description "Destination port operator"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Set the role of device attached to the port"; + // first destination port + leaf dstPort1 { - // Type is an MO-Defined-Type - type sisf_dhcpGuardDeviceRole; - } - leaf trustedPortEnabled { - type boolean; + type acl_PortNumber; + description "First destination port number"; } - // Type is an MO-Defined-Type - leaf preferenceMax { - description "Configure maximum allowed advertised server preference"; + // second destination port + leaf dstPort2 { - // Type is an MO-Defined-Type - type sisf_preferenceMax; + type acl_PortNumber; + description "Second destination port number"; } - // Type is an MO-Defined-Type - leaf preferenceMin { - description "Configure minimum allowed advertised server preference"; + // Destination Port Mask + leaf dstPortMask { - // Type is an MO-Defined-Type - type sisf_preferenceMin; + type acl_PortNumber; + description "Destination Port Mask"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf logging { + type boolean; + default "false"; + description "Log matches against ACL entry"; + } + leaf dscp { + type uint8 { + range "0..63"; } + description "dscp"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // packet-length operator + leaf pktLenOp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Operator; + description "packet length operator"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // First packet-length + leaf pktLen1 { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_PktLen; + description "first packet length"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // second packet-length + leaf pktLen2 { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_PktLen; + description "second packet length"; } - } - - grouping sisf_InstRaGuard-group { - leaf policyName { - type string; + leaf urg { + type boolean; + description "tcp urg"; + } + leaf ack { + type boolean; + description "tcp ack"; + } + leaf psh { + type boolean; + description "tcp psh"; + } + leaf rst { + type boolean; + description "tcp rst"; + } + leaf syn { + type boolean; + description "tcp syn"; + } + leaf fin { + type boolean; + description "tcp fin"; + } + leaf est { + type boolean; + description "tcp est"; + } + leaf rev { + type boolean; + description "tcp reversed"; } - // Type is an MO-Defined-Type - leaf deviceRole { - description "Set the role of the device attached to the port"; + leaf tcpFlagsMask { - // Type is an MO-Defined-Type - type sisf_raGuardDeviceRole; + type acl_TcpFlagsMask; + description "tcp flags mask"; } - leaf trustedPortEnabled { + leaf packets { + config "false"; + type uint64; + description "Number of packets hitting ACE"; + } + leaf fragment { type boolean; + description "Non-initial fragment"; } - // Type is an MO-Defined-Type - leaf routerPreferenceMaximum { - description "Enable verification of the advertised router preference"; + // capture session + leaf captureSession { - // Type is an MO-Defined-Type - type sisf_raGuardRouterPreferenceMaximum; + type acl_CaptureSes; + description "capture session"; } - // Type is an MO-Defined-Type - leaf hopLimitMax { - description "Enable verification of the maximum advertised hop count limit"; + // http option (http-method) + leaf httpOption { - // Type is an MO-Defined-Type - type sisf_hopLimitMax; + type acl_HttpOptionType; + description "http option http-method"; } - // Type is an MO-Defined-Type - leaf hopLimitMin { - description "Enable verification of the minimum advertised hop count limit"; + // nve vni ID + leaf vni { - // Type is an MO-Defined-Type - type sisf_hopLimitMin; + type acl_VniType; + description "nve vni ID"; } - // Type is an MO-Defined-Type - leaf managedConfig { - description "Enable verification of the advertised M flag"; + // vlan + leaf vlan { - // Type is an MO-Defined-Type - type sisf_raGuardManagedConfig; + type acl_VlanType; + description "vlan"; } - // Type is an MO-Defined-Type - leaf otherConfig { - description "Enable verification of the advertised O flag"; + // TCP option length + leaf tcpOptionLength { - // Type is an MO-Defined-Type - type sisf_raGuardOtherConfig; + type acl_TcpOptionLengthType; + description "TCP options length"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // time-range + leaf timeRange { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type acl_Name; + description "time range name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source address group + leaf srcAddrGroup { - // Type is an MO-Defined-Type - type nw_AdminSt; + type acl_Name; + description "Source address group"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // destination address group + leaf dstAddrGroup { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type acl_Name; + description "Destination address group"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // source port group + leaf srcPortGroup { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type acl_Name; + description "Source port group"; } - } - grouping sisf_FhsIf-group { - leaf snoopingPolicyName { - type string; - } - leaf dhcpGuardPolicyName { - type string; + // destination port group + leaf dstPortGroup { + + type acl_Name; + description "Destination port group"; } - leaf raGuardPolicyName { + leaf redirect { type string; - } - leaf deleted { - config "false"; - type boolean; + description "Redirect action"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Filter type + leaf fltType { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type inbandTelemetry_FltType; + description "Acl Filter Type"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // protocol to match + leaf protocol { - // Type is an MO-Defined-Type - type naming_Descr1024; + type ipv4acl_Protocol; + description "Protocol for access-list entry"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Protocol Mask + leaf protocolMask { - // Type is an MO-Defined-Type - type nw_IfId; + type ipv4acl_Protocol; + description "Protocol Mask"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // source prefix + leaf srcPrefix { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type ipv4acl_IPv4Prefix; + description "Source IPv4 prefix"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - container rtvrfMbr-items { + // source prefix wildcard mask + leaf srcPrefixMask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type ipv4acl_IPv4PrefixMask; + description "Source IPv4 prefix mask"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // source prefix length + leaf srcPrefixLength { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type ipv4acl_IPv4PrefixLen; + description "Source IPv4 prefix length"; } - } - grouping sisf_FhsVlan-group { - - // Type is an MO-Defined-Type - leaf vlanID { - description "Vlan Number"; + // destination prefix + leaf dstPrefix { - // Type is an MO-Defined-Type - type sisf_VlanID; - } - leaf snoopingPolicyName { - type string; - } - leaf dhcpGuardPolicyName { - type string; - } - leaf raGuardPolicyName { - type string; - } - leaf deleted { - config "false"; - type boolean; + type ipv4acl_IPv4Prefix; + description "Destination IPv4 prefix"; } - } - - grouping telemetry_Entity-group { - // Type is an MO-Defined-Type - leaf adminSt { - description "TBD"; + // destination prefix wildcard mask + leaf dstPrefixMask { - // Type is an MO-Defined-Type - type telemetry_AdminState; + type ipv4acl_IPv4PrefixMask; + description "Destination IPv4 prefix mask"; } - // certificate - container certificate-items { + // destination prefix length + leaf dstPrefixLength { - // Added containment as a singleton: Prefix=certificate - // Acquired From Package telemetry - uses telemetry_Certificate-group; + type ipv4acl_IPv4PrefixLen; + description "Destination IPv4 prefix length"; } + } - // default destination profile - // This is the placeholder for global destination/transport options. - // It supports the following options: - // - vrf : Specify the vrf for the transport. - // The default is "", meaning each platform - // could pick it own default setting. - container destprof-items { - - // Added containment as a singleton: Prefix=destprof - // Acquired From Package telemetry - uses telemetry_DestProfile-group; - } + grouping inbandTelemetry_RecordP-group { + description "int Record"; - // sensor-groups - container sensor-items { - list SensorGroup-list { - key "id"; + // Collect parameters for the int record + leaf collect0 { - // Added containment: Prefix=sensor - // Acquired From Package telemetry - uses telemetry_SensorGroup-group; - } + type inbandTelemetry_CollectParams0; + description "Collect Params Set0"; } - // destination-groups - container dest-items { - list DestGroup-list { - key "id"; + leaf descr { - // Added containment: Prefix=dest - // Acquired From Package telemetry - uses telemetry_DestGroup-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // subscriptions - container subs-items { - list Subscription-list { - key "id"; + leaf name { - // Added containment: Prefix=subs - // Acquired From Package telemetry - uses telemetry_Subscription-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_Certificate-group { + grouping inbandTelemetry_Collector-group { + description "Collector entry"; - // Type is an MO-Defined-Type - leaf filename { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type os_OsString; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf hostname { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type os_OsString; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping telemetry_DestProfile-group { - // Not used. - // Need this dummy property for VSH/CLI - // Type is an MO-Defined-Type - leaf adminSt { - description "TBD"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type telemetry_AdminState; + type inbandTelemetry_VrfName; + description "Remote Entity VRF"; } - // Destination option : vrf name - container vrf-items { + // Remote node destination IP address + leaf dstAddr { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package telemetry - uses telemetry_DestOptVrf-group; + type inbandTelemetry_DstIp; + description "Remote Entity IP"; } - // Destination option : compression name - container compression-items { + // Remote node destination port + leaf dstPort { - // Added containment as a singleton: Prefix=compression - // Acquired From Package telemetry - uses telemetry_DestOptCompression-group; + type inbandTelemetry_Port; + description "Remote Entity L4 Port"; } - // Destination option : source interface - container sourceinterface-items { + // IP dscp value + leaf dscp { - // Added containment as a singleton: Prefix=sourceinterface - // Acquired From Package telemetry - uses telemetry_DestOptSourceInterface-group; + type qosp_DscpCP; + description "DSCP Value"; } - container retry-items { + // Source interface + leaf srcIf { - // Added containment as a singleton: Prefix=retry - // Acquired From Package telemetry - uses telemetry_DestOptRetry-group; + type nw_IfId; + description "Source Interface"; + } + leaf srcAddr { + type address_Ip; + description "Source IP Address"; + } + leaf sequenceNumber { + type uint32; + default "1000"; + description "Start sequence number for this exporter"; } } - grouping telemetry_DestOptVrf-group { + grouping inbandTelemetry_FlowProfile-group { + description "Inband Telemetry Flow Profile"; - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow dscp value + leaf dscp { - // Type is an MO-Defined-Type - type telemetry_VrfName; + type inbandTelemetry_FlowDscp; + description "Inband Telemetry Flow dscp value"; } - } - - grouping telemetry_DestOptCompression-group { - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow dscp mask + leaf dscpMask { - // Type is an MO-Defined-Type - type telemetry_Compression; + type inbandTelemetry_FlowDscp; + description "Inband Telemetry Flow dscp mask"; } - } - grouping telemetry_DestOptSourceInterface-group { - - // Type is an MO-Defined-Type - leaf name { - description "TBD"; + // Flow age + leaf age { - // Type is an MO-Defined-Type - type nw_IfId; + type inbandTelemetry_FlowAge; + description "Inband Telemetry Flow age"; } - } - grouping telemetry_DestOptRetry-group { - leaf size { - type uint32 { - range "10..1500"; - } - default "10"; - } - } + // Flow latency quantization + leaf latencyQuant { - grouping telemetry_SensorGroup-group { - leaf id { - type string; + type inbandTelemetry_FlowLatencyQuant; + description "Inband Telemetry Flow latency quantization"; } - // Type is an MO-Defined-Type - leaf dataSrc { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type telemetry_DataSource; + type naming_Descr; + description "Description of the specified attribute"; } - container path-items { - list SensorPath-list { - key "path"; - // Added containment: Prefix=path - // Acquired From Package telemetry - uses telemetry_SensorPath-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_SensorPath-group { - leaf path { - type string; - } - leaf queryCondition { - type string; - } - leaf filterCondition { - type string; + grouping inbandTelemetry_QueueProfile-group { + description "Inband Telemetry Queue Profile"; + + // Queue depth value + leaf depth { + + type inbandTelemetry_QueueDepth; + description "Inband Telemetry Queue depth value"; } - leaf excludeFilter { - type string; + + // Queue latency + leaf latency { + + type inbandTelemetry_QueueLatency; + description "Inband Telemetry Queue Latency"; } - // Type is an MO-Defined-Type - leaf secondaryPath { - description "TBD"; + // Queue Breach Quota + leaf breach { - // Type is an MO-Defined-Type - type reln_Dn; + type inbandTelemetry_QueueBreachQuota; + description "Inband Telemetry Queue Breach Quota"; } - leaf secondaryGroup { - type uint64; + + // Queue Tail Drop + leaf tailDrop { + + type inbandTelemetry_QueueTailDrop; + description "Inband Telemetry Queue Tail Drop"; } - // Type is an MO-Defined-Type - leaf depth { - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type telemetry_RetrieveDepth; + type naming_Descr; + description "Description of the specified attribute"; } - container include-items { - list IncludeFilter-list { - key "filter"; - // Added containment: Prefix=include - // Acquired From Package telemetry - uses telemetry_IncludeFilter-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping telemetry_IncludeFilter-group { - leaf filter { - type string; - } - } + grouping inbandTelemetry_Monitor-group { + description "int Monitor"; - grouping telemetry_DestGroup-group { - leaf id { - type string; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - container addr-items { - list Dest-list { - key "addr port"; - // Added containment: Prefix=addr - // Acquired From Package telemetry - uses telemetry_Dest-group; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // destination-group option : use-chunking - container chunking-items { + container rsrecordPAtt-items { - // Added containment as a singleton: Prefix=chunking - // Acquired From Package telemetry - uses telemetry_DestGrpOptChunking-group; + uses inbandTelemetry_RsRecordPAtt_source-group; + description "Record Policy Attachment"; } - } - grouping telemetry_Dest-group { - leaf addr { - type address_Ip; - } - leaf port { - type uint16; - } + container rscollectorAtt-items { - // Need equivalent type for YANG telemetry-stream-protocol in DME - // Type is an MO-Defined-Type - leaf proto { - description "TBD"; + list RsCollectorAtt-list { + key "tDn"; - // Type is an MO-Defined-Type - type telemetry_Protocol; + uses inbandTelemetry_RsCollectorAtt_source-group; + description "Reference to Collector list"; + } + description "Reference to Collector"; } - // No equivalent property in YANG - // Type is an MO-Defined-Type - leaf enc { - description "TBD"; + container rswatchlistAtt-items { - // Type is an MO-Defined-Type - type telemetry_Encoding; + uses inbandTelemetry_RsWatchlistAtt_source-group; + description "Reference to Watchlist"; } - } - grouping telemetry_DestGrpOptChunking-group { - leaf chunkSize { - type uint32 { - range "64..4096"; - } - default "64"; + container rsdroplistAtt-items { + + uses inbandTelemetry_RsDroplistAtt_source-group; + description "Reference to Droplist"; } } - grouping telemetry_Subscription-group { + grouping inbandTelemetry_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier leaf id { - type uint64; - } - // Rel-def from SensorGroupRel - container rssensorGroupRel-items { + type inbandTelemetry_FwdInstTargetId; + description "Identifier"; + } - // Abstract containment of rssensorGroupRel derived from telemetry:Subscription - list RsSensorGroupRel-list { - key "tDn"; + leaf name { - // Added containment: Prefix=rssensorGroupRel - // Acquired From Package telemetry - uses telemetry_RsSensorGroupRel_source-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Rel-def from DestGroupRel - container rsdestGroupRel-items { - - // Abstract containment of rsdestGroupRel derived from telemetry:Subscription - list RsDestGroupRel-list { - key "tDn"; + leaf descr { - // Added containment: Prefix=rsdestGroupRel - // Acquired From Package telemetry - uses telemetry_RsDestGroupRel_source-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping track_Entity-group { + container rsmonitorAtt-items { - // This object represents object of track. - // The object tracking monitors the status of the tracked objects - // and communicates any changes made to interested clients. - // Each tracked object is identified by a unique number - // (track:Object.id) that clients can use to configure the action - // to take when a tracked object changes state. - // Object types that can be tracked: - // * Interface line protocol state: Tracks whether the line - // protocol state is UP or Down. - // * Interface IPv4/IPv6 routing state: Tracks whether the interface - // has an IPv4 address and if IPv4 routing is enabled and active. - // * IPv4/IPv6 route reachability: Tracks whether an IPv4 route - // exists and is reachable from the local switch. - // * Object track list: Tracks combined states of multiple objects. - // Capabilities supported: boolean-and, boolean-or, - // threshold-percentage, threshold-weight. - // * Object tracking of IP SLA. - // Specify track:Object.id - container object-items { - list Object-list { - key "id"; + list RsMonitorAtt-list { + key "tDn"; - // Added containment: Prefix=object - // Acquired From Package track - uses track_Object-group; + uses inbandTelemetry_RsMonitorAtt_source-group; + description "Reference to Monitor list"; } + description "Reference to Monitor"; } } - grouping track_Object-group { + grouping netflow_Netflow-group { + description "Netflow entity"; - // Track Object ID. - // Each instance is identified by a unique number, - // the object ID. Each instance is a parent of only one - // of 'track:If', 'track:List', - // 'track:IpRoute' or 'track:IpSla' - // Type is an MO-Defined-Type - leaf id { - description "Track object ID"; + leaf rtpTimeout { - // Type is an MO-Defined-Type - type track_TrackId; + type netflow_RtpTimeout; + description "RTP Flow Timeout"; } - leaf clients { - config "false"; - type uint16; + leaf isRtpIpv4 { + type boolean; + default "false"; + description "RTP IPV4 Config"; } - // Object tracking for an interface, supports Ethernet, - // subinterfaces, port-channels, loopback interfaces, and - // VLAN interfaces. Either the interface line protocol state or - // the interface IP routing state. When IP routing state is - // tracked, these conditions are required for the object to be UP: - // * IP routing must be enabled and active on the interface. - // * The interface line-protocol state must be UP. - // * The interface IP address must be known. - // If all three conditions are not met, IP routing state is Down. - container if-items { + leaf rtpIpv4Acl { - // Added containment as a singleton: Prefix=if - // Acquired From Package track - uses track_If-group; + type netflow_ACLName; + description "RTP IPV4 ACL"; + } + leaf isRtpIpv6 { + type boolean; + default "false"; + description "RTP IPV6 Config"; } - // IP route track object. - // Tracks whether an IPV4/IPV6 route exists and is reachable from - // the local switch - container iprt-items { + leaf rtpIpv6Acl { - // Added containment as a singleton: Prefix=iprt - // Acquired From Package track - uses track_IpRoute-group; + type netflow_ACLName; + description "RTP IPV6 ACL"; } - // IP SLA track object. - // Object tracking of IP SLAs operations allow clients to - // track the output from IP SLAs objects and - // use this information to trigger an action. - // Two aspects of IP SLAs can be tracked: state and reachability. - // For state, if the return code is OK, then the track state is UP; - // if the return code is not OK, then the track state is Down. - // For reachability, if the return code is OK or OverThreshold, reachability is UP; - // if not OK, reachability is Down. - container ipsla-items { + // Holds netflow instance information + container inst-items { + list Inst-list { + key "mode"; - // Added containment as a singleton: Prefix=ipsla - // Acquired From Package track - uses track_IpSla-group; + uses netflow_Inst-group; + description "Instance for Netflow config list"; + } + description "Instance for Netflow config"; } - // An object track list allows User to track the combined states - // of multiple objects. Object track lists support the following - // capabilities: - // * Boolean "and" function: Each object defined within the track - // list must be in an UP state so that the track list object - // can become UP. - // track:List.type should be specified as 'and' - // * Boolean "or" function: At least one object defined within the - // track list must be in UP state so that the tracked object - // can become UP. - // track:List.type should be specified as 'or' - // * Threshold percentage: The percentage of UP objects in the - // tracked list must be greater than the configured UP - // threshold for the tracked list to be in the UP state. If the - // percentage of Down objects in the tracked list is above the - // configured track list Down threshold, the tracked list is - // marked as Down. - // track:List.type should be specified as 'percentage'. The value - // for 'percentageUp' and 'percentageDown' - // * Threshold weight: Assign a weight value to each object in the - // tracked list, and a weight threshold for the track list. If - // the combined weights of all UP objects exceeds the track list - // weight UP threshold, the track list is in an UP state. If the - // combined weights of all the Down objects exceeds the track list - // weight Down threshold, the track list is in the Down state. - // track:List.type should be specified as 'weight'. The value for - // 'weightUp' and 'weightDown'. - // Mo for List type track - container list-items { + // Show Flow Info + // Ephemeral data + container flowinfo-items { - // Added containment as a singleton: Prefix=list - // Acquired From Package track - uses track_List-group; + // Ephemeral data + list FlowInfo-list { + config "false"; + key "flowId"; + + uses netflow_FlowInfo-group; + description "Flow Info that is displayed/exported. list"; + } + description "Flow Info that is displayed/exported."; } } - grouping track_If-group { + grouping netflow_Inst-group { + description "Instance for Netflow config"; - // Interface ID to be tracked. - // This specifies the name of the object tracking interface, - // examples: 'eth1/1', 'eth1/1.1', 'po10', 'lo0'. - // The interface MO must be present in objstore to configure - // this else an error will be reported. - // Type is an MO-Defined-Type - leaf id { - description "Interface to track"; + // analytics/netflow mode + leaf mode { - // Type is an MO-Defined-Type - type nw_IfId; + type netflow_ModeT; + description "It represents the mode in which netflow is running"; } - // Interface protocol type that an object can track - // Type is an MO-Defined-Type - leaf protocolType { - description "Protocol type for interface object"; + // flow timeout + leaf timeOut { - // Type is an MO-Defined-Type - type track_IntfProtocolType; + type netflow_FlowTimeout; + description "Flow timeout"; } - } - - grouping track_IpRoute-group { - // IPVX Address family of the route that is to be configured - // Type is an MO-Defined-Type - leaf af { - description "Address family"; + leaf name { - // Type is an MO-Defined-Type - type track_Af; - } - leaf prefix { - type address_Ip; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // This specifies IP Route State - // Type is an MO-Defined-Type - leaf routeState { - description "Route State"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type track_RouteState; - } - leaf vrf { - type string; + type nw_AdminSt; + description "Admin State"; } - // This specifies the process owning the route - // Type is an MO-Defined-Type - leaf routeOwner { - description "Owner of the route"; - - // Type is an MO-Defined-Type - type track_RouteOwner; - } - } + // Instance controls + leaf ctrl { - grouping track_IpSla-group { - leaf probeId { - type uint32 { - range "1..2147483647"; - } + type nw_InstCtrl; + description "Controls"; } - // SLA Probe States - // Type is an MO-Defined-Type - leaf probeState { - description "SLA reachability/state type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type track_ProbeState; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - - grouping track_List-group { - // Type of list object. - // Only 'boolean-and' object can be changed to 'boolean-or' - // and vice versa is possible. Any other type of object can't - // be modified to some other type. - // Type is an MO-Defined-Type - leaf type { - description "Type of list object"; + // Flow Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type track_ListObj; - } - leaf percentageUp { - type uint16 { - range "0..100"; + uses netflow_RecordP-group; + description "Object to store different parameters of netflow record list"; } - default "1"; + description "Object to store different parameters of netflow record"; } - leaf percentageDown { - type uint16 { - range "0..100"; + + // Flow Collector + container collector-items { + list Collector-list { + key "name"; + + uses netflow_Collector-group; + description "It has the information about the netflow collector entity list"; } - default "0"; + description "It has the information about the netflow collector entity"; } - leaf weightUp { - type uint16 { - range "0..255"; + + // Flow Monitor one monitor can be attached to n records + container monitor-items { + list Monitor-list { + key "name"; + + uses netflow_Monitor-group; + description "Netflow Monitor list"; } - default "1"; + description "Netflow Monitor"; } - leaf weightDown { - type uint16 { - range "0..255"; + + // Netflow profile + container prof-items { + list Profile-list { + key "name"; + + uses netflow_Profile-group; + description "The profile of netflow list"; } - default "0"; + description "The profile of netflow"; } - // track list member objects, object-id is a naming property here - container obj-items { - list Member-list { + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { key "id"; - // Added containment: Prefix=obj - // Acquired From Package track - uses track_Member-group; + uses netflow_FwdInstTarget-group; + description "Forward Instance Target list"; } + description "Forward Instance Target"; } } - grouping track_Member-group { + grouping netflow_RecordP-group { + description "Object to store different parameters of netflow record"; - // ID of track-list member - // Type is an MO-Defined-Type - leaf id { - description "Track ID of object to be tracked"; + // Match parameters for the netflow record + leaf match { - // Type is an MO-Defined-Type - type track_TrackId; + type netflow_MatchParams; + description "The match parameters of the netflow record"; } - leaf weight { - type uint16 { - range "1..255"; + + // Collect parameters for the flow record + leaf collect { + + type netflow_CollectParams; + description "The collect parameters of the netflow record"; + } + + leaf descr { + + type naming_Descr { + pattern "(.{1,128}).*|()"; } - default "10"; + description "Record Description"; } - leaf not { - type boolean; - default "true"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } } - grouping udld_Entity-group { + grouping netflow_Collector-group { + description "It has the information about the netflow collector entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Collector version + leaf ver { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type netflow_CollVersion; + description "Collector Version Format"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Collector stats timeout + leaf statsTimeout { - // Type is an MO-Defined-Type - type nw_AdminSt; + type netflow_CollTimeout; + description "Collector stats timeout"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Collector interface table timeout + leaf interfaceTimeout { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type netflow_CollTimeout; + description "Collector interface table timeout"; } - // This class shall store the global configuration - // for a running UDLD instance - container inst-items { + // Collector template data timeout + leaf templateTimeout { - // Added containment as a singleton: Prefix=inst - // Acquired From Package udld - uses udld_Inst-group; + type netflow_CollTemplateTimeout; + description "Collector template data timeout"; } - } - grouping udld_Inst-group { + leaf name { - // aggressive mode - // Type is an MO-Defined-Type - leaf aggressive { - description "Global Aggressive Mode"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } - // Type is an MO-Defined-Type - type udld_AdminSt; + leaf descr { + + type naming_Descr { + pattern "(.{1,128}).*|()"; + } + description "Collector Description"; } - // probe message interval - // Type is an MO-Defined-Type - leaf msgIntvl { - description "Probe Message Interval"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type udld_MsgIntvl; + type netflow_VrfName; + description "Remote Entity VRF"; } - leaf error { - config "false"; - type uint64; - default "0"; + + // Remote node destination IP address + leaf dstAddr { + + type netflow_addressIp; + description "Remote Entity IP"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type netflow_flowPort; + description "Remote Entity L4 Port"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // IP dscp value + leaf dscp { - // Type is an MO-Defined-Type - type nw_AdminSt; + type netflow_flowDscp; + description "DSCP Value of Remote Entity"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Source Interface of the sender"; } - container physif-items { - list PhysIf-list { - key "id"; - // Added containment: Prefix=physif - // Acquired From Package udld - uses udld_PhysIf-group; - } + // Source IP address + leaf srcAddr { + + type netflow_addressIp; + description "Source IP Address of the sender"; } } - grouping udld_PhysIf-group { + grouping netflow_Monitor-group { + description "Netflow Monitor"; - // aggressive mode - // Type is an MO-Defined-Type - leaf aggressive { - description "Interface Aggressive Mode"; + leaf descr { - // Type is an MO-Defined-Type - type udld_AdminSt; + type naming_Descr { + pattern "(.{1,128}).*|()"; + } + description "Monitor Description"; } - // bidirectional detection - // Type is an MO-Defined-Type - leaf biDirDetect { - description "Bidirectional Detection Enabled"; + leaf name { - // Type is an MO-Defined-Type - type udld_PortEnable; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port type is fiber or non-fiber/copper - // Type is an MO-Defined-Type - leaf fiber { - config "false"; - description "Fiber Port"; + // Collector bucket info + container collectorbucket-items { + list CollectorBucket-list { + key "id"; - // Type is an MO-Defined-Type - type udld_OperSt; + uses netflow_CollectorBucket-group; + description "Netflow Collector Bucket Entry list"; + } + description "Netflow Collector Bucket Entry"; } - leaf error { - config "false"; - type uint64; - default "0"; + + container rsrecordPAtt-items { + + uses netflow_RsRecordPAtt_source-group; + description "Reference to the record that is to be used under this monitor"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping netflow_CollectorBucket-group { + description "Netflow Collector Bucket Entry"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Collector bucket identifier + leaf id { + + type netflow_CollBucketId; + description "Netflow Collector Bucket Id"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // HashLo value for this collector bucket + leaf hashLo { - // Type is an MO-Defined-Type - type naming_Descr1024; + type netflow_HashT; + description "Hash Low Value for this collector bucket"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // HashHi value for this collector bucket + leaf hashHi { - // Type is an MO-Defined-Type - type nw_IfId; + type netflow_HashT; + description "Hash High Value for this collector bucket"; } - container ptimest-items { - list PktTs-list { - config "false"; - key "dir"; - // Added containment: Prefix=ptimest - // Acquired From Package udld - uses udld_PktTs-group; - } - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - container rtvrfMbr-items { + leaf descr { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; + container rscollectorAtt-items { + + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses netflow_RsCollectorAtt_source-group; + description "Reference to the collector that is to be used under this monitor list"; } + description "Reference to the collector that is to be used under this monitor"; } } - grouping udld_PktTs-group { + grouping netflow_Profile-group { + description "The profile of netflow"; - // Send/Recv direction - // Type is an MO-Defined-Type - leaf dir { - config "false"; - description "Packet Direction"; + // Collect interval + leaf collectIntvl { - // Type is an MO-Defined-Type - type udld_PktDirection; + type netflow_CollIntvl; + description "Collect Interval in Milliseconds"; } - } - grouping acllog_Entity-group { + // Source port + leaf srcPort { - // Acllog instance MO - container inst-items { + type netflow_L4Port; + description "Source L4 Port"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package acllog - uses acllog_Inst-group; + // IP packet id shift + leaf ipPktIdShift { + + type netflow_IpPktIdShift; + description "IP Packet Id Shift"; } - } - grouping acllog_Inst-group { + // Burst interval shift + leaf burstIntvlShift { - container log-items { + type netflow_BurstIntvlShift; + description "Timestamp Shift Value for Burst Interval"; + } - // Added containment as a singleton: Prefix=log - // Acquired From Package acllog - uses acllog_LogCache-group; + // Collector export packet MTU + leaf mtu { + + type netflow_Mtu; + description "Collector export packet MTU"; } - } - grouping acllog_LogCache-group { + // Sequence number guess threshold low + leaf seqNumGuessThreshLo { - // Default Value "300" Removed - out of length restriction 5..86400 - leaf interval { - type string { - length "5..86400"; - } + type netflow_ThresholdT; + description "Sequence Number Guess Threshold Low"; } - leaf matchLevel { - type uint8 { - range "0..7"; - } - default "6"; - } - leaf logLevel { - type uint8 { - range "0..7"; - } - default "2"; - } - } - // Has Polymorphic containment of abstract object l2:Dom - grouping bd_Entity-group { - leaf descr { - config "false"; - type string; + // Sequence number guess threshold high + leaf seqNumGuessThreshHi { + + type netflow_ThresholdT; + description "Sequence Number Guess Threshold High"; } - // If false, value is explicitly set globally for all SVIs - // Type is an MO-Defined-Type - leaf sysDefaultSVIAutostate { - description "Disable/enable autoState for SVI interface"; + leaf descr { - // Type is an MO-Defined-Type - type bd_DefaultSVIAutoState; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds vlan config information - container vlanconfig-items { - list VlanConfig-list { - key "accEncap"; + leaf name { - // Added containment: Prefix=vlanconfig - // Acquired From Package l2 - uses l2_VlanConfig-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Layer2 Bridge-domain. Domain with regular ports and/or - // epg-vlans as members. - // Polymorphic containment of derivative object l2:BD (from l2:Dom) - container bd-items { - - // Abstract containment of l2:BD derived from l2:Dom - list BD-list { - key "fabEncap"; + // Payload length bin + container payloadlenbin-items { + list PayloadLenBin-list { + key "id"; - // Added containment: Prefix=bd - // Acquired From Package l2 - uses l2_BD-group; + uses netflow_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - // 802.1q Vlan - // Polymorphic containment of derivative object vlan:CktEp (from l2:Dom) - container vlan-items { - - // Abstract containment of vlan:CktEp derived from l2:Dom - list CktEp-list { - key "encap"; + // TCP options header length bin + container tcpopthdrlenbin-items { + list TcpOptHdrLenBin-list { + key "id"; - // Added containment: Prefix=vlan - // Acquired From Package vlan - uses vlan_CktEp-group; + uses netflow_TcpOptHdrLenBin-group; + description "TCP option header length bin entry list"; } + description "TCP option header length bin entry"; } - // Vxlan circuit - // Polymorphic containment of derivative object vxlan:CktEp (from l2:Dom) - container vxlan-items { - - // Abstract containment of vxlan:CktEp derived from l2:Dom - list CktEp-list { - config "false"; - key "encap"; + // Receive window size bin + container rcvwindowszbin-items { + list RcvWindowSzBin-list { + key "id"; - // Added containment: Prefix=vxlan - // Acquired From Package vxlan - uses vxlan_CktEp-group; + uses netflow_RcvWindowSzBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping l2_VlanConfig-group { - leaf accEncap { - type string; - } + grouping netflow_PayloadLenBin-group { + description "Payload length bin entry"; - container ipqos-items { + // Identifier + leaf id { - // Added containment as a singleton: Prefix=ipqos - // Acquired From Package ipqos - uses ipqos_Entity-group; + type netflow_PayloadLenIdT; + description "Payload Length Bin Id"; } - } - grouping l2_BD-group { - leaf fabEncap { - type string; - } - leaf accEncap { - type string; + // Low value + leaf lo { + + type netflow_PayloadLenT; + description "Bin Low Value for Payload Length"; } - // Enable cross connect on vlan - // Type is an MO-Defined-Type - leaf xConnect { - description "Enable Cross Connect on VLAN"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type l2_XConnect; + type netflow_PayloadLenT; + description "Bin High Value for Payload Length"; } - // This represents the parameter used by the node - // (i.e. Leaf) for enabling forwarding modes (route - // or bridge or both). Default is enable both - // Type is an MO-Defined-Type - leaf fwdMode { - description "The Layer 2 bridge-domain parameter mode used by the node for enabling forwarding modes"; + leaf descr { - // Type is an MO-Defined-Type - type l2_FwdMode; + type naming_Descr; + description "Description of the specified attribute"; } + } - // This represents the parameter used by the node - // (i.e. Leaf) for enabling classical bridging or - // bridging with IP. Default is bridge with IP - // Type is an MO-Defined-Type - leaf bridgeMode { - description "Bridging Mode"; + grouping netflow_TcpOptHdrLenBin-group { + description "TCP option header length bin entry"; - // Type is an MO-Defined-Type - type l2_BridgeMode; + // Identifier + leaf id { + + type netflow_TCPOptHdrLenIdT; + description "TCP option header length bin ID"; } - // Forwarding controls - // Type is an MO-Defined-Type - leaf fwdCtrl { - description "The Layer 2 bridge-domain forwarding controls"; + // Low value + leaf lo { - // Type is an MO-Defined-Type - type l2_FwdCtrl; - } - leaf bdDefDn { - config "false"; - type string; + type netflow_TCPOptHdrLenT; + description "Bin Low Value of TCP option header length"; } - // Controller Id - // Type is an MO-Defined-Type - leaf controllerId { - config "false"; - description "Controller ID for Vlan"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type netflow_TCPOptHdrLenT; + description "Bin High Value of TCP option header length"; } - // BdState - // Type is an MO-Defined-Type - leaf BdState { - description "Bridge Domain State can be active or suspended"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomAdminSt; - } - leaf BdOperName { - config "false"; - type string; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping netflow_RcvWindowSzBin-group { + description "Receive window size bin entry"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Identifier + leaf id { + + type netflow_RcvWindowSzIdT; + description "Receive window size bin ID"; } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; + // Low value + leaf lo { - // Type is an MO-Defined-Type - type l2_DomId; + type netflow_RcvWindowSzT; + description "Bin Low Value of Receive window size"; } - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; + // High value + leaf hi { - // Type is an MO-Defined-Type - type l2_DomId; + type netflow_RcvWindowSzT; + description "Bin High Value of Receive window size"; } - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomMode; + type naming_Descr; + description "Description of the specified attribute"; } + } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping netflow_FwdInstTarget-group { + description "Forward Instance Target"; - // Type is an MO-Defined-Type - type l2_DomAdminSt; + // Identifier + leaf id { + + type netflow_FwdInstTargetId; + description "Identifier to the Forward Instance Target"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Collector identifier provided by the netflow controller + leaf collectorId { - // Type is an MO-Defined-Type - type l2_DomOperSt; + type netflow_CollectorId; + description "Collector identifier provided by the netflow controller"; } - leaf createTs { + leaf error { config "false"; - type string; + type uint64; + description "failure code"; } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // IP filter type + leaf fltType { - // Type is an MO-Defined-Type - type l2_DomCtrl; + type netflow_FltType; + description "Netflow Target IP filter Type"; } - // VLAN Membership Interface - container member-items { - list VlanMemberIf-list { - config "false"; - key "id"; + // Direction + leaf dir { - // Added containment: Prefix=member - // Acquired From Package l2 - uses l2_VlanMemberIf-group; - } + type netflow_DirectionT; + description "Traffic direction to monitor"; } - // Multicast group entity, this refers to the multicast - // group entity that each tenant's bridge domain uses to - // flood its traffic over the fabric - container fmgrp-items { - list Grp-list { - key "addr"; + container rsprofAtt-items { - // Added containment: Prefix=fmgrp - // Acquired From Package fmcast - uses fmcast_Grp-group; - } + uses netflow_RsProfAtt_source-group; + description "Reference to profile attachement"; } + } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + grouping netflow_FlowInfo-group { + description "Flow Info that is displayed/exported."; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; - } + // Ephemeral data + leaf flowId { + config "false"; + type uint32; + description "Number to index a flow."; } - // 802.1q Vlan - container vlan-items { - list CktEp-list { - key "encap"; - - // Added containment: Prefix=vlan - // Acquired From Package vlan - uses vlan_CktEp-group; - } + // Ephemeral data + leaf protocol { + config "false"; + type uint32; + description "L4 protocol (TCP or UDP)"; } - // Vxlan circuit - container vxlan-items { - list CktEp-list { - config "false"; - key "encap"; - - // Added containment: Prefix=vxlan - // Acquired From Package vxlan - uses vxlan_CktEp-group; - } + // Ephemeral data + leaf intfName { + config "false"; + type string; + description "ingress interface where the flow exists"; } - // Rel-def from extBD - container rsextBD-items { - - // Abstract containment of rsextBD derived from l2:BD - list RsExtBD-list { - key "tDn"; - - // Added containment: Prefix=rsextBD - // Acquired From Package l2 - uses l2_RsExtBD_source-group; - } + // Ephemeral data + leaf sip { + config "false"; + type address_Ip; + description "Source IP address of the flow"; } - // Rel-def from BdVsanMap - container rsbdVsanMap-items { - - // Abstract containment of rsbdVsanMap derived from l2:BD - list RsBdVsanMap-list { - key "tDn"; - - // Added containment: Prefix=rsbdVsanMap - // Acquired From Package l2 - uses l2_RsBdVsanMap_source-group; - } + // Ephemeral data + leaf dip { + config "false"; + type address_Ip; + description "Destination IP address of the flow"; } - // Rel-def target from domIfConn - // Inherited From l2:BD - container rtfvDomIfConn-items { - - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; - key "tDn"; + // Ephemeral data + leaf srcPort { + config "false"; - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; - } + type netflow_L4Port; + description "Source Port of the flow"; } - container dbgVlanStats-items { + // Ephemeral data + leaf dstPort { + config "false"; - // Added containment as a singleton: Prefix=dbgVlanStats - // Acquired From Package l2 - uses l2_VlanStats-group; + type netflow_L4Port; + description "Destination Port of the flow"; } - } - - grouping l2_VlanMemberIf-group { - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf pktCount { config "false"; - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type uint64; + description "Number of Packets received so far."; } - // Type is an MO-Defined-Type - leaf vlan { + // Ephemeral data + leaf bitsPerSec { config "false"; - description "VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint64; + description "Current rate of flow in bits per second"; } - } - - grouping fmcast_Grp-group { - // Inherited From nw:Conn - // Modified by Override: mcast:Grp->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf flowStartTime { + config "false"; + type string; + description "Time when the flow was first detected."; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf pktLoss { + config "false"; + type uint64; + description "Number of packets lost in the flow"; } - // Multicast group address - // Inherited From mcast:Grp - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // Ephemeral data + leaf lossStartTime { + config "false"; + type string; + description "Time when flow started experiencing packet losses."; + } - // Type is an MO-Defined-Type - type mcast_GrpIp; + // Ephemeral data + leaf lossEndTime { + config "false"; + type string; + description "Time when packet losses are no longer observed for the flow."; } } - grouping epm_Db-group { + grouping sflow_Sflow-group { + description "Sflow entity"; - // Type of the database - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Holds sflow instance information + container inst-items { - // Type is an MO-Defined-Type - type epm_DbT; + uses sflow_Inst-group; + description "Instance for Sflow config"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + grouping sflow_Inst-group { + description "Instance for Sflow config"; + leaf isExtendedSwitch { + type boolean; + description "Describes whether sflow is configured in extended switch flow"; } - // Ip Ep record - container ip-items { - list IpEp-list { - config "false"; - key "addr"; + // sampling-rate + leaf pktSamplingRate { - // Added containment: Prefix=ip - // Acquired From Package epm - uses epm_IpEp-group; - } + type sflow_samplingRate; + description "The statistical sampling rate for packet sampling from this source"; } - // Mac Ep record - container mac-items { - list MacEp-list { - config "false"; - key "addr"; + // max-sampling-size + leaf maxHeaderSize { - // Added containment: Prefix=mac - // Acquired From Package epm - uses epm_MacEp-group; - } + type sflow_maxSampledSize; + description "The maximum number of bytes that should be copied from a sampled packet. The agent may have an internal maximum and minimum permissible sizes"; } - } - grouping epm_IpEp-group { - leaf addr { - config "false"; - type address_Ip; + // counter-poll-interval + leaf counterPollInterval { + + type sflow_counterPollInterval; + description "The maximum number of seconds between successive samples of the counters associated with this data source"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // max-datagram-size + leaf rcvrMaxDatagramSize { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sflow_maxDatagramSize; + description "The maximum number of data bytes that can be sent in a single sample datagram"; } - // Identifier of the logical interface - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Path"; + // collector-ip + leaf rcvrAddress { - // Type is an MO-Defined-Type - type nw_IfId; + type sflow_addressIp; + description "The IP address of the sFlow collector. If set to 0.0.0.0 not sFlow datagrams will be sent."; } - // Ep flags - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Endpoint Properties and State"; + // collector-vrf + leaf rcvrVrfName { - // Type is an MO-Defined-Type - type epm_EpFlags; + type sflow_VrfName; + description "It holds collector vrf name"; } - // Rel-def target from IpEpRslttoIpEpAtt - // Inherited From epm:IpEp - container rtIpEpRslttoIpEpAtt-items { + // collector-source-ip + leaf rcvrSrcAddress { - // Added containment as a singleton: Prefix=rtIpEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RtIpEpRslttoIpEpAtt_target-group; + type sflow_addressIp; + description "The source ip-address option causes the sent sFlow datagram to use the source IP address as the IP packet source address."; } - // Rel-def target from MacEpRslttoIpEpAtt - // Inherited From epm:IpEp - container rtMacEpRslttoIpEpAtt-items { + // collector-port + leaf rcvrPort { - // Added containment as a singleton: Prefix=rtMacEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RtMacEpRslttoIpEpAtt_target-group; + type sflow_L4Port; + description "The destination port for sFlow datagrams."; } - } - grouping epm_MacEp-group { - leaf addr { - config "false"; - type address_Mac; + // agent-ip + leaf agentAddress { + + type sflow_addressIp; + description "The IP address associated with this agent. In the case of a multi-homed agent, this should be the loopback address of the agent.The address should be an invariant that does not change as interfaces are reconfigured, enabled, disabled, added or removed"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Identifier of the logical interface - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Path"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Admin State"; } - // Ep flags - // Inherited From epm:EpRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Endpoint Properties and State"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type epm_EpFlags; - } - leaf createTs { - config "false"; - type string; + type nw_InstCtrl; + description "Controls"; } - // Rel-def from macEpToIpEpAtt - container rsmacEpToIpEpAtt-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Abstract containment of rsmacEpToIpEpAtt derived from epm:MacEp - list RsMacEpToIpEpAtt-list { - config "false"; - key "tDn"; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + container datasource-items { + list SflowFsDataSource-list { + key "id"; - // Added containment: Prefix=rsmacEpToIpEpAtt - // Acquired From Package epm - uses epm_RsMacEpToIpEpAtt_source-group; + uses sflow_SflowFsDataSource-group; + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel. list"; } + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel."; } } - grouping vlan_CktEp-group { - leaf fabEncap { - type string; - } + grouping sflow_SflowFsDataSource-group { + description " The source of the data for the sFlow sampler as an Ethernet port, a range of Ethernet ports, or a port channel."; - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - description "Domain ID"; - - // Type is an MO-Defined-Type - type l2_DomId; - } - - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; - - // Type is an MO-Defined-Type - type l2_DomId; - } - - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_DomMode; + type naming_Descr1024; + description "Description"; } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l2_DomAdminSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type l2_DomOperSt; - } - leaf createTs { - config "false"; - type string; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type l2_DomCtrl; - } - leaf encap { - type string; + grouping ssx_Ssx-group { + description "ssx"; + leaf enable { + type boolean; + description "Enable Streaming Statistics Export Instance"; } - // Enforcement preference - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf enfPref { - description "Switching Preference"; + // Global system id + leaf systemId { - // Type is an MO-Defined-Type - type l2_EnfPref; + type ssx_SystemId; + description "Global System Identifier"; } - // It represents the classId for the traffic - // terminating on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf pcTag { - description "It represents the classId for the traffic terminating on this circuit"; + // ssx Record + container recordp-items { + list RecordP-list { + key "name"; - // Type is an MO-Defined-Type - type actrl_PcTag; + uses ssx_RecordP-group; + description "ssx Record details list"; + } + description "ssx Record details"; } - // It represents the default qos group for the - // traffic on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf qosPrio { - description "It represents the default qos group for the traffic on this circuit"; + // ssx Collector + container collector-items { + list Collector-list { + key "name"; - // Type is an MO-Defined-Type - type qos_TenantPrio; - } - leaf epgDn { - type string; + uses ssx_Collector-group; + description "Collector entry list"; + } + description "Collector entry"; } - // Static Mac end point - container mac-items { - list MacEp-list { - config "false"; - key "mac"; + // ssx Monitor + container monitor-items { + list Monitor-list { + key "name"; - // Added containment: Prefix=mac - // Acquired From Package l2 - uses l2_MacEp-group; + uses ssx_Monitor-group; + description "ssx Monitor list"; } + description "ssx Monitor"; } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // System SSX + container sysssx-items { + list SystemSsx-list { + key "name"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + uses ssx_SystemSsx-group; + description "Configure System SSX configs list"; } + description "Configure System SSX configs"; } - // Rel-def target from spanSrcToL2CktEpAtt - // Inherited From vlan:CktEp - container rtspanSpanSrcToL2CktEpAtt-items { - - // Abstract containment of rtspanSpanSrcToL2CktEpAtt derived from l2:CktEp - list RtSpanSpanSrcToL2CktEpAtt-list { + // Forwarding instance based target + container fwdinst-items { + list FwdInstTarget-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtspanSpanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RtSpanSpanSrcToL2CktEpAtt_target-group; + uses ssx_FwdInstTarget-group; + description "Forward Instance Target list"; } + description "Forward Instance Target"; } + } - // Rel-def target from domIfConn - // Inherited From l2:BD - // Inherited From vlan:CktEp - container rtfvDomIfConn-items { + grouping ssx_RecordP-group { + description "ssx Record details"; - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; - key "tDn"; + // Record name + leaf name { - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; - } + type ssx_SsxRecordName; + description "Ssx Record Node Name"; } - - // Rel-def from vlanEppAtt - container rsvlanEppAtt-items { - - // Added containment as a singleton: Prefix=rsvlanEppAtt - // Acquired From Package vlan - uses vlan_RsVlanEppAtt_source-group; + leaf ingQueueDep { + type boolean; + description "Enable/Disable Ingress Queue Depth"; } - } - - grouping l2_MacEp-group { - leaf mac { - config "false"; - type address_Mac; + leaf ingQueueDrp { + type boolean; + description "Enable/Disable Ingress Queue Drops"; } - - // The interface on which the endpoint is reachable - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf ethCounters { + type boolean; + description "Enable/Disable Ethernet Counters"; } - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type epm_EpOperSt; + leaf egrQueueDep { + type boolean; + description "Enable/Disable Egress Queue Depth"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf egrQueueDrp { + type boolean; + description "Enable/Disable Egress Queue Drop"; + } + leaf egrQueueMicro { + type boolean; + description "Enable/Disable Egress Queue Microburst Records"; + } + leaf egrQueuePeak { + type boolean; + description "Enable/Disable Egress Queue Buffer Peak Counters"; + } + leaf egrBufferDep { + type boolean; + description "Enable/Disable Egress Buffer Depth"; + } + leaf egrPoolDep { + type boolean; + description "Enable/Disable Egress Pool Group Depth"; } - // Rel-def target from EpDefRefToL2MacEp - // Inherited From l2:MacEp - container rtfvEpDefRefToL2MacEp-items { - - // Abstract containment of rtfvEpDefRefToL2MacEp derived from l2:MacEp - list RtFvEpDefRefToL2MacEp-list { - config "false"; - key "tDn"; + // Interval in uS of collection for this record + leaf interval { - // Added containment: Prefix=rtfvEpDefRefToL2MacEp - // Acquired From Package fv - uses fv_RtFvEpDefRefToL2MacEp_target-group; - } + type ssx_Interval; + description "Time Interval"; } } - grouping vxlan_CktEp-group { - - // Multicast group address (GIPO'), Outer multicast - // encapsulation ip address for this layer2 domain - // Type is an MO-Defined-Type - leaf mcastEncap { - config "false"; - description "Multicast Encapsulation"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; - } + grouping ssx_Collector-group { + description "Collector entry"; - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type + // Remote node name leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - // domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Domain ID"; - - // Type is an MO-Defined-Type - type l2_DomId; + type ssx_SsxRemoteNodeName; + description "Ssx Remote Node Name"; } - // Internal domain id - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf hwId { - config "false"; - description "Hardware Resource ID"; + // Remote node VRF + leaf vrfName { - // Type is an MO-Defined-Type - type l2_DomId; + type ssx_VrfName; + description "Remote Entity VRF id"; } - - // Vlan mode - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; - - // Type is an MO-Defined-Type - type l2_DomMode; + leaf dstAddr { + type address_Ip; + description "Remote Entity IP address"; } - // admin state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Remote node destination port + leaf dstPort { - // Type is an MO-Defined-Type - type l2_DomAdminSt; + type ssx_SsxPort; + description "Remote Entity L4 Port number"; } - // oper state - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // IP dscp value + leaf dscp { - // Type is an MO-Defined-Type - type l2_DomOperSt; - } - leaf createTs { - config "false"; - type string; + type qosp_DscpCP; + description "DSCP Value to be used"; } - // Controls - // Inherited From l2:Dom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + // Source node L4 port + leaf srcPort { - // Type is an MO-Defined-Type - type l2_DomCtrl; + type ssx_SsxPort; + description "Source L4 port number"; } - leaf encap { - config "false"; - type string; + leaf srcAddr { + type address_Ip; + description "Source IP Address"; } - - // Enforcement preference - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf enfPref { - config "false"; - description "Switching Preference"; - - // Type is an MO-Defined-Type - type l2_EnfPref; + leaf inbandInterface { + type boolean; + description "inband interface for collector"; } - // It represents the classId for the traffic - // terminating on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf pcTag { - config "false"; - description "It represents the classId for the traffic terminating on this circuit"; + // MTU + leaf mtu { - // Type is an MO-Defined-Type - type actrl_PcTag; + type ssx_Mtu; + description "MTU size of the packets"; } + } - // It represents the default qos group for the - // traffic on this circuit - // Inherited From l2:CktEp - // Type is an MO-Defined-Type - leaf qosPrio { - config "false"; - description "It represents the default qos group for the traffic on this circuit"; - - // Type is an MO-Defined-Type - type qos_TenantPrio; - } - leaf epgDn { - config "false"; - type string; - } + grouping ssx_Monitor-group { + description "ssx Monitor"; - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // Monitor name + leaf name { - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; - } + type ssx_SsxMonitorName; + description "Ssx Monitor Node Name"; } - // Rel-def target from spanSrcToL2CktEpAtt - // Inherited From vlan:CktEp - // Inherited From vxlan:CktEp - container rtspanSpanSrcToL2CktEpAtt-items { + container rsrecordPAtt-items { - // Abstract containment of rtspanSpanSrcToL2CktEpAtt derived from l2:CktEp - list RtSpanSpanSrcToL2CktEpAtt-list { - config "false"; + list RsRecordPAtt-list { key "tDn"; - // Added containment: Prefix=rtspanSpanSrcToL2CktEpAtt - // Acquired From Package span - uses span_RtSpanSpanSrcToL2CktEpAtt_target-group; + uses ssx_RsRecordPAtt_source-group; + description "Record Policy Attachment list"; } + description "Record Policy Attachment"; } - // Rel-def target from domIfConn - // Inherited From l2:BD - // Inherited From vlan:CktEp - // Inherited From vxlan:CktEp - container rtfvDomIfConn-items { + container rscollectorAtt-items { - // Abstract containment of rtfvDomIfConn derived from l2:Dom - list RtFvDomIfConn-list { - config "false"; + list RsCollectorAtt-list { key "tDn"; - // Added containment: Prefix=rtfvDomIfConn - // Acquired From Package fv - uses fv_RtFvDomIfConn_target-group; + uses ssx_RsCollectorAtt_source-group; + description "Reference to Collector list"; } + description "Reference to Collector"; } + } - // Rel-def from vxlanEppAtt - container rsvxlanEppAtt-items { + grouping ssx_SystemSsx-group { + description "Configure System SSX configs"; - // Added containment as a singleton: Prefix=rsvxlanEppAtt - // Acquired From Package vxlan - uses vxlan_RsVxlanEppAtt_source-group; + leaf name { + + type ssx_SsxMonitorName; + description "Ssx Monitor Node Name"; } - } - grouping conftmpl_TemplateTable-group { + container rssysMonitorAtt-items { - // TemplateEntry - container templateEntry-items { - list TemplateEntry-list { - key "name"; + list RsSysMonitorAtt-list { + key "tDn"; - // Added containment: Prefix=templateEntry - // Acquired From Package conftmpl - uses conftmpl_TemplateEntry-group; + uses ssx_RsSysMonitorAtt_source-group; + description "Reference to Monitor list"; } + description "Reference to Monitor"; } } - grouping conftmpl_TemplateEntry-group { - leaf name { - type string; - } - leaf description { - type string; - } - leaf refCount { + grouping ssx_FwdInstTarget-group { + description "Forward Instance Target"; + + // Identifier + leaf id { config "false"; - type uint32; + + type ssx_FwdInstTargetId; + description "Identifier"; } - // OpTable MO - container opTable-items { + container rsmonitorAtt-items { - // Added containment as a singleton: Prefix=opTable - // Acquired From Package conftmpl - uses conftmpl_OpTable-group; + list RsMonitorAtt-list { + config "false"; + key "tDn"; + + uses ssx_RsMonitorAtt_source-group; + description "Reference to Monitor list"; + } + description "Reference to Monitor"; } } - grouping conftmpl_OpTable-group { - leaf description { - type string; - } + grouping kbs_ContainerTracker-group { + description "Container Tracker entity"; - // OpEntry - container opEntry-items { - list OpEntry-list { - key "operationType"; + // This object holds container tracker server information + container server-items { - // Added containment: Prefix=opEntry - // Acquired From Package conftmpl - uses conftmpl_OpEntry-group; - } + uses kbs_Server-group; + description "Kubernetes server infromation"; } } - grouping conftmpl_OpEntry-group { + grouping kbs_Server-group { + description "Kubernetes server infromation"; - // Type is an MO-Defined-Type - leaf operationType { - description "OperationType"; + // Admin state to configure kubernetes server + leaf adminSt { - // Type is an MO-Defined-Type - type conftmpl_OperationType; + type kbs_adminStType; + description "State to configure kubernetes server properties"; + } + leaf ipAddress { + type address_Ip; + description "ip address of the kubernetes api server"; + } + leaf port { + type uint32 { + range "0..65535"; + } + description "port number of the kubernetes api server"; } - // Type is an MO-Defined-Type - leaf templateType { - description "The type of config template depending on which resource it operates for"; + // VRF info + leaf vrf { - // Type is an MO-Defined-Type - type conftmpl_TemplateType; + type l3_VrfName; + description "VRF to be used while connecting to kubernetes api-server"; } - leaf substituteString { - type string; + + // This object holds container tracker watch information + container watch-items { + + uses kbs_Watch-group; + description "Kubernetes watch infromation"; } - leaf configString { - type string; + } + + grouping kbs_Watch-group { + description "Kubernetes watch infromation"; + + // Admin state to configure kubernetes watch service + leaf adminSt { + + type kbs_adminStType; + description "State to configure kubernetes watch service properties"; } - leaf description { - type string; + leaf service { + type string { + length "0..64"; + } + description "service to watch for in the kubernetes cluster"; } - leaf refCount { - type uint32; + + // acl cfg name to apply when watch is triggered + leaf acl { + + type acl_Name; + description "acl cfg name to apply when watch is triggered"; } } - grouping fc_Entity-group { + grouping copp_Entity-group { + description "CoPP Entity"; + leaf enableFlag { + type boolean; + description "Property Flag to enable or disable rate limiter for various CoPP classes"; + } + leaf error { + config "false"; + type uint64; + default "0"; + description "failure code"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // An fiber channel interface properties - container vfc-items { - list VfcIf-list { - key "id"; + // Holder for copp class policy, each class describes a + // set of rules describing the policer rates + container classp-items { + list Class-list { + key "cName"; - // Added containment: Prefix=vfc - // Acquired From Package l2 - uses l2_VfcIf-group; + uses copp_Class-group; + description "Class list"; } + description "Class"; } - } - grouping l2_VfcIf-group { - - // Parent/Bound Ethernet Ifindex - // Type is an MO-Defined-Type - leaf boundIf { - description "Bound Ethernet Ifindex"; + // Holder for copp class policy, each class describes a + // set of rules describing the policer rates + container policy-items { + list Policy-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf boundMac { - type address_Mac; + uses copp_Policy-group; + description "Policy-map list"; + } + description "Policy-map"; } - // Enable/Disable FKA - // Type is an MO-Defined-Type - leaf disableFka { - description "Enable/Disable FKA"; + // Model for COPP profile + container profile-items { - // Type is an MO-Defined-Type - type l2_disablefka; + uses copp_Profile-group; + description "CoPP Profile"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Model for Copp Copy profile + container name-items { + list CopyProfile-list { + key "affixName"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses copp_CopyProfile-group; + description "CoPP Copy Profile list"; } + description "CoPP Copy Profile"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Scale factor + container scale-items { + list Scale-list { + key "module"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses copp_Scale-group; + description "Scale factor list"; + } + description "Scale factor"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Service-Policy + container service-items { + list Service-list { + key "name"; - // Type is an MO-Defined-Type - type nw_IfId; + uses copp_Service-group; + description "CoPP Service-policy list"; + } + description "CoPP Service-policy"; } - // Administrative port state - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative State"; + // Service-Policy + container servicedyn-items { + list ServiceDynamic-list { + key "name"; - // Type is an MO-Defined-Type - type fc_AdminSt; + uses copp_ServiceDynamic-group; + description "CoPP Service-policy list"; + } + description "CoPP Service-policy"; } + } - // Administrative port mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative Port Mode"; - - // Type is an MO-Defined-Type - type l2_Mode; + grouping copp_Class-group { + description "Class"; + leaf cName { + type string; + description "Class-map name"; } - // Administrative Trunking mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkMode { - description "Administrative Trunking Mode"; + // Match any/all + leaf matchOption { - // Type is an MO-Defined-Type - type l2_TrunkMode; + type copp_MatchOption; + description "Match Option"; } - - // Allowed-vsan-bitmap used to track vsans that are configured on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkVsans { - description "Allowed Vsan Bitmap"; - - // Type is an MO-Defined-Type - type fc_TrunkVsansBitmap; + leaf flag { + type boolean; + description "Property Flag"; } - // Operational port vsan - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operPortVsan { - config "false"; - description "Operational Port vsan"; + leaf name { - // Type is an MO-Defined-Type - type fc_VsanId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operMode { - config "false"; - description "Operational Port Mode"; + leaf descr { - // Type is an MO-Defined-Type - type l2_Mode; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational Port State - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operSt { + // Allowed rate, committed rate at which the packets + // are allowed into the system + leaf rate { config "false"; - description "Operational Port State"; - // Type is an MO-Defined-Type - type fc_FcIfOperSt; + type policer_Rate; + description "Rate"; } - // Operational State Reason - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operStQual { + // Committed burst size, number of packets to absorb during + // a burst + leaf burst { config "false"; - description "Operational State Reason"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type policer_Burst; + description "Burst"; } - // Operational Trunking mode - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf operTrunkMode { - config "false"; - description "Operational Trunking Mode"; + // Set of match conditions for this copp policer + container match-items { + list Match-list { + key "type"; - // Type is an MO-Defined-Type - type l2_TrunkMode; + uses copp_Match-group; + description "Match Criteria list"; + } + description "Match Criteria"; } - // Up-vsan-bitmap used to track vsans that are up on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkPortUpVsanBmp { - config "false"; - description "Trunk Port Up Vsan Bitmap"; + // Match access-group + container acl-items { + list Acl-list { + key "name"; - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Acl-group; + description "Match access list name list"; + } + description "Match access list name"; } - // Isolated-vsan-bitmap used to track vsans that are isolated on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf trunkIsolatedVsanBmp { - config "false"; - description "Isolated Trunking Vsans Bitmap"; + // Match redirect + container rdirect-items { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Rdirect-group; + description "Match redirect"; } - // Allowed-vsan-bitmap used to track vsans that are configured on the interface - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf allowedVsanBmp { - config "false"; - description "Allowed Vsan Bitmap"; + // Match exception fcoe-fib-miss + container fcoe-items { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + uses copp_Fcoe-group; + description "Match Exception fcoe"; } - // wwn of VFC - // Inherited From l2:FcIf - // Type is an MO-Defined-Type - leaf portWwn { - config "false"; - description "Port WWN."; + // Match exception multicast + container mcast-items { + list Multicast-list { + key "mcastOption"; - // Type is an MO-Defined-Type - type fc_Wwn; - } - leaf lastLinkStChg { - config "false"; - type string; + uses copp_Multicast-group; + description "Multicast Exception options list"; + } + description "Multicast Exception options"; } - // Rel-def from SrvExtIfMap - container rssrvExtIfMap-items { - - // Abstract containment of rssrvExtIfMap derived from l2:VfcIf - list RsSrvExtIfMap-list { - key "tDn"; - - // Added containment: Prefix=rssrvExtIfMap - // Acquired From Package l2 - uses l2_RsSrvExtIfMap_source-group; - } - } - - // Rel-def target from VsanIfMap - // Inherited From l2:VfcIf - container rtVsanIfMap-items { - - // Added containment as a singleton: Prefix=rtVsanIfMap - // Acquired From Package vsan - uses vsan_RtVsanIfMap_target-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - container rtvrfMbr-items { + // Match exception + container excep-items { + list ExeOptions-list { + key "option"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses copp_ExeOptions-group; + description "Match exception options list"; + } + description "Match exception options"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Match exception ip + container ip-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses copp_Ip-group; + description "Match Ip version"; } - } - grouping fcoe_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Match exception ip icmp + container icmp-items { + list IpIcmp-list { + key "option"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses copp_IpIcmp-group; + description "icmp options list"; } + description "icmp options"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + // Match exception ipv6 + container ipv6-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses copp_Ipv6-group; + description "Match Ipv6 version"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Match exception ipv6 icmp + container icmpv6-items { + list Ipv6Icmp-list { + key "option"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses copp_Ipv6Icmp-group; + description "icmp options list"; + } + description "icmp options"; } - // This objects hold per fcoe-mgr instance information. There is only - // one instance of fcoe-mgr running in the system today - container inst-items { + // Match Protocol + container prot-items { + list Protocol-list { + key "type"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package fcoe - uses fcoe_Inst-group; + uses copp_Protocol-group; + description "Match Protocol list"; + } + description "Match Protocol"; } } - grouping fcoe_Inst-group { + grouping copp_Match-group { + description "Match Criteria"; - // FIP Keep Alive/Advertisement - // Type is an MO-Defined-Type - leaf fipKaIntvl { - description "FIP KeepAlive Interval"; + // Match type + leaf type { - // Type is an MO-Defined-Type - type fcoe_FipKaIntvl; + type copp_MatchT; + description "Match type"; } - // Enable Fcoe over FEX HIF Interfaces - // Type is an MO-Defined-Type - leaf enableFex { - description "Enable FCoE over FEX"; + leaf name { - // Type is an MO-Defined-Type - type fcoe_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // VE Loopback - // Type is an MO-Defined-Type - leaf veLoopback { - description "VFID check for VE ports"; + leaf descr { - // Type is an MO-Defined-Type - type fcoe_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } + } - // FCMAP value - // Type is an MO-Defined-Type - leaf fcMap { - description "FCOE Mac Address Prefix"; - - // Type is an MO-Defined-Type - type fc_FcMap; + grouping copp_Acl-group { + description "Match access list name"; + leaf name { + type string; + description "Acl name"; } - - // Fcf Priority - // Type is an MO-Defined-Type - leaf fcfPrio { - description "FCF priority"; - - // Type is an MO-Defined-Type - type fc_FcfPrio; + leaf flag { + type boolean; + description "Property Flag"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + grouping copp_Rdirect-group { + description "Match redirect"; - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Redirect options + leaf rdrct { - // Type is an MO-Defined-Type - type nw_AdminSt; + type copp_Rdrct; + description "Match redirect options"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type nw_InstCtrl; - } + grouping copp_Fcoe-group { + description "Match Exception fcoe"; - // This objects hold information per vfc. - container vfc-items { - list VfcIf-list { - config "false"; - key "id"; + // Fcoe option + leaf option { - // Added containment: Prefix=vfc - // Acquired From Package fcoe - uses fcoe_VfcIf-group; - } + type copp_Fcoe; + description "fcoe-fib-miss"; } } - grouping fcoe_VfcIf-group { + grouping copp_Multicast-group { + description "Multicast Exception options"; - // VFC IfId - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "VFC If Id"; + leaf mcastOption { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_Mcast; + description "Multicast options"; } - leaf peerMac { - config "false"; - type address_Mac; + leaf flag { + type boolean; + description "Property Flag"; } + } - // Peer wwn of VFC - // Type is an MO-Defined-Type - leaf peerWwn { - config "false"; - description "Peer WWN."; + grouping copp_ExeOptions-group { + description "Match exception options"; - // Type is an MO-Defined-Type - type fc_Wwn; - } + leaf option { - // VNP Fip KeepAlive Interval - // Type is an MO-Defined-Type - leaf fipKaIntvl { - config "false"; - description "Fip KeepAlive Interval"; + type copp_Excep; + description "Match options"; + } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // Type is an MO-Defined-Type - type fcoe_FipKaIntvl; + grouping copp_Ip-group { + description "Match Ip version"; + leaf options { + type boolean; + description "Ip Option"; + } + leaf flag { + type boolean; + description "Property Flag"; } + } - // Fcf Priority - // Type is an MO-Defined-Type - leaf fcfPrio { - config "false"; - description "FCF priority"; + grouping copp_IpIcmp-group { + description "icmp options"; - // Type is an MO-Defined-Type - type fc_FcfPrio; - } + // ICMP options + leaf option { - // VFC Mode VE/VF/VNP - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "VFC mode"; + type copp_Icmp; + description "icmp options"; + } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // Type is an MO-Defined-Type - type fc_Mode; + grouping copp_Ipv6-group { + description "Match Ipv6 version"; + leaf options { + type boolean; + description "Ip Option"; } + leaf flag { + type boolean; + description "Property Flag"; + } + } - // This objects hold information per vfc. - container fcid-items { - list VfcLogin-list { - config "false"; - key "fcId"; + grouping copp_Ipv6Icmp-group { + description "icmp options"; - // Added containment: Prefix=fcid - // Acquired From Package fcoe - uses fcoe_VfcLogin-group; - } + // ICMP options + leaf option { + + type copp_Icmp; + description "icmp options"; + } + leaf flag { + type boolean; + description "Property Flag"; } } - grouping fcoe_VfcLogin-group { + grouping copp_Protocol-group { + description "Match Protocol"; - // wwn of VFC - // Type is an MO-Defined-Type - leaf wwn { - config "false"; - description "Vfc WWN."; + leaf type { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_Proto; + description "Protocol List"; + } + leaf flag { + type boolean; + description "Property Flag"; } - // Internal flogi fcid - // Type is an MO-Defined-Type - leaf fcId { - config "false"; - description "Vfc FcId."; + // Match protocol mpls + container mpls-items { - // Type is an MO-Defined-Type - type fc_FcId; + uses copp_MPLSoption-group; + description "MPLS options"; } } - grouping npv_Entity-group { + grouping copp_MPLSoption-group { + description "MPLS options"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf exp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type copp_ExpVal; + description "Experimental value"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf routerAlert { - // Type is an MO-Defined-Type - type nw_AdminSt; + type copp_Ralert; + description "router-alert"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + grouping copp_Policy-group { + description "Policy-map"; + leaf name { + type string; + description "Policy-map name"; + } + leaf flag { + type boolean; + description "Property Flag"; } - // This objects hold per NPV instance information. There is only one instance of NPV instance running in the system today - container inst-items { + // Class included in Policy-map + container classp-items { + list Classp-list { + key "name"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package npv - uses npv_Inst-group; + uses copp_Classp-group; + description "Classp list"; + } + description "Classp"; } } - grouping npv_Inst-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type + grouping copp_Classp-group { + description "Classp"; leaf name { - description "Name"; + type string; + description "Class name"; + } + leaf insertBeforeName { + type string; + description "Insert before Class name"; + } + leaf flag { + type boolean; + description "Property Flag"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Set policer action + container cir-items { + list PolicerAction-list { + key "cirVal cirUnit burstC burstUnit"; + + uses copp_PolicerAction-group; + description "Set police action list"; } + description "Set police action"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Set policer action with pir rate + container policeActionE-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses copp_PolicerActionExc-group; + description "Set police action including exceed"; } - // Instance controls - // Inherited From nw:CpInst - // Modified by Override: npv:Inst->ctrl - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Logging Action + container logging-items { + list Logging-list { + key "threshold levelRange"; - // Type is a Local-MO-Defined-Type - type nw_InstCtrl_Inst_ctrl; + uses copp_Logging-group; + description "Logging action list"; + } + description "Logging action"; } - // Runtime Server Interface - container srvif-items { - list SrvIf-list { - config "false"; - key "id"; + // Set cos action + container setCos-items { + list SetCos-list { + key "cosVal"; - // Added containment: Prefix=srvif - // Acquired From Package npv - uses npv_SrvIf-group; + uses copp_SetCos-group; + description "Set cos action list"; } + description "Set cos action"; } - // Runtime Ext Interface - container extif-items { - list ExtIf-list { - config "false"; - key "id"; + container setDscp-items { - // Added containment: Prefix=extif - // Acquired From Package npv - uses npv_ExtIf-group; - } + uses copp_SetDscp-group; + description "Set dscp action"; } } - grouping npv_SrvIf-group { + grouping copp_PolicerAction-group { + description "Set police action"; - // flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags Of Enable/disable In SrvIf"; + leaf cirVal { - // Type is an MO-Defined-Type - type npv_SrvIfFlags; + type copp_IrVal; + description "Cir value"; } - // server interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "Server Interface Default Vsan "; + leaf cirUnit { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_IrUnit; + description "Cir rate"; } - // server interface default ext-if - // Type is an MO-Defined-Type - leaf defaultExtIf { - config "false"; - description "default external interface"; + leaf burstC { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_BurstVal; + description "Burst count"; } - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf burstUnit { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_BurstUnit; + description "BC unit"; } - // srv intface fsm - // Type is an MO-Defined-Type - leaf fsmSt { - config "false"; - description "Runtime Srv Interface FSM"; + leaf conformAction { - // Type is an MO-Defined-Type - type npv_SrvIfFsmSt; + type copp_ConformAction; + description "Conform Action"; } - // interface ID - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf violateAction { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_ViolateAction; + description "Violate action"; } - - // wwpn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; - - // Type is an MO-Defined-Type - type fc_Wwn; + leaf flag { + type boolean; + description "Property Flag"; } + } - // wwnn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + grouping copp_PolicerActionExc-group { + description "Set police action including exceed"; - // Type is an MO-Defined-Type - type fc_Wwn; + leaf cirVal { + + type copp_IrVal; + description "Cir value"; } - // srvIf extIf runtime Mapping MO - container targetif-items { - list TargetIf-list { - config "false"; - key "id"; + leaf cirUnit { - // Added containment: Prefix=targetif - // Acquired From Package npv - uses npv_TargetIf-group; - } + type copp_IrUnit; + description "Cir rate"; } - // NPV srv Vsan - container vsan-items { - list SrvVsan-list { - config "false"; - key "id"; + leaf burstC { - // Added containment: Prefix=vsan - // Acquired From Package npv - uses npv_SrvVsan-group; - } + type copp_BurstVal; + description "Burst count"; } - // NPV srv multiple floi - container srvif-items { - list SrvIfFlogi-list { - config "false"; - key "fcid"; + leaf burstUnit { - // Added containment: Prefix=srvif - // Acquired From Package npv - uses npv_SrvIfFlogi-group; - } + type copp_BurstUnit; + description "BC unit"; } - } - - grouping npv_TargetIf-group { - // mapped ifId - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Mapped Interface Id"; + leaf pirVal { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_IrVal; + description "Pir value"; } - } - - grouping npv_SrvVsan-group { - // vsan ID - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Server Interface Vsan ID"; + leaf pirUnit { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_IrUnit; + description "Pir rate"; } - } - grouping npv_SrvIfFlogi-group { - - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf burstE { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_BurstVal; + description "Burst exceed "; } - // wwpn - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; + leaf burstEUnit { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_BurstUnit; + description "BE unit"; } - // wwnn - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + leaf conformAction { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ConformAction; + description "Conform Action"; } - // server interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "Server Interface Default Vsan "; + leaf exceedAction { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_ExceedAction; + description "Exceed Action"; } - // server interface default ext-if - // Type is an MO-Defined-Type - leaf defaultExtIf { - config "false"; - description "default external interface"; + leaf violateAction { - // Type is an MO-Defined-Type - type nw_IfId; + type copp_ViolateAction; + description "Violate action"; } } - grouping npv_ExtIf-group { + grouping copp_Logging-group { + description "Logging action"; - // ext intface fsm - // Type is an MO-Defined-Type - leaf fsmSt { - config "false"; - description "Runtime Ext Interface FSM state"; + leaf threshold { - // Type is an MO-Defined-Type - type npv_ExtIfFsmSt; - } - leaf numVsan { - config "false"; - type uint32; + type copp_IrVal; + description "Logging Threshold"; } - // ext interface default vsan - // Type is an MO-Defined-Type - leaf defaultVsan { - config "false"; - description "External Interface Default Vsan "; + leaf levelRange { - // Type is an MO-Defined-Type - type fc_VsanId; + type copp_LevelRange; + description "logging range"; } + } - // Int Flogi Vsan - // Type is an MO-Defined-Type - leaf flogiVsan { - config "false"; - description "Interface Flogi Vsan"; - - // Type is an MO-Defined-Type - type fc_VsanId; + grouping copp_SetCos-group { + description "Set cos action"; + leaf inner { + type boolean; + description "Set cos inner"; } - // Oper Port Mode - // Type is an MO-Defined-Type - leaf operPortMode { - config "false"; - description "Oper Port Mode"; + // Cos value + leaf cosVal { - // Type is an MO-Defined-Type - type fc_Mode; + type copp_CosVal; + description "Cos Value"; } - - // Logic Interface Index - // Type is an MO-Defined-Type - leaf logIfIndex { - config "false"; - description "Logic Interface Index"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf flag { + type boolean; + description "Property Flag"; } + } - // flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags Of Enable/disable In ExtIf"; - - // Type is an MO-Defined-Type - type npv_ExtIfFlags; + grouping copp_SetDscp-group { + description "Set dscp action"; + leaf tunnel { + type boolean; + description "set dscp tunnel"; } - // fcid - // Type is an MO-Defined-Type - leaf fcid { - config "false"; - description "Fc-id"; + leaf dscpVal { - // Type is an MO-Defined-Type - type fc_FcId; + type copp_DscpVal; + description "Dscp Value"; } + } - // interface ID - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping copp_Profile-group { + description "CoPP Profile"; - // wwpn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwpn { - config "false"; - description "World Wide Port Name"; + // Profile type + leaf prof { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ProfT; + description "Profile type "; } + } - // wwnn - // Inherited From npv:If - // Type is an MO-Defined-Type - leaf wwnn { - config "false"; - description "World Wide Node Name"; + grouping copp_CopyProfile-group { + description "CoPP Copy Profile"; + + // Profile type + leaf profile { - // Type is an MO-Defined-Type - type fc_Wwn; + type copp_ProfT; + description "Profile type "; } - // srvIf extIf runtime Mapping MO - container targetif-items { - list TargetIf-list { - config "false"; - key "id"; + // affix type + leaf affix { - // Added containment: Prefix=targetif - // Acquired From Package npv - uses npv_TargetIf-group; - } + type copp_Affix; + description "Affix type"; } + leaf affixName { + type string; + description "Prefix/Suffix Name"; + } + leaf copyNum { + type uint32; + description "Number of copp copies to this MO"; + } + } - // NPV ext Vsan - container vsan-items { - list ExtVsan-list { - config "false"; - key "id"; - - // Added containment: Prefix=vsan - // Acquired From Package npv - uses npv_ExtVsan-group; + grouping copp_Scale-group { + description "Scale factor"; + leaf scaleVal { + type decimal64 { + fraction-digits 6; } + description "scale factor value"; + } + leaf module { + type uint16; + description "Module number"; } } - grouping npv_ExtVsan-group { - - // vsan ID - // Type is an MO-Defined-Type - leaf id { + grouping copp_Service-group { + description "CoPP Service-policy"; + leaf name { + type string; + description "service-policy name"; + } + leaf error { config "false"; - description "External Interface Vsan ID"; - - // Type is an MO-Defined-Type - type fc_VsanId; + type uint64; + default "0"; + description "failure code"; } + } - // extVsan state - // Type is an MO-Defined-Type - leaf fsmSt { + grouping copp_ServiceDynamic-group { + description "CoPP Service-policy"; + leaf name { + type string; + description "service-policy name"; + } + leaf error { config "false"; - description "External Interface Vsan State"; - - // Type is an MO-Defined-Type - type npv_ExtIfFsmSt; + type uint64; + default "0"; + description "failure code"; } } - grouping vsanmgr_Entity-group { + grouping glean_Entity-group { + description "Glean Entity"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // Vsan represents a generic CktEp - container vsan-items { - list Vsan-list { - key "encap"; - - // Added containment: Prefix=vsan - // Acquired From Package vsan - uses vsan_Vsan-group; - } - } - - // From CLI side, for removal of a vlan-vsan map, - // "no fcoe vsan" is used. Since no vsan-id is passed in this CLI, - // the RtBdVsanMap MO cannot be used (since tDn is unknown) "BdVsanCfg" MO used for Vlan-Vsan map removal request from CLI side - container bdvsancfg-items { - - // Added containment as a singleton: Prefix=bdvsancfg - // Acquired From Package vsan - uses vsan_BdVsanCfg-group; - } - - // This objects hold per vsan-mgr instance information. - // There is only one instance of vsan-mgr running in the system today + // Holds glean instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package vsanmgr - uses vsanmgr_Inst-group; + uses glean_Inst-group; + description "Glean Instance"; } } - grouping vsan_Vsan-group { - leaf encap { - type string; - } + grouping glean_Inst-group { + description "Glean Instance"; - // Fabric encap identifying vsan:CktEp - // vsan domain id - // Type is an MO-Defined-Type - leaf id { - description "Vsan ID"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type fc_VsanId; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // admin state - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Administrator State"; + config "false"; - // Type is an MO-Defined-Type - type vsan_AdminSt; + type nw_AdminSt; + description "Admin State"; } - // oper state - // Type is an MO-Defined-Type - leaf operSt { + // Instance controls + leaf ctrl { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type vsan_OperSt; + type nw_InstCtrl; + description "Controls"; } - // Vsan loadbalancing type - // Type is an MO-Defined-Type - leaf lbType { - description "Loadbalancing Type"; + // This objects hold per glean domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "encap"; - // Type is an MO-Defined-Type - type vsan_LbType; - } - leaf vsanName { - type string; + uses glean_Dom-group; + description "Domain list"; + } + description "Domain"; } + } - // Type is an MO-Defined-Type - leaf interop { - description "Iterop Mode value"; - - // Type is an MO-Defined-Type - type vsan_InteropMode; + grouping glean_Dom-group { + description "Domain"; + leaf encap { + config "false"; + type string; + description "VRF Encapsulation"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Rel-def target from BdVsanMap - // Inherited From vsan:Vsan - container rtBdVsanMap-items { - - // Added containment as a singleton: Prefix=rtBdVsanMap - // Acquired From Package l2 - uses l2_RtBdVsanMap_target-group; - } - - // Rel-def from VsanIfMap - container rsvsanIfMap-items { - - // Abstract containment of rsvsanIfMap derived from vsan:Vsan - list RsVsanIfMap-list { - key "tDn"; - - // Added containment: Prefix=rsvsanIfMap - // Acquired From Package vsan - uses vsan_RsVsanIfMap_source-group; - } - } - - // Rel-def from VsanPathAtt - container rsvsanPathAtt-items { - - // Abstract containment of rsvsanPathAtt derived from vsan:Vsan - list RsVsanPathAtt-list { + // This objects hold per glean l2 domain (BD) information + container bd-items { + list BD-list { config "false"; - key "tDn"; + key "encap"; - // Added containment: Prefix=rsvsanPathAtt - // Acquired From Package vsan - uses vsan_RsVsanPathAtt_source-group; + uses glean_BD-group; + description "Domain list"; } + description "Domain"; } } - grouping vsan_BdVsanCfg-group { + grouping glean_BD-group { + description "Domain"; + leaf encap { + config "false"; + type string; + description "BD Encapsulation"; + } - // vlanId to be apply Config on - // Type is an MO-Defined-Type - leaf vlanId { - description "Vlan id"; + // Gateway mac + leaf gwMac { + config "false"; - // Type is an MO-Defined-Type - type l2_DomId; + type glean_GwMac; + description "Gateway MAC"; } - // create-flag to track - // Type is an MO-Defined-Type - leaf createFlag { - description "Created/removed status"; + // Fabric multicast group + leaf fmcastGrp { + config "false"; - // Type is an MO-Defined-Type - type fc_CreateState; + type mcast_GrpIp; + description "Fabric Multicast Group"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - } - grouping vsanmgr_Inst-group { - - // Number of Configured VSANS - // Type is an MO-Defined-Type - leaf numConfiguredVsan { - config "false"; - description "Current Configured Vsan Count"; + // This objects holds gateway information. For a given BD, + // there could be multiple gateways + container gw-items { + list Gateway-list { + config "false"; + key "ip"; - // Type is an MO-Defined-Type - type fc_NumVsans; + uses glean_Gateway-group; + description "Gateway list"; + } + description "Gateway"; } + } + + grouping glean_Gateway-group { + description "Gateway"; - // Number of Successfully Created VSANS - // Type is an MO-Defined-Type - leaf numCreatedVsan { + // Gateway ip address + leaf ip { config "false"; - description "Current Created Vsan Count"; - // Type is an MO-Defined-Type - type fc_NumVsans; + type glean_GwIp; + description "Gateway IP Address"; } + } + + grouping hmm_Entity-group { + description "Holds Host Mobility Manager (HMM) Entity information."; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // - Admin state leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Operational state + leaf operSt { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_EntOperSt; + description "Operational State"; } - // VsanMbrIf class - container vsanmbr-items { - list VsanMbrIf-list { - config "false"; - key "id"; + // Fabric Forwarding Object + container fwdinst-items { - // Added containment: Prefix=vsanmbr - // Acquired From Package vsanmgr - uses vsanmgr_VsanMbrIf-group; - } + uses hmm_FwdInst-group; + description "The object that represents the HMM Fabric Forwarding Instance (responsible for host detection and mobility). Currently only one HMM Forwarding instance is supported."; } } - grouping vsanmgr_VsanMbrIf-group { - - // if-index (Secondary Key) - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface Index"; - - // Type is an MO-Defined-Type - type nw_IfId; + grouping hmm_FwdInst-group { + description "The object that represents the HMM Fabric Forwarding Instance (responsible for host detection and mobility). Currently only one HMM Forwarding instance is supported."; + leaf amac { + type address_Mac; + description "Anycast Gateway MAC address."; } - - // port static, non trunking vsan - // Type is an MO-Defined-Type - leaf staticVsan { - config "false"; - description "Static VSAN"; - - // Type is an MO-Defined-Type - type fc_VsanId; + leaf limitVlanMac { + type uint16 { + range "5..2048"; + } + default "2048"; + description "This is to limit the number of hosts learnt by HMM in the same subnet with same MAC information."; } - // allowed-vsan-bitmap used to track vsans that are configured on the interface - // Type is an MO-Defined-Type - leaf allowedVsanBmp { - config "false"; - description "Allowed Vsan Bitmap"; + // selective-host-probe + leaf selHostProbe { - // Type is an MO-Defined-Type - type fc_VsanBitmap; + type hmm_Boolean; + description "When set to True, host mobility will be triggered when a remote host route exists irrespective of the sequence id."; + } + leaf adminDist { + type uint16 { + range "1..255"; + } + default "190"; + description "Set the administrative distance for HMM "; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - - grouping fm_Entity-group { - // MPLS Static feature information - container mplsstatic-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=mplsstatic - // Acquired From Package fm - uses fm_MplsStatic-group; + type nw_AdminSt; + description "Admin State"; } - // MPLS OAM feature information - container mplsoam-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=mplsoam - // Acquired From Package fm - uses fm_MplsOam-group; + type nw_InstCtrl; + description "Controls"; } - // SRTE feature information - container srte-items { + // Fabric Forwarding Interface Object + container if-items { + list FwdIf-list { + key "id"; - // Added containment as a singleton: Prefix=srte - // Acquired From Package fm - uses fm_SRTE-group; + uses hmm_FwdIf-group; + description "Object that holds HMM Fabric Forwarding mode information related to an Interface. list"; + } + description "Object that holds HMM Fabric Forwarding mode information related to an Interface."; } - // MPLS Segment-routing feature information - container mplssgmntrtg-items { + // Fabric Forwarding EVPN Object + container evpn-items { - // Added containment as a singleton: Prefix=mplssgmntrtg - // Acquired From Package fm - uses fm_MplsSgmntRtg-group; + uses hmm_FwdEvpn-group; + description "The object that represents the HMM Fabric Forwarding EVPN instance. This model is not available unless EVPN is configured. Currently only one HMM Forwarding EVPN instance is supported."; } - // MPLS LDP feature information - container mplsldp-items { + // Holds HMM vrf information + container tenant-items { + list TenantDb-list { + config "false"; + key "vrfName"; - // Added containment as a singleton: Prefix=mplsldp - // Acquired From Package fm - uses fm_MplsLdp-group; + uses hmm_TenantDb-group; + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network. list"; + } + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network."; } + } - // MPLS L3vpn feature information - container mplsl3vpn-items { + grouping hmm_FwdIf-group { + description "Object that holds HMM Fabric Forwarding mode information related to an Interface."; - // Added containment as a singleton: Prefix=mplsl3vpn - // Acquired From Package fm - uses fm_MplsL3vpn-group; + // Forwarding mode + leaf mode { + + type hmm_FwdMode; + description "HMM Fabric Forwarding mode information for the interface."; } - // MPLS EVPN feature information - container mplsevpn-items { + leaf name { - // Added containment as a singleton: Prefix=mplsevpn - // Acquired From Package fm - uses fm_MplsEvpn-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // BGP feature information - container bgp-items { + leaf descr { - // Added containment as a singleton: Prefix=bgp - // Acquired From Package fm - uses fm_Bgp-group; + type naming_Descr1024; + description "Description"; } - // HMM feature information - container hmm-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=hmm - // Acquired From Package fm - uses fm_Hmm-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // EVPN feature information - container evpn-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=evpn - // Acquired From Package fm - uses fm_Evpn-group; + type nw_IfAdminSt; + description "Admin State"; } - // NGOAM feature information - container ngoam-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=ngoam - // Acquired From Package fm - uses fm_Ngoam-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // POE feature information - container poe-items { - - // Added containment as a singleton: Prefix=poe - // Acquired From Package fm - uses fm_Poe-group; + grouping hmm_FwdEvpn-group { + description "The object that represents the HMM Fabric Forwarding EVPN instance. This model is not available unless EVPN is configured. Currently only one HMM Forwarding EVPN instance is supported."; + leaf ddHmmoves { + type uint16 { + range "1..1000"; + } + default "5"; + description "User Setting to mark a host as duplicate if it does ddHmmoves number of moves."; + } + leaf ddHnsecs { + type uint16 { + range "2..36000"; + } + default "180"; + description "User Setting to mark a host as duplicate if it does ddHmmoves moves in ddHnsecs seconds."; + } + leaf dhrtimeout { + type uint16 { + range "30..36000"; + } + default "30"; + description "User Setting to periodically (dhrtimeout seconds) check if a Duplicate marked Host is no longer duplicate."; + } + leaf dhrcount { + type uint16 { + range "1..3000"; + } + default "5"; + description "Number of times (dhrcount) to periodically check if a Duplicate marked Host is no longer duplicate."; } - // MSDP feature information - container msdp-items { + leaf name { - // Added containment as a singleton: Prefix=msdp - // Acquired From Package fm - uses fm_Msdp-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // DHCP feature information - container dhcp-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=dhcp - // Acquired From Package fm - uses fm_Dhcp-group; + type nw_AdminSt; + description "Admin State"; } - // Interface-Vlan feature information - container ifvlan-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=ifvlan - // Acquired From Package fm - uses fm_InterfaceVlan-group; + type nw_InstCtrl; + description "Controls"; } + } - container bashshell-items { - - // Added containment as a singleton: Prefix=bashshell - // Acquired From Package fm - uses fm_BashShell-group; + grouping hmm_TenantDb-group { + description "Holds Tenant (VRF) statistics information. This includes Tenant state and number of hosts in the Tenant network."; + leaf vrfName { + config "false"; + type string; + description "Tenant (VRF) Name"; + } + leaf vrfState { + config "false"; + type string; + description "Tenant (VRF) State."; + } + leaf vniId { + config "false"; + type uint32; + description "VNI (Virtual Network Identifier) ID of the Tenant."; + } + leaf refCount { + config "false"; + type uint32; + description "Reference count to keep track of the number of references to this tenant."; } - container scpserver-items { + // Holds Address family information + container af-items { + list TenantDBAf-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=scpserver - // Acquired From Package fm - uses fm_ScpServer-group; + uses hmm_TenantDBAf-group; + description "Holds information related to a particular Tenant Address Family. list"; + } + description "Holds information related to a particular Tenant Address Family."; } + } - container lldp-items { + grouping hmm_TenantDBAf-group { + description "Holds information related to a particular Tenant Address Family."; - // Added containment as a singleton: Prefix=lldp - // Acquired From Package fm - uses fm_Lldp-group; - } + // Address family type + leaf type { + config "false"; - // LACP feature information - container lacp-items { + type bgp_AfT; + description "Tenant Address Family type (IPv4/IPv6)."; + } + leaf tblState { + config "false"; + type string; + description "Tenant Table State."; + } + leaf localHosts { + config "false"; + type uint32; + description "Number of locally connected hosts in the Tenant network."; + } + leaf remoteHosts { + config "false"; + type uint32; + description "remote hosts"; + } + leaf aggregates { + config "false"; + type uint32; + description "aggregates"; + } + } - // Added containment as a singleton: Prefix=lacp - // Acquired From Package fm - uses fm_Lacp-group; + grouping bd_Entity-group { + description "System BD"; + leaf descr { + config "false"; + type string; + description "BD"; } - // Nxapi feature information - container nxapi-items { + // If false, value is explicitly set globally for all SVIs + leaf sysDefaultSVIAutostate { - // Added containment as a singleton: Prefix=nxapi - // Acquired From Package fm - uses fm_Nxapi-group; + type bd_DefaultSVIAutoState; + description "Disable/enable autoState for SVI interface"; } - // Telnet feature information - container telnet-items { + // This object holds vlan config information + container vlanconfig-items { + list VlanConfig-list { + key "accEncap"; - // Added containment as a singleton: Prefix=telnet - // Acquired From Package fm - uses fm_Telnet-group; + uses l2_VlanConfig-group; + description "Vlan Configuration list"; + } + description "Vlan Configuration"; } - // Nxdb feature information - container nxdb-items { + // Layer2 Bridge-domain. Domain with regular ports and/or + // epg-vlans as members. + container bd-items { - // Added containment as a singleton: Prefix=nxdb - // Acquired From Package fm - uses fm_Nxdb-group; + list BD-list { + key "fabEncap"; + + uses l2_BD-group; + description "Bridge Domain list"; + } + description "Bridge Domain"; } - // VnSegment feature information - container vnsegment-items { + // 802.1q Vlan + container vlan-items { - // Added containment as a singleton: Prefix=vnsegment - // Acquired From Package fm - uses fm_VnSegment-group; + list CktEp-list { + key "encap"; + + uses vlan_CktEp-group; + description "Vlan list"; + } + description "Vlan"; } - // Tacacs+ feature information - container tacacsplus-items { + // Vxlan circuit + container vxlan-items { - // Added containment as a singleton: Prefix=tacacsplus - // Acquired From Package fm - uses fm_Tacacsplus-group; + list CktEp-list { + config "false"; + key "encap"; + + uses vxlan_CktEp-group; + description "Vxlan list"; + } + description "Vxlan"; } - // UDLD feature information - container udld-items { + container resvlan-items { - // Added containment as a singleton: Prefix=udld - // Acquired From Package fm - uses fm_Udld-group; + uses resmgr_ResVlan-group; + description "Resmgr vlan reservation"; } + } - // NAT feature information - container nat-items { - - // Added containment as a singleton: Prefix=nat - // Acquired From Package fm - uses fm_Nat-group; + grouping l2_VlanConfig-group { + description "Vlan Configuration"; + leaf accEncap { + type string; + description "Access Encapsulation"; } - // VRRPv3 feature information - container vrrpv3-items { + // Vlan Mac learn enable/disable + leaf vlanMacLearn { - // Added containment as a singleton: Prefix=vrrpv3 - // Acquired From Package fm - uses fm_Vrrpv3-group; + type l2fm_Learning; + description "VlanMacLearn state"; } - // VRRP feature information - container vrrp-items { + container ipqos-items { - // Added containment as a singleton: Prefix=vrrp - // Acquired From Package fm - uses fm_Vrrp-group; + uses ipqos_Entity-group; + description "QoS configuration space"; } + } - // HSRP feature information - container hsrp-items { + grouping ipqos_Entity-group { + description "QoS configuration space"; - // Added containment as a singleton: Prefix=hsrp - // Acquired From Package fm - uses fm_Hsrp-group; + leaf statsState { + + type ipqos_statsState; + description "Globally enable/disable QoS statistics"; } - // Netflow feature information - container netflow-items { + leaf qosPoliciesStatsState { - // Added containment as a singleton: Prefix=netflow - // Acquired From Package fm - uses fm_Netflow-group; + type ipqos_statsState; + default "disabled"; + description + "Globally enable/disable + QoS-Policies statistics"; + } + leaf dynamicBufferShare { + type boolean; + description "Globally enable/disable dynamic-buffer-sharing"; + } + leaf mode { + type boolean; + description "System QoS Mode, sets the mode"; } - // Analytics feature information - container analytics-items { + container statClear-items { - // Added containment as a singleton: Prefix=analytics - // Acquired From Package fm - uses fm_Analytics-group; + uses ipqos_StatClear-group; + description "clear qos statistics"; } - // BFD feature information - container bfd-items { + // Queuing QoS + container queuing-items { - // Added containment as a singleton: Prefix=bfd - // Acquired From Package fm - uses fm_Bfd-group; + uses ipqos_Queuing-group; + description "Queuing type QoS"; } - // Tunnel feature information - container tunnelif-items { + // Network QoS + container nw-items { - // Added containment as a singleton: Prefix=tunnelif - // Acquired From Package fm - uses fm_Tunnelif-group; + uses ipqos_NwQoS-group; + description "Network QoS"; } - // nv overlay feature information - container nvo-items { + // Default QoS + container dflt-items { - // Added containment as a singleton: Prefix=nvo - // Acquired From Package fm - uses fm_Nvo-group; + uses ipqos_DefaultQoS-group; + description "Default type QoS"; } - // PBR feature information - container pbr-items { + container globalpriorflowctrl-items { - // Added containment as a singleton: Prefix=pbr - // Acquired From Package fm - uses fm_Pbr-group; + uses ipqos_GlobalPriorFlowCtrl-group; + description "Global priority flow control"; } - // PIM feature information - container pim-items { + // Logging level + container loglevel-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package fm - uses fm_Pim-group; + uses ipqos_LogLevel-group; + description "configure logging level parameters"; } + } - // NGMVPN feature information - container ngmvpn-items { + grouping ipqos_StatClear-group { + description "clear qos statistics"; - // Added containment as a singleton: Prefix=ngmvpn - // Acquired From Package fm - uses fm_Ngmvpn-group; + // StatClear pmap type + leaf pmapType { + + type ipqos_policyType; + description "policy-map type"; } - // VPC feature information - container vpc-items { + // StatClear pmap diretion + leaf direction { - // Added containment as a singleton: Prefix=vpc - // Acquired From Package fm - uses fm_Vpc-group; + type ipqos_policyDirection; + description "policy-map direction input or output"; } - // VTP feature information - container vtp-items { + // StatClear ethernet list + leaf ethernet { - // Added containment as a singleton: Prefix=vtp - // Acquired From Package fm - uses fm_Vtp-group; + type ipqos_ethernetList; + description "list of ethernet interfaces"; } - container pvlan-items { + // StatClear vlan list + leaf vlan { - // Added containment as a singleton: Prefix=pvlan - // Acquired From Package fm - uses fm_Pvlan-group; + type ipqos_vlanList; + description "list of vlan interfaces"; } - // NTP feature information - container ntpd-items { + // StatClear portChan list + leaf portChan { - // Added containment as a singleton: Prefix=ntpd - // Acquired From Package fm - uses fm_Ntpd-group; + type ipqos_portChanList; + description "list of port-channel interfaces"; } + leaf timeStamp { + type union { + type string; + type uint64; + } + description "INTERNAL:time stamp"; + } + } - // Telemetry feature information - container telemetry-items { + grouping ipqos_Queuing-group { + description "Queuing type QoS"; - // Added containment as a singleton: Prefix=telemetry - // Acquired From Package fm - uses fm_Telemetry-group; + // service policy applied on target + container policy-items { + + uses ipqos_ServPol-group; + description "service policy instance"; } - // OSPF feature information - container ospf-items { + // class-map + container c-items { - // Added containment as a singleton: Prefix=ospf - // Acquired From Package fm - uses fm_Ospf-group; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Holds "vendor interop controller" info - container vctrl-items { + // policy-map + container p-items { - // Added containment as a singleton: Prefix=vctrl - // Acquired From Package fm - uses fm_VendorCntrl-group; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // macsec feature information - container macsec-items { + container copyPMap-items { - // Added containment as a singleton: Prefix=macsec - // Acquired From Package fm - uses fm_Macsec-group; + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } + } - // Npiv feature information - container npiv-items { + grouping ipqos_ServPol-group { + description "service policy instance"; - // Added containment as a singleton: Prefix=npiv - // Acquired From Package fm - uses fm_Npiv-group; + // Ingress direction + container in-items { + + uses ipqos_Ingress-group; + description "Ingress direction"; } - // PIM6 feature information - container pim6-items { + // Ingress direction + container out-items { - // Added containment as a singleton: Prefix=pim6 - // Acquired From Package fm - uses fm_Pim6-group; + uses ipqos_Egress-group; + description "Egress direction"; } + } - // ISIS feature information - container isis-items { + grouping ipqos_Ingress-group { + description "Ingress direction"; - // Added containment as a singleton: Prefix=isis - // Acquired From Package fm - uses fm_Isis-group; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses ipqos_If-group; + description "Interface list"; + } + description "Interface"; } - // HW_Telemetry feature information - container hwtelemetry-items { + // system qos + container sys-items { - // Added containment as a singleton: Prefix=hwtelemetry - // Acquired From Package fm - uses fm_HwTelemetry-group; + uses ipqos_System-group; + description "System"; } - // Port Security feature information - container portsec-items { + // Service policy instance + container pmap-items { - // Added containment as a singleton: Prefix=portsec - // Acquired From Package fm - uses fm_PortSec-group; + uses ipqos_Inst-group; + description "Service Policy name"; } } - grouping fm_MplsStatic-group { + grouping ipqos_If-group { + description "Interface"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // interface name string + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type nw_IfId; + description "Interface name in a short form. eth1/1 or pc1"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + leaf delIntfBit { + type boolean; + default "false"; + description "hidden delete Interface bit for internal use"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // Service policy instance + container pmap-items { - // Type is an MO-Defined-Type - type fm_Instance; - } - leaf conflictingFeature { - config "false"; - type string; + uses ipqos_Inst-group; + description "Service Policy name"; } + container cmap-items { + list Stats-list { + config "false"; + key "cmapName statType"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { + uses ipqos_Stats-group; + description "QoS statistics list"; + } + description "QoS statistics"; + } + container queCmap-items { + list QueuingStats-list { config "false"; - key "id"; + key "cmapName statType"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_QueuingStats-group; + description "Queuing statistics list"; } + description "Queuing statistics"; } } - grouping fm_ServiceInstance-group { - leaf id { + grouping ipqos_Inst-group { + description "Service Policy name"; + + // name of policy map + leaf name { + + type ipqos_PMapName; + description "Policy-map Name"; + } + leaf stats { + type boolean; + default "true"; + description "turn on/off statistics"; + } + leaf configStatus { config "false"; type uint32; + description "Configuration status"; } - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status of the instance"; + container rspolicyInstToPMap-items { - // Type is an MO-Defined-Type - type fm_InstOperState; + uses ipqos_RsPolicyInstToPMap_source-group; + description "Link from policy instance to policy-map"; } } - grouping fm_MplsOam-group { + grouping ipqos_Stats-group { + description "QoS statistics"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cmapName { + config "false"; - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Class map name"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf statType { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_StatsType; + description "QoS statistics type"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pmapName { config "false"; - description "Maximum number of instances supported"; - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PMapName; + description "Policy map name"; } - leaf conflictingFeature { + leaf dropPackets { config "false"; - type string; + type uint64; + description "Drop packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf dropBytes { + config "false"; + type uint64; + description "Drop byte count"; } - } - - grouping fm_SRTE-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf txPackets { + config "false"; + type uint64; + description "Transmit packet count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf txBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Transmit byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf conformBytes { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Conform byte count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf exceedBytes { + config "false"; + type uint64; + description "Exceed byte count"; + } + leaf violateBytes { + config "false"; + type uint64; + description "Violate byte count"; } } - grouping fm_MplsSgmntRtg-group { + grouping ipqos_QueuingStats-group { + description "Queuing statistics"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cmapName { + config "false"; - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Class map name"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf statType { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_StatsType; + description "QoS statistics type"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pmapName { config "false"; - description "Maximum number of instances supported"; - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PMapName; + description "Policy map name"; } - leaf conflictingFeature { + leaf dropPackets { config "false"; - type string; + type uint64; + description "Drop packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf dropBytes { + config "false"; + type uint64; + description "Drop byte count"; } - } - - grouping fm_MplsLdp-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf txPackets { + config "false"; + type uint64; + description "Transmit packet count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf txBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Transmit byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf currQueueDepth { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Current queue depth in bytes"; } - leaf conflictingFeature { + leaf maxQueueDepth { config "false"; - type string; + type uint64; + description "Maximum queue depth in bytes"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf ingQDropPackets { + config "false"; + type uint64; + description "Ingress Queue Drop packet count"; } - } - - grouping fm_MplsL3vpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf ingQDepthBytes { + config "false"; + type uint64; + description "Ingress Queue Depth in bytes"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf randDropBytes { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Random detect drop byte count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf randDropPackets { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Random detect drop packet count"; } - leaf conflictingFeature { + leaf randEcnMarkedPackets { config "false"; - type string; + type uint64; + description "Random detect ECN Marked packet count"; } - - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf pfcTxPpp { + config "false"; + type uint64; + description "Priority-based Flow Control Per Packet Pause Transmitted count"; } - } - - grouping fm_MplsEvpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + leaf pfcRxPpp { + config "false"; + type uint64; + description "Priority-based Flow Control Per Packet Pause Received count"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf pfcwdShutdownCount { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint64; + description "Priority-based Flow Control WatchDog Queue Shutdown Count"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf pfcwdRestoredCount { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint64; + description "Priority-based Flow Control WatchDog Queue Restored Count"; } - leaf conflictingFeature { + leaf pfcwdFlushedPackets { config "false"; - type string; + type uint64; + description "Priority-based Flow Control WatchDog Queue Flushed Packets"; } } - grouping fm_Bgp-group { + grouping ipqos_System-group { + description "System"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Service policy instance + container pmap-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Inst-group; + description "Service Policy name"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_Egress-group { + description "Egress direction"; - // Type is an MO-Defined-Type - type fm_OperState; + // Target interface + container intf-items { + list If-list { + key "name"; + + uses ipqos_If-group; + description "Interface list"; + } + description "Interface"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // system qos + container sys-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_System-group; + description "System"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Service policy instance + container pmap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Inst-group; + description "Service Policy name"; + } + } + + grouping ipqos_CMapEntity-group { + description "ClassMap"; + container name-items { + list CMapInst-list { + key "name"; + + uses ipqos_CMapInst-group; + description "Class map instance list"; } + description "Class map instance"; } } - grouping fm_Hmm-group { + grouping ipqos_CMapInst-group { + description "Class map instance"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // name of class map + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Name of class-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // type of matching + leaf matchType { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_QoSMatchType; + description "Match-any, match-all or match-first"; } - - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // access-group + container acl-items { + list Acl-list { + key "name"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Acl-group; + description "Match ACL list"; } + description "Match ACL"; } - } - grouping fm_Evpn-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // dscp matching + container dscp-items { + list Dscp-list { + key "val"; - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dscp-group; + description "Match dscp list"; + } + description "Match dscp"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // ip rtp matching + container ipRtp-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_IpRtp-group; + description "Match ip rtp"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // packet length matching + container packetLength-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PacketLength-group; + description "Match Match packet length"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // cos marking + container cos-items { + list Cos-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_Cos-group; + description "Match cos list"; } + description "Match cos"; } - } - grouping fm_Ngoam-group { + // mpls experimental matching + container mplsExperimental-items { + list MPLSExperimental-list { + key "val"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + uses ipqos_MPLSExperimental-group; + description "Match mpls experimental list"; + } + description "Match mpls experimental"; + } - // Type is an MO-Defined-Type - type fm_AdminState; + // precedence matching + container precedence-items { + list Precedence-list { + key "val"; + + uses ipqos_Precedence-group; + description "Match precedence list"; + } + description "Match precedence"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // protocol matching + container protocol-items { + list Protocol-list { + key "val"; - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_Protocol-group; + description "Match protocol list"; + } + description "Match protocol"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // description + container Description-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_Description-group; + description "description"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // NOT dscp matching + container dscpNot-items { + list NotDscp-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_NotDscp-group; + description "Match not dscp list"; } + description "Match not dscp"; } - } - - grouping fm_Poe-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // NOT cos matching + container cosNot-items { + list NotCos-list { + key "val"; - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_NotCos-group; + description "Match not cos list"; + } + description "Match not cos"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // NOT mpls experimental matching + container mplsExperimentalNot-items { + list NotMPLSExperimental-list { + key "val"; - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_NotMPLSExperimental-group; + description "Match not mpls experimental list"; + } + description "Match not mpls experimental"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // NOT precedence matching + container precedenceNot-items { + list NotPrecedence-list { + key "val"; - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_NotPrecedence-group; + description "Match not precedence list"; + } + description "Match not precedence"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // NOT protocol matching + container protocolNot-items { + list NotProtocol-list { + key "val"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_NotProtocol-group; + description "Match not protocol list"; } + description "Match not protocol"; } - } - - grouping fm_Msdp-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // NOT ip rtp matching + container ipRtpNot-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_NotIpRtp-group; + description "Match not ip rtp"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // packet length matching + container packetLengthNot-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_NotPacketLength-group; + description "Match not packet length"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // match qos-group + container grp-items { + list QoSGrp-list { + key "id"; - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_QoSGrp-group; + description "Match qos-group list"; + } + description "Match qos-group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container rsclassMapToPolicyMap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + list RsClassMapToPolicyMap-list { + key "tDn"; + + uses ipqos_RsClassMapToPolicyMap_source-group; + description "policy-maps using this class-map list"; } + description "policy-maps using this class-map"; } } - grouping fm_Dhcp-group { + grouping ipqos_Acl-group { + description "Match ACL"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // ACL to match + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type acl_Name; + description "Match using ACL"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_Dscp-group { + description "Match dscp"; + + // dscp value + leaf val { + + type ipqos_Dscp; + description "Dscp value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + grouping ipqos_IpRtp-group { + description "Match ip rtp"; + leaf configStatus { config "false"; - description "Maximum number of instances supported"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; + } + } - // Type is an MO-Defined-Type - type fm_Instance; + grouping ipqos_PacketLength-group { + description "Match Match packet length"; + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Cos-group { + description "Match cos"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // cos value + leaf val { + + type ipqos_Cos; + description "Cos value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_InterfaceVlan-group { + grouping ipqos_MPLSExperimental-group { + description "Match mpls experimental"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // mpls experimental value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MPLSExperimental; + description "MPLS experimental value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_Precedence-group { + description "Match precedence"; - // Type is an MO-Defined-Type - type fm_Instance; + // dscp value + leaf val { + + type ipqos_Prec; + description "Precedence value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Protocol-group { + description "Match protocol"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // protocol value + leaf val { + + type ipqos_Protocol; + description "Protocol value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_BashShell-group { + grouping ipqos_Description-group { + description "description"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // description value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_DescStr; + description "Description string"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_NotDscp-group { + description "Match not dscp"; - // Type is an MO-Defined-Type - type fm_OperState; - } + // dscp value + leaf val { - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + type ipqos_Dscp; + description "Not dscp value"; + } + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_NotCos-group { + description "Match not cos"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // cos value + leaf val { + + type ipqos_Cos; + description "Not cos value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_ScpServer-group { + grouping ipqos_NotMPLSExperimental-group { + description "Match not mpls experimental"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // mpls experimental value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MPLSExperimental; + description "Not mpls experimental value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_NotPrecedence-group { + description "Match not precedence"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // precedence value + leaf val { + + type ipqos_Prec; + description "Not precedence value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Lldp-group { + grouping ipqos_NotProtocol-group { + description "Match not protocol"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // protocol value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Protocol; + description "Not protocol value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + grouping ipqos_NotIpRtp-group { + description "Match not ip rtp"; + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + leaf range { + type string; + description "range string values"; + } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; - - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + grouping ipqos_NotPacketLength-group { + description "Match not packet length"; + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + leaf range { + type string; + description "range string values"; } } - grouping fm_Lacp-group { + grouping ipqos_QoSGrp-group { + description "Match qos-group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // QoS-Group ID + leaf id { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "QoS group ID"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; - } + grouping ipqos_PMapEntity-group { + description "PolicyMap"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // policy map instance + container name-items { + list PMapInst-list { + key "name"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_PMapInst-group; + description "Policy map instance list"; } + description "Policy map instance"; } } - grouping fm_Nxapi-group { + grouping ipqos_PMapInst-group { + description "Policy map instance"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // policy map name + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PMapName; + description "Name of policy-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + // type of matching + leaf matchType { + + type ipqos_QoSMatchType; + description "Match-any, match-all or match-first"; + } + leaf refCount { config "false"; - description "Operational status"; + type uint32; + description "policy-map reference count"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } - // Type is an MO-Defined-Type - type fm_OperState; + // match a class-map + container cmap-items { + list MatchCMap-list { + key "name"; + + uses ipqos_MatchCMap-group; + description "Match class-map list"; + } + description "Match class-map"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // description + container Description-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_Description-group; + description "description"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { + container rtipqosPolicyInstToPMap-items { + + list RtIpqosPolicyInstToPMap-list { config "false"; - key "id"; + key "tDn"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_RtIpqosPolicyInstToPMap_target-group; + description "Link from policy instance to policy-map list"; } + description "Link from policy instance to policy-map"; + } + + container rtclassMapToPolicyMap-items { + + uses ipqos_RtClassMapToPolicyMap_target-group; + description "policy-maps using this class-map"; } } - grouping fm_Telnet-group { + grouping ipqos_MatchCMap-group { + description "Match class-map"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // use class-map with this name + leaf name { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CMapName; + description "Match using class-map"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf prevCMap { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_MatchCMapName; + description "Insert after the given class-map"; } - } - - grouping fm_Nxdb-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf nextCMap { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_MatchCMapName; + description "Insert before the given class-map"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } - // Type is an MO-Defined-Type - type fm_OperState; + container setCos-items { + + uses ipqos_SetCos-group; + description "Set Cos"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // set MTU + container mtu-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetMTU-group; + description "Set MTU"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Aggregate Policer + container aggr-items { + list AggregatePolicer-list { + key "policerName"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_AggregatePolicer-group; + description "Aggregate Policer for policy list"; } + description "Aggregate Policer for policy"; } - } - - grouping fm_VnSegment-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set precedence + container setPrecedence-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_SetPrecedence-group; + description "Set Precedence"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // set dscp + container setDscp-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_SetDscp-group; + description "Set Dscp"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // set qos-group + container setGrp-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetQoSGrp-group; + description "Set QoS-Group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // set dlb-disable + container setDlbDisable-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_SetDlbDisable-group; + description "Set dlb-disable"; } - } - - grouping fm_Tacacsplus-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // queue-limit + container QueueLimit-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_QueueLimit-group; + description "Queue limit"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // pause priority group + container pausepg-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_PausePg-group; + description "Pause Priority Group"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // pause + container pause-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Pause-group; + description "Pause PFC COS"; } - } - grouping fm_Udld-group { + // dpp + container dpp-items { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dpp-group; + description "Configure Dynamic Packet Prioritization"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // bandwidth + container setBW-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_SetBW-group; + description "Set bandwidth"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // bandwidth + container setRemBW-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_SetRemBW-group; + description "Set remaining bandwidth"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // shape traffic + container shape-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Shape-group; + description "Shape traffic"; } - } - - grouping fm_Nat-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // police + container police-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Police-group; + description "Police traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // priority + container prio-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_Priority-group; + description "Traffic class priority"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + container RandDet-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_RandomDetect-group; + description "Set random detect"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container RandDetNonEcn-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_RandomDetectNonEcn-group; + description "Set random detect non ECN thresholds"; } - } - - grouping fm_Vrrpv3-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set DCTCP + container dctcp-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_Dctcp-group; + description "Data Center TCP"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // burst-detect + container burstdetect-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_BurstDetect-group; + description "Burst detect"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // burst-detect state + container burstdetectstate-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_BurstDetectState-group; + description "Burst detect"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // afd + container afd-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Afd-group; + description "configure AFD parameters"; } } - grouping fm_Vrrp-group { + grouping ipqos_SetCos-group { + description "Set Cos"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Cos value + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CosNewNone; + description "Cos value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; - } + grouping ipqos_SetMTU-group { + description "Set MTU"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // MTU value + leaf value { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_MTU; + description "Set MTU value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Hsrp-group { + grouping ipqos_AggregatePolicer-group { + description "Aggregate Policer for policy"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Policer name + leaf policerName { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PolicerName; + description "Policer name for Aggregate/Shared-Policer QoS"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_SetPrecedence-group { + description "Set Precedence"; - // Type is an MO-Defined-Type - type fm_Instance; + // Precedence value + leaf val { + + type ipqos_Prec; + description "Precedence value"; + } + leaf tunnel { + type boolean; + description "tunnel on or off"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_SetDscp-group { + description "Set Dscp"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // Dscp value + leaf val { + + type ipqos_Dscp; + description "Dscp value"; + } + leaf tunnel { + type boolean; + description "tunnel on or off"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Netflow-group { + grouping ipqos_SetQoSGrp-group { + description "Set QoS-Group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // QoS-Group ID + leaf id { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "QoS group ID"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + grouping ipqos_SetDlbDisable-group { + description "Set dlb-disable"; + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_QueueLimit-group { + description "Queue limit"; + + // queue-limit + leaf QueueLimitVal { + + type ipqos_QueueLimit; + description "Value in bytes/kbytes/mbytes"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // queue-limit unit + leaf QueueLimitUnit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_QueueLimitUnit; + description "Bytes/kbytes/mbytes"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // queue-limit dynamic + leaf dynamic { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_QueueLimitDynamic; + description "Queue-limit dynamic value"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Analytics-group { + grouping ipqos_PausePg-group { + description "Pause Priority Group"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PriorityGrpVal; + description "Priority Group value"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; + type uint32; + description "Configuration status"; + } + } - // Type is an MO-Defined-Type - type fm_OperState; + grouping ipqos_Pause-group { + description "Pause PFC COS"; + + // buffer-size + leaf bufferSize { + + type ipqos_BuffSize; + description "size in bytes"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // pause-threshold + leaf pauseThreshold { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_XoffBytes; + description "xoff bytes"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // resume-threshold + leaf resumeThreshold { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_XonBytes; + description "xon bytes"; + } + leaf pfcCos0 { + type boolean; + description "Configure pfc-cos 0 value"; + } + leaf pfcCos1 { + type boolean; + description "Configure pfc-cos 1 value"; + } + leaf pfcCos2 { + type boolean; + description "Configure pfc-cos 2 value"; + } + leaf pfcCos3 { + type boolean; + description "Configure pfc-cos 3 value"; + } + leaf pfcCos4 { + type boolean; + description "Configure pfc-cos 4 value"; + } + leaf pfcCos5 { + type boolean; + description "Configure pfc-cos 5 value"; + } + leaf pfcCos6 { + type boolean; + description "Configure pfc-cos 6 value"; + } + leaf pfcCos7 { + type boolean; + description "Configure pfc-cos 7 value"; + } + leaf receive { + type boolean; + description "Configure pause receive only mode"; + } + leaf noDrop { + type boolean; + description "Configure pause no-drop mode"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Bfd-group { + grouping ipqos_Dpp-group { + description "Configure Dynamic Packet Prioritization"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // set-qos-group + leaf setQosGroup { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_CosNewNone; + description "QoS Group Value"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_SetBW-group { + description "Set bandwidth"; - // Type is an MO-Defined-Type - type fm_OperState; - } + // Percent of available bandwidth + leaf val { - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { + type ipqos_Percent; + description "Available bandwidth"; + } + leaf configStatus { config "false"; - description "Maximum number of instances supported"; - - // Type is an MO-Defined-Type - type fm_Instance; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_SetRemBW-group { + description "Set remaining bandwidth"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + // Percent of available bandwidth + leaf val { + + type ipqos_Percent; + description "Remaining bandwidth"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Tunnelif-group { + grouping ipqos_Shape-group { + description "Shape traffic"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf min { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ShapeRate; + description "Minimum shape rate"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf minRateUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "Minimum shape rate unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf max { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ShapeRate; + description "Maximum shape rate"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf maxRateUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_RateUnit; + description "Maximum shape rate unit"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Nvo-group { + grouping ipqos_Police-group { + description "Police traffic"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf cirRate { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceRate; + description "CIR"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf cirUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "CIR unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf bcRate { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_BurstRate; + description "CIR burst"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf bcUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_BurstRateUnit; + description "CIR burst unit"; } - } - - grouping fm_Pbr-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf pirRate { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceRate; + description "PIR"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf pirUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RateUnit; + description "PIR unit"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf beRate { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_BurstRate; + description "PIR burst"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf beUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_BurstRateUnit; + description "PIR burst unit"; } - } - grouping fm_Pim-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf conformAction { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_PoliceAction; + description "Conform action"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf conformSetCosTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_Cos; + description "set cos for conforming traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf conformSetDscpTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_Dscp; + description "set dscp for conforming traffic"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf conformSetPrecTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Prec; + description "set precedence for conforming traffic"; } - } - - grouping fm_Ngmvpn-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf conformSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_QoSGrpId; + description "set qos-group for conforming traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf exceedAction { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_PoliceAction; + description "Exceed action"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf exceedSetCosTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_Cos; + description "set cos for exceeding traffic"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf exceedSetDscpTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Dscp; + description "set dscp for exceeding traffic"; } - } - grouping fm_Vpc-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf exceedSetPrecTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Prec; + description "set precedence for exceeding traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf exceedSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_QoSGrpId; + description "set qos-group for exceeding traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf violateAction { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PoliceAction; + description "Violate action"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf violateSetCosTransmit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Cos; + description "set cos for violating traffic"; } - } - - grouping fm_Vtp-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + leaf violateSetDscpTransmit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_Dscp; + description "set dscp for violating traffic"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + leaf violateSetPrecTransmit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_Prec; + description "set precedence for violating traffic"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf violateSetQosGrpTransmit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_QoSGrpId; + description "set qos-group for violating traffic"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } + } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + grouping ipqos_Priority-group { + description "Traffic class priority"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + leaf level { + + type ipqos_PriorityLevel; + description "Optional priority level"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Pvlan-group { + grouping ipqos_RandomDetect-group { + description "Set random detect"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // minimun thresold + leaf minThreshold { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThreshVal; + description "min threshold"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // minimun thresold unit + leaf minThresholdUnit { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_ThreshUnit; + description "min threshold"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // max threshold + leaf maxThreshold { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThreshVal; + description "max threshold"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // max thresold unit + leaf maxThresholdUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_ThreshUnit; + description "max threshold"; } - } - grouping fm_Ntpd-group { + // drop availability + leaf dropAvail { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + type ipqos_DropAvailRange; + description "drop availability range"; + } - // Type is an MO-Defined-Type - type fm_AdminState; + // threshold weight + leaf weight { + + type ipqos_Weight; + description "weight range"; + } + leaf capAverage { + type boolean; + description "cap average"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // mesh or burst optimization + leaf optimization { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_RandOptType; + description "random optimization type"; + } + leaf ecn { + type boolean; + description "ecn flag"; } } - grouping fm_Telemetry-group { + grouping ipqos_RandomDetectNonEcn-group { + description "Set random detect non ECN thresholds"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // minimun thresold + leaf minThresholdNonEcn { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThreshVal; + description "non ecn min threshold"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // minimun thresold unit + leaf minThresholdUnitNonEcn { - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_ThreshUnit; + description "non ecn min threshold"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // max threshold + leaf maxThresholdNonEcn { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThreshVal; + description "non ecn max threshold"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // max thresold unit + leaf maxThresholdUnitNonEcn { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_ThreshUnit; + description "non ecn max threshold"; + } + + // drop availability + leaf dropAvailNonEcn { + + type ipqos_DropAvailRange; + description "drop availability range"; } } - grouping fm_Ospf-group { + grouping ipqos_Dctcp-group { + description "Data Center TCP"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // ecn-threshold value + leaf ecnThreshold { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ecnThresh; + description "Set ecn-threshold value"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + grouping ipqos_BurstDetect-group { + description "Burst detect"; - // Type is an MO-Defined-Type - type fm_OperState; + // rise-threshold + leaf riseThreshold { + + type ipqos_Threshold; + description "Rise Threshold value for Micro burst detection"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // rise-threshold unit + leaf riseThresUnit { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_ThresUnit; + description "Rise Threshold Unit for Micro burst detection"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // fall-threshold + leaf fallThreshold { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_Threshold; + description "Fall Threshold value for Micro burst detection"; } - } - - grouping fm_VendorCntrl-group { - // To enable/disable feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // fall-threshold unit + leaf fallThresUnit { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_ThresUnit; + description "Fall Threshold Unit for Micro burst detection"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } } - grouping fm_Macsec-group { + grouping ipqos_BurstDetectState-group { + description "Burst detect"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Enable + leaf val { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_BurstState; + description "Burst detect state enabled/disabled"; } - - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf configStatus { config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; + type uint32; + description "Configuration status"; } + } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + grouping ipqos_Afd-group { + description "configure AFD parameters"; - // Type is an MO-Defined-Type - type fm_Instance; + // queue-desired + leaf queueDesiredVal { + + type ipqos_QueueDesired; + description "Approximate Fair Discard value"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // queue-desired unit + leaf queueDesiredUnit { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_QueueDesiredUnit; + description "Units for Approximate Fair Discard value"; + } + leaf ecn { + type boolean; + description "Approximate Fair Discard ECN flag"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; } } - grouping fm_Npiv-group { - - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; - - // Type is an MO-Defined-Type - type fm_AdminState; - } + grouping ipqos_CopyPMap-group { + description "Copy qos objects"; - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { + leaf lastFrom { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type fm_OperState; + type ipqos_PMapName; + description "Name of source policy-map to copy from"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf lastTo { + config "false"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_PMapName; + description "Name of policy-map resulting from copying"; } } - grouping fm_Pim6-group { + grouping ipqos_NwQoS-group { + description "Network QoS"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // service policy applied on target + container policy-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_ServPol-group; + description "service policy instance"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // class-map + container c-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // policy-map + container p-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + container copyPMap-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } } - grouping fm_Isis-group { + grouping ipqos_DefaultQoS-group { + description "Default type QoS"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // service policy applied on target + container policy-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_ServPol-group; + description "service policy instance"; } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; + // class-map + container c-items { - // Type is an MO-Defined-Type - type fm_OperState; + uses ipqos_CMapEntity-group; + description "ClassMap"; } - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + // policy-map + container p-items { - // Type is an MO-Defined-Type - type fm_Instance; + uses ipqos_PMapEntity-group; + description "PolicyMap"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // Shared-Policer QoS + container sharedpolicer-items { + list SharedPolicer-list { + key "policerName"; - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; + uses ipqos_SharedPolicer-group; + description "Shared-Policer QoS list"; } + description "Shared-Policer QoS"; } - } - - grouping fm_HwTelemetry-group { - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + container copyPMap-items { - // Type is an MO-Defined-Type - type fm_AdminState; + uses ipqos_CopyPMap-group; + description "Copy qos objects"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; - } + grouping ipqos_SharedPolicer-group { + description "Shared-Policer QoS"; - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf maxInstance { - config "false"; - description "Maximum number of instances supported"; + leaf policerName { - // Type is an MO-Defined-Type - type fm_Instance; + type ipqos_PolicerName; + description "Policer name for Aggregate/Shared-Policer QoS"; } - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + // police + container police-items { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + uses ipqos_Police-group; + description "Police traffic"; } } - grouping fm_PortSec-group { + grouping ipqos_GlobalPriorFlowCtrl-group { + description "Global priority flow control"; - // To enable/disable feature - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // override interface + leaf overrideInterface { - // Type is an MO-Defined-Type - type fm_AdminState; + type ipqos_OverrideIntfMode; + description "Enable/Disable priority-flow-control override-interface mode off"; } + } - // Operational state of the service. - // Its in enabled state even if one instance is enabled - // Inherited From fm:Feature - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fm_OperState; - } + grouping ipqos_LogLevel-group { + description "configure logging level parameters"; - // This object contains instance specific operational information - // common to features. This MO is created when there is a service instance - // and removed when the service instance is removed. - container service-items { - list ServiceInstance-list { - config "false"; - key "id"; + leaf loggingLevel { - // Added containment: Prefix=service - // Acquired From Package fm - uses fm_ServiceInstance-group; - } + type ipqos_LoggingLevel; + description "configure Logging Level value"; } } - grouping fset_FeatureSet-group { - leaf name { + grouping l2_BD-group { + description "Bridge Domain"; + leaf fabEncap { + type string; + description "The Layer 2 bridge-domain Fabric encapsulation (VNID), input format is vlan-id "; + } + leaf accEncap { type string; + description "The Layer 2 access encapsulation (VLAN or VNID), input format is vxlan-vnid"; } - // To uninstall/install - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin status"; + // Enable cross connect on vlan + leaf xConnect { - // Type is an MO-Defined-Type - type fset_AdminState; + type l2_XConnect; + description "Enable Cross Connect on VLAN"; } - leaf force { + leaf longName { type boolean; + default "false"; + description "Enable or disable long name of 128 characters for VLAN"; } - // Operational state of the featureSet - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational status"; - - // Type is an MO-Defined-Type - type fset_OperState; - } - } - - grouping installer_Install-group { - - // Target Image Path - // Type is an MO-Defined-Type - leaf imgPath { - description "Full image path for target installation image"; + // This represents the parameter used by the node + // (i.e. Leaf) for enabling forwarding modes (route + // or bridge or both). Default is enable both + leaf fwdMode { - // Type is an MO-Defined-Type - type reference_URI; - } - leaf imgName { - config "false"; - type string; + type l2_FwdMode; + description "The Layer 2 bridge-domain parameter mode used by the node for enabling forwarding modes"; } - // To choose between Install all or impact or Abort install - // Type is an MO-Defined-Type - leaf operation { - description "Select install or impact operation or abort current installation"; + // This represents the parameter used by the node + // (i.e. Leaf) for enabling classical bridging or + // bridging with IP. Default is bridge with IP + leaf bridgeMode { - // Type is an MO-Defined-Type - type installer_InstOper; + type l2_BridgeMode; + description "Bridging Mode"; } - // Disruptive or Non-disruptive installation - // Type is an MO-Defined-Type - leaf installType { - description "Perform non-disruptive installation"; + // Forwarding controls + leaf fwdCtrl { - // Type is an MO-Defined-Type - type installer_InstType; + type l2_FwdCtrl; + description "The Layer 2 bridge-domain forwarding controls"; } - - // Forcefully upgrade BIOS - // Type is an MO-Defined-Type - leaf biosForce { - description "Forcefully upgrade the BIOS version"; - - // Type is an MO-Defined-Type - type installer_InstEnum; + leaf bdDefDn { + config "false"; + type string; + description "The bridge domain name"; } - // Stage of the install task - // Type is an MO-Defined-Type - leaf stage { + // Controller Id + leaf controllerId { config "false"; - description "Stage of installation operation"; - // Type is an MO-Defined-Type - type installer_Stage; + type aggregate_ControllerIdBitmap; + description "Controller ID for Vlan"; } - // Upgrade error string - // Type is an MO-Defined-Type - leaf upgErr { - config "false"; - description "Install upgrade error value"; + // BdState + leaf BdState { - // Type is an MO-Defined-Type - type installer_InstErr; + type l2_DomAdminSt; + description "Bridge Domain State can be active or suspended"; } - leaf upgErrStr { + leaf BdOperName { config "false"; type string; + description "OperName"; } - // Installation table - container mod-items { - list InstallUpgTable-list { - config "false"; - key "module"; - - // Added containment: Prefix=mod - // Acquired From Package installer - uses installer_InstallUpgTable-group; - } - } - } + // Vlan mac packet-classify + leaf macPacketClassify { - grouping installer_InstallUpgTable-group { - leaf module { - config "false"; - type uint32; + type l2_PktClassify; + description "Vlan mac packet classify"; } - // Per Module Upg table row - container modtype-items { - list ModUpgTable-list { - config "false"; - key "modType"; + leaf name { - // Added containment: Prefix=modtype - // Acquired From Package installer - uses installer_ModUpgTable-group; + type naming_Name256 { + length "1..64"; } + description "Vlan name that can be configured using name cli"; } - } - grouping installer_ModUpgTable-group { - leaf module { - config "false"; - type uint32; + // domain id + leaf id { + + type l2_DomId; + description "Domain ID"; } - // module Type - // Type is an MO-Defined-Type - leaf modType { + // Internal domain id + leaf hwId { config "false"; - description "Module type"; - // Type is an MO-Defined-Type - type installer_InstModType; - } - leaf runVer { - config "false"; - type string; + type l2_DomId; + description "Hardware Resource ID"; } - leaf targetVer { - config "false"; - type string; + + // Vlan mode + leaf mode { + + type l2_DomMode; + description "Mode"; } - // Upgrade Required YES/NO - // Type is an MO-Defined-Type - leaf upgReq { - config "false"; - description "Upgrade required result"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type installer_InstEnum; + type l2_DomAdminSt; + description "Admin State"; } - // Status of the mod install task - // Type is an MO-Defined-Type - leaf upgStatus { + // oper state + leaf operSt { config "false"; - description "Upgrade status of each module"; - // Type is an MO-Defined-Type - type installer_UpgStatusType; + type l2_DomOperSt; + description "Operational State"; } - leaf failStr { + leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; } - } - grouping interface_Entity-group { - leaf descr { - config "false"; - type string; + // Controls + leaf ctrl { + + type l2_DomCtrl; + description "Controls"; } - // Physical ethernet interface information holder - container phys-items { - list PhysIf-list { + // VLAN Membership Interface + container member-items { + list VlanMemberIf-list { + config "false"; key "id"; - // Added containment: Prefix=phys - // Acquired From Package l1 - uses l1_PhysIf-group; + uses l2_VlanMemberIf-group; + description "VLAN membership interface list"; } + description "VLAN membership interface"; } - // Aggregated interface, collection of physical ports; - // aka port channel - container aggr-items { - list AggrIf-list { - key "id"; + // Multicast group entity, this refers to the multicast + // group entity that each tenant's bridge domain uses to + // flood its traffic over the fabric + container fmgrp-items { + list Grp-list { + key "addr"; - // Added containment: Prefix=aggr - // Acquired From Package pc - uses pc_AggrIf-group; + uses fmcast_Grp-group; + description "Group list"; } + description "Group"; } - // Routed concrete interface (aka routed port) - container rtd-items { - list RtdIf-list { - key "id"; + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; - // Added containment: Prefix=rtd - // Acquired From Package l3 - uses l3_RtdIf-group; + uses epm_Db-group; + description "Database list"; } + description "Database"; } - // Routed loopback interface - container lb-items { - list LbRtdIf-list { - key "id"; + // 802.1q Vlan + container vlan-items { + list CktEp-list { + key "encap"; - // Added containment: Prefix=lb - // Acquired From Package l3 - uses l3_LbRtdIf-group; + uses vlan_CktEp-group; + description "Vlan list"; } + description "Vlan"; } - // Routed encap interface (aka sub if) - container encrtd-items { - list EncRtdIf-list { - key "id"; + // Vxlan circuit + container vxlan-items { + list CktEp-list { + config "false"; + key "encap"; - // Added containment: Prefix=encrtd - // Acquired From Package l3 - uses l3_EncRtdIf-group; + uses vxlan_CktEp-group; + description "Vxlan list"; } + description "Vxlan"; } - // Routed Vlan Interface (SVI) Svi:If gets created for L2:BD, immediately after - // l2:BD is attached to l3:Ctx. Use case: Communication - // between two Hosts in different BDs. This is achieved - // through routing. The resource limit of svi is same - // as the resource limit of BD - container svi-items { - list If-list { - key "id"; + container evi-items { - // Added containment: Prefix=svi - // Acquired From Package svi - uses svi_If-group; - } + uses nvo_Evi-group; + description "Configuration of EVI under VLAN"; } - container tunnelif-items { - list If-list { - key "id"; - // Added containment: Prefix=tunnelif - // Acquired From Package tunnelif - uses tunnelif_If-group; + container rsextBD-items { + + list RsExtBD-list { + key "tDn"; + + uses l2_RsExtBD_source-group; + description "External BD Attachment list"; } + description "External BD Attachment"; } - } - grouping l1_PhysIf-group { + container rsbdVsanMap-items { - // Administrative port link Transmit Reset - // Type is an MO-Defined-Type - leaf linkTransmitReset { - description "Link Transmit Reset"; + list RsBdVsanMap-list { + key "tDn"; - // Type is an MO-Defined-Type - type l1_LinkTransmitReset; + uses l2_RsBdVsanMap_source-group; + } } - // Administrative port link debounce interval for link debounce Link up - // Type is an MO-Defined-Type - leaf linkDebounceLinkUp { - description "Link Debounce Interval - LinkUp Event"; - - // Type is an MO-Defined-Type - type l1_LinkDebounceLinkUp; - } + container rtfvDomIfConn-items { - // port speed-group - // Type is an MO-Defined-Type - leaf speedGroup { - description "Speed Group"; + list RtFvDomIfConn-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l1_SpeedGroup; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; + } + description "Domain Interface Attachment"; } - // Beacon port state - // Type is an MO-Defined-Type - leaf beacon { - description "Beacon State"; + container dbgVlanStats-items { - // Type is an MO-Defined-Type - type l1_Beacon; + uses l2_VlanStats-group; + description "Vlan counters"; } + } - // Voice VLAN ID - // Type is an MO-Defined-Type - leaf voiceVlanId { - description "Voice VLAN ID"; + grouping l2_VlanMemberIf-group { + description "VLAN membership interface"; - // Type is an MO-Defined-Type - type l1_VoiceVlanId; + leaf id { + config "false"; + + type nw_IfId; + description "Interface Identifier"; } - // Voice vlan type - // Type is an MO-Defined-Type - leaf voiceVlanType { - description "Voice vlan type"; + leaf vlan { + config "false"; - // Type is an MO-Defined-Type - type l1_VoiceVlanType; + type l2_DomId; + description "VLAN"; } + } - // Switchport Priority Extend COS - // Type is an MO-Defined-Type - leaf voicePortCos { - description "Voice Port Cos"; + grouping fmcast_Grp-group { + description "Group"; - // Type is an MO-Defined-Type - type l1_VoicePortCos; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Switchport Priority Extend trust - // Type is an MO-Defined-Type - leaf voicePortTrust { - description "Voice Port Trust"; + // Multicast group address + leaf addr { - // Type is an MO-Defined-Type - type l1_VoicePortTrust; + type mcast_GrpIp; + description "Multicast Group IP Address"; } + } - // FEC knob - // Type is an MO-Defined-Type - leaf FECMode { - description "FEC Mode"; + grouping epm_Db-group { + description "Database"; - // Type is an MO-Defined-Type - type l1_FECMode; + // Type of the database + leaf type { + config "false"; + + type epm_DbT; + description "Type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Ip Ep record + container ip-items { + list IpEp-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + uses epm_IpEp-group; + description "IP Endpoint list"; } + description "IP Endpoint"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Mac Ep record + container mac-items { + list MacEp-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_IfId; + uses epm_MacEp-group; + description "MAC Endpoint list"; + } + description "MAC Endpoint"; } + } - // Switching state - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf switchingSt { + grouping epm_IpEp-group { + description "IP Endpoint"; + leaf addr { config "false"; - description "Switching State"; - - // Type is an MO-Defined-Type - type l1_SwitchingSt; + type address_Ip; + description "Address"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // Identifier of the logical interface + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type l1_Speed; + type nw_IfId; + description "Path"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // Ep flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type l1_Duplex; + type epm_EpFlags; + description "Endpoint Properties and State"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + container rtIpEpRslttoIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_AutoNeg; + uses eptrk_RtIpEpRslttoIpEpAtt_target-group; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + container rtMacEpRslttoIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_Mtu; + uses eptrk_RtMacEpRslttoIpEpAtt_target-group; } + } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; - - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + grouping epm_MacEp-group { + description "MAC Endpoint"; + leaf addr { + config "false"; + type address_Mac; + description "Address"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type l1_Mode; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { - description "Administrative port layer"; + // Identifier of the logical interface + leaf ifId { + config "false"; - // Type is an MO-Defined-Type - type l1_Layer; + type nw_IfId; + description "Path"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // Ep flags + leaf flags { + config "false"; - // Type is an MO-Defined-Type - type l1_Mdix; + type epm_EpFlags; + description "Endpoint Properties and State"; } - - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; - - // Type is an MO-Defined-Type - type l1_Delay; + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Endpoint Create TimeStamp"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + container rsmacEpToIpEpAtt-items { - // Type is an MO-Defined-Type - type l1_LinkDebounce; - } + list RsMacEpToIpEpAtt-list { + config "false"; + key "tDn"; - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + uses epm_RsMacEpToIpEpAtt_source-group; + } + } + } - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + grouping vlan_CktEp-group { + description "Vlan"; + leaf fabEncap { + type string; + description "The encapsulation used in the fabric to implement flood control"; } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + leaf name { - // Type is an MO-Defined-Type - type l1_Bw; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + // domain id + leaf id { - // Type is an MO-Defined-Type - type l1_Medium; + type l2_DomId; + description "Domain ID"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + // Internal domain id + leaf hwId { + config "false"; - // Type is an MO-Defined-Type - type l1_InheritBw; + type l2_DomId; + description "Hardware Resource ID"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + // Vlan mode + leaf mode { - // Type is an MO-Defined-Type - type l1_SpanMode; + type l2_DomMode; + description "Mode"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_LinkLog; + type l2_DomAdminSt; + description "Admin State"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + // oper state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + type l2_DomOperSt; + description "Operational State"; } - leaf routerMac { - type address_Mac; - default "0"; + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + // Controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_PortT; + type l2_DomCtrl; + description "Controls"; } - - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; - - // Type is an MO-Defined-Type - type l1_PortUsage; + leaf encap { + type string; + description "Encap identifying the epg"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Enforcement preference + leaf enfPref { - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type l2_EnfPref; + description "Switching Preference"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // It represents the classId for the traffic + // terminating on this circuit + leaf pcTag { - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + type actrl_PcTag; + description "It represents the classId for the traffic terminating on this circuit"; } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; + // It represents the default qos group for the + // traffic on this circuit + leaf qosPrio { - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + type qos_TenantPrio; + description "It represents the default qos group for the traffic on this circuit"; } - - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; - - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + leaf epgDn { + type string; + description "EPG DN"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + // Static Mac end point + container mac-items { + list MacEp-list { + config "false"; + key "mac"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + uses l2_MacEp-group; + description "Desired MAC Endpoint list"; + } + description "Desired MAC Endpoint"; } - container priorflowctrl-items { + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=priorflowctrl - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrl-group; + uses epm_Db-group; + description "Database list"; + } + description "Database"; } - container priorflowctrlwd-items { - - // Added containment as a singleton: Prefix=priorflowctrlwd - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrlWd-group; - } + container rtfvDomIfConn-items { - container physExtd-items { + list RtFvDomIfConn-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=physExtd - // Acquired From Package l1 - uses l1_PhysIfExtended-group; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; + } + description "Domain Interface Attachment"; } - // EEE policy - container eeep-items { + container rsvlanEppAtt-items { - // Added containment as a singleton: Prefix=eeep - // Acquired From Package l1 - uses l1_EeeP-group; + uses vlan_RsVlanEppAtt_source-group; + description "Epp Attachment"; } + } - // Storm control policy - container stormctrlp-items { - - // Added containment as a singleton: Prefix=stormctrlp - // Acquired From Package l1 - uses l1_StormCtrlP-group; + grouping l2_MacEp-group { + description "Desired MAC Endpoint"; + leaf mac { + config "false"; + type address_Mac; + description "MAC"; } - // Load interval policy - container loadp-items { + // The interface on which the endpoint is reachable + leaf if { + config "false"; - // Added containment as a singleton: Prefix=loadp - // Acquired From Package l1 - uses l1_LoadP-group; + type nw_IfId; + description "Interface"; } - // Vlan Mapping policy - container vlanmapping-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=vlanmapping - // Acquired From Package l1 - uses l1_VlanMapping-group; + type epm_EpOperSt; + description "Operational State"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Physical interface information holder - container phys-items { - - // Added containment as a singleton: Prefix=phys - // Acquired From Package ethpm - uses ethpm_PhysIf-group; - } + container rtfvEpDefRefToL2MacEp-items { - // AggrMbrIf class - container aggrmbrif-items { + list RtFvEpDefRefToL2MacEp-list { + config "false"; + key "tDn"; - // Added containment as a singleton: Prefix=aggrmbrif - // Acquired From Package pc - uses pc_AggrMbrIf-group; + uses fv_RtFvEpDefRefToL2MacEp_target-group; + } } + } - container multisiteiftracking-items { + grouping vxlan_CktEp-group { + description "Vxlan"; - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; + // Multicast group address (GIPO'), Outer multicast + // encapsulation ip address for this layer2 domain + leaf mcastEncap { + config "false"; + + type mcast_GrpIp; + description "Multicast Encapsulation"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + leaf name { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Rel-def target from InbandConf - // Inherited From l1:PhysIf - container rtInbandConf-items { + // domain id + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtInbandConf - // Acquired From Package l2 - uses l2_RtInbandConf_target-group; + type l2_DomId; + description "Domain ID"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - container rtextConf-items { + // Internal domain id + leaf hwId { + config "false"; - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + type l2_DomId; + description "Hardware Resource ID"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - container rtbrConf-items { + // Vlan mode + leaf mode { + config "false"; - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + type l2_DomMode; + description "Mode"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - container rtfvNodePortAtt-items { + // admin state + leaf adminSt { + config "false"; - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + type l2_DomAdminSt; + description "Admin State"; + } - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + // oper state + leaf operSt { + config "false"; + + type l2_DomOperSt; + description "Operational State"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; } + description "Creation Timestamp"; } - // Rel-def target from mbrIfs - // Inherited From l1:PhysIf - container rtmbrIfs-items { + // Controls + leaf ctrl { + config "false"; - // Added containment as a singleton: Prefix=rtmbrIfs - // Acquired From Package pc - uses pc_RtMbrIfs_target-group; + type l2_DomCtrl; + description "Controls"; + } + leaf encap { + config "false"; + type string; + description "Encap identifying the epg"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - container rtvrfMbr-items { + // Enforcement preference + leaf enfPref { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type l2_EnfPref; + description "Switching Preference"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - container rtphysRtdConf-items { + // It represents the classId for the traffic + // terminating on this circuit + leaf pcTag { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type actrl_PcTag; + description "It represents the classId for the traffic terminating on this circuit"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // It represents the default qos group for the + // traffic on this circuit + leaf qosPrio { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type qos_TenantPrio; + description "It represents the default qos group for the traffic on this circuit"; + } + leaf epgDn { + config "false"; + type string; + description "EPG DN"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Abstraction of epm database + container db-items { + list Db-list { config "false"; - key "tDn"; + key "type"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses epm_Db-group; + description "Database list"; } + description "Database"; } - // Rel-def target from tunnelMbrIfs - // Inherited From l1:PhysIf - container rttunnelTunnelMbrIfs-items { + container rtfvDomIfConn-items { - // Abstract containment of rttunnelTunnelMbrIfs derived from l1:PhysIf - list RtTunnelTunnelMbrIfs-list { + list RtFvDomIfConn-list { config "false"; key "tDn"; - // Added containment: Prefix=rttunnelTunnelMbrIfs - // Acquired From Package tunnel - uses tunnel_RtTunnelTunnelMbrIfs_target-group; + uses fv_RtFvDomIfConn_target-group; + description "Domain Interface Attachment list"; } + description "Domain Interface Attachment"; } - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - container rtLsNodeToIf-items { - - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; - } - - container dbgIfIn-items { + container rsvxlanEppAtt-items { - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + uses vxlan_RsVxlanEppAtt_source-group; + description "Epp Attachement"; } + } - container dbgIfOut-items { - - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + grouping nvo_Evi-group { + description "Configuration of EVI under VLAN"; + leaf auto { + type boolean; + description "Enable/disable automatic assignment of EVI value"; } - - container dbgIpIn-items { - - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + leaf operId { + config "false"; + type uint32; + description "EVI Identifier for VLAN."; } - - container dbgDot1d-items { - - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + leaf operVlanId { + config "false"; + type uint32; + description "Indicates identifier of VLAN under which EVI is configured."; } - - container dbgEtherStats-items { - - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + leaf operLabel { + config "false"; + type uint32; + description "Indicates local label assigend to EVI."; } - container dbgDot3Stats-items { + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + type nvo_VniStateT; + description "Indicates operational state of EVI"; } + } - container dbgIfHCIn-items { - - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + grouping resmgr_ResVlan-group { + description "Resmgr vlan reservation"; + leaf sysVlan { + type uint16 { + range "0..4032"; + } + default "3968"; + description "System vlan reservation"; } - - container dbgIfHCOut-items { - - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + leaf blockVal64 { + type boolean; + default "false"; + description "System vlan block64 reservation"; } - - container dbgIpv6IfStats-items { - - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + leaf currentmin { + config "false"; + type uint16; + description "Current min system vlan configured"; } - - container dbgIfStorm-items { - - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + leaf currentmax { + config "false"; + type uint16; + description "Current max system vlan configured"; } } - grouping ipqos_PriorFlowCtrl-group { + grouping icam_Entity-group { + description "ICAM Entity"; - // priority mode - // Type is an MO-Defined-Type - leaf mode { - description "priority-flow-control mode on/off/auto"; + // MO1 : ICAM inst + container inst-items { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlMode; + uses icam_Inst-group; + description "ICAM Instance"; } } - grouping ipqos_PriorFlowCtrlWd-group { + grouping icam_Inst-group { + description "ICAM Instance"; - // priority mode - // Type is an MO-Defined-Type - leaf watchDogInterval { - description "watch dog internal on/off"; + // 1.1 ICAM interval + leaf interval { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlWdIntvl; - } - leaf disableAction { - type boolean; - default "true"; + type icam_Interval; + description "iCAM Monitor Interval"; } - // priority mode - // Type is an MO-Defined-Type - leaf interfaceMutiplier { - description "shutdown mutlipler value"; + leaf numinterval { - // Type is an MO-Defined-Type - type ipqos_PriorFlowCtrlWdIntfMulti; + type icam_NumInterval; + description "Num of Intervals in History"; } - } - - grouping l1_PhysIfExtended-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // MO2 :ICAM Scale MO + container scale-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses icam_Scale-group; + description "ICAM Scale Monitoring Instance"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // MO7 :.Entries + container entclass-items { + list Entries-list { + key "class module instance"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses icam_Entries-group; + description "ICAM Entries to monitor list"; + } + description "ICAM Entries to monitor"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // MO8 :.Resources + container resclass-items { + list Resource-list { + key "class module instance"; - // Type is an MO-Defined-Type - type nw_IfId; + uses icam_Resource-group; + description "ICAM Resources to monitor list"; + } + description "ICAM Resources to monitor"; } - // Port-type that the interface is facing - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf portTypeFabric { - description "Identifies if or not the port is a fabric-facing port"; - - // Type is an MO-Defined-Type - type l1_PortTypeFabric; - } + // Ephemeral data + container mod-items { - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + // Ephemeral data + list MonACLEntries-list { + config "false"; + key "module inst feature value_mask"; - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + uses icam_MonACLEntries-group; + description "iCAM ACL Entries Information list"; + } + description "iCAM ACL Entries Information"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportBlock { - description "Disable/enable switchport block on interface"; - - // Type is an MO-Defined-Type - type l1_SwitchportBlock; - } + // Ephemeral data + container aclresmod-items { - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportMacLearn { - description "Disable/enable mac learning on interface"; + // Ephemeral data + list AclResEntries-list { + config "false"; + key "module inst tcam_no bank_no"; - // Type is an MO-Defined-Type - type l1_switchportMacLearn; + uses icam_AclResEntries-group; + description "iCAM ACL TCAM Resource Utilization list"; + } + description "iCAM ACL TCAM Resource Utilization"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf flowCtrl { - description "Disable/enable flowcontrol block on interface"; - - // Type is an MO-Defined-Type - type l1_FlowControl; + grouping icam_Scale-group { + description "ICAM Scale Monitoring Instance"; + leaf info { + type uint16 { + range "1..100"; + } + default "80"; + description "Info threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastLevel { - description "storm-control broadcast level"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf warning { + type uint16 { + range "1..100"; + } + default "90"; + description "Warning threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastPPS { - description "storm-control broadcast PPS"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf critical { + type uint16 { + range "1..100"; + } + default "100"; + description "Critical threshold percent"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastLevel { - description "storm-control multicast level"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf scalecfg { + type boolean; + description "Scale feature config [yes/no]"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastPPS { - description "storm-control multicast PPS"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf scaleoper { + config "false"; + type boolean; + description "fake data for oper icam fix"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastLevel { - description "Storm control unicast level"; + // MO3 :ICAM L2 Scale MO + container l2scale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + uses icam_L2Scale-group; + description "ICAM Layer 2 Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastPPS { - description "Storm control unicast PPS"; + // MO4 :ICAM Unicast Scale MO + container unicastscale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + uses icam_UnicastScale-group; + description "ICAM Unicast Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlAct { - description "Storm control action"; + // MO5 :ICAM Multicast Scale MO + container multicastscale-items { - // Type is an MO-Defined-Type - type l1_StormCtrlAct; + uses icam_MulticastScale-group; + description "ICAM Multicast Scale Monitoring"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf bufferBoost { - description "Disable/enable buffer boost on interface"; + // MO6 :ICAM VxLAN Scale MO + container vxlanscale-items { - // Type is an MO-Defined-Type - type l1_BufferBoost; + uses icam_VxlanScale-group; + description "ICAM VxLAN Scale Monitoring"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportVirtualEthernetBridge { - description "Disable/enable switchport virtual ethernet bridge on interface"; - - // Type is an MO-Defined-Type - type l1_SwitchportVirtualEthernetBridge; + grouping icam_L2Scale-group { + description "ICAM Layer 2 Scale Monitoring"; + leaf mstInstLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP MST-Instance Limit"; } - - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf allowMultiTag { - description "Allow Multitag"; - - // Type is an MO-Defined-Type - type l1_AllowMultiTag; + leaf mstVportLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP MST-Vport Limit"; } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf rpvstVportLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP RPVST-Vport Limit"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + leaf rpvstVlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP RPVST-Vlans Limit"; + } + leaf isoPortvlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching STP isolated Port Vlans Limit"; + } + leaf infraMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale L2 switching Infra MAC-address Limit"; + } + leaf vlancountLimit { + type uint32 { + range "0..4294967295"; } + description "Scale L2 switching VLANs VLAN-count Limit"; } } - grouping l1_EeeP-group { - - // Administrative state for port energy efficient - // ethernet (EEE) @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeState { - description "Administrative state for port energy efficient ethernet (EEE) on the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEEState; + grouping icam_UnicastScale-group { + description "ICAM Unicast Scale Monitoring"; + leaf arpcountLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ARP ARP-count Limit"; } - - // Administrative port EEE Lpi threshold @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeLpi { - description "Administrative port EEE LPI threshold of the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEELpi; + leaf bfdSessionLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing BFD Session Limit"; } - - // Administrative port EEE Latency @@@ Its by default enabled on every port. No need to - // @@@ expose in IFC - // Type is an MO-Defined-Type - leaf eeeLat { - description "Administrative port EEE latency of the Layer 1 physical interface"; - - // Type is an MO-Defined-Type - type l1_EEELatency; + leaf bgpNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing BGP Neighbour Limit"; } - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf eigrpNeighLimit { + type uint32 { + range "0..4294967295"; } + description "Scale Unicast Routing EIGRP Neighbour Limit"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf eigrpRouteLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing EIGRP Route Limit"; } - } - - grouping l1_StormCtrlP-group { - - // Packet Type - Unknwn Ucast/Mcast/Bcast - // Type is an MO-Defined-Type - leaf type { - description "Packet Type"; - - // Type is an MO-Defined-Type - type l1_PktT; + leaf hsrpGrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing HSRP group Limit"; } - - // Max Rate Allowed - // Type is an MO-Defined-Type - leaf rate { - description "Traffic rate"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf ipv6NdLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing IPv6 ND-count Limit"; } - - // Max Burst Rate Allowed - // Type is an MO-Defined-Type - leaf burstRate { - description "Max burst size"; - - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + leaf isisAdjLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS Adj Limit"; } - - // Max Rate Allowed in PPS - // Type is an MO-Defined-Type - leaf ratePps { - description "Tarffic rate"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPps; + leaf isisBdfSessLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS BFD Session Limit"; } - - // Max Burst Rate Allowed in PPS - // Type is an MO-Defined-Type - leaf burstPps { - description "Max burst size"; - - // Type is an MO-Defined-Type - type l1_StormCtrlPps; + leaf isisRouteLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing ISIS Route Limit"; } - } - - grouping l1_LoadP-group { - - // Administrative port load interval 1 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl1 { - description "Port load sampling interval 1 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl; + leaf ospfAreaLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF Area Limit"; } - - // Administrative port load interval 2 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl2 { - description "Port load sampling interval 2 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl; + leaf ospfLsaLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF LSA Limit"; } - - // Administrative port load interval 3 @@@ This property gets filled up from stats policy - // Type is an MO-Defined-Type - leaf loadIntvl3 { - description "Port load sampling interval 3 at bit-rate and packet-rate statistics"; - - // Type is an MO-Defined-Type - type l1_LoadIntvl3; + leaf ospfNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing OSPF Neighbour Limit"; + } + leaf pbrAcev4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv4 ACEs Limit"; + } + leaf pbrAcev6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv6 ACEs Limit"; + } + leaf pbrAcev4v6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR IPv4v6 ACEs Limit"; + } + leaf pbrIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Interface Limit"; + } + leaf pbrNhPerPcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Next Hope Per Policy Limit"; + } + leaf pbrSeqPerPcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PBR Sequences Per Policy Limit"; + } + leaf routingHostV4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing Host Route V4 Limit"; + } + leaf routingHostV6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing Host Route V6 Limit"; + } + leaf routingLpmV4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing LPM Route V4 Limit"; + } + leaf routingLpmV6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing LPM Route V6 Limit"; + } + leaf vrfCountLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRF count Limit"; + } + leaf vrrpGrpIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRP Grp per interface Limit"; + } + leaf vrrp3GrpIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRP3 Grp per interface Limit"; + } + leaf vrrp3GrpPathLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups and pathways combined Limit"; + } + leaf vrrp3GrpTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups with default timers Limit"; + } + leaf vrrp3RelTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing VRRPv3 groups with relaxed timers Limit"; + } + leaf vrrp3PathDftTimerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Unicast Routing PAthways with one VRRPv3 groups with default timers Limit"; } } - grouping l1_VlanMapping-group { - leaf Enabled { - type boolean; - default "false"; + grouping icam_MulticastScale-group { + description "ICAM Multicast Scale Monitoring"; + leaf multicastIgmpGrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast IGMP Group Limit"; } - - // Vlan Translate Table policy - container vlantranslatetable-items { - - // Added containment as a singleton: Prefix=vlantranslatetable - // Acquired From Package l1 - uses l1_VlanTranslateTable-group; + leaf multicastPimNeighLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast PIM Neighbour Limit"; + } + leaf multicastRoutingFwdIntfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding Outgoing interface Limit"; + } + leaf multicastRoutingFwdRoutev4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 Route Limit"; + } + leaf multicastRoutingFwdRoutev6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 Route Limit"; + } + leaf multicastRoutingFwdRouteSGv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 SG Route Limit"; + } + leaf multicastRoutingFwdRouteSGv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 SG Route Limit"; + } + leaf multicastRoutingFwdRouteStarGv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv4 StarG Route Limit"; + } + leaf multicastRoutingFwdRouteStarGv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale Multicast Routing and Forwarding IPv6 StarG Route Limit"; } } - grouping l1_VlanTranslateTable-group { - - // Vlan Translate Table policy Vlan Translate Entry policy - container vlan-items { - list VlanTranslateEntry-list { - key "vlanid"; - - // Added containment: Prefix=vlan - // Acquired From Package l1 - uses l1_VlanTranslateEntry-group; + grouping icam_VxlanScale-group { + description "ICAM VxLAN Scale Monitoring"; + leaf vxlanBgpHostv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv4 host route Limit"; + } + leaf vxlanBgpHostv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv6 host route Limit"; + } + leaf vxlanBgpIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IGMP group Limit"; + } + leaf vxlanBgpMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP Mac Address Limit"; + } + leaf vxlanBgpOvrlLpmv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv4 LPM route Limit"; + } + leaf vxlanBgpOvrlLpmv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP IPv6 LPM route Limit"; + } + leaf vxlanBgpSviLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP SVI with Anycast Gateway Limit"; + } + leaf vxlanBgpUnderlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP Underlay multicast group Limit"; + } + leaf vxlanBgpVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VLAN logical port VP count Limit"; + } + leaf vxlanBgpVlanFexLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VLAN per FEX port Limit"; + } + leaf vxlanBgpVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VNI Limit"; + } + leaf vxlanBgpVrfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VRF Limit"; + } + leaf vxlanBgpVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP VTEP Limit"; + } + leaf vxlanBgpirHostv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv4 host route Limit"; + } + leaf vxlanBgpirHostv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv6 host route Limit"; + } + leaf vxlanBgpirIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IGMP group Limit"; + } + leaf vxlanBgpirMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR Mac Address Limit"; + } + leaf vxlanBgpirOvrlLpmv4Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv4 LPM route Limit"; + } + leaf vxlanBgpirOvrlLpmv6Limit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR IPv6 LPM route Limit"; + } + leaf vxlanBgpirSviLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR SVI with Anycast Gateway Limit"; + } + leaf vxlanBgpirVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VLAN logical port VP count Limit"; + } + leaf vxlanBgpirVlanFexLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VLAN per FEX port Limit"; + } + leaf vxlanBgpirVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VNI Limit"; + } + leaf vxlanBgpirVrfLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VRF Limit"; + } + leaf vxlanBgpirVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN BGP-IR VTEP Limit"; + } + leaf vxlanFlIgmpgrpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IGMP group Limit"; + } + leaf vxlanFlIrMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR Mac Address Limit"; + } + leaf vxlanFlIrPeerLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR Peer Limit"; + } + leaf vxlanFlIrVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn IR L2 Vni Limit"; + } + leaf vxlanFlTotalMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Total MAC Limit"; + } + leaf vxlanFlStaticMacLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Static MAC Limit"; + } + leaf vxlanFlUnerlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Underlay multicast group Limit"; + } + leaf vxlanFlVlanVpLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Vlan Logical VP Limit"; + } + leaf vxlanFlVlanSwMapLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VLAN translations in a switch Limit"; + } + leaf vxlanFlVlanIntfMapLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VLAN translations under an interface Limit"; + } + leaf vxlanFlVlanFexPortLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn Vlan Per Fex Port Limit"; + } + leaf vxlanFlVniLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VNI Limit"; + } + leaf vxlanFlVniVpcLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn VNIs for vPC-centralized gateway Limit"; + } + leaf vxlanFlVtepLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN Flood and learn remote VTEP Limit"; + } + leaf vxlanIgmpUnderlMcastLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN IGMP Underlay multicast group Limit"; + } + leaf vxlanIgmpVlanLimit { + type uint32 { + range "0..4294967295"; + } + description "Scale VxLAN IGMP VLAN Limit"; + } + leaf vxlanIgmpVtepLimit { + type uint32 { + range "0..4294967295"; } + description "Scale VxLAN IGMP VTEP Limit"; } } - grouping l1_VlanTranslateEntry-group { + grouping icam_Entries-group { + description "ICAM Entries to monitor"; - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan Id"; + leaf class { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type icam_Entclass; + description "iCAM Entries Class Type"; } - - // Type is an MO-Defined-Type - leaf innervlanid { - description "Inner Vlan Id"; - - // Type is an MO-Defined-Type - type l1_translatevlanid; + leaf module { + type uint32; + description "Module Number for iCAM Entries"; } - - // Type is an MO-Defined-Type - leaf translatevlanid { - description "Translate Vlan Id"; - - // Type is an MO-Defined-Type - type l1_translatevlanid; + leaf instance { + type uint32; + description "Forwarding Instance Number"; } } - grouping l1_Vrf-group { + grouping icam_Resource-group { + description "ICAM Resources to monitor"; - // Vrf Name... - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Vrf Name"; + leaf class { - // Type is an MO-Defined-Type - type l3_VrfName; + type icam_Resclass; + description "iCAM Resources Class Type"; + } + leaf module { + type uint32; + description "Module Number for iCAM Resource"; + } + leaf instance { + type uint32; + description "Forwarding Instance Number"; } } - grouping ethpm_PhysIf-group { + grouping icam_MonACLEntries-group { + description "iCAM ACL Entries Information"; - // Type is an MO-Defined-Type - leaf operLinkDebounce { + // Ephemeral data + leaf feature { config "false"; - description "Link Debounce Interval"; + type string; + description "ACL Feature Name"; + } - // Type is an MO-Defined-Type - type l1_LinkDebounce; + // Ephemeral data + leaf class_type { + config "false"; + type string; + description "Packet Type"; } - // Type is an MO-Defined-Type - leaf shareState { + // Ephemeral data + leaf value_mask { config "false"; - description "Interface share state"; + type string; + description "Source and Destination IP"; + } - // Type is an MO-Defined-Type - type ethpm_ShareState; + // Ephemeral data + leaf action { + config "false"; + type string; + description "ACL Action"; } - // FEC knob - // Type is an MO-Defined-Type - leaf operFECMode { + // Ephemeral data + leaf ifindex { config "false"; - description "Operational FEC Mode"; - // Type is a Local-MO-Defined-Type - type l1_FECMode_PhysIf_operFECMode; + type icam_Index; + description "Interface ifindex"; } - // cached usercfgdflag - // Type is an MO-Defined-Type - leaf cachedUserCfgdFlags { + // Ephemeral data + leaf cum_stats { config "false"; - description "Cached Port User Config Flags"; - - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type uint64; + description "Cumulative Traffic Stats"; } - leaf ifIndex { + + // Ephemeral data + leaf module { config "false"; type uint32; - default "0"; + description "Module No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operAutoNeg { + // Ephemeral data + leaf inst { config "false"; - description "negotiate auto"; - - // Type is an MO-Defined-Type - type l1_AutoNeg; + type uint32; + description "Instance/FE No."; } + } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Maximum transmission unit"; + grouping icam_AclResEntries-group { + description "iCAM ACL TCAM Resource Utilization"; - // Type is an MO-Defined-Type - type l1_Mtu; + // Ephemeral data + leaf tcam_no { + config "false"; + type uint32; + description "TCAM No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf bank_no { config "false"; - description "Administrative State"; - - // Type is an MO-Defined-Type - type l1_AdminSt; + type uint32; + description "Bank No."; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDescr { + // Ephemeral data + leaf used { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type ethpm_operDescr; + type uint32; + description "Number of Used Entries"; } - // Operational port state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf free { config "false"; - description "Operational Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type uint32; + description "Number of Free Entries"; } - // Operational port status reason - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQual { + // Ephemeral data + leaf percent_util { config "false"; - description "Operational State Failure Reason"; - - // Type is an MO-Defined-Type - type l1_OperStQual; + type decimal64 { + fraction-digits 6; + } + description "Percentage Utilization"; } - // Operational port status syserror code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQualCode { + // Ephemeral data + leaf timestamp { config "false"; - description "Operational Port Status Syserror Code"; - - // Type is an MO-Defined-Type - type l1_OperStQualCode; + type uint64; + description "Timestamp"; } - // Operational port err disable reason code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operErrDisQual { + // Ephemeral data + leaf module { config "false"; - description "Operational Port Error Disable Reason Code"; + type uint32; + description "Module No."; + } - // Type is an MO-Defined-Type - type l1_OperErrDisQual; + // Ephemeral data + leaf inst { + config "false"; + type uint32; + description "Instance No."; } + } - // Operational port speed - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSpeed { + grouping monitor_Entity-group { + description "Entity"; + + leaf name { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Operational port mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMode { + // - Admin state + leaf adminSt { config "false"; - description "Operational Port Mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type nw_AdminSt; + description "Admin State"; } - // Operational duplex - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDuplex { + // Operational state + leaf operSt { config "false"; - description "Operational Duplex State"; - // Type is an MO-Defined-Type - type l1_Duplex; + type nw_EntOperSt; + description "Operational State"; } - // Operational port flow control - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operFlowCtrl { - config "false"; - description "Operational Port Flow Control"; + // Abstraction of coop database (repository) + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type l1_FlowControl; + uses monitor_Db-group; + description "Database list"; + } + description "Database"; } - // Operational phy port enable state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operPhyEnSt { - config "false"; - description "Operational Physical Port Enable State"; + // Monitor session definition. there could be only few sessions + // active at a given time (max 4) + container session-items { + list Session-list { + config "false"; + key "name"; - // Type is an MO-Defined-Type - type l1_OperSt; + uses monitor_Session-group; + description "Span Session list"; + } + description "Span Session"; } - leaf backplaneMac { + } + + grouping monitor_Db-group { + description "Database"; + + // Type of the database + leaf type { config "false"; - type address_Mac; + + type monitor_DbT; + description "Type"; } - leaf operRouterMac { + + leaf name { config "false"; - type address_Mac; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // port Tx type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf txT { - config "false"; - description "Port Transmit Type"; + // Ep records + container epr-items { + list EpRec-list { + config "false"; + key "vnid ip"; - // Type is an MO-Defined-Type - type l1_TxT; + uses monitor_EpRec-group; + description "Endpoint Record list"; + } + description "Endpoint Record"; } - leaf lastLinkStChg { + } + + grouping monitor_EpRec-group { + description "Endpoint Record"; + leaf vnid { config "false"; type string; + description "VNID"; } - leaf portCfgWaitFlags { + leaf ip { config "false"; - type uint32; + type address_Ip; + description "IP"; } - leaf accessVlan { + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf nativeVlan { + } + + grouping monitor_Session-group { + description "Span Session"; + + // Identifier of the session + leaf id { config "false"; - type string; + + type monitor_SessionId; + description "ID"; } - leaf cfgNativeVlan { + + // Administrative state of the session + leaf adminSt { config "false"; - type string; + + type nw_AdminSt; + description "Admin State"; } - leaf cfgAccessVlan { + + // Operational state of the session + leaf operSt { config "false"; - type string; + + type monitor_OperSt; + description "Operational State"; } - leaf primaryVlan { + + leaf name { config "false"; - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port oper bitset - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operBitset { + leaf descr { config "false"; - description "Port Oper Bitset"; - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type naming_Descr; + description "Description of the specified attribute"; } - // vdc id - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf vdcId { + // Monitor sources. The sources which we want to monitor + container src-items { + list Source-list { + config "false"; + key "type mode dir from to port"; + + uses monitor_Source-group; + description "Source list"; + } + description "Source"; + } + + // ERSpan destination information + container erdst-items { + + uses monitor_ERDest-group; + description "ERSPAN Destination"; + } + + // Local span destination information + container ldst-items { + + uses monitor_LocalDest-group; + description "Local Destination"; + } + } + + grouping monitor_Source-group { + description "Source"; + + // Source id + leaf id { config "false"; - description "Vdc Id"; - // Type is an MO-Defined-Type - type l2_VdcId; + type monitor_SrcId; + description "ID"; } - leaf resetCtr { + + // Type of the source + leaf type { config "false"; - type uint32; + + type monitor_SrcT; + description "Type"; } - leaf media { + + // The direction of the packets to monitor + leaf dir { config "false"; - type uint32; + + type monitor_Direction; + description "Direction"; } - leaf encap { + leaf from { config "false"; - type uint32; + type string; + description "From"; } - leaf iod { + leaf to { config "false"; - type uint64; + type string; + description "To"; } - // allowed vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf allowedVlans { + // Port to monitor + leaf port { config "false"; - description "Allowed Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nw_IfId; + description "Port"; } - // operational vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operVlans { + // Mode of the source (access side or fabric side) + leaf mode { config "false"; - description "Operational Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type monitor_Mode; + description "Mode"; } - // errored vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf errVlans { + // Operational state of the session + leaf operSt { config "false"; - description "Errored Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type monitor_OperSt; + description "Operational State"; } - // trunk status - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operTrunkStatus { + leaf name { config "false"; - description "Trunking Status"; - // Type is an MO-Defined-Type - type ethpm_TrunkStatus; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // bundle index - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf bundleIndex { + leaf descr { config "false"; - description "Interface Bundle Index - table for a particular output primitive"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } + } - // port oper mdix mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMdix { + grouping monitor_ERDest-group { + description "ERSPAN Destination"; + + // Encapsulation type, the encapsulation of the monitored + // packet sent to the destination + leaf type { config "false"; - description "Port Oper Mdix Mode"; - // Type is an MO-Defined-Type - type l1_Mdix; + type monitor_DestEncapT; + description "Type"; } - leaf currErrIndex { + leaf srcIp { config "false"; - type uint32; + type address_Ip; + description "Source IP"; + } + leaf dstIp { + config "false"; + type address_Ip; + description "Destination IP"; } - // last seen errors - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf lastErrors { + // Erspan version + leaf ver { config "false"; - description "Last Seen Errors"; - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type monitor_ErSpanVer; + description "Version"; } - leaf errDisTimerRunning { + + // Flow id of the erspan packet + leaf flowId { config "false"; - type boolean; + + type monitor_FlowId; + description "Flow ID"; } - leaf bundleBupId { + + // Ttl used in the erspan packet + leaf ttl { config "false"; - type uint32; + + type l3_Ttl; + description "TTL"; } - // Operational Dce Mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDceMode { + // the vrf on which the erspan packet is sent + leaf vrfName { config "false"; - description "Operational Dce Mode"; - // Type is an MO-Defined-Type - type l1_DceMode; + type l3_VrfName; + description "VRF"; + } + leaf vnid { + config "false"; + type string; + description "VNID"; } - // interface type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf intfT { + // dscp value to be used when sending the monitored + // packets using ERSpan + leaf dscp { config "false"; - description "Interface Type"; - // Type is an MO-Defined-Type - type l1_IntfT; + type qosp_Dscp; + description "Dscp"; } - // port diags type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf diags { + leaf name { config "false"; - description "Port Diags Type"; - // Type is an MO-Defined-Type - type l1_DiagsT; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port EEE state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operEEEState { + leaf descr { config "false"; - description "Operational Port EEE State"; - // Type is an MO-Defined-Type - type l1_EEEState; + type naming_Descr; + description "Description of the specified attribute"; } - leaf operEEETxWkTime { + + // mtu truncation size for the packets + leaf mtu { config "false"; - type uint32; + + type monitor_Mtu; + description "MTU"; } - leaf operEEERxWkTime { + + // Operational state of the session + leaf operSt { config "false"; - type uint32; + + type monitor_OperSt; + description "Operational State"; } + } - // port user config flags - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf userCfgdFlags { + grouping monitor_LocalDest-group { + description "Local Destination"; + + // Port + leaf port { config "false"; - description "Port User Config Flags"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_IfId; + description "Port"; } - leaf numOfSI { + + leaf name { config "false"; - type uint32; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf gport { + + leaf descr { config "false"; - type uint32; + + type naming_Descr; + description "Description of the specified attribute"; } - // configured sub-interface ids - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf siList { + // mtu truncation size for the packets + leaf mtu { config "false"; - description "Configured Sub-interface Ids"; - // Type is an MO-Defined-Type - type ethpm_SiBitmap; + type monitor_Mtu; + description "MTU"; } - leaf dynamicVlan { + + // Operational state of the session + leaf operSt { config "false"; - type boolean; + + type monitor_OperSt; + description "Operational State"; } + } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Liked from l1:EthIf:usage - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage"; + grouping flow_Entity-group { + description "Entity"; - // Type is an MO-Defined-Type - type l1_PortUsage; + // Flow Record + container fr-items { + list Record-list { + key "name"; + + uses flow_Record-group; + description "Flow Record list"; + } + description "Flow Record"; } - // This is the class for regualr fcot types. - container fcot-items { + // Flow Exporter + container fe-items { + list Exporter-list { + key "name"; - // Added containment as a singleton: Prefix=fcot - // Acquired From Package ethpm - uses ethpm_Fcot-group; + uses flow_Exporter-group; + description "Collector entry list"; + } + description "Collector entry"; } - // This is the class for X2 fcot types. - container fcotx2-items { + // Flow Monitor + container fm-items { + list Monitor-list { + key "name"; - // Added containment as a singleton: Prefix=fcotx2 - // Acquired From Package ethpm - uses ethpm_FcotX2-group; + uses flow_Monitor-group; + description "Flow Monitor list"; + } + description "Flow Monitor"; } - container portcap-items { + // Sampler + container s-items { + list Sampler-list { + key "name"; - // Added containment as a singleton: Prefix=portcap - // Acquired From Package ethpm - uses ethpm_PortCap-group; + uses flow_Sampler-group; + description "Sampler list"; + } + description "Sampler"; } - } + container cmap-items { + list ClassMap-list { + key "name"; - grouping ethpm_Fcot-group { - leaf partNumber { - config "false"; - type string; + uses flow_ClassMap-group; + description "Class map instance list"; + } + description "Class map instance"; } - leaf versionId { - config "false"; + container pmap-items { + list PolicyMap-list { + key "name"; + + uses flow_PolicyMap-group; + description "Policy-map list"; + } + description "Policy-map"; + } + + // Hardware profile + container hp-items { + list HwProfile-list { + key "name"; + + uses flow_HwProfile-group; + description "Hardware Profile list"; + } + description "Hardware Profile"; + } + + // Forwarding instance based target + container fit-items { + list FwdInstTarget-list { + key "slot asic slice"; + + uses flow_FwdInstTarget-group; + description "Forward Instance Target list"; + } + description "Forward Instance Target"; + } + } + + grouping flow_Record-group { + description "Flow Record"; + leaf name { type string; + description "Flow record name"; } leaf description { - config "false"; type string; - } - leaf isFcotPresent { - config "false"; - type boolean; + description "Flow record description"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + leaf matchParams { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type flow_MatchParams; + description "Match Params"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf collectParams { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type flow_CollectParams; + description "Collect Params"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; + grouping flow_Exporter-group { + description "Collector entry"; + leaf name { type string; + description "Flow exporter name"; } - leaf eid { - config "false"; + leaf description { type string; + description "Flow exporter description"; } - leaf xcvrId { - config "false"; - type uint8; + + leaf vrfName { + + type l3_VrfName; + description "Collector VRF"; } - leaf xcvrExtId { - config "false"; - type uint8; + leaf destinationIp { + type address_Ip; + description "Collector IP"; } - leaf connectType { - config "false"; - type uint8; + + leaf destinationPort { + + type flow_L4Port; + description "Collector L4 Port"; } - // Xcvr code field - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf xcvrCode { - config "false"; - description "Transceiver Code"; + leaf dscp { - // Type is an MO-Defined-Type - type ethpm_SfpXcvrCodeBytes; + type ipqos_Dscp; + description "DSCP value"; } - leaf encoding { - config "false"; - type uint8; - } - leaf brIn100MHz { - config "false"; - type uint8; - } - leaf baseResvd1 { - config "false"; - type uint8; - } - leaf distInKmFor9u { - config "false"; - type uint8; - } - leaf distIn100mFor9u { - config "false"; - type uint8; - } - leaf distIn10mFor50u { - config "false"; - type uint8; - } - leaf distIn10mFor60u { - config "false"; - type uint8; - } - leaf distIn1mForCu { - config "false"; - type uint8; - } - leaf baseResvd2 { - config "false"; - type uint8; - } - leaf vendorName { - config "false"; - type string; - } - leaf baseResvd3 { - config "false"; - type uint8; + + // check + leaf sourceInterface { + + type nw_IfId; + description "Source Interface"; } - // IEEE vendor Id - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorId { - config "false"; - description "Vendor ID"; + leaf version { - // Type is an MO-Defined-Type - type ethpm_SfpVendorIdBytes; + type flow_ExportVersion; + description "Export version format"; } - leaf vendorPn { - config "false"; + } + + grouping flow_Monitor-group { + description "Flow Monitor"; + leaf name { type string; + description "Flow monitor name"; } - leaf vendorRev { - config "false"; + leaf description { type string; + description "Flow monitor description"; } + container feb-items { + list ExporterBucket-list { + key "id"; - // Reserved field 4 - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf baseResvd4 { - config "false"; - description "Base Reserved Field"; - - // Type is an MO-Defined-Type - type ethpm_SfpReserved4Array; - } - leaf ccid { - config "false"; - type uint8; + uses flow_ExporterBucket-group; + description "Flow exporter bucket entry list"; + } + description "Flow exporter bucket entry"; } - // Extended option - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf extOption { - config "false"; - description "Extended Option"; + container rsrecord-items { - // Type is an MO-Defined-Type - type ethpm_SfpExtendedOptionBytes; - } - leaf brMaxMargin { - config "false"; - type uint8; + uses flow_RsRecord_source-group; + description "Reference to flow record"; } - leaf brMinMargin { - config "false"; + } + + grouping flow_ExporterBucket-group { + description "Flow exporter bucket entry"; + leaf id { type uint8; + description "Flow exporter bucket ID"; } - leaf vendorSn { - config "false"; + leaf description { type string; + description "Flow exporter bucket description"; } - leaf dateCode { - config "false"; - type string; + leaf hashLo { + type uint32; + description "Hash low"; } - leaf diagMonType { - config "false"; - type uint8; + leaf hashHi { + type uint32; + description "Hash high"; } - leaf enhOption { - config "false"; - type uint8; + + container rsexporter1-items { + + uses flow_RsExporter1_source-group; + description "Reference to flow exporter1"; } - leaf sff8472Compl { - config "false"; - type uint8; + + container rsexporter2-items { + + uses flow_RsExporter2_source-group; + description "Reference to flow exporter2"; } - leaf ccex { - config "false"; - type uint8; + } + + grouping flow_Sampler-group { + description "Sampler"; + leaf name { + type string; + description "Sampler name"; + } + leaf description { + type string; + description "Sampler description"; } - // Vendor data - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorData { - config "false"; - description "TBD"; + leaf mode { - // Type is an MO-Defined-Type - type ethpm_X2VendorDataBytes; + type flow_SamplerMode; + description "Sampler mode"; } - leaf maxSpeed { - config "false"; + leaf param1 { type uint32; + description "Sampler param1"; } - leaf minSpeed { - config "false"; + leaf param2 { type uint32; + description "Sampler param2"; } - leaf fcotNum { - config "false"; - type uint8; + } + + grouping flow_ClassMap-group { + description "Class map instance"; + + // class map name + leaf name { + + type ipqos_CMapName; + description "Name of class-map"; } - leaf fcotType { - config "false"; - type uint8; + + // match access-group + container acl-items { + list MatchAcl-list { + key "name"; + + uses flow_MatchAcl-group; + description "Match ACL list"; + } + description "Match ACL"; } - leaf gigEthCC { - config "false"; - type uint8; + } + + grouping flow_MatchAcl-group { + description "Match ACL"; + + // ACL to match + leaf name { + + type acl_Name; + description "Match using ACL"; } - leaf fCTxType { - config "false"; - type uint8; + } + + grouping flow_PolicyMap-group { + description "Policy-map"; + + // policy map name + leaf name { + + type ipqos_PMapName; + description "Name of policy-map"; } - // Transceiver DOM sensor. - container lane-items { - list FcotSensor-list { - config "false"; - key "laneId sensorId"; + // match a class-map + container cmap-items { + list MatchClassMap-list { + key "name"; - // Added containment: Prefix=lane - // Acquired From Package eqpt - uses eqpt_FcotSensor-group; + uses flow_MatchClassMap-group; + description "Match class-map list"; } + description "Match class-map"; } } - grouping eqpt_FcotSensor-group { - leaf laneId { - config "false"; - type uint16; + grouping flow_MatchClassMap-group { + description "Match class-map"; + + // use class-map with this name + leaf name { + + type ipqos_CMapName; + description "Match using class-map"; } - // Fcot DOM Lane type - // Type is an MO-Defined-Type - leaf laneType { - config "false"; - description "The transceiver LANE type"; + // set Flow Monitor + container fm-items { - // Type is an MO-Defined-Type - type eqpt_fcotDomLane; + uses flow_SetMonitor-group; + description "Set Flow Monitor"; } - leaf sensorId { - config "false"; - type uint16; + } + + grouping flow_SetMonitor-group { + description "Set Flow Monitor"; + + container rsmonitor-items { + + uses flow_RsMonitor_source-group; + description "Reference to flow monitor"; } - leaf description { - config "false"; + } + + grouping flow_HwProfile-group { + description "Hardware Profile"; + leaf name { type string; + description "Hardware profile name"; } - leaf unit { - config "false"; + leaf description { type string; + description "Hardware profile description"; } - leaf value { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf exportInterval { + type uint32; + default "100"; + description "Export Interval in milliseconds"; } - leaf highAlarm { - config "false"; - type decimal64 { - fraction-digits 2; - } + + leaf sourcePort { + + type flow_L4Port; + description "Source L4 Port"; } - leaf highWarning { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf ipPacketIdShift { + type uint8; + description "IP Packet ID Shift"; } - leaf lowAlarm { - config "false"; - type decimal64 { - fraction-digits 2; - } + leaf burstIntervalShift { + type uint8; + description "Timestamp shift value for burst interval"; } - leaf lowWarning { - config "false"; - type decimal64 { - fraction-digits 2; - } + + leaf mtu { + + type flow_Mtu; + description "MTU"; } - leaf max { - config "false"; - type decimal64 { - fraction-digits 2; - } + + container sngt-items { + + uses flow_SeqNumGuessThreshold-group; + description "Sequence Number Guess Threshold"; } - leaf min { - config "false"; - type decimal64 { - fraction-digits 2; + container plb-items { + list PayloadLenBin-list { + key "id"; + + uses flow_PayloadLenBin-group; + description "Payload length bin entry list"; } + description "Payload length bin entry"; } - leaf avg { - config "false"; - type decimal64 { - fraction-digits 2; + container tohlb-items { + list TCPOptHdrLenBin-list { + key "id"; + + uses flow_TCPOptHdrLenBin-group; + description "TCP optional header length bin entry list"; } + description "TCP optional header length bin entry"; } - leaf instant { - config "false"; - type decimal64 { - fraction-digits 2; + container rwsb-items { + list ReceiveWindowSizeBin-list { + key "id"; + + uses flow_ReceiveWindowSizeBin-group; + description "Receive window size bin entry list"; } + description "Receive window size bin entry"; } } - grouping ethpm_FcotX2-group { - leaf partNumber { - config "false"; - type string; + grouping flow_SeqNumGuessThreshold-group { + description "Sequence Number Guess Threshold"; + leaf lo { + type uint32; + description "Low Threshold"; } - leaf versionId { - config "false"; - type string; + leaf hi { + type uint32; + description "High Threshold"; + } + } + + grouping flow_PayloadLenBin-group { + description "Payload length bin entry"; + leaf id { + type uint8; + description "Payload length bin ID"; } leaf description { - config "false"; type string; - } - leaf isFcotPresent { - config "false"; - type boolean; + description "Payload length bin description"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + leaf lo { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type flow_PayloadLen; + description "Bin low value"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf hi { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type flow_PayloadLen; + description "Bin high value"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type ethpm_FcotType; + grouping flow_TCPOptHdrLenBin-group { + description "TCP optional header length bin entry"; + leaf id { + type uint8; + description "TCP option header length bin ID"; } - leaf typeName { - config "false"; + leaf description { type string; + description "TCP option header length bin description"; } - leaf eid { - config "false"; - type string; + + leaf lo { + + type flow_TCPOptHdrLen; + description "Bin low value"; } - leaf xcvrType { - config "false"; - type uint8; + + leaf hi { + + type flow_TCPOptHdrLen; + description "Bin high value"; } - leaf connectType { - config "false"; + } + + grouping flow_ReceiveWindowSizeBin-group { + description "Receive window size bin entry"; + leaf id { type uint8; + description "Receive window size bin ID"; } - leaf bitEncoding { - config "false"; - type uint8; + leaf description { + type string; + description "Receive window size bin description"; } - // Bit rate (Mbps) - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf bitRateMbps { - config "false"; - description "TBD"; + leaf lo { - // Type is an MO-Defined-Type - type ethpm_X2BitRateBytes; - } - leaf protocolType { - config "false"; - type uint8; + type flow_ReceiveWindowSize; + description "Bin low value"; } - // 10G eth code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgEthCode { - config "false"; - description "TBD"; + leaf hi { - // Type is an MO-Defined-Type - type ethpm_X2XgEthCodeBytes; + type flow_ReceiveWindowSize; + description "Bin high value"; } + } - // Sonet SDH code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf sonetSdhCode { - config "false"; - description "TBD"; + grouping flow_FwdInstTarget-group { + description "Forward Instance Target"; + leaf slot { + type uint8 { + range "1..64"; + } + description "Slot ID"; + } + leaf asic { + type uint8 { + range "1..10"; + } + description "Asic ID"; + } + leaf slice { + type uint8 { + range "1..10"; + } + description "Slice ID"; + } + leaf exporterId { + type uint32; + description "Exporter ID"; + } - // Type is an MO-Defined-Type - type ethpm_X2SonetSdhCodeBytes; + // Service Policy + container sp-items { + list ServicePolicy-list { + key "direction"; + + uses flow_ServicePolicy-group; + description "Service Policy list"; + } + description "Service Policy"; } - // 10G fc code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgFcCode { - config "false"; - description "TBD"; + container rshwProfile-items { - // Type is an MO-Defined-Type - type ethpm_X2XbFcCodeBytes; + uses flow_RsHwProfile_source-group; + description "Reference to hardware profile"; } + } - // Range - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf range { - config "false"; - description "TBD"; + grouping flow_ServicePolicy-group { + description "Service Policy"; - // Type is an MO-Defined-Type - type ethpm_X2RangeBytes; + leaf direction { + + type flow_Direction; + description "Direction"; } - // Fibre type - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf fibreType { - config "false"; - description "TBD"; + container rspmap-items { - // Type is an MO-Defined-Type - type ethpm_X2FibreTypeBytes; + uses flow_RsPmap_source-group; + description "Reference to policy-map"; } + } - // Wavelength channel 0 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh0 { - config "false"; - description "TBD"; + grouping ngoam_Entity-group { + description "NGOAM Entity"; - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Holds NGOAM entity information + container xcon-items { + + uses ngoam_Xcon-group; + description "Placeholder model for xconnect data to hang off of"; } - // Wavelength channel 1 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh1 { - config "false"; - description "TBD"; + // NGOAM Profile Object + container profile-items { + list Profile-list { + key "profId"; - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_Profile-group; + description "Ngoam Profile list"; + } + description "Ngoam Profile"; } - // Wavelength channel 2 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh2 { - config "false"; - description "TBD"; + // NGOAM InstallACL Object + container installacl-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_InstallAcl-group; + description "Ngoam install acl"; } - // Wavelength channel 3 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh3 { - config "false"; - description "TBD"; + // NGOAM Authentication Object + container authentication-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses ngoam_Authentication-group; + description "Ngoam Authentication"; } - // Package Oui - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf packageOui { - config "false"; - description "TBD"; + // NGOAM Connectivity Check Object + container cc-items { + list ConnectCheck-list { + key "ccId"; - // Type is an MO-Defined-Type - type ethpm_X2PackageOuiBytes; - } - leaf vendorName { - config "false"; - type string; - } - leaf vendorPn { - config "false"; - type string; - } - leaf vendorRev { - config "false"; - type string; - } - leaf vendorSerNo { - config "false"; - type string; - } - leaf dateCode { - config "false"; - type string; + uses ngoam_ConnectCheck-group; + description "Ngoam Connectivity check list"; + } + description "Ngoam Connectivity check"; } - // Lot code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf lotCode { - config "false"; - description "TBD"; + // NGOAM Xconnect config Object + container xconnect-items { - // Type is an MO-Defined-Type - type ethpm_X2LotCodeBytes; - } - leaf fiveVStressEnv { - config "false"; - type uint8; - } - leaf threeThreeVStressEnv { - config "false"; - type uint8; - } - leaf apsStressEnv { - config "false"; - type uint8; + uses ngoam_XconCfg-group; + description "Ngoam xconnect configs"; } - leaf normalApsVolt { - config "false"; - type uint8; + } + + grouping ngoam_Xcon-group { + description "Placeholder model for xconnect data to hang off of"; + + // Interface name for list of all egress interfaces + container bd-items { + list XConnect-list { + config "false"; + key "swBd"; + + uses ngoam_XConnect-group; + description "Model describing the properties of a vxlan cross-connect list"; + } + description "Model describing the properties of a vxlan cross-connect"; } - leaf diagOptMonCap { + } + + grouping ngoam_XConnect-group { + description "Model describing the properties of a vxlan cross-connect"; + leaf swBd { config "false"; - type uint8; + type uint16; + description "vlanID on which xconnnect is enabled"; } - leaf lowPwrStartupCap { + + // Xc state + leaf xcState { config "false"; - type uint8; + + type ngoam_xcState; + description "xconnect state - could have multiple states at the same time"; } - leaf reserved { + leaf peerIp { config "false"; - type uint8; + type address_Ipv4; + description "VTEP ip of the vxlan peer"; } - leaf checksum { + leaf vni { config "false"; - type uint8; + type uint32; + description "vni for the xconnect"; } - leaf ciscoPid { + leaf localPort { config "false"; type string; + description "LocalPort associated with the xconnect"; } - leaf ciscoVid { + + // Local port state + leaf localPortState { config "false"; - type string; + + type ngoam_xcPortState; + description "Local Port State"; } - leaf ciscoSN { + leaf localVpcPort { config "false"; type string; + description "Local Vpc Port associated with the xconnect"; } - leaf ciscoPN { + + // Local Vpc port state + leaf localVpcPortState { config "false"; - type string; + + type ngoam_xcPortState; + description "Local Vpc Port State"; } - leaf ciscoRev { + leaf remotePort { config "false"; type string; + description "RemotePort associated with the xconnect"; } - // Extended vendor specific info - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf extVendorSpecific { + // Remote port state + leaf remotePortState { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type ethpm_X2ExtendedVendorSpecificInfoBytes; - } - leaf maxSpeed { - config "false"; - type uint32; - } - leaf minSpeed { - config "false"; - type uint32; - } - leaf fcotNum { - config "false"; - type uint8; + type ngoam_xcPortState; + description "Remote Port State"; } - leaf fcotType { + leaf remoteVpcPort { config "false"; - type uint8; + type string; + description "Remote Vpc Port associated with the xconnect"; } - leaf gigEthCC { + + // Remote Vpc port state + leaf remoteVpcPortState { config "false"; - type uint8; + + type ngoam_xcPortState; + description "Remote Vpc Port State"; } - leaf fCTxType { + leaf lastChgTs { config "false"; - type uint8; + type string; + description "timestamp of last change to this database"; } } - grouping ethpm_PortCap-group { + grouping ngoam_Profile-group { + description "Ngoam Profile"; - // If-index - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Port Identifier"; + // Prof. ID + leaf profId { - // Type is an MO-Defined-Type - type nw_IfId; + type ngoam_ProfId; + description "Profile ID"; } - // Speed bitmask - // Type is an MO-Defined-Type - leaf speed { - config "false"; - description "Speed Bitmask"; + // Description + leaf desc { - // Type is an MO-Defined-Type - type ethpm_capSpeed; + type ngoam_Desc; + description "Description"; } - // Duplex bitmask - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex Bitmask for simutaneous communication between interfaces"; + // dot1q + leaf dot1q { - // Type is an MO-Defined-Type - type ethpm_capDuplex; - } - leaf trunkEncap { - config "false"; - type uint8; - } - leaf channel { - config "false"; - type uint8; - } - leaf suppression { - config "false"; - type uint8; - } - leaf rxFlowControl { - config "false"; - type uint8; - } - leaf txFlowControl { - config "false"; - type uint8; - } - leaf cosRewrite { - config "false"; - type uint8; - } - leaf tosRewrite { - config "false"; - type uint8; - } - leaf span { - config "false"; - type uint8; + type ngoam_Dot1q; + description "dot1q"; } - leaf udld { - config "false"; - type uint8; + + // dot1q interface + leaf dot1qIf { + + type nw_IfId; + description "dot1q"; } - leaf autoneg { - config "false"; - type uint8; + + // hop + leaf hop { + + type ngoam_Hop; + description "hop count"; } - leaf linkDebounce { - config "false"; - type uint8; + + // Egress Interface + leaf interface { + + type nw_IfId; + description "Interface"; } - leaf linkDebounceTime { - config "false"; - type uint8; + + // Oam Channel + leaf oamChannel { + + type ngoam_OamChannel; + description "OAM channel type"; } - leaf fcotCapable { - config "false"; - type uint8; + + // Payload Pad + leaf payloadPad { + + type ngoam_PayloadPad; + description "Payload padding pattern"; } - leaf rateMode { - config "false"; - type uint8; + + // source port + leaf srcPort { + + type ngoam_Sport; + description "Source Port Range"; } - leaf mdix { - config "false"; - type uint8; + + // NGOAM FlowFwd Object + container flowfwd-items { + + uses ngoam_FlowFwd-group; + description "Ngoam Profile Flow Fwd"; } - leaf portGroup { - config "false"; - type uint8; + } + + grouping ngoam_FlowFwd-group { + description "Ngoam Profile Flow Fwd"; + leaf forward { + type boolean; + description "forward"; } - leaf ctsCapable { - config "false"; - type uint8; + + // dot1q + leaf dot1q { + + type ngoam_Dot1qFlow; + description "dot1q"; } - leaf qosRxPrio { - config "false"; - type uint8; + leaf ipDest { + type address_Ipv4; + description "IP v4 address destination"; } - leaf qosRxQueue { - config "false"; - type uint8; + leaf ipSrc { + type address_Ipv4; + description "IP v4 address source"; } - leaf qosRxThold { - config "false"; - type uint8; + leaf ipv6Dest { + type address_Ipv6; + description "IP v6 address destination"; } - leaf qosTxPrio { - config "false"; - type uint8; + leaf ipv6Src { + type address_Ipv6; + description "IP v6 address source"; } - leaf qosTxQueue { - config "false"; - type uint8; + leaf macDest { + type address_Mac; + description "mac address destination"; } - leaf qosTxThold { - config "false"; - type uint8; + leaf macSrc { + type address_Mac; + description "mac address source"; } - // Model - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Port Model Number"; + // port destination + leaf portDest { - // Type is an MO-Defined-Type - type ethpm_ModelList; + type ngoam_DestPort; + description "TCP or UDP port destination"; } - // Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // port source + leaf portSrc { - // Type is an MO-Defined-Type - type ethpm_TypeList; + type ngoam_SrcPort; + description "TCP or UDP port source"; } - // Port-group members - // Type is an MO-Defined-Type - leaf portGrpMbrs { - config "false"; - description "Port-group Members"; + // Flow protocol number + leaf protocol { - // Type is an MO-Defined-Type - type ethpm_PortGroupBitmap; - } - leaf protoSupport { - config "false"; - type uint32; - } - leaf portCap { - config "false"; - type uint32; + type ngoam_Protocol; + description "Flow protocol number"; } - leaf eeeCapVal { - config "false"; - type uint16; + leaf packet { + type string; + description "IP v6 address"; } + } - // EEE 10G wake times - // Type is an MO-Defined-Type - leaf eeeWakeTimes10g { - config "false"; - description "EEE 10G Wake Times"; - - // Type is an MO-Defined-Type - type ethpm_EeeWakeTimesList; - } - leaf eeeFlapFlags { - config "false"; - type uint16; + grouping ngoam_InstallAcl-group { + description "Ngoam install acl"; + leaf enabled { + type boolean; + description "install acl enabled"; } } - grouping pc_AggrMbrIf-group { + grouping ngoam_Authentication-group { + description "Ngoam Authentication"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type pc_OperSt; + type ngoam_AuthKey; + description "Authentication key"; } + } - // Channeling status - // Type is an MO-Defined-Type - leaf channelingSt { - config "false"; - description "Channeling Status"; - - // Type is an MO-Defined-Type - type pc_ChannelingSt; - } + grouping ngoam_ConnectCheck-group { + description "Ngoam Connectivity check"; - // Summarized operational state - // Type is an MO-Defined-Type - leaf summOperSt { - config "false"; - description "Summarized Oper State"; + // Connectivity check id + leaf ccId { - // Type is an MO-Defined-Type - type pc_SummOperSt; + type ngoam_ProfId; + description "Ngoam Connectivity check ID"; } - // Member up time - // Type is an MO-Defined-Type - leaf uptime { - config "false"; - description "Member Up Time"; + // Prof. id + leaf profileId { - // Type is an MO-Defined-Type - type pc_Time; + type ngoam_ProfIdCC; + description "Ngoam profile ID"; + } + leaf dstIp { + type address_Ipv4; + description "Destination Node ID"; + } + leaf dstIpv6 { + type address_Ipv6; + description "Destination Node ID"; + } + leaf dstMAC { + type address_Mac; + description "Destination Node ID"; + } + leaf dstUnknown { + type boolean; + description "Destination Node ID"; + } + leaf srcIp { + type address_Ipv4; + description "Source IP"; + } + leaf srcIpv6 { + type address_Ipv6; + description "Source IP"; } - // Member port flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Member Port Flags"; + // dot1q + leaf dot1q { - // Type is an MO-Defined-Type - type pc_Flags; + type ngoam_Dot1q; + description "dot1q"; } - // Bundle port number - // Type is an MO-Defined-Type - leaf bdlPortNum { - config "false"; - description "Bundle Port Number"; + // source port + leaf srcPort { - // Type is an MO-Defined-Type - type pc_BdlPortNum; + type ngoam_Sport; + description "Source Port"; } - // LTL programmed - // Type is an MO-Defined-Type - leaf ltlProgrammed { - config "false"; - description "LTL Programmed"; + // count + leaf count { - // Type is an MO-Defined-Type - type pc_LtlProgrammed; + type ngoam_NumPkt; + description "Number of packets"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // timeout + leaf timeout { - // Type is an MO-Defined-Type - type naming_Name; + type ngoam_Timeout; + description "Timeout"; } - } - grouping nvo_MultisiteIfTracking-group { - - // Type is an MO-Defined-Type - leaf tracking { - description "Configure EVPN multisite tracking for DCI/Fabric interface."; + // interval + leaf interval { - // Type is an MO-Defined-Type - type nvo_MultisiteTrackingT; + type ngoam_SendIntvlCC; + description "Interval"; } - } - - grouping pc_AggrIf-group { - // Port channel id - // Type is an MO-Defined-Type - leaf pcId { - description "Port Channel Id"; + leaf dataPattern { - // Type is an MO-Defined-Type - type pc_PcId; + type ngoam_PayloadPad; + description "data pattern"; } - // Channel mode - // Type is an MO-Defined-Type - leaf pcMode { - description "Aggregated Interface Protocol Channel Mode"; + // packet size + leaf packetSz { - // Type is an MO-Defined-Type - type pc_Mode; + type ngoam_PktSz; + description "Payload Size"; } - // PC interface control properties - // Type is an MO-Defined-Type - leaf ctrl { - description "PC Interface Control Properties"; + // The vrf in which it is running + leaf vrf { - // Type is an MO-Defined-Type - type pc_IfControl; + type ngoam_Vrf; + description "VRF"; } - // minimum links @@@ MinLinks in the port channel - // Type is an MO-Defined-Type - leaf minLinks { - description "Minimum Links"; + // The VxLAN vni + leaf vni { - // Type is an MO-Defined-Type - type pc_MinLinks; + type ngoam_VnidCC; + description "VNI"; } - // maximum links @@@ MaxLinks in the port channel - // Type is an MO-Defined-Type - leaf maxLinks { - description "Maximum Links"; + // Egress Interface id + leaf egressIf { - // Type is an MO-Defined-Type - type pc_MaxLinks; + type nw_IfId; + description "Interface ID"; } - // Hash distribution configured - adaptive/fixed - // Type is an MO-Defined-Type - leaf hashDist { - description "Hash Distribution Configured - Adaptive/fixed"; + // MAC Interface + leaf macsrcif { - // Type is an MO-Defined-Type - type pc_HashDist; + type nw_IfId; + description "payload source interface"; + } + leaf verifyHost { + type boolean; + description "Verify Host"; } - // Interface ordinal - // Type is an MO-Defined-Type - leaf iod { - config "false"; - description "Interface Ordinal"; + // dot1q + leaf payload_dot1q { - // Type is an MO-Defined-Type - type pc_Iod; + type ngoam_Dot1q; + description "dot1q"; + } + leaf payload_srcip { + type address_Ipv4; + description "src IP v4 address"; + } + leaf payload_srcipv6 { + type address_Ipv6; + description "src IP v6 address"; + } + leaf payload_srcmac { + type address_Mac; + description "src mac address"; + } + leaf payload_dstip { + type address_Ipv4; + description "dst IP v4 address"; + } + leaf payload_dstipv6 { + type address_Ipv6; + description "dst IP v6 address"; + } + leaf payload_dstmac { + type address_Mac; + description "dst mac address"; + } + leaf payload_srcport { + type uint16; + description "payload src port"; + } + leaf payload_dstport { + type uint16; + description "payload dst port"; } - // Operational mode - // Type is an MO-Defined-Type - leaf operChannelMode { - config "false"; - description "Operational Mode"; + // protocol + leaf payload_protocol { - // Type is an MO-Defined-Type - type pc_Mode; + type ngoam_Protocol; + description "payload protocol"; } - // Last status - successful/failed - // Type is an MO-Defined-Type - leaf lastSt { - config "false"; - description "Last Status - Successful/failed"; + // Source Interface + leaf payload_srcif { - // Type is an MO-Defined-Type - type pc_LastSt; + type nw_IfId; + description "payload source interface"; } - leaf lastStCause { - config "false"; - type string; + + // Result for fabric ping + container pingnverslt-items { + list PingNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PingNveRslt-group; + description "Ping Nve Result list"; + } + description "Ping Nve Result"; } + } - // Time when last status was set - // Type is an MO-Defined-Type - leaf lastTime { + grouping ngoam_PingNveRslt-group { + description "Ping Nve Result"; + + // Prof. Name + leaf sessionId { config "false"; - description "Time when Last Status was Set"; - // Type is an MO-Defined-Type - type pc_Time; + type ngoam_SessionId; + description "Name"; } - // Time of port-channel creation - // Type is an MO-Defined-Type - leaf createTime { + leaf descr { config "false"; - description "Time of Port-channel Creation"; - // Type is an MO-Defined-Type - type pc_Time; + type action_Descr; + description "Description"; } - // First operational port - // Type is an MO-Defined-Type - leaf fop { + // Time that the task started + leaf startTs { config "false"; - description "First Operational Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type mo_TStamp; + description "TBD"; } - // Time of last member addition - // Type is an MO-Defined-Type - leaf lastBundleTime { + // Task rule type + leaf type { config "false"; - description "Time of Last Member Addition"; - // Type is an MO-Defined-Type - type pc_Time; + type action_Type; + description "TBD"; } - // Last member added - // Type is an MO-Defined-Type - leaf lastBundleMbr { + leaf rSz { config "false"; - description "Last Member Added"; - // Type is an MO-Defined-Type - type nw_IfId; + type action_RetentionSize; + description "TBD"; } - // Time of last member removal - // Type is an MO-Defined-Type - leaf lastUnbundleTime { + // Retention time of task results + leaf rTm { config "false"; - description "Time of Last Member Removal"; - // Type is an MO-Defined-Type - type pc_Time; + type action_RetentionTime; + description "TBD"; + } + leaf peerClassId { + config "false"; + type string; } - // Last member removed - // Type is an MO-Defined-Type - leaf lastUnbundleMbr { + // Qualifier for the above status + leaf qual { config "false"; - description "Last Member Removed"; - // Type is an MO-Defined-Type - type nw_IfId; + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; } - // port-channel suspended due to min-links - // Type is an MO-Defined-Type - leaf suspMinlinks { + // Time that the task ended + leaf endTs { config "false"; - description "Port-channel Suspended Due to Min-links"; - // Type is an MO-Defined-Type - type pc_SuspMinlinks; + type mo_TStamp; + description "TBD"; } - // PIXM-allocated LTL - // Type is an MO-Defined-Type - leaf ltl { + // Runtime status of the task + leaf operSt { config "false"; - description "PIXM-allocated LTL"; - // Type is an MO-Defined-Type - type pc_Ltl; + type action_OperSt; + description "Runtime status of the task"; + } + leaf replyIp { + config "false"; + type address_Ipv4; + description "IPv4 Address"; + } + leaf replyIpv6 { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf nodeName { + config "false"; + type string; + description "Node name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; + type string; + description "Failure Reason"; } - // ELTM-allocated LIF - // Type is an MO-Defined-Type - leaf lif { + // Source port + leaf sPort { config "false"; - description "ELTM-allocated LIF"; - // Type is an MO-Defined-Type - type pc_Lif; + type ngoam_SrcPort; + description "VxLAN outer UDP Source Port -- Will be deprecated. Please use verbose"; + } + leaf verbose { + config "false"; + type string; + description "Verbose info, fabric specific verbose info from the replies"; } - // Max possible active members - // Type is an MO-Defined-Type - leaf maxActive { + // packet size + leaf packetSz { config "false"; - description "Max Possible Active Members"; - // Type is an MO-Defined-Type - type pc_MaxActive; + type ngoam_PktSz; + description "Packet Size"; } - // Time when first non-fop port came up - // Type is an MO-Defined-Type - leaf loadDeferStartTime { + // Number of packets sent + leaf sentPkts { config "false"; - description "Time when First Non-fop Port Came Up"; - // Type is an MO-Defined-Type - type pc_Time; - } - leaf isExplicit { - type boolean; - default "true"; + type ngoam_Counter; + description "Sent Packets"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of packets not sent + leaf notSentPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ngoam_Counter; + description "Not Sent Packets"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Number of packets received + leaf rcvdPkts { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type ngoam_Counter; + description "Received Packets"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Minimum round trip time of all the packets that + // have been sent in one exec + leaf minRtt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type ngoam_Rtt; + description "Minimum Round Trip Time"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + // Average round trip time of all the packets that + // have been sent in one exec + leaf avgRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type ngoam_Rtt; + description "Average Round Trip Time"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // Maximum round trip time of all the packets that + // have been sent in one exec + leaf maxRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_Speed; + type ngoam_Rtt; + description "Maximum Round Trip Time"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // Total Rtt of all the packets sent + leaf totalRtt { + config "false"; - // Type is an MO-Defined-Type - type l1_Duplex; + type ngoam_Rtt; + description "Total Round Trip Time"; } + } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + grouping ngoam_XconCfg-group { + description "Ngoam xconnect configs"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + // xconnect_hb_interval + leaf hbinterval { + + type ngoam_HbInterval; + description "Heartbeat interval"; } + } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; + grouping nxapi_Inst-group { + description "NXAPI Instance"; - // Type is an MO-Defined-Type - type l1_Mtu; + leaf httpPort { + + type nxapi_HttpPort; + description "HTTP Port"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + leaf httpsPort { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type nxapi_HttpsPort; + description "HTTPS Port"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf useVrf { - // Type is an MO-Defined-Type - type l1_Mode; + type os_OsString; + description "Vrf for NX-API"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Modified by Override: pc:AggrIf->layer - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf layer { - description "Layer"; + leaf certFile { - // Type is a Local-MO-Defined-Type - type l1_Layer_AggrIf_layer; + type os_OsString; + description "Certificate file for NX-API"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + leaf keyFile { - // Type is an MO-Defined-Type - type l1_Mdix; + type os_OsString; + description "Key file for NX-API"; } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; + leaf encrKeyPassphrase { - // Type is an MO-Defined-Type - type l1_Delay; + type nxapi_keyPassphrase; + description "Passphrase to decrypt the encrypted key file for NX-API"; + } + leaf certEnable { + type boolean; + description "Certificate status of NX-API"; + } + leaf sslCiphersWeak { + type boolean; + default "false"; + description "Enable Weak Ciphers for SSL"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + leaf sslProtocols { - // Type is an MO-Defined-Type - type l1_LinkDebounce; + type nxapi_SslProtocols; + description "String of space separated SSL protocols to be supported"; } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + leaf clientCertAuth { - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + type nxapi_ClientCertAuthType; + description "Enable Mutual SSL Certificate Authentication for NXAPI between client and server and set verficiation restriction level"; } + } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + grouping ofm_Inst-group { + description "Static Tunnel"; + container tunnelprofile-items { + list TunnelProfile-list { + key "profName"; - // Type is an MO-Defined-Type - type l1_Bw; + uses ofm_TunnelProfile-group; + description "TunnelProfile list"; + } + description "TunnelProfile"; } + } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + grouping ofm_TunnelProfile-group { + description "TunnelProfile"; - // Type is an MO-Defined-Type - type l1_Medium; + leaf profName { + + type ofm_profileName; + description "Name of Tunnel Profile"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + leaf encaptype { - // Type is an MO-Defined-Type - type l1_InheritBw; + type ofm_encapType; + description "Encapsulation type for tunnel profile"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + leaf srcID { - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_IfId; + description "Source ID for Src vtep IP"; } + container route-items { + list Route-list { + key "vrfName route nhvrf nexthop"; - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + uses ofm_Route-group; + description "Tunnel Route list"; + } + description "Tunnel Route"; + } + } - // Type is an MO-Defined-Type - type l1_LinkLog; + grouping ofm_Route-group { + description "Tunnel Route"; + + leaf vrfName { + + type l3_VrfName; + description "Vrf name for dest Route"; + } + leaf route { + type address_Ip; + description "IP address of dest route"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + leaf nhvrf { - // Type is an MO-Defined-Type - type l1_TrunkLog; + type l3_VrfName; + description "vrf name of next hop"; } - leaf routerMac { + leaf nexthop { + type address_Ip; + description "IP address of next hop"; + } + leaf vni { + type uint32; + description "Virtual Network Identifier"; + } + leaf dmac { type address_Mac; - default "0"; + description "MAC Address of remote VTEP"; } + } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + grouping poe_Entity-group { + description "poe Entity"; - // Type is an MO-Defined-Type - type eqpt_PortT; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_PortUsage; + type nw_AdminSt; + description "Admin State"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type nw_EntOperSt; + description "Operational State"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // This class shall store the global configuration + // for a running poe instance + container inst-items { - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + uses poe_Inst-group; + description "Power on Ethernet Instance"; } + container physif-items { + list PhysIf-list { + key "id"; - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; - - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + uses poe_PhysIf-group; + description "Power on Ethernet Interface list"; + } + description "Power on Ethernet Interface"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // This object configs module logging level + container modloglevel-items { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + uses poe_ModLogLevel-group; + description "Config POE logging level"; } + } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + grouping poe_Inst-group { + description "Power on Ethernet Instance"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - container priorflowctrl-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=priorflowctrl - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrl-group; + type nw_AdminSt; + description "Admin State"; } - container priorflowctrlwd-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=priorflowctrlwd - // Acquired From Package ipqos - uses ipqos_PriorFlowCtrlWd-group; + type nw_InstCtrl; + description "Controls"; } + } - // EEE policy - container eeep-items { + grouping poe_PhysIf-group { + description "Power on Ethernet Interface"; - // Added containment as a singleton: Prefix=eeep - // Acquired From Package l1 - uses l1_EeeP-group; + leaf portMode { + + type poe_poePortmode; + description "POE interface's current port mode "; + } + leaf maxConsumption { + type uint64; + description "POE interface's current max port consumption"; } - // Storm control policy - container stormctrlp-items { + leaf portPriority { - // Added containment as a singleton: Prefix=stormctrlp - // Acquired From Package l1 - uses l1_StormCtrlP-group; + type poe_poePriority; + description "POE interface's current port Priority "; } - // Load interval policy - container loadp-items { + leaf portPolice { - // Added containment as a singleton: Prefix=loadp - // Acquired From Package l1 - uses l1_LoadP-group; + type poe_poePolice; + description "POE interface's current port police action "; + } + leaf portDefaultConsumption { + type uint64; + description "POE interface's default port consumption"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + leaf name { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Port-channel interface information holder - container aggrif-items { + leaf descr { - // Added containment as a singleton: Prefix=aggrif - // Acquired From Package ethpm - uses ethpm_AggrIf-group; + type naming_Descr1024; + description "Description"; } - container bundleInfo-items { + // Interface ID of this endpoint + leaf id { - // Added containment as a singleton: Prefix=bundleInfo - // Acquired From Package pc - uses pc_BundleInfo-group; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container aggrExtd-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=aggrExtd - // Acquired From Package pc - uses pc_AggrIfExtended-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Vlan Mapping policy - container vlanmapping-items { + grouping poe_ModLogLevel-group { + description "Config POE logging level"; - // Added containment as a singleton: Prefix=vlanmapping - // Acquired From Package pc - uses pc_VlanMapping-group; + // logging level + leaf loggingLevel { + + type poe_LoggingLevel; + description "Logging Level"; } - // BndlMbrIf class - container bndlmbrif-items { - list BndlMbrIf-list { - config "false"; - key "id"; + // logging type + leaf loggingType { + config "false"; - // Added containment: Prefix=bndlmbrif - // Acquired From Package pc - uses pc_BndlMbrIf-group; - } + type poe_LoggingType; + description "Logging type"; } + } - container multisiteiftracking-items { - - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; - } + grouping qosm_Entity-group { + description "QoS Entity"; - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + leaf name { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from fexBndlGrpToAggrIf - // Inherited From pc:AggrIf - container rtfexBndlGrpToAggrIf-items { + // - Admin state + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=rtfexBndlGrpToAggrIf - // Acquired From Package infra - uses infra_RtFexBndlGrpToAggrIf_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from accBndlGrpToAggrIf - // Inherited From pc:AggrIf - container rtaccBndlGrpToAggrIf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtaccBndlGrpToAggrIf - // Acquired From Package infra - uses infra_RtAccBndlGrpToAggrIf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtextConf-items { + // Qos interface defintion. Holds information about qos + // operated at a class level + container class-items { + list Class-list { + config "false"; + key "qosGrp"; - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses qosm_Class-group; + description "Class list"; + } + description "Class"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtbrConf-items { + // Qos interface defintion. Holds information about qos + // operated at a interface level + container if-items { + list If-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses qosm_If-group; + description "Qos Interface list"; + } + description "Qos Interface"; } - // Rel-def target from vpcConf - // Inherited From pc:AggrIf - container rtvpcConf-items { + // Holder for qos fabric class policy, each class describes + // qos attributes like mtu, etc + container classp-items { + list Class-list { + config "false"; + key "qosGrp"; - // Added containment as a singleton: Prefix=rtvpcConf - // Acquired From Package vpc - uses vpc_RtVpcConf_target-group; + uses qosp_Class-group; + description "QoS Class list"; + } + description "QoS Class"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtfvNodePortAtt-items { - - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { + // Qos classification rules based on dscp values + container dscp-items { + list DscpRule-list { config "false"; - key "tDn"; + key "from to qosGrp markDscp"; - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + uses qosp_DscpRule-group; + description "DSCP QoS Classification Rule list"; } + description "DSCP QoS Classification Rule"; } - // Rel-def from mbrIfs - container rsmbrIfs-items { - - // Abstract containment of rsmbrIfs derived from pc:AggrIf - list RsMbrIfs-list { - key "tDn"; + // Qos classification rules based on dot1p values + container dot1p-items { + list Dot1pRule-list { + config "false"; + key "from to qosGrp markDscp"; - // Added containment: Prefix=rsmbrIfs - // Acquired From Package pc - uses pc_RsMbrIfs_source-group; + uses qosp_Dot1pRule-group; + description "Dot1p QoS Classification Rule list"; } + description "Dot1p QoS Classification Rule"; } - // Rel-def from lacpPolCons - container rslacpPolCons-items { + // Qos classification rules based on IP values + container ip-items { + list IpRule-list { + config "false"; + key "addr"; - // Added containment as a singleton: Prefix=rslacpPolCons - // Acquired From Package pc - uses pc_RsLacpPolCons_source-group; + uses qosp_IpRule-group; + description "IP Classification Rule list"; + } + description "IP Classification Rule"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } + grouping qosm_Class-group { + description "Class"; - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtphysRtdConf-items { + // QoS Group + leaf qosGrp { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type qos_Prio; + description "ID"; } + } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtl3EncPhysRtdConf-items { + grouping qosm_If-group { + description "Qos Interface"; - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Interface ID + leaf id { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_IfId; + description "ID"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // IfClass information. Holds information about qos operated + // at a per port per class level + container class-items { + list IfClass-list { config "false"; - key "tDn"; + key "id"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses qosm_IfClass-group; + description "Qos Interface Class list"; } + description "Qos Interface Class"; } + } + + grouping qosm_IfClass-group { + description "Qos Interface Class"; - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - container rtLsNodeToIf-items { + // Class id + leaf id { + config "false"; - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; + type qos_Prio; + description "ID"; } + } - container dbgIfIn-items { + grouping qosp_Class-group { + description "QoS Class"; - // Added containment as a singleton: Prefix=dbgIfIn - // Acquired From Package rmon - uses rmon_IfIn-group; + // Administrative state + leaf admin { + config "false"; + + type nw_AdminSt; + description "Admin State"; } - container dbgIfOut-items { + // mtu + leaf mtu { + config "false"; - // Added containment as a singleton: Prefix=dbgIfOut - // Acquired From Package rmon - uses rmon_IfOut-group; + type qosp_MTU; + description "MTU"; } - container dbgIpIn-items { + // Class id + leaf qosGrp { + config "false"; - // Added containment as a singleton: Prefix=dbgIpIn - // Acquired From Package rmon - uses rmon_IpIn-group; + type qos_Prio; + description "Priority"; } - container dbgDot1d-items { + // Qos Class operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=dbgDot1d - // Acquired From Package rmon - uses rmon_Dot1d-group; + type qosp_OperSt; + description "Operational State"; } - container dbgEtherStats-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=dbgEtherStats - // Acquired From Package rmon - uses rmon_EtherStats-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container dbgDot3Stats-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=dbgDot3Stats - // Acquired From Package rmon - uses rmon_Dot3Stats-group; + type naming_Descr; + description "Description of the specified attribute"; } - container dbgIfHCIn-items { + // Congestion policy holder, describes the congestion + // parameters like congestion algo, ecn etc. These are + // applied at a per class today in the system + container cong-items { - // Added containment as a singleton: Prefix=dbgIfHCIn - // Acquired From Package rmon - uses rmon_IfHCIn-group; + uses qosp_Cong-group; + description "Congestion"; } - container dbgIfHCOut-items { + // Queue management policy holder, describes the queue + // threshold parameters like management method, limts, + // etc. These are applied at a per class today in the + // system + container queue-items { - // Added containment as a singleton: Prefix=dbgIfHCOut - // Acquired From Package rmon - uses rmon_IfHCOut-group; + uses qosp_Queue-group; + description "Queue"; } - container dbgIpv6IfStats-items { + // Buffer policy holder, describes the minimum + // guaranteed packet buffer reservations. These are + // applied at a per class today in the system + container buffer-items { - // Added containment as a singleton: Prefix=dbgIpv6IfStats - // Acquired From Package rmon - uses rmon_Ipv6IfStats-group; + uses qosp_Buffer-group; + description "Buffer"; } - container dbgIfStorm-items { + // Schedule policy holder, describes the minimum + // guaranteed packet buffer reservations. These are + // applied at a per class today in the system + container sched-items { - // Added containment as a singleton: Prefix=dbgIfStorm - // Acquired From Package rmon - uses rmon_IfStorm-group; + uses qosp_Sched-group; + description "Schedule"; } } - grouping ethpm_AggrIf-group { - leaf numActivePorts { - config "false"; - type uint16; - } + grouping qosp_Cong-group { + description "Congestion"; - // list of active members - // Type is an MO-Defined-Type - leaf activeMbrs { + leaf name { config "false"; - description "List of Active Members"; - // Type is an MO-Defined-Type - type ethpm_ActiveMembersList; - } - leaf numMbrUp { - config "false"; - type uint8; - } - leaf ifIndex { - config "false"; - type uint32; - default "0"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operAutoNeg { + leaf descr { config "false"; - description "negotiate auto"; - // Type is an MO-Defined-Type - type l1_AutoNeg; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMtu { + // What algorithm to use when congestion happens + leaf algo { config "false"; - description "Operational Maximum transmission unit"; - // Type is an MO-Defined-Type - type l1_Mtu; + type qosp_CongAlgo; + description "TBD"; } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf adminSt { + // Explicit congestion notification (ecn) ECN is disabled for FCS, thus this is implicit + leaf ecn { config "false"; - description "Administrative State"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type qosp_ECN; + description "TBD"; } + } - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDescr { + grouping qosp_Queue-group { + description "Queue"; + + leaf name { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type ethpm_operDescr; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSt { + leaf descr { config "false"; - description "Operational Port State"; - // Type is an MO-Defined-Type - type l1_OperSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational port status reason - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQual { + // Queue control method (static/dynamic) + leaf meth { config "false"; - description "Operational State Failure Reason"; - // Type is an MO-Defined-Type - type l1_OperStQual; + type qosp_CtrlMeth; + description "TBD"; } - // Operational port status syserror code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operStQualCode { + // queue limit, only applicable with static control + // method + leaf limit { config "false"; - description "Operational Port Status Syserror Code"; - // Type is an MO-Defined-Type - type l1_OperStQualCode; + type qosp_QueueLimit; + description "TBD"; } + } - // Operational port err disable reason code - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operErrDisQual { + grouping qosp_Buffer-group { + description "Buffer"; + + leaf name { config "false"; - description "Operational Port Error Disable Reason Code"; - // Type is an MO-Defined-Type - type l1_OperErrDisQual; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port speed - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operSpeed { + leaf descr { config "false"; - description "Operational Port Speed"; - // Type is an MO-Defined-Type - type l1_Speed; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational port mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMode { + // Minimum buffers reserved in units of MTU + leaf min { config "false"; - description "Operational Port Mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type qosp_MinBuf; + description "TBD"; } + } - // Operational duplex - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDuplex { + grouping qosp_Sched-group { + description "Schedule"; + + leaf name { config "false"; - description "Operational Duplex State"; - // Type is an MO-Defined-Type - type l1_Duplex; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational port flow control - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operFlowCtrl { + leaf descr { config "false"; - description "Operational Port Flow Control"; - // Type is an MO-Defined-Type - type l1_FlowControl; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational phy port enable state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operPhyEnSt { + // Scheduling algorithm + leaf meth { config "false"; - description "Operational Physical Port Enable State"; - // Type is an MO-Defined-Type - type l1_OperSt; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; + type qosp_SchedAlgo; + description "TBD"; } - // port Tx type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf txT { + // If wrr, what is the bandwidth allocated (in %) + leaf bw { config "false"; - description "Port Transmit Type"; - // Type is an MO-Defined-Type - type l1_TxT; - } - leaf lastLinkStChg { - config "false"; - type string; - } - leaf portCfgWaitFlags { - config "false"; - type uint32; - } - leaf accessVlan { - config "false"; - type string; - } - leaf nativeVlan { - config "false"; - type string; - } - leaf cfgNativeVlan { - config "false"; - type string; - } - leaf cfgAccessVlan { - config "false"; - type string; - } - leaf primaryVlan { - config "false"; - type string; + type qosp_BwPercent; + description "TBD"; } + } - // port oper bitset - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operBitset { + grouping qosp_DscpRule-group { + description "DSCP QoS Classification Rule"; + + // Range from + leaf from { config "false"; - description "Port Oper Bitset"; - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type qosp_Dscp; + description "From"; } - // vdc id - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf vdcId { + // Range to + leaf to { config "false"; - description "Vdc Id"; - // Type is an MO-Defined-Type - type l2_VdcId; - } - leaf resetCtr { - config "false"; - type uint32; + type qosp_Dscp; + description "To"; } - leaf media { + + leaf name { config "false"; - type uint32; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf encap { + + leaf descr { config "false"; - type uint32; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf iod { + + // Group Id + leaf qosGrp { config "false"; - type uint64; + + type qos_Prio; + description "Group ID"; } - // allowed vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf allowedVlans { + // Mark Dscp + leaf markDscp { config "false"; - description "Allowed Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_Dscp; + description "DSCP"; } - // operational vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operVlans { + // Qos Class operational state + leaf operSt { config "false"; - description "Operational Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_OperSt; + description "Operational State"; } + } - // errored vlans - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf errVlans { + grouping qosp_Dot1pRule-group { + description "Dot1p QoS Classification Rule"; + + // Range from + leaf from { config "false"; - description "Errored Vlans"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type qosp_Dot1P; + description "From"; } - // trunk status - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operTrunkStatus { + // Range to + leaf to { config "false"; - description "Trunking Status"; - // Type is an MO-Defined-Type - type ethpm_TrunkStatus; + type qosp_Dot1P; + description "To"; } - // bundle index - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf bundleIndex { + leaf name { config "false"; - description "Interface Bundle Index - table for a particular output primitive"; - // Type is an MO-Defined-Type - type nw_IfId; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // port oper mdix mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operMdix { + leaf descr { config "false"; - description "Port Oper Mdix Mode"; - // Type is an MO-Defined-Type - type l1_Mdix; + type naming_Descr; + description "Description of the specified attribute"; } - leaf currErrIndex { + + // Group Id + leaf qosGrp { config "false"; - type uint32; + + type qos_Prio; + description "Group ID"; } - // last seen errors - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf lastErrors { + // Mark Dscp + leaf markDscp { config "false"; - description "Last Seen Errors"; - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type qosp_Dscp; + description "DSCP"; } - leaf errDisTimerRunning { + + // Qos Class operational state + leaf operSt { config "false"; - type boolean; + + type qosp_OperSt; + description "Operational State"; } - leaf bundleBupId { + } + + grouping qosp_IpRule-group { + description "IP Classification Rule"; + leaf addr { config "false"; - type uint32; + type address_Ip; + description "IP Address"; } - // Operational Dce Mode - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operDceMode { + leaf name { config "false"; - description "Operational Dce Mode"; - // Type is an MO-Defined-Type - type l1_DceMode; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // interface type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf intfT { + leaf descr { config "false"; - description "Interface Type"; - // Type is an MO-Defined-Type - type l1_IntfT; + type naming_Descr; + description "Description of the specified attribute"; } - // port diags type - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf diags { + // Group Id + leaf qosGrp { config "false"; - description "Port Diags Type"; - // Type is an MO-Defined-Type - type l1_DiagsT; + type qos_Prio; + description "Group ID"; } - // Operational port EEE state - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf operEEEState { + // Mark Dscp + leaf markDscp { config "false"; - description "Operational Port EEE State"; - // Type is an MO-Defined-Type - type l1_EEEState; - } - leaf operEEETxWkTime { - config "false"; - type uint32; + type qosp_Dscp; + description "DSCP"; } - leaf operEEERxWkTime { + + // Qos Class operational state + leaf operSt { config "false"; - type uint32; + + type qosp_OperSt; + description "Operational State"; } + } - // port user config flags - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf userCfgdFlags { - config "false"; - description "Port User Config Flags"; + grouping sisf_Entity-group { + description "Enable/Disable FHS feature"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf numOfSI { - config "false"; - type uint32; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // configured sub-interface ids - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf siList { + // Operational state + leaf operSt { config "false"; - description "Configured Sub-interface Ids"; - // Type is an MO-Defined-Type - type ethpm_SiBitmap; + type nw_EntOperSt; + description "Operational State"; } - leaf dynamicVlan { + + // Operational errors qualifier + leaf operErr { config "false"; - type boolean; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Liked from l1:EthIf:usage - // Inherited From ethpm:If - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage"; + // This objects hold per sisf instance information. There is only + // one instance of dhcp running in the system today + container snooping-items { + list InstSnooping-list { + key "policyName"; - // Type is an MO-Defined-Type - type l1_PortUsage; + uses sisf_InstSnooping-group; + description "Configure a snooping policy for FHS feature list"; + } + description "Configure a snooping policy for FHS feature"; } - container portcap-items { + // Ipv6 Neighbor Binding Global Configuration + container neighborbinding-items { - // Added containment as a singleton: Prefix=portcap - // Acquired From Package ethpm - uses ethpm_PortCap-group; + uses sisf_InstBinding-group; + description "Configure IPv6 snoopiong binding table global setting"; } - } - grouping pc_BundleInfo-group { + // Ipv6 DHCP Guard Configure + container dhcpguard-items { + list InstDhcpGuard-list { + key "policyName"; - // Type is an MO-Defined-Type - leaf operType { - config "false"; - description "P ort channel type"; + uses sisf_InstDhcpGuard-group; + description "Configure a dhcp guard policy for FHS feature list"; + } + description "Configure a dhcp guard policy for FHS feature"; + } - // Type is an MO-Defined-Type - type pc_PortChannelType; + // Ipv6 RA Guard Configure + container raguard-items { + list InstRaGuard-list { + key "policyName"; + + uses sisf_InstRaGuard-group; + description "Configure a nd raguard policy for FHS feature list"; + } + description "Configure a nd raguard policy for FHS feature"; } - // Type is an MO-Defined-Type - leaf operProtocol { - config "false"; - description "Port channel protocol"; + // This object holds bfd interface information + container fhsif-items { + list FhsIf-list { + key "id"; - // Type is an MO-Defined-Type - type pc_PortChannelProtocol; + uses sisf_FhsIf-group; + description "Configure interface for FHS feature list"; + } + description "Configure interface for FHS feature"; + } + container fhsvlan-items { + list FhsVlan-list { + key "vlanID"; + + uses sisf_FhsVlan-group; + description "SISF Vlan list"; + } + description "SISF Vlan"; } } - grouping pc_AggrIfExtended-group { + grouping sisf_InstSnooping-group { + description "Configure a snooping policy for FHS feature"; + leaf policyName { + type string; + description "Name of the snooping policy"; + } + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; + } - // Type is an MO-Defined-Type - leaf poType { - description "Port-channel type"; + leaf deviceRole { - // Type is an MO-Defined-Type - type pc_PoType; + type sisf_deviceRole; + description "Sets the role of the device attached to the port"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf ndpProtocol { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sisf_ndpflag; + description "Glean addresses in NDP packets"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf dhcpProtocol { - // Type is an MO-Defined-Type - type naming_Descr1024; + type sisf_dhcpflag; + description "Glean addresses in DHCP packets"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf securityLevel { - // Type is an MO-Defined-Type - type nw_IfId; + type sisf_securityLevel; + description "Setup security level of snoopiong policy"; } - // Port-type that the interface is facing - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf portTypeFabric { - description "Identifies if or not the port is a fabric-facing port"; + leaf limitAddressCount { - // Type is an MO-Defined-Type - type l1_PortTypeFabric; + type sisf_limitAddressCount; + description "Configure maximum address per port"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + leaf tracking { - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + type sisf_NonGlobalTracking; + description "Override default tracking behavior"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportBlock { - description "Disable/enable switchport block on interface"; + leaf reachableLifetimer { - // Type is an MO-Defined-Type - type l1_SwitchportBlock; + type sisf_reachableLifetimerSnoopingPolicy; + description "TBD"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportMacLearn { - description "Disable/enable mac learning on interface"; + leaf staleLifetimer { - // Type is an MO-Defined-Type - type l1_switchportMacLearn; + type sisf_staleLifetimerSnoopingPolicy; + description "TBD"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf flowCtrl { - description "Disable/enable flowcontrol block on interface"; + leaf name { - // Type is an MO-Defined-Type - type l1_FlowControl; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastLevel { - description "storm-control broadcast level"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type nw_AdminSt; + description "Admin State"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlBCastPPS { - description "storm-control broadcast PPS"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + type nw_InstCtrl; + description "Controls"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastLevel { - description "storm-control multicast level"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlMCastPPS { - description "storm-control multicast PPS"; + grouping sisf_InstBinding-group { + description "Configure IPv6 snoopiong binding table global setting"; + leaf logging { + type boolean; + description "Enable syslog logging of IPv6 snooping binding table events"; + } - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + leaf maxEntries { + + type sisf_maxEntries; + description "Define maximum number of entries in the IPv6 snoopiong binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastLevel { - description "Storm control unicast level"; + leaf vlanLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlRate; + type sisf_vlanLimit; + description "Define maximum number of entries allowed per vlan"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlUCastPPS { - description "Storm control unicast PPS"; + leaf macLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlPPS; + type sisf_macLimit; + description "Define maximum number of entries allowed per mac"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf stormCtrlAct { - description "Storm control action"; + leaf portLimit { - // Type is an MO-Defined-Type - type l1_StormCtrlAct; + type sisf_portLimit; + description "Define maximum number of entries allowed per port"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf bufferBoost { - description "Disable/enable buffer boost on interface"; + leaf reachableLifetimer { - // Type is an MO-Defined-Type - type l1_BufferBoost; + type sisf_reachableLifetimer; + description "Set reachable-lifetimer of IPv6 snooping binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf switchportVirtualEthernetBridge { - description "Disable/enable switchport virtual ethernet bridge on interface"; + leaf staleLifetimer { - // Type is an MO-Defined-Type - type l1_SwitchportVirtualEthernetBridge; + type sisf_staleLifetimer; + description "Set stale-lifetimer of IPv6 snooping binding table"; } - // Inherited From l1:EthIfExtended - // Type is an MO-Defined-Type - leaf allowMultiTag { - description "Allow Multitag"; + leaf downLifetimer { - // Type is an MO-Defined-Type - type l1_AllowMultiTag; + type sisf_downLifetimer; + description "Set down-lifetimer of IPv6 snooping binding table"; + } + leaf tracking { + type boolean; + default "false"; + description "Configure IPv6 snooping tracking for static binding entry"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - container rtvrfMbr-items { + leaf retryInterval { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_retryInterval; + description "Configure interval time between two probings"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping pc_VlanMapping-group { - leaf Enabled { - type boolean; - default "false"; + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Vlan Translate Table policy - container vlantranslatetable-items { + // Instance controls + leaf ctrl { - // Added containment as a singleton: Prefix=vlantranslatetable - // Acquired From Package pc - uses pc_VlanTranslateTable-group; + type nw_InstCtrl; + description "Controls"; } - } - grouping pc_VlanTranslateTable-group { + // Operational errors qualifier + leaf operErr { + config "false"; - // Vlan Translate Table policy Vlan Translate Entry policy - container vlan-items { - list VlanTranslateEntry-list { - key "vlanid"; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + container bindingip-items { + list StaticBinding-list { + key "v6Addr vlanID"; - // Added containment: Prefix=vlan - // Acquired From Package pc - uses pc_VlanTranslateEntry-group; + uses sisf_StaticBinding-group; + description "Create static binding entry in IPv6 snooping binding table of FHS feature list"; } + description "Create static binding entry in IPv6 snooping binding table of FHS feature"; } } - grouping pc_VlanTranslateEntry-group { + grouping sisf_StaticBinding-group { + description "Create static binding entry in IPv6 snooping binding table of FHS feature"; - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan Id"; + leaf vlanID { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type sisf_VlanID; + description "Configure Vlan ID of static binding entry"; + } + leaf v6Addr { + type address_Ipv6; + description "Configure IPv6 address of static binding entry"; } - // Type is an MO-Defined-Type - leaf innervlanid { - description "Inner Vlan Id"; + leaf interface { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type nw_IfId; + description "Configure interface of static binding entry"; + } + leaf mac { + type address_Mac; + description "Configure mac address of static binding entry"; } - // Type is an MO-Defined-Type - leaf translatevlanid { - description "Translate Vlan Id"; + leaf tracking { - // Type is an MO-Defined-Type - type l1_translatevlanid; + type sisf_NonGlobalTracking; + description "Configure tracking option of static binding entry"; } - } - - grouping pc_BndlMbrIf-group { - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface index"; + leaf retryInterval { - // Type is an MO-Defined-Type - type nw_IfId; + type sisf_RetryIntervalBinding; + description "Configure retry interfval between two probings of static binding entry"; } - } - grouping l3_RtdIf-group { + leaf reachableLifetimer { + + type sisf_ReachableLifetimerBinding; + description "Configure reachable-lifetimer of static binding entry"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_InstCtrl; + description "Controls"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtpseudoIf-items { - - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + grouping sisf_InstDhcpGuard-group { + description "Configure a dhcp guard policy for FHS feature"; + leaf policyName { + type string; + description "Name of dhcp guard policy"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtvrfMbr-items { + leaf deviceRole { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_dhcpGuardDeviceRole; + description "Set the role of device attached to the port"; } - - // Rel-def from physRtdConf - container rsphysRtdConf-items { - - // Added containment as a singleton: Prefix=rsphysRtdConf - // Acquired From Package l3 - uses l3_RsPhysRtdConf_source-group; + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf preferenceMax { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type sisf_preferenceMax; + description "Configure maximum allowed advertised server preference"; } - } - - grouping l3_LbRtdIf-group { - // Administrative link logging enable - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative Link Logging Enable"; + leaf preferenceMin { - // Type is an MO-Defined-Type - type l1_LinkLog; + type sisf_preferenceMin; + description "Configure minimum allowed advertised server preference"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l3:LbRtdIf->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_InstCtrl; + description "Controls"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { - - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + grouping sisf_InstRaGuard-group { + description "Configure a nd raguard policy for FHS feature"; + leaf policyName { + type string; + description "Name of the nd raguard policy"; } - // loopback interface information holder - container lbrtdif-items { + leaf deviceRole { - // Added containment as a singleton: Prefix=lbrtdif - // Acquired From Package ethpm - uses ethpm_LbRtdIf-group; + type sisf_raGuardDeviceRole; + description "Set the role of the device attached to the port"; + } + leaf trustedPortEnabled { + type boolean; + description "Setup trusted port"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtpseudoIf-items { + leaf routerPreferenceMaximum { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sisf_raGuardRouterPreferenceMaximum; + description "Enable verification of the advertised router preference"; } - // Rel-def target from operSourceInterface - // Inherited From l3:LbRtdIf - container rtoperSourceInterface-items { + leaf hopLimitMax { - // Added containment as a singleton: Prefix=rtoperSourceInterface - // Acquired From Package nvo - uses nvo_RtOperSourceInterface_target-group; + type sisf_hopLimitMax; + description "Enable verification of the maximum advertised hop count limit"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtvrfMbr-items { + leaf hopLimitMin { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sisf_hopLimitMin; + description "Enable verification of the minimum advertised hop count limit"; } - // Rel-def from protLbIf - container rsprotLbIf-items { + leaf managedConfig { - // Added containment as a singleton: Prefix=rsprotLbIf - // Acquired From Package l3 - uses l3_RsProtLbIf_source-group; + type sisf_raGuardManagedConfig; + description "Enable verification of the advertised M flag"; } - // Rel-def from lbIfToLocale - container rslbIfToLocale-items { + leaf otherConfig { - // Abstract containment of rslbIfToLocale derived from l3:LbRtdIf - list RsLbIfToLocale-list { - key "tDn"; + type sisf_raGuardOtherConfig; + description "Enable verification of the advertised O flag"; + } - // Added containment: Prefix=rslbIfToLocale - // Acquired From Package l3 - uses l3_RsLbIfToLocale_source-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def from LbIfToOutRef - container rslbIfToOutRef-items { - - // Abstract containment of rslbIfToOutRef derived from l3:LbRtdIf - list RsLbIfToOutRef-list { - key "tDn"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=rslbIfToOutRef - // Acquired From Package l3 - uses l3_RsLbIfToOutRef_source-group; - } + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_InstCtrl; + description "Controls"; } - } - grouping ethpm_LbRtdIf-group { - leaf ifIndex { + // Operational errors qualifier + leaf operErr { config "false"; - type uint32; - default "0"; - } - leaf iod { - config "false"; - type uint64; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + grouping sisf_FhsIf-group { + description "Configure interface for FHS feature"; + leaf snoopingPolicyName { + type string; + description "Attach a snooping policy of FHS feature"; + } + leaf dhcpGuardPolicyName { + type string; + description "Attach a dhcp guard policy of FHS feature"; + } + leaf raGuardPolicyName { + type string; + description "Attach a nd raguard policy of FHS feature"; + } + leaf deleted { config "false"; - description "Operational Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type boolean; + description "Delete the Mo if the target becomes l3"; } - // Operational MTU - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational MTU"; + leaf name { - // Type is an MO-Defined-Type - type l1_Mtu; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational Description - // Type is an MO-Defined-Type - leaf operDescr { - config "false"; - description "Operational Description"; + leaf descr { - // Type is an MO-Defined-Type - type ethpm_operDescr; + type naming_Descr1024; + description "Description"; } - // Operational state reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Failure Reason"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type l1_OperStQual; - } - leaf currErrIndex { - config "false"; - type uint32; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Last seen errors - // Type is an MO-Defined-Type - leaf lastErrors { - config "false"; - description "Last Seen Errors"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + type nw_IfAdminSt; + description "Admin State"; } - // Operational state flags - // Type is an MO-Defined-Type - leaf operBitset { - config "false"; - description "Operational State Flags"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping l3_EncRtdIf-group { + grouping sisf_FhsVlan-group { + description "SISF Vlan"; - // Interface Mtu Is it required, check with marketing? - // Type is an MO-Defined-Type - leaf mtu { - description "Interface Mtu"; + leaf vlanID { - // Type is an MO-Defined-Type - type l1_Mtu; + type sisf_VlanID; + description "Vlan Number"; } - leaf mtuInherit { - type boolean; - default "true"; + leaf snoopingPolicyName { + type string; + description "Attach a snooping policy of FHS feature"; } - - // Interface interface delay @@@ This is not exposed in IFC - // Type is an MO-Defined-Type - leaf delay { - description "Interface Interface Delay"; - - // Type is an MO-Defined-Type - type l1_Delay; + leaf dhcpGuardPolicyName { + type string; + description "Attach a dhcp guard policy of FHS feature"; } - leaf encap { + leaf raGuardPolicyName { type string; + description "Attach a nd raguard policy of FHS feature"; } + leaf deleted { + config "false"; + type boolean; + description "Delete the Mo if no vlan config"; + } + } - // Interface Bandwidth Is it required, check with marketing? - // Type is an MO-Defined-Type - leaf bw { - description "Interface Bandwidth"; + grouping sla_Entity-group { + description "SLA"; - // Type is an MO-Defined-Type - type l1_Bw; + // Holds service instance information + container inst-items { + + uses sla_Inst-group; + description "Instance"; } + } - // Interface link logging enable - // Type is an MO-Defined-Type - leaf linkLogEn { - description "Interface Link Logging Enable"; + grouping sla_Inst-group { + description "Instance"; - // Type is an MO-Defined-Type - type l1_LinkLog; - } - leaf routerMac { - type address_Mac; - default "0"; - } - leaf ifConnDn { - type string; + // Holds service control plane entity information + container sender-items { + + uses sla_Sender-group; + description "Sender"; } - // Interface link logging enable - // Type is an MO-Defined-Type - leaf mediumType { - description "Interface Medium Type"; + container responder-items { - // Type is an MO-Defined-Type - type l1_Medium; + uses sla_Responder-group; + description "sla Responder specific configs are handled with this mo"; } - // Type is an MO-Defined-Type - leaf routerMacIpv6Extract { - description "Disable/enable switchport ipv6 extract"; + container twampserver-items { - // Type is an MO-Defined-Type - type l1_RouterMacIpv6Extract; + uses sla_TwampServer-group; + description "Twamp"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping sla_Sender-group { + description "Sender"; + leaf loggingTraps { + type boolean; + description + "Enable syslog traps which sends the + trap meesages on reaction-config trap is enabled."; + } + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "3"; + description + "configures the logging level for ip sla sender. + The property can be set only if feature sla sender + is enabled."; + } + leaf resetSender { + type boolean; + default "false"; + description "Resets all sla probe related configuration."; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Holds service instance information + container operation-items { + list Probe-list { + key "id"; + + uses sla_Probe-group; + description "Probe configuration list"; } + description "Probe configuration"; } - // Inherited From nw:If - // Modified by Override: l3:EncRtdIf->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Scheduler starts a probe of any type for a destination monitroring + container groupschedule-items { + list GrpScheduler-list { + key "grpSchedulerId"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + uses sla_GrpScheduler-group; + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations list"; } + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type + grouping sla_Probe-group { + description "Probe configuration"; leaf id { - description "Interface ID"; + type uint32 { + range "1..2147483647"; + } + description + "Operation index which is unique for each probe, + all the probe related configs and the + statistics are displayed using this index."; + } + leaf restart { + type boolean; + default "false"; + description "Restarting a scheduled probe"; + } - // Type is an MO-Defined-Type - type nw_IfId; + container icmpecho-items { + + uses sla_IcmpEcho-group; + description "ICMP Echo Operation"; } - // Administrative state - // Inherited From l3:If - // Modified by Override: l3:EncRtdIf->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container tcpconnect-items { - // Type is an MO-Defined-Type - type l1_AdminSt; + uses sla_TcpConnect-group; + description "TCP Connect Operation to probe the server"; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + container http-items { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + uses sla_Http-group; + description + "The HTTP operation measures the round-trip time(RTT) + between a Cisco device and an HTTP server to retrieve a + web page."; } - // sub-interface information holder - container encrtdif-items { + container udpecho-items { - // Added containment as a singleton: Prefix=encrtdif - // Acquired From Package ethpm - uses ethpm_EncRtdIf-group; + uses sla_UdpEcho-group; + description "UDP Echo Operation"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtpseudoIf-items { + container udpjitter-items { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + uses sla_UdpJitter-group; + description "UDP Jitter Operation"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtvrfMbr-items { + container dns-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses sla_Dns-group; + description "DNS Operation to probe the DNS server"; } - // Rel-def from encPhysRtdConf - container rsencPhysRtdConf-items { + // Scheduler starts a probe of any type for a destination monitroring + container schedule-items { - // Added containment as a singleton: Prefix=rsencPhysRtdConf - // Acquired From Package l3 - uses l3_RsEncPhysRtdConf_source-group; + uses sla_Scheduler-group; + description "sla scheduler configurations"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Reaction trigger + container trigger-items { + list ReactionTrigger-list { + key "targetProbe"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses sla_ReactionTrigger-group; + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data. list"; + } + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + } + + // Reaction iconfiguration and reaction trigger + container reaction-items { + list Reaction-list { + key "reactOn"; + + uses sla_Reaction-group; + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data. list"; } + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; } } - grouping ethpm_EncRtdIf-group { - leaf ifIndex { - config "false"; - type uint32; - default "0"; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf operEncap { - config "false"; - type uint16; - } + grouping sla_IcmpEcho-group { + description "ICMP Echo Operation"; - // Type is an MO-Defined-Type - leaf operDescr { - config "false"; - description "Description"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type ethpm_operDescr; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - leaf fsmState { - config "false"; - type uint8; + + // Service monitoring timeout declaring the service down + leaf timeout { + + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - leaf iod { - config "false"; - type uint64; + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Port State"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type l1_OperSt; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // Operational state reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Failure Reason"; + leaf srcInterface { - // Type is an MO-Defined-Type - type l1_OperStQual; + type nw_IfId; + description + "Source Interface in which the ingress icmp + packet is received."; } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Maximum Transmission Unit"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type l1_Mtu; + type l3_VrfName; + description "vrf on which the probe is configured."; } - leaf currErrIndex { - config "false"; - type uint32; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Last seen errors - // Type is an MO-Defined-Type - leaf lastErrors { - config "false"; - description "Holds most recently seen errors"; - - // Type is an MO-Defined-Type - type ethpm_LastErrorsList; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Operational state flags - // Type is an MO-Defined-Type - leaf operBitset { - config "false"; - description "Specifies Operational State Flags"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type ethpm_PortOperBitmap; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - leaf siCfgFlags { - config "false"; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; + } + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; + } + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; + } + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; + } + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; + } + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } } - grouping svi_If-group { + grouping sla_TcpConnect-group { + description "TCP Connect Operation to probe the server"; - // VLAN ID associated with the SVI - // Type is an MO-Defined-Type - leaf vlanId { - description "VLAN ID Associated with the SVI"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type svi_VlanId; - } - leaf mac { - type address_Mac; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // Medium type (P2P or Broadcast) @@@ default value: Not coming from IFC - // Type is an MO-Defined-Type - leaf medium { - description "indicates the administrative port medium type"; + // Service monitoring timeout declaring the service down + leaf timeout { - // Type is an MO-Defined-Type - type svi_Medium; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - - // MTU of the SVI @@@ This comes from qos - // Type is an MO-Defined-Type - leaf mtu { - description "the administrative MTU port on the aggregated interface"; - - // Type is an MO-Defined-Type - type svi_Mtu; + leaf srcPort { + type uint32; + description + "Source TCP Port configuration for TCP probe, + if the srcPort is not configured then the + random source port will be used."; } - leaf mtuInherit { + leaf dstPort { + type uint32; + description + "Destination TCP Port configuration for the TCP + probe, it is must to configure the destination + port."; + } + leaf control { type boolean; default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - // Delay metric associated with the SVI - // Type is an MO-Defined-Type - leaf delay { - description "specifies the administrative port delay"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type svi_Delay; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Bandwidth metric associated with the SVI - // Type is an MO-Defined-Type - leaf bw { - description "specifies the administrative port bandwidth"; - - // Type is an MO-Defined-Type - type svi_Bw; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Carrier Delay: hold period for which Carrier transition - // like L2 interfacing going down is ignored. - // Type is an MO-Defined-Type - leaf carDel { + leaf srcip { + type address_Ip; description - "Carrier Delay: hold period for which Carrier transition - like L2 interfacing going down is ignored"; - - // Type is an MO-Defined-Type - type svi_CarrDelay; + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Load-averaging interval 1 @@@ Infrastrure level policy - // Type is an MO-Defined-Type - leaf loadIntvl1 { - description "Load-averaging Interval 1"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type svi_LoadIntvl1; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - - // Load-averaging interval 2 - // Type is an MO-Defined-Type - leaf loadIntvl2 { - description "Load-averaging Interval 2"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl2; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; } - - // Load-averaging interval 3 - // Type is an MO-Defined-Type - leaf loadIntvl3 { - description "Load-averaging Interval 3"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl3; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - leaf inbMgmt { - type boolean; + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf autostate { - type boolean; - default "true"; + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf snmpTrap { - type boolean; - default "true"; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - - // Operational state of the SVI - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "the runtime state of the object or policy"; - - // Type is an MO-Defined-Type - type svi_OperSt; + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Reason for operational state being down - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Reason for Operational State Being Down (status qualifier)"; - - // Type is an MO-Defined-Type - type svi_OperStQual; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // VLAN Type (e.g. private vlan) - // Type is an MO-Defined-Type - leaf vlanT { - config "false"; - description "VLAN Type"; - - // Type is an MO-Defined-Type - type l2_DomType; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Controller Id - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; - - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf iod { - config "false"; - type uint32; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf bucketsKept { + type uint32 { + range "1..60"; } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:If - // Modified by Override: svi:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "Tunnel Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; } - - // Administrative state - // Inherited From l3:If - // Modified by Override: svi:If->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type l1_AdminSt; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { - - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; - } + grouping sla_Http-group { + description + "The HTTP operation measures the round-trip time(RTT) + between a Cisco device and an HTTP server to retrieve a + web page."; - container multisiteiftracking-items { + // frequency can be either a single value or a range as "x-y" + // schedule-periods min and max is same as this if it is not range use this property frequency + leaf frequency { - // Added containment as a singleton: Prefix=multisiteiftracking - // Acquired From Package nvo - uses nvo_MultisiteIfTracking-group; + type sla_Frequency { + range "60..604800"; + } + description + "Group operation frequency (in seconds) + using which the probes are scheduled."; } - container svi-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=svi - // Acquired From Package svi - uses svi_OperSvi-group; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtpseudoIf-items { + leaf httpmethod { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sla_HttpMethodVal; + description + "HTTP method - Currently only the get method is + supported.For GET requests,IP SLAs will format + the request based on the specified http URL."; } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf httpurl { + type string; + description + "URL string, expecting the input as + http:[[//location[:port]]/directory]/filename"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + leaf proxy { + type string; + description "Proxy information - proxy URL"; } - } - - grouping svi_OperSvi-group { - leaf ifIndex { - config "false"; + leaf cache { + type boolean; + default "true"; + description + "The config to enable/disable the download of + cached HTTP page."; + } + leaf srcPort { type uint32; - default "0"; + description "Source Port configuration for HTTP probe"; } - leaf operDescr { - config "false"; + leaf version { type string; + default "1.0"; + description + "HTTP version number, + Supported HTTP versions are '1.0' and '1.1'."; } - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Operational State"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type l1_AdminSt; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Operational port status reason - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; - - // Type is an MO-Defined-Type - type svi_OperStQual; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Operational Mtu - // Type is an MO-Defined-Type - leaf operCarrierDelaySec { - config "false"; - description "Operational Carrier Delay Seconds"; - - // Type is an MO-Defined-Type - type svi_CarrDelay; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Operational Mtu - // Type is an MO-Defined-Type - leaf operCarrierDelayMsec { - config "false"; - description "Operational Carrier Delay milliseconds"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type svi_CarrDelay; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - - // Operational Mtu - // Type is an MO-Defined-Type - leaf operMtu { - config "false"; - description "Operational Mtu"; - - // Type is an MO-Defined-Type - type svi_Mtu; + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; } - - // Type is an MO-Defined-Type - leaf operBw { - config "false"; - description "operational Bandwidth"; - - // Type is an MO-Defined-Type - type svi_Bw; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - - // Type is an MO-Defined-Type - leaf operDelay { - config "false"; - description "operational delay"; - - // Type is an MO-Defined-Type - type svi_Delay; + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf operAutoState { - config "false"; - type boolean; + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf operMac { - config "false"; - type address_Mac; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - leaf iod { - config "false"; - type uint64; + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Load interval 1 - // Type is an MO-Defined-Type - leaf operLoadIntvl1 { - config "false"; - description "Load Interval 1"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl1; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // Load interval 2 - // Type is an MO-Defined-Type - leaf operLoadIntvl2 { - config "false"; - description "Load Interval 2"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl2; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Load interval 3 - // Type is an MO-Defined-Type - leaf operLoadIntvl3 { - config "false"; - description "Load Interval 3"; - - // Type is an MO-Defined-Type - type svi_LoadIntvl3; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf operLastChgSec { - config "false"; - type uint64; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - leaf operLastChgUsec { - config "false"; - type uint64; + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - } - - grouping tunnelif_If-group { - leaf tunSrcAddr { - type address_Ip; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } + } - // Tunnel source interface - // Type is an MO-Defined-Type - leaf tunSrcIntf { - description "Tunnel Source"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping sla_UdpEcho-group { + description "UDP Echo Operation"; - // Tunnel source direct - // Type is an MO-Defined-Type - leaf tunSrcDirect { - description "Tunnel Source"; + // Service monitoring frequency in seconds + leaf frequency { - // Type is an MO-Defined-Type - type tunnelif_TunnelSrcDirect; - } - leaf tunDestAddr { - type address_Ip; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // Tunnel mode - // Type is an MO-Defined-Type - leaf tunMode { - description "Tunnel Mode"; + // Service monitoring timeout declaring the service down + leaf timeout { - // Type is an MO-Defined-Type - type tunnelif_TunnelMode; + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - - // Tunnel VRF name - // Type is an MO-Defined-Type - leaf tunVrf { - description "Tunnel Transport VRF"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelTransVRF; + leaf dstPort { + type uint32; + description + "Destination UDP Port configuration for the UDP + probe, it is must to configure the destination + port."; } - - // Tunnel MTU - // Type is an MO-Defined-Type - leaf tunMtu { - description "Tunnel MTU"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelMtu; + leaf srcPort { + type uint32; + description + "Source UDP Port configuration for udp echo + probe and if the srcPort is not configured, + then source port will be used."; } - - // Tunnel PATH MTU Discovery - // Type is an MO-Defined-Type - leaf tunPMTUD { - description "Tunnel PMTU Discovery"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelPMTUD; + leaf control { + type boolean; + default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - - // Tunnel PMTU min-mtu - // Type is an MO-Defined-Type - leaf tunminPMTU { - description "Tunnel min PMTU"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelminPMTU; + leaf dataPattern { + type string; + description + "Specifies the hexadecimal data pattern in + udp-echo probe to test for data corruption."; } - - // Tunnel PMTU ager - // Type is an MO-Defined-Type - leaf tunPMTUage { - description "Tunnel PMTU age"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelPMTUAge; + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - // Tunnel Interface Bandwidth - // Type is an MO-Defined-Type - leaf tunBW { - description "Tunnel Bandwidth"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type tunnelif_TunnelBW; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // Tunnel Interface TTL - // Type is an MO-Defined-Type - leaf tunTTL { - description "Tunnel TTL"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type tunnelif_TunnelTTL; + type l3_VrfName; + description "vrf on which the probe is configured."; } - - // Administrative port snmp trap state - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Snmp Trap State"; - - // Type is an MO-Defined-Type - type tunnelif_SnmpTrapSt; + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; } - - // Tunnel operational state - // Type is an MO-Defined-Type - leaf tunOperSt { - config "false"; - description "Tunnel Operational State"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelOperSt; + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Tunnel operational state down reason - // Type is an MO-Defined-Type - leaf tunOperStQual { - config "false"; - description "Tunnel Operational State Qualifier"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type tunnelif_TunnelOperStQual; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; } - leaf lastStateChgdTs { - config "false"; + leaf owner { type string; + description "Owner string of the probe(Max size 127)"; } - leaf tunDelInProg { - config "false"; - type boolean; - } - - // Tunnel Interface options - // Type is an MO-Defined-Type - leaf tunIntfOptions { - config "false"; - description "Tunnel Interface Options"; - - // Type is an MO-Defined-Type - type tunnelif_TunnelOption; + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; } - leaf tunIod { - config "false"; + leaf ipTos { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf tunIfIndex { - config "false"; + leaf ipv6TrafficClass { type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; } - leaf tunIfPmtu { - config "false"; - type uint32; + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; } - leaf lastCtrRstChgdTs { - config "false"; + leaf destHostName { type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; } - leaf tunRxPackets { - config "false"; - type uint64; + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - leaf tunRxBytes { - config "false"; - type uint64; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; + } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - leaf tunTxPackets { - config "false"; - type uint64; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - leaf tunTxBytes { - config "false"; - type uint64; + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; } - leaf tunSrcIP { - config "false"; - type address_Ip; + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; } - - // Inherited From nw:If - // Modified by Override: tunnelif:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "Tunnel Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; + leaf enhancedInterval { + type uint32 { + range "0..3600"; } + description "Aggregation interval in seconds to collect the aggregated values."; } - - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - // Administrative state - // Inherited From l3:If - // Modified by Override: tunnelif:If->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping sla_UdpJitter-group { + description "UDP Jitter Operation"; - // Type is an MO-Defined-Type - type l1_AdminSt; + // Service monitoring frequency in seconds + leaf frequency { + + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - // This MO is temporary. Needs to be removed when - // "vrf member " is objectified - container vrf-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=vrf - // Acquired From Package l1 - uses l1_Vrf-group; + type sla_Timeout; + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; + } + leaf dstPort { + type uint32; + description + "Destion UDP Port configuration for the UDP + probe, it is must to configure the destination + port."; + } + leaf srcPort { + type uint32; + description + "Source UDP Port configuration for udp-jitter + probe and if the srcPort is not configured, + then source port will be used."; + } + leaf control { + type boolean; + default "true"; + description + "To turn on/off Control Packets Exchanging + mechanism between the sender and the responder, + control is enabled by default."; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtpseudoIf-items { + leaf numPkts { - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type sla_NumPkts; + description "Number of packets per operation"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtvrfMbr-items { + leaf interval { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type sla_Interval; + description "UDP Jitter Interval"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf codecType { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type sla_CodecType; + description "Codec Type"; } - } - grouping ipv4_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf codecNumPkts { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sla_CodecNumPkts; + description "Number of packets per operation"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf codecSize { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_CodecSize; + description "Number of bytes per packet"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf codecInterval { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type sla_Interval; + description "Interval between packets"; } - // This objects hold per ipv4 instance information. There is - // only one instance of ipv4 running in the system today - container inst-items { + leaf advFactor { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ipv4 - uses ipv4_Inst-group; + type sla_AdvFactor; + description "Advantage factor"; + } + leaf verifyData { + type boolean; + description + "Verify Data for Corruption. + When data verification is enabled, each + operation response is checked for corruption. + Use the verify-data command with caution + during normal operations because it generates + unnecessary overhead."; } - } - - grouping ipv4_Inst-group { - // ip source-route enabled by default - // Type is an MO-Defined-Type - leaf sourceRoute { - description "Source-Route"; + leaf reqDataSize { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_ReqDataSize; + description + "Sets the protocol data size in the payload of + an IP SLAs operation's request packet."; } - // ip access-list match local enabled by default - // Type is an MO-Defined-Type - leaf accessListMatchLocal { - description "Access-List Match Local"; + leaf precision { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_Precision; + description "Precision configuration"; } - // logging level enabled by default - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging level"; + leaf operationPktPriority { - // Type is an MO-Defined-Type - type arp_LoggingLevel; + type sla_OpPktPriority; + description "Operation Packet Priority"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf absoluteClockTolerance { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type sla_ClockToleranceAbsolute; + description "Oneway NTP Clock Tolerance absolute Value"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf percentClockTolerance { - // Type is an MO-Defined-Type - type nw_AdminSt; + type sla_ClockTolerancePercent; + description "Oneway NTP Clock Tolerance Value in percentage"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type l3_VrfName; + description "vrf on which the probe is configured."; + } + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Added containment: Prefix=dom - // Acquired From Package ipv4 - uses ipv4_Dom-group; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; + } + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; } + default "2"; + description "Maximum number of statistics hour groups to capture."; } - - // IPv4 Client information - container client-items { - list Client-list { - config "false"; - key "clientName clientProtocol"; - - // Added containment: Prefix=client - // Acquired From Package ipv4 - uses ipv4_Client-group; + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } - - // Load sharing mo - container iploadsharing-items { - - // Added containment as a singleton: Prefix=iploadsharing - // Acquired From Package ipv4 - uses ipv4_IPLoadSharing-group; + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; } - - container loadstat-items { - - // Added containment as a singleton: Prefix=loadstat - // Acquired From Package ipv4 - uses ipv4_LoadSharingStat-group; + leaf enhancedInterval { + type uint32 { + range "0..3600"; + } + description "Aggregation interval in seconds to collect the aggregated values."; } - - container iptrafficstat-items { - - // Added containment as a singleton: Prefix=iptrafficstat - // Acquired From Package ipv4 - uses ipv4_IpTrafficStat-group; + leaf enhancedBuckets { + type uint32 { + range "0..100"; + } + description "Number of buckets to collect data based on the enhanced interval."; } + } - container iptrafficerrstat-items { - - // Added containment as a singleton: Prefix=iptrafficerrstat - // Acquired From Package ipv4 - uses ipv4_IpTrafficErrStat-group; - } + grouping sla_Dns-group { + description "DNS Operation to probe the DNS server"; - container icmptrafficstat-items { + // Service monitoring frequency in seconds + leaf frequency { - // Added containment as a singleton: Prefix=icmptrafficstat - // Acquired From Package ipv4 - uses ipv4_ICMPTrafficStat-group; + type sla_Frequency; + description + "Frequency of an operation - + The interval at which the configured + destination is tracked by the probe. + Frequency in seconds(default value is 60). + Minimum frequency value for an + IP SLAs HTTP probe operation is 60 seconds + but 1 second for other probes."; } - container rfc4293trafficstat-items { + // Service monitoring timeout declaring the service down + leaf timeout { - // Added containment as a singleton: Prefix=rfc4293trafficstat - // Acquired From Package ipv4 - uses ipv4_RFC4293TrafficStat-group; + type sla_Timeout { + range "0..604800000"; + } + description + "Timeout of an operation - this is the maximum + wait time for completing the operation. + The probe will be marked with Timeout + return code."; } - } - - grouping ipv4_Dom-group { - - // ip auto-discard disabled by default - // Type is an MO-Defined-Type - leaf autoDiscard { - description "Auto-Discard"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf srcPort { + type uint32; + description "Source Port configuration for DNS probe"; + } + leaf nameServerHostName { + type string; + description + "Host name of the name server, from which the + DNS name server IP address is resolved. + Name server IP address which is used to resolve + the target host name or target host ip configured + in the probe. This property is applicable + only incase of DNS probe."; + } + leaf nameServerIp { + type address_Ip; + description + "Name server IP address which is used to resolve + the target host name or target host ip configured + in the probe.This property is applicable only if the + configured probe type is DNS."; + } + leaf targetEntry { + type string; + description + "This property can be either Host name or IP address + (IPv4 address format x.x.x.x),(no IPv6 support) + for which the resolution happens either by name or + by IP to name respectively, in the configured probe. + This property is applicable only incase of DNS probe."; } - // ip icmp-error source-interface - // Type is an MO-Defined-Type - leaf ipIcmpErrorsSrcIntf { - description "ICMP errors source-interface"; + // Service node's vrf + leaf vrf { - // Type is an MO-Defined-Type - type nw_IfId; + type l3_VrfName; + description "vrf on which the probe is configured."; + } + leaf destip { + type address_Ip; + description + "Destination IP address which is tracked by the + probe.This property is not applicable if the + configured probe type is HTTP or DNS. Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf srcip { + type address_Ip; + description + "Source`IP address from which the configured + destination is tracked by the probe. Modifying + this property is not allowed."; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Service monitoring threshold in milliseconds + leaf threshold { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type sla_Threshold; + description + "Operation threshold - this is an upper limit + for the observed RTT for the probe. + RTT value of a probe exceeding the configured + threshold will be marked with Overthreshold + return code."; + } + leaf owner { + type string; + description "Owner string of the probe(Max size 127)"; + } + leaf tag { + type string; + description "User defined tag string (Max Size 127)"; + } + leaf ipTos { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf ipv6TrafficClass { + type uint32; + description + "TOS if the probe is tracking IPv4 destination + and Traffic Class if the probe is tracking + IPv6 destination."; + } + leaf srcHostName { + type string; + description + "Source Host Name, if IP address is resolved + from DNS server. Modifying this property is + not allowed."; + } + leaf destHostName { + type string; + description + "Destination Host Name, if IP address is + resolved from DNS server.Modifying + this property is not allowed in case of icmp-echo + probe."; + } + leaf hoursOfStatsKept { + type uint32 { + range "0..25"; + } + default "2"; + description "Maximum number of statistics hour groups to capture."; + } + leaf distributionsOfStatsKept { + type uint32 { + range "1..20"; } + default "1"; + description + "Maximum number of statistics distribution + buckets to capture"; } + leaf statsDistributionInterval { + type uint32 { + range "1..100000"; + } + default "20"; + description + "Statistics distribution interval size, if the precision + configured is in milliseconds, then the unit is in + milliseconds else if it is microseconds, then the unit + is in microseconds."; + } + leaf livesKept { + type uint32 { + range "0..2"; + } + default "0"; + description "Maximum number of history lives to collect."; + } + leaf bucketsKept { + type uint32 { + range "1..60"; + } + default "15"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + leaf filter { + type enumeration { + enum None { + value 1; + description "Shutoff History collection"; + } + enum All { + value 2; + description "Collect every operation in History"; + } + enum OverThreshold { + value 3; + description "Collect operations that are over threshold in History"; + } + enum Failures { + value 4; + description "Collect operations that fail in History"; + } + } + default "None"; + description "Bucket size value - Maximum number of history buckets to collect"; + } + } - // ip route static bfd - container rtstaticbfd-items { - list RtStaticBfd-list { - key "intf nexthop"; - - // Added containment: Prefix=rtstaticbfd - // Acquired From Package ipv4 - uses ipv4_RtStaticBfd-group; + grouping sla_Scheduler-group { + description "sla scheduler configurations"; + leaf life { + type uint64 { + range "0..2147483647"; + } + default "3600"; + description "Length of time to execute in seconds"; + } + leaf ageOut { + type uint32 { + range "0..2073600"; + } + default "0"; + description + "How long to keep this probe, + when inactive (in seconds)"; + } + leaf startProbe { + type enumeration { + enum Now { + value 1; + description "Now immediate"; + } + enum At { + value 2; + description "At a specific time"; + } + enum Pending { + value 3; + description "Pending "; + } + enum After { + value 4; + description "After some time"; + } + } + default "Pending"; + description "When the probe is to be started"; + } + leaf dayOfTheMonth { + type uint16 { + range "0..31"; + } + default "0"; + description + "At which day of the configured month, + the probe is to be started.Setting the value + as zero means current day of the time. + This property is applicable only when the + startProbe proeprty is set as At"; + } + leaf month { + type enumeration { + enum None { + value 0; + description "Current month"; + } + enum January { + value 1; + description "January"; + } + enum February { + value 2; + description "February"; + } + enum March { + value 3; + description "March"; + } + enum April { + value 4; + description "April"; + } + enum May { + value 5; + description "May"; + } + enum June { + value 6; + description "June"; + } + enum July { + value 7; + description "July"; + } + enum August { + value 8; + description "August"; + } + enum September { + value 9; + description "September"; + } + enum October { + value 10; + description "October"; + } + enum November { + value 11; + description "November"; + } + enum December { + value 12; + description "December"; + } } + default "None"; + description + "At which month, the probe is to be started. + This property is applicable only when the + startProbe proeprty is set as At"; } + leaf startTime { + type string; + description + "When to start this probe on a given day and + month in Hour(s):Minute(s):Second(s) + i.e in (H:M:S) format. + This property is applicable only when the + startProbe proeprty is set as At or After."; + } + leaf recurring { + type boolean; + default "false"; + description "Probe to be scheduled automatically every day"; + } + } - // This object holds ipv4 information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping sla_ReactionTrigger-group { + description + "sla reaction trigger configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + leaf targetProbe { + type uint32; + description + "The target entry Number which will be + triggered when the reactionType is configured + as trapAndTrigger or triggerOnly. It is + mandatory that this targetId probe should be + configured prior to setting this property."; + } + } - // Added containment: Prefix=if - // Acquired From Package ipv4 - uses ipv4_If-group; - } + grouping sla_Reaction-group { + description + "sla reaction configurations for a probe - + IP SLAs reactions are configured to trigger when a + monitored value exceeds or falls below a specified level + or when a monitored event, such as a timeout or + connection loss, occurs. If IP SLAs measure too high or + too low of any configured reaction, IP SLAs can generate + a notification to a network management application or + trigger another IP SLA operation to gather more data."; + + leaf reactOn { + + type sla_ReactionVariable; + description + "The performance parameters on which the + proactive threshold monitoring and + notifications are done."; } - container pstat-items { + leaf reactionType { - // Added containment as a singleton: Prefix=pstat - // Acquired From Package ipv4 - uses ipv4_ProcessStat-group; + type sla_ActionType; + description + "The config is to notify the user when the + monitored performance parameter value rises + above or falls below a specified threshold. + The notification can be either as SNMP traps + or trigger to a new probe."; } - // Static route definitions - container rt-items { - list Route-list { - key "prefix"; + leaf thresholdType { - // Added containment: Prefix=rt - // Acquired From Package ipv4 - uses ipv4_Route-group; + type sla_ThresholdType; + description + "The config says when the configured + reactionType should be triggered."; + } + leaf thresholdCountX { + type uint16 { + range "1..16"; + } + default "5"; + description + "The config denotes the number of times the + monitored performance parameter value rises + above or falls below a specified threshold. + This config applies only for the thresholdType + 1. average + 2. consecutive + 3. xOfy"; + } + leaf thresholdCountY { + type uint16 { + range "1..16"; } + default "5"; + description + "The config denotes the number of times the + monitored performance parameter value rises + above or falls below a specified threshold. + This config applies only for the thresholdType + xOfy"; } - container routestat-items { + leaf upperThreshold { - // Added containment as a singleton: Prefix=routestat - // Acquired From Package ipv4 - uses ipv4_RouteStat-group; + type sla_Threshold; + description "Upper limit for Threshold."; } - } - grouping ipv4_RtStaticBfd-group { + leaf lowerThreshold { - // interface value. - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + type sla_Threshold; + description "Lower limit for Threshold."; + } + } - // Type is an MO-Defined-Type - type nw_IfId; + grouping sla_GrpScheduler-group { + description + "sla group scheduler configurations - Configures the + group scheduling parameters + for multiple IP SLAs operations"; + leaf grpSchedulerId { + type uint32 { + range "1..65535"; + } + description "Group scheduler index"; } - leaf nexthop { - type address_Ip; + leaf probeList { + type string; + description + "Multiple probe ID's to be group scheduled, + List of one or more identification(ID) numbers + of the IP SLAs operations to be included in a + new multioperation schedule. + (Max up to 125 characters). + Indicate ranges of operation ID numbers with a + hyphen. Individual ID numbers and ranges of ID + numbers are delimited by a comma. + For example, enter a list of operation ID + numbers in any of the following ways: + x-y,a-b,c-f or + x,y,a,b,c,f or + x-y,a,b,c-f"; + } + leaf schedulePeriod { + type uint32 { + range "0..604800"; + } + default "0"; + description + "Group schedule period in seconds, + This is the time period in which the group of + the probes configured in probeList are + scheduled at an equal gap between them."; + } + leaf life { + type uint32 { + range "0..2147483647"; + } + default "3600"; + description "Length of time to execute in seconds"; + } + leaf ageOut { + type uint32 { + range "0..2073600"; + } + default "0"; + description + "How long to keep the probes, + when inactive (in seconds)"; } - } - grouping ipv4_If-group { - leaf directedBroadcast { - type enumeration { + // frequency can be either a single value or a range as "x-y" + // schedule-periods min and max is same as this if it is not range use this property frequency + leaf frequency { - // Disabled - enum disabled { + type sla_Frequency; + description + "Group operation frequency (in seconds) + using which the probes are scheduled."; + } + leaf frequencyRange { + type string; + description + "Group operation frequency (in seconds) + either in range as x-y, frequency-range + is used for random scheduling."; + } + leaf startProbe { + type enumeration { + enum Now { + value 1; + description "Now immediate"; + } + enum At { + value 2; + description "At a specific time"; + } + enum Pending { + value 3; + description "Pending "; + } + enum After { + value 4; + description "After some time"; + } + } + default "Pending"; + description "When the probe is to be started"; + } + leaf dayOfTheMonth { + type uint16 { + range "0..31"; + } + default "0"; + description + "At which day of the configured month, + the probe is to be started.Setting the value + as zero means current day of the time. + This property is applicable only when the + startProbe proeprty is set as At"; + } + leaf month { + type enumeration { + enum None { value 0; + description "Current month"; } - - // Enabled - enum enabled { + enum January { value 1; + description "January"; + } + enum February { + value 2; + description "February"; + } + enum March { + value 3; + description "March"; + } + enum April { + value 4; + description "April"; + } + enum May { + value 5; + description "May"; + } + enum June { + value 6; + description "June"; + } + enum July { + value 7; + description "July"; + } + enum August { + value 8; + description "August"; + } + enum September { + value 9; + description "September"; + } + enum October { + value 10; + description "October"; + } + enum November { + value 11; + description "November"; + } + enum December { + value 12; + description "December"; } } - default "disabled"; + default "None"; + description + "At which month, the probe is to be started. + This property is applicable only when the + startProbe proeprty is set as At"; } - leaf acl { - type string { - length "0..63"; + leaf startTime { + type string; + description + "When to start this probe on a given day and + month in Hour(s):Minute(s):Second(s) + i.e in (H:M:S) format. + This property is applicable only when the + startProbe proeprty is set as At or After."; + } + leaf modifyGrpSchedule { + type enumeration { + enum create { + value 0; + description "Create"; + } + enum add { + value 1; + description "Add"; + } + enum delete { + value 2; + description "Delete"; + } } + default "create"; + description "modify the existing group schedule"; } + leaf reschedule { + type boolean; + default "false"; + description "Restarting a scheduled probe"; + } + } - // IP forward. When interface types: eth, mgmt, - // or port channel. - // Type is an MO-Defined-Type - leaf forward { - description "IP forward"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping sla_Responder-group { + description "sla Responder specific configs are handled with this mo"; + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "2"; + description + "configures the logging level for ip sla responder. + The property can be set only if feature sla responder + is enabled."; + } + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the ip sla responder. + To enable responder, feature sla responder is to be enabled"; } - // IP unnumbered. When interface types: eth, tunnel - // Type is an MO-Defined-Type - leaf unnumbered { - description "IP unnumbered"; + container twampresponder-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses sla_TwampResponder-group; + description "sla Responder twamp specific configs are handled with this mo"; } + container type-items { + list PermanentResponder-list { + key "protocol port ipAddress"; - // URPF info on interface - // Type is an MO-Defined-Type - leaf urpf { - description "URPF Info"; + uses sla_PermanentResponder-group; + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable. list"; + } + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable."; + } + } - // Type is an MO-Defined-Type - type ip_UrpfT; + grouping sla_TwampResponder-group { + description "sla Responder twamp specific configs are handled with this mo"; + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the twamp responder. + To enable twamp responder, feature sla responder is to be enabled"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf timeout { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type sla_Timeout { + range "1..604800"; } + description + "TWAMP Responder Session inactivity timeout in + seconds (default 900)"; } + } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping sla_PermanentResponder-group { + description + "sla Responder permanent port configs for tcp-connect + and udp-echo are handled with this mo.If this MO used + the IP address will always be wild-card, only the port + is configurable."; - // Type is an MO-Defined-Type - type naming_Descr1024; + leaf protocol { + + type sla_RespProto; + description + "Responder protocol types supported types are + udp-echo, tcp-connect"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf port { - // Type is an MO-Defined-Type - type nw_IfId; + type sla_PortNum; + description + "Port on which the responder is listenening to + receive the packets from the sender. + This property is applicable only for + TCP or UDP protocol. + Required only if ip sla sender probe's control + is disabled. Permanently enables + the responder functionality on the specified + port."; + } + leaf ipAddress { + type address_Ip; + description + "IP on which the responder is listenening to + receive the packets from the sender. + This property is applicable only for + TCP or UDP protocol. + Required only if ip sla sender probe's control + is disabled. Permanently enables + the responder functionality on the specified + port and IP. If the user needs wild card IP address, + then use 0.0.0.0(any IP)"; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_IfAdminSt; + grouping sla_TwampServer-group { + description "Twamp"; + leaf adminState { + type boolean; + default "true"; + description + "Enable or disable the ip sla twamp server. + To enable twamp-server, feature sla twamp-server is to be enabled"; + } + leaf loggingLevel { + type uint32 { + range "0..7"; + } + default "2"; + description + "configures the logging level for twamp server. + The property can be set only if feature sla twamp-server + is enabled."; } - // Interface controls - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf port { - // Type is an MO-Defined-Type - type ip_IfControl; + type sla_PortNum { + range "1..65535"; + } + description + "TWAMP Server Port on which the TCP control + connection is established.(default 862)"; } - // Interface mode - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + leaf inactivityTimer { - // Type is an MO-Defined-Type - type ip_IfMode; + type sla_Timeout { + range "1..6000"; + } + description + "TWAMP Server Inactivity Timer, + Max number of inactive seconds (default 900)"; } + } - // Donor interface - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf donorIf { - description "Donor Interface"; + grouping telemetry_Entity-group { + description "Telemetry System"; - // Type is an MO-Defined-Type - type nw_IfId; + leaf adminSt { + + type telemetry_AdminState; + description "TBD"; } - // Operational state - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // certificate + container certificate-items { - // Type is an MO-Defined-Type - type ip_OperSt; + uses telemetry_Certificate-group; + description "Certificate used by Telemetry System"; } - // Operational state qualifier - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // default destination profile + // This is the placeholder for global destination/transport options. + // It supports the following options: + // - vrf : Specify the vrf for the transport. + // The default is "", meaning each platform + // could pick it own default setting. + container destprof-items { - // Type is an MO-Defined-Type - type ip_UnnumberedOperStQual; + uses telemetry_DestProfile-group; + description "Default Destination Profile"; } - // Interface address - container addr-items { - list Addr-list { - key "addr"; + // sensor-groups + container sensor-items { + list SensorGroup-list { + key "id"; - // Added containment: Prefix=addr - // Acquired From Package ipv4 - uses ipv4_Addr-group; + uses telemetry_SensorGroup-group; + description "Sensor Group list"; } + description "Sensor Group"; } - container dampening-items { + // destination-groups + container dest-items { + list DestGroup-list { + key "id"; - // Added containment as a singleton: Prefix=dampening - // Acquired From Package ipv4 - uses ipv4_Dampening-group; + uses telemetry_DestGroup-group; + description "Destination Group list"; + } + description "Destination Group"; } - container dampeningdata-items { + // subscriptions + container subs-items { + list Subscription-list { + key "id"; - // Added containment as a singleton: Prefix=dampeningdata - // Acquired From Package ipv4 - uses ipv4_DampeningData-group; + uses telemetry_Subscription-group; + description "Subscription list"; + } + description "Subscription"; } + } - container trafficstat-items { - - // Added containment as a singleton: Prefix=trafficstat - // Acquired From Package ipv4 - uses ipv4_IfTrafficStat-group; - } + grouping telemetry_Certificate-group { + description "Certificate used by Telemetry System"; - container stat-items { + leaf filename { - // Added containment as a singleton: Prefix=stat - // Acquired From Package ipv4 - uses ipv4_IfStat-group; + type os_OsString; + description "Name of the .pem certificate file"; } - // Route map entries - container rpol-items { + leaf hostname { - // Added containment as a singleton: Prefix=rpol - // Acquired From Package rtmap - uses rtmap_RmapPolicy-group; + type os_OsString; + description "Hostname associated with the certificate"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - container rtvrfMbr-items { + grouping telemetry_DestProfile-group { + description "Default Destination Profile"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; - } + // Not used. + // Need this dummy property for VSH/CLI + leaf adminSt { - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - container rtnwPathToIf-items { + type telemetry_AdminState; + description "Admin state"; + } - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Destination option : vrf name + container vrf-items { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + uses telemetry_DestOptVrf-group; + description "Destination option for vrf"; } - } - grouping ipv4_Addr-group { - leaf addr { - type address_Ip; + // Destination option : compression name + container compression-items { + + uses telemetry_DestOptCompression-group; + description "Destination option for compression"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Destination option : source interface + container sourceinterface-items { - // Type is an MO-Defined-Type - type ip_AddrT; + uses telemetry_DestOptSourceInterface-group; + description "Destination option for source interface"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container retry-items { - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + uses telemetry_DestOptRetry-group; + description "Destination option for send retry"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Destination option : nodeid name + container nodeid-items { - // Type is an MO-Defined-Type - type rt_Preference; + uses telemetry_DestOptNodeId-group; + description "Destination option for nodeid string"; } + } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + grouping telemetry_DestOptVrf-group { + description "Destination option for vrf"; - // Type is an MO-Defined-Type - type rt_Tag; + leaf name { + + type telemetry_VrfName; + description "VRF name"; } + } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping telemetry_DestOptCompression-group { + description "Destination option for compression"; - // Type is an MO-Defined-Type - type ip_OperSt; + leaf name { + + type telemetry_Compression; + description "Compression name"; } + } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + grouping telemetry_DestOptSourceInterface-group { + description "Destination option for source interface"; - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + leaf name { + + type nw_IfId; + description "Source interface name"; } } - grouping ipv4_Dampening-group { - leaf halfLifePeriod { - type uint64 { - range "0..30"; - } - } - leaf reuseThreshold { - type uint64 { - range "0..20000"; + grouping telemetry_DestOptRetry-group { + description "Destination option for send retry"; + leaf size { + type uint32 { + range "10..1500"; } + default "10"; + description "Send retry buffer size (in MB)"; } - leaf suppressThreshold { - type uint64 { - range "0..20000"; + } + + grouping telemetry_DestOptNodeId-group { + description "Destination option for nodeid string"; + leaf name { + type string { + length "1..128"; } + description "NodeID name"; } - leaf maxSuppress { - type uint64 { - range "0..255"; - } + } + + grouping telemetry_SensorGroup-group { + description "Sensor Group"; + + leaf id { + + type telemetry_IDType; + description "Sensor group identifier"; } - // Type is an MO-Defined-Type - leaf restartEnabled { - description "Restart enabled"; + leaf dataSrc { - // Type is an MO-Defined-Type - type nw_AdminSt; + type telemetry_DataSource; + description "Data source for this sensor group"; } - leaf restartPenalty { - type uint64 { - range "0..20000"; + container path-items { + list SensorPath-list { + key "path"; + + uses telemetry_SensorPath-group; + description "The DME/Open-Config/Device-Yang/Usability path list"; } + description "The DME/Open-Config/Device-Yang/Usability path"; } } - grouping ipv4_DampeningData-group { - leaf flapCount { - config "false"; - type uint64; - } - leaf penalty { - config "false"; - type uint64; - } - leaf suppressed { - config "false"; - type uint64; - } - leaf reuseTime { - config "false"; - type uint64; - } - leaf halfLifePeriod { - config "false"; - type uint64; - } - leaf reuseThreshold { - config "false"; - type uint64; - } - leaf suppressThreshold { - config "false"; - type uint64; - } - leaf maxSuppress { - config "false"; - type uint64; - } - leaf maxPenalty { - config "false"; - type uint64; - } - leaf restartPenalty { - config "false"; - type uint64; - } - } + grouping telemetry_SensorPath-group { + description "The DME/Open-Config/Device-Yang/Usability path"; - grouping ipv4_IfTrafficStat-group { - leaf upktSent { - config "false"; - type uint64; - } - leaf upktRecv { - config "false"; - type uint64; - } - leaf upktFwd { - config "false"; - type uint64; - } - leaf upktOrig { - config "false"; - type uint64; - } - leaf upktConsumed { - config "false"; - type uint64; - } - leaf ubyteSent { - config "false"; - type uint64; - } - leaf ubyteRcv { - config "false"; - type uint64; - } - leaf ubyteFwd { - config "false"; - type uint64; - } - leaf ubyteOrig { - config "false"; - type uint64; - } - leaf ubyteConsumed { - config "false"; - type uint64; - } - leaf mpktSent { - config "false"; - type uint64; - } - leaf mpktRcv { - config "false"; - type uint64; - } - leaf mpktFwd { - config "false"; - type uint64; - } - leaf mpktOrig { - config "false"; - type uint64; - } - leaf mpktConsumed { - config "false"; - type uint64; - } - leaf mbyteSent { - config "false"; - type uint64; - } - leaf mbyteRcv { - config "false"; - type uint64; - } - leaf mbyteFwd { - config "false"; - type uint64; - } - leaf mbyteOrig { - config "false"; - type uint64; - } - leaf mbyteConsumed { - config "false"; - type uint64; - } - leaf bpktSent { - config "false"; - type uint64; - } - leaf bpktRcv { - config "false"; - type uint64; - } - leaf bpktFwd { - config "false"; - type uint64; - } - leaf bpktOrig { - config "false"; - type uint64; - } - leaf bpktConsumed { - config "false"; - type uint64; - } - leaf bbyteSent { - config "false"; - type uint64; - } - leaf bbyteRcv { - config "false"; - type uint64; - } - leaf bbyteFwd { - config "false"; - type uint64; - } - leaf bbyteOrig { - config "false"; - type uint64; - } - leaf bbyteConsumed { - config "false"; - type uint64; - } - leaf lpktSent { - config "false"; - type uint64; - } - leaf lpktRcv { - config "false"; - type uint64; - } - leaf lpktFwd { - config "false"; - type uint64; - } - leaf lpktOrig { - config "false"; - type uint64; - } - leaf lpktConsumed { - config "false"; - type uint64; - } - leaf lbyteSent { - config "false"; - type uint64; - } - leaf lbyteRcv { - config "false"; - type uint64; - } - leaf lbyteFwd { - config "false"; - type uint64; - } - leaf lbyteOrig { - config "false"; - type uint64; - } - leaf lbyteConsumed { - config "false"; - type uint64; - } - } + leaf path { - grouping ipv4_IfStat-group { - leaf iodValue { - config "false"; - type uint64; - } - leaf vrfNameOut { - config "false"; - type string; - } - leaf protoState { - config "false"; - type string; - } - leaf linkState { - config "false"; - type string; - } - leaf adminState { - config "false"; - type string; - } - leaf priAddr { - config "false"; - type address_Ipv4; - } - leaf priSubnet { - config "false"; - type string; - } - leaf priMasklen { - config "false"; - type uint8; - } - leaf priRoutePref { - config "false"; - type uint8; - } - leaf priTag { - config "false"; - type uint32; - } - leaf secAddr { - config "false"; - type string; - } - leaf secAddrSubnet { - config "false"; - type string; - } - leaf secAddrMasklen { - config "false"; - type string; - } - leaf secAddrRoutePref { - config "false"; - type string; - } - leaf secAddrTag { - config "false"; - type string; - } - leaf numAddr { - config "false"; - type uint32; - } - leaf vaddrClient { - config "false"; - type string; - } - leaf vaddrPrefix { - config "false"; - type string; - } - leaf vaddrSubnet { - config "false"; - type string; - } - leaf vaddrMasklen { - config "false"; - type string; - } - leaf numVaddr { - config "false"; - type uint64; - } - leaf unnumIntf { - config "false"; - type string; - } - leaf firstIod { - config "false"; - type uint64; - } - leaf unnumChildIntf { - config "false"; - type string; - } - leaf ipDisabled { - config "false"; - type string; - } - leaf bcastAddr { - config "false"; - type address_Ipv4; - } - leaf mAddr { - config "false"; - type string; - } - leaf numMaddr { - config "false"; - type uint32; - } - leaf mtu { - config "false"; - type uint16; - } - leaf pref { - config "false"; - type uint8; - } - leaf tag { - config "false"; - type uint32; + type telemetry_SnsrPathType; + description "The path to the monitored data"; } - // Type is an MO-Defined-Type - leaf proxyArp { - config "false"; - description "Proxy Arp"; + // Query condition (opaque query arguments as in REST url) + leaf queryCondition { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_proxyArp; + type telemetry_queryCondType { + pattern ".*[!-~]{0,256}.*"; + } + description "The condition(s) for retrieving notifications"; } - // Type is an MO-Defined-Type - leaf localProxyArp { - config "false"; - description "Local Proxy Arp"; + // Event Collector (queryFilter) + leaf filterCondition { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_localProxyArp; + type telemetry_filterCondType { + pattern ".*[!-~]{0,512}.*"; + } + description "The condition(s) for filtering the queried notifications"; } - // Type is an MO-Defined-Type - leaf mRouting { - config "false"; - description "Multicast Routing"; + leaf depth { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_mRouting; + type telemetry_RetrieveDepth; + description "The number of levels of managed objects retrieved"; } + } - // Type is an MO-Defined-Type - leaf icmpRedirect { - config "false"; - description "Icmp Redirect"; + grouping telemetry_DestGroup-group { + description "Destination Group"; - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_icmpRedirect; + leaf id { + + type telemetry_IDType; + description "Destination group ID"; + } + container addr-items { + list Dest-list { + key "addr port"; + + uses telemetry_Dest-group; + description "Destination list"; + } + description "Destination"; } - // Type is an MO-Defined-Type - leaf directBcast { - config "false"; - description "Directed Broadcast"; + // destination-group option : use-chunking + container chunking-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_directBcast; + uses telemetry_DestGrpOptChunking-group; + description "Destination-group option for chunking"; } - // Type is an MO-Defined-Type - leaf ipUnreach { - config "false"; - description "IP Unreachable"; + // destination-group option : certificate + container certificate-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_ipUnreach; + uses telemetry_DestGrpOptCertificate-group; + description "Destination-group option for certificate"; } - // Type is an MO-Defined-Type - leaf portUnreach { - config "false"; - description "Port Unreachable"; + // destination-group option : vrf name + container vrf-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_IfStat_portUnreach; + uses telemetry_DestGrpOptVrf-group; + description "Destination-group option for vrf"; } - leaf urpfMode { - config "false"; - type string; + + // destination-group option : compression + container compression-items { + + uses telemetry_DestGrpOptCompression-group; + description "Destination-group option for compression"; } - leaf ipLoadSharing { - config "false"; - type string; + } + + grouping telemetry_Dest-group { + description "Destination"; + leaf addr { + type address_Ip; + description "Destination IP address"; } - leaf aclIn { - config "false"; - type string; + leaf port { + type uint16; + description "Destination port number"; } - leaf aclOut { - config "false"; - type string; + + // Need equivalent type for YANG telemetry-stream-protocol in DME + leaf proto { + + type telemetry_Protocol; + description "Destination protocol type"; } - leaf statsLastReset { - config "false"; - type string; + + // No equivalent property in YANG + leaf enc { + + type telemetry_Encoding; + description "Destination encoding type"; } } - grouping rtmap_RmapPolicy-group { - leaf rmapname { - type string { - length "0..63"; + grouping telemetry_DestGrpOptChunking-group { + description "Destination-group option for chunking"; + leaf chunkSize { + type uint32 { + range "64..4096"; } + default "64"; + description "Chunking size in kbytes"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping telemetry_DestGrpOptCertificate-group { + description "Destination-group option for certificate"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf filename { + + type os_OsString; + description "Name of the .pem certificate file"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf hostname { - // Type is an MO-Defined-Type - type naming_Descr; + type os_OsString; + description "Hostname associated with the certificate"; } } - grouping ipv4_ProcessStat-group { - leaf contextName { - config "false"; - type string; - } - leaf contextId { - config "false"; - type uint64; - } - leaf baseTId { - config "false"; - type uint64; - } + grouping telemetry_DestGrpOptVrf-group { + description "Destination-group option for vrf"; - // Type is an MO-Defined-Type - leaf autoDisc { - config "false"; - description "Auto Discard"; + leaf name { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoDisc; + type telemetry_VrfName; + description "Destination-group VRF name"; } + } - // Type is an MO-Defined-Type - leaf autoDiscAdd { - config "false"; - description "Auto Discard Added"; - - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoDiscAdd; - } + grouping telemetry_DestGrpOptCompression-group { + description "Destination-group option for compression"; - // Type is an MO-Defined-Type - leaf nullBcast { - config "false"; - description "Null BroadCast"; + leaf name { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_nullBcast; + type telemetry_Compression; + description "Destination-group Compression name"; } + } - // Type is an MO-Defined-Type - leaf autoPuntBcast { - config "false"; - description "Auto Punt Broadcast"; + grouping telemetry_Subscription-group { + description "Subscription"; - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_autoPuntBcast; + leaf id { + + type telemetry_SubIDType; + description "Subscription identifier"; } - // Type is an MO-Defined-Type - leaf staticDisc { - config "false"; - description "Static Discard"; + container rssensorGroupRel-items { - // Type is a Local-MO-Defined-Type - type nw_AdminSt_ProcessStat_staticDisc; - } - leaf staticDefRoute { - config "false"; - type uint64; - } - leaf ipUnreach { - config "false"; - type uint64; - } - leaf entryIod { - config "false"; - type string; + list RsSensorGroupRel-list { + key "tDn"; + + uses telemetry_RsSensorGroupRel_source-group; + description "Link to sensorGroup entry list"; + } + description "Link to sensorGroup entry"; } - leaf localAddr { - config "false"; - type string; + + container rsdestGroupRel-items { + + list RsDestGroupRel-list { + key "tDn"; + + uses telemetry_RsDestGroupRel_source-group; + description "Link to destGroup entry list"; + } + description "Link to destGroup entry"; } } - grouping ipv4_Route-group { + grouping track_Entity-group { + description "Object track entity"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object represents object of track. + // The object tracking monitors the status of the tracked objects + // and communicates any changes made to interested clients. + // Each tracked object is identified by a unique number + // (track:Object.id) that clients can use to configure the action + // to take when a tracked object changes state. + // Object types that can be tracked: + // * Interface line protocol state: Tracks whether the line + // protocol state is UP or Down. + // * Interface IPv4/IPv6 routing state: Tracks whether the interface + // has an IPv4 address and if IPv4 routing is enabled and active. + // * IPv4/IPv6 route reachability: Tracks whether an IPv4 route + // exists and is reachable from the local switch. + // * Object track list: Tracks combined states of multiple objects. + // Capabilities supported: boolean-and, boolean-or, + // threshold-percentage, threshold-weight. + // * Object tracking of IP SLA. + // Specify track:Object.id + container object-items { + list Object-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses track_Object-group; + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA list"; } + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping track_Object-group { + description "Placeholder for object which can be of type Interface line protocol state, Interface IPv4/IPv6 routing state, IPv4/IPv6 route reachability, Object track list and Object tracking of IP SLA"; - // Type is an MO-Defined-Type - type naming_Descr; + // Track Object ID. + // Each instance is identified by a unique number, + // the object ID. Each instance is a parent of only one + // of 'track:If', 'track:List', + // 'track:IpRoute' or 'track:IpSla' + leaf id { + + type track_TrackId; + description "Track object ID"; } - leaf prefix { - type address_Ip; + leaf clients { + config "false"; + type uint16; + description "Number of clients tracking this object"; } - // Route preference, the administrative distance assigned - // to this route - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Object tracking for an interface, supports Ethernet, + // subinterfaces, port-channels, loopback interfaces, and + // VLAN interfaces. Either the interface line protocol state or + // the interface IP routing state. When IP routing state is + // tracked, these conditions are required for the object to be UP: + // * IP routing must be enabled and active on the interface. + // * The interface line-protocol state must be UP. + // * The interface IP address must be known. + // If all three conditions are not met, IP routing state is Down. + container if-items { - // Type is an MO-Defined-Type - type rt_Preference; + uses track_If-group; + description "Interfaces of type Physical, Sub-interfaces, Port-channels, Loopback and VLAN support tracking object"; } - // Route tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + // IP route track object. + // Tracks whether an IPV4/IPV6 route exists and is reachable from + // the local switch + container iprt-items { - // Type is an MO-Defined-Type - type rt_Tag; + uses track_IpRoute-group; + description "IP route tracking object tracks whether an IPV4/IPV6 route exists and is reachable from the local switch"; } - // Policy tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; + // IP SLA track object. + // Object tracking of IP SLAs operations allow clients to + // track the output from IP SLAs objects and + // use this information to trigger an action. + // Two aspects of IP SLAs can be tracked: state and reachability. + // For state, if the return code is OK, then the track state is UP; + // if the return code is not OK, then the track state is Down. + // For reachability, if the return code is OK or OverThreshold, reachability is UP; + // if not OK, reachability is Down. + container ipsla-items { - // Type is an MO-Defined-Type - type actrl_PcTag; + uses track_IpSla-group; + description "Object tracking of IP SLAs operations allow clients to track the output from IP SLAs objects"; } - // Route ctrl - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // An object track list allows User to track the combined states + // of multiple objects. Object track lists support the following + // capabilities: + // * Boolean "and" function: Each object defined within the track + // list must be in an UP state so that the track list object + // can become UP. + // track:List.type should be specified as 'and' + // * Boolean "or" function: At least one object defined within the + // track list must be in UP state so that the tracked object + // can become UP. + // track:List.type should be specified as 'or' + // * Threshold percentage: The percentage of UP objects in the + // tracked list must be greater than the configured UP + // threshold for the tracked list to be in the UP state. If the + // percentage of Down objects in the tracked list is above the + // configured track list Down threshold, the tracked list is + // marked as Down. + // track:List.type should be specified as 'percentage'. The value + // for 'percentageUp' and 'percentageDown' + // * Threshold weight: Assign a weight value to each object in the + // tracked list, and a weight threshold for the track list. If + // the combined weights of all UP objects exceeds the track list + // weight UP threshold, the track list is in an UP state. If the + // combined weights of all the Down objects exceeds the track list + // weight Down threshold, the track list is in the Down state. + // track:List.type should be specified as 'weight'. The value for + // 'weightUp' and 'weightDown'. + // Mo for List type track + container list-items { - // Type is an MO-Defined-Type - type ip_RtControl; + uses track_List-group; + description "list object allows User to track the combined states of multiple objects"; } + } - // Nexthops for the static route - container nh-items { - list Nexthop-list { - key "nhIf nhAddr nhVrf"; + grouping track_If-group { + description "Interfaces of type Physical, Sub-interfaces, Port-channels, Loopback and VLAN support tracking object"; - // Added containment: Prefix=nh - // Acquired From Package ipv4 - uses ipv4_Nexthop-group; - } + // Interface ID to be tracked. + // This specifies the name of the object tracking interface, + // examples: 'eth1/1', 'eth1/1.1', 'po10', 'lo0'. + // The interface MO must be present in objstore to configure + // this else an error will be reported. + leaf id { + + type nw_IfId; + description "Interface to track"; } - // Temporary Nexthop stub created until the Spine proxy - // IP address is determined. - container nhs-items { - list NexthopStub-list { - config "false"; - key "nhIf nhAddr nhVrf"; + // Interface protocol type that an object can track + leaf protocolType { - // Added containment: Prefix=nhs - // Acquired From Package ipv4 - uses ipv4_NexthopStub-group; - } + type track_IntfProtocolType; + description "Protocol type for interface object"; } } - grouping ipv4_Nexthop-group { - leaf rtname { - type string; + grouping track_IpRoute-group { + description "IP route tracking object tracks whether an IPV4/IPV6 route exists and is reachable from the local switch"; + + // IPVX Address family of the route that is to be configured + leaf af { + + type track_Af; + description "Address family"; } - leaf tag { - type uint32; + leaf prefix { + type address_Ip; + description "IP route prefix"; } - leaf pref { - type uint8; + + // This specifies IP Route State + leaf routeState { + + type track_RouteState; + description "Route State"; } - leaf object { - type uint32; + leaf vrf { + type string; + description "Vrf for track"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This specifies the process owning the route + leaf routeOwner { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type track_RouteOwner; + description "Owner of the route"; + } + } + + grouping track_IpSla-group { + description "Object tracking of IP SLAs operations allow clients to track the output from IP SLAs objects"; + leaf probeId { + type uint32 { + range "1..2147483647"; } + description "SLA probe ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // SLA Probe States + leaf probeState { - // Type is an MO-Defined-Type - type naming_Descr; + type track_ProbeState; + description "SLA reachability/state type"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - description "Nexthop Interface"; + grouping track_List-group { + description "list object allows User to track the combined states of multiple objects"; - // Type is an MO-Defined-Type - type nw_IfId; + // Type of list object. + // Only 'boolean-and' object can be changed to 'boolean-or' + // and vice versa is possible. Any other type of object can't + // be modified to some other type. + leaf type { + + type track_ListObj; + description "Type of list object"; } - leaf nhAddr { - type address_Ip; + leaf percentageUp { + type uint16 { + range "0..100"; + } + default "1"; + description "Percentage Up"; + } + leaf percentageDown { + type uint16 { + range "0..100"; + } + default "0"; + description "Percentage Down"; + } + leaf weightUp { + type uint16 { + range "0..255"; + } + default "1"; + description "weight up value"; + } + leaf weightDown { + type uint16 { + range "0..255"; + } + default "0"; + description "weight down value"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - description "Nexthop VRF"; + // track list member objects, object-id is a naming property here + container obj-items { + list Member-list { + key "id"; - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf rwEncap { - type string; + uses track_Member-group; + description "MO for tracking list members list"; + } + description "MO for tracking list members"; } + } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + grouping track_Member-group { + description "MO for tracking list members"; - // Type is an MO-Defined-Type - type ip_NhFlags; + // ID of track-list member + leaf id { + + type track_TrackId; + description "Track ID of object to be tracked"; + } + leaf weight { + type uint16 { + range "1..255"; + } + default "10"; + description "Assign weight to a particular object"; + } + leaf not { + type boolean; + default "false"; + description "Negate state of object"; } + } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping udld_Entity-group { + description "Unidirectional Link Detection Entity"; - // Type is an MO-Defined-Type - type ip_OperSt; + // This class shall store the global configuration + // for a running UDLD instance + container inst-items { + + uses udld_Inst-group; + description "Unidirectional Link Detection Instance"; } } - grouping ipv4_NexthopStub-group { + grouping udld_Inst-group { + description "Unidirectional Link Detection Instance"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // aggressive mode + leaf aggressive { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type udld_AdminSt; + description "Global Aggressive Mode"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // probe message interval + leaf msgIntvl { + + type udld_MsgIntvl; + description "Probe Message Interval"; + } + leaf error { config "false"; - description "Description"; + type uint64; + default "0"; + description "failure code"; + } + container physif-items { + list PhysIf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses udld_PhysIf-group; + description "Unidirectional Link Detection Interface list"; + } + description "Unidirectional Link Detection Interface"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - config "false"; - description "Nexthop Interface"; + grouping udld_PhysIf-group { + description "Unidirectional Link Detection Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + // aggressive mode + leaf aggressive { + + type udld_AdminSt; + description "Interface Aggressive Mode"; } - leaf nhAddr { - config "false"; - type address_Ip; + + // bidirectional detection + leaf biDirDetect { + + type udld_PortEnable; + description "Bidirectional Detection Enabled"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { + // port type is fiber or non-fiber/copper + leaf fiber { config "false"; - description "Nexthop VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type udld_OperSt; + description "Fiber Port"; } - leaf rwEncap { + leaf error { config "false"; - type string; + type uint64; + default "0"; + description "failure code"; } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type ip_NhFlags; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ip_OperSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping ipv4_RouteStat-group { - leaf contextName { - config "false"; - type string; + grouping vmtracker_VmTracker-group { + description "VmTracker entity"; + leaf autoconfigEnabled { + type boolean; + default "false"; + description "Enable vmtracker fabric auto-config"; } - leaf contextId { - config "false"; - type uint32; + + // vmtracker interface object + container vmtracker-items { + list VmTrackerIf-list { + key "vmtrackerInterface"; + + uses vmtracker_VmTrackerIf-group; + description "vmracker settings for an interface. list"; + } + description "vmracker settings for an interface."; } - leaf prefixMask { - config "false"; - type string; + + // This object holds vmtracker connection information + container connection-items { + list Connection-list { + key "connName"; + + uses vmtracker_Connection-group; + description "VmTracker Connection list"; + } + description "VmTracker Connection"; } - leaf nhPrefixMask { - config "false"; - type string; + } + + grouping vmtracker_VmTrackerIf-group { + description "vmracker settings for an interface."; + + leaf vmtrackerInterface { + + type nw_IfId; + description "A vmtracker interface"; } - leaf vrfInfo { - config "false"; - type string; + leaf enable { + type boolean; + default "true"; + description "Enable vmtracker on this interface."; } - leaf intrInfo { - config "false"; - type string; + } + + grouping vmtracker_Connection-group { + description "VmTracker Connection"; + leaf connName { + type string { + length "0..64"; + } + description "Name of a connection the remote VMware Host"; } - leaf uribStat { - config "false"; - type string; + leaf remoteIp { + type address_Ip; + description "Destination IP address of this connection"; } - leaf nhopUribStat { - config "false"; - type string; + leaf remotePort { + type uint32 { + range "0..65535"; + } + description "Destination TCP port of this connection"; } - leaf trackObjNum { - config "false"; - type string; + + // VRF of vcenter to connect to + leaf remoteVrf { + + type l3_VrfName; + description "VRF to use for the destination of this connection"; } - leaf trackObjState { - config "false"; + leaf remoteUserName { + type string { + length "0..128"; + } + description "Username for logging into this VMware host"; + } + leaf remotePassword { type string; + description "Password for logging into this VMware server"; } - } - grouping ipv4_Client-group { - leaf clientName { - config "false"; - type string; + // Password Encrypt Type + leaf remotePasswordType { + + type vmtracker_PasswordType; + description "Password EnCrypt Type"; } - leaf clientUuid { - config "false"; - type int32; + leaf refresh { + type boolean; + default "false"; + description "Attempt to establish this connection"; } - leaf clientPid { - config "false"; - type int32; + leaf connect { + type boolean; + default "false"; + description "Attempt to establish this connection"; } - leaf clientExtPid { - config "false"; - type uint32; + + // allowed VLANs learned + leaf allowedVlans { + + type l2_VlanBitmap; + description "Limit the possible VLANs learned from the destination by this set"; } - leaf clientProtocol { - config "false"; - type uint8; + leaf autoVlan { + type boolean; + default "true"; + description "Enable dynamic creation of VLANs learned"; } - leaf clientIndex { - config "false"; - type uint16; + leaf findNewHost { + type uint32 { + range "0..65355"; + } + default "3600"; + description "Check this frequently for new hosts"; } - leaf clientContextId { - config "false"; - type uint32; + leaf syncFullInfo { + type uint32 { + range "0..65355"; + } + default "3600"; + description "Check this frequently for hosts, VMs, and port groups"; } + } - // client mts sap - // Type is an MO-Defined-Type - leaf clientMtsSap { - config "false"; - description "Client Data Mts Sap"; - - // Type is an MO-Defined-Type - type ipv4_ClientMtsSapType; - } + grouping acllog_Entity-group { + description "Acllog entity"; - // client flag - // Type is an MO-Defined-Type - leaf clientFlag { - config "false"; - description "Client Flag"; + // Acllog instance MO + container inst-items { - // Type is an MO-Defined-Type - type ipv4_ClientFlagType; - } - leaf clientDataMsgSuccess { - config "false"; - type uint64; - } - leaf clientDataMsgFail { - config "false"; - type uint64; - } - leaf clientRcvFunName { - config "false"; - type string; + uses acllog_Inst-group; + description "Acllog Inst Object"; } } - grouping ipv4_IPLoadSharing-group { + grouping acllog_Inst-group { + description "Acllog Inst Object"; - // load share mode for 'ip load-sharing' cli, there are four modes - // - 1. {address source-destination} - // cli: ip load-sharing address source-destination gre-outer - // concatenation rotate 1 universal-id 2 - // - 2. {address destination port destination} - // cli: ip load-sharing address source-destination gre - // concatenation rotate 1 universal-id 2 - // - 3. {address source-destination gre-key} - // cli: ip load-sharing address destination port destination - // rotate 1 universal-id 2 - // - 4. {address source-destination port source-destination} - // cli: ip load-sharing address source-destination port - // source-destination concatenation - // - 5. {address source-destination gtpu-teid} - // cli: ip load-sharing address source-destination gtpu - // concatenation rotate 1 universal-id 2 - // Type is an MO-Defined-Type - leaf loadShareMode { - description "Load sharing mode"; + container log-items { - // Type is an MO-Defined-Type - type ip_LoadShareFormat; + uses acllog_LogCache-group; + description "Acllog cache object"; } - leaf universalID { + } + + grouping acllog_LogCache-group { + description "Acllog cache object"; + leaf threshold { type uint32 { - range "0..4294967295"; + range "0..1000000"; } + default "0"; + description "Number of packets are logged before the expiry of the alert interval the system generates a Syslog message"; } - - // whether gre-outer hash is enabled - // Type is an MO-Defined-Type - leaf greOuterHash { - description "GRE Outer Hash"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf entries { + type uint32 { + range "0..1048576"; + } + default "8000"; + description "Maximum number of flows to be monitored by logging process"; } - - // whether concatenation is enabled - // Type is an MO-Defined-Type - leaf concatenation { - description "Concatenation"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf detailed { + type boolean; + description "Include detailed ACL information"; } - leaf rotate { - type uint16 { - range "1..63"; + leaf includeSgt { + type boolean; + description "Include source group tag info in syslogs"; + } + leaf interval { + type union { + type string; + type uint64 { + range "5..86400"; + } } - default "32"; + default "300"; + description "Log update interval in seconds"; + } + leaf matchLevel { + type uint8 { + range "0..7"; + } + default "6"; + description "Acllog logging level severity"; } + } - // whether ecmploadsharing is enabled. - // Not supported on n9k today, defined for future use - // Type is an MO-Defined-Type - leaf ecmpLoadSharing { - description "ECMP load sharing"; + grouping conftmpl_TemplateTable-group { + description "Template Table"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // TemplateEntry + container templateEntry-items { + list TemplateEntry-list { + key "name"; + + uses conftmpl_TemplateEntry-group; + description "Provides the details about a specific template entry list"; + } + description "Provides the details about a specific template entry"; } } - grouping ipv4_LoadSharingStat-group { - leaf univerIdRanSeed { - config "false"; - type uint32; + grouping conftmpl_TemplateEntry-group { + description "Provides the details about a specific template entry"; + leaf name { + type string; + description "Name of the config template"; } - leaf ipLoadshareOption { - config "false"; + leaf description { type string; + description "Description"; } - - // Type is an MO-Defined-Type - leaf hashFlag { + leaf refCount { config "false"; - description "GRE-Outer Hash"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Signifies the number of VRFs associated with this config template"; } - // Type is an MO-Defined-Type - leaf concat { - config "false"; - description "Concatenation"; + // OpTable MO + container opTable-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses conftmpl_OpTable-group; + description "Template Create/Delete Operation Table"; } - leaf rotate { - config "false"; - type uint16 { - range "1..63"; + } + + grouping conftmpl_OpTable-group { + description "Template Create/Delete Operation Table"; + leaf description { + type string; + description "Description"; + } + + // OpEntry + container opEntry-items { + list OpEntry-list { + key "operationType"; + + uses conftmpl_OpEntry-group; + description "Template Operation Entry list"; } - default "32"; + description "Template Operation Entry"; } } - grouping ipv4_IpTrafficStat-group { - leaf received { - config "false"; - type uint32; + grouping conftmpl_OpEntry-group { + description "Template Operation Entry"; + + leaf operationType { + + type conftmpl_OperationType; + description "OperationType"; } - leaf sent { - config "false"; - type uint32; + + leaf templateType { + + type conftmpl_TemplateType; + description "The type of config template depending on which resource it operates for"; } - leaf consumed { - config "false"; - type uint32; + leaf substituteString { + type string; + description "The string in a config template to be substituted by string sent by controller before applying the template configurations"; } - leaf fwdUcast { - config "false"; - type uint32; + leaf configString { + type string; + description "A list of semicolon seperated commands configured in a config template"; } - leaf fwdMcast { - config "false"; - type uint32; + leaf description { + type string; + description "Description"; } - leaf fwdLabel { - config "false"; + leaf refCount { type uint32; + description "Description"; } - leaf ingressMcecFwdPkts { - config "false"; - type uint32; + } + + grouping fm_Entity-group { + description "Feature entity"; + + // MPLS Static feature information + container mplsstatic-items { + + uses fm_MplsStatic-group; + description "MPLS Static Feature (Static MPLS label allocation)"; } - leaf optsEnd { - config "false"; - type uint32; + + // MPLS OAM feature information + container mplsoam-items { + + uses fm_MplsOam-group; + description "MPLS OAM Feature (MPLS ping and traceroute)"; } - leaf optsNop { - config "false"; - type uint32; + + // SRTE feature information + container srte-items { + + uses fm_SRTE-group; + description "Segment-Routing Traffic Engineering Feature"; } - leaf optsBsec { - config "false"; - type uint32; + + // MPLS Segment-routing feature information + container mplssgmntrtg-items { + + uses fm_MplsSgmntRtg-group; + description "MPLS Segment-Routing Feature"; } - leaf optsLsrr { - config "false"; - type uint32; + + // SRv6 feature information + container srv6-items { + + uses fm_SRv6-group; + description "SRv6 Feature"; } - leaf optsTimestamp { - config "false"; - type uint32; + + // MPLS LDP feature information + container mplsldp-items { + + uses fm_MplsLdp-group; + description "MPLS-Ldp Feature"; } - leaf optsEsec { - config "false"; - type uint32; + + // MPLS L3vpn feature information + container mplsl3vpn-items { + + uses fm_MplsL3vpn-group; + description "MPLS L3VPN Feature"; } - leaf optsRecordRoute { - config "false"; - type uint32; + + // MPLS EVPN feature information + container mplsevpn-items { + + uses fm_MplsEvpn-group; + description "MPLS EVPN Feature"; } - leaf optsStrsrcRoute { - config "false"; - type uint32; + + // EVMED feature information + container evmed-items { + + uses fm_Evmed-group; + description "Event manager event detector feature"; } - leaf optsAlert { - config "false"; - type uint32; + + // Privilege feature information + container privilege-items { + + uses fm_Privilege-group; + description "Enable or Disable privilege level support"; } - leaf optsOther { - config "false"; - type uint32; + + // BGP feature information + container bgp-items { + + uses fm_Bgp-group; + description "BGP feature"; } - leaf frag { - config "false"; - type uint32; + + // HMM feature information + container hmm-items { + + uses fm_Hmm-group; + description "HMM aka feature fabric forwarding"; } - leaf fragmented { - config "false"; - type uint32; + + // EVPN feature information + container evpn-items { + + uses fm_Evpn-group; + description "EVPN feature (nv overlay evpn)"; } - leaf outFrag { - config "false"; - type uint32; + + // Sflow feature information + container sflow-items { + + uses fm_Sflow-group; + description "Sflow feature"; } - leaf fragDrop { - config "false"; - type uint32; + + // NGOAM feature information + container ngoam-items { + + uses fm_Ngoam-group; + description "NGOAM feature"; } - leaf cantFrag { - config "false"; - type uint32; + + // POE feature information + container poe-items { + + uses fm_Poe-group; + description "POE feature"; } - leaf reasm { - config "false"; - type uint32; + + // MSDP feature information + container msdp-items { + + uses fm_Msdp-group; + description "MSDP feature"; } - leaf fragTO { - config "false"; - type uint32; + + // MVPN feature information + container mvpn-items { + + uses fm_Mvpn-group; + description "MVPN feature"; } - } - grouping ipv4_IpTrafficErrStat-group { - leaf badCsum { - config "false"; - type uint32; + // DHCP feature information + container dhcp-items { + + uses fm_Dhcp-group; + description "DHCP feature"; } - leaf tooSmall { - config "false"; - type uint32; + + // Interface-Vlan feature information + container ifvlan-items { + + uses fm_InterfaceVlan-group; + description "Interface-Vlan feature"; } - leaf badVer { - config "false"; - type uint32; + + container bashshell-items { + + uses fm_BashShell-group; + description "Bash-Shell feature"; } - leaf badHLen { - config "false"; - type uint32; + + container netconf-items { + + uses fm_Netconf-group; + description "Netconf feature"; } - leaf badLen { - config "false"; - type uint32; + + container restconf-items { + + uses fm_Restconf-group; + description "Restconf feature"; } - leaf badDest { - config "false"; - type uint32; + + container grpc-items { + + uses fm_Grpc-group; + description "Grpc feature"; } - leaf badTTL { - config "false"; - type uint32; + + container scpserver-items { + + uses fm_ScpServer-group; + description "SCP-Server Feature"; } - leaf cantFwd { - config "false"; - type uint32; + + container lldp-items { + + uses fm_Lldp-group; + description "Lldp feature"; } - leaf outDrop { - config "false"; - type uint32; + + // LACP feature information + container lacp-items { + + uses fm_Lacp-group; + description "LACP feature"; } - leaf badEncap { - config "false"; - type uint32; + + // Nxapi feature information + container nxapi-items { + + uses fm_Nxapi-group; + description "Nxapi feature"; } - leaf noRoute { - config "false"; - type uint32; + + // Telnet feature information + container telnet-items { + + uses fm_Telnet-group; + description "Telnet Feature"; } - leaf noProto { - config "false"; - type uint32; + + // Ssh feature information + container ssh-items { + + uses fm_Ssh-group; + description "Ssh feature"; } - leaf badOptions { - config "false"; - type uint32; + + // Nxdb feature information + container nxdb-items { + + uses fm_Nxdb-group; + description "Nxdb feature"; } - leaf vinciMigPkts { - config "false"; - type uint32; + + // VnSegment feature information + container vnsegment-items { + + uses fm_VnSegment-group; + description "VnSegment feature"; } - leaf snoopSuccess { - config "false"; - type uint32; + + // Tacacs+ feature information + container tacacsplus-items { + + uses fm_Tacacsplus-group; + description "Tacacs+ Feature"; } - leaf sviIodDown { - config "false"; - type uint32; + + // Ldap feature information + container ldap-items { + + uses fm_Ldap-group; + description "Ldap Feature"; } - leaf restartPktDrop { - config "false"; - type uint32; + + // Scheduler feature information + container scheduler-items { + + uses fm_Scheduler-group; + description "Scheduler Feature"; } - leaf mbufErrCount { - config "false"; - type uint32; + + // Imp feature information + container imp-items { + + uses fm_Imp-group; + description "Imp Feature"; } - leaf badCntxtIdDrop { - config "false"; - type uint32; + + // sftpServer feature information + container sftpserver-items { + + uses fm_SftpServer-group; + description "sftp-server Feature"; } - leaf rpfDrop { - config "false"; - type uint32; + + // UDLD feature information + container udld-items { + + uses fm_Udld-group; + description "UDLD feature"; } - leaf badGwMacDrop { - config "false"; - type uint32; + + // NAT feature information + container nat-items { + + uses fm_Nat-group; + description "Nat feature"; } - leaf ipsOptionFail { - config "false"; - type uint32; + + // VRRPv3 feature information + container vrrpv3-items { + + uses fm_Vrrpv3-group; + description "Virtual Router Redundancy Protocol (VRRP) Version 3 feature"; } - leaf natInDrop { - config "false"; - type uint32; + + // VRRP feature information + container vrrp-items { + + uses fm_Vrrp-group; + description "Virtual Router Redundancy Protocol (VRRP) Version 2 feature"; } - leaf natOutDrop { - config "false"; - type uint32; + + // HSRP feature information + container hsrp-items { + + uses fm_Hsrp-group; + description "Hot Standby Router Protocol (HSRP) feature"; } - leaf ipsMfwdFail { - config "false"; - type uint32; + + // Netflow feature information + container netflow-items { + + uses fm_Netflow-group; + description "Netflow feature"; } - leaf ipsLispDrop { - config "false"; - type uint32; + + // Analytics feature information + container analytics-items { + + uses fm_Analytics-group; + description "Analytics feature"; } - leaf ipsLispDecapDrop { - config "false"; - type uint32; + + // BFD feature information + container bfd-items { + + uses fm_Bfd-group; + description "BFD feature"; } - leaf ipsLispEncapDrop { - config "false"; - type uint32; + + // PTP feature information + container ptp-items { + + uses fm_Ptp-group; + description "PTP feature"; } - leaf ipsLispEncap { - config "false"; - type uint32; + + // Tunnel feature information + container tunnelif-items { + + uses fm_Tunnelif-group; + description "Tunnel feature"; } - leaf ipsMfwdCopyDrop { - config "false"; - type uint32; + + // nv overlay feature information + container nvo-items { + + uses fm_Nvo-group; + description "Vxlan feature"; } - leaf ipsRaReassDrop { - config "false"; - type uint32; + + // PBR feature information + container pbr-items { + + uses fm_Pbr-group; + description "PBR feature"; } - leaf ipsIcmpRedirProcDrop { - config "false"; - type uint32; + + // PIM feature information + container pim-items { + + uses fm_Pim-group; + description "PIM feature"; } - leaf ipsIfmgrInitFail { - config "false"; - type uint32; + + // NGMVPN feature information + container ngmvpn-items { + + uses fm_Ngmvpn-group; + description "Ngmvpn feature"; } - leaf ipsInvalidFilter { - config "false"; - type uint32; + + // VPC feature information + container vpc-items { + + uses fm_Vpc-group; + description "VPC feature"; } - leaf ipsInvalidL2msg { - config "false"; - type uint32; + + // VTP feature information + container vtp-items { + + uses fm_Vtp-group; + description "VTP feature"; } - leaf aclIngressDrop { - config "false"; - type uint32; + + container pvlan-items { + + uses fm_Pvlan-group; + description "PVLAN feature"; } - leaf aclEgressDrop { - config "false"; - type uint32; + + // NTP feature information + container ntpd-items { + + uses fm_Ntpd-group; + description "NTP Feature"; } - leaf aclDirBcastDrop { - config "false"; - type uint32; + + // NBM feature information + container nbm-items { + + uses fm_Nbm-group; + description "Nbm feature"; } - } - grouping ipv4_ICMPTrafficStat-group { - leaf txRedir { - config "false"; - type uint32; + // Telemetry feature information + container telemetry-items { + + uses fm_Telemetry-group; + description "Telemetry feature"; } - leaf txUnreach { - config "false"; - type uint32; + + // OSPF feature information + container ospf-items { + + uses fm_Ospf-group; + description "Open Shortest Path First (OSPF) Version 2 feature"; } - leaf txEchoReq { - config "false"; - type uint32; + + // OSPFv3 feature information + container ospfv3-items { + + uses fm_Ospfv3-group; + description "Open Shortest Path First (OSPFv3) Version 3 feature"; } - leaf txEchoReply { - config "false"; - type uint32; + + // Holds "vendor interop controller" info + container vctrl-items { + + uses fm_VendorCntrl-group; + description "Vendor controllor interop"; } - leaf txMaskReq { - config "false"; - type uint32; + + // macsec feature information + container macsec-items { + + uses fm_Macsec-group; + description "Macsec feature"; } - leaf txMaskReply { - config "false"; - type uint32; + + // macsec feature information + container ofm-items { + + uses fm_Ofm-group; + description "Static Tunnel feature"; } - leaf txInfoReq { - config "false"; - type uint32; + + // Npiv feature information + container npiv-items { + + uses fm_Npiv-group; + description "Npiv feature"; } - leaf txInfoReply { - config "false"; - type uint32; + + // PIM6 feature information + container pim6-items { + + uses fm_Pim6-group; + description "PIM6 feature"; } - leaf txParamProb { - config "false"; - type uint32; + + // ISIS feature information + container isis-items { + + uses fm_Isis-group; + description "ISIS feature"; } - leaf txSrcQuench { - config "false"; - type uint32; + + // HW_Telemetry feature information + container hwtelemetry-items { + + uses fm_HwTelemetry-group; + description "HW_Telemetry feature"; } - leaf txTstampReq { - config "false"; - type uint32; + + container itd-items { + + uses fm_Itd-group; + description "ITD feature"; } - leaf txTstampReply { - config "false"; - type uint32; + + container icam-items { + + uses fm_Icam-group; + description "Icam feature"; } - leaf txTstampXceed { - config "false"; - type uint32; + + // Port Security feature information + container portsec-items { + + uses fm_PortSec-group; + description "Port-Security Feature"; } - leaf txRtrSolicit { - config "false"; - type uint32; + + // Flexlink feature information + container flexlink-items { + + uses fm_Flexlink-group; + description "Flexlink feature"; } - leaf txRtrAdvert { - config "false"; - type uint32; + + // Sla Sender feature information + container slasender-items { + + uses fm_SlaSender-group; + description "Sla-Sender Feature"; } - leaf outBadLen { - config "false"; - type uint32; + + // Sla Responder feature information + container slaresponder-items { + + uses fm_SlaResponder-group; + description "Sla-Responder Feature"; } - leaf outEncapFail { - config "false"; - type uint32; + + // Sla twamp-server feature information + container slatwampserver-items { + + uses fm_SlaTwampServer-group; + description "Sla-Twamp-Server Feature"; } - leaf outXmitFail { - config "false"; - type uint32; + + // vmtracker feature information + container vmtracker-items { + + uses fm_VmTracker-group; + description "VmTracker Feature"; } - leaf icmpOrigReq { - config "false"; - type uint32; + + // Dot1x feature information + container dot1x-items { + + uses fm_Dot1x-group; + description "Enable or disable dot1x feature"; } - leaf redirOrigReq { - config "false"; - type uint32; + + // NxSdk feature information + container nxsdk-items { + + uses fm_NxSdk-group; + description "NxSdk feature"; } - leaf outErr { - config "false"; - type uint32; + + // OpenFlow feature information + container openflow-items { + + uses fm_OpenFlow-group; + description "Enable or disable OpenFlow feature"; } - leaf oldShortIp { - config "false"; - type uint32; + + // Container tracker feature information + container containertracker-items { + + uses fm_ContainerTracker-group; + description "Container Tracker Feature"; } - leaf oldIcmp { - config "false"; - type uint32; + } + + grouping fm_MplsStatic-group { + description "MPLS Static Feature (Static MPLS label allocation)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf errorDrop { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxRedir { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxUnreach { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf rxEchoReq { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxEchoReply { + } + + grouping fm_ServiceInstance-group { + description "Operational instance information"; + leaf id { config "false"; type uint32; + description "Instance Id"; } - leaf rxMaskReq { + + leaf operSt { config "false"; - type uint32; + + type fm_InstOperState; + description "Operational status of the instance"; } - leaf rxMaskReply { - config "false"; - type uint32; + } + + grouping fm_MplsOam-group { + description "MPLS OAM Feature (MPLS ping and traceroute)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxInfoReq { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxInfoReply { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxParamProb { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf rxSrcQuench { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxTstampReq { - config "false"; - type uint32; + } + + grouping fm_SRTE-group { + description "Segment-Routing Traffic Engineering Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxTstampReply { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxTimeXceed { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf rxRtrSolicit { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf rxRtrAdvert { - config "false"; - type uint32; + } + + grouping fm_MplsSgmntRtg-group { + description "MPLS Segment-Routing Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf rxFormatError { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf rxCsumError { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf icmpLispProcessed { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf icmpNoClients { - config "false"; - type uint32; + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf icmpConsumed { + } + + grouping fm_SRv6-group { + description "SRv6 Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf icmpReplies { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf icmpReplyDropInvldAddr { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_MplsLdp-group { + description "MPLS-Ldp Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf icmpReplyDropInactAddr { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf statsLastReset { + leaf conflictingFeature { config "false"; type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - } - grouping ipv4_RFC4293TrafficStat-group { - leaf inrcv { - config "false"; - type uint32; + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } - leaf inoctet { - config "false"; - type uint32; + } + + grouping fm_MplsL3vpn-group { + description "MPLS L3VPN Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; } - leaf inhdrerr { + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf innoroutes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inaddrerr { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf innoproto { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_MplsEvpn-group { + description "MPLS EVPN Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf intruncated { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inforwdgrams { + leaf conflictingFeature { config "false"; - type uint32; + type string; + description "Name of a feature that is enabled and conflicts with this feature, and so is preventing this feature from being enabled."; } - leaf reasmreqds { + } + + grouping fm_Evmed-group { + description "Event manager event detector feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf reasmoks { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf reasmfails { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Privilege-group { + description "Enable or Disable privilege level support"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf indiscards { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf indelivers { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Bgp-group { + description "BGP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf inMcastPkts { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf inMcastBytes { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Hmm-group { + description "HMM aka feature fabric forwarding"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf inBcastPkts { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outRequest { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Evpn-group { + description "EVPN feature (nv overlay evpn)"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outNoRoutes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outForwdGrams { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Sflow-group { + description "Sflow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outDiscards { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outFragReqds { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ngoam-group { + description "NGOAM feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outFragOks { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outFragFails { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Poe-group { + description "POE feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outFragCreates { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outTransmits { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Msdp-group { + description "MSDP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outMcastPkts { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Mvpn-group { + description "MVPN feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outMcastBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; } - leaf outBcastPkts { + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Dhcp-group { + description "DHCP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { config "false"; - type uint32; + + type fm_OperState; + description "Operational status"; } - leaf outBcastBytes { + + leaf maxInstance { config "false"; - type uint32; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_InterfaceVlan-group { + description "Interface-Vlan feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; } } - grouping ipv6_Entity-group { + grouping fm_BashShell-group { + description "Bash-Shell feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Netconf-group { + description "Netconf feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Restconf-group { + description "Restconf feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Grpc-group { + description "Grpc feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_ScpServer-group { + description "SCP-Server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Lldp-group { + description "Lldp feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Lacp-group { + description "LACP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nxapi-group { + description "Nxapi feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Telnet-group { + description "Telnet Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Ssh-group { + description "Ssh feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + default "enabled"; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Nxdb-group { + description "Nxdb feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VnSegment-group { + description "VnSegment feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Tacacsplus-group { + description "Tacacs+ Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ldap-group { + description "Ldap Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Scheduler-group { + description "Scheduler Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Imp-group { + description "Imp Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SftpServer-group { + description "sftp-server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Udld-group { + description "UDLD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nat-group { + description "Nat feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vrrpv3-group { + description "Virtual Router Redundancy Protocol (VRRP) Version 3 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vrrp-group { + description "Virtual Router Redundancy Protocol (VRRP) Version 2 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Hsrp-group { + description "Hot Standby Router Protocol (HSRP) feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Netflow-group { + description "Netflow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Analytics-group { + description "Analytics feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Bfd-group { + description "BFD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ptp-group { + description "PTP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Tunnelif-group { + description "Tunnel feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Nvo-group { + description "Vxlan feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pbr-group { + description "PBR feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pim-group { + description "PIM feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ngmvpn-group { + description "Ngmvpn feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vpc-group { + description "VPC feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Vtp-group { + description "VTP feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pvlan-group { + description "PVLAN feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ntpd-group { + description "NTP Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Nbm-group { + description "Nbm feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Telemetry-group { + description "Telemetry feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ospf-group { + description "Open Shortest Path First (OSPF) Version 2 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ospfv3-group { + description "Open Shortest Path First (OSPFv3) Version 3 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VendorCntrl-group { + description "Vendor controllor interop"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + } + + grouping fm_Macsec-group { + description "Macsec feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Ofm-group { + description "Static Tunnel feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Npiv-group { + description "Npiv feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Pim6-group { + description "PIM6 feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Isis-group { + description "ISIS feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_HwTelemetry-group { + description "HW_Telemetry feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Itd-group { + description "ITD feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Icam-group { + description "Icam feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_PortSec-group { + description "Port-Security Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Flexlink-group { + description "Flexlink feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaSender-group { + description "Sla-Sender Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaResponder-group { + description "Sla-Responder Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_SlaTwampServer-group { + description "Sla-Twamp-Server Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_VmTracker-group { + description "VmTracker Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_Dot1x-group { + description "Enable or disable dot1x feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_NxSdk-group { + description "NxSdk feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_OpenFlow-group { + description "Enable or disable OpenFlow feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fm_ContainerTracker-group { + description "Container Tracker Feature"; + + // To enable/disable feature + leaf adminSt { + + type fm_AdminState; + description "Admin status"; + } + + // Operational state of the service. + // Its in enabled state even if one instance is enabled + leaf operSt { + config "false"; + + type fm_OperState; + description "Operational status"; + } + + leaf maxInstance { + config "false"; + + type fm_Instance; + description "Maximum number of instances supported"; + } + + // This object contains instance specific operational information + // common to features. This MO is created when there is a service instance + // and removed when the service instance is removed. + container service-items { + list ServiceInstance-list { + config "false"; + key "id"; + + uses fm_ServiceInstance-group; + description "Operational instance information list"; + } + description "Operational instance information"; + } + } + + grouping fset_FeatureSet-group { + description "A FeatureSet is a purely software functionality. It is a collection of componenets that perform a specific set of function"; + leaf name { + type string; + description "Feature-set Name"; + } + + // To uninstall/install + leaf adminSt { + + type fset_AdminState; + description "Admin status"; + } + leaf force { + type boolean; + description "force status"; + } + + // Operational state of the featureSet + leaf operSt { + config "false"; + + type fset_OperState; + description "Operational status"; + } + } + + grouping guestshell_GuestShell-group { + description "Guest Shell execution space"; + + // Guest Shell status + container status-items { + + uses guestshell_Status-group; + description "Guest Shell status information"; + } + + // Guest Shell general information + container info-items { + + uses guestshell_Info-group; + description "Guest Shell general information"; + } + + // Guest Shell resource information + container resources-items { + + uses guestshell_ResourceInfo-group; + description "Resource information for the Guest Shell"; + } + } + + grouping guestshell_Status-group { + description "Guest Shell status information"; + + // Operational state + leaf operState { + config "false"; + + type guestshell_GuestShellOperState; + description "Operational state of the Guest Shell"; + } + leaf lastActionStatus { + config "false"; + type string; + description "Status/result of last action performed on the Guest Shell"; + } + } + + grouping guestshell_Info-group { + description "Guest Shell general information"; + leaf packageLocation { + config "false"; + type string; + description "Location of the Guest Shell package file at the time it was installed"; + } + leaf version { + config "false"; + type string; + description "Guest Shell version number"; + } + leaf description { + config "false"; + type string; + description "Guest Shell description"; + } + + // Signing Key + leaf signingKeyType { + config "false"; + + type guestshell_SigningKeyType; + description "Type of key that was used to sign the Guest Shell source package"; + } + } + + grouping guestshell_ResourceInfo-group { + description "Resource information for the Guest Shell"; + + // Memory resource information + leaf memRequested { + config "false"; + + type guestshell_MemoryResource; + description "Requested memory limit"; + } + + leaf memCommitted { + config "false"; + + type guestshell_MemoryResource; + description "Maximum amount of memory currently allowed to be used"; + } + + leaf memAvailable { + config "false"; + + type guestshell_MemoryResource; + description "Amount of memory beneath the quota that may be committed"; + } + + leaf memQuota { + config "false"; + + type guestshell_MemoryResource; + description "Maximum memory limit allowed"; + } + + leaf memUtilized { + config "false"; + + type guestshell_MemoryResource; + description "Amount of memory in use"; + } + + // CPU resource information + leaf cpuRequested { + config "false"; + + type guestshell_CpuResource; + description "Requested share of CPU"; + } + + leaf cpuCommitted { + config "false"; + + type guestshell_CpuResource; + description "Current share of CPU"; + } + + leaf cpuAvailable { + config "false"; + + type guestshell_CpuResource; + description "Amount of CPU share beneath the quota that may be committed"; + } + + leaf cpuQuota { + config "false"; + + type guestshell_CpuResource; + description "Maximum CPU share allowed"; + } + + leaf cpuUtilized { + config "false"; + + type guestshell_CpuResource; + description "Current utilization of CPU resources"; + } + + // Bootflash storage resource information + leaf rootfsRequested { + config "false"; + + type guestshell_BootflashResource; + description "Requested space for rootfs"; + } + + leaf bootflashCommitted { + config "false"; + + type guestshell_BootflashResource; + description "Amount of space used for rootfs and control files"; + } + + leaf bootflashAvailable { + config "false"; + + type guestshell_BootflashResource; + description "Amount of bootflash space available beneath the quota that may be committed"; + } + + leaf bootflashQuota { + config "false"; + + type guestshell_BootflashResource; + description "Maximum bootflash space that may be used"; + } + + leaf rootfsUtilized { + config "false"; + + type guestshell_BootflashResource; + description "Current utilization of the rootfs"; + } + } + + grouping installer_Install-group { + description "Image installation information and result"; + leaf imgName { + config "false"; + type string; + description "Image name for target installation image"; + } + leaf packageName { + config "false"; + type string; + description "path for package to be applied after reload"; + } + + // Stage of the install task + leaf stage { + config "false"; + + type installer_Stage; + description "Stage of installation operation"; + } + + // Upgrade error string + leaf upgErr { + config "false"; + + type installer_InstErr; + description "Install upgrade error value"; + } + leaf upgErrStr { + config "false"; + type string; + description "Upgrade error details string"; + } + leaf progress { + config "false"; + type uint32; + description "Upgrade completion progress percentage "; + } + + // Installation table + container mod-items { + list InstallUpgTable-list { + config "false"; + key "module"; + + uses installer_InstallUpgTable-group; + description "Installer upgrade table for each module list"; + } + description "Installer upgrade table for each module "; + } + } + + grouping installer_InstallUpgTable-group { + description "Installer upgrade table for each module "; + leaf module { + config "false"; + type uint32; + description "Module number"; + } + + // Per Module Upg table row + container modtype-items { + list ModUpgTable-list { + config "false"; + key "modType"; + + uses installer_ModUpgTable-group; + description "Module upgrade details for each module type list"; + } + description "Module upgrade details for each module type "; + } + } + + grouping installer_ModUpgTable-group { + description "Module upgrade details for each module type "; + leaf module { + config "false"; + type uint32; + description "Module number"; + } + + // module Type + leaf modType { + config "false"; + + type installer_InstModType; + description "Module type"; + } + leaf runVer { + config "false"; + type string; + description "Current running version"; + } + leaf targetVer { + config "false"; + type string; + description "Target version for installation"; + } + + // Upgrade Required YES/NO + leaf upgReq { + config "false"; + + type installer_InstEnum; + description "Upgrade required result"; + } + + // Status of the mod install task + leaf upgStatus { + config "false"; + + type installer_UpgStatusType; + description "Upgrade status of each module"; + } + leaf failStr { + config "false"; + type string; + description "Module upgrade failure reason details "; + } + } + + grouping interface_Entity-group { + description "Interface"; + leaf descr { + config "false"; + type string; + description "Intf"; + } + + // Physical ethernet interface information holder + container phys-items { + list PhysIf-list { + key "id"; + + uses l1_PhysIf-group; + description "Layer 1 Physical Interface Configuration list"; + } + description "Layer 1 Physical Interface Configuration"; + } + + // Aggregated interface, collection of physical ports; + // aka port channel + container aggr-items { + list AggrIf-list { + key "id"; + + uses pc_AggrIf-group; + description "Aggregated Interface list"; + } + description "Aggregated Interface"; + } + + // Routed concrete interface (aka routed port) + container rtd-items { + list RtdIf-list { + key "id"; + + uses l3_RtdIf-group; + description "Routed Interface list"; + } + description "Routed Interface"; + } + + // Routed loopback interface + container lb-items { + list LbRtdIf-list { + key "id"; + + uses l3_LbRtdIf-group; + description "Routed Loopback Interface list"; + } + description "Routed Loopback Interface"; + } + + // Routed encap interface (aka sub if) + container encrtd-items { + list EncRtdIf-list { + key "id"; + + uses l3_EncRtdIf-group; + description "Encapsulated Routed Interface list"; + } + description "Encapsulated Routed Interface"; + } + + // Routed Vlan Interface (SVI) Svi:If gets created for L2:BD, immediately after + // l2:BD is attached to l3:Ctx. Use case: Communication + // between two Hosts in different BDs. This is achieved + // through routing. The resource limit of svi is same + // as the resource limit of BD + container svi-items { + list If-list { + key "id"; + + uses svi_If-group; + description "Routed Vlan Interface list"; + } + description "Routed Vlan Interface"; + } + container tunnelif-items { + list If-list { + key "id"; + + uses tunnelif_If-group; + description "Tunnel Interface list"; + } + description "Tunnel Interface"; + } + } + + grouping l1_PhysIf-group { + description "Layer 1 Physical Interface Configuration"; + + // Administrative port link Transmit Reset + leaf linkTransmitReset { + + type l1_LinkTransmitReset; + description "Link Transmit Reset"; + } + + // Administrative port link mac-up timer + leaf linkMacUpTimer { + + type l1_LinkMacUpTimer; + description "Administrative port link mac-up timer"; + } + + // Administrative port link debounce interval for link debounce Link up + leaf linkDebounceLinkUp { + + type l1_LinkDebounceLinkUp; + description "Link Debounce Interval - LinkUp Event"; + } + + leaf dfeTuningDelay { + + type l1_DfeTuningDelay; + description "DFE (Decision Feedback Equalizer) Tuning Delay"; + } + + leaf dfeAdaptiveTuning { + + type l1_DfeAdaptiveTuning; + description "DFE (Decision Feedback Equalizer) Adaptive Tuning"; + } + + leaf uniDirectionalEthernet { + + type l1_UniDirectionalEthernet; + description "UDE (Uni-Directional Ethernet)"; + } + + // Packet timestamping feature state @@@ This comes from the interface configuration policy + leaf packetTimestampState { + + type l1_PacketTimestampState; + description " packet timestamp feature state"; + } + + leaf packetTimestampIngressSourceId { + + type l1_PacketTimestampSourceId; + description " Ingress timestamp Source Id"; + } + + leaf packetTimestampEgressSourceId { + + type l1_PacketTimestampSourceId; + description " Egress timestamp Source Id"; + } + + // port speed-group + leaf speedGroup { + + type l1_SpeedGroup; + description "Speed Group"; + } + + // Beacon port state + leaf beacon { + + type l1_Beacon; + description "Beacon State"; + } + + // Voice VLAN ID + leaf voiceVlanId { + + type l1_VoiceVlanId; + description "Voice VLAN ID"; + } + + // Voice vlan type + leaf voiceVlanType { + + type l1_VoiceVlanType; + description "Voice vlan type"; + } + + // Switchport Priority Extend COS + leaf voicePortCos { + + type l1_VoicePortCos; + description "Voice Port Cos"; + } + + // Switchport Priority Extend trust + leaf voicePortTrust { + + type l1_VoicePortTrust; + description "Voice Port Trust"; + } + + // FEC knob + leaf FECMode { + + type l1_FECMode; + description "FEC Mode"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + } + description "descr"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Switching state + leaf switchingSt { + config "false"; + + type l1_SwitchingSt; + description "Switching State"; + } + + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + + type l1_AdminSt; + description "Administrative Port State"; + } + + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + + type l1_Speed; + description "Administrative Port Speed"; + } + + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + + type l1_Duplex; + description "Duplex"; + } + + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; + } + + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + + type l1_Mtu; + description "Administrative port MTU"; + } + + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; + } + + // Administrative port mode @@@ Internally set by PE + leaf mode { + + type l1_Mode; + description "Administrative port mode"; + } + + // Administrative port layer @@@ Internally set by PE + leaf layer { + + type l1_Layer; + description "Administrative port layer"; + } + + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; + } + + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + + type l1_Delay; + description "Administrative port delay time"; + } + + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + + type l1_LinkDebounce; + description "Administrative port link debounce interval"; + } + + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + } + + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; + } + + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + + type l1_Medium; + description "Administrative port medium type"; + } + + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + + type l1_InheritBw; + description "Administrative port inherit bandwidth"; + } + + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + + type l1_SpanMode; + description "Administrative port span mode"; + } + + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { + + type l1_LinkLog; + description "Administrative link logging enable"; + } + + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + + type l1_TrunkLog; + description "Administrative trunk logging enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; + } + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + + type l1_PortUsage; + description "Port Usage Type"; + } + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; + } + + // config access vlan + leaf accessVlan { + + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; + } + + // Controller Id + leaf controllerId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + + // config access vlan + leaf nativeVlan { + + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; + } + + // port user config flags + leaf userCfgdFlags { + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + + container nfmphysif-items { + + uses nfm_PhysIf-group; + description "Physical Interface Operational(nfm)"; + } + + container ucos-items { + + uses ipqos_UntaggedCos-group; + description "untagged cos"; + } + + container priorflowctrl-items { + + uses ipqos_PriorFlowCtrl-group; + description "priority flow control"; + } + + container priorflowctrlwd-items { + + uses ipqos_PriorFlowCtrlWd-group; + description "priority flow control watchdog"; + } + + container physExtd-items { + + uses l1_PhysIfExtended-group; + description "Layer 1 Physical Interface Extended Configuration"; + } + + // EEE policy + container eeep-items { + + uses l1_EeeP-group; + description "EEE Policy"; + } + + // Storm control policy + container stormctrlp-items { + + uses l1_StormCtrlP-group; + description "Storm Control Policy"; + } + + // Load interval policy + container loadp-items { + + uses l1_LoadP-group; + description "Load Policy"; + } + + // Vlan Mapping policy + container vlanmapping-items { + + uses l1_VlanMapping-group; + description "Vlan Mapping Table"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // Physical interface information holder + container phys-items { + + uses ethpm_PhysIf-group; + description "Physical Interface Runtime State (ethpm)"; + } + + container hwifdetails-items { + + uses ethpm_HwIfDetails-group; + description "Interface Hardware Details"; + } + + // AggrMbrIf class + container aggrmbrif-items { + + uses pc_AggrMbrIf-group; + description "Aggregated Member Interface"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; + + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; + } + + container rtInbandConf-items { + + uses l2_RtInbandConf_target-group; + description "Inband Attachment"; + } + + container rtextConf-items { + + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; + } + + container rtbrConf-items { + + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; + } + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } + } + + container rtmbrIfs-items { + + uses pc_RtMbrIfs_target-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rtphysRtdConf-items { + + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; + } + + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; + + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; + } + + container rttunnelTunnelMbrIfs-items { + + list RtTunnelTunnelMbrIfs-list { + config "false"; + key "tDn"; + + uses tunnel_RtTunnelTunnelMbrIfs_target-group; + } + } + + container dbgIfIn-items { + + uses rmon_IfIn-group; + description "Interface Input Counters"; + } + + container dbgIfOut-items { + + uses rmon_IfOut-group; + description "Interface Output Counters"; + } + + container dbgIpIn-items { + + uses rmon_IpIn-group; + description "IPV4 Input Counters"; + } + + container dbgDot1d-items { + + uses rmon_Dot1d-group; + description "Dot1d Counters"; + } + + container dbgEtherStats-items { + + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; + } + + container dbgDot3Stats-items { + + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; + } + + container dbgIfHCIn-items { + + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; + } + + container dbgIfHCOut-items { + + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; + } + + container dbgIpv6IfStats-items { + + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; + } + + container dbgIfStorm-items { + + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; + } + } + + grouping nfm_PhysIf-group { + description "Physical Interface Operational(nfm)"; + leaf sliceSrcId { + config "false"; + type uint32; + description "Slice Src ID "; + } + leaf slotNum { + config "false"; + type uint32; + description "Slot ID "; + } + leaf asicNum { + config "false"; + type uint32; + description "Asic ID "; + } + leaf sliceNum { + config "false"; + type uint32; + description "Slice ID "; + } + } + + grouping ipqos_UntaggedCos-group { + description "untagged cos"; + + // ucos value + leaf val { + + type ipqos_CosNewNone; + description "untagged cos val"; + } + leaf configStatus { + config "false"; + type uint32; + description "Configuration status"; + } + } + + grouping ipqos_PriorFlowCtrl-group { + description "priority flow control"; + + // priority mode + leaf mode { + + type ipqos_PriorFlowCtrlMode; + description "priority-flow-control mode on/off/auto"; + } + leaf send_tlv { + type boolean; + default "false"; + description "send_tlv used for sending dcbx pfc tlv when pfc mode is on"; + } + } + + grouping ipqos_PriorFlowCtrlWd-group { + description "priority flow control watchdog"; + + // priority mode + leaf watchDogInterval { + + type ipqos_PriorFlowCtrlWdIntvl; + description "watch dog internal on/off"; + } + leaf disableAction { + type boolean; + default "false"; + description "only generate syslog for stuck queue, no action"; + } + + // priority mode + leaf interfaceMutiplier { + + type ipqos_PriorFlowCtrlWdIntfMulti; + description "shutdown mutlipler value"; + } + } + + grouping l1_PhysIfExtended-group { + description "Layer 1 Physical Interface Extended Configuration"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Port-type that the interface is facing + leaf portTypeFabric { + + type l1_PortTypeFabric; + description "Identifies if or not the port is a fabric-facing port"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf switchportBlock { + + type l1_SwitchportBlock; + description "Disable/enable switchport block on interface"; + } + + leaf switchportIsolated { + + type l1_SwitchportIsolated; + description "Switchport Isolated"; + } + + leaf autoExcludeVlans { + + type l1_AutoExcludeVlans; + description "Switchport Autostate Exclude vlans"; + } + + leaf switchportMacLearn { + + type l1_switchportMacLearn; + description "Disable/enable mac learning on interface"; + } + + leaf flowCtrl { + + type l1_FlowControl; + description "Disable/enable flowcontrol block on interface"; + } + + leaf stormCtrlBCastLevel { + + type l1_StormCtrlRate; + description "storm-control broadcast level"; + } + + leaf stormCtrlBCastPPS { + + type l1_StormCtrlPPS; + description "storm-control broadcast PPS"; + } + + leaf stormCtrlMCastLevel { + + type l1_StormCtrlRate; + description "storm-control multicast level"; + } + + leaf stormCtrlMCastPPS { + + type l1_StormCtrlPPS; + description "storm-control multicast PPS"; + } + + leaf stormCtrlUCastLevel { + + type l1_StormCtrlRate; + description "Storm control unicast level"; + } + + leaf stormCtrlUCastPPS { + + type l1_StormCtrlPPS; + description "Storm control unicast PPS"; + } + + leaf stormCtrlAct { + + type l1_StormCtrlAct; + description "Storm control action"; + } + + leaf bufferBoost { + + type l1_BufferBoost; + description "Disable/enable buffer boost on interface"; + } + + leaf switchportVirtualEthernetBridge { + + type l1_SwitchportVirtualEthernetBridge; + description "Disable/enable switchport virtual ethernet bridge on interface"; + } + + leaf allowMultiTag { + + type l1_AllowMultiTag; + description "Allow Multitag"; + } + leaf shutDownLan { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Shut/Unshut all LAN VLANs on interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l1_EeeP-group { + description "EEE Policy"; + + // Administrative state for port energy efficient + // ethernet (EEE) @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeState { + + type l1_EEEState; + description "Administrative state for port energy efficient ethernet (EEE) on the Layer 1 physical interface"; + } + + // Administrative port EEE Lpi threshold @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeLpi { + + type l1_EEELpi; + description "Administrative port EEE LPI threshold of the Layer 1 physical interface"; + } + + // Administrative port EEE Latency @@@ Its by default enabled on every port. No need to + // @@@ expose in IFC + leaf eeeLat { + + type l1_EEELatency; + description "Administrative port EEE latency of the Layer 1 physical interface"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping l1_StormCtrlP-group { + description "Storm Control Policy"; + + // Packet Type - Unknwn Ucast/Mcast/Bcast + leaf type { + + type l1_PktT; + description "Packet Type"; + } + + // Max Rate Allowed + leaf rate { + + type l1_StormCtrlRate; + description "Traffic rate"; + } + + // Max Burst Rate Allowed + leaf burstRate { + + type l1_StormCtrlRate; + description "Max burst size"; + } + + // Max Rate Allowed in PPS + leaf ratePps { + + type l1_StormCtrlPps; + description "Tarffic rate"; + } + + // Max Burst Rate Allowed in PPS + leaf burstPps { + + type l1_StormCtrlPps; + description "Max burst size"; + } + } + + grouping l1_LoadP-group { + description "Load Policy"; + + // Administrative port load interval 1 @@@ This property gets filled up from stats policy + leaf loadIntvl1 { + + type l1_LoadIntvl; + description "Port load sampling interval 1 at bit-rate and packet-rate statistics"; + } + + // Administrative port load interval 2 @@@ This property gets filled up from stats policy + leaf loadIntvl2 { + + type l1_LoadIntvl; + description "Port load sampling interval 2 at bit-rate and packet-rate statistics"; + } + + // Administrative port load interval 3 @@@ This property gets filled up from stats policy + leaf loadIntvl3 { + + type l1_LoadIntvl3; + description "Port load sampling interval 3 at bit-rate and packet-rate statistics"; + } + } + + grouping l1_VlanMapping-group { + description "Vlan Mapping Table"; + leaf Enabled { + type boolean; + default "false"; + description "Vlan Mapping Enable"; + } + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + leaf selectiveQinqAll { + type boolean; + description "Selective QinQ All VLANs"; + } + + container selqinqtable-items { + + uses l1_SelectiveQinqTable-group; + } + + // Vlan Translate Table policy + container vlantranslatetable-items { + + uses l1_VlanTranslateTable-group; + description "Vlan Translate Table"; + } + } + + grouping l1_SelectiveQinqTable-group { + container selqinq-items { + list SelectiveQinq-list { + key "selectiveQinqTranslateVlan"; + + uses l1_SelectiveQinq-group; + description "Vlan Mapping Entry for selective qinq vlans list"; + } + description "Vlan Mapping Entry for selective qinq vlans"; + } + } + + grouping l1_SelectiveQinq-group { + description "Vlan Mapping Entry for selective qinq vlans"; + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + } + + grouping l1_VlanTranslateTable-group { + description "Vlan Translate Table"; + + // Vlan Translate Table policy Vlan Translate Entry policy + container vlan-items { + list VlanTranslateEntry-list { + key "vlanid"; + + uses l1_VlanTranslateEntry-group; + description "Vlan Translate Entry list"; + } + description "Vlan Translate Entry"; + } + } + + grouping l1_VlanTranslateEntry-group { + description "Vlan Translate Entry"; + + leaf vlanid { + + type l1_translatevlanid; + description "Vlan Id"; + } + + leaf innervlanid { + + type l1_translatevlanid; + description "Inner Vlan Id"; + } + + leaf translatevlanid { + + type l1_translatevlanid; + description "Translate Vlan Id"; + } + } + + grouping l1_Vrf-group { + description "Vrf Name"; + + // Vrf Name... + leaf name { + config "false"; + + type l3_VrfName; + description "Vrf Name"; + } + } + + grouping ethpm_PhysIf-group { + description "Physical Interface Runtime State (ethpm)"; + + leaf operLinkDebounce { + config "false"; + + type l1_LinkDebounce; + description "Link Debounce Interval"; + } + + leaf shareState { + config "false"; + + type ethpm_ShareState; + description "Interface share state"; + } + + // FEC knob + leaf operFECMode { + config "false"; + + // Type is a Local-MO-Defined-Type + type l1_FECMode_PhysIf_operFECMode; + description "Operational FEC Mode"; + } + + // cached usercfgdflag + leaf cachedUserCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Cached Port User Config Flags"; + } + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + + leaf operAutoNeg { + config "false"; + + type l1_AutoNeg; + description "negotiate auto"; + } + + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum transmission unit"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Administrative State"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + + // Operational port state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational port status syserror code + leaf operStQualCode { + config "false"; + + type l1_OperStQualCode; + description "Operational Port Status Syserror Code"; + } + + // Operational port err disable reason code + leaf operErrDisQual { + config "false"; + + type l1_OperErrDisQual; + description "Operational Port Error Disable Reason Code"; + } + + // Operational port speed + leaf operSpeed { + config "false"; + + type l1_Speed; + description "Operational Port Speed"; + } + + // Operational port mode + leaf operMode { + config "false"; + + type l1_Mode; + description "Operational Port Mode"; + } + + // Operational duplex + leaf operDuplex { + config "false"; + + type l1_Duplex; + description "Operational Duplex State"; + } + + // Operational port flow control + leaf operFlowCtrl { + config "false"; + + type l1_FlowControl; + description "Operational Port Flow Control"; + } + + // Operational phy port enable state + leaf operPhyEnSt { + config "false"; + + type l1_OperSt; + description "Operational Physical Port Enable State"; + } + leaf backplaneMac { + config "false"; + type address_Mac; + description "Port Backplane MAC"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router MAC"; + } + + // port Tx type + leaf txT { + config "false"; + + type l1_TxT; + description "Port Transmit Type"; + } + leaf lastLinkStChg { + config "false"; + type union { + type string; + type uint64; + } + description "Last Link State Change"; + } + leaf portCfgWaitFlags { + config "false"; + type uint32; + description "Port Config Wait Flags"; + } + leaf accessVlan { + config "false"; + type string; + description "VLAN port access state"; + } + leaf nativeVlan { + config "false"; + type string; + description "Port Native Vlan"; + } + leaf cfgNativeVlan { + config "false"; + type string; + description "Native VLAN port configuration"; + } + leaf cfgAccessVlan { + config "false"; + type string; + description "VLAN port configuration access"; + } + leaf primaryVlan { + config "false"; + type string; + description "Port Primary-vlan"; + } + + // port oper bitset + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Port Oper Bitset"; + } + + // vdc id + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Vdc Id"; + } + leaf resetCtr { + config "false"; + type uint32; + description "Reset Counter"; + } + leaf media { + config "false"; + type uint32; + description "Port Media"; + } + leaf encap { + config "false"; + type uint32; + description "Port Encap"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // allowed vlans + leaf allowedVlans { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlans"; + } + + // operational vlans + leaf operVlans { + config "false"; + + type l2_VlanBitmap; + description "Operational Vlans"; + } + + // errored vlans + leaf errVlans { + config "false"; + + type l2_VlanBitmap; + description "Errored Vlans"; + } + + // trunk status + leaf operTrunkStatus { + config "false"; + + type ethpm_TrunkStatus; + description "Trunking Status"; + } + + // bundle index + leaf bundleIndex { + config "false"; + + type nw_IfId; + description "Interface Bundle Index - table for a particular output primitive"; + } + + // port oper mdix mode + leaf operMdix { + config "false"; + + type l1_Mdix; + description "Port Oper Mdix Mode"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + leaf errDisTimerRunning { + config "false"; + type boolean; + description "Error Disable Recovery Time Running"; + } + leaf bundleBupId { + config "false"; + type uint32; + description "Bundle Bringup Id"; + } + + // Operational Dce Mode + leaf operDceMode { + config "false"; + + type l1_DceMode; + description "Operational Dce Mode"; + } + + // interface type + leaf intfT { + config "false"; + + type l1_IntfT; + description "Interface Type"; + } + + // port diags type + leaf diags { + config "false"; + + type l1_DiagsT; + description "Port Diags Type"; + } + + // Operational port EEE state + leaf operEEEState { + config "false"; + + type l1_EEEState; + description "Operational Port EEE State"; + } + leaf operEEETxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Tx Time"; + } + leaf operEEERxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Rx Time"; + } + + // port user config flags + leaf userCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + leaf numOfSI { + config "false"; + type uint32; + description "Number of Sub-interfaces"; + } + leaf gport { + config "false"; + type uint32; + description "gport"; + } + + // configured sub-interface ids + leaf siList { + config "false"; + + type ethpm_SiBitmap; + description "Configured Sub-interface Ids"; + } + leaf dynamicVlan { + config "false"; + type boolean; + description "Operational port Dynamic VLAN from dot1x"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + // Liked from l1:EthIf:usage + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage"; + } + + // This is the class for regualr fcot types. + container fcot-items { + + uses ethpm_Fcot-group; + description "Fcot"; + } + + // This is the class for X2 fcot types. + container fcotx2-items { + + uses ethpm_FcotX2-group; + description "X2 Fcot"; + } + + // This is the class for DD fcot types. + container fcotdd-items { + + uses ethpm_FcotDD-group; + description "DD Fcot"; + } + + container portcap-items { + + uses ethpm_PortCap-group; + description "Port Capability"; + } + } + + grouping ethpm_Fcot-group { + description "Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrId { + config "false"; + type uint8; + description "Transceiver ID"; + } + leaf xcvrExtId { + config "false"; + type uint8; + description "Transceiver Extended ID"; + } + leaf connectType { + config "false"; + type uint8; + description "Connector Type"; + } + + // Xcvr code field + leaf xcvrCode { + config "false"; + + type ethpm_SfpXcvrCodeBytes; + description "Transceiver Code"; + } + leaf encoding { + config "false"; + type uint8; + description "Encoding"; + } + leaf brIn100MHz { + config "false"; + type uint8; + description "Baud Rate"; + } + leaf baseResvd1 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + leaf distInKmFor9u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn100mFor9u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn10mFor50u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn10mFor60u { + config "false"; + type uint8; + description "Distance"; + } + leaf distIn1mForCu { + config "false"; + type uint8; + description "Distance"; + } + leaf baseResvd2 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + leaf vendorName { + config "false"; + type string; + description "Vendor Name"; + } + leaf baseResvd3 { + config "false"; + type uint8; + description "Base Reserved Field"; + } + + // IEEE vendor Id + leaf vendorId { + config "false"; + + type ethpm_SfpVendorIdBytes; + description "Vendor ID"; + } + leaf vendorPn { + config "false"; + type string; + description "Vendor Part Number"; + } + leaf vendorRev { + config "false"; + type string; + description "Vendor Revision"; + } + + // Reserved field 4 + leaf baseResvd4 { + config "false"; + + type ethpm_SfpReserved4Array; + description "Base Reserved Field"; + } + leaf ccid { + config "false"; + type uint8; + description "CCID"; + } + + // Extended option + leaf extOption { + config "false"; + + type ethpm_SfpExtendedOptionBytes; + description "Extended Option"; + } + leaf brMaxMargin { + config "false"; + type uint8; + description "Baud Rate Maximum Margin"; + } + leaf brMinMargin { + config "false"; + type uint8; + description "Baud Rate Minimum Margin"; + } + leaf vendorSn { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + leaf diagMonType { + config "false"; + type uint8; + } + leaf enhOption { + config "false"; + type uint8; + } + leaf sff8472Compl { + config "false"; + type uint8; + } + leaf ccex { + config "false"; + type uint8; + } + + // Vendor data + leaf vendorData { + config "false"; + + type ethpm_X2VendorDataBytes; + description "TBD"; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + + // Transceiver DOM sensor. + container lane-items { + list FcotSensor-list { + config "false"; + key "laneId sensorId"; + + uses eqpt_FcotSensor-group; + description "The transceiver DOM sensor information list"; + } + description "The transceiver DOM sensor information"; + } + + // Transceiver DOM Statistics + container domstats-items { + + uses eqpt_FcotDomStats-group; + description "DOM statistics"; + } + } + + grouping eqpt_FcotSensor-group { + description "The transceiver DOM sensor information"; + leaf laneId { + config "false"; + type uint16; + description "The transceiver LANE identifier"; + } + + // Fcot DOM Lane type + leaf laneType { + config "false"; + + type eqpt_fcotDomLane; + description "The transceiver LANE type"; + } + leaf sensorId { + config "false"; + type uint16; + description "The transceiver sensor identifier"; + } + leaf description { + config "false"; + type string; + description "The transceiver sensor description"; + } + leaf unit { + config "false"; + type string; + description "The transceiver sensor unit"; + } + leaf value { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor current value"; + } + leaf highAlarm { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor high alarm threshold"; + } + leaf highWarning { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor high warning threshold"; + } + leaf lowAlarm { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor low alarm threshold"; + } + leaf lowWarning { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor low warning threshold"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor max warning threshold"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor min warning threshold"; + } + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor avg warning threshold"; + } + leaf instant { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "The transceiver sensor instant warning threshold"; + } + + // alert + leaf alert { + config "false"; + + type eqpt_fcotDomAlert; + description "The transceiver sensor alert"; + } + } + + grouping eqpt_FcotDomStats-group { + description "DOM statistics"; + leaf numLanes { + config "false"; + type uint16; + description "Number of Network Lanes"; + } + + // Transceiver DOM Network lane + container lane-items { + list FcotLane-list { + config "false"; + key "laneId"; + + uses eqpt_FcotLane-group; + description "The transceiver DOM lane information list"; + } + description "The transceiver DOM lane information"; + } + } + + grouping eqpt_FcotLane-group { + description "The transceiver DOM lane information"; + leaf laneId { + config "false"; + type uint16; + description "The transceiver LANE identifier"; + } + leaf description { + config "false"; + type string; + description "The transceiver LANE description"; + } + leaf transmitFaultCount { + config "false"; + type uint64; + description "Transmit Fault Counter"; + } + } + + grouping ethpm_FcotX2-group { + description "X2 Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrType { + config "false"; + type uint8; + } + leaf connectType { + config "false"; + type uint8; + } + leaf bitEncoding { + config "false"; + type uint8; + } + + // Bit rate (Mbps) + leaf bitRateMbps { + config "false"; + + type ethpm_X2BitRateBytes; + description "TBD"; + } + leaf protocolType { + config "false"; + type uint8; + } + + // 10G eth code + leaf xgEthCode { + config "false"; + + type ethpm_X2XgEthCodeBytes; + description "TBD"; + } + + // Sonet SDH code + leaf sonetSdhCode { + config "false"; + + type ethpm_X2SonetSdhCodeBytes; + description "TBD"; + } + + // 10G fc code + leaf xgFcCode { + config "false"; + + type ethpm_X2XbFcCodeBytes; + description "TBD"; + } + + // Range + leaf range { + config "false"; + + type ethpm_X2RangeBytes; + description "TBD"; + } + + // Fibre type + leaf fibreType { + config "false"; + + type ethpm_X2FibreTypeBytes; + description "TBD"; + } + + // Wavelength channel 0 + leaf waveLenCh0 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 1 + leaf waveLenCh1 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 2 + leaf waveLenCh2 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Wavelength channel 3 + leaf waveLenCh3 { + config "false"; + + type ethpm_X2WavelengthChannelBytes; + description "TBD"; + } + + // Package Oui + leaf packageOui { + config "false"; + + type ethpm_X2PackageOuiBytes; + description "TBD"; + } + leaf vendorName { + config "false"; + type string; + } + leaf vendorPn { + config "false"; + type string; + } + leaf vendorRev { + config "false"; + type string; + } + leaf vendorSerNo { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + + // Lot code + leaf lotCode { + config "false"; + + type ethpm_X2LotCodeBytes; + description "TBD"; + } + leaf fiveVStressEnv { + config "false"; + type uint8; + } + leaf threeThreeVStressEnv { + config "false"; + type uint8; + } + leaf apsStressEnv { + config "false"; + type uint8; + } + leaf normalApsVolt { + config "false"; + type uint8; + } + leaf diagOptMonCap { + config "false"; + type uint8; + } + leaf lowPwrStartupCap { + config "false"; + type uint8; + } + leaf reserved { + config "false"; + type uint8; + } + leaf checksum { + config "false"; + type uint8; + } + leaf ciscoPid { + config "false"; + type string; + } + leaf ciscoVid { + config "false"; + type string; + } + leaf ciscoSN { + config "false"; + type string; + } + leaf ciscoPN { + config "false"; + type string; + } + leaf ciscoRev { + config "false"; + type string; + } + + // Extended vendor specific info + leaf extVendorSpecific { + config "false"; + + type ethpm_X2ExtendedVendorSpecificInfoBytes; + description "TBD"; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + } + + grouping ethpm_FcotDD-group { + description "DD Fcot"; + leaf partNumber { + config "false"; + type string; + description "Part Number"; + } + leaf versionId { + config "false"; + type string; + description "Version ID"; + } + leaf description { + config "false"; + type string; + description "Description"; + } + leaf isFcotPresent { + config "false"; + type boolean; + description "Presence Status"; + } + + // Fcot state + leaf state { + config "false"; + + type ethpm_FcotState; + description "State"; + } + + // Fcot flags + leaf flags { + config "false"; + + type ethpm_FcotFlags; + description "Flags"; + } + + // Fcot type + leaf type { + config "false"; + + type ethpm_FcotType; + description "Type"; + } + leaf typeName { + config "false"; + type string; + description "Type Name"; + } + leaf eid { + config "false"; + type string; + description "Cisco EID"; + } + leaf xcvrType { + config "false"; + type uint8; + } + leaf verId { + config "false"; + type uint8; + } + leaf modAdvCode { + config "false"; + type uint8; + } + leaf vendorName { + config "false"; + type string; + } + leaf vendorPn { + config "false"; + type string; + } + leaf vendorRev { + config "false"; + type string; + } + leaf vendorSerNo { + config "false"; + type string; + } + leaf dateCode { + config "false"; + type string; + } + + // Lot code + leaf lotCode { + config "false"; + + type ethpm_X2LotCodeBytes; + description "TBD"; + } + leaf connectType { + config "false"; + type uint8; + } + leaf diagOptMonCap { + config "false"; + type uint8; + } + leaf checksum { + config "false"; + type uint8; + } + leaf ciscoPid { + config "false"; + type string; + } + leaf ciscoVid { + config "false"; + type string; + } + leaf ciscoSN { + config "false"; + type string; + } + leaf ciscoPN { + config "false"; + type string; + } + leaf ciscoRev { + config "false"; + type string; + } + leaf maxSpeed { + config "false"; + type uint32; + } + leaf minSpeed { + config "false"; + type uint32; + } + leaf fcotNum { + config "false"; + type uint8; + } + leaf fcotType { + config "false"; + type uint8; + } + leaf fCTxType { + config "false"; + type uint8; + } + leaf apSel1 { + config "false"; + type uint32; + } + leaf apSel2 { + config "false"; + type uint32; + } + leaf apSel3 { + config "false"; + type uint32; + } + leaf apSel4 { + config "false"; + type uint32; + } + leaf apSel5 { + config "false"; + type uint32; + } + leaf apSel6 { + config "false"; + type uint32; + } + leaf apSel7 { + config "false"; + type uint32; + } + leaf apSel8 { + config "false"; + type uint32; + } + + // Transceiver DOM sensor. + container lane-items { + list FcotSensor-list { + config "false"; + key "laneId sensorId"; + + uses eqpt_FcotSensor-group; + description "The transceiver DOM sensor information list"; + } + description "The transceiver DOM sensor information"; + } + } + + grouping ethpm_PortCap-group { + description "Port Capability"; + + // If-index + leaf id { + config "false"; + + type nw_IfId; + description "Port Identifier"; + } + + // Speed bitmask + leaf speed { + config "false"; + + type ethpm_capSpeed; + description "Speed Bitmask"; + } + + // Duplex bitmask + leaf duplex { + config "false"; + + type ethpm_capDuplex; + description "Duplex Bitmask for simutaneous communication between interfaces"; + } + leaf trunkEncap { + config "false"; + type uint8; + description "Trunk Encap Bitmask"; + } + leaf channel { + config "false"; + type uint8; + description "Port-Channel Identifier"; + } + leaf suppression { + config "false"; + type uint8; + description "Suppression Bitmask"; + } + leaf rxFlowControl { + config "false"; + type uint8; + description "Port Rx Flow Control Boolean"; + } + leaf txFlowControl { + config "false"; + type uint8; + description "Port Tx Flow Control Boolean"; + } + leaf cosRewrite { + config "false"; + type uint8; + description "Cos Rewrite Boolean"; + } + leaf tosRewrite { + config "false"; + type uint8; + description "Tos Rewrite Boolean"; + } + leaf span { + config "false"; + type uint8; + description "Enables SPAN on port"; + } + leaf udld { + config "false"; + type uint8; + description "Udld Capable"; + } + leaf autoneg { + config "false"; + type uint8; + description "Enables Auto-negotiation on port"; + } + leaf linkDebounce { + config "false"; + type uint8; + description "Link Debounce Timer"; + } + leaf linkDebounceTime { + config "false"; + type uint8; + description "Configured Link Debounce Interval Time"; + } + leaf fcotCapable { + config "false"; + type uint8; + description "Enables the Fibre Channel Optical Transmitter(FCOT) on port"; + } + leaf rateMode { + config "false"; + type uint8; + description "Port Rate Mode"; + } + leaf mdix { + config "false"; + type uint8; + description "Medium Dependent Interface Crossover(MDIX) parameter enables/disables detection of crossover connection between devices"; + } + leaf portGroup { + config "false"; + type uint8; + description "Port Group Indentifier"; + } + leaf ctsCapable { + config "false"; + type uint8; + description "Enables Cisco TrustSec (CTS)"; + } + leaf qosRxPrio { + config "false"; + type uint8; + description "Qos Rx Priority Value"; + } + leaf qosRxQueue { + config "false"; + type uint8; + description "Qos Rx Queue Value"; + } + leaf qosRxThold { + config "false"; + type uint8; + description "Qos Rx Threshold Value"; + } + leaf qosTxPrio { + config "false"; + type uint8; + description "Qos Tx Prority Value"; + } + leaf qosTxQueue { + config "false"; + type uint8; + description "Qos Tx Queue Value"; + } + leaf qosTxThold { + config "false"; + type uint8; + description "Qos Tx Threshold Value"; + } + + // Model + leaf model { + config "false"; + + type ethpm_ModelList; + description "Port Model Number"; + } + + // Type + leaf type { + config "false"; + + type ethpm_TypeList; + description "Type"; + } + + // Port-group members + leaf portGrpMbrs { + config "false"; + + type ethpm_PortGroupBitmap; + description "Port-group Members"; + } + leaf protoSupport { + config "false"; + type uint32; + description "Protocol Support"; + } + leaf portCap { + config "false"; + type uint32; + description "Port Capability Flags"; + } + leaf eeeCapVal { + config "false"; + type uint16; + description "Energy Efficient Ethernet(EEE) Capability Value"; + } + + // EEE 10G wake times + leaf eeeWakeTimes10g { + config "false"; + + type ethpm_EeeWakeTimesList; + description "EEE 10G Wake Times"; + } + leaf eeeFlapFlags { + config "false"; + type uint16; + description "EEE Flap Flags"; + } + } + + grouping ethpm_HwIfDetails-group { + description "Interface Hardware Details"; + leaf slice { + config "false"; + type uint32; + description "Interface Slice"; + } + leaf sPort { + config "false"; + type uint32; + description "Interface Source Port"; + } + leaf vif { + config "false"; + type uint32; + description "Interface VIF"; + } + } + + grouping pc_AggrMbrIf-group { + description "Aggregated Member Interface"; + + // Operational state + leaf operSt { + config "false"; + + type pc_OperSt; + description "Operational State"; + } + + // Channeling status + leaf channelingSt { + config "false"; + + type pc_ChannelingSt; + description "Channeling Status"; + } + + // Summarized operational state + leaf summOperSt { + config "false"; + + type pc_SummOperSt; + description "Summarized Oper State"; + } + + // Member up time + leaf uptime { + config "false"; + + type pc_Time; + description "Member Up Time"; + } + + // Member port flags + leaf flags { + config "false"; + + type pc_Flags; + description "Member Port Flags"; + } + + // Bundle port number + leaf bdlPortNum { + config "false"; + + type pc_BdlPortNum; + description "Bundle Port Number"; + } + + // LTL programmed + leaf ltlProgrammed { + config "false"; + + type pc_LtlProgrammed; + description "LTL Programmed"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping nvo_MultisiteIfTracking-group { + description "Tracking for Multisite DCI and Fabric Interfaces."; + + leaf tracking { + + type nvo_MultisiteTrackingT; + description "Configure EVPN multisite tracking for DCI/Fabric interface."; + } + } + + grouping pc_AggrIf-group { + description "Aggregated Interface"; + + // Port channel id + leaf pcId { + + type pc_PcId; + description "Port Channel Id"; + } + + // Channel mode + leaf pcMode { + + type pc_Mode; + description "Aggregated Interface Protocol Channel Mode"; + } + leaf suspIndividual { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + description "Suspend Individual Port"; + } + leaf gracefulConv { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "enable"; + description "Graceful Convergence"; + } + leaf loadDefer { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Load Defer Member Ports"; + } + leaf lacpDelayMode { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Configuring LACP delay mode"; + } + leaf lacpVpcConvergence { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "LACP vpc convergence"; + } + + // minimum links @@@ MinLinks in the port channel + leaf minLinks { + + type pc_MinLinks; + description "Minimum Links"; + } + + // maximum links @@@ MaxLinks in the port channel + leaf maxLinks { + + type pc_MaxLinks; + description "Maximum Links"; + } + + // Hash distribution configured - adaptive/fixed + leaf hashDist { + + type pc_HashDist; + description "Hash Distribution Configured - Adaptive/fixed"; + } + + // Interface ordinal + leaf iod { + config "false"; + + type pc_Iod; + description "Interface Ordinal"; + } + + // Operational mode + leaf operChannelMode { + config "false"; + + type pc_Mode; + description "Operational Mode"; + } + + // Last status - successful/failed + leaf lastSt { + config "false"; + + type pc_LastSt; + description "Last Status - Successful/failed"; + } + leaf lastStCause { + config "false"; + type string; + description "Last Status Cause"; + } + + // Time when last status was set + leaf lastTime { + config "false"; + + type pc_Time; + description "Time when Last Status was Set"; + } + + // Time of port-channel creation + leaf createTime { + config "false"; + + type pc_Time; + description "Time of Port-channel Creation"; + } + + // First operational port + leaf fop { + config "false"; + + type nw_IfId; + description "First Operational Port"; + } + + // Time of last member addition + leaf lastBundleTime { + config "false"; + + type pc_Time; + description "Time of Last Member Addition"; + } + + // Last member added + leaf lastBundleMbr { + config "false"; + + type nw_IfId; + description "Last Member Added"; + } + + // Time of last member removal + leaf lastUnbundleTime { + config "false"; + + type pc_Time; + description "Time of Last Member Removal"; + } + + // Last member removed + leaf lastUnbundleMbr { + config "false"; + + type nw_IfId; + description "Last Member Removed"; + } + + // port-channel suspended due to min-links + leaf suspMinlinks { + config "false"; + + type pc_SuspMinlinks; + description "Port-channel Suspended Due to Min-links"; + } + + // PIXM-allocated LTL + leaf ltl { + config "false"; + + type pc_Ltl; + description "PIXM-allocated LTL"; + } + + // ELTM-allocated LIF + leaf lif { + config "false"; + + type pc_Lif; + description "ELTM-allocated LIF"; + } + + // Max possible active members + leaf maxActive { + config "false"; + + type pc_MaxActive; + description "Max Possible Active Members"; + } + + // Time when first non-fop port came up + leaf loadDeferStartTime { + config "false"; + + type pc_Time; + description "Time when First Non-fop Port Came Up"; + } + leaf isExplicit { + type boolean; + default "true"; + description "PC Created Explicitly"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + } + description "descr"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + + type l1_AdminSt; + description "Administrative Port State"; + } + + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + + type l1_Speed; + description "Administrative Port Speed"; + } + + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + + type l1_Duplex; + description "Duplex"; + } + + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; + } + + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + + type l1_Mtu; + description "Administrative port MTU"; + } + + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; + } + + // Administrative port mode @@@ Internally set by PE + leaf mode { + + type l1_Mode; + description "Administrative port mode"; + } + + // Administrative port layer @@@ Internally set by PE + // Default value handled in local MO type + leaf layer { + + // Type is a Local-MO-Defined-Type + type l1_Layer_AggrIf_layer; + description "Layer"; + } + + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; + } + + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + + type l1_Delay; + description "Administrative port delay time"; + } + + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + + type l1_LinkDebounce; + description "Administrative port link debounce interval"; + } + + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + } + + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; + } + + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + + type l1_Medium; + description "Administrative port medium type"; + } + + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + + type l1_InheritBw; + description "Administrative port inherit bandwidth"; + } + + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + + type l1_SpanMode; + description "Administrative port span mode"; + } + + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { + + type l1_LinkLog; + description "Administrative link logging enable"; + } + + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + + type l1_TrunkLog; + description "Administrative trunk logging enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; + } + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + + type l1_PortUsage; + description "Port Usage Type"; + } + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; + } + + // config access vlan + leaf accessVlan { + + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; + } + + // Controller Id + leaf controllerId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + + // config access vlan + leaf nativeVlan { + + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; + } + + // port user config flags + leaf userCfgdFlags { + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + + container ucos-items { + + uses ipqos_UntaggedCos-group; + description "untagged cos"; + } + + container priorflowctrl-items { + + uses ipqos_PriorFlowCtrl-group; + description "priority flow control"; + } + + container priorflowctrlwd-items { + + uses ipqos_PriorFlowCtrlWd-group; + description "priority flow control watchdog"; + } + + // EEE policy + container eeep-items { + + uses l1_EeeP-group; + description "EEE Policy"; + } + + // Storm control policy + container stormctrlp-items { + + uses l1_StormCtrlP-group; + description "Storm Control Policy"; + } + + // Load interval policy + container loadp-items { + + uses l1_LoadP-group; + description "Load Policy"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // Port-channel interface information holder + container aggrif-items { + + uses ethpm_AggrIf-group; + description "Aggregated Interface"; + } + + container hwifdetails-items { + + uses ethpm_HwIfDetails-group; + description "Interface Hardware Details"; + } + + container bundleInfo-items { + + uses pc_BundleInfo-group; + description "Aggregate Bundle Information"; + } + + container aggrExtd-items { + + uses pc_AggrIfExtended-group; + description "Aggregated Interface extended configs"; + } + + // Vlan Mapping policy + container vlanmapping-items { + + uses pc_VlanMapping-group; + description "Vlan Mapping Table"; + } + + // BndlMbrIf class + container bndlmbrif-items { + list BndlMbrIf-list { + config "false"; + key "id"; + + uses pc_BndlMbrIf-group; + description "Bundle Member Interface list"; + } + description "Bundle Member Interface"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; + + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; + } + + container rtfexBndlGrpToAggrIf-items { + + uses infra_RtFexBndlGrpToAggrIf_target-group; + } + + container rtaccBndlGrpToAggrIf-items { + + uses infra_RtAccBndlGrpToAggrIf_target-group; + } + + container rtextConf-items { + + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; + } + + container rtbrConf-items { + + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; + } + + container rtvpcConf-items { + + uses vpc_RtVpcConf_target-group; + description "Port Channel Attachment"; + } + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } + } + + container rsmbrIfs-items { + + list RsMbrIfs-list { + key "tDn"; + + uses pc_RsMbrIfs_source-group; + } + } + + container rslacpPolCons-items { + + uses pc_RsLacpPolCons_source-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rtphysRtdConf-items { + + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; + } + + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; + + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; + } + + container dbgIfIn-items { + + uses rmon_IfIn-group; + description "Interface Input Counters"; + } + + container dbgIfOut-items { + + uses rmon_IfOut-group; + description "Interface Output Counters"; + } + + container dbgIpIn-items { + + uses rmon_IpIn-group; + description "IPV4 Input Counters"; + } + + container dbgDot1d-items { + + uses rmon_Dot1d-group; + description "Dot1d Counters"; + } + + container dbgEtherStats-items { + + uses rmon_EtherStats-group; + description "Ethernet Statistic Counters"; + } + + container dbgDot3Stats-items { + + uses rmon_Dot3Stats-group; + description "Dot3 Statistics Counters"; + } + + container dbgIfHCIn-items { + + uses rmon_IfHCIn-group; + description "Interface HC Input Counters"; + } + + container dbgIfHCOut-items { + + uses rmon_IfHCOut-group; + description "Interface HC Output Counters"; + } + + container dbgIpv6IfStats-items { + + uses rmon_Ipv6IfStats-group; + description "Ipv6 Interface Statistics Counters"; + } + + container dbgIfStorm-items { + + uses rmon_IfStorm-group; + description "Interface Storm Drop Counters"; + } + } + + grouping ethpm_AggrIf-group { + description "Aggregated Interface"; + leaf numActivePorts { + config "false"; + type uint16; + description "Number of Active Ports"; + } + + // list of active members + leaf activeMbrs { + config "false"; + + type ethpm_ActiveMembersList; + description "List of Active Members"; + } + leaf numMbrUp { + config "false"; + type uint8; + description "Number of Up Members"; + } + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + + leaf operAutoNeg { + config "false"; + + type l1_AutoNeg; + description "negotiate auto"; + } + + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum transmission unit"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Administrative State"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + + // Operational port state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational port status syserror code + leaf operStQualCode { + config "false"; + + type l1_OperStQualCode; + description "Operational Port Status Syserror Code"; + } + + // Operational port err disable reason code + leaf operErrDisQual { + config "false"; + + type l1_OperErrDisQual; + description "Operational Port Error Disable Reason Code"; + } + + // Operational port speed + leaf operSpeed { + config "false"; + + type l1_Speed; + description "Operational Port Speed"; + } + + // Operational port mode + leaf operMode { + config "false"; + + type l1_Mode; + description "Operational Port Mode"; + } + + // Operational duplex + leaf operDuplex { + config "false"; + + type l1_Duplex; + description "Operational Duplex State"; + } + + // Operational port flow control + leaf operFlowCtrl { + config "false"; + + type l1_FlowControl; + description "Operational Port Flow Control"; + } + + // Operational phy port enable state + leaf operPhyEnSt { + config "false"; + + type l1_OperSt; + description "Operational Physical Port Enable State"; + } + leaf backplaneMac { + config "false"; + type address_Mac; + description "Port Backplane MAC"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Port Router MAC"; + } + + // port Tx type + leaf txT { + config "false"; + + type l1_TxT; + description "Port Transmit Type"; + } + leaf lastLinkStChg { + config "false"; + type union { + type string; + type uint64; + } + description "Last Link State Change"; + } + leaf portCfgWaitFlags { + config "false"; + type uint32; + description "Port Config Wait Flags"; + } + leaf accessVlan { + config "false"; + type string; + description "VLAN port access state"; + } + leaf nativeVlan { + config "false"; + type string; + description "Port Native Vlan"; + } + leaf cfgNativeVlan { + config "false"; + type string; + description "Native VLAN port configuration"; + } + leaf cfgAccessVlan { + config "false"; + type string; + description "VLAN port configuration access"; + } + leaf primaryVlan { + config "false"; + type string; + description "Port Primary-vlan"; + } + + // port oper bitset + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Port Oper Bitset"; + } + + // vdc id + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Vdc Id"; + } + leaf resetCtr { + config "false"; + type uint32; + description "Reset Counter"; + } + leaf media { + config "false"; + type uint32; + description "Port Media"; + } + leaf encap { + config "false"; + type uint32; + description "Port Encap"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // allowed vlans + leaf allowedVlans { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlans"; + } + + // operational vlans + leaf operVlans { + config "false"; + + type l2_VlanBitmap; + description "Operational Vlans"; + } + + // errored vlans + leaf errVlans { + config "false"; + + type l2_VlanBitmap; + description "Errored Vlans"; + } + + // trunk status + leaf operTrunkStatus { + config "false"; + + type ethpm_TrunkStatus; + description "Trunking Status"; + } + + // bundle index + leaf bundleIndex { + config "false"; + + type nw_IfId; + description "Interface Bundle Index - table for a particular output primitive"; + } + + // port oper mdix mode + leaf operMdix { + config "false"; + + type l1_Mdix; + description "Port Oper Mdix Mode"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + leaf errDisTimerRunning { + config "false"; + type boolean; + description "Error Disable Recovery Time Running"; + } + leaf bundleBupId { + config "false"; + type uint32; + description "Bundle Bringup Id"; + } + + // Operational Dce Mode + leaf operDceMode { + config "false"; + + type l1_DceMode; + description "Operational Dce Mode"; + } + + // interface type + leaf intfT { + config "false"; + + type l1_IntfT; + description "Interface Type"; + } + + // port diags type + leaf diags { + config "false"; + + type l1_DiagsT; + description "Port Diags Type"; + } + + // Operational port EEE state + leaf operEEEState { + config "false"; + + type l1_EEEState; + description "Operational Port EEE State"; + } + leaf operEEETxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Tx Time"; + } + leaf operEEERxWkTime { + config "false"; + type uint32; + description "Operational Port EEE Rx Time"; + } + + // port user config flags + leaf userCfgdFlags { + config "false"; + + type l1_userCfgdFlags; + description "Port User Config Flags"; + } + leaf numOfSI { + config "false"; + type uint32; + description "Number of Sub-interfaces"; + } + + // configured sub-interface ids + leaf siList { + config "false"; + + type ethpm_SiBitmap; + description "Configured Sub-interface Ids"; + } + leaf dynamicVlan { + config "false"; + type boolean; + description "Operational port Dynamic VLAN from dot1x"; + } + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + // Liked from l1:EthIf:usage + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage"; + } + + container portcap-items { + + uses ethpm_PortCap-group; + description "Port Capability"; + } + } + + grouping pc_BundleInfo-group { + description "Aggregate Bundle Information"; + + leaf operType { + config "false"; + + type pc_PortChannelType; + description "P ort channel type"; + } + + leaf operProtocol { + config "false"; + + type pc_PortChannelProtocol; + description "Port channel protocol"; + } + } + + grouping pc_AggrIfExtended-group { + description "Aggregated Interface extended configs"; + + leaf poType { + + type pc_PoType; + default "none"; + description "Port-channel type"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Port-type that the interface is facing + leaf portTypeFabric { + + type l1_PortTypeFabric; + description "Identifies if or not the port is a fabric-facing port"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf switchportBlock { + + type l1_SwitchportBlock; + description "Disable/enable switchport block on interface"; + } + + leaf switchportIsolated { + + type l1_SwitchportIsolated; + description "Switchport Isolated"; + } + + leaf autoExcludeVlans { + + type l1_AutoExcludeVlans; + description "Switchport Autostate Exclude vlans"; + } + + leaf switchportMacLearn { + + type l1_switchportMacLearn; + description "Disable/enable mac learning on interface"; + } + + leaf flowCtrl { + + type l1_FlowControl; + description "Disable/enable flowcontrol block on interface"; + } + + leaf stormCtrlBCastLevel { + + type l1_StormCtrlRate; + description "storm-control broadcast level"; + } + + leaf stormCtrlBCastPPS { + + type l1_StormCtrlPPS; + description "storm-control broadcast PPS"; + } + + leaf stormCtrlMCastLevel { + + type l1_StormCtrlRate; + description "storm-control multicast level"; + } + + leaf stormCtrlMCastPPS { + + type l1_StormCtrlPPS; + description "storm-control multicast PPS"; + } + + leaf stormCtrlUCastLevel { + + type l1_StormCtrlRate; + description "Storm control unicast level"; + } + + leaf stormCtrlUCastPPS { + + type l1_StormCtrlPPS; + description "Storm control unicast PPS"; + } + + leaf stormCtrlAct { + + type l1_StormCtrlAct; + description "Storm control action"; + } + + leaf bufferBoost { + + type l1_BufferBoost; + description "Disable/enable buffer boost on interface"; + } + + leaf switchportVirtualEthernetBridge { + + type l1_SwitchportVirtualEthernetBridge; + description "Disable/enable switchport virtual ethernet bridge on interface"; + } + + leaf allowMultiTag { + + type l1_AllowMultiTag; + description "Allow Multitag"; + } + leaf shutDownLan { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 0; + } + } + default "disable"; + description "Shut/Unshut all LAN VLANs on interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping pc_VlanMapping-group { + description "Vlan Mapping Table"; + leaf Enabled { + type boolean; + default "false"; + description "Vlan Mapping Enable"; + } + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective Qinq Vlans"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective Qinq Translate Vlan Id"; + } + leaf selectiveQinqAll { + type boolean; + description "Selective QinQ All Vlans"; + } + + container selqinqtable-items { + + uses pc_SelectiveQinqTable-group; + } + + // Vlan Translate Table policy + container vlantranslatetable-items { + + uses pc_VlanTranslateTable-group; + description "Vlan Translate Table"; + } + } + + grouping pc_SelectiveQinqTable-group { + container selqinq-items { + list SelectiveQinq-list { + key "selectiveQinqTranslateVlan"; + + uses pc_SelectiveQinq-group; + description "Vlan Mapping Table for Trunk Mode list"; + } + description "Vlan Mapping Table for Trunk Mode"; + } + } + + grouping pc_SelectiveQinq-group { + description "Vlan Mapping Table for Trunk Mode"; + + leaf selectiveQinqVlans { + + type l2_VlanBitmap; + description "Selective QinQ VLANs"; + } + + leaf selectiveQinqTranslateVlan { + + type l1_translatevlanid; + description "Selective QinQ Translate Vlan Id"; + } + } + + grouping pc_VlanTranslateTable-group { + description "Vlan Translate Table"; + + // Vlan Translate Table policy Vlan Translate Entry policy + container vlan-items { + list VlanTranslateEntry-list { + key "vlanid"; + + uses pc_VlanTranslateEntry-group; + description "Vlan Translate Entry list"; + } + description "Vlan Translate Entry"; + } + } + + grouping pc_VlanTranslateEntry-group { + description "Vlan Translate Entry"; + + leaf vlanid { + + type l1_translatevlanid; + description "Vlan Id"; + } + + leaf innervlanid { + + type l1_translatevlanid; + description "Inner Vlan Id"; + } + + leaf translatevlanid { + + type l1_translatevlanid; + description "Translate Vlan Id"; + } + } + + grouping pc_BndlMbrIf-group { + description "Bundle Member Interface"; + + leaf id { + config "false"; + + type nw_IfId; + description "Interface index"; + } + } + + grouping l3_RtdIf-group { + description "Routed Interface"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsphysRtdConf-items { + + uses l3_RsPhysRtdConf_source-group; + description "Physical Routed Attachment"; + } + } + + grouping l3_LbRtdIf-group { + description "Routed Loopback Interface"; + + // Administrative link logging enable + leaf linkLog { + + type l1_LinkLog; + description "Administrative Link Logging Enable"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // loopback interface information holder + container lbrtdif-items { + + uses ethpm_LbRtdIf-group; + description "Loopback Routed Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtoperSourceInterface-items { + + uses nvo_RtOperSourceInterface_target-group; + description "Operational Up/Down status of the Source Interface."; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsprotLbIf-items { + + uses l3_RsProtLbIf_source-group; + description "Protection Group"; + } + + container rslbIfToLocale-items { + + list RsLbIfToLocale-list { + key "tDn"; + + uses l3_RsLbIfToLocale_source-group; + description "Router Id list"; + } + description "Router Id"; + } + + container rslbIfToOutRef-items { + + list RsLbIfToOutRef-list { + key "tDn"; + + uses l3_RsLbIfToOutRef_source-group; + description "Router Id list"; + } + description "Router Id"; + } + } + + grouping ethpm_LbRtdIf-group { + description "Loopback Routed Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // Operational state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational MTU + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational MTU"; + } + + // Operational Description + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Operational Description"; + } + + // Operational state reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Current Error Index"; + } + + // Last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Last Seen Errors"; + } + + // Operational state flags + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Operational State Flags"; + } + } + + grouping l3_EncRtdIf-group { + description "Encapsulated Routed Interface"; + + // Interface Mtu Is it required, check with marketing? + leaf mtu { + + type l1_Mtu; + description "Interface Mtu"; + } + leaf mtuInherit { + type boolean; + default "true"; + } + + // Interface interface delay @@@ This is not exposed in IFC + leaf delay { + + type l1_Delay; + description "Interface Interface Delay"; + } + leaf snmpTrap { + type enumeration { + enum enable { + value 1; + } + enum disable { + value 2; + } + } + default "disable"; + description "Administrative Port Snmp Trap State"; + } + leaf encap { + type string; + description "Encap Vlan"; + } + + // Interface Bandwidth Is it required, check with marketing? + leaf bw { + + type l1_Bw; + description "Interface Bandwidth"; + } + + leaf linkLog { + + type l1_LinkLog; + description "Interface Link Logging Enable"; + } + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Interface Router Mac"; + } + leaf ifConnDn { + type string; + description "Interface Connectivity Dn"; + } + + // Interface link logging enable + leaf mediumType { + + type l1_Medium; + description "Interface Medium Type"; + } + + leaf routerMacIpv6Extract { + + type l1_RouterMacIpv6Extract; + default "disable"; + description "Disable/enable switchport ipv6 extract"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + // sub-interface information holder + container encrtdif-items { + + uses ethpm_EncRtdIf-group; + description "Encapsulated Routed Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + + container rsencPhysRtdConf-items { + + uses l3_RsEncPhysRtdConf_source-group; + description "Parent If"; + } + } + + grouping ethpm_EncRtdIf-group { + description "Encapsulated Routed Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf operRouterMac { + config "false"; + type address_Mac; + description "Operational Router MAC"; + } + leaf operEncap { + config "false"; + type uint16; + description "Encapsulation dot1Q"; + } + + leaf operDescr { + config "false"; + + type ethpm_operDescr; + description "Description"; + } + leaf fsmState { + config "false"; + type uint8; + description "Indicates FSM State"; + } + leaf iod { + config "false"; + type uint64; + description "Specifies IOD"; + } + + // Operational state + leaf operSt { + config "false"; + + type l1_OperSt; + description "Operational Port State"; + } + + // Operational state reason + leaf operStQual { + config "false"; + + type l1_OperStQual; + description "Operational State Failure Reason"; + } + + // Operational Mtu + leaf operMtu { + config "false"; + + type l1_Mtu; + description "Operational Maximum Transmission Unit"; + } + leaf currErrIndex { + config "false"; + type uint32; + description "Specifies the Current Error Index"; + } + + // Last seen errors + leaf lastErrors { + config "false"; + + type ethpm_LastErrorsList; + description "Holds most recently seen errors"; + } + + // Operational state flags + leaf operBitset { + config "false"; + + type ethpm_PortOperBitmap; + description "Specifies Operational State Flags"; + } + leaf siCfgFlags { + config "false"; + type uint32; + description "Specifies Sub-interface Configuration Flags"; + } + } + + grouping svi_If-group { + description "Routed Vlan Interface"; + + // VLAN ID associated with the SVI + leaf vlanId { + + type svi_VlanId; + description "VLAN ID Associated with the SVI"; + } + leaf mac { + type address_Mac; + description "MAC Address of the SVI"; + } + + // Medium type (P2P or Broadcast) @@@ default value: Not coming from IFC + leaf medium { + + type svi_Medium; + description "indicates the administrative port medium type"; + } + + // MTU of the SVI @@@ This comes from qos + leaf mtu { + + type svi_Mtu; + description "the administrative MTU port on the aggregated interface"; + } + leaf mtuInherit { + type boolean; + default "true"; + description "property for specifying if the MTU is inherited from global policy"; + } + + // Delay metric associated with the SVI + leaf delay { + + type svi_Delay; + description "specifies the administrative port delay"; + } + + // Bandwidth metric associated with the SVI + leaf bw { + + type svi_Bw; + description "specifies the administrative port bandwidth"; + } + + // Carrier Delay: hold period for which Carrier transition + // like L2 interfacing going down is ignored. + leaf carDel { + + type svi_CarrDelay; + description + "Carrier Delay: hold period for which Carrier transition + like L2 interfacing going down is ignored"; + } + + // Load-averaging interval 1 @@@ Infrastrure level policy + leaf loadIntvl1 { + + type svi_LoadIntvl1; + description "Load-averaging Interval 1"; + } + + // Load-averaging interval 2 + leaf loadIntvl2 { + + type svi_LoadIntvl2; + description "Load-averaging Interval 2"; + } + + // Load-averaging interval 3 + leaf loadIntvl3 { + + type svi_LoadIntvl3; + description "Load-averaging Interval 3"; + } + leaf inbMgmt { + type boolean; + description "An in-band management interface configuration"; + } + leaf autostate { + type boolean; + default "true"; + description "Autostate Enabled?"; + } + leaf snmpTrap { + type boolean; + default "true"; + description "SNMP Trap Link Status Enabled?"; + } + + // Operational state of the SVI + leaf operSt { + config "false"; + + type svi_OperSt; + description "the runtime state of the object or policy"; + } + + // Reason for operational state being down + leaf operStQual { + config "false"; + + type svi_OperStQual; + description "Reason for Operational State Being Down (status qualifier)"; + } + + // VLAN Type (e.g. private vlan) + leaf vlanT { + config "false"; + + type l2_DomType; + description "VLAN Type"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerIdBitmap; + description "Controller ID"; + } + leaf iod { + config "false"; + type uint32; + description "Interface Ordinal"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Tunnel Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + container multisiteiftracking-items { + + uses nvo_MultisiteIfTracking-group; + description "Tracking for Multisite DCI and Fabric Interfaces."; + } + + container svi-items { + + uses svi_OperSvi-group; + description "Interface"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping svi_OperSvi-group { + description "Interface"; + leaf ifIndex { + config "false"; + type uint32; + default "0"; + description "Interface index"; + } + leaf operDescr { + config "false"; + type string; + description "Operational State Summary"; + } + + leaf adminSt { + config "false"; + + type l1_AdminSt; + description "Operational State"; + } + + // Operational port status reason + leaf operStQual { + config "false"; + + type svi_OperStQual; + description "Operational State Qualifier"; + } + + // Operational Mtu + leaf operCarrierDelaySec { + config "false"; + + type svi_CarrDelay; + description "Operational Carrier Delay Seconds"; + } + + // Operational Mtu + leaf operCarrierDelayMsec { + config "false"; + + type svi_CarrDelay; + description "Operational Carrier Delay milliseconds"; + } + + // Operational Mtu + leaf operMtu { + config "false"; + + type svi_Mtu; + description "Operational Mtu"; + } + + leaf operBw { + config "false"; + + type svi_Bw; + description "operational Bandwidth"; + } + + leaf operDelay { + config "false"; + + type svi_Delay; + description "operational delay"; + } + leaf operAutoState { + config "false"; + type boolean; + description "Operational AutoState"; + } + leaf operMac { + config "false"; + type address_Mac; + description "Operational Router MAC"; + } + leaf iod { + config "false"; + type uint64; + description "Iod"; + } + + // Load interval 1 + leaf operLoadIntvl1 { + config "false"; + + type svi_LoadIntvl1; + description "Load Interval 1"; + } + + // Load interval 2 + leaf operLoadIntvl2 { + config "false"; + + type svi_LoadIntvl2; + description "Load Interval 2"; + } + + // Load interval 3 + leaf operLoadIntvl3 { + config "false"; + + type svi_LoadIntvl3; + description "Load Interval 3"; + } + leaf operLastChgSec { + config "false"; + type uint64; + description "Last change"; + } + leaf operLastChgUsec { + config "false"; + type uint64; + description "Last change"; + } + } + + grouping tunnelif_If-group { + description "Tunnel Interface"; + leaf tunSrcAddr { + type address_Ip; + description "Tunnel Source"; + } + + // Tunnel source interface + leaf tunSrcIntf { + + type nw_IfId; + description "Tunnel Source"; + } + + // Tunnel source direct + leaf tunSrcDirect { + + type tunnelif_TunnelSrcDirect; + description "Tunnel Source"; + } + leaf tunDestAddr { + type address_Ip; + description "Tunnel Destination"; + } + + // Tunnel mode + leaf tunMode { + + type tunnelif_TunnelMode; + description "Tunnel Mode"; + } + + // Tunnel VRF name + leaf tunVrf { + + type tunnelif_TunnelTransVRF; + description "Tunnel Transport VRF"; + } + + // Tunnel MTU + leaf tunMtu { + + type tunnelif_TunnelMtu; + description "Tunnel MTU"; + } + + // Tunnel PATH MTU Discovery + leaf tunPMTUD { + + type tunnelif_TunnelPMTUD; + description "Tunnel PMTU Discovery"; + } + + // Tunnel PMTU min-mtu + leaf tunminPMTU { + + type tunnelif_TunnelminPMTU; + description "Tunnel min PMTU"; + } + + // Tunnel PMTU ager + leaf tunPMTUage { + + type tunnelif_TunnelPMTUAge; + description "Tunnel PMTU age"; + } + + // Tunnel Interface Bandwidth + leaf tunBW { + + type tunnelif_TunnelBW; + description "Tunnel Bandwidth"; + } + + // Tunnel Interface TTL + leaf tunTTL { + + type tunnelif_TunnelTTL; + description "Tunnel TTL"; + } + + // Administrative port snmp trap state + leaf snmpTrapSt { + + type tunnelif_SnmpTrapSt; + description "Snmp Trap State"; + } + + // Tunnel operational state + leaf tunOperSt { + config "false"; + + type tunnelif_TunnelOperSt; + description "Tunnel Operational State"; + } + + // Tunnel operational state down reason + leaf tunOperStQual { + config "false"; + + type tunnelif_TunnelOperStQual; + description "Tunnel Operational State Qualifier"; + } + leaf lastStateChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + leaf tunDelInProg { + config "false"; + type boolean; + description "Tunnel Deletion in Progress"; + } + + // Tunnel Interface options + leaf tunIntfOptions { + config "false"; + + type tunnelif_TunnelOption; + description "Tunnel Interface Options"; + } + leaf tunIod { + config "false"; + type uint32; + description "Tunnel Interface Ordinal"; + } + leaf tunIfIndex { + config "false"; + type uint32; + description "Tunnel Interface Index"; + } + leaf tunIfPmtu { + config "false"; + type uint32; + description "Tunnel Interface PMTU"; + } + leaf lastCtrRstChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last Counters Reset Timestamp"; + } + leaf tunRxPackets { + config "false"; + type uint64; + description "Tunnel Rx Packet counter"; + } + leaf tunRxBytes { + config "false"; + type uint64; + description "Tunnel Rx Bytes counter"; + } + leaf tunTxPackets { + config "false"; + type uint64; + description "Tunnel Tx Packet counter"; + } + leaf tunTxBytes { + config "false"; + type uint64; + description "Tunnel Tx Bytes counter"; + } + leaf tunSrcIP { + config "false"; + type address_Ip; + description "Tunnel Source IP"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024 { + length "0..254"; + pattern "(.{1,254}).*|()"; + } + description "Tunnel Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + default "down"; + description "Admin State"; + } + + // This MO is temporary. Needs to be removed when + // "vrf member " is objectified + container vrf-items { + + uses l1_Vrf-group; + description "Vrf Name"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv4_Entity-group { + description "IPv4 Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per ipv4 instance information. There is + // only one instance of ipv4 running in the system today + container inst-items { + + uses ipv4_Inst-group; + description "IPv4 Instance"; + } + } + + grouping ipv4_Inst-group { + description "IPv4 Instance"; + + // ip source-route enabled by default + leaf sourceRoute { + + type nw_AdminSt; + description "Source-Route"; + } + + // ip access-list match local enabled by default + leaf accessListMatchLocal { + + type nw_AdminSt; + default "disabled"; + description "Access-List Match Local"; + } + leaf hardwareEcmpHashOffsetValue { + type uint16 { + range "0..63"; + } + default "0"; + description "hardware Ecmp HashOffset Value"; + } + + leaf hardwareEcmpHashOffsetConcat { + + type nw_AdminSt; + default "disabled"; + description "hardware Ecmp HashOffset Concatenation"; + } + + leaf hardwareEcmpHashPolynomial { + + type ip_HardwareEcmpHashPolynomialT; + description "hardware Ecmp Hash-Polynomial"; + } + + // logging level enabled by default + leaf loggingLevel { + + type arp_LoggingLevel; + description "Logging level"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + key "name"; + + uses ipv4_Dom-group; + description "IPv4 Domain list"; + } + description "IPv4 Domain"; + } + + // IPv4 Client information + // Ephemeral data + container client-items { + + // Ephemeral data + list Client-list { + config "false"; + key "clientName clientProtocol"; + + uses ipv4_Client-group; + description "IPv4 Client list"; + } + description "IPv4 Client"; + } + + // Load sharing mo + container iploadsharing-items { + + uses ipv4_IPLoadSharing-group; + description "IPv4 Load-sharing"; + } + + // Ephemeral data + container loadstat-items { + + uses ipv4_LoadSharingStat-group; + description "IPv4 load-sharing statistics"; + } + + // Ephemeral data + container iptrafficstat-items { + + uses ipv4_IpTrafficStat-group; + description "IP Software Processed Traffic Stat"; + } + + // Ephemeral data + container iptrafficerrstat-items { + + uses ipv4_IpTrafficErrStat-group; + description "IP Software Processed Traffic Stat"; + } + + // Ephemeral data + container icmptrafficstat-items { + + uses ipv4_ICMPTrafficStat-group; + description "ICMP Software Processed Traffic Stat"; + } + + // Ephemeral data + container rfc4293trafficstat-items { + + uses ipv4_RFC4293TrafficStat-group; + description "RFC 4293: IP Software Processed Traffic Stat"; + } + } + + grouping ipv4_Dom-group { + description "IPv4 Domain"; + + // ip auto-discard disabled by default + leaf autoDiscard { + + type nw_AdminSt; + default "disabled"; + description "Auto-Discard"; + } + + // ip icmp-error source-interface + leaf ipIcmpErrorsSrcIntf { + + type nw_IfId; + description "ICMP errors source-interface"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // ip route static bfd + container rtstaticbfd-items { + list RtStaticBfd-list { + key "intf nexthop"; + + uses ipv4_RtStaticBfd-group; + description "IP route static bfd list"; + } + description "IP route static bfd"; + } + + // This object holds ipv4 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; + + uses ipv4_If-group; + description "IPv4 Interface list"; + } + description "IPv4 Interface"; + } + container multicastrt-items { + list MulticastRoute-list { + key "prefix"; + + uses ipv4_MulticastRoute-group; + description "IPv4 Multicast Static Route list"; + } + description "IPv4 Multicast Static Route"; + } + + // Ephemeral data + container pstat-items { + + uses ipv4_ProcessStat-group; + description "IPv4 Process Stat"; + } + + // Static route definitions + container rt-items { + list Route-list { + key "prefix"; + + uses ipv4_Route-group; + description "IPv4 Static Route list"; + } + description "IPv4 Static Route"; + } + + // Ephemeral data + container routestat-items { + + uses ipv4_RouteStat-group; + description "IPv4 Static Route"; + } + + // This object holds ipv4 information that is operated at a + // domain level + // Ephemeral data + container ifbriefstats-items { + + // Ephemeral data + list VrfIfBriefStats-list { + config "false"; + key "interfaceId"; + + uses ipv4_VrfIfBriefStats-group; + description "IPv4 Vrf Level Brief Interface Statistics list"; + } + description "IPv4 Vrf Level Brief Interface Statistics"; + } + } + + grouping ipv4_RtStaticBfd-group { + description "IP route static bfd"; + + // interface value. + leaf intf { + + type nw_IfId; + description "Interface"; + } + leaf nexthop { + type address_Ip; + description "Nexthop Address"; + } + } + + grouping ipv4_If-group { + description "IPv4 Interface"; + leaf directedBroadcast { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } + } + default "disabled"; + description "IP directed broadcast"; + } + leaf acl { + type string { + length "0..63"; + } + description "IP directed broadcast ACL"; + } + + // IP forward. When interface types: eth, mgmt, + // or port channel. + leaf forward { + + type nw_AdminSt; + default "disabled"; + description "IP forward"; + } + + // IP unnumbered. When interface types: eth, tunnel + leaf unnumbered { + + type nw_IfId; + description "IP unnumbered"; + } + + // URPF info on interface + leaf urpf { + + type ip_UrpfT; + description "URPF Info"; + } + + leaf dropGlean { + + type nw_AdminSt; + default "disabled"; + description "ip drop-glean enabled/disabled"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_UnnumberedOperStQual; + description "Operational State Qualifier"; + } + + // Interface address + container addr-items { + list Addr-list { + key "addr"; + + uses ipv4_Addr-group; + description "Ipv4 Address list"; + } + description "Ipv4 Address"; + } + + container dampening-items { + + uses ipv4_Dampening-group; + description "IPv4 interface dampening"; + } + + // Ephemeral data + container dampeningdata-items { + + uses ipv4_DampeningData-group; + description "IPv4 interface dampening data"; + } + + // Ephemeral data + container trafficstat-items { + + uses ipv4_IfTrafficStat-group; + description "IPv4 Interface Traffic Stat"; + } + + // Ephemeral data + container stat-items { + + uses ipv4_IfStat-group; + description "IPv4 Interface Stat"; + } + + // Route map entries + container rpol-items { + + uses rtmap_RmapPolicy-group; + description "interface Route map Policy"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv4_Addr-group { + description "Ipv4 Address"; + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv4_Dampening-group { + description "IPv4 interface dampening"; + leaf halfLifePeriod { + type uint64 { + range "0..30"; + } + description "Half life period"; + } + leaf reuseThreshold { + type uint64 { + range "0..20000"; + } + description "Reuse threshold"; + } + leaf suppressThreshold { + type uint64 { + range "0..20000"; + } + description "Suppress threshold"; + } + leaf maxSuppress { + type uint64 { + range "0..255"; + } + description "Maximum suppress time"; + } + + leaf restartEnabled { + + type nw_AdminSt; + description "Restart enabled"; + } + leaf restartPenalty { + type uint64 { + range "0..20000"; + } + description "Restart penalty"; + } + } + + grouping ipv4_DampeningData-group { + description "IPv4 interface dampening data"; + + // Ephemeral data + leaf flapCount { + config "false"; + type uint64; + description "Flap count"; + } + + // Ephemeral data + leaf penalty { + config "false"; + type uint64; + description "Penalty accumulated"; + } + + // Ephemeral data + leaf suppressed { + config "false"; + type uint64; + description "Is interface suppressed"; + } + + // Ephemeral data + leaf reuseTime { + config "false"; + type uint64; + description "Reuse time"; + } + + // Ephemeral data + leaf halfLifePeriod { + config "false"; + type uint64; + description "Half life period"; + } + + // Ephemeral data + leaf reuseThreshold { + config "false"; + type uint64; + description "Reuse threshold"; + } + + // Ephemeral data + leaf suppressThreshold { + config "false"; + type uint64; + description "Suppress threshold"; + } + + // Ephemeral data + leaf maxSuppress { + config "false"; + type uint64; + description "Max suppress"; + } + + // Ephemeral data + leaf maxPenalty { + config "false"; + type uint64; + description "Maximum penalty"; + } + + // Ephemeral data + leaf restartPenalty { + config "false"; + type uint64; + description "Restart penalty"; + } + } + + grouping ipv4_IfTrafficStat-group { + description "IPv4 Interface Traffic Stat"; + + // Ephemeral data + leaf upktSent { + config "false"; + type uint64; + description "Unicast Packet sent"; + } + + // Ephemeral data + leaf upktRecv { + config "false"; + type uint64; + description "Unicast Packet Receive"; + } + + // Ephemeral data + leaf upktFwd { + config "false"; + type uint64; + description "Unicast Packet Forward"; + } + + // Ephemeral data + leaf upktOrig { + config "false"; + type uint64; + description "Unicast Packet Originated"; + } + + // Ephemeral data + leaf upktConsumed { + config "false"; + type uint64; + description "Unicast Packet Consumed"; + } + + // Ephemeral data + leaf ubyteSent { + config "false"; + type uint64; + description "Unicast Byte Sent"; + } + + // Ephemeral data + leaf ubyteRcv { + config "false"; + type uint64; + description "Unicast Byte Receive"; + } + + // Ephemeral data + leaf ubyteFwd { + config "false"; + type uint64; + description "Unicast Byte Forward"; + } + + // Ephemeral data + leaf ubyteOrig { + config "false"; + type uint64; + description "Unicast Byte Originated"; + } + + // Ephemeral data + leaf ubyteConsumed { + config "false"; + type uint64; + description "Unicast Byte Consumed"; + } + + // Ephemeral data + leaf mpktSent { + config "false"; + type uint64; + description "Multicast Packets Sent"; + } + + // Ephemeral data + leaf mpktRcv { + config "false"; + type uint64; + description "Multicast Packets Receive"; + } + + // Ephemeral data + leaf mpktFwd { + config "false"; + type uint64; + description "Multicast Packets Forward"; + } + + // Ephemeral data + leaf mpktOrig { + config "false"; + type uint64; + description "Multicast Packets Originated"; + } + + // Ephemeral data + leaf mpktConsumed { + config "false"; + type uint64; + description "Multicast Packets Consumed"; + } + + // Ephemeral data + leaf mbyteSent { + config "false"; + type uint64; + description "Multicast Byte Sent"; + } + + // Ephemeral data + leaf mbyteRcv { + config "false"; + type uint64; + description "Multicast Byte Receive"; + } + + // Ephemeral data + leaf mbyteFwd { + config "false"; + type uint64; + description "Multicast Byte Forward"; + } + + // Ephemeral data + leaf mbyteOrig { + config "false"; + type uint64; + description "Multicast Byte Originated"; + } + + // Ephemeral data + leaf mbyteConsumed { + config "false"; + type uint64; + description "Multicast Byte Consumed"; + } + + // Ephemeral data + leaf bpktSent { + config "false"; + type uint64; + description "Broadcast Packet Sent"; + } + + // Ephemeral data + leaf bpktRcv { + config "false"; + type uint64; + description "Broadcast Packet Receive"; + } + + // Ephemeral data + leaf bpktFwd { + config "false"; + type uint64; + description "Broadcast Packet Forward"; + } + + // Ephemeral data + leaf bpktOrig { + config "false"; + type uint64; + description "Broadcast Packet Originated"; + } + + // Ephemeral data + leaf bpktConsumed { + config "false"; + type uint64; + description "Broadcast Packet Consumed"; + } + + // Ephemeral data + leaf bbyteSent { + config "false"; + type uint64; + description "Broadcast Byte Sent"; + } + + // Ephemeral data + leaf bbyteRcv { + config "false"; + type uint64; + description "Broadcast Byte Receive"; + } + + // Ephemeral data + leaf bbyteFwd { + config "false"; + type uint64; + description "Broadcast Byte Forward"; + } + + // Ephemeral data + leaf bbyteOrig { + config "false"; + type uint64; + description "Broadcast Byte Originated"; + } + + // Ephemeral data + leaf bbyteConsumed { + config "false"; + type uint64; + description "Broadcast Byte Consumed"; + } + + // Ephemeral data + leaf lpktSent { + config "false"; + type uint64; + description "Labeled Packet Sent"; + } + + // Ephemeral data + leaf lpktRcv { + config "false"; + type uint64; + description "Labeled Packet Receive"; + } + + // Ephemeral data + leaf lpktFwd { + config "false"; + type uint64; + description "Labeled Packet Forward"; + } + + // Ephemeral data + leaf lpktOrig { + config "false"; + type uint64; + description "Labeled Packet Originated"; + } + + // Ephemeral data + leaf lpktConsumed { + config "false"; + type uint64; + description "Labeled Packet Consumed"; + } + + // Ephemeral data + leaf lbyteSent { + config "false"; + type uint64; + description "Labeled Byte Sent"; + } + + // Ephemeral data + leaf lbyteRcv { + config "false"; + type uint64; + description "Labeled Byte Receive"; + } + + // Ephemeral data + leaf lbyteFwd { + config "false"; + type uint64; + description "Labeled Byte Forward"; + } + + // Ephemeral data + leaf lbyteOrig { + config "false"; + type uint64; + description "Labeled Byte Originated"; + } + + // Ephemeral data + leaf lbyteConsumed { + config "false"; + type uint64; + description "Labeled Byte Consumed"; + } + } + + grouping ipv4_IfStat-group { + description "IPv4 Interface Stat"; + + // Ephemeral data + leaf iodValue { + config "false"; + type uint64; + description "Iod Value"; + } + + // Ephemeral data + leaf vrfNameOut { + config "false"; + type string; + description "Vrf Name Out"; + } + + // Ephemeral data + leaf protoState { + config "false"; + type string; + description "Protocol state"; + } + + // Ephemeral data + leaf linkState { + config "false"; + type string; + description "Link State"; + } + + // Ephemeral data + leaf adminState { + config "false"; + type string; + description "Admin State"; + } + + // Ephemeral data + leaf priAddr { + config "false"; + type address_Ipv4; + description "Primary Address"; + } + + // Ephemeral data + leaf priSubnet { + config "false"; + type string; + description "Primary Address Subnet"; + } + + // Ephemeral data + leaf priMasklen { + config "false"; + type uint8; + description "Primary Address Masklen"; + } + + // Ephemeral data + leaf priRoutePref { + config "false"; + type uint8; + description "Primary address route preference"; + } + + // Ephemeral data + leaf priTag { + config "false"; + type uint32; + description "Primary Address Tag"; + } + + // Ephemeral data + leaf secAddr { + config "false"; + type string; + description "Secondary IP Address"; + } + + // Ephemeral data + leaf secAddrSubnet { + config "false"; + type string; + description "Secondary Address Subnet"; + } + + // Ephemeral data + leaf secAddrMasklen { + config "false"; + type string; + description "Secondary Address Masklen"; + } + + // Ephemeral data + leaf secAddrRoutePref { + config "false"; + type string; + description "Secondary address route preference"; + } + + // Ephemeral data + leaf secAddrTag { + config "false"; + type string; + description "Secondary Address Tag"; + } + + // Ephemeral data + leaf numAddr { + config "false"; + type uint32; + description "Number of addresses"; + } + + // Ephemeral data + leaf vaddrClient { + config "false"; + type string; + description "Virtual address client"; + } + + // Ephemeral data + leaf vaddrPrefix { + config "false"; + type string; + description "Virtual address prefix"; + } + + // Ephemeral data + leaf vaddrSubnet { + config "false"; + type string; + description "Virtual address subnet"; + } + + // Ephemeral data + leaf vaddrMasklen { + config "false"; + type string; + description "Virtual address masklen"; + } + + // Ephemeral data + leaf numVaddr { + config "false"; + type uint64; + description "Number of virtual addresses"; + } + + // Ephemeral data + leaf unnumIntf { + config "false"; + type string; + description "Unnumbered IP Interface"; + } + leaf firstIod { + config "false"; + type uint64; + description "First iod"; + } + leaf unnumChildIntf { + config "false"; + type string; + description "Un-numbered child interface"; + } + + // Ephemeral data + leaf ipDisabled { + config "false"; + type string; + description "IP Disabled"; + } + + // Ephemeral data + leaf bcastAddr { + config "false"; + type address_Ipv4; + description "Broadcast Address"; + } + + // Ephemeral data + leaf mAddr { + config "false"; + type string; + description "IP Multicast Groups Address"; + } + + // Ephemeral data + leaf numMaddr { + config "false"; + type uint32; + description "Number of multicast addresses"; + } + + // Ephemeral data + leaf mtu { + config "false"; + type uint16; + description "MTU"; + } + + // Ephemeral data + leaf pref { + config "false"; + type uint8; + description "Preference"; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Tag"; + } + + // Ephemeral data + leaf proxyArp { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_proxyArp; + description "Proxy Arp"; + } + + // Ephemeral data + leaf localProxyArp { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_localProxyArp; + description "Local Proxy Arp"; + } + + // Ephemeral data + leaf mRouting { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_mRouting; + description "Multicast Routing"; + } + + // Ephemeral data + leaf icmpRedirect { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_icmpRedirect; + description "Icmp Redirect"; + } + + // Ephemeral data + leaf directBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_directBcast; + description "Directed Broadcast"; + } + + // Ephemeral data + leaf ipUnreach { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_ipUnreach; + description "IP Unreachable"; + } + + // Ephemeral data + leaf portUnreach { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_IfStat_portUnreach; + description "Port Unreachable"; + } + + // Ephemeral data + leaf urpfMode { + config "false"; + type string; + description "Unicast reverse path forwarding mode"; + } + + // Ephemeral data + leaf ipLoadSharing { + config "false"; + type string; + description "IP Load Sharing Type"; + } + + // Ephemeral data + leaf aclIn { + config "false"; + type string; + description "Acl In"; + } + + // Ephemeral data + leaf aclOut { + config "false"; + type string; + description "Acl Out"; + } + + // Ephemeral data + leaf statsLastReset { + config "false"; + type string; + description "Stats Last Reset"; + } + } + + grouping rtmap_RmapPolicy-group { + description "interface Route map Policy"; + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping ipv4_MulticastRoute-group { + description "IPv4 Multicast Static Route"; + leaf prefix { + type address_Ip; + description "Prefix"; + } + container nh-items { + list MulticastNexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv4_MulticastNexthop-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + } + + grouping ipv4_MulticastNexthop-group { + description "IPv4 Nexthop"; + + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf pref { + type uint8; + description "Route preference"; + } + } + + grouping ipv4_ProcessStat-group { + description "IPv4 Process Stat"; + + // Ephemeral data + leaf contextName { + config "false"; + type string; + description "Context Name"; + } + + // Ephemeral data + leaf contextId { + config "false"; + type uint64; + description "Context Id"; + } + + // Ephemeral data + leaf baseTId { + config "false"; + type uint64; + description "Base Table Id"; + } + + // Ephemeral data + leaf autoDisc { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoDisc; + description "Auto Discard"; + } + + // Ephemeral data + leaf autoDiscAdd { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoDiscAdd; + description "Auto Discard Added"; + } + + // Ephemeral data + leaf nullBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_nullBcast; + description "Null BroadCast"; + } + + // Ephemeral data + leaf autoPuntBcast { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_autoPuntBcast; + description "Auto Punt Broadcast"; + } + + // Ephemeral data + leaf staticDisc { + config "false"; + + // Type is a Local-MO-Defined-Type + type nw_AdminSt_ProcessStat_staticDisc; + description "Static Discard"; + } + + // Ephemeral data + leaf staticDefRoute { + config "false"; + type uint64; + description "Static Default Route Count"; + } + + // Ephemeral data + leaf ipUnreach { + config "false"; + type uint64; + description "IP Unreachable Count"; + } + + // Ephemeral data + leaf entryIod { + config "false"; + type string; + description "Entry IOD"; + } + + // Ephemeral data + leaf localAddr { + config "false"; + type string; + description "Local Address"; + } + } + + grouping ipv4_Route-group { + description "IPv4 Static Route"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf prefix { + type address_Ip; + description "Prefix"; + } + + // Route preference, the administrative distance assigned + // to this route + leaf pref { + + type rt_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Tag"; + } + + // Policy tag + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Route ctrl + leaf ctrl { + + type ip_RtControl; + description "Controls"; + } + + // Nexthops for the static route + container nh-items { + list Nexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv4_Nexthop-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + + // Temporary Nexthop stub created until the Spine proxy + // IP address is determined. + container nhs-items { + list NexthopStub-list { + config "false"; + key "nhIf nhAddr nhVrf"; + + uses ipv4_NexthopStub-group; + description "IPv4 Nexthop list"; + } + description "IPv4 Nexthop"; + } + } + + grouping ipv4_Nexthop-group { + description "IPv4 Nexthop"; + leaf rtname { + type string; + description "Next hop name"; + } + leaf tag { + type uint32; + description "tag value"; + } + leaf pref { + type uint8; + description "Route preference"; + } + leaf object { + type uint32; + description "Object to be tracked"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv4_NexthopStub-group { + description "IPv4 Nexthop"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + config "false"; + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv4_RouteStat-group { + description "IPv4 Static Route"; + + // Ephemeral data + leaf contextName { + config "false"; + type string; + description "Context Name"; + } + + // Ephemeral data + leaf contextId { + config "false"; + type uint32; + description "Context Id"; + } + + // Ephemeral data + leaf prefixMask { + config "false"; + type string; + description "Prefix Mask"; + } + + // Ephemeral data + leaf nhPrefixMask { + config "false"; + type string; + description "Next Hop Prefix Mask"; + } + + // Ephemeral data + leaf vrfInfo { + config "false"; + type string; + description "vrf Info"; + } + + // Ephemeral data + leaf intrInfo { + config "false"; + type string; + description "Interface Info"; + } + + // Ephemeral data + leaf uribStat { + config "false"; + type string; + description "Urib State"; + } + + // Ephemeral data + leaf nhopUribStat { + config "false"; + type string; + description "Next Hop Urib State"; + } + + // Ephemeral data + leaf trackObjNum { + config "false"; + type string; + description "Track object number"; + } + + // Ephemeral data + leaf trackObjState { + config "false"; + type string; + description "Track Object State"; + } + } + + grouping ipv4_VrfIfBriefStats-group { + description "IPv4 Vrf Level Brief Interface Statistics"; + + // Ephemeral data + leaf interfaceId { + config "false"; + + type nw_IfId; + description "Interface Name"; + } + + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "IPv4 Address"; + } + + // Ephemeral data + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Ephemeral data + leaf protSt { + config "false"; + + type nw_AdminSt; + description "Protocol State"; + } + + // Ephemeral data + leaf linkSt { + config "false"; + + type nw_AdminSt; + description "Link State"; + } + + // Ephemeral data + leaf secAddrList { + config "false"; + type string; + description "Seconday Address List"; + } + } + + grouping ipv4_Client-group { + description "IPv4 Client"; + + // Ephemeral data + leaf clientName { + config "false"; + type string; + description "Client Name"; + } + + // Ephemeral data + leaf clientUuid { + config "false"; + type int32; + description "Client uuid"; + } + + // Ephemeral data + leaf clientPid { + config "false"; + type int32; + description "Client Pid"; + } + + // Ephemeral data + leaf clientExtPid { + config "false"; + type uint32; + description "Client Extended Pid"; + } + + // Ephemeral data + leaf clientProtocol { + config "false"; + type uint8; + description "Client Protocol"; + } + + // Ephemeral data + leaf clientIndex { + config "false"; + type uint16; + description "Client Index"; + } + + // Ephemeral data + leaf clientContextId { + config "false"; + type uint32; + description "Client Context Id"; + } + + // client mts sap + // Ephemeral data + leaf clientMtsSap { + config "false"; + + type ipv4_ClientMtsSapType; + description "Client Data Mts Sap"; + } + + // client flag + // Ephemeral data + leaf clientFlag { + config "false"; + + type ipv4_ClientFlagType; + description "Client Flag"; + } + + // Ephemeral data + leaf clientDataMsgSuccess { + config "false"; + type uint64; + description "Client Data Msg Send Successful"; + } + + // Ephemeral data + leaf clientDataMsgFail { + config "false"; + type uint64; + description "Client Data Msg Send Failed"; + } + + // Ephemeral data + leaf clientRcvFunName { + config "false"; + type string; + description "Client Receive Function Name"; + } + } + + grouping ipv4_IPLoadSharing-group { + description "IPv4 Load-sharing"; + + // load share mode for 'ip load-sharing' cli, there are four modes + // - 1. {address source-destination} + // cli: ip load-sharing address source-destination gre-outer + // concatenation rotate 1 universal-id 2 + // - 2. {address destination port destination} + // cli: ip load-sharing address source-destination gre + // concatenation rotate 1 universal-id 2 + // - 3. {address source-destination gre-key} + // cli: ip load-sharing address destination port destination + // rotate 1 universal-id 2 + // - 4. {address source-destination port source-destination} + // cli: ip load-sharing address source-destination port + // source-destination concatenation + // - 5. {address source-destination gtpu-teid} + // cli: ip load-sharing address source-destination gtpu + // concatenation rotate 1 universal-id 2 + leaf loadShareMode { + + type ip_LoadShareFormat; + description "Load sharing mode"; + } + leaf universalID { + type uint32 { + range "0..4294967295"; + } + description "Universal-ID(Random seed)"; + } + + // whether gre-outer hash is enabled + leaf greOuterHash { + + type nw_AdminSt; + default "disabled"; + description "GRE Outer Hash"; + } + leaf udfOffset { + type uint16 { + range "0..127"; + } + description "source-destination udf"; + } + leaf udfLength { + type uint16 { + range "0..32"; + } + description "source-destination udf length"; + } + + // whether concatenation is enabled + leaf concatenation { + + type nw_AdminSt; + default "disabled"; + description "Concatenation"; + } + leaf rotate { + type uint16 { + range "1..63"; + } + default "32"; + description "Rotate"; + } + + // whether ecmploadsharing is enabled. + // Not supported on n9k today, defined for future use + leaf ecmpLoadSharing { + + type nw_AdminSt; + default "disabled"; + description "ECMP load sharing"; + } + } + + grouping ipv4_LoadSharingStat-group { + description "IPv4 load-sharing statistics"; + + // Ephemeral data + leaf univerIdRanSeed { + config "false"; + type uint32; + description "Universal Id Random Seed"; + } + + // Ephemeral data + leaf ipLoadshareOption { + config "false"; + type string; + description "IP Load Share Option"; + } + + // Ephemeral data + leaf hashFlag { + config "false"; + + type nw_AdminSt; + description "GRE-Outer Hash"; + } + + // Ephemeral data + leaf concat { + config "false"; + + type nw_AdminSt; + description "Concatenation"; + } + leaf rotate { + config "false"; + type uint16 { + range "1..63"; + } + default "32"; + description "Rotate"; + } + } + + grouping ipv4_IpTrafficStat-group { + description "IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf received { + config "false"; + type uint32; + description "Traffic Received"; + } + + // Ephemeral data + leaf sent { + config "false"; + type uint32; + description "Traffic Sent"; + } + + // Ephemeral data + leaf consumed { + config "false"; + type uint32; + description "Traffic Consumed"; + } + + // Ephemeral data + leaf fwdUcast { + config "false"; + type uint32; + description "Forwarded Unicast"; + } + + // Ephemeral data + leaf fwdMcast { + config "false"; + type uint32; + description "Forwarded Multicast"; + } + + // Ephemeral data + leaf fwdLabel { + config "false"; + type uint32; + description "Forwarded Label"; + } + + // Ephemeral data + leaf ingressMcecFwdPkts { + config "false"; + type uint32; + description "Ingress mcec forward"; + } + + // Ephemeral data + leaf optsEnd { + config "false"; + type uint32; + description "OPTS End"; + } + + // Ephemeral data + leaf optsNop { + config "false"; + type uint32; + description "OPTS Nop"; + } + + // Ephemeral data + leaf optsBsec { + config "false"; + type uint32; + description "OPTS Basic Security"; + } + + // Ephemeral data + leaf optsLsrr { + config "false"; + type uint32; + description "OPTS Loose Source Route"; + } + + // Ephemeral data + leaf optsTimestamp { + config "false"; + type uint32; + description "OPTS Timestamp"; + } + + // Ephemeral data + leaf optsEsec { + config "false"; + type uint32; + description "OPTS Extended Security"; + } + + // Ephemeral data + leaf optsRecordRoute { + config "false"; + type uint32; + description "OPTS Record Route"; + } + + // Ephemeral data + leaf optsStrsrcRoute { + config "false"; + type uint32; + description "OPTS Strict Source Route"; + } + + // Ephemeral data + leaf optsAlert { + config "false"; + type uint32; + description "OPTS Alert"; + } + + // Ephemeral data + leaf optsOther { + config "false"; + type uint32; + description "OPTS Other"; + } + + // Ephemeral data + leaf frag { + config "false"; + type uint32; + description "Fragments Received"; + } + + // Ephemeral data + leaf fragmented { + config "false"; + type uint32; + description "Fragments Sent"; + } + + // Ephemeral data + leaf outFrag { + config "false"; + type uint32; + description "Fragments Created"; + } + + // Ephemeral data + leaf fragDrop { + config "false"; + type uint32; + description "Fragments Dropped"; + } + + // Ephemeral data + leaf cantFrag { + config "false"; + type uint32; + description "Packets with Dont Fragment Bit"; + } + + // Ephemeral data + leaf reasm { + config "false"; + type uint32; + description "Packets Reassembled"; + } + + // Ephemeral data + leaf fragTO { + config "false"; + type uint32; + description "Fragments Timed Out"; + } + } + + grouping ipv4_IpTrafficErrStat-group { + description "IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf badCsum { + config "false"; + type uint32; + description "Error Bad Checksum"; + } + + // Ephemeral data + leaf tooSmall { + config "false"; + type uint32; + description "Error Packet Too Small"; + } + + // Ephemeral data + leaf badVer { + config "false"; + type uint32; + description "Error Bad Version"; + } + + // Ephemeral data + leaf badHLen { + config "false"; + type uint32; + description "Error Bad Header Length"; + } + + // Ephemeral data + leaf badLen { + config "false"; + type uint32; + description "Error Bad Packet Length"; + } + + // Ephemeral data + leaf badDest { + config "false"; + type uint32; + description "Error Bad Destination"; + } + + // Ephemeral data + leaf badTTL { + config "false"; + type uint32; + description "Error Bad TTL"; + } + + // Ephemeral data + leaf cantFwd { + config "false"; + type uint32; + description "Error Could Not Forward"; + } + + // Ephemeral data + leaf outDrop { + config "false"; + type uint32; + description "Error No Buffer Dropped"; + } + + // Ephemeral data + leaf badEncap { + config "false"; + type uint32; + description "Error Bad Encapsulation"; + } + + // Ephemeral data + leaf noRoute { + config "false"; + type uint32; + description "Eroor No route"; + } + + // Ephemeral data + leaf noProto { + config "false"; + type uint32; + description "Error Non-Existent Protocol"; + } + + // Ephemeral data + leaf badOptions { + config "false"; + type uint32; + description "Error Bad Options"; + } + + // Ephemeral data + leaf vinciMigPkts { + config "false"; + type uint32; + description "Vinci Migration Packet Count"; + } + + // Ephemeral data + leaf snoopSuccess { + config "false"; + type uint32; + description "Packets Snooped"; + } + + // Ephemeral data + leaf sviIodDown { + config "false"; + type uint32; + description "Packets On Down Svi"; + } + + // Ephemeral data + leaf restartPktDrop { + config "false"; + type uint32; + description "Restart Packet Drop Count"; + } + + // Ephemeral data + leaf mbufErrCount { + config "false"; + type uint32; + description "MBUF Pull Up Fail"; + } + + // Ephemeral data + leaf badCntxtIdDrop { + config "false"; + type uint32; + description "Bad Context Id Drop Count"; + } + + // Ephemeral data + leaf rpfDrop { + config "false"; + type uint32; + description "Rpf Drop Count"; + } + + // Ephemeral data + leaf badGwMacDrop { + config "false"; + type uint32; + description "Bad GW MAC Drop Count"; + } + + // Ephemeral data + leaf ipsOptionFail { + config "false"; + type uint32; + description "Ingress Option Processing Fail"; + } + + // Ephemeral data + leaf natInDrop { + config "false"; + type uint32; + description "NAT Inside Drop Count"; + } + + // Ephemeral data + leaf natOutDrop { + config "false"; + type uint32; + description "NAT Outside Drop Count"; + } + + // Ephemeral data + leaf ipsMfwdFail { + config "false"; + type uint32; + description "Ingress Mforward Failed"; + } + + // Ephemeral data + leaf ipsLispDrop { + config "false"; + type uint32; + description "Ingress Lisp Drop"; + } + + // Ephemeral data + leaf ipsLispDecapDrop { + config "false"; + type uint32; + description "Ingress Lips Decap Drop"; + } + + // Ephemeral data + leaf ipsLispEncapDrop { + config "false"; + type uint32; + description "Ingress Lisp Encap Drop"; + } + + // Ephemeral data + leaf ipsLispEncap { + config "false"; + type uint32; + description "Ingress Lisp Encap"; + } + + // Ephemeral data + leaf ipsMfwdCopyDrop { + config "false"; + type uint32; + description "Ingress Mfwd Copy Drop"; + } + + // Ephemeral data + leaf ipsRaReassDrop { + config "false"; + type uint32; + description "Ingress RA/Reass Drop"; + } + + // Ephemeral data + leaf ipsIcmpRedirProcDrop { + config "false"; + type uint32; + description "Ingress ICMP Redirect Processing Drop"; + } + + // Ephemeral data + leaf ipsIfmgrInitFail { + config "false"; + type uint32; + description "Ingress Ifmgr Init Drop"; + } + + // Ephemeral data + leaf ipsInvalidFilter { + config "false"; + type uint32; + description "Ingress Invalid Filter Drop"; + } + + // Ephemeral data + leaf ipsInvalidL2msg { + config "false"; + type uint32; + description "Ingress Invalid L2 Msg Drop"; + } + + // Ephemeral data + leaf aclIngressDrop { + config "false"; + type uint32; + description "ACL Filter Ingress Drops"; + } + + // Ephemeral data + leaf aclEgressDrop { + config "false"; + type uint32; + description "ACL Filter Egree Drop"; + } + + // Ephemeral data + leaf aclDirBcastDrop { + config "false"; + type uint32; + description "ACL Filter Directed Broadcsat Drop"; + } + } + + grouping ipv4_ICMPTrafficStat-group { + description "ICMP Software Processed Traffic Stat"; + + // Ephemeral data + leaf txRedir { + config "false"; + type uint32; + description "Transmission Redirect"; + } + + // Ephemeral data + leaf txUnreach { + config "false"; + type uint32; + description "Transmission Unreachable"; + } + + // Ephemeral data + leaf txEchoReq { + config "false"; + type uint32; + description "Transmission Echo Request"; + } + + // Ephemeral data + leaf txEchoReply { + config "false"; + type uint32; + description "Transmission Echo Reply"; + } + + // Ephemeral data + leaf txMaskReq { + config "false"; + type uint32; + description "Transmission Mask Request"; + } + + // Ephemeral data + leaf txMaskReply { + config "false"; + type uint32; + description "Transmission Mask Reply"; + } + + // Ephemeral data + leaf txInfoReq { + config "false"; + type uint32; + description "Transmission Info Request"; + } + + // Ephemeral data + leaf txInfoReply { + config "false"; + type uint32; + description "Transmission Info Reply"; + } + + // Ephemeral data + leaf txParamProb { + config "false"; + type uint32; + description "Transmission Parameter Problem"; + } + + // Ephemeral data + leaf txSrcQuench { + config "false"; + type uint32; + description "Transmission Source Quench"; + } + + // Ephemeral data + leaf txTstampReq { + config "false"; + type uint32; + description "Transmission Timestamp Request"; + } + + // Ephemeral data + leaf txTstampReply { + config "false"; + type uint32; + description "Transmission Timestamp Reply"; + } + + // Ephemeral data + leaf txTstampXceed { + config "false"; + type uint32; + description "Transmission Timestamp Exceeded"; + } + + // Ephemeral data + leaf txRtrSolicit { + config "false"; + type uint32; + description "Transmission Router Solicitation"; + } + + // Ephemeral data + leaf txRtrAdvert { + config "false"; + type uint32; + description "Transmission Router Advertisement"; + } + + // Ephemeral data + leaf outBadLen { + config "false"; + type uint32; + description "Output Bad Length Drop"; + } + + // Ephemeral data + leaf outEncapFail { + config "false"; + type uint32; + description "Output Encapsulation Fail Drop"; + } + + // Ephemeral data + leaf outXmitFail { + config "false"; + type uint32; + description "Output Xmit Fail Drop"; + } + + // Ephemeral data + leaf icmpOrigReq { + config "false"; + type uint32; + description "ICMP Originate Req"; + } + + // Ephemeral data + leaf redirOrigReq { + config "false"; + type uint32; + description "Redirected Originated Req"; + } + + // Ephemeral data + leaf outErr { + config "false"; + type uint32; + description "Orginate Deny Resource Fail"; + } + + // Ephemeral data + leaf oldShortIp { + config "false"; + type uint32; + description "Originate Deny Short Ip"; + } + + // Ephemeral data + leaf oldIcmp { + config "false"; + type uint32; + description "Originate Deny Icmp"; + } + + // Ephemeral data + leaf errorDrop { + config "false"; + type uint32; + description "Originatte Deny other error"; + } + + // Ephemeral data + leaf rxRedir { + config "false"; + type uint32; + description "Reception Redirect"; + } + + // Ephemeral data + leaf rxUnreach { + config "false"; + type uint32; + description "Reception Unreachable"; + } + + // Ephemeral data + leaf rxEchoReq { + config "false"; + type uint32; + description "Reception Echo Request"; + } + + // Ephemeral data + leaf rxEchoReply { + config "false"; + type uint32; + description "Reception Echo Reply"; + } + + // Ephemeral data + leaf rxMaskReq { + config "false"; + type uint32; + description "Reception Mask Request"; + } + + // Ephemeral data + leaf rxMaskReply { + config "false"; + type uint32; + description "Reception Mask Reply"; + } + + // Ephemeral data + leaf rxInfoReq { + config "false"; + type uint32; + description "Reception Info Request"; + } + + // Ephemeral data + leaf rxInfoReply { + config "false"; + type uint32; + description "Reception Info Reply"; + } + + // Ephemeral data + leaf rxParamProb { + config "false"; + type uint32; + description "Reception Parameter Problem"; + } + + // Ephemeral data + leaf rxSrcQuench { + config "false"; + type uint32; + description "Reception Source Quench"; + } + + // Ephemeral data + leaf rxTstampReq { + config "false"; + type uint32; + description "Reception Timsetamp Request"; + } + + // Ephemeral data + leaf rxTstampReply { + config "false"; + type uint32; + description "Reception Timestamp Reply"; + } + + // Ephemeral data + leaf rxTimeXceed { + config "false"; + type uint32; + description "Reception Time Exceeded"; + } + + // Ephemeral data + leaf rxRtrSolicit { + config "false"; + type uint32; + description "Reception Router Solicit"; + } + + // Ephemeral data + leaf rxRtrAdvert { + config "false"; + type uint32; + description "Reception Router Advertisement"; + } + + // Ephemeral data + leaf rxFormatError { + config "false"; + type uint32; + description "Reception Format Error"; + } + + // Ephemeral data + leaf rxCsumError { + config "false"; + type uint32; + description "Reception Checksum Error"; + } + + // Ephemeral data + leaf icmpLispProcessed { + config "false"; + type uint32; + description "ICMP Lisp Processed"; + } + + // Ephemeral data + leaf icmpNoClients { + config "false"; + type uint32; + description "ICMP No Clients"; + } + + // Ephemeral data + leaf icmpConsumed { + config "false"; + type uint32; + description "ICMP Consumed"; + } + + // Ephemeral data + leaf icmpReplies { + config "false"; + type uint32; + description "ICMP replies"; + } + + // Ephemeral data + leaf icmpReplyDropInvldAddr { + config "false"; + type uint32; + description "ICMP Replies Drop - Invalid Address"; + } + + // Ephemeral data + leaf icmpReplyDropInactAddr { + config "false"; + type uint32; + description "ICMP Replies Drop - Inactive Address"; + } + + // Ephemeral data + leaf statsLastReset { + config "false"; + type string; + description "Statistics last Rest"; + } + } + + grouping ipv4_RFC4293TrafficStat-group { + description "RFC 4293: IP Software Processed Traffic Stat"; + + // Ephemeral data + leaf inrcv { + config "false"; + type uint32; + description "Reception Packets Received"; + } + + // Ephemeral data + leaf inoctet { + config "false"; + type uint32; + description "Reception Bytes Received"; + } + + // Ephemeral data + leaf inhdrerr { + config "false"; + type uint32; + description "Reception Inhdrerrors"; + } + + // Ephemeral data + leaf innoroutes { + config "false"; + type uint32; + description "Reception Innoroutes"; + } + + // Ephemeral data + leaf inaddrerr { + config "false"; + type uint32; + description "Reception Inaddrerrors"; + } + + // Ephemeral data + leaf innoproto { + config "false"; + type uint32; + description "Reception Unknown Protos"; + } + + // Ephemeral data + leaf intruncated { + config "false"; + type uint32; + description "Reception Truncated Packets"; + } + + // Ephemeral data + leaf inforwdgrams { + config "false"; + type uint32; + description "Reception Inforwdgrams"; + } + + // Ephemeral data + leaf reasmreqds { + config "false"; + type uint32; + description "Reception Fragments Reassemble Requested"; + } + + // Ephemeral data + leaf reasmoks { + config "false"; + type uint32; + description "Reception Fragments Reassembled"; + } + + // Ephemeral data + leaf reasmfails { + config "false"; + type uint32; + description "Reception Fragments Dropped"; + } + + // Ephemeral data + leaf indiscards { + config "false"; + type uint32; + description "Reception Fragments Discard"; + } + + // Ephemeral data + leaf indelivers { + config "false"; + type uint32; + description "Reception Fragments Deliver"; + } + + // Ephemeral data + leaf inMcastPkts { + config "false"; + type uint32; + description "Reception Multicast Packets"; + } + + // Ephemeral data + leaf inMcastBytes { + config "false"; + type uint32; + description "Reception Multicast Bytes"; + } + + // Ephemeral data + leaf inBcastPkts { + config "false"; + type uint32; + description "Reception Broadcast Packets"; + } + + // Ephemeral data + leaf outRequest { + config "false"; + type uint32; + description "Transmission Requests"; + } + + // Ephemeral data + leaf outNoRoutes { + config "false"; + type uint32; + description "Transmission No Routes"; + } + + // Ephemeral data + leaf outForwdGrams { + config "false"; + type uint32; + description "Transmission Forward Stats"; + } + + // Ephemeral data + leaf outDiscards { + config "false"; + type uint32; + description "Transmission Fragments Discarded"; + } + + // Ephemeral data + leaf outFragReqds { + config "false"; + type uint32; + description "Transmission Fragments Requested"; + } + + // Ephemeral data + leaf outFragOks { + config "false"; + type uint32; + description "Transmission Fragments Ok"; + } + + // Ephemeral data + leaf outFragFails { + config "false"; + type uint32; + description "Transmission Fragments Failed"; + } + + // Ephemeral data + leaf outFragCreates { + config "false"; + type uint32; + description "Transmission Fragments Created"; + } + + // Ephemeral data + leaf outTransmits { + config "false"; + type uint32; + description "Transmission Packets Transmits"; + } + + // Ephemeral data + leaf outBytes { + config "false"; + type uint32; + description "Transmission Bytes Sent"; + } + + // Ephemeral data + leaf outMcastPkts { + config "false"; + type uint32; + description "Transmission Multicast Packets sent"; + } + + // Ephemeral data + leaf outMcastBytes { + config "false"; + type uint32; + description "Transmission Multicast Bytes sent"; + } + + // Ephemeral data + leaf outBcastPkts { + config "false"; + type uint32; + description "Transmission Broadcast Packets"; + } + + // Ephemeral data + leaf outBcastBytes { + config "false"; + type uint32; + description "Transmission Broadcast Bytes"; + } + } + + grouping ipv6_Entity-group { + description "IPv6 Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This objects hold per ipv6 instance information. There is + // only one instance of ipv6 running in the system today + container inst-items { + + uses ipv6_Inst-group; + description "IPv6 Instance"; + } + } + + grouping ipv6_Inst-group { + description "IPv6 Instance"; + + // ipv6 access-list match local + leaf accessListMatchLocal { + + type nw_AdminSt; + default "disabled"; + description "Access-List Match Local"; + } + + // static neighbor outside subnet + leaf staticNeighborOutsideSubnet { + + type nw_AdminSt; + default "disabled"; + description "Static Neighbor Outside Subnet "; + } + + // Queue 1 packet when triggered NS is sent + leaf queuePackets { + + type nw_AdminSt; + default "disabled"; + description "Queue-packets"; + } + + // Switch ND packets received on core ports + leaf switchPackets { + + type ip_SwitchPktTarget; + description "Switch-packets"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container mtustats-items { + + uses ipv6_IPv6MtuCacheStatGlobal-group; + description "IPv6 global MTU cache statistics"; + } + + // Objectification of IPv6 Client statistics + // Ephemeral data + container clientstats-items { + + // Ephemeral data + list IPv6Clients-list { + config "false"; + key "clientName clientProtocol"; + + uses ipv6_IPv6Clients-group; + description "Registered clients with IPv6 process list"; + } + description "Registered clients with IPv6 process"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + key "name"; + + uses ipv6_Dom-group; + description "IPV6 Domain list"; + } + description "IPV6 Domain"; + } + + // Objectification of IPv6 Fragments statistics + // Ephemeral data + container fragstats-items { + + // Ephemeral data + list IPv6Fragments-list { + config "false"; + key "srcAddr"; + + uses ipv6_IPv6Fragments-group; + description "IPv6 queued fragments list"; + } + description "IPv6 queued fragments"; + } + container logs-items { + list IPv6EventLogs-list { + key "eventType"; + + uses ipv6_IPv6EventLogs-group; + description "IPv6 Event History Logging list"; + } + description "IPv6 Event History Logging"; + } + + // Holds ipv6 global statistics + // Ephemeral data + container pktqstats-items { + + uses ipv6_IPv6InstStat-group; + description "IPv6 global instance statistics"; + } + + // Objectification of IPv6 neighbor statistics + // Ephemeral data + container ipv6stats-items { + + // Ephemeral data + list IPv6Stat-list { + config "false"; + key "ftmName"; + + uses ipv6_IPv6Stat-group; + description "IPv6 global statistics list"; + } + description "IPv6 global statistics"; + } + + // Objectification of IPv6 interface statistics + // Ephemeral data + container trafficstats-items { + + uses ipv6_IPv6TrafficStat-group; + description "IPv6 traffic statistics"; + } + } + + grouping ipv6_IPv6MtuCacheStatGlobal-group { + description "IPv6 global MTU cache statistics"; + + // Ephemeral data + leaf outstandingEntries { + config "false"; + type uint32; + description "Outstanding Entries"; + } + + // Ephemeral data + leaf expiredEntries { + config "false"; + type uint64; + description "Expired Entries"; + } + + // Ephemeral data + leaf purgedEntries { + config "false"; + type uint64; + description "Purged Entries"; + } + + // Ephemeral data + leaf internalErrors { + config "false"; + type uint64; + description "Internal Errors"; + } + + // Ephemeral data + leaf pktTooBig { + config "false"; + type uint64; + description "Packet-Too-Big Messages Received"; + } + + // Ephemeral data + leaf cacheMisses { + config "false"; + type uint64; + description "Cache misses"; + } + + // Ephemeral data + leaf cacheUpdates { + config "false"; + type uint64; + description "Cache updates"; + } + + // Ephemeral data + leaf smallMtuAdv { + config "false"; + type uint64; + description "Too small MTU advertised"; + } + + // Ephemeral data + leaf cacheNoUpdates { + config "false"; + type uint64; + description "Cache No Updates"; + } + } + + grouping ipv6_IPv6Clients-group { + description "Registered clients with IPv6 process"; + + // Ephemeral data + leaf clientName { + config "false"; + type string; + description "IPv6: Client name"; + } + + // Ephemeral data + leaf clientStatus { + config "false"; + type string; + description "IPv6: Client status"; + } + + // Ephemeral data + leaf clientPid { + config "false"; + type int32; + description "IPv6: Client pid"; + } + + // Ephemeral data + leaf clientExtPid { + config "false"; + type int32; + description "IPv6: Client extended pid"; + } + + // Ephemeral data + leaf clientProtocol { + config "false"; + type int32; + description "IPv6: Client protocol"; + } + + // Ephemeral data + leaf clientPibIndex { + config "false"; + type int32; + description "IPv6: Client pib index"; + } + + // Ephemeral data + leaf clientUuid { + config "false"; + type int32; + description "IPv6: Client Uuid"; + } + + // Ephemeral data + leaf clientRoutingVrf { + config "false"; + type int32; + description "IPv6: Client routing vrf id"; + } + + // Ephemeral data + leaf clientRoutingFlag { + config "false"; + type int32; + description "IPv6: Client routing flag id"; + } + + // Ephemeral data + leaf clientCtrlMtsSap { + config "false"; + type int32; + description "IPv6: Client control Mts Sap"; + } + + // Ephemeral data + leaf clientDataMtsSap { + config "false"; + type int32; + description "IPv6: Client Data MTS Sap"; + } + + // Ephemeral data + leaf destUnreachSent { + config "false"; + type int32; + description "IPv6: IPC messages to control queue"; + } + + // Ephemeral data + leaf destUnreachRcvd { + config "false"; + type int32; + description "IPv6: failed client IPC messages to control queue"; + } + + // Ephemeral data + leaf adminProhibSent { + config "false"; + type int32; + description "IPv6: IPC messages to data queue"; + } + + // Ephemeral data + leaf adminProhibRcvd { + config "false"; + type int32; + description "IPv6: failed IPC messages to data queue"; + } + + // Ephemeral data + leaf clientIfExtIndex { + config "false"; + type int32; + description "IPv6: Client interface extended index"; + } + + // Ephemeral data + leaf clientRecvFn { + config "false"; + type string; + description "IPv6: Client received function"; + } + + // Ephemeral data + leaf clientRecvHex { + config "false"; + type string; + description "IPv6: Client received Hex"; + } + } + + grouping ipv6_Dom-group { + description "IPV6 Domain"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + container mtustats-items { + + uses ipv6_IPv6MtuCacheStat-group; + description "IPv6 MTU cache statistics"; + } + + // ipv6 route static bfd + container rtstaticbfd-items { + list RtStaticBfd-list { + key "intf nexthop"; + + uses ipv6_RtStaticBfd-group; + description "IPV6 route static bfd list"; + } + description "IPV6 route static bfd"; + } + + // This object holds ipv6 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; + + uses ipv6_If-group; + description "IPV6 Interface list"; + } + description "IPV6 Interface"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container procstats-items { + + uses ipv6_IPv6ProcessStat-group; + description "IPv6 process statistics"; + } + + // Static route definitions + container rt-items { + list Route-list { + key "prefix"; + + uses ipv6_Route-group; + description "IPv6 Static Route list"; + } + description "IPv6 Static Route"; + } + + // Objectification of IPv6 route statistics + // Ephemeral data + container routestats-items { + + uses ipv6_IPv6RouteStat-group; + description "IPv6 Route Statistics"; + } + } + + grouping ipv6_IPv6MtuCacheStat-group { + description "IPv6 MTU cache statistics"; + + // Ephemeral data + container addr-items { + + // Ephemeral data + list IPv6MtuCacheDestStat-list { + config "false"; + key "pathDestination"; + + uses ipv6_IPv6MtuCacheDestStat-group; + description "IPv6 MTU cache destination statistics list"; + } + description "IPv6 MTU cache destination statistics"; + } + } + + grouping ipv6_IPv6MtuCacheDestStat-group { + description "IPv6 MTU cache destination statistics"; + + // Ephemeral data + leaf pathDestination { + config "false"; + type address_Ipv6; + description "Path destination address"; + } + + // Ephemeral data + leaf pathMtu { + config "false"; + type uint16; + description "Path MTU"; + } + + // Ephemeral data + leaf outgoingIod { + config "false"; + type string; + description "Outgoing IOD"; + } + + // Ephemeral data + leaf smallMtuReceived { + config "false"; + type string; + description "Too small MTU received"; + } + + // Ephemeral data + leaf bigMtuReeived { + config "false"; + type string; + description "Too big MTU received"; + } + + // Ephemeral data + leaf smallMtu { + config "false"; + type uint16; + description "Minimum mtu received less than the v6 minimum mtu"; + } + + // Ephemeral data + leaf lastMtuUpdate { + config "false"; + type string; + description "Last MTU update"; + } + } + + grouping ipv6_RtStaticBfd-group { + description "IPV6 route static bfd"; + + // interface value. + leaf intf { + + type nw_IfId; + description "Interface"; + } + leaf nexthop { + type address_Ip; + description "Nexthop Address"; + } + } + + grouping ipv6_If-group { + description "IPV6 Interface"; + + // Handle ipv6 address use-link-local-address" + leaf useLinkLocalAddr { + + type nw_AdminSt; + default "disabled"; + description "IPv6 Address Use Link Local Address"; + } + + // Handle ipv6 urpf info" + leaf urpf { + + type ip_UrpfT; + description "IPv6 URPF Info"; + } + + // Handle ipv6 forward" + leaf forward { + + type nw_AdminSt; + default "disabled"; + description "IPv6 forward"; + } + + // IPv6 Stateless address autoconfig + leaf autoconfig { + + type nw_AdminSt; + default "disabled"; + description "IPv6 Stateless address autoconfig"; + } + + // adds default route and the nh would be fetched from RA source address + leaf defaultRoute { + + type nw_AdminSt; + default "disabled"; + description "Default Route Addition with Nexthop as RA Source Address"; + } + leaf llAddr { + type address_Ip; + description "IPv6 Link Local Address"; + } + + // To Handle the config fault for this MO + leaf configError { + config "false"; + + type ipv6_ConfigErr; + default "noerror"; + description "Config error"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_UnnumberedOperStQual; + description "Operational State Qualifier"; + } + + // Interface address + container addr-items { + list Addr-list { + key "addr"; + + uses ipv6_Addr-group; + description "IPV6 Address list"; + } + description "IPV6 Address"; + } + + // Link local Interface address + container lladdr-items { + list LLaddr-list { + key "addr"; + + uses ipv6_LLaddr-group; + description "IPV6 Link Local Address list"; + } + description "IPV6 Link Local Address"; + } + + // IPv6 Neighbor Address + container nghbr-items { + list Neighbor-list { + key "addr"; + + uses ipv6_Neighbor-group; + description "IPV6 Neighbor Address list"; + } + description "IPV6 Neighbor Address"; + } + + // Objectification of IPv6 interface statistics + // Ephemeral data + container ifstats-items { + + uses ipv6_IPv6IfStat-group; + description "IPv6 interface statistics"; + } + + // Objectification of IPv6 neighbor statistics + container nbrstats-items { + list IPv6NeighborStat-list { + config "false"; + key "ngbrAddr"; + + uses ipv6_IPv6NeighborStat-group; + description "IPv6 neighbour statistics list"; + } + description "IPv6 neighbour statistics"; + } + + // Route map entries + container rpol-items { + + uses rtmap_RmapPolicy-group; + description "interface Route map Policy"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping ipv6_Addr-group { + description "IPV6 Address"; + leaf aggregatePrefixLength { + type uint16 { + range "0..127"; + } + description "Prefix-Length for AM Route Aggregation"; + } + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv6_LLaddr-group { + description "IPV6 Link Local Address"; + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + + // Operational state qualifier + leaf operStQual { + config "false"; + + type ip_AddrOperStQual; + description "Operational State Qualifier"; + } + } + + grouping ipv6_Neighbor-group { + description "IPV6 Neighbor Address"; + leaf neighborMac { + type address_Mac; + description "IPv6 neighbor MAC Address"; + } + + // To Handle the config fault for this MO + leaf configError { + config "false"; + + type ipv6_ConfigErr; + default "noerror"; + description "Config error"; + } + leaf addr { + type address_Ip; + description "Address"; + } + + // Type of the address + leaf type { + + type ip_AddrT; + description "Type"; + } + + // Address controls + leaf ctrl { + + type ip_AddrControl; + description "Controls"; + } + leaf vpcPeer { + type address_Ip; + description "VPC Peer"; + } + + // Ip address preference + leaf pref { + + type ip_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Route Tag"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_IPv6IfStat-group { + description "IPv6 interface statistics"; + leaf id { + config "false"; + type string; + description "Interface ID"; + } + + // Ephemeral data + leaf ifName { + config "false"; + type string; + description "Interface Name"; + } + + // Ephemeral data + leaf ifProtoState { + config "false"; + type string; + description "Protocol state"; + } + + // Ephemeral data + leaf ifLinkState { + config "false"; + type string; + description "Link state"; + } + + // Ephemeral data + leaf ifAdminState { + config "false"; + type string; + description "Administrative state"; + } + + // Ephemeral data + leaf ifIod { + config "false"; + type uint32; + description "Interface IOD"; + } + + // Ephemeral data + leaf ifFwdStatus { + config "false"; + type boolean; + description "Interface forwarding status"; + } + + // Ephemeral data + leaf ifIpv6Enabled { + config "false"; + type string; + description "IPv6 enabled/disabled"; + } + + // Ephemeral data + leaf ifAddr { + config "false"; + type string; + description "IPv6 address"; + } + + // Ephemeral data + leaf ifAddrSubnet { + config "false"; + type address_Ip; + description "Address Subnet"; + } + + // Ephemeral data + leaf ifAnycastAddr { + config "false"; + type string; + description "Anycast configured address"; + } + + // Ephemeral data + leaf ifLLaddr { + config "false"; + type address_Ip; + description "IPv6 link-local address"; + } + + // Ephemeral data + leaf ifLinkLocalConfigStatus { + config "false"; + type string; + description "Link local configuration status"; + } + + // Ephemeral data + leaf ifLinkLocalState { + config "false"; + type string; + description "Link local address state"; + } + + // Ephemeral data + leaf ifVIPAddr { + config "false"; + type string; + description "Virtual ip address"; + } + + // Ephemeral data + leaf ifMcastRoutingStatus { + config "false"; + type string; + description "Multicast routing enabled"; + } + + // Ephemeral data + leaf ifReportLLStatus { + config "false"; + type string; + description "Send local reports to MLD"; + } + + // Ephemeral data + leaf ifMcastGroupLocallyJoined { + config "false"; + type string; + description "Multicast group locally joined"; + } + + // Ephemeral data + leaf ifMcastSrcGrpAddr { + config "false"; + type string; + description "Multicast (S,G) entries joined"; + } + + // Ephemeral data + leaf ifmtu { + config "false"; + type uint32; + description "Mtu"; + } + + // Ephemeral data + leaf ifUcastRevPathFwdMode { + config "false"; + type string; + description "IPv6 unicast reverse path forwarding"; + } + + // Ephemeral data + leaf ifUcastRevPathFwdFlag { + config "false"; + type string; + description "IPv6 unicast reverse path forwarding flag"; + } + + // Ephemeral data + leaf ifLoadSharing { + config "false"; + type string; + description "IPv6 load sharing"; + } + + // Ephemeral data + leaf ifStatLastReset { + config "false"; + type string; + description "IPv6 interface statistics last reset"; + } + + // Ephemeral data + leaf ifAclInbound { + config "false"; + type string; + description "ACL inbound"; + } + + // Ephemeral data + leaf ifAclOutbound { + config "false"; + type string; + description "ACL outbound"; + } + + // Ephemeral data + leaf ifUnspecifiedSrc { + config "false"; + type uint32; + description "Unspecified source"; + } + + // Ephemeral data + leaf ifTotalPktRxTentativeAddr { + config "false"; + type uint32; + description "Total packet received on tentative address"; + } + + // Ephemeral data + leaf ifTotalPktRxInvalidAddrState { + config "false"; + type uint32; + description "Total Packet received on invalid address state"; + } + + // Ephemeral data + leaf ifTotalPktRxDuplicateState { + config "false"; + type uint32; + description "Total packet received on duplicate state"; + } + + // Ephemeral data + leaf ifAnycastPktTCP { + config "false"; + type uint32; + description "Anycast packet arrived on TCP"; + } + + // Ephemeral data + leaf ifDeliverInterfaceDown { + config "false"; + type uint32; + description "Deliver interface Down"; + } + + // Ephemeral data + leaf rpUcastPktsForwarded { + config "false"; + type uint32; + description "RP unicast packets forwarded"; + } + + // Ephemeral data + leaf rpUcastPktsOriginated { + config "false"; + type uint32; + description "RP unicast packets originated"; + } + + // Ephemeral data + leaf rpUcastPktsConsumed { + config "false"; + type uint32; + description "RP unicast packets consumed"; + } + + // Ephemeral data + leaf rpUcastBytesForwarded { + config "false"; + type uint32; + description "RP unicast bytes forwarded"; + } + + // Ephemeral data + leaf rpUcastBytesOriginated { + config "false"; + type uint32; + description "RP unicast bytes originated"; + } + + // Ephemeral data + leaf rpUcastBytesConsumed { + config "false"; + type uint32; + description "RP unicast bytes consumed"; + } + + // Ephemeral data + leaf rpMcastPktsForwarded { + config "false"; + type uint32; + description "RP multicast packets forwarded"; + } + + // Ephemeral data + leaf rpMcastPktsOriginated { + config "false"; + type uint32; + description "RP multicast packets originated"; + } + + // Ephemeral data + leaf rpMcastPktsConsumed { + config "false"; + type uint32; + description "RP multicast packets consumed"; + } + + // Ephemeral data + leaf rpMcastBytesForwarded { + config "false"; + type uint32; + description "RP multicast bytes forwarded"; + } + + // Ephemeral data + leaf rpMcastBytesOriginated { + config "false"; + type uint32; + description "RP multicast bytes originated"; + } + + // Ephemeral data + leaf rpMcastBytesConsumed { + config "false"; + type uint32; + description "RP multicast bytes consumed"; + } + } + + grouping ipv6_IPv6NeighborStat-group { + description "IPv6 neighbour statistics"; + leaf ngbrAddr { + config "false"; + type address_Ipv6; + description "Neighbor address"; + } + } + + grouping ipv6_IPv6ProcessStat-group { + description "IPv6 process statistics"; + + // Ephemeral data + leaf procVRFId { + config "false"; + type uint32; + description "VRF id"; + } + + // Ephemeral data + leaf procAutoDiscard { + config "false"; + type string; + description "Auto discard"; + } + + // Ephemeral data + leaf procAutoDiscardAdded { + config "false"; + type string; + description "Auto discard added"; + } + + // Ephemeral data + leaf procStaticDiscard { + config "false"; + type string; + description "Static discard"; + } + + // Ephemeral data + leaf procStaticDefaultCount { + config "false"; + type uint32; + description "Number of static default route configured"; + } + + // Ephemeral data + leaf procIODList { + config "false"; + type string; + description "IOD and intrface index list"; + } + + // Ephemeral data + leaf procLocalAddrList { + config "false"; + type string; + description "Local address list"; + } + } + + grouping ipv6_Route-group { + description "IPv6 Static Route"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf prefix { + type address_Ip; + description "Prefix"; + } + + // Route preference, the administrative distance assigned + // to this route + leaf pref { + + type rt_Preference; + description "Preference"; + } + + // Route tag + leaf tag { + + type rt_Tag; + description "Tag"; + } + + // Policy tag + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Route ctrl + leaf ctrl { + + type ip_RtControl; + description "Controls"; + } + + // Nexthops for the static route + container nh-items { + list Nexthop-list { + key "nhIf nhAddr nhVrf"; + + uses ipv6_Nexthop-group; + description "IPv6 Nexthop list"; + } + description "IPv6 Nexthop"; + } + + // Temporary Nexthop stub created until the Spine proxy + // IP address is determined. + container nhs-items { + list NexthopStub-list { + config "false"; + key "nhIf nhAddr nhVrf"; + + uses ipv6_NexthopStub-group; + description "IPv6 next-hop stub list"; + } + description "IPv6 next-hop stub"; + } + } + + grouping ipv6_Nexthop-group { + description "IPv6 Nexthop"; + leaf rtname { + type string; + description "Next hop name"; + } + leaf tag { + type uint32; + description "tag value"; + } + leaf pref { + type uint8; + description "Route preference"; + } + leaf object { + type uint32; + description "Object to be tracked"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_NexthopStub-group { + description "IPv6 next-hop stub"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Nexthop interface, force the packet that matches + // this prefix on this interface + leaf nhIf { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + leaf nhAddr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop vrf @@@ This is marked unspecified if the nexthop is in + // @@@ the same vrf as route + leaf nhVrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + leaf rwEncap { + config "false"; + type string; + description "Rewrite Encapsulation"; + } + + // Nexthop flags + leaf flags { + config "false"; + + type ip_NhFlags; + description "Rnh Flags"; + } + + // Operational state + leaf operSt { + config "false"; + + type ip_OperSt; + description "Operational State"; + } + } + + grouping ipv6_IPv6RouteStat-group { + description "IPv6 Route Statistics"; + + // Ephemeral data + container pfx-items { + + // Ephemeral data + list IPv6RouteStatPfx-list { + config "false"; + key "rtPrefix rtNextHop"; + + uses ipv6_IPv6RouteStatPfx-group; + description "IPv6 Route Statistics list"; + } + description "IPv6 Route Statistics"; + } + } + + grouping ipv6_IPv6RouteStatPfx-group { + description "IPv6 Route Statistics"; + + // Ephemeral data + leaf rtPrefix { + config "false"; + type address_Ip; + description "Route prefix and mask len"; + } + + // Ephemeral data + leaf rtNextHop { + config "false"; + type address_Ip; + description "Next hop IP address/prefix"; + } + + // Ephemeral data + leaf rtRealNextHop { + config "false"; + type string; + description "Real next-hop from u6rib resolve"; + } + + // Ephemeral data + leaf rtRealNextHopIod { + config "false"; + type string; + description "Iod from u6rib resolution"; + } + + // Ephemeral data + leaf rtInterface { + config "false"; + type string; + description "Interface static routes"; + } + + // Ephemeral data + leaf rtPreference { + config "false"; + type uint32; + description "Configured route preference"; + } + + // Ephemeral data + leaf rtNhVrfName { + config "false"; + type string; + description "Next hop VRF name"; + } + + // Ephemeral data + leaf rtResolveTableId { + config "false"; + type uint32; + description "Resolve table id"; + } + + // Ephemeral data + leaf rtTrackObjNum { + config "false"; + type uint32; + description "Track object number"; + } + + // Ephemeral data + leaf rtTrackObjState { + config "false"; + type string; + description "Tracking enabled"; + } + + // Ephemeral data + leaf rtRnhSentToUrib { + config "false"; + type string; + description "Route next hop sent to urib"; + } + + // Ephemeral data + leaf rtBfdEnabled { + config "false"; + type string; + description "BFD enabled"; + } + } + + grouping ipv6_IPv6Fragments-group { + description "IPv6 queued fragments"; + + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ipv6; + description "Source address"; + } + + // Ephemeral data + leaf dstAddr { + config "false"; + type address_Ipv6; + description "Destination address"; + } + + // Ephemeral data + leaf fragId { + config "false"; + type int32; + description "Fragment id"; + } + + // Ephemeral data + leaf fragOffset { + config "false"; + type int32; + description "Fragment offset"; + } + + // Ephemeral data + leaf fragMFlag { + config "false"; + type int32; + description "Fragment m-falg"; + } + + // Ephemeral data + leaf fragNextHeader { + config "false"; + type int32; + description "Fragment next header"; + } + + // Ephemeral data + leaf fragPayloadLen { + config "false"; + type int32; + description "Fragment payload length"; + } + + // Ephemeral data + leaf fragExpirationTime { + config "false"; + type int32; + description "Fragment expires in msec"; + } + } + + grouping ipv6_IPv6EventLogs-group { + description "IPv6 Event History Logging"; + + // Type of Event + leaf eventType { + + type ipv6_IPv6EventType; + description "Event Log Type"; + } + + // Type of Event LogSize + leaf logSize { + + type ipv6_IPv6EventLogSize; + description "Event Log Size"; + } + } + + grouping ipv6_IPv6InstStat-group { + description "IPv6 global instance statistics"; + + // Ephemeral data + leaf queuePacket { + config "false"; + type string; + description "IPv6 queue packet"; + } + } + + grouping ipv6_IPv6Stat-group { + description "IPv6 global statistics"; + + // Ephemeral data + leaf ftmName { + config "false"; + type string; + description "FTM timer"; + } + + // Ephemeral data + leaf ftmTimeSecond { + config "false"; + type uint32; + description "FTM tv_sec"; + } + + // Ephemeral data + leaf ftmTimeNanoSecond { + config "false"; + type uint32; + description "FTM tv_nsec"; + } + + // Ephemeral data + leaf ftCount { + config "false"; + type uint64; + description "FTM ft count"; + } + } + + grouping ipv6_IPv6TrafficStat-group { + description "IPv6 traffic statistics"; + + // Ephemeral data + leaf statLastReset { + config "false"; + type string; + description "Traffic statistics last reset time(uptime)"; + } + + // Ephemeral data + leaf ucastFragOriginated { + config "false"; + type uint64; + description "RP Unicast fragments originated"; + } + + // Ephemeral data + leaf mcastFragOriginated { + config "false"; + type uint64; + description "Multicast fragments originated"; + } + + // Ephemeral data + leaf ucastFragConsumed { + config "false"; + type uint64; + description "Unicast fragments consumed"; + } + + // Ephemeral data + leaf mcastFragConsumed { + config "false"; + type uint64; + description "Multicast fragments consumed"; + } + + // Ephemeral data + leaf ingressMcecFwdPkts { + config "false"; + type uint32; + description "Ingress mcec forward packets"; + } + + // Ephemeral data + leaf ingressPktsVinciMigration { + config "false"; + type uint32; + description "Ingress packets during Vinci migration"; + } + + // Ephemeral data + leaf errBadVersion { + config "false"; + type uint64; + description "Error bad version"; + } + + // Ephemeral data + leaf errRouteLookupFailed { + config "false"; + type uint64; + description "Error route lookup failed"; + } + + // Ephemeral data + leaf errHopLimitExceeded { + config "false"; + type uint64; + description "Error hop limit exceeded"; + } + + // Ephemeral data + leaf errIngressIfMgrInitDrops { + config "false"; + type uint32; + description "Error ingress interface manager init drops"; + } + + // Ephemeral data + leaf errRpfDrop { + config "false"; + type uint32; + description "Error rpf drops"; + } + + // Ephemeral data + leaf errOptionHeader { + config "false"; + type uint64; + description "Error option header"; + } + + // Ephemeral data + leaf errPayloadLenTooSmall { + config "false"; + type uint64; + description "Error payload length too small"; + } + + // Ephemeral data + leaf errPMFailed { + config "false"; + type uint64; + description "Error pm failed"; + } + + // Ephemeral data + leaf errMbufError { + config "false"; + type uint64; + description "MBUF errors"; + } + + // Ephemeral data + leaf errEncapError { + config "false"; + type uint64; + description "Encapsulation errors"; + } + + // Ephemeral data + leaf errPktsDroppedDestIfDown { + config "false"; + type uint64; + description "Packets dropped dut to destination interface down"; + } + + // Ephemeral data + leaf pktsRecvRx { + config "false"; + type uint64; + description "Packets received at ingress"; + } + + // Ephemeral data + leaf bytesRecvRx { + config "false"; + type uint64; + description "Bytes received at ingress"; + } + + // Ephemeral data + leaf headerErrorsRx { + config "false"; + type uint32; + description "Header errors of packets at ingress"; + } + + // Ephemeral data + leaf noRoutesRx { + config "false"; + type uint32; + description "No routes for packets at ingress"; + } + + // Ephemeral data + leaf addrErrorRx { + config "false"; + type uint32; + description "Address error in packets at ingress"; + } + + // Ephemeral data + leaf unknownProtoRx { + config "false"; + type uint32; + description "Unknown protocol in packets at ingress"; + } + + // Ephemeral data + leaf truncatedPktsRx { + config "false"; + type uint32; + description "Truncated packets at ingress"; + } + + // Ephemeral data + leaf forwardgramsRx { + config "false"; + type uint64; + description "Forwardgrams at ingress"; + } + + // Ephemeral data + leaf reassemblyRequiredRx { + config "false"; + type uint32; + description "Reassembly required at ingress"; + } + + // Ephemeral data + leaf reassemblySuccessfulRx { + config "false"; + type uint32; + description "Reassembly successful at ingress"; + } + + // Ephemeral data + leaf reassemblyFailedRx { + config "false"; + type uint32; + description "Reassembly failed at ingress"; + } + + // Ephemeral data + leaf discardedPktsRx { + config "false"; + type uint32; + description "Discarded packets at ingress"; + } + + // Ephemeral data + leaf deliveredPktsRx { + config "false"; + type uint64; + description "Delivered packets at ingress"; + } + + // Ephemeral data + leaf mcastPktsRx { + config "false"; + type uint64; + description "Multicast packets at ingress"; + } + + // Ephemeral data + leaf mcastBytesRx { + config "false"; + type uint64; + description "Multicast bytes at ingress"; + } + + // Ephemeral data + leaf pktsSentTx { + config "false"; + type uint64; + description "Packets sent at egress"; + } + + // Ephemeral data + leaf bytesSentTx { + config "false"; + type uint64; + description "Bytes sent at egress"; + } + + // Ephemeral data + leaf sentRequestsTx { + config "false"; + type uint64; + description "sent requests at egress"; + } + + // Ephemeral data + leaf noRoutesTx { + config "false"; + type uint32; + description "No routes for packets at egress"; + } + + // Ephemeral data + leaf forwardgramsTx { + config "false"; + type uint64; + description "Forwardgrams at egress"; + } + + // Ephemeral data + leaf discardedPktsTx { + config "false"; + type uint32; + description "Discarded packets at egress"; + } + + // Ephemeral data + leaf fragRequiredTx { + config "false"; + type uint32; + description "Fragmentation required at egress"; + } + + // Ephemeral data + leaf fragSuccesfulTx { + config "false"; + type uint32; + description "Fragmentation successfully done at egress"; + } + + // Ephemeral data + leaf fragFailedTx { + config "false"; + type uint32; + description "Fragmentation failed at egress"; + } + + // Ephemeral data + leaf fragCreatesTx { + config "false"; + type uint32; + description "Fragcreates at egress"; + } + + // Ephemeral data + leaf transmitsTx { + config "false"; + type uint64; + description "Transmits at egress"; + } + + // Ephemeral data + leaf mcastPktsTx { + config "false"; + type uint64; + description "Multicast packets at egress"; + } + + // Ephemeral data + leaf mcastBytesTx { + config "false"; + type uint64; + description "Multicast bytes at egress"; + } + + // Ephemeral data + leaf rpUcastPktsForwarded { + config "false"; + type uint32; + description "RP unicast packets forwarded"; + } + + // Ephemeral data + leaf rpUcastPktsOriginated { + config "false"; + type uint32; + description "RP unicast packets originated"; + } + + // Ephemeral data + leaf rpUcastPktsConsumed { + config "false"; + type uint32; + description "RP unicast packets consumed"; + } + + // Ephemeral data + leaf rpUcastBytesForwarded { + config "false"; + type uint32; + description "RP unicast bytes forwarded"; + } + + // Ephemeral data + leaf rpUcastBytesOriginated { + config "false"; + type uint32; + description "RP unicast bytes originated"; + } + + // Ephemeral data + leaf rpUcastBytesConsumed { + config "false"; + type uint32; + description "RP unicast bytes consumed"; + } + + // Ephemeral data + leaf rpMcastPktsForwarded { + config "false"; + type uint32; + description "RP multicast packets forwarded"; + } + + // Ephemeral data + leaf rpMcastPktsOriginated { + config "false"; + type uint32; + description "RP multicast packets originated"; + } + + // Ephemeral data + leaf rpMcastPktsConsumed { + config "false"; + type uint32; + description "RP multicast packets consumed"; + } + + // Ephemeral data + leaf rpMcastBytesForwarded { + config "false"; + type uint32; + description "RP multicast bytes forwarded"; + } + + // Ephemeral data + leaf rpMcastBytesOriginated { + config "false"; + type uint32; + description "RP multicast bytes originated"; + } + + // Ephemeral data + leaf rpMcastBytesConsumed { + config "false"; + type uint32; + description "RP multicast bytes consumed"; + } + } + + grouping ethpm_Entity-group { + description "Ethernet Port Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This class shall store the global configuration + // for a running EthPM instance. We have single EthPM + // in a system + container inst-items { + + uses ethpm_Inst-group; + description "Ethernet Port Manager Instance"; + } + } + + grouping ethpm_Inst-group { + description "Ethernet Port Manager Instance"; + leaf vlanTagNative { + type boolean; + description "Tag Native Vlan"; + } + + // System default layer + leaf systemDefaultLayer { + + type l1_Layer; + description "System Default Layer"; + } + + // System default admin st + leaf systemDefaultAdminSt { + + type l1_AdminSt; + description "System Default Admin St"; + } + + // System jumbo Mtu + leaf systemJumboMtu { + + type l1_Mtu; + description "System Jumbo MTU"; + } + + // System Interface Shutdown + leaf systemIfAdminState { + + type ethpm_SystemIfAdminState; + description "System Interface Admin State"; + } + + // System logging event + leaf logEvent { + + type l1_LogEventBitmap; + description "Logging Interface events"; + } + + // System logging level + leaf logLevel { + + type ethpm_SyslogLevel; + description "Logging level"; + } + leaf allowUnsupportedSfp { + type boolean; + default "true"; + description "Allow Unsupported SFP"; + } + + // Interface syslog info + leaf ifSyslogInfo { + + type ethpm_SyslogInfo; + description "Interface Syslog Info"; + } + + // Admin link-up syslog level + leaf adminLinkUpSyslogLevel { + + type ethpm_SyslogLevel; + description "Admin Link-Up Syslog Level"; + } + + // Admin link-down syslog level + leaf adminLinkDownSyslogLevel { + + type ethpm_SyslogLevel; + description "Admin Link-Down Syslog Level"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + container runtime-items { + + uses ethpm_InstRuntime-group; + description "Instance Entity"; + } + + // Global Error-disable recovery related configuration + container errdisrecover-items { + + uses ethpm_ErrDisRecover-group; + description "Error Disable Recovery Policy"; + } + + // This object stores the runtime state of vlan inside ethpm + container vlan-items { + list Vlan-list { + config "false"; + key "id"; + + uses ethpm_Vlan-group; + description "Vlan list"; + } + description "Vlan"; + } + + // This object stores the runtime state associated + // with a module inside ethpm + container module-items { + list Module-list { + config "false"; + key "id"; + + uses ethpm_Module-group; + description "Module list"; + } + description "Module"; + } + } + + grouping ethpm_InstRuntime-group { + description "Instance Entity"; + leaf staticRMacCfgRefCount { + config "false"; + type uint32; + description "Static Router MAC Config Reference Count"; + } + leaf pvlanTrunkCfgRefCount { + config "false"; + type uint32; + description "PVLAN Trunk Config Reference Count"; + } + leaf dot1qRefCount { + config "false"; + type uint32; + description "Dot1q Config Reference Count"; + } + leaf ethertypeRefCount { + config "false"; + type uint32; + description "Ether Type Config Reference Count"; + } + leaf l3SatportRefCount { + config "false"; + type uint32; + description "L3 Satellite Port Reference Count"; + } + leaf snmpIfTblLastChange { + config "false"; + type union { + type string; + type uint64; + } + description "Snmp if Table Last Change"; + } + leaf issuPacerRefCount { + config "false"; + type uint32; + description "ISSU Pacer Reference Count"; + } + leaf featurePongState { + config "false"; + type uint8; + description "Feature Pong Status"; + } + leaf slowdrainCongCoreConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Core Conf Check State"; + } + leaf slowdrainCongEdgeConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Edge Conf Check State"; + } + leaf slowdrainPausConfChkState { + config "false"; + type uint8; + description "Slow Drain Congestion Core Conf-Check Status"; + } + leaf slowdrainPausEdgeConfChkState { + config "false"; + type uint8; + description "Slow Drain Pause Edge Conf-Check Status"; + } + leaf eeeRefCount { + config "false"; + type uint32; + description "EEE Reference Count"; + } + leaf fabpathCfgRefCount { + config "false"; + type uint32; + description "Fabric Path Config Lock Reference Count"; + } + leaf dceSwId { + config "false"; + type uint32; + description "DCE Switch ID"; + } + leaf lifLoopbackDone { + config "false"; + type boolean; + description "LIF Loopback Done"; + } + leaf numBundles { + config "false"; + type uint32; + description "Number of Bundles"; + } + + // bundle If list + leaf bundleIfList { + config "false"; + + type ethpm_IfBundleList1024; + description "Bundle Interface List"; + } + + // Configured loopback interfaces + leaf lbIfs { + config "false"; + + type ethpm_LbBitmap; + description "Configured Loopback Interfaces"; + } + } + + grouping ethpm_ErrDisRecover-group { + description "Error Disable Recovery Policy"; + + // Error disable recovery interval + leaf errDisRecovIntvl { + + type ethpm_ErrDisRecovIntvl; + description "Error Disable Recovery Interval"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + container Event-items { + list Event-list { + key "event"; + + uses ethpm_Event-group; + description "Error Disabled Recovery Event list"; + } + description "Error Disabled Recovery Event"; + } + + container rserrDisRecoverPolCons-items { + + uses ethpm_RsErrDisRecoverPolCons_source-group; + description "ErrDisableRecovery Policy Attachment"; + } + } + + grouping ethpm_Event-group { + description "Error Disabled Recovery Event"; + + // Error disable event type + leaf event { + + type ethpm_ErrDisEvent; + description "Event"; + } + leaf detect { + type boolean; + default "true"; + description "Detection Enabled"; + } + leaf recover { + type boolean; + default "false"; + description "Recovery Enabled"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + } + + grouping ethpm_Vlan-group { + description "Vlan"; + + // vlan id TODO: how do we add properties to rn + // for objects owned by process? Currently + // compilation seems to fails if owner="oper" + leaf id { + config "false"; + + type l2_DomId; + description "Vlan ID"; + } + leaf numIf { + config "false"; + type uint32; + description "Number of Interfaces"; + } + leaf flag { + config "false"; + type uint32; + description "Vlan Flags"; + } + + // shut state of vlan + leaf shutState { + config "false"; + + type l1_AdminSt; + description "Shut State of VLAN"; + } + + // state of vlan + leaf state { + config "false"; + + type l2_DomAdminSt; + description "Operational State of VLAN"; + } + } + + grouping ethpm_Module-group { + description "Module"; + leaf id { + config "false"; + type uint8; + description "Module ID"; + } + leaf numPortTypes { + config "false"; + type uint32; + description "Number of Port-Types"; + } + leaf swCardId { + config "false"; + type uint16; + description "Software Card ID"; + } + + // cfgd ports + leaf cfgdPorts { + config "false"; + + type ethpm_PortBitmap; + description "Configured Ports"; + } + leaf flags { + config "false"; + type uint32; + description "Module Flags"; + } + leaf runtimeNumPorts { + config "false"; + type uint8; + description "Runtime Number of Ports"; + } + + // module type + leaf moduleType { + config "false"; + + type l1_Module; + description "Module Type"; + } + leaf isOffline { + config "false"; + type boolean; + description "Module Offline Status"; + } + leaf lcNodeAddress { + config "false"; + type uint32; + description "LC Node Address"; + } + leaf portCfgSap { + config "false"; + type uint16; + description "Port Config SAP"; + } + + // runtime ports + leaf runtimePorts { + config "false"; + + type ethpm_PortBitmap; + description "Runtime Ports"; + } + } + + grouping im_Breakout-group { + description "Interface Breakout"; + container module-items { + list Mod-list { + key "id"; + + uses im_Mod-group; + description "Module list"; + } + description "Module"; + } + } + + grouping im_Mod-group { + description "Module"; + leaf id { + type uint8 { + range "1..32"; + } + description "Module Id"; + } + + // Front-panel port + container fport-items { + list FpP-list { + key "id"; + + uses im_FpP-group; + description "Front Panel Port list"; + } + description "Front Panel Port"; + } + } + + grouping im_FpP-group { + description "Front Panel Port"; + leaf id { + type uint8 { + range "1..108"; + } + description "Front Panel port id"; + } + + // Breakout Map + leaf breakoutMap { + + type im_BreakoutMapT; + description "Breakout Map"; + } + } + + grouping im_Entity-group { + description "Interface Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This class shall store the global configuration + // for a running GIM instance. We have single GIM + // in a system + container inst-items { + + uses im_Inst-group; + description "Interface Manager Instance"; + } + } + + grouping im_Inst-group { + description "Interface Manager Instance"; + + leaf mode100M { + + type im_Mode100M; + description "Mode 100M"; + } + + leaf modeHwProfile { + config "false"; + + type im_ModeHwProfile; + description "Mode 4C, 2C+4Q"; + } + + // default VDC state + leaf vdcSt { + config "false"; + + type l1_VdcSt; + description "Default VDC State"; + } + + leaf BreakoutProfile { + config "false"; + + type im_BreakoutProfile; + description "Breakout Profile"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // This class shall store the software/feature capability + // information for the GIM instance + container cap-items { + list Capability-list { + config "false"; + key "id"; + + uses im_Capability-group; + description "Capability list"; + } + description "Capability"; + } + + // This object stores the runtime state associated + // with a module inside GIM + container module-items { + list Module-list { + config "false"; + key "id"; + + uses im_Module-group; + description "Module list"; + } + description "Module"; + } + } + + grouping im_Capability-group { + description "Capability"; + leaf id { + config "false"; + type uint32; + description "Capability Id"; + } + leaf autoInstCpbl { + config "false"; + type boolean; + description "Auto-Install Capability"; + } + leaf isInstalled { + config "false"; + type boolean; + description "Installed State"; + } + } + + grouping im_Module-group { + description "Module"; + leaf id { + config "false"; + type uint8; + description "Module Id"; + } + leaf numPorts { + config "false"; + type uint8; + description "Number of Port"; + } + + // Module type + leaf moduleType { + config "false"; + + type l1_Module; + description "Module Type"; + } + leaf swCardId { + config "false"; + type uint16; + description "Software Card Id"; + } + leaf lcNodeAddress { + config "false"; + type uint32; + description "LC Node Address"; + } + leaf portCfgSap { + config "false"; + type uint16; + description "Port Config Sap"; + } + leaf isPresent { + config "false"; + type boolean; + description "Module Presence Status"; + } + leaf runtimeFlag { + config "false"; + type uint8; + description "Runtime Flag"; + } + leaf moduleInitiEvalFlag { + config "false"; + type uint32; + description "Module Initialize Evaluation Flag"; + } + leaf lcExceptionFlag { + config "false"; + type uint32; + description "LC Exception Flag"; + } + leaf lcInsertPldSz { + config "false"; + type uint32; + description "LC Insertion Payload Size"; + } + + // This object stores the information about + // different port-types in a module + container portinfo-items { + list PortInfo-list { + config "false"; + key "phyLayer"; + + uses im_PortInfo-group; + description "Information on different port-types in a module list"; + } + description "Information on different port-types in a module"; + } + } + + grouping im_PortInfo-group { + description "Information on different port-types in a module"; + + // Physical Layer + leaf phyLayer { + config "false"; + + type l1_PhyLayer; + description "Physical Layer"; + } + leaf numPorts { + config "false"; + type uint8; + description "Number of Ports"; + } + leaf type { + config "false"; + type uint8; + description "Specific Type of the Object or Component"; + } + } + + grouping pc_Entity-group { + description "Port Channel Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // This object holds per port channel instance information + container pc-items { + + uses pc_Inst-group; + description "Port Channel Instance"; + } + } + + grouping pc_Inst-group { + description "Port Channel Instance"; + + // Hash distribution type + leaf hashDist { + + type pc_PCHashDist; + description "Hash Distribution Type"; + } + + // Load defer timeout + leaf loadDeferTime { + + type pc_LoadDeferTime; + description "Load Defer Timeout"; + } + + // Max number of port-channels + leaf maxChannels { + config "false"; + + type pc_NumChannels; + description "Max Number of Port-channels"; + } + + // Number of used port-channels + leaf usedChannels { + config "false"; + + type pc_NumChannels; + description "Number of Used Port-channels"; + } + + // Number of free port-channels + leaf freeChannels { + config "false"; + + type pc_NumChannels; + description "Number of Free Port-channels"; + } + + // Percentage of used port-channels + leaf pcntChannels { + config "false"; + + type pc_PcntChannels; + description "Percentage of Used Port-channels"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + } + + grouping flexlink_Flexlink-group { + description "Flexlink configuration and management"; + container if-items { + list Interface-list { + key "id"; + + uses flexlink_Interface-group; + description "Interface configuration and management for Flexlink list"; + } + description "Interface configuration and management for Flexlink"; + } + } + + grouping flexlink_Interface-group { + description "Interface configuration and management for Flexlink"; + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface ID"; + } + + // switchport backup interface + leaf backupIntf { + + type nw_IfId; + description "Backup Interface configuration for flexlink"; + } + leaf fastConv { + type enumeration { + enum disabled { + value 0; + description "Disabled"; + } + enum enabled { + value 1; + description "Enabled"; + } + } + default "disabled"; + description "multicast fast-convergence configuration for flexlink"; + } + + // switchport backup interface preemption mode + leaf preemptionMode { + + type flexlink_Mode; + description "switchport backup interface preemption mode configuration for flexlink"; + } + + // switchport backup interface preemption delay + leaf preemptionDelay { + + type flexlink_Delay; + description "switchport backup interface preemption delay configuration for flexlink"; + } + } + + grouping l2fm_Entity-group { + description "l2fm"; + + // mac-learn + leaf macLearn { + + type l2fm_Learning; + description "mac-learn Enable Disable"; + } + + leaf macLoopDetect { + + type l2fm_LoopDetect; + description "mac loop-detect port-down enable Disable"; + } + + leaf macGuardVpcPeergwMac { + + type l2fm_GuardVpcPeergwMac; + description "mac guard vpc peer GW Mac Enable Disable"; + } + + leaf macMoveNotification { + + type l2fm_MacMoveNotification; + description "mac move notification Enable disable"; + } + + // Holds macMove trap information + container macmovetrap-items { + + uses l2fm_MacMoveTrap-group; + description "Mac Move Trap"; + } + } + + grouping l2fm_MacMoveTrap-group { + description "Mac Move Trap"; + leaf macMoveAddress { + config "false"; + type address_Mac; + description "Mac Move Address"; + } + leaf macMoveVlanNumber { + config "false"; + type uint32; + description "Mac Move Vlan Number"; + } + leaf macMoveFromPortID { + config "false"; + type uint32; + description "Mac Move From Port ID"; + } + leaf macMoveToPortID { + config "false"; + type uint32; + description "Mac Move To Port ID"; + } + leaf macMoveTime { + config "false"; + type string; + description "Mac Move Time"; + } + } + + grouping l2pt_L2protocol-group { + description "L2 Protocol Tunneling configuration and management"; + + leaf cos { + + type l2pt_Cos; + description "L2PT Cos Value"; + } + container if-items { + list If-list { + key "id"; + + uses l2pt_If-group; + description "Interface configuration and management for L2PT list"; + } + description "Interface configuration and management for L2PT"; + } + } + + grouping l2pt_If-group { + description "Interface configuration and management for L2PT"; + leaf id { + type string; + description "Interface ID"; + } + + container tunnel-items { + + uses l2pt_Tunnel-group; + description "Tunneling Protocols on Interface"; + } + } + + grouping l2pt_Tunnel-group { + description "Tunneling Protocols on Interface"; + leaf cdp { + type boolean; + description "Cisco Discovery Protocol"; + } + leaf stp { + type boolean; + description "Spanning Tree Protocol"; + } + leaf vtp { + type boolean; + description "VLAN Trunking Protocol"; + } + leaf lldp { + type boolean; + description "Link Layer Discovery Protocol"; + } + leaf lacp { + type boolean; + description "Link Aggregation Control Protocol"; + } + leaf doubleTag { + type boolean; + description "Enable or Disable Double Tag for L2PT"; + } + + leaf cdpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Cisco Discovery Protocol"; + } + + leaf stpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Spanning Tree Protocol"; + } + + leaf vtpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for VLAN Trunking Protocol"; + } + + leaf lldpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Link Layer Discovery Protocol"; + } + + leaf lacpShutThreshold { + + type l2pt_Threshold; + description "Shut Threshold for Link Aggregation Control Protocol"; + } + + leaf cdpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Cisco Discovery Protocol"; + } + + leaf stpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Spanning Tree Protocol"; + } + + leaf vtpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for VLAN Trunking Protocol"; + } + + leaf lldpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Link Layer Discovery Protocol"; + } + + leaf lacpDropThreshold { + + type l2pt_Threshold; + description "Drop Threshold for Link Aggregation Control Protocol"; + } + } + + grouping l2rib_Entity-group { + description "L2RIB Entity"; + + // Global L2RIB instance configuration and operation state. + // There is only one instance of L2RIB at any time. + container inst-items { + + uses l2rib_Inst-group; + description "L2RIB Instance"; + } + } + + grouping l2rib_Inst-group { + description "L2RIB Instance"; + + // L2RIB EVPN Host MAC Mobility Object + container evpn-items { + + uses l2rib_EvpnMACmob-group; + description "EVPN MAC mobility cfg"; + } + + container clients-items { + + uses l2rib_Clients-group; + description "This model is container of L2RIB clients"; + } + + container producers-items { + + uses l2rib_Producers-group; + description "This model is container of L2RIB producers"; + } + + container registrations-items { + + uses l2rib_Registrations-group; + description "L2RIB Registrations"; + } + + container topology-items { + + uses l2rib_Topology-group; + description "Topology Object"; + } + } + + grouping l2rib_EvpnMACmob-group { + description "EVPN MAC mobility cfg"; + leaf ddMoves { + type uint16 { + range "1..1000"; + } + default "5"; + description "Dup Detect MAC num-moves (def:5)"; + } + leaf ddDuration { + type uint16 { + range "2..36000"; + } + default "180"; + description "Dup Detect MAC duration secs (def:180)"; + } + leaf drTimeout { + type uint16 { + range "0..1800"; + } + default "30"; + description "Dup MAC Recover timeout secs (def:30)"; + } + leaf drRetryCnt { + type uint16 { + range "0..3000"; + } + default "3"; + description "Dup MAC Recover retry cnt (def:3)"; + } + } + + grouping l2rib_Clients-group { + description "This model is container of L2RIB clients"; + container client-items { + list Client-list { + config "false"; + key "id"; + + uses l2rib_Client-group; + description "This model containes information a L2RIB client list"; + } + description "This model containes information a L2RIB client"; + } + } + + grouping l2rib_Client-group { + description "This model containes information a L2RIB client"; + leaf id { + config "false"; + type uint8; + description "Client identifier"; + } + leaf uuid { + config "false"; + type uint32; + description "Client universally unique identifier"; + } + leaf name { + config "false"; + type string; + description "Client process suffix"; + } + } + + grouping l2rib_Producers-group { + description "This model is container of L2RIB producers"; + container prod-items { + list Producer-list { + config "false"; + key "name id clientId objType"; + + uses l2rib_Producer-group; + description "Producer list"; + } + description "Producer"; + } + } + + grouping l2rib_Producer-group { + description "Producer"; + leaf name { + config "false"; + type string; + description "Producer Name"; + } + leaf id { + config "false"; + type uint32; + description "Producer identifier"; + } + leaf clientId { + config "false"; + type uint8; + description "Client identifier"; + } + leaf objType { + config "false"; + type string; + description "Type of object"; + } + leaf adminDist { + config "false"; + type uint32; + description "Admin distance"; + } + leaf purgeTime { + config "false"; + type uint32; + description "Producer purge timer"; + } + + leaf state { + config "false"; + + type l2rib_ProducerStT; + description "Producer state"; + } + leaf flags { + config "false"; + type uint32; + description "Producer Flags"; + } + } + + grouping l2rib_Registrations-group { + description "L2RIB Registrations"; + container client-items { + list RegClient-list { + config "false"; + key "name"; + + uses l2rib_RegClient-group; + description "Global Registraion Entries list"; + } + description "Global Registraion Entries"; + } + } + + grouping l2rib_RegClient-group { + description "Global Registraion Entries"; + leaf id { + config "false"; + type uint8; + description "Client identifier"; + } + leaf name { + config "false"; + type string; + description "Client process suffix"; + } + container topo-items { + list RegTopo-list { + config "false"; + key "id objType"; + + uses l2rib_RegTopo-group; + description "Registrations identified based on topology list"; + } + description "Registrations identified based on topology"; + } + } + + grouping l2rib_RegTopo-group { + description "Registrations identified based on topology"; + leaf id { + config "false"; + type string; + description "Topology identifier"; + } + leaf objType { + config "false"; + type string; + description "Object type"; + } + leaf prodName { + config "false"; + type string; + description "Producer name"; + } + } + + grouping l2rib_Topology-group { + description "Topology Object"; + + // This object holds the topology information + container topo-items { + list Topo-list { + config "false"; + key "topoId"; + + uses l2rib_Topo-group; + description "This model contains information of topology object list"; + } + description "This model contains information of topology object"; + } + } + + grouping l2rib_Topo-group { + description "This model contains information of topology object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf name { + config "false"; + type string; + description "Topology name"; + } + leaf txId { + config "false"; + type uint32; + description "Transaction ID for Topology Ack"; + } + leaf rcvdAck { + config "false"; + type boolean; + description "Flag to Indicate Topology Ack"; + } + + // flags + leaf flags { + config "false"; + + type l2rib_TopoFlagsT; + description " Topology operational flags"; + } + + // sub flags + leaf subFlags { + config "false"; + + type l2rib_TopoSubFlagsT; + description "Topology operational sub category flags"; + } + + // This object holds the VNI attributes of topology + container vni_attr-items { + + uses l2rib_TopoVniAttr-group; + description "This model contains VNI attributes of topology"; + } + + // This object holds the EVI attributes of topology + container evi_attr-items { + + uses l2rib_TopoEviAttr-group; + description "This model contains EVI attributes of topology"; + } + + container mac-items { + + uses l2rib_Mac-group; + description + "This model is contianer of all Mac-routes under + a topology."; + } + + container macip-items { + + uses l2rib_MacIp-group; + description + "This model is container of all Mac-Ip route + objects under a topology"; + } + + container floodlist-items { + + uses l2rib_FloodList-group; + description "Flood-List"; + } + } + + grouping l2rib_TopoVniAttr-group { + description "This model contains VNI attributes of topology"; + leaf id { + config "false"; + type uint32; + description "virtual network identifier"; + } + + // Topology Type + leaf topoType { + config "false"; + + type l2rib_TopoTypeT; + description "Topology Type"; + } + + // Encap Type + leaf encapType { + config "false"; + + type l2rib_EncapTypeT; + description "Encapsulation type of VNI"; + } + leaf iod { + config "false"; + type uint32; + description "Ordinial information of VNI "; + } + leaf ifHdl { + config "false"; + type uint32; + description "Handle value of nve interface"; + } + leaf vtepIp { + config "false"; + type address_Ip; + description "VTEP IP address information of VNI"; + } + leaf emulatedVtepIp { + config "false"; + type address_Ip; + description "Emulated VTEP IP address information of VNI"; + } + leaf emulatedRoIp { + config "false"; + type address_Ip; + description "virtual ip address used for re-origination"; + } + leaf vrfId { + config "false"; + type uint32; + description "Value of vrf id for vni"; + } + leaf rMac { + config "false"; + type address_Mac; + description "Local Router MAC (For L3 VNIs)"; + } + leaf vMac { + config "false"; + type address_Mac; + description "Local Virtual MAC (For L3 VNIs)"; + } + leaf vMacRo { + config "false"; + type address_Mac; + description "Local Virtual MAC RO (For L3 VNIs)"; + } + } + + grouping l2rib_TopoEviAttr-group { + description "This model contains EVI attributes of topology"; + leaf id { + config "false"; + type uint32; + description "EVI identifier information"; + } + + // Topology Type + leaf topoType { + config "false"; + + type l2rib_TopoTypeT; + description "Topology Type"; + } + + // Encap Type + leaf encapType { + config "false"; + + type l2rib_EncapTypeT; + description "Encapsulation type of EVI"; + } + leaf ifHdl { + config "false"; + type uint32; + description "Handle value of nve interface"; + } + leaf vtepIp { + config "false"; + type address_Ip; + description "VTEP IP address information of VNI"; + } + leaf emulatedVtepIp { + config "false"; + type address_Ip; + description "Emulated VTEP IP address information of VNI"; + } + leaf bdLabel { + config "false"; + type uint32; + description "BD Label informa of EVI"; + } + } + + grouping l2rib_Mac-group { + description + "This model is contianer of all Mac-routes under + a topology."; + container mac_entry-items { + list MacEntry-list { + config "false"; + key "macAddr"; + + uses l2rib_MacEntry-group; + description "This model contains information of each mac-route list"; + } + description "This model contains information of each mac-route"; + } + } + + grouping l2rib_MacEntry-group { + description "This model contains information of each mac-route"; + leaf macAddr { + config "false"; + type address_Mac; + description "Physical address of mac-route"; + } + container prod-items { + list MacProducer-list { + config "false"; + key "producer"; + + uses l2rib_MacProducer-group; + description "Mac Producer Object list"; + } + description "Mac Producer Object"; + } + } + + grouping l2rib_MacProducer-group { + description "Mac Producer Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf macAddr { + config "false"; + type address_Mac; + description "MAC address of mac route object"; + } + leaf producer { + config "false"; + type string; + description "Name of mac route producer"; + } + + leaf flags { + config "false"; + + type l2rib_MacRtFlagsT; + description "List of flags enabled for mac-route"; + } + + leaf genericFlags { + config "false"; + + type l2rib_GenericFlagsT; + description "Generic flags of l2rib object"; + } + leaf seqNo { + config "false"; + type uint32; + description "Sequence Number"; + } + leaf nh { + config "false"; + type string; + description "List of next-hop address"; + } + + leaf rtResolution { + config "false"; + + type l2rib_MacRtResolutionT; + description "MAC route resolution"; + } + leaf fwdSt { + config "false"; + type string; + description "Forwarding state"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + leaf esi { + config "false"; + type string; + description "Ethernet-segment identifier"; + } + leaf pcInfo { + config "false"; + type string; + description "Name of port channel Interface"; + } + leaf siteOrigin { + config "false"; + type string; + description "Site of origin"; + } + leaf plNh { + config "false"; + type string; + description "Resultant next hop of path-list category"; + } + } + + grouping l2rib_MacIp-group { + description + "This model is container of all Mac-Ip route + objects under a topology"; + container macip_entry-items { + list MacIpEntry-list { + config "false"; + key "macAddr ip"; + + uses l2rib_MacIpEntry-group; + description "This model contais information of mac-ip entry list"; + } + description "This model contais information of mac-ip entry"; + } + } + + grouping l2rib_MacIpEntry-group { + description "This model contais information of mac-ip entry"; + leaf macAddr { + config "false"; + type address_Mac; + description "Mac address of mac-ip route"; + } + leaf ip { + config "false"; + type address_Ip; + description "Ip address of mac-ip route"; + } + container prod-items { + list MacIpProducer-list { + config "false"; + key "producer"; + + uses l2rib_MacIpProducer-group; + description "Mac Ip Producer Object list"; + } + description "Mac Ip Producer Object"; + } + } + + grouping l2rib_MacIpProducer-group { + description "Mac Ip Producer Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf macAddr { + config "false"; + type address_Mac; + description "Mac address of mac-ip route"; + } + leaf hostIp { + config "false"; + type address_Ip; + description "Ip Address"; + } + leaf producer { + config "false"; + type string; + description "Mac Route Producer"; + } + + leaf flags { + config "false"; + + type l2rib_MacIpRtFlagsT; + description "List of flags enabled in mac-ip route"; + } + + leaf genericFlags { + config "false"; + + type l2rib_GenericFlagsT; + description "Generic flags of l2rib object"; + } + leaf seqNo { + config "false"; + type uint32; + description "Sequence Number"; + } + leaf peerId { + config "false"; + type uint32; + description "Peer Id"; + } + leaf peerIfIdx { + config "false"; + type uint64; + description "Peer interface index"; + } + leaf nh { + config "false"; + type string; + description "List of next hop address"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + leaf esi { + config "false"; + type string; + description "Ethernet-segment identifier"; + } + leaf pcInfo { + config "false"; + type string; + description "Name of port channel interface"; + } + leaf siteOrigin { + config "false"; + type string; + description "Site of origin"; + } + leaf l3TopoId { + config "false"; + type uint32; + description "Layer 3 topology identifier"; + } + } + + grouping l2rib_FloodList-group { + description "Flood-List"; + container fl-items { + list Fl-list { + config "false"; + key "ip"; + + uses l2rib_Fl-group; + description "Flood list Object list"; + } + description "Flood list Object"; + } + } + + grouping l2rib_Fl-group { + description "Flood list Object"; + leaf topoId { + config "false"; + type uint32; + description "Topology identifier"; + } + leaf ip { + config "false"; + type address_Ip; + description "Ip address of flood-list entry"; + } + leaf serviceNode { + config "false"; + type boolean; + description "Service Node"; + } + leaf peerId { + config "false"; + type uint32; + description "Peer identifier information"; + } + leaf sentTo { + config "false"; + type string; + description "List of clients notified about object"; + } + } + + grouping portsecurity_PortSecurity-group { + description "Port Security configuration and management at interface"; + + // DN: sys/portsecurity/table + container table-items { + + uses portsecurity_PortSecurityTable-group; + description "MAC Address Table for Secure Entries"; + } + + // DN: sys/portsecurity/if-[if] + container if-items { + list PortSecurityIf-list { + key "if"; + + uses portsecurity_PortSecurityIf-group; + description "Port Security configuration and management at interface list"; + } + description "Port Security configuration and management at interface"; + } + } + + grouping portsecurity_PortSecurityTable-group { + description "MAC Address Table for Secure Entries"; + + // DN: sys/portsecurity/table/vlan-[vlan-x]-mac- + container vlan-items { + list MacEntry-list { + config "false"; + key "vlan macAddress"; + + uses portsecurity_MacEntry-group; + description "Secure mac address entry list"; + } + description "Secure mac address entry"; + } + } + + grouping portsecurity_MacEntry-group { + description "Secure mac address entry"; + leaf macAddress { + config "false"; + type address_Mac; + description "Secure MAC address value"; + } + leaf vlan { + config "false"; + type string; + description "Vlan for secure Mac entry"; + } + + leaf if { + config "false"; + + type nw_IfId; + description "Interface id of Secure MAC entry"; + } + leaf static { + config "false"; + type boolean; + description "Secure MAC entry is static if true"; + } + leaf sticky { + config "false"; + type boolean; + description "Secure MAC entry is sticky if true"; + } + } + + grouping portsecurity_PortSecurityIf-group { + description "Port Security configuration and management at interface"; + + // portsecurity if id + leaf if { + + type nw_IfId; + description "Interface id of port with Port Security"; + } + leaf portSecurity { + type boolean; + default "false"; + description "Enable or disable Port Security on interface"; + } + leaf aging { + type uint16 { + range "0..1440"; + } + default "0"; + description "Aging time of mac addresses on interface"; + } + + leaf agingType { + + type portsecurity_AgingType; + description "Aging type of mac addresses on interface"; + } + + leaf violation { + + type portsecurity_ViolationMode; + description "Security violation modes"; + } + leaf maximum { + type uint16 { + range "1..1025"; + } + default "1"; + description "Maximum number of secure mac addresses on interface"; + } + leaf sticky { + type boolean; + default "false"; + description "Enable or disable sticky secure addresses on interface"; + } + + // DN: sys/portsecurity/if-[if]/vlan-[vlan-x] + container vlan-items { + list PortSecurityVlan-list { + key "vlanId"; + + uses portsecurity_PortSecurityVlan-group; + description "Port Security configuration and management for specific VLAN at interface list"; + } + description "Port Security configuration and management for specific VLAN at interface"; + } + + // DN: sys/portsecurity/if-[if]/mac-[macAddress] + container mac-items { + list SecureMac-list { + key "macAddress"; + + uses portsecurity_SecureMac-group; + description "Static secure MAC at interface list"; + } + description "Static secure MAC at interface"; + } + } + + grouping portsecurity_PortSecurityVlan-group { + description "Port Security configuration and management for specific VLAN at interface"; + leaf vlanId { + type string; + description "VLAN id for Port Security"; + } + leaf vlanMaximum { + type uint16 { + range "0..1025"; + } + description "Per VLAN maximum number of secure mac addresses on interface"; + } + + // DN: sys/portsecurity/if-[if]/vlan-[vlan-x]/mac-[macAddress] + container mac-items { + list SecureMacEntry-list { + key "macAddress"; + + uses portsecurity_SecureMacEntry-group; + description "Static secure MAC at interface list"; + } + description "Static secure MAC at interface"; + } + } + + grouping portsecurity_SecureMacEntry-group { + description "Static secure MAC at interface"; + leaf macAddress { + type address_Mac; + description "Static secure MAC address on interface"; + } + } + + grouping portsecurity_SecureMac-group { + description "Static secure MAC at interface"; + leaf macAddress { + type address_Mac; + description "Static secure MAC address on interface"; + } + } + + grouping pvlan_PrivateVlan-group { + description "Private VLAN (PVLAN) configuration and management"; + + // Fex Trunk Enable + leaf fexTrunk { + + type nw_AdminSt; + default "disabled"; + description "Enable or disable PVLANs for FEX trunk"; + } + + // Abstraction for a layer-1 interface in the system. + // The properties apply to all types of interfaces DN: sys/pvlan/svi-[[CEncapType]] + container svi-items { + list Svi-list { + key "if"; + + uses pvlan_Svi-group; + description "SVI configuration for propagating L3 capabilities to secondary VLANs list"; + } + description "SVI configuration for propagating L3 capabilities to secondary VLANs"; + } + + // Abstraction for a layer-1 interface in the system. + // The properties apply to all types of interfaces DN: sys/pvlan/if-[[CIfIdType]] + container if-items { + list If-list { + key "if"; + + uses pvlan_If-group; + description "PVLAN port configurations list"; + } + description "PVLAN port configurations"; + } + + // Layer2 private-vlan domain DN: sys/pvlan/vlan-[[CEncapType]] + container vlan-items { + list Vlan-list { + key "id"; + + uses pvlan_Vlan-group; + description "VLAN configuration and operation for PVLAN list"; + } + description "VLAN configuration and operation for PVLAN"; + } + } + + grouping pvlan_Svi-group { + description "SVI configuration for propagating L3 capabilities to secondary VLANs"; + + leaf if { + + type nw_IfId; + description "Interface id of port with PVLAN"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_If-group { + description "PVLAN port configurations"; + + // pvlan if id + leaf if { + + type nw_IfId; + description "Interface id of port with PVLAN"; + } + + // access DN: sys/pvlan/if-[[CIfIdType]]/access + container access-items { + + uses pvlan_Access-group; + description "PVLAN access mode configurations on port"; + } + + // trunk DN: sys/pvlan/if-[[CIfIdType]]/trunk + container trunk-items { + + uses pvlan_Trunk-group; + description "PVLAN Trunk configuration tables"; + } + } + + grouping pvlan_Access-group { + description "PVLAN access mode configurations on port"; + + // access promiscuous port mapping DN: sys/pvlan/if-[[CIfIdType]]/access/promiscuous + container promiscuous-items { + + uses pvlan_AccessPromiscuous-group; + description "PVLAN promiscuous port configurations"; + } + + // DN: sys/pvlan/if-[[CIfIdType]]/access/secondary can be isolated or community + container secondary-items { + + uses pvlan_AccessSecondary-group; + description "Host VLAN access port configurations for isolated or community"; + } + } + + grouping pvlan_AccessPromiscuous-group { + description "PVLAN promiscuous port configurations"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_AccessSecondary-group { + description "Host VLAN access port configurations for isolated or community"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + leaf secondaryVlan { + type string; + description "Secondary VLAN configured as host VLAN"; + } + } + + grouping pvlan_Trunk-group { + description "PVLAN Trunk configuration tables"; + leaf nativeVlan { + type string; + default "vlan-1"; + description "Native VLAN on PVLAN trunk"; + } + + leaf trunkAllowedVlans { + + type l2_VlanBitmap; + description "Trunk Allowed VLANs on PVLAN trunk"; + } + + // trunk promiscous port mapping DN: sys/pvlan/if-[[CIfIdType]]/trunk/promiscuous + container promiscuous-items { + + uses pvlan_TrunkPromiscuousTable-group; + description "PVLAN Promiscuous Trunk Table"; + } + + // trunk secondary port mapping DN: sys/pvlan/if-[[CIfIdType]]/trunk/secondary + container secondary-items { + + uses pvlan_TrunkSecondaryTable-group; + description "PVLAN Isolated Trunk Table"; + } + } + + grouping pvlan_TrunkPromiscuousTable-group { + description "PVLAN Promiscuous Trunk Table"; + + // trunk promiscous vlan mapping entries DN: sys/pvlan/if-[[CIfIdType]]/trunk/promiscuous/primary-[[CEncapType]] + container primary-items { + list TrunkPromiscuousEntry-list { + key "primaryVlan"; + + uses pvlan_TrunkPromiscuousEntry-group; + description "PVLAN Promiscuous Trunk Entry list"; + } + description "PVLAN Promiscuous Trunk Entry"; + } + } + + grouping pvlan_TrunkPromiscuousEntry-group { + description "PVLAN Promiscuous Trunk Entry"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + + leaf secondaryVlans { + + type l2_VlanBitmap; + description "Secondary VLANS of the PVLAN domain"; + } + } + + grouping pvlan_TrunkSecondaryTable-group { + description "PVLAN Isolated Trunk Table"; + + // trunk secondary vlan mapping entries DN: sys/pvlan/if-[[CIfIdType]]/trunk/secondary/primary-[[CEncapType]] secondary can only be isolated + container primary-items { + list TrunkSecondaryEntry-list { + key "primaryVlan"; + + uses pvlan_TrunkSecondaryEntry-group; + description "PVLAN Isolated Trunk Entry list"; + } + description "PVLAN Isolated Trunk Entry"; + } + } + + grouping pvlan_TrunkSecondaryEntry-group { + description "PVLAN Isolated Trunk Entry"; + leaf primaryVlan { + type string; + description "Primary VLAN of a PVLAN domain"; + } + leaf secondaryVlan { + type string; + description "Isolated VLAN of the PVLAN domain"; + } + } + + grouping pvlan_Vlan-group { + description "VLAN configuration and operation for PVLAN"; + leaf id { + type string; + description "VLAN ID in a PVLAN"; + } + + // Private Vlan Type (Primary, Community, Isolated) + leaf pvlanType { + + type l2_PvlanTypes; + description "Type of VLAN in a PVLAN: Primary, Community or Isolated"; + } + + // Association of primary to secondary vlans + leaf association { + + type l2_VlanBitmap; + description "Association of Primay VLAN to Secondary VLANs in a PVLAN"; + } + } + + grouping vlanmgr_Entity-group { + description "Vlan Manager Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "0..128"; + } + description "Name of the Entity of VlanMgr"; + } + + // This objects hold per vlan-mgr instance information. There is only + // one instance of vlan-mgr running in the system today + container inst-items { + + uses vlanmgr_Inst-group; + description "Vlan Manager Instance"; + } + } + + grouping vlanmgr_Inst-group { + description "Vlan Manager Instance"; + leaf longName { + type boolean; + default "false"; + description "Enable or Disable long name of 128 characters for VLAN"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "0..128"; + } + description "Name of the Instance of VlanMgr"; + } + + leaf vdcId { + config "false"; + + type l2_VdcId; + description "Virtual Device Context ID"; + } + + // DomainMbrIf class + container dommbr-items { + list DomMbrIf-list { + config "false"; + key "ifIdx"; + + uses l2_DomMbrIf-group; + description "Domain Member Interface list"; + } + description "Domain Member Interface"; + } + } + + grouping l2_DomMbrIf-group { + description "Domain Member Interface"; + + // if-index (Secondary Key) + leaf ifIdx { + config "false"; + + type nw_IfId; + description "Interface Index"; + } + + // create-flag to track interface creation status + leaf createFlag { + config "false"; + + type l2_CreateState; + description "Create Flag"; + } + + // bundle_port_state to track port-channel's operational status + leaf bundlePortSt { + config "false"; + + type l1_OperSt; + description "Bundle Port State"; + } + + // phy-port-state to track port's physical state + leaf phyPortState { + config "false"; + + type l1_OperSt; + description "Physical Port State"; + } + + // pm-port-state to track port's protocol state + leaf pmPortState { + config "false"; + + type l1_OperSt; + description "Protocol State"; + } + + // port's access vlan + leaf accessVlan { + config "false"; + + type l2_DomId; + description "Access VLAN"; + } + + // port's native vlan + leaf nativeVlan { + config "false"; + + type l2_DomId; + description "Native VLAN"; + } + + // pm-port-mode to track port's mode (access, trunk etc) + leaf pmPortMode { + config "false"; + + type l1_Mode; + description "Port Mode"; + } + + // allowed-vlan-bitmap used to track vlans that are configured on the interface + leaf allowedVlanBmp { + config "false"; + + type l2_VlanBitmap; + description "Allowed Vlan Bitmap"; + } + + // up-vlan-bitmap used to track vlans that are up on the interface + leaf trunkPortUpVlanBmp { + config "false"; + + type l2_VlanBitmap; + description "Trunk Port Up Vlan Bitmap"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping nvo_Eps-group { + description "Container object for NVO endpoint."; + container oper_peer-items { + list OperPeer-list { + config "false"; + key "ip"; + + uses nvo_OperPeer-group; + description "Object containing operational information of peers learnt through segment routing encapsulation list"; + } + description "Object containing operational information of peers learnt through segment routing encapsulation"; + } + + container evpnmulticast-items { + + uses nvo_EvpnMulticast-group; + description "Enabler for Advertise EVPN Multicast."; + } + + container multisite-items { + + uses nvo_EvpnMultisiteBordergw-group; + description "Configuration of EVPN Multisite Border Gateway."; + } + container stormcontrol-items { + list EvpnStormControl-list { + key "name"; + + uses nvo_EvpnStormControl-group; + description "Evpn Storm-control information list"; + } + description "Evpn Storm-control information"; + } + container epId-items { + list Ep-list { + key "epId"; + + uses nvo_Ep-group; + description "Endpoint for Network Virtualization Overlay Object. list"; + } + description "Endpoint for Network Virtualization Overlay Object."; + } + } + + grouping nvo_OperPeer-group { + description "Object containing operational information of peers learnt through segment routing encapsulation"; + leaf ip { + config "false"; + type address_Ip; + description "Indicates IP address of learnt peer"; + } + leaf upTime { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE peer uptime in POSIX format"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered in POSIX format"; + } + + leaf operSt { + config "false"; + + type nvo_PeerStateT; + description "Indicates the operational state of the peer"; + } + container peer_adj-items { + list PeerAdjacency-list { + config "false"; + key "eviId"; + + uses nvo_PeerAdjacency-group; + description "Object containing operational information of peer adjacencies list"; + } + description "Object containing operational information of peer adjacencies"; + } + } + + grouping nvo_PeerAdjacency-group { + description "Object containing operational information of peer adjacencies"; + leaf eviId { + config "false"; + type uint32; + description "Indicates the EVI adjacent to the peer."; + } + leaf egressLbl { + config "false"; + type uint32; + description "Indicates the egress MPLS label for this adjacency"; + } + + leaf ownership { + config "false"; + + type nvo_OwnershipT; + description "Indicates the ownership type of the peer adjacency"; + } + + leaf operSt { + config "false"; + + type nvo_PeerStateT; + description "Indicates the operational state of the peer adjancency"; + } + } + + grouping nvo_EvpnMulticast-group { + description "Enabler for Advertise EVPN Multicast."; + + leaf state { + + type nvo_EvpnMcastStT; + description "Advertise EVPN Multicast State."; + } + } + + grouping nvo_EvpnMultisiteBordergw-group { + description "Configuration of EVPN Multisite Border Gateway."; + + leaf state { + + type nvo_MultisiteStateT; + description "Configures the state of EVPN Multisite Border-gateway."; + } + leaf siteId { + type uint64; + description "Configuration of EVPN Multisite Border Gateway."; + } + leaf delayRestoreTime { + type uint16 { + range "30..1000"; + } + default "180"; + description "Delay-Restore Time."; + } + } + + grouping nvo_EvpnStormControl-group { + description "Evpn Storm-control information"; + + leaf name { + + type nvo_EvpnSiteName; + description "Broadcast or Multicast or Unicast Name"; + } + leaf level { + type uint16 { + range "0..100"; + } + description "Storm Suppression Level"; + } + } + + grouping nvo_Ep-group { + description "Endpoint for Network Virtualization Overlay Object."; + + leaf epId { + + type nvo_EpIdT; + description "Network Virtualization Overlay Endpoint (NVE) ID"; + } + + leaf adminSt { + + type nw_AdminSt; + default "disabled"; + description "Administrative Up or Down state of the NVE."; + } + leaf descr { + type string; + description "Description for the NVE"; + } + + leaf sourceInterface { + + type nw_IfId; + description "Source Interface associated with the NVE."; + } + + leaf anycastIntf { + + type nw_IfId; + description "Anycast Source Interface associated with the NVE."; + } + + leaf multisiteBordergwInterface { + + type nw_IfId; + description "Interface representing the Multisite Border Gateway."; + } + leaf holdDownTime { + type uint16 { + range "1..1500"; + } + default "180"; + description "Hold Down Time."; + } + + leaf hostReach { + + type nvo_HostReachT; + default "Flood-and-learn"; + description "Host Reachability Protocol."; + } + leaf suppressARP { + type boolean; + description "Suppress ARP."; + } + + leaf mcastGroupL2 { + + type mcast_GrpIp; + description "Base multicast group address for L2."; + } + + leaf mcastGroupL3 { + + type mcast_GrpIp; + description "Base multicast group address for L3."; + } + leaf ingressReplProtoBGP { + type boolean; + description "VxLAN Ingress Replication Protocol BGP."; + } + leaf advertiseVmac { + type boolean; + default "false"; + description "Enable or disable Virtual MAC Advertisement in VPC mode."; + } + leaf virtualMac { + type address_Mac; + description "Custom Virtual Router MAC address configuration for VPC VxLAN."; + } + leaf controllerId { + type uint32; + default "0"; + description "Controller ID (applicable when host reachability proto is controller)."; + } + + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Enable or disable VxLAN configuration via controller."; + } + + leaf encapType { + + type nvo_EncapT; + default "unknown"; + description "Encapsulation Type."; + } + leaf autoRemapReplicationServers { + type boolean; + description "Configures auto remapping of VNIs for controller-based replication servers."; + } + + leaf operState { + config "false"; + + type l2_DomOperSt; + description "Operational State of the NVE."; + } + + leaf operStSrcLoopbackIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of NVE Source Loopback Interface."; + } + + leaf operStAnycastSrcIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of NVE Anycast Source Loopback Interface."; + } + + leaf operStMultisiteBrdrGwLoopbackIntf { + config "false"; + + type l2_DomOperSt; + description "Operational State Up or Down of Multisite Border Gateway Loopback Interface."; + } + + leaf adminStMultisiteBrdrGwLoopackIntf { + config "false"; + + type nw_AdminSt; + description "Administrative State Up or Down of Multisite Border Gateway Loopback Interface."; + } + + leaf operEncapType { + config "false"; + + type nvo_EncapT; + default "unknown"; + description "Operational encapsulation type."; + } + leaf mac { + config "false"; + type address_Mac; + description "Local Router MAC address"; + } + leaf virtualRtrMac { + config "false"; + type address_Mac; + description "Virtual Router MAC address for VPC VxLAN."; + } + leaf virtualRtrMacReorig { + config "false"; + type address_Mac; + description "Virtual Router Re-origination MAC address for Multisite VxLAN."; + } + + leaf learningMode { + config "false"; + + type nvo_HostLearnModeT; + description "Indicates the host learning mode (Control plane or data plane)."; + } + leaf holdUpTime { + config "false"; + type uint16; + description "The time for which the Source Interface will be held operationally Up in VPC mode during bring-down."; + } + + leaf holdDownTimerExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Indicates the time after which the hold down timer will expire (in milliseconds)."; + } + + leaf holdUpTimerExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Indicates the time after which the hold up timer will expire (in milliseconds)."; + } + + leaf delayRestoreMsBrdrGwExpiryTime { + config "false"; + + type nvo_ETimeStamp; + description "Time when delay restore for Multisite Border Gateway Loopback Interface will expire."; + } + leaf vpcVIPNotified { + config "false"; + type boolean; + description "Flag to indicate that Virtual IP configuration for the NVE source interface has been enabled in VPC mode."; + } + leaf primaryIp { + config "false"; + type address_Ipv4; + description "Primary IP of NVE Source Loopback Interface."; + } + leaf secondaryIp { + config "false"; + type address_Ipv4; + description "The Lowest Secondary IP of NVE Source Loopback Interface."; + } + leaf primaryIpv6 { + config "false"; + type address_Ipv6; + description "Primary IPv6 of NVE Source Loopback Interface."; + } + leaf secondaryIpv6 { + config "false"; + type address_Ipv6; + description "Secondary IPv6 of NVE Source Loopback Interface."; + } + leaf multisiteBrdrGwIntfIp { + config "false"; + type address_Ipv4; + description "IPv4 address assigned to Multisite Border Gateway Interface Loopback."; + } + + container peers-items { + + uses nvo_Peers-group; + description "Parent object for all peers."; + } + + container nws-items { + + uses nvo_Nws-group; + description "Container object for Virtual Network Entries (VNIs)."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + + container rsoperSourceInterface-items { + + uses nvo_RsOperSourceInterface_source-group; + description "Operational Up/Down status of the Source Interface."; + } + } + + grouping nvo_Peers-group { + description "Parent object for all peers."; + container st_ir_peer-items { + list StIRPeer-list { + config "false"; + key "ip"; + + uses nvo_StIRPeer-group; + description "Object containing operational properties for Static Ingress Replication Peer. list"; + } + description "Object containing operational properties for Static Ingress Replication Peer."; + } + container dyn_ir_peer-items { + list DyIRPeer-list { + config "false"; + key "ip"; + + uses nvo_DyIRPeer-group; + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer. list"; + } + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer."; + } + container dy_peer-items { + list DyPeer-list { + config "false"; + key "ip"; + + uses nvo_DyPeer-group; + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane). list"; + } + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane)."; + } + + // Commented out + // + // + // + // + // + // + // + container st_peer-items { + list StPeer-list { + key "ip"; + + uses nvo_StPeer-group; + description "Object containing operational properties for Controller-learnt Peer. list"; + } + description "Object containing operational properties for Controller-learnt Peer."; + } + } + + grouping nvo_StIRPeer-group { + description "Object containing operational properties for Static Ingress Replication Peer."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for Static IR Peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_Counters-group { + description "Counters for Nve Interface, VNI, peers."; + + // Ephemeral data + leaf txUcastpkts { + config "false"; + type uint64; + description "Indicates transmitted unicast packets."; + } + + // Ephemeral data + leaf txUcastbytes { + config "false"; + type uint64; + description "Indicates transmitted unicast bytes."; + } + + // Ephemeral data + leaf txMcastpkts { + config "false"; + type uint64; + description "Indicates transmitted multicast packets."; + } + + // Ephemeral data + leaf txMcastbytes { + config "false"; + type uint64; + description "Indicates transmitted multicast bytes."; + } + + // Ephemeral data + leaf rxUcastpkts { + config "false"; + type uint64; + description "Indicates received Unicast packets."; + } + + // Ephemeral data + leaf rxUcastbytes { + config "false"; + type uint64; + description "Indicates received Unicast bytes."; + } + + // Ephemeral data + leaf rxMcastpkts { + config "false"; + type uint64; + description "Indicates received Multicast packets."; + } + + // Ephemeral data + leaf rxMcastbytes { + config "false"; + type uint64; + description "Indicates received Multicast Bytes."; + } + } + + grouping nvo_DyIRPeer-group { + description "Object containing operational properties for a dynamically learnt BGP Ingress Replication Peer."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for BGP IR Peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_DyPeer-group { + description "Object containing operational properties for a dynamically learnt peer (BGP-RNH or dataplane)."; + leaf ip { + config "false"; + type address_Ip; + description "Indicates Peer IP for BGP-RNH or dataplane learnt peer."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf mac { + config "false"; + type address_Mac; + description "Indicates Peer MAC address."; + } + + leaf firstVNI { + config "false"; + + type nvo_VniT; + description "Indicates the first VNI on which the NVE peer was learnt."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_StPeer-group { + description "Object containing operational properties for Controller-learnt Peer."; + leaf ip { + type address_Ipv4; + description "Indicates Peer IP for Controller-learnt Peer."; + } + + leaf type { + + type tunnel_EpT; + description "NVO Peer type (mcast/physical)."; + } + leaf peerId { + type uint32; + description "Internal use only. Please leave unspecified."; + } + + leaf state { + config "false"; + + type nvo_PeerStateT; + description "Indicates the NVE Peer Up or Down state."; + } + leaf upStateTransitionTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates NVE Peer uptime in seconds."; + } + leaf mac { + config "false"; + type address_Mac; + description "Indicates Peer MAC address."; + } + + leaf firstVNI { + config "false"; + + type nvo_VniT; + description "Indicates the first VNI on which the NVE peer was learnt."; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Indicates the time at which the peer was first discovered."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_Nws-group { + description "Container object for Virtual Network Entries (VNIs)."; + container vni-items { + list Nw-list { + key "vni"; + + uses nvo_Nw-group; + description "Object containing configurable properties for a single Virtual Network ID (VNI). list"; + } + description "Object containing configurable properties for a single Virtual Network ID (VNI)."; + } + container opervni-items { + list OperNw-list { + config "false"; + key "vni"; + + uses nvo_OperNw-group; + description "Object containing operational properties for a single Virtual Network ID (VNI). list"; + } + description "Object containing operational properties for a single Virtual Network ID (VNI)."; + } + container vnis-items { + list NwRange-list { + key "vniRangeMin vniRangeMax"; + + uses nvo_NwRange-group; + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs). list"; + } + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs)."; + } + } + + grouping nvo_Nw-group { + description "Object containing configurable properties for a single Virtual Network ID (VNI)."; + + leaf vni { + + type nvo_VniT; + description "Configure Virtual Network ID"; + } + + leaf suppressARP { + + type nvo_SuppressARPT; + description "Enable or disable ARP suppression for VNI(s)."; + } + + leaf mcastGroup { + + type mcast_GrpIp; + description "Configures multicast group address for VNI(s)."; + } + leaf associateVrfFlag { + type boolean; + description "Configures VNI(s) as L3 VNI."; + } + leaf isLegacyMode { + type boolean; + description "Indicates whether Multicast group configuration for the VNI(s) is configured in legacy mode or not."; + } + + leaf multisiteIngRepl { + + type nvo_MultisiteIngReplStateT; + description "Enable or disable Multisite Ingress Replication for VNI(s)."; + } + + // This property is hidden (secure="yes") and used only for internal validation. + // Following are the expected values - + // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" + // CLI - "cli" + // Controller - "controller" + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Internal system property. Not intended for external use."; + } + + container IngRepl-items { + + uses nvo_IngRepl-group; + description "Object containing Ingress Replication configuration for VNI(s)."; + } + } + + grouping nvo_IngRepl-group { + description "Object containing Ingress Replication configuration for VNI(s)."; + + leaf proto { + + type nvo_IngReplProtoT; + description "Configure VxLAN Ingress Replication mode."; + } + + // This property is required specifically for configuring replication + // servers from the controller. When its value is replicationServer, it + // signifies that the static peers downloaded from controller should + // programmed wth vni hashing. This property directly maps to the + // replicationMode property in BdEntry MO in the aggregate model. + // And since this property is to be set only from the controller, it has + // been defined as hidden. So it will not be visible in REST/Netconf or + // any other external interface. + leaf replMode { + + type nvo_ReplModeT; + description "Replication Mode. For internal use only."; + } + container config_st_ir_peer-items { + list ConfigStIRPeer-list { + key "ip"; + + uses nvo_ConfigStIRPeer-group; + description "Configuration for Static Ingress Replication (IR) Peer. list"; + } + description "Configuration for Static Ingress Replication (IR) Peer."; + } + } + + grouping nvo_ConfigStIRPeer-group { + description "Configuration for Static Ingress Replication (IR) Peer."; + leaf ip { + type address_Ipv4; + description "Peer IP configuration for Static IR Peer."; + } + } + + grouping nvo_OperNw-group { + description "Object containing operational properties for a single Virtual Network ID (VNI)."; + + // Operational properties + leaf vni { + config "false"; + + type nvo_VniT; + description "Virtual Network ID."; + } + + leaf epId { + config "false"; + + type nvo_EpIdT; + description "Network Virtualization Overlay endpoint (NVE) ID."; + } + + leaf operMcastGroup { + config "false"; + + type mcast_GrpIp; + description "Indicates the multicast group address."; + } + leaf operSupprARP { + config "false"; + type boolean; + description "Indicates state of ARP suppression for VNI(s)."; + } + + leaf state { + config "false"; + + type nvo_VniStateT; + description "Indicates VNI Up or Down state."; + } + + leaf mode { + config "false"; + + type nvo_HostLearnModeT; + description "Indicates VNI Host reachability mode."; + } + + leaf type { + config "false"; + + type nvo_VniTypeT; + description "Indicates if VNI is in L2 or L3 type."; + } + leaf vlanBD { + config "false"; + type string; + description "Indicates the VLAN associated to VNI."; + } + + // Commented out + // + // + // + // + // + // + // + // Ephemeral data + container cntrs-items { + + uses nvo_Counters-group; + description "Counters for Nve Interface, VNI, peers."; + } + } + + grouping nvo_NwRange-group { + description "Object containing configurable properties for a range of Virtual Network IDs (VNIs)."; + + leaf vniRangeMin { + + type nvo_VniT; + description "Configures the minimum value for the VNI range."; + } + + leaf vniRangeMax { + + type nvo_VniT; + description "Configures the maximum value for the VNI range."; + } + leaf isMcastRange { + type boolean; + description "Indicates if the multicast group configuration is a range."; + } + + leaf suppressARP { + + type nvo_SuppressARPT; + description "Enable or disable ARP suppression for VNI(s)."; + } + + leaf mcastGroup { + + type mcast_GrpIp; + description "Configures multicast group address for VNI(s)."; + } + leaf associateVrfFlag { + type boolean; + description "Configures VNI(s) as L3 VNI."; + } + leaf isLegacyMode { + type boolean; + description "Indicates whether Multicast group configuration for the VNI(s) is configured in legacy mode or not."; + } + + leaf multisiteIngRepl { + + type nvo_MultisiteIngReplStateT; + description "Enable or disable Multisite Ingress Replication for VNI(s)."; + } + + // This property is hidden (secure="yes") and used only for internal validation. + // Following are the expected values - + // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" + // CLI - "cli" + // Controller - "controller" + leaf cfgSrc { + + type nvo_CfgSrcT; + default "unknown"; + description "Internal system property. Not intended for external use."; + } + + container IngRepl-items { + + uses nvo_IngRepl-group; + description "Object containing Ingress Replication configuration for VNI(s)."; + } + } + + grouping l3_Ctx-group { + description "Context"; + + // parameter used by node to enforce filter rules + leaf pcEnfPref { + + type fv_PcEnfPref; + description "Policy Control Enforcement"; + } + + // Type of the context + leaf type { + + type l3_CtxT; + description "Type"; + } + + // It represents the classId for the multicast traffic + // terminating on this context + leaf pcTag { + + type actrl_PcTag; + description "PC Tag"; + } + + // Local managment class id + leaf mgmtPcTag { + + type actrl_PcTag; + description "Management PC Tag"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose + leaf resourceId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // vrf id + leaf id { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + leaf encap { + type string; + description "Encapsulation"; + } + leaf descr { + type string; + description "Description"; + } + + // Scope of the context. It identifies the classId + // pool and all the epg/bd classIds belonging to + // this context needs to be allocated from this pool + leaf scope { + config "false"; + + type actrl_ScopeId; + description "Scope"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerID; + description "Controller ID"; + } + + // SecurityLabel + leaf secLbl { + config "false"; + + type actrl_SecLbl; + description "Security Label"; + } + + // vrf Admin State + leaf adminState { + + type l3_VrfAdminState; + description "Admin State"; + } + + // vrf Oper State + leaf operState { + config "false"; + + type l3_VrfOperState; + description "Operational State"; + } + + // oper state reason + leaf operStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Operational State Qualifier"; + } + + // old oper state reason + leaf oldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Old Operational State Qualifier"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf pending { + config "false"; + type boolean; + description "Pending"; + } + leaf v4TibValid { + config "false"; + type boolean; + description "IPV4 Table Validity"; + } + leaf v4TibId { + config "false"; + type uint32; + description "IPV4 Table ID"; + } + leaf v4TibName { + config "false"; + type string; + description "IPV4 Table Name"; + } + leaf v4TibPending { + config "false"; + type boolean; + description "IPV4 Table Pending"; + } + + // ipv4 table Oper State + leaf v4TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV4 Table Operational State"; + } + + // ipv4 table oper state reason + leaf v4TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Table Operational State Qualifier"; + } + + // ipv4 table old oper state reason + leaf v4TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Old Operational State Qualifier"; + } + leaf v6TibValid { + config "false"; + type boolean; + description "IPV6 Table Validity"; + } + leaf v6TibId { + config "false"; + type uint32; + description "IPV6 Table ID"; + } + leaf v6TibName { + config "false"; + type string; + description "IPV6 Table Name"; + } + leaf v6TibPending { + config "false"; + type boolean; + description "IPV6 Table Pending"; + } + + // ipv6 table Oper State + leaf v6TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV6 Table Operational State"; + } + + // ipv6 table oper state reason + leaf v6TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + + // ipv6 table old oper state reason + leaf v6TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; + } + leaf lastChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + + // bgp route distinguisher + leaf bgpRd { + config "false"; + + type l3_BgpRdBytes; + description "BGP Route Distinguisher"; + } + leaf bgpRdDisp { + config "false"; + type string; + description "BGP Route Distinguisher for Display"; + } + leaf prtclBmp { + config "false"; + type uint32; + description "Protocol Bitmap"; + } + leaf oui { + type string; + description "OUI"; + } + leaf vpnId { + type string; + description "Configure VPN ID"; + } + + // Prefix list entry definition + container pfx-items { + list PfxEntry-list { + config "false"; + key "addr"; + + uses actrl_PfxEntry-group; + description "Prefix Entry list"; + } + description "Prefix Entry"; + } + + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses epm_Db-group; + description "Database list"; + } + description "Database"; + } + + // Routed management interface + container mgmt-items { + list RtdMgmtIf-list { + key "id"; + + uses mgmt_RtdMgmtIf-group; + description "Routed Management Interface list"; + } + description "Routed Management Interface"; + } + + container rsctxToEpP-items { + + list RsCtxToEpP-list { + key "tDn"; + + uses l3_RsCtxToEpP_source-group; + description "Epp Attachment list"; + } + description "Epp Attachment"; + } + } + + grouping actrl_PfxEntry-group { + description "Prefix Entry"; + leaf addr { + config "false"; + type address_Ip; + description "Address"; + } + + // Policy tag + leaf pcTag { + config "false"; + + type actrl_PcTag; + description "PC Tag"; + } + + // Prefix operational state + leaf operSt { + config "false"; + + type actrl_OperSt; + description "Operational State"; + } + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping mgmt_RtdMgmtIf-group { + description "Routed Management Interface"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + leaf descr { + + type naming_Descr1024; + description "Description"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + // Administrative state + leaf adminSt { + + type l1_AdminSt; + description "Admin State"; + } + + container rtpseudoIf-items { + + uses dhcp_RtPseudoIf_target-group; + description "Pseudo Interface"; + } + + container rsrtdMgmtConf-items { + + uses mgmt_RsRtdMgmtConf_source-group; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l3_Inst-group { + description "Overlay Instance"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose + leaf resourceId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // vrf id + leaf id { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + leaf encap { + type string; + description "Encapsulation"; + } + leaf descr { + type string; + description "Description"; + } + + // Scope of the context. It identifies the classId + // pool and all the epg/bd classIds belonging to + // this context needs to be allocated from this pool + leaf scope { + config "false"; + + type actrl_ScopeId; + description "Scope"; + } + + // Controller Id + leaf ctrlrId { + + type aggregate_ControllerID; + description "Controller ID"; + } + + // SecurityLabel + leaf secLbl { + config "false"; + + type actrl_SecLbl; + description "Security Label"; + } + + // vrf Admin State + leaf adminState { + + type l3_VrfAdminState; + description "Admin State"; + } + + // vrf Oper State + leaf operState { + config "false"; + + type l3_VrfOperState; + description "Operational State"; + } + + // oper state reason + leaf operStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Operational State Qualifier"; + } + + // old oper state reason + leaf oldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "Old Operational State Qualifier"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf pending { + config "false"; + type boolean; + description "Pending"; + } + leaf v4TibValid { + config "false"; + type boolean; + description "IPV4 Table Validity"; + } + leaf v4TibId { + config "false"; + type uint32; + description "IPV4 Table ID"; + } + leaf v4TibName { + config "false"; + type string; + description "IPV4 Table Name"; + } + leaf v4TibPending { + config "false"; + type boolean; + description "IPV4 Table Pending"; + } + + // ipv4 table Oper State + leaf v4TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV4 Table Operational State"; + } + + // ipv4 table oper state reason + leaf v4TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Table Operational State Qualifier"; + } + + // ipv4 table old oper state reason + leaf v4TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV4 Old Operational State Qualifier"; + } + leaf v6TibValid { + config "false"; + type boolean; + description "IPV6 Table Validity"; + } + leaf v6TibId { + config "false"; + type uint32; + description "IPV6 Table ID"; + } + leaf v6TibName { + config "false"; + type string; + description "IPV6 Table Name"; + } + leaf v6TibPending { + config "false"; + type boolean; + description "IPV6 Table Pending"; + } + + // ipv6 table Oper State + leaf v6TibOperState { + config "false"; + + type l3_VrfOperState; + description "IPV6 Table Operational State"; + } + + // ipv6 table oper state reason + leaf v6TibOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + + // ipv6 table old oper state reason + leaf v6TibOldOperStQual { + config "false"; + + type l3_VrfOperStateQual; + description "IPV6 Table Operational State Qualifer"; + } + leaf createTs { + config "false"; + type union { + type string; + type uint64; + } + description "Creation Timestamp"; + } + leaf lastChgdTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last State Change Timestamp"; + } + + // bgp route distinguisher + leaf bgpRd { + config "false"; + + type l3_BgpRdBytes; + description "BGP Route Distinguisher"; + } + leaf bgpRdDisp { + config "false"; + type string; + description "BGP Route Distinguisher for Display"; + } + leaf prtclBmp { + config "false"; + type uint32; + description "Protocol Bitmap"; + } + leaf oui { + type string; + description "OUI"; + } + leaf vpnId { + type string; + description "Configure VPN ID"; + } + + // Ftag tree, fabric multicast tree to direct the tenant flood + // and multicast traffic over the fabric + container tree-items { + list Tree-list { + config "false"; + key "id"; + + uses fmcast_Tree-group; + description "Multicast Tree list"; + } + description "Multicast Tree"; + } + + // Layer3 Domain (aka vrf) container for routing protocols + container dom-items { + list Dom-list { + key "name"; + + uses rtctrl_Dom-group; + description "Domain list"; + } + description "Domain"; + } + + // Abstraction of epm database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses epm_Db-group; + description "Database list"; + } + description "Database"; + } + + // Shard chaining policy + container shchp-items { + list ShardChP-list { + config "false"; + key "af"; + + uses topoctrl_ShardChP-group; + description "Shard Chain Policy list"; + } + description "Shard Chain Policy"; + } + + // Routed management interface + container mgmt-items { + list RtdMgmtIf-list { + key "id"; + + uses mgmt_RtdMgmtIf-group; + description "Routed Management Interface list"; + } + description "Routed Management Interface"; + } + + container rsvrfMbr-items { + + list RsVrfMbr-list { + key "tDn"; + + uses l3_RsVrfMbr_source-group; + description "VRF Membership Association list"; + } + description "VRF Membership Association"; + } + + container rsvrfPolicyAtt-items { + + uses l3_RsVrfPolicyAtt_source-group; + description "Vrf Reference to Analytics policy."; + } + + container rsvrfMonitorAtt-items { + + uses l3_RsVrfMonitorAtt_source-group; + description "Vrf Reference to Analytics monitor."; + } + } + + grouping fmcast_Tree-group { + description "Multicast Tree"; + + // Id + leaf id { + config "false"; + + type fmcast_Id; + description "Tree Id"; + } + + // Multicast root for this tree, identified by the node + // ip address + leaf root { + config "false"; + + type mcast_Root; + description "Root"; + } + + // Administrative state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Adminitrative State"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + } + + grouping rtctrl_Dom-group { + description "Domain"; + leaf rd { + type mtx_array_community; + description "Route Distinguisher"; + } + leaf operRd { + config "false"; + type mtx_array_community; + description "Operational Route Distinguisher"; + } + leaf encap { + type string; + description "Encapsulation of MPLS"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; + } + description "Name"; + } + + // This object holds per address family bgp vrf information + container af-items { + list DomAf-list { + key "type"; + + uses rtctrl_DomAf-group; + description "Address Family Domain list"; + } + description "Address Family Domain"; + } + } + + grouping rtctrl_DomAf-group { + description "Address Family Domain"; + + // Type + leaf type { + + type bgp_AfT; + description "Type"; + } + + // This object holds policy to control vpn af + // information for a given vrf + container ctrl-items { + list AfCtrl-list { + key "type"; + + uses rtctrl_AfCtrl-group; + description "Virtual Private Network Control Policy list"; + } + description "Virtual Private Network Control Policy"; + } + + container maxrts-items { + + uses l3_MaxRoutes-group; + description "Maximum Routes Policy"; + } + } + + grouping rtctrl_AfCtrl-group { + description "Virtual Private Network Control Policy"; + + // Type + leaf type { + + type bgp_AfT; + description "Type"; + } + + // Route policy holds all route policy entries and route controls + container rttp-items { + list RttP-list { + key "type"; + + uses rtctrl_RttP-group; + description "Route Policy list"; + } + description "Route Policy"; + } + } + + grouping l3_MaxRoutes-group { + description "Maximum Routes Policy"; + + // Maximum number of routes allowed + leaf maxRt { + + type l3_MaxLmt; + description "Maximum number of routes allowed"; + } + + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { + + type l3_MaxRtThresh; + description "Threshold percentage at which to generate a warning"; + } + + leaf reinstall { + + type l3_MaxRtThresh; + description "Reinstall previous rejected route due to over maximum route limit"; + } + + leaf action { + + type l3_MaxRtAct; + description "Action to do when warning message limit is exceeded"; + } + } + + grouping topoctrl_ShardChP-group { + description "Shard Chain Policy"; + + // Address family for chaining + leaf af { + config "false"; + + type nw_AddrF; + description "Address Family"; + } + + // Redundancy node, determines the node to go to in case of + // a local node failure + leaf node { + config "false"; + + type topoctrl_ShardChNode; + description "Node"; + } + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; + } + } + + grouping l3cap_Prov-group { + description "L3 Capability Provider"; + + // Subject consuming the capability + leaf subj { + config "false"; + + type l3cap_Subj; + description "Subject"; + } + + // Every Consumer has a Subject. + // Subject represents the entity which consumes the capability. + // Namespaces which have concrete consumers, define the Subject property + // and its types + // Max capability available + leaf total { + config "false"; + + type cap_Counter; + description "TBD"; + } + + // Remaining capability available + leaf remaining { + config "false"; + + type cap_Counter; + description "TBD"; + } + + // utilization indicator in percentages of consiumption + leaf utilization { + config "false"; + + type cap_StorageHint; + description "TBD"; + } + + // Type of the Rule consumed by this consumer. + leaf type { + config "false"; + + type cap_RuleT; + description "TBD"; + } + } + + grouping ipfib_Entity-group { + description "Ipfib Entity Information"; + + // Holds per domain (vrf) information + // Ephemeral data + container dom-items { + + // Ephemeral data + list Dom-list { + config "false"; + key "name"; + + uses ipfib_Dom-group; + description "Domain: Virtual Router Context (VRF) list"; + } + description "Domain: Virtual Router Context (VRF)"; + } + } + + grouping ipfib_Dom-group { + description "Domain: Virtual Router Context (VRF)"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + container label-items { + + // Ephemeral data + list Label-list { + config "false"; + key "label"; + + uses ipfib_Label-group; + description "The push/swap label for the given FEC list"; + } + description "The push/swap label for the given FEC"; + } + + // Holds route information for a particular destination address + // Ephemeral data + container pfx-items { + + // Ephemeral data + list Route-list { + config "false"; + key "pfxAddr"; + + uses ipfib_Route-group; + description "Prefix Info list"; + } + description "Prefix Info"; + } + } + + grouping ipfib_Label-group { + description "The push/swap label for the given FEC"; + + // Ephemeral data + leaf label { + config "false"; + type uint32; + description "Segment Routing Label value"; + } + leaf tableId { + config "false"; + type uint32; + description "Prefix/Table ID. Usually the VRF Id"; + } + + leaf fectype { + config "false"; + + type ipfib_FecType; + description "The type of Forwarding Equivalence Class"; + } + leaf fec { + config "false"; + type string; + description "Typicaly the Destination IP address"; + } + + // Ephemeral data + container nh-items { + + // Ephemeral data + list MplsNextHopInfo-list { + config "false"; + key "nhAddr"; + + uses ipfib_MplsNextHopInfo-group; + description "NextHop adjacency information for label entries list"; + } + description "NextHop adjacency information for label entries"; + } + } + + grouping ipfib_MplsNextHopInfo-group { + description "NextHop adjacency information for label entries"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + leaf nhAddr { + config "false"; + type address_Ip; + description + "NextHop IP address. It could be a connected or a + remote Next Hop"; + } + + // Outgoing interface + // Ephemeral data + leaf nhIntf { + config "false"; + + type nw_IfId; + description + "NextHop Interface ID. The port on the switch + where the next hop ip address is learnt"; + } + + // drop, receive, attached + // Ephemeral data + leaf routeType { + config "false"; + + type ipfib_SpecialAdj; + description + "Special route type. Marks if its a + drop/direct/supervisor route"; + } + + // Ephemeral data + leaf partialInst { + config "false"; + type string; + description "Identifies if the route is partially installed"; + } + + // Ephemeral data + leaf outLabel { + config "false"; + type string; + description "Outgoing label Stack for MPLS next hops"; + } + + // MPLS label operation + // Ephemeral data + leaf outOperation { + config "false"; + + type ipfib_OutOperEnum; + description + "Operation performed on outgoing packets for MPLS next hops. + Push/Swap/Pop"; + } + } + + grouping ipfib_Route-group { + description "Prefix Info"; + + // Ephemeral data + leaf pfxAddr { + config "false"; + type address_Ip; + description "Prefix address. IPv4 or IPv6"; + } + + leaf addrType { + config "false"; + + type ipfib_AddressType; + description "Address Family. Ipv4 or Ipv6"; + } + leaf partialInst { + config "false"; + type boolean; + description "Identifies if the prefix is partially installed."; + } + + // Ephemeral data + container nh-items { + + // Ephemeral data + list RouteNextHopInfo-list { + config "false"; + key "nhAddr"; + + uses ipfib_RouteNextHopInfo-group; + description "NextHop adjacency information list"; + } + description "NextHop adjacency information"; + } + } + + grouping ipfib_RouteNextHopInfo-group { + description "NextHop adjacency information"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Ephemeral data + leaf nhAddr { + config "false"; + type address_Ip; + description + "NextHop IP address. It could be a connected or a + remote Next Hop"; + } + + // Outgoing interface + // Ephemeral data + leaf nhIntf { + config "false"; + + type nw_IfId; + description + "NextHop Interface ID. The port on the switch + where the next hop ip address is learnt"; + } + + // drop, receive, attached + // Ephemeral data + leaf routeType { + config "false"; + + type ipfib_SpecialAdj; + description + "Special route type. Marks if its a + drop/direct/supervisor route"; + } + + // Ephemeral data + leaf partialInst { + config "false"; + type string; + description "Identifies if the route is partially installed"; + } + + // Ephemeral data + leaf outLabel { + config "false"; + type string; + description "Outgoing label Stack for MPLS next hops"; + } + + // MPLS label operation + // Ephemeral data + leaf outOperation { + config "false"; + + type ipfib_OutOperEnum; + description + "Operation performed on outgoing packets for MPLS next hops. + Push/Swap/Pop"; + } + } + + grouping l3vm_Entity-group { + description "L3VM Entity"; + + // as-format type + leaf asFormat { + + type l3vm_AsFormatType; + description "Specifies the Autonomous system number (ASN) notation to asdot format"; + } + leaf vrfmemberchangeretainl3cfg { + type boolean; + default "true"; + description "vrf member change retain l3 config"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Interface Object for L3VM + container if-items { + list L3vmIf-list { + key "id"; + + uses l3vm_L3vmIf-group; + description "L3VM related information for the interface list"; + } + description "L3VM related information for the interface"; + } + + // This objects hold per l3vm instance information. There is only + // one instance of l3vm running in the system today + container inst-items { + + uses l3vm_Inst-group; + description "L3VM Instance"; + } + } + + grouping l3vm_L3vmIf-group { + description "L3VM related information for the interface"; + leaf soo { + type mtx_array_community; + description "Site Of Origin information for the interface"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping l3vm_Inst-group { + description "L3VM Instance"; + leaf vrfAllocId { + config "false"; + type uint32; + description "Allocated VRF ID"; + } + leaf tblAllocId { + config "false"; + type uint32; + description "Allocated Table ID"; + } + leaf featureSet { + config "false"; + type uint32; + description "Feature Set Bitmap"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + config "false"; + + type nw_InstCtrl; + description "Controls"; + } + + // DomainMbrIf class + container dommbr-items { + list DomMbrIf-list { + config "false"; + key "id"; + + uses l3_DomMbrIf-group; + description "Domain Member Interface list"; + } + description "Domain Member Interface"; + } + + // This objects hold runtime information on l3vm tables + container tbl-items { + list Tbl-list { + config "false"; + key "id"; + + uses l3vm_Tbl-group; + description "Table Entity list"; + } + description "Table Entity"; + } + } + + grouping l3_DomMbrIf-group { + description "Domain Member Interface"; + + // ifindex + leaf id { + config "false"; + + type nw_IfId; + description "Interface ID"; + } + leaf iod { + config "false"; + type uint32; + description "IOD"; + } + + // vrfId + leaf vrfId { + config "false"; + + type l3_VrfId; + description "VRF ID"; + } + + // old vrfId + leaf oldVrfId { + config "false"; + + type l3_VrfId; + description "Old VRF ID"; + } + + // vrf name + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF Name"; + } + + // old vrf name + leaf oldVrfName { + config "false"; + + type l3_VrfName; + description "Old VRF Name"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + + // gsdb context type + leaf gsdbCtxType { + config "false"; + + type l3_VrfGsdbCtxType; + description "GSDB Context Type"; + } + + leaf name { + config "false"; + + type naming_Name; + description "Name"; + } + } + + grouping l3vm_Tbl-group { + description "Table Entity"; + leaf id { + config "false"; + type uint32; + description "Table ID"; + } + leaf gsdbCtx { + config "false"; + type uint32; + description "GSDB Context"; + } + leaf rtLmtMax { + config "false"; + type uint32; + description "Maximum Number of Routes Supported"; + } + leaf rtLmtWarn { + config "false"; + type uint32; + description "Route Warning Limit"; + } + leaf rtLmtWarnOnly { + config "false"; + type boolean; + description "Route Limit Warning Only"; + } + leaf rtLmtWarnPct { + config "false"; + type uint8; + description "Route Limit Warning Threshold (percentage)"; + } + leaf rtLmtReinstPct { + config "false"; + type uint8; + description "Route Limit Reinstall Threshold (percentage)"; + } + } + + grouping urib_Entity4-group { + description "Urib ipv4 root element"; + + // Specific to v4 + container table4-items { + list Table4-list { + config "false"; + key "vrfName"; + + uses urib_Table4-group; + description "IPv4 urib table. list"; + } + description "IPv4 urib table."; + } + } + + grouping urib_Table4-group { + description "IPv4 urib table."; + + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF name"; + } + + leaf routeCount { + config "false"; + + type urib_Counter32; + description "Total number of route in this table"; + } + + // Specific to v4 + // Ephemeral data + container route4-items { + + // Ephemeral data + list Route4-list { + config "false"; + key "prefix"; + + uses urib_Route4-group; + description "ipv4 route list"; + } + description "ipv4 route"; + } + + // Specific to v4 + // Ephemeral data + container summary-items { + + uses urib_SummaryTable4-group; + description "IPv4 urib table summary."; + } + } + + grouping urib_Route4-group { + description "ipv4 route"; + + // Ephemeral data + leaf prefix { + config "false"; + type address_Ip; + description "Route address with mask"; + } + + // Ephemeral data + leaf uBestNextHopCount { + config "false"; + type uint32; + description "Number of unicast best next hop"; + } + + // Ephemeral data + leaf mBestNextHopCount { + config "false"; + type uint32; + description "Number of multicast best next hop"; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Route flags."; + } + + // Ephemeral data + leaf sortKey { + config "false"; + type uint32; + description "Eibgp mixed-path sort key."; + } + + // Ephemeral data + leaf pendingUfdm { + config "false"; + type boolean; + description "Waiting to be send to UFDM."; + } + + // Ephemeral data + leaf pendingHw { + config "false"; + type boolean; + description "UFDM sent, waiting for ack from HW."; + } + + // Specific to v4 + // Ephemeral data + container nh4-items { + + // Ephemeral data + list NextHop4-list { + config "false"; + key "id"; + + uses urib_NextHop4-group; + description "IPV4 next hop. list"; + } + description "IPV4 next hop."; + } + } + + grouping urib_NextHop4-group { + description "IPV4 next hop."; + + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "Unique id among all nh of the route. Only used internally."; + } + + // Ephemeral data + leaf address { + config "false"; + type address_Ip; + description "Next-hop address."; + } + + // Ephemeral data + leaf bindinglabel { + config "false"; + type uint32; + description "SRTE binding label"; + } + + // Ephemeral data + leaf isBest { + config "false"; + type boolean; + description "Is the next-hop in the best list"; + } + + // Ephemeral data + leaf vrf { + config "false"; + + type l3_VrfName; + description "VRF name."; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Interface name."; + } + + // Ephemeral data + leaf owner { + config "false"; + type string; + description "local, attached-export, static or unknown."; + } + + // Ephemeral data + leaf preference { + config "false"; + type uint32; + description "Preference."; + } + + // Ephemeral data + leaf metric { + config "false"; + type uint32; + description "Metric."; + } + + // Ephemeral data + leaf uptime { + config "false"; + + type urib_TimeStr; + description "Elapsed time since this next hop has been added/modified."; + } + + // Ephemeral data + leaf routeType { + config "false"; + type string; + description "Type."; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Client defined tag."; + } + + // Ephemeral data + leaf segmentId { + config "false"; + type uint32; + description "Client provided segment ID. 0 means not set."; + } + + // Ephemeral data + leaf segidType { + config "false"; + type string; + description "Client provided segment type. 0 means not set."; + } + + // Ephemeral data + leaf tunnelId { + config "false"; + type uint32; + description "Client provided tunnel ID. 0 means not set."; + } + + // Support for VXLAN encap type only with EVPN + // Ephemeral data + leaf encapType { + config "false"; + + type urib_NextHopEncapType; + description "Either VXLAN or none."; + } + + // Ephemeral data + leaf vtepIpAddress { + config "false"; + type address_Ip; + description "VxLAN VTEP IP address."; + } + + // Ephemeral data + leaf vtepUnderlayVrfId { + config "false"; + type uint32; + description "VxLAN VTEP underlay VRF ID."; + } + + // Ephemeral data + leaf labelStack { + config "false"; + type string; + description "MPLS label stack."; + } + + // Ephemeral data + leaf nhlfeOwner { + config "false"; + type string; + description "nhlfe owner name."; + } + + // Internal use. + // Urib doesn't know how to interpret client data + // Ephemeral data + leaf clientData { + config "false"; + + type urib_YesNo; + description "Yes if client put data in the next-hop."; + } + + // Ephemeral data + leaf recursiveNextHopPrefix { + config "false"; + type address_Ip; + description "Recursive nexthop."; + } + + // Ephemeral data + leaf xriBgpOrigin { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf xriBgpPeer { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf tlv { + config "false"; + type string; + description "Type-Length-Value; client provided opaque data."; + } + + // Ephemeral data + leaf tlvExtentedCommunity { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf tlvAttachExport { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Flags, each bit has a different meaning."; + } + + // Ephemeral data + leaf nhlfeFlags { + config "false"; + type uint32; + description "Next-hop Label Forwarding flags."; + } + + // Ephemeral data + leaf tlvType { + config "false"; + type uint32; + description "Type-Length-Value type."; + } + } + + grouping urib_SummaryTable4-group { + description "IPv4 urib table summary."; + + // Ephemeral data + leaf route_total { + config "false"; + type uint32; + description "Total route count."; + } + + // Ephemeral data + leaf uroute_total { + config "false"; + type uint32; + description "unicast route count."; + } + + // Ephemeral data + leaf path_total { + config "false"; + type uint32; + description "Total path count."; + } + + // Ephemeral data + leaf mpath_total { + config "false"; + type uint32; + description "multicast path count."; + } + + // Ephemeral data + leaf routesPerSubnet { + config "false"; + type string; + description "Total number of route per mask in this table"; + } + } + + grouping urib_Entity6-group { + description "Urib ipv6 root element"; + + // Specific to v6 + container table6-items { + list Table6-list { + config "false"; + key "vrfName"; + + uses urib_Table6-group; + description "IPv6 urib table list"; + } + description "IPv6 urib table"; + } + } + + grouping urib_Table6-group { + description "IPv6 urib table"; + + leaf vrfName { + config "false"; + + type l3_VrfName; + description "VRF name"; + } + + leaf routeCount { + config "false"; + + type urib_Counter32; + description "Total number of route in this table"; + } + + // Specific to v6 + // Ephemeral data + container route6-items { + + // Ephemeral data + list Route6-list { + config "false"; + key "prefix"; + + uses urib_Route6-group; + description "ipv6 urib route list"; + } + description "ipv6 urib route"; + } + + // Specific to v6 + // Ephemeral data + container summary-items { + + uses urib_SummaryTable6-group; + description "IPv6 urib table summary."; + } + } + + grouping urib_Route6-group { + description "ipv6 urib route"; + + // Ephemeral data + leaf prefix { + config "false"; + type address_Ip; + description "Route address with mask"; + } + + // Ephemeral data + leaf uBestNextHopCount { + config "false"; + type uint32; + description "Number of unicast best next hop"; + } + + // Ephemeral data + leaf mBestNextHopCount { + config "false"; + type uint32; + description "Number of multicast best next hop"; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Route flags."; + } + + // Ephemeral data + leaf sortKey { + config "false"; + type uint32; + description "Eibgp mixed-path sort key."; + } + + // Ephemeral data + leaf pendingUfdm { + config "false"; + type boolean; + description "Waiting to be send to UFDM."; + } + + // Ephemeral data + leaf pendingHw { + config "false"; + type boolean; + description "UFDM sent, waiting for ack from HW."; + } + + // Specific to v6 + // Ephemeral data + container nh6-items { + + // Ephemeral data + list NextHop6-list { + config "false"; + key "id"; + + uses urib_NextHop6-group; + description "ipv6 next hop list"; + } + description "ipv6 next hop"; + } + } + + grouping urib_NextHop6-group { + description "ipv6 next hop"; + + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "Unique id among all nh of the route. Only used internally."; + } + + // Ephemeral data + leaf address { + config "false"; + type address_Ip; + description "Next-hop address."; + } + + // Ephemeral data + leaf bindinglabel { + config "false"; + type uint32; + description "SRTE binding label"; + } + + // Ephemeral data + leaf isBest { + config "false"; + type boolean; + description "Is the next-hop in the best list"; + } + + // Ephemeral data + leaf vrf { + config "false"; + + type l3_VrfName; + description "VRF name."; + } + + // Ephemeral data + leaf interfaceName { + config "false"; + type string; + description "Interface name."; + } + + // Ephemeral data + leaf owner { + config "false"; + type string; + description "local, attached-export, static or unknown."; + } + + // Ephemeral data + leaf preference { + config "false"; + type uint32; + description "Preference."; + } + + // Ephemeral data + leaf metric { + config "false"; + type uint32; + description "Metric."; + } + + // Ephemeral data + leaf uptime { + config "false"; + + type urib_TimeStr; + description "Elapsed time since this next hop has been added/modified."; + } + + // Ephemeral data + leaf routeType { + config "false"; + type string; + description "Type."; + } + + // Ephemeral data + leaf tag { + config "false"; + type uint32; + description "Client defined tag."; + } + + // Ephemeral data + leaf segmentId { + config "false"; + type uint32; + description "Client provided segment ID. 0 means not set."; + } + + // Ephemeral data + leaf segidType { + config "false"; + type string; + description "Client provided segment type. 0 means not set."; + } + + // Ephemeral data + leaf tunnelId { + config "false"; + type uint32; + description "Client provided tunnel ID. 0 means not set."; + } + + // Support for VXLAN encap type only with EVPN + // Ephemeral data + leaf encapType { + config "false"; + + type urib_NextHopEncapType; + description "Either VXLAN or none."; + } + + // Ephemeral data + leaf vtepIpAddress { + config "false"; + type address_Ip; + description "VxLAN VTEP IP address."; + } + + // Ephemeral data + leaf vtepUnderlayVrfId { + config "false"; + type uint32; + description "VxLAN VTEP underlay VRF ID."; + } + + // Ephemeral data + leaf labelStack { + config "false"; + type string; + description "MPLS label stack."; + } + + // Ephemeral data + leaf nhlfeOwner { + config "false"; + type string; + description "nhlfe owner name."; + } + + // Internal use. + // Urib doesn't know how to interpret client data + // Ephemeral data + leaf clientData { + config "false"; + + type urib_YesNo; + description "Yes if client put data in the next-hop."; + } + + // Ephemeral data + leaf recursiveNextHopPrefix { + config "false"; + type address_Ip; + description "Recursive nexthop."; + } + + // Ephemeral data + leaf xriBgpOrigin { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf xriBgpPeer { + config "false"; + type string; + description "Extended route information comming from BGP."; + } + + // Ephemeral data + leaf tlv { + config "false"; + type string; + description "Type-Length-Value; client provided opaque data."; + } + + // Ephemeral data + leaf tlvExtentedCommunity { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf tlvAttachExport { + config "false"; + type string; + description "Type-Length-Value."; + } + + // Ephemeral data + leaf flags { + config "false"; + type uint32; + description "Flags, each bit has a different meaning."; + } + + // Ephemeral data + leaf nhlfeFlags { + config "false"; + type uint32; + description "Next-hop Label Forwarding flags."; + } + + // Ephemeral data + leaf tlvType { + config "false"; + type uint32; + description "Type-Length-Value type."; + } + } + + grouping urib_SummaryTable6-group { + description "IPv6 urib table summary."; + + // Ephemeral data + leaf route_total { + config "false"; + type uint32; + description "Total route count."; + } + + // Ephemeral data + leaf uroute_total { + config "false"; + type uint32; + description "unicast route count."; + } + + // Ephemeral data + leaf path_total { + config "false"; + type uint32; + description "Total path count."; + } + + // Ephemeral data + leaf mpath_total { + config "false"; + type uint32; + description "multicast path count."; + } + + // Ephemeral data + leaf routesPerSubnet { + config "false"; + type string; + description "Total number of route per mask in this table"; + } + } + + grouping uribv4_Entity-group { + description "IPv4 Unicast Routing Information Base Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "name"; + + uses uribv4_Dom-group; + description "Domain list"; + } + description "Domain"; + } + } + + grouping uribv4_Dom-group { + description "Domain"; + + // Operational state + leaf operSt { + config "false"; + + type rib_DomOperSt; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container db-items { + list Db-list { + config "false"; + key "type"; + + uses uribv4_Db-group; + description "Database list"; + } + description "Database"; + } + } + + grouping uribv4_Db-group { + description "Database"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + leaf type { + config "false"; + + type rib_DbT; + description "Type"; + } + + // Route + container rt-items { + list Route-list { + config "false"; + key "prefix"; + + uses uribv4_Route-group; + description "Route list"; + } + description "Route"; + } + } + + grouping uribv4_Route-group { + description "Route"; + leaf prefix { + config "false"; + type address_Ip; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv4_Nexthop-group; + description "Nexthop Record list"; + } + description "Nexthop Record"; + } + + // URIB route ownership record + container owner-items { + list RouteOwner-list { + config "false"; + key "owner"; + + uses uribv4_RouteOwner-group; + description "Route Owner list"; + } + description "Route Owner"; + } + } + + grouping uribv4_Nexthop-group { + description "Nexthop Record"; + + // Owner + leaf owner { + config "false"; + + type rib_OwnerT; + description "Nexthop Owner"; + } + leaf addr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop interface + leaf if { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + + // Nexthop vrf + leaf vrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + + // NH type + leaf type { + config "false"; + + type rib_NhT; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + } + + grouping uribv4_RouteOwner-group { + description "Route Owner"; + + // Owner's name + leaf owner { + config "false"; + + type rib_OwnerT; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv4_Nexthop-group; + description "Nexthop Record list"; + } + description "Nexthop Record"; + } + + container rsrouteOwnerToNexthopAtt-items { + + list RsRouteOwnerToNexthopAtt-list { + key "tDn"; + + uses uribv4_RsRouteOwnerToNexthopAtt_source-group; + } + } + } + + grouping uribv6_Entity-group { + description "Unicast Routing Information Base Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Domain (vrf) information + container dom-items { + list Dom-list { + config "false"; + key "name"; + + uses uribv6_Dom-group; + description "Domain list"; + } + description "Domain"; + } + } + + grouping uribv6_Dom-group { + description "Domain"; + + // Operational state + leaf operSt { + config "false"; + + type rib_DomOperSt; + description "TBD"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container db-items { + list Db-list { + config "false"; + key "type"; + + uses uribv6_Db-group; + description "Database list"; + } + description "Database"; + } + } + + grouping uribv6_Db-group { + description "Database"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + leaf type { + config "false"; + + type rib_DbT; + description "Type"; + } + + // Route + container rt-items { + list Route-list { + config "false"; + key "prefix"; + + uses uribv6_Route-group; + description "Route list"; + } + description "Route"; + } + } + + grouping uribv6_Route-group { + description "Route"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf prefix { + config "false"; + type address_Ip; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv6_Nexthop-group; + description "Nexthop record list"; + } + description "Nexthop record"; + } + + // URIB route ownership record + container owner-items { + list RouteOwner-list { + config "false"; + key "owner"; + + uses uribv6_RouteOwner-group; + description "Route Owner list"; + } + description "Route Owner"; + } + } + + grouping uribv6_Nexthop-group { + description "Nexthop record"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Owner + leaf owner { + config "false"; + + type rib_OwnerT; + description "Nexthop Owner"; + } + leaf addr { + config "false"; + type address_Ip; + description "Nexthop Address"; + } + + // Nexthop interface + leaf if { + config "false"; + + type nw_IfId; + description "Nexthop Interface"; + } + + // Nexthop vrf + leaf vrf { + config "false"; + + type l3_VrfName; + description "Nexthop VRF"; + } + + // NH type + leaf type { + config "false"; + + type rib_NhT; + description "TBD"; + } + } + + grouping uribv6_RouteOwner-group { + description "Route Owner"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Owner's name + leaf owner { + config "false"; + + type rib_OwnerT; + description "TBD"; + } + + // URIB next-hop database record + container nh-items { + list Nexthop-list { + config "false"; + key "owner addr if vrf"; + + uses uribv6_Nexthop-group; + description "Nexthop record list"; + } + description "Nexthop record"; + } + } + + grouping mmode_Entity-group { + description "MMODE Entity"; + + // This objects holds per mmode instance information. There is + // only one instance of mmode running in the system today + container inst-items { + + uses mmode_Inst-group; + description "MMODE Instance"; + } + + // This objects holds maintenance mode profile. + container profile-items { + list Profile-list { + key "profType"; + + uses mmode_Profile-group; + description "MMODE Profile list"; + } + description "MMODE Profile"; + } + } + + grouping mmode_Inst-group { + description "MMODE Instance"; + + // Maintenance mode action + leaf modeAction { + + type mmode_MaintModeActionType; + description "Maintenance Mode Action"; + } + + // Maintenance mode action status + leaf modeActionStatus { + config "false"; + + type mmode_MaintModeActionStatusType; + description "Maintenance Mode Action Status"; + } + leaf modeSwitchInProgress { + config "false"; + type boolean; + description "Maintenance Mode Switch In Progress"; + } + + // Maintenance system mode value + leaf sysMode { + config "false"; + + type mmode_MaintModeType; + description "Maintenance System Mode"; + } + + // Maintenance mode timeout value + leaf timeout { + + type mmode_TimeoutInterval; + description "Timeout"; + } + leaf onReloadResetReasonHwError { + type boolean; + description "On-Reload Reset-Reason Harware Error"; + } + leaf onReloadResetReasonSvcFailure { + type boolean; + description "On-Reload Reset-Reason Critical Service Failure"; + } + leaf onReloadResetReasonKernFailure { + type boolean; + description "On-Reload Reset-Reason Kernel Panic"; + } + leaf onReloadResetReasonWdogTimeout { + type boolean; + description "On-Reload Reset-Reason Watchdog Timeout"; + } + leaf onReloadResetReasonFatalError { + type boolean; + description "On-Reload Reset-Reason Fatal Error"; + } + leaf onReloadResetReasonLcFailure { + type boolean; + description "On-Reload Reset-Reason LC Failure"; + } + leaf onReloadResetReasonManualReload { + type boolean; + description "On-Reload Reset-Reason Manual Reload"; + } + leaf onReloadResetReasonMaintenance { + type boolean; + description "On-Reload Reset-Reason Maintenance Mode"; + } + leaf onReloadResetReasonAnyOther { + type boolean; + description "On-Reload Reset-Reason Any Other Reset"; + } + leaf snapshotDelay { + type uint16; + default "120"; + description "Snapshot Delay Time"; + } + leaf maintDelay { + type uint16; + default "120"; + description "Maintenance Delay Time"; + } + leaf useCustomProfile { + type boolean; + description "Use Custom Profile"; + } + } + + grouping mmode_Profile-group { + description "MMODE Profile"; + + // Maintenance profile type + leaf profType { + + type mmode_MaintProfileType; + description "Maintenance Profile Type"; + } + + // This objects holds maintenance mode profile entries. + container entry-items { + list ProfileEntry-list { + key "sequence"; + + uses mmode_ProfileEntry-group; + description "MMODE Profile Entry list"; + } + description "MMODE Profile Entry"; + } + } + + grouping mmode_ProfileEntry-group { + description "MMODE Profile Entry"; + leaf sequence { + type uint16; + description "Profile Entry Sequence Number"; + } + leaf parentSequence { + type uint16; + default "0"; + description "Profile Entry Parent Sequence Number"; + } + leaf configCmd { + type string; + description "Config Command to be applied"; + } + leaf configCmdValid { + config "false"; + type boolean; + description "Config Command is Valid"; + } + } + + grouping nw_Vdc-group { + description "VDC"; + leaf name { + type string { + length "0..63"; + } + default "switch"; + description "VDC name"; + } + + // vdc ID + leaf id { + + type l2_VdcId { + range "1"; + } + description "ID Property has READ-Create access."; + } + + container limres-items { + + uses resmgr_LimRes-group; + description "Resource configuration"; + } + } + + grouping resmgr_LimRes-group { + description "Resource configuration"; + leaf vlanMin { + type uint16 { + range "16..4094"; + } + default "16"; + description "Minimum VLANs to allocate"; + } + leaf vlanMax { + type uint16 { + range "16..4094"; + } + default "4094"; + description "Maximum VLANs to allocate"; + } + leaf vrfMin { + type uint16 { + range "2..4096"; + } + default "2"; + description "Minimum vrf resources to allocate"; + } + leaf vrfMax { + type uint16 { + range "2..4096"; + } + default "4096"; + description "Maximum vrf resources to allocate"; + } + leaf poMin { + type uint16 { + range "0..511"; + } + default "0"; + description "Minimum port channels to allocate"; + } + leaf poMax { + type uint16 { + range "0..511"; + } + default "511"; + description "Maximum port channels to allocate"; + } + leaf u4rtMemMin { + type uint16 { + range "1..768"; + } + default "248"; + description "Minimum route memory to allocate for unicast Ipv4"; + } + leaf u4rtMemMax { + type uint16 { + range "1..768"; + } + default "248"; + description "Maximum route memory to allocate for unicast Ipv4"; + } + leaf u6rtMemMin { + type uint16 { + range "1..512"; + } + default "96"; + description "Minimum route memory to allocate for unicast Ipv6"; + } + leaf u6rtMemMax { + type uint16 { + range "1..512"; + } + default "96"; + description "Maximum route memory to allocate for unicast Ipv6"; + } + leaf m4rtMemMin { + type uint16 { + range "3..150"; + } + default "58"; + description "Minimum route memory to allocate for multicast Ipv4"; + } + leaf m4rtMemMax { + type uint16 { + range "3..150"; + } + default "58"; + description "Maxiimum route memory to allocate for multicast Ipv4"; + } + leaf m6rtMemMin { + type uint16 { + range "3..20"; + } + default "8"; + description "Minimum route memory to allocate for multicast Ipv6"; + } + leaf m6rtMemMax { + type uint16 { + range "3..20"; + } + default "8"; + description "Maximum route memory to allocate for multicast Ipv6"; + } + } + + grouping nxsdk_Entity-group { + description "Nx-sdk Manager"; + + // This objects hold per service-name Inst information + container inst-items { + list Inst-list { + key "serviceName"; + + uses nxsdk_Inst-group; + description "NxSDK service name instances list"; + } + description "NxSDK service name instances"; + } + + // This objects hold per remote port information + container remoteport-items { + list RemotePort-list { + key "port"; + + uses nxsdk_RemotePort-group; + description "NxSDK remote port instance list"; + } + description "NxSDK remote port instance"; + } + + // This objects hold profile information + container profile-items { + list Profile-list { + key "profileName"; + + uses nxsdk_Profile-group; + description "NxSDK profile list"; + } + description "NxSDK profile"; + } + } + + grouping nxsdk_Inst-group { + description "NxSDK service name instances"; + leaf serviceName { + type string { + length "0..20"; + } + description "NxSDK service name"; + } + leaf profileName { + type string { + length "0..20"; + } + description "Name of the profile"; + } + + leaf serviceSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK service name error state"; + } + } + + grouping nxsdk_RemotePort-group { + description "NxSDK remote port instance"; + leaf port { + type uint16 { + range "50002..51000"; + } + description "Remote port value"; + } + + leaf vrfName { + + type l3_VrfName { + length "0..32"; + } + description "VRF name"; + } + + leaf remotePortSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK remote port state"; + } + container remotesvcinst-items { + list RemoteSvcInst-list { + key "serviceName"; + + uses nxsdk_RemoteSvcInst-group; + description "Remote service name instances list"; + } + description "Remote service name instances"; + } + } + + grouping nxsdk_RemoteSvcInst-group { + description "Remote service name instances"; + leaf serviceName { + type string { + length "0..20"; + } + description "NxSDK service name"; + } + leaf profileName { + type string { + length "0..20"; + } + description "Name of the profile"; + } + + leaf serviceSt { + config "false"; + + type nxsdk_ServiceSt; + description "NxSDK service name error state"; + } + } + + grouping nxsdk_Profile-group { + description "NxSDK profile"; + leaf profileName { + type string { + length "0..20"; + } + description "Name of the Profile"; + } + + leaf systemStateMod { + + type nxsdk_SecLevel; + description "Modify the state of the system to Permit/Throttle all write API calls"; + } + } + + grouping pktmgr_Entity-group { + description "Pktmgr Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This objects hold per pktmgr instance information. There is + // only one instance of pktmgr running in the system today + container inst-items { + + uses pktmgr_Inst-group; + description "Pktmgr Instance"; + } + } + + grouping pktmgr_Inst-group { + description "Pktmgr Instance"; + + // logging level enabling + leaf loggingLevel { + + type arp_LoggingLevel; + default "critical"; + description "Logging Level"; + } + + // Setting Rate-limit + leaf rateLimitDirection { + + type pktmgr_RateLimitDirection; + description "Rate Limit Direction"; + } + + // Default value handled in local MO type + leaf rateLimitPps { + + // Type is a Local-MO-Defined-Type + type pktmgr_RateLimitPps_Inst_rateLimitPps; + description "Rate Limit Pps"; + } + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // Interfce MO + container if-items { + list If-list { + key "id"; + + uses pktmgr_If-group; + description "Pktmgr Instance list"; + } + description "Pktmgr Instance"; + } + } + + grouping pktmgr_If-group { + description "Pktmgr Instance"; + + leaf rateLimitDirection { + + type pktmgr_RateLimitDirection; + description "Rate Limit Direction"; + } + + // Default value handled in local MO type + leaf rateLimitPps { + + // Type is a Local-MO-Defined-Type + type pktmgr_RateLimitPps_If_rateLimitPps; + description "Rate Limit Pps"; + } + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; + } + } + + grouping proc_System-group { + description "System Process Information"; + + // Maximum memory allocated for the system + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum Memory Allocated"; + } + leaf upTs { + config "false"; + type string; + description "Up Time of the device"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // Process entry in the system + container proc-items { + list Proc-list { + config "false"; + key "id"; + + uses proc_Proc-group; + description "Process list"; + } + description "Process"; + } + + // System core list + container syscore-items { + + uses proc_SysCore-group; + description "system cores"; + } + + // System load statistics + container sysload-items { + + uses proc_SysLoad-group; + description "system load"; + } + + // System cpu summary statistics + container syscpusummary-items { + + uses proc_SysCpuSummary-group; + description "system cpu"; + } + + // System memory statistics + container sysmem-items { + + uses proc_SysMem-group; + description "system memory"; + } + } + + grouping proc_Proc-group { + description "Process"; + + // Process id + leaf id { + config "false"; + + type proc_ProcId; + description "Process ID"; + } + + // State of the process + leaf operSt { + config "false"; + + type proc_OperSt; + description "Operational State"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCore-group { + description "system cores"; + leaf numOfCores { + config "false"; + type uint32; + description "Number of cores"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System core details + container core-items { + list Core-list { + config "false"; + key "processId"; + + uses proc_Core-group; + description "system core list"; + } + description "system core"; + } + } + + grouping proc_Core-group { + description "system core"; + leaf processId { + config "false"; + type uint32; + description "Process ID"; + } + leaf vdcId { + config "false"; + type uint32; + description "VDC Id"; + } + leaf moduleNumber { + config "false"; + type uint32; + description "Module Number"; + } + leaf instanceNumber { + config "false"; + type uint32; + description "Instance Number"; + } + leaf processName { + config "false"; + type string; + description "Process Name"; + } + leaf date { + config "false"; + type string; + description "Date"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysLoad-group { + description "system load"; + leaf loadAverage1m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 1 minute preiod of time, represented as float"; + } + leaf loadAverage5m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 5 minute preiod of time, represented as float"; + } + leaf loadAverage15m { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 15 minute preiod of time, represented as float"; + } + leaf loadAverage5sec { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Load average of the cpu in the system for + a 5 second preiod of time, represented as float"; + } + leaf totalProc { + config "false"; + type uint32; + description + "Total number of the processes in the system, + represented as an integer"; + } + leaf runProc { + config "false"; + type uint32; + description + "Total number of the running processes in + the system, represented as an integer"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCpuSummary-group { + description "system cpu"; + leaf user { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the user processes in + the system, represented as a float"; + } + leaf kernel { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + the system, represented as a float"; + } + leaf idle { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Overall CPU idle in the system, represented as a float"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System cpu history statistics + container syscpuhistory-items { + list SysCpuHistory-list { + config "false"; + key "durationname"; + + uses proc_SysCpuHistory-group; + description "system cpu history list"; + } + description "system cpu history"; + } + + // System cpu statistics + container syscpu-items { + list SysCpu-list { + config "false"; + key "id"; + + uses proc_SysCpu-group; + description "system cpu list"; + } + description "system cpu"; + } + } + + grouping proc_SysCpuHistory-group { + description "system cpu history"; + + // cpu history duration name + leaf durationname { + config "false"; + + type proc_CpuHistoryDurationName; + description + "cpu history duration name, it can be last60seconds, + last60minutes, last60hours"; + } + + // history data + leaf usage { + config "false"; + + type proc_CpuHistoryList; + description + "Overall CPU usage in the system for the + last duration time (60sec/60min/60hours)"; + } + + // minimum usage data + leaf usageMin { + config "false"; + + type proc_PerUsage; + description "Minimum of cpu usage for the last duration time (60sec/60min/60hours)"; + } + leaf usageAvg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Average of cpu usage for the last duration time (60sec/60min/60hours)"; + } + + // maximum usage data + leaf usageMax { + config "false"; + + type proc_PerUsage; + description "Maximum of cpu usage for the last duration time (60sec/60min/60hours)"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysCpu-group { + description "system cpu"; + leaf id { + config "false"; + type string; + description + " CPU id/name present in the system, + represented as string"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System cpu statistics + container kernel-items { + + uses proc_Kernel-group; + description "system kernel"; + } + + // System cpu statistics + container total-items { + + uses proc_Total-group; + description "system total"; + } + + // User cpu statistics + container user-items { + + uses proc_User-group; + description "system user"; + } + + // System cpu statistics + container nice-items { + + uses proc_Nice-group; + description "system nice"; + } + + // System cpu statistics + container idle-items { + + uses proc_Idle-group; + description "system total"; + } + + // System cpu statistics + container wait-items { + + uses proc_Wait-group; + description "system wait"; + } + + // System cpu statistics + container irq-items { + + uses proc_Irq-group; + description "system Irq"; + } + + // System cpu statistics + container softirq-items { + + uses proc_Softirq-group; + description "system Irq"; + } + } + + grouping proc_Kernel-group { + description "system kernel"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + this CPU, represented as a float"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description + "Overall CPU usage by the kernel processes in + this CPU, represented as a float"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu kernel max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu kernel min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu kernel max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu kernel stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous kernel stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Total-group { + description "system total"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu total stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu total min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu Total max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu Total min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu Total max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu Total stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous total stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_User-group { + description "system user"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu user stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu user min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu User max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu User min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu User max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu User stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous User stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Nice-group { + description "system nice"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu nice max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu nice min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu nice max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu nice stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous nice stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Idle-group { + description "system total"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu idle max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu Idle min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu Idle max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu idle stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous idle stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Wait-group { + description "system wait"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu wait max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu wait min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu wait max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu wait stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous wait stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Irq-group { + description "system Irq"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu irq max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu irq min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu irq max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu irq stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous irq stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Softirq-group { + description "system Irq"; + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq stat"; + } + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq min"; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu softirq max"; + } + leaf minInstant { + config "false"; + type uint64; + description "cpu softirq min instant"; + } + leaf maxInstant { + config "false"; + type uint64; + description "cpu softirq max instant"; + } + leaf stats { + config "false"; + type uint64; + description "cpu softirq stats"; + } + leaf pct { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "cpu instantaneous softirq stats"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMem-group { + description "system memory"; + leaf total { + config "false"; + type uint64; + description "Total memory in the system represented as an integer"; + } + leaf reserved { + config "false"; + type uint64; + description "Reserved memory for system use, in Kilobytes"; + } + leaf memstatus { + config "false"; + type string; + description "Memory status of the overall system. Indicates OK or not OK"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // System memory Usage + container sysmemusage-items { + + uses proc_SysMemUsage-group; + description "system memory usage"; + } + + // System Free memory + container sysmemfree-items { + + uses proc_SysMemFree-group; + description "system free memory"; + } + + // System Used memory + container sysmemused-items { + + uses proc_SysMemUsed-group; + description "system used memory"; + } + } + + grouping proc_SysMemUsage-group { + description "system memory usage"; + leaf min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used. Recorded minimum value."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum memory usage was recorded."; + } + leaf max { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used. Recorded maximum value."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum memory usage recorded."; + } + leaf avg { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "Average usage of system memory."; + } + leaf curr { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "percentage of system memory used at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMemFree-group { + description "system free memory"; + leaf min { + config "false"; + type uint64; + description "Recorded minimum free memory of system."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum free memory recorded."; + } + leaf max { + config "false"; + type uint64; + description "Recorded maximum free memory of system."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum free memory recorded."; + } + leaf avg { + config "false"; + type uint64; + description "Average free memory of system."; + } + leaf curr { + config "false"; + type uint64; + description "Free memory of the system at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_SysMemUsed-group { + description "system used memory"; + leaf min { + config "false"; + type uint64; + description "Recorded minimum used memory of system."; + } + leaf timemin { + config "false"; + type uint64; + description "Time stamp at when minimum system memory is used."; + } + leaf max { + config "false"; + type uint64; + description "Recorded maximum used memory of system."; + } + leaf timemax { + config "false"; + type uint64; + description "Time stamp at when maximum system memory is used."; + } + leaf avg { + config "false"; + type uint64; + description "Average used memory of system."; + } + leaf curr { + config "false"; + type uint64; + description "Used memory of the system at this instant."; + } + leaf interval { + config "false"; + type string; + description "Interval at which data is collected."; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping proc_Entity-group { + description "Process Entity"; + + // Maximum memory allocated for the system + // Ephemeral data + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum Memory Allocated"; + } + + // Free memory in the system + // Ephemeral data + leaf memFree { + config "false"; + + type proc_ProcMem; + description "Free Memory"; + } + + // CPU Usage in the system + // Ephemeral data + leaf cpuPct { + config "false"; + + type proc_PerUsage; + description "CPU Usage"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + + // Process entry in the system + // Ephemeral data + container process-items { + + // Ephemeral data + list Entry-list { + config "false"; + key "id"; + + uses proc_Entry-group; + description "Process Entry list"; + } + description "Process Entry"; + } + } + + grouping proc_Entry-group { + description "Process Entry"; + + // Process id + // Ephemeral data + leaf id { + config "false"; + + type proc_ProcId; + description "Process id of process. Represented in an integer value"; + } + + // Process name + // Ephemeral data + leaf processName { + config "false"; + + type proc_ProcessName; + description "Process name represented as a string"; + } + + // Start count of the process + // Ephemeral data + leaf startCnt { + config "false"; + + type proc_StartCnt; + description "Number of times the process is started"; + } + + // Program counter + // Ephemeral data + leaf pc { + config "false"; + + type proc_ProgCntr; + description "Address of the program counter represented in integer."; + } + + // Stack pointer + // Ephemeral data + leaf esp { + config "false"; + + type proc_Stack; + description "Process stack pointer represented as an integer address"; + } + + // Process Type + leaf processType { + config "false"; + + type proc_ProcessType; + description "Type to indicate whether the process is a vdc-local/vdc-global/non-sysmgr, represented as an enum"; + } + + // Maximum memory allocated for a process + // Ephemeral data + leaf maxMemAlloc { + config "false"; + + type proc_ProcMem; + description "Maximum memory allocated by the process"; + } + + // Maximum memory used by a process + leaf memUsed { + config "false"; + + type proc_ProcMem; + description "Maximum memory used by the process"; + } + + // Operational state for a process + // Ephemeral data + leaf operState { + config "false"; + + type proc_OperState; + description "State to indicate process status[up/down], represented as an enum"; + } + + // Physical memory used by a process + // Ephemeral data + leaf phyMem { + config "false"; + + type proc_ProcMem; + description "Actual real physical memory used by the process (ram)"; + } + + // Ephemeral data + leaf procArg { + config "false"; + type string; + description "Argument list passed to the process"; + } + + // Ephemeral data + leaf startTime { + config "false"; + type uint64; + description "Start time of process,reported as nano seconds since unix epoch."; + } + + // Ephemeral data + leaf upTime { + config "false"; + type uint64; + description "Amount of time elapsed sine process started,expressed in timetick."; + } + + // Ephemeral data + leaf cpuUsgUsr { + config "false"; + type uint64; + description "Amount of CPU time used in user mode, expressed in timetick."; + } + + // Ephemeral data + leaf cpuUsgSys { + config "false"; + type uint64; + description "Amount of CPU time used in kernal mode, expressed in timetick."; + } + + // Process CPU utilization + // Ephemeral data + leaf cpuUtil { + config "false"; + + type proc_PerUsage; + description "Overall CPU time consumed by this process expressed in percentage."; + } + + // Process Memory Utilization + // Ephemeral data + leaf memUtil { + config "false"; + + type proc_PerUsage; + description "Utilization of RAM by this process expressed in percentage."; + } + + // Ephemeral data + leaf cpuUtil5sec { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 5 second, represented as percent"; + } + + // Ephemeral data + leaf cpuUtil1min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 1 minute, represented as percent"; + } + + // Ephemeral data + leaf cpuUtil5min { + config "false"; + type decimal64 { + fraction-digits 6; + } + description "CPU Utilization of the process for the last 5 minute, represented as percent"; + } + + // Priority of the process + // Ephemeral data + leaf priority { + config "false"; + + type proc_ProcPriority; + description "priority of the process, with which it is started"; + } + + // Ephemeral data + leaf avgCpuUtil { + config "false"; + type uint32; + description "Average CPU Util for the process in microsecond"; + } + + leaf name { + config "false"; + + type naming_Name256; + description "Name"; + } + } + + grouping rpm_Entity-group { + description "Route Policy Map Entity"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; + } + + container inst-items { + + uses rpm_Inst-group; + description "Instance of route policy map"; + } + + // Route control rule for extended community lists + container rtextcom-items { + list Rule-list { + key "name"; + + uses rtextcom_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for access lists + container accesslist-items { + list Rule-list { + key "name"; + + uses rtlist_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for mac-lists + container maclist-items { + list RuleMac-list { + key "name"; + + uses rtmaclist_RuleMac-group; + description "Mac Rule list"; + } + description "Mac Rule"; + } + + // Route map rule + container rtmap-items { + list Rule-list { + key "name"; + + uses rtmap_Rule-group; + description "Rule list"; + } + description "Rule"; + } + + // Expanded Community List + container expcommlist-items { + list ExpandedComList-list { + key "regex expcommname"; + + uses rtmap_ExpandedComList-group; + description "Rule list"; + } + description "Rule"; + } + + // Route control rule for V4 prefix lists + container pfxlistv4-items { + list RuleV4-list { + key "name"; + + uses rtpfx_RuleV4-group; + description "IPv4 Rule list"; + } + description "IPv4 Rule"; + } + + // Route control rule for V6 prefix lists + container pfxlistv6-items { + list RuleV6-list { + key "name"; + + uses rtpfx_RuleV6-group; + description "IPv6 Rule list"; + } + description "IPv6 Rule"; + } + + // Route control rule for regular community lists + container rtregcom-items { + list Rule-list { + key "name"; + + uses rtregcom_Rule-group; + description "Rule list"; + } + description "Rule"; + } + } + + grouping rpm_Inst-group { + description "Instance of route policy map"; + + // Object to hold RPM policy data stored at interface level + container rpmif-items { + list RpmIf-list { + key "id"; + + uses rpm_RpmIf-group; + description "RPM policy data at Interface level list"; + } + description "RPM policy data at Interface level"; + } + + // Object to hold RPM v6 policy data stored at interface level + container rpmv6if-items { + list Rpmv6If-list { + key "id"; + + uses rpm_Rpmv6If-group; + description "RPM v6 policy data at Interface level list"; + } + description "RPM v6 policy data at Interface level"; + } + } + + grouping rpm_RpmIf-group { + description "RPM policy data at Interface level"; + + leaf id { + + type nw_IfId; + description "Interface id over which the pbr policy is configured"; + } + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rpm_ConfigErr; + description "config Error associated with this MO"; + } + } + + grouping rpm_Rpmv6If-group { + description "RPM v6 policy data at Interface level"; + + leaf id { + + type nw_IfId; + description "Interface id over which the pbr policy is configured"; + } + leaf rmapname { + type string { + length "0..63"; + } + description "IP Route map Policy Name"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rpm_ConfigErr; + description "config Error associated with this MO"; + } + } + + grouping rtextcom_Rule-group { + description "Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type of the community list [regular | extended] + leaf type { + + type rtcom_ComT; + default "extended"; + description "Type"; + } + + // Mode + leaf mode { + + type rtcom_Mode; + description "Mode"; + } + + // Extended community list entry + container ent-items { + list Entry-list { + key "order"; + + uses rtextcom_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtExtCommAtt-items { + + uses rtmap_RtExtCommAtt_target-group; + description "Extended Community Attachment"; + } + } + + grouping rtextcom_Entry-group { + description "Entry"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } + + // Extended Rmac community + container extrmac-items { + + uses rtextcom_ExtRmac-group; + description "Extended community Router MAC"; + } + } + + grouping rtextcom_Item-group { + description "Item"; + + // type + leaf type { + + type rtextcom_Type; + description "Type"; + } + + // Scope + leaf scope { + + type rtextcom_Scope; + description "Scope"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtextcom_ExtRmac-group { + description "Extended community Router MAC"; + leaf commRmac { + type address_Mac; + description "RMAC Community Value"; + } + } + + grouping rtlist_Rule-group { + description "Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtlist_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtrtmapRtDstAccAtt-items { + + list RtRtmapRtDstAccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + + container rtrtmapRtDstV6AccAtt-items { + + list RtRtmapRtDstV6AccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6AccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + + container rtrtmapRtAsPathAccAtt-items { + + list RtRtmapRtAsPathAccAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtAsPathAccAtt_target-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtlist_Entry-group { + description "Entry"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; + } + } + + grouping rtmaclist_RuleMac-group { + description "Mac Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtmaclist_Entry-group; + description "Entry list"; + } + description "Entry"; + } + + container rtrtmapRtMacListAtt-items { + + list RtRtmapRtMacListAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtMacListAtt_target-group; + description "Mac List list"; + } + description "Mac List"; + } + } + + grouping rtmaclist_Entry-group { + description "Entry"; + leaf macAddr { + type address_Mac; + description "Mac Address"; + } + leaf macAddrMask { + type address_Mac; + description "Mac Address Mask"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + } + + grouping rtmap_Rule-group { + description "Rule"; + + // Route map pbr-statistics + leaf pbrStatistics { + + type rtmap_AdminSt; + description "Route map pbr-statistics"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Route map entries + container ent-items { + list Entry-list { + key "order"; + + uses rtmap_Entry-group; + description "Entry list"; + } + description "Entry"; + } + } + + grouping rtmap_Entry-group { + description "Entry"; + + // Load Sharing v4 + leaf loadShareV4 { + + type rtmap_AdminSt; + description "Load Sharing V4"; + } + + // Load Sharing v6 + leaf loadShareV6 { + + type rtmap_AdminSt; + description "Load Sharing V6"; + } + + // Force Order v4 + leaf forceOrderV4 { + + type rtmap_AdminSt; + description "Force Order V4"; + } + + // Force Order v6 + leaf forceOrderV6 { + + type rtmap_AdminSt; + description "Force Order V6"; + } + + // Drop On Fail v4 + leaf dropOnFailV4 { + + type rtmap_AdminSt; + description "Drop On Fail V4 for v4 nexthop"; + } + + // Drop On Fail v6 + leaf dropOnFailV6 { + + type rtmap_AdminSt; + description "Drop On Fail V6 for v6 nexthop"; + } + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; + } + + // Action + leaf action { + + type rtflt_Action; + description "Action"; + } + + // Match rule based on regular communities + container mregcomm-items { + + uses rtmap_MatchRegComm-group; + description "Match on Regular Community"; + } + + // Match rule based on extended communities + container mextcomm-items { + + uses rtmap_MatchExtComm-group; + description "Match on Extended Community"; + } + + // Match rule based on route destinations + container mrtdst-items { + + uses rtmap_MatchRtDst-group; + description "Match on Route Destination"; + } + + // Match rule based on IPv6 route destinations + container mrtdstv6-items { + + uses rtmap_MatchRtDstV6-group; + description "Match on V6 Route Destination"; + } + + // Match rule based on ipv4 multicast attributes + container mipv4mcast-items { + + uses rtmap_MatchIPv4Mcast-group; + description "Match on IPv4 Multicast attributes"; + } + + // Match rule based on ipv6 multicast attributes + container mipv6mcast-items { + + uses rtmap_MatchIPv6Mcast-group; + description "Match on IPv6 Multicast attributes"; + } + + // Match rule based on route nexthops + container mrtnh-items { + + uses rtmap_MatchRtNh-group; + description "Match on Route Nexthop"; + } + + // Match rule based on route nexthops ipv6 + container mrtnhv6-items { + + uses rtmap_MatchRtNhV6-group; + description "Match on Route Nexthop Ipv6"; + } + + // Match rule based on route sources + container mrtsrc-items { + + uses rtmap_MatchRtSrc-group; + description "Match on Route Source"; + } + + // Match rule based on route sources ipv6 + container mrtsrcv6-items { + + uses rtmap_MatchRtSrcV6-group; + description "Match on Route Source ipv6"; + } + + // Match rule based on route types + container mrttype-items { + list MatchRtType-list { + key "routeT"; + + uses rtmap_MatchRtType-group; + description "Match on Route Types list"; + } + description "Match on Route Types"; + } + + // Match rule based on route tag + container mrttag-items { + list MatchRtTag-list { + key "tag"; + + uses rtmap_MatchRtTag-group; + description "Match on Route Tag list"; + } + description "Match on Route Tag"; + } + + // Match rule based on source protocol + container msrcprot-items { + list MatchSrcProto-list { + key "proto"; + + uses rtmap_MatchSrcProto-group; + description "Match on Route ASN list"; + } + description "Match on Route ASN"; + } + + // Match rule based on pervasive routes + container mrtpervasive-items { + + uses rtmap_MatchRtPervasive-group; + description "Match on Route Pervasive"; + } + + // Match rule based on AS Path Access List + container mrtacclist-items { + + uses rtmap_MatchAsPathAccessList-group; + description "Match on AS Path Access List"; + } + + // Match rule based on route metric + container mrtmetric-items { + list MatchRtMetric-list { + key "measure deviation"; + + uses rtmap_MatchRtMetric-group; + description "Match on Route Metric list"; + } + description "Match on Route Metric"; + } + + // Match rule based on route asn + container mrtasn-items { + list MatchRtAsn-list { + key "asn"; + + uses rtmap_MatchRtAsn-group; + description "Match on Route Asn list"; + } + description "Match on Route Asn"; + } + + // Match rule based on route Interface + container mrtif-items { + list MatchRtIf-list { + key "id"; + + uses rtmap_MatchRtIf-group; + description "Match on Route Interface list"; + } + description "Match on Route Interface"; + } + + // Match rule based on Ospf-area + container mrtospf-items { + list MatchRtOspf-list { + key "area"; + + uses rtmap_MatchRtOspf-group; + description "Match on Ospf Area ID list"; + } + description "Match on Ospf Area ID"; + } + + // Match rule based on mac-list + container mrtmaclist-items { + + uses rtmap_MatchRtMacList-group; + description "Match on Mac-list"; + } + + // Route map Continue + container scontinue-items { + + uses rtmap_Continue-group; + description "Entry"; + } + + // Set rule based on regular communities + container sregcomm-items { + + uses rtmap_SetRegComm-group; + description "Set Regular Community"; + } + + // Set rule based on generic extended communities + container sextcomm-items { + + uses rtmap_SetExtComm-group; + description "Set Extended Community"; + } + + // Set rule based on cost communities + container sextcommcost-items { + list SetExtCommCost-list { + key "commCrit commId"; + + uses rtmap_SetExtCommCost-group; + description "Set Extcommunity Cost list"; + } + description "Set Extcommunity Cost "; + } + + // Set rule based on color community + container sextcommcolor-items { + + uses rtmap_SetExtCommColor-group; + description "Set Extcommunity Color "; + } + + // Set rule based on rmac community + container sextcommrmac-items { + + uses rtmap_SetExtCommRmac-group; + description "Set Extcommunity RMAC "; + } + + // Set rule based on community list (for deletion) + container scommlist-items { + + uses rtmap_SetCommList-group; + description "Set Extended Community"; + } + + // Set rule based on community list (for deletion) + container sextcommlist-items { + + uses rtmap_SetExtCommList-group; + description "Set Ext Community"; + } + + // Set rule based on route targets communities + container srtt-items { + + uses rtmap_SetRttComm-group; + description "Set Route Target Community"; + } + + // Set rule based on route distance + container srtdist-items { + + uses rtmap_SetRtDist-group; + description "Set Route Distance"; + } + + // Set rule based on route tag + container srttag-items { + + uses rtmap_SetRtTag-group; + description "Set Route Tag"; + } + + // Set rule based on weight + container sweight-items { + + uses rtmap_SetWeight-group; + description "Set Weight"; + } + + // Set rule based on label-index + container slblindex-items { + + uses rtmap_SetLabelIndex-group; + description "Set LabelIndex"; + } + + // Set rule based on preference + container spref-items { + + uses rtmap_SetPref-group; + description "Set Preference"; + } + + // Set rule based on metric + container smetric-items { + + uses rtmap_SetMetric-group; + description "Set Metric"; + } + + // Set rule based on metric type + container smetrict-items { + + uses rtmap_SetMetricType-group; + description "Set Metric Type"; + } + + container sdamp-items { + + uses rtmap_SetDampeningType-group; + description "Set Dampening"; + } + + container sprec-items { + + uses rtmap_SetPrecedence-group; + description "Set Precedence"; + } + + container sprecv6-items { + + uses rtmap_SetV6Precedence-group; + description "Set IPv6 Precedence"; + } + + // Set rule based on ospf-nssa + container snssa-items { + + uses rtmap_SetOspfNssa-group; + description "Set Ospf Nssa"; + } + + // Set rule based on ospf forwarding address + container sfwdaddr-items { + + uses rtmap_SetOspfFwdAddr-group; + description "Set Ospf Forwarding Address"; + } + + // Set rule based on next hop + container nh-items { + list SetNh-list { + key "addr"; + + uses rtmap_SetNh-group; + description "Set Nexthop list"; + } + description "Set Nexthop"; + } + + // Set rule based on next hop peer-address + container nhpa-items { + + uses rtmap_SetNhPeerAddr-group; + description "Set Nexthop Peer Address"; + } + + // Set rule based on as-path prepend + container setaspathprepend-items { + + uses rtmap_SetPrepend-group; + description "Set Prepend"; + } + + // Set Prepend Last As + container setaspathlastas-items { + + uses rtmap_SetPrependLastAs-group; + description "Set Prepend Last As"; + } + + // Set Prepend Tag + container setaspathtag-items { + + uses rtmap_SetAsPathTag-group; + description "Set As Path Tag"; + } + + // Set rule based on origin type + container origin-items { + + uses rtmap_SetOrigin-group; + description "Set Origin Type"; + } + + // Set rule based on evpn gateway ipaddr + container sevpn-items { + + uses rtmap_SetEvpn-group; + description "Set Evpn Gateway Ip Addr and Ether Tag"; + } + + // Set rule based on next hop verify availability + container nhva-items { + list SetNhVA-list { + key "addr"; + + uses rtmap_SetNhVA-group; + description "Set Nexthop Verify Availability list"; + } + description "Set Nexthop Verify Availability"; + } + + // Set Path Selection + container spselect-items { + + uses rtmap_SetPathSelection-group; + description "Set As Path Tag"; + } + + // set Interface + container sintf-items { + list SetIntf-list { + key "if"; + + uses rtmap_SetIntf-group; + description "Set Interface for route-map list"; + } + description "Set Interface for route-map"; + } + } + + grouping rtmap_MatchRegComm-group { + description "Match on Regular Community"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + description "Type"; + } + + // criteria + leaf criteria { + + type rtmap_Criteria; + description "Criteria"; + } + + container rsregCommAtt-items { + + list RsRegCommAtt-list { + key "tDn"; + + uses rtmap_RsRegCommAtt_source-group; + description "Regular Community Attachment list"; + } + description "Regular Community Attachment"; + } + } + + grouping rtmap_MatchExtComm-group { + description "Match on Extended Community"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "ext-community"; + description "Type"; + } + + // criteria + leaf criteria { + + type rtmap_Criteria; + description "Criteria"; + } + + container rsextCommAtt-items { + + list RsExtCommAtt-list { + key "tDn"; + + uses rtmap_RsExtCommAtt_source-group; + description "Extended Community Attachment list"; + } + description "Extended Community Attachment"; + } + } + + grouping rtmap_MatchRtDst-group { + description "Match on Route Destination"; + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-dst"; + description "Type"; + } + + container rsrtDstAtt-items { + + list RsRtDstAtt-list { + key "tDn"; + + uses rtmap_RsRtDstAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + + container rsrtDstAccAtt-items { + + list RsRtDstAccAtt-list { + key "tDn"; + + uses rtmap_RsRtDstAccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchRtDstV6-group { + description "Match on V6 Route Destination"; + + // Config error in this MO + leaf configError { + config "false"; + + type rtmap_ConfigErr; + description "config Error associated with this MO"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-dst-v6"; + description "Type"; + } + + container rsrtDstV6Att-items { + + list RsRtDstV6Att-list { + key "tDn"; + + uses rtmap_RsRtDstV6Att_source-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; + } + + container rsrtDstV6AccAtt-items { + + list RsRtDstV6AccAtt-list { + key "tDn"; + + uses rtmap_RsRtDstV6AccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchIPv4Mcast-group { + description "Match on IPv4 Multicast attributes"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr { + length "0..32"; + } + description "descr"; + } + + // Type + leaf type { + config "false"; + + type rtmap_MatchT; + default "rt-ipv4-mcast"; + description "Type"; + } + leaf groupAddr { + type address_Ip; + description "multicast group prefix"; + } + leaf groupStartAddr { + type address_Ip; + description "multicast group start range"; + } + leaf groupEndAddr { + type address_Ip; + description "multicast group end range"; + } + leaf rp { + type address_Ip; + description "multicast rendezvous prefix"; + } + + // rp type ASM/Bidir + leaf rpType { + + type rtmap_rpTypeT; + description "rp type ASM/Bidir"; + } + leaf sourceAddr { + type address_Ip; + description "multicast source prefix"; + } + } + + grouping rtmap_MatchIPv6Mcast-group { + description "Match on IPv6 Multicast attributes"; + + leaf name { + config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + config "false"; + + type naming_Descr { + length "0..32"; + } + description "descr"; + } + + // Type + leaf type { + config "false"; + + type rtmap_MatchT; + default "rt-ipv4-mcast"; + description "Type"; + } + leaf groupAddr { + type address_Ip; + description "multicast group prefix"; + } + leaf groupStartAddr { + type address_Ip; + description "multicast group start range"; + } + leaf groupEndAddr { + type address_Ip; + description "multicast group end range"; + } + leaf rp { + type address_Ip; + description "multicast rendezvous prefix"; + } + + // rp type ASM/Bidir + leaf rpType { + + type rtmap_rpTypeT; + description "rp type ASM/Bidir"; + } + leaf sourceAddr { + type address_Ip; + description "multicast source prefix"; + } + } + + grouping rtmap_MatchRtNh-group { + description "Match on Route Nexthop"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-nh"; + description "Type"; + } + + container rsrtNhAtt-items { + + list RsRtNhAtt-list { + key "tDn"; + + uses rtmap_RsRtNhAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtNhV6-group { + description "Match on Route Nexthop Ipv6"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-nh-v6"; + description "Type"; + } + + container rsrtNhV6Att-items { + + list RsRtNhV6Att-list { + key "tDn"; + + uses rtmap_RsRtNhV6Att_source-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; + } + } + + grouping rtmap_MatchRtSrc-group { + description "Match on Route Source"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-src"; + description "Type"; + } + + container rsrtSrcAtt-items { + + list RsRtSrcAtt-list { + key "tDn"; + + uses rtmap_RsRtSrcAtt_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtSrcV6-group { + description "Match on Route Source ipv6"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-src-v6"; + description "Type"; + } + + container rsrtSrcV6Att-items { + + list RsRtSrcV6Att-list { + key "tDn"; + + uses rtmap_RsRtSrcV6Att_source-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + } + + grouping rtmap_MatchRtType-group { + description "Match on Route Types"; + + // Route types + leaf routeT { + + type rtmap_RouteT; + description "Route Type"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-type"; + description "Type"; + } + } + + grouping rtmap_MatchRtTag-group { + description "Match on Route Tag"; + + // Route tag + leaf tag { + + type rtmap_RouteTag; + description "Route Tag"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-tag"; + description "Type"; + } + } + + grouping rtmap_MatchSrcProto-group { + description "Match on Route ASN"; + leaf proto { + type string { + length "1..32"; + } + description "Match Source Protocol"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "src-proto"; + description "Type"; + } + } + + grouping rtmap_MatchRtPervasive-group { + description "Match on Route Pervasive"; + + // Route pervasive + leaf pervasive { + + type rtmap_RoutePervasive; + description "Pervasive"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-pervasive"; + description "Type"; + } + } + + grouping rtmap_MatchAsPathAccessList-group { + description "Match on AS Path Access List"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "as-path"; + description "Type"; + } + + container rsrtAsPathAccAtt-items { + + list RsRtAsPathAccAtt-list { + key "tDn"; + + uses rtmap_RsRtAsPathAccAtt_source-group; + description "Access List Attachment list"; + } + description "Access List Attachment"; + } + } + + grouping rtmap_MatchRtMetric-group { + description "Match on Route Metric"; + + // Route metric measure + leaf measure { + + type rtmap_CommunityVal; + description "Route Metric Measure"; + } + + // Route metric deviation + leaf deviation { + + type rtmap_CommunityVal; + description "Route Metric Deviation"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-metric"; + description "Type"; + } + } + + grouping rtmap_MatchRtAsn-group { + description "Match on Route Asn"; + leaf asn { + type string; + description "Route Asn"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-asn"; + description "Type"; + } + } + + grouping rtmap_MatchRtIf-group { + description "Match on Route Interface"; + + // Route asn + leaf id { + + type nw_IfId; + description "Route If"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-if"; + description "Type"; + } + } + + grouping rtmap_MatchRtOspf-group { + description "Match on Ospf Area ID"; + + // Route ospf + leaf area { + + type rtmap_OSPFArea; + description "OSPF Area"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-ospf"; + description "Type"; + } + } + + grouping rtmap_MatchRtMacList-group { + description "Match on Mac-list"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_MatchT; + default "rt-mac-list"; + description "Type"; + } + + container rsrtMacListAtt-items { + + list RsRtMacListAtt-list { + key "tDn"; + + uses rtmap_RsRtMacListAtt_source-group; + description "Mac List list"; + } + description "Mac List"; + } + } + + grouping rtmap_Continue-group { + description "Entry"; + + // Continue + leaf continue { + + type rtmap_Order; + description "continue"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "continue"; + description "Type"; + } + } + + grouping rtmap_SetRegComm-group { + description "Set Regular Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + // No Community Attribute + leaf noCommAttr { + + type rtmap_AdminSt; + description "No Community Attribute"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; + + uses rtmap_SetCommItem-group; + description "Set Community Item list"; + } + description "Set Community Item"; + } + + // Item in the community list + container item-items { + list Item-list { + key "community"; + + uses rtregcom_Item-group; + description "Item list"; + } + description "Item"; + } + } + + grouping rtmap_SetCommItem-group { + description "Set Community Item"; + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtregcom_Item-group { + description "Item"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + type mtx_array_community; + description "Community"; + } + } + + grouping rtmap_SetExtComm-group { + description "Set Extended Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + // No Community Attribute + leaf noCommAttr { + + type rtmap_AdminSt; + description "No Community Attribute"; + } + + leaf scope { + + type rtextcom_Scope; + description "Scope"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "ext-gen-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } + + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; + + uses rtmap_SetCommItem-group; + description "Set Community Item list"; + } + description "Set Community Item"; + } + } + + grouping rtmap_SetExtCommCost-group { + description "Set Extcommunity Cost "; + + // Set criteria for IGP or Pre-bestpath + leaf commCrit { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Community Id + leaf commId { + + type rtmap_CommunityId; + description "Community Id"; + } + + // Community Value + leaf commValue { + + type rtmap_CommunityVal; + description "Community Value"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "extcommunity-cost"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetExtCommColor-group { + description "Set Extcommunity Color "; + leaf commValue { + type uint32 { + range "1..4294967295"; + } + description "Color Community Value"; + } + } + + grouping rtmap_SetExtCommRmac-group { + description "Set Extcommunity RMAC "; + leaf commRmac { + type address_Mac; + description "RMAC Community Value"; + } + } + + grouping rtmap_SetCommList-group { + description "Set Extended Community"; + + // Delete Matching Communities + leaf delete { + + type rtmap_AdminSt; + description "Delete Matching Communities"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "list-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetExtCommList-group { + description "Set Ext Community"; + + // Delete Matching Communities + leaf delete { + + type rtmap_AdminSt; + description "Delete Matching Ext Communities"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "list-extcommunity"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + } + + grouping rtmap_SetRttComm-group { + description "Set Route Target Community"; + + // Add To Existing Community + leaf additive { + + type rtmap_AdminSt; + description "Add To Existing Community"; + } + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "rtt-community"; + description "Type"; + } + + // Set criteria + leaf setCriteria { + + type rtmap_SetCriteria; + description "Criteria"; + } + + // Item in the community list + container item-items { + list Item-list { + key "scope community"; + + uses rtextcom_Item-group; + description "Item list"; + } + description "Item"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of community values + container scomm-items { + list SetCommItem-list { + key "community"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses rtmap_SetCommItem-group; + description "Set Community Item list"; } + description "Set Community Item"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping rtmap_SetRtDist-group { + description "Set Route Distance"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Route Administrative Distance for IGP or EBGP + leaf dist { + + type rtmap_RouteDist; + description "Distance"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Route Administrative Distance for Internal + leaf distI { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type rtmap_RouteDist; + description "Distance internal"; } - // This objects hold per ipv6 instance information. There is - // only one instance of ipv6 running in the system today - container inst-items { + // Route Administrative Distance for local + leaf distL { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ipv6 - uses ipv6_Inst-group; + type rtmap_RouteDist; + description "Distance local"; } - } - grouping ipv6_Inst-group { - - // ipv6 access-list match local - // Type is an MO-Defined-Type - leaf accessListMatchLocal { - description "Access-List Match Local"; + leaf name { - // Type is an MO-Defined-Type - type nw_AdminSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // static neighbor outside subnet - // Type is an MO-Defined-Type - leaf staticNeighborOutsideSubnet { - description "Static Neighbor Outside Subnet "; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Queue 1 packet when triggered NS is sent - // Type is an MO-Defined-Type - leaf queuePackets { - description "Queue-packets"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtmap_SetT; + default "rt-dist"; + description "Type"; } + } - // Switch ND packets received on core ports - // Type is an MO-Defined-Type - leaf switchPackets { - description "Switch-packets"; + grouping rtmap_SetRtTag-group { + description "Set Route Tag"; - // Type is an MO-Defined-Type - type ip_SwitchPktTarget; + // Tag value + leaf tag { + + type rtmap_RouteTag; + description "Tag"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtmap_SetT; + default "rt-tag"; + description "Type"; } + } - // Objectification of IPv6 route statistics - container mtustats-items { + grouping rtmap_SetWeight-group { + description "Set Weight"; - // Added containment as a singleton: Prefix=mtustats - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheStatGlobal-group; + // Weight value + leaf weight { + + type rtmap_Weight; + description "Weight"; } - // Objectification of IPv6 Client statistics - container clientstats-items { - list IPv6Clients-list { - config "false"; - key "clientName clientProtocol"; + leaf name { - // Added containment: Prefix=clientstats - // Acquired From Package ipv6 - uses ipv6_IPv6Clients-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + leaf descr { - // Added containment: Prefix=dom - // Acquired From Package ipv6 - uses ipv6_Dom-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Objectification of IPv6 Fragments statistics - container fragstats-items { - list IPv6Fragments-list { - config "false"; - key "srcAddr"; + // Type + leaf type { - // Added containment: Prefix=fragstats - // Acquired From Package ipv6 - uses ipv6_IPv6Fragments-group; - } + type rtmap_SetT; + default "rt-weight"; + description "Type"; } - container logs-items { - list IPv6EventLogs-list { - key "eventType"; + } - // Added containment: Prefix=logs - // Acquired From Package ipv6 - uses ipv6_IPv6EventLogs-group; - } - } + grouping rtmap_SetLabelIndex-group { + description "Set LabelIndex"; - // Holds ipv6 global statistics - container pktqstats-items { + // Label Index value + leaf index { - // Added containment as a singleton: Prefix=pktqstats - // Acquired From Package ipv6 - uses ipv6_IPv6InstStat-group; + type rtmap_Index; + description "Label Index"; } - // Objectification of IPv6 neighbor statistics - container ipv6stats-items { - list IPv6Stat-list { - config "false"; - key "ftmName"; + leaf name { - // Added containment: Prefix=ipv6stats - // Acquired From Package ipv6 - uses ipv6_IPv6Stat-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Objectification of IPv6 interface statistics - container trafficstats-items { + leaf descr { - // Added containment as a singleton: Prefix=trafficstats - // Acquired From Package ipv6 - uses ipv6_IPv6TrafficStat-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping ipv6_IPv6MtuCacheStatGlobal-group { - leaf outstandingEntries { - config "false"; - type uint32; - } - leaf expiredEntries { - config "false"; - type uint64; - } - leaf purgedEntries { - config "false"; - type uint64; - } - leaf internalErrors { - config "false"; - type uint64; - } - leaf pktTooBig { - config "false"; - type uint64; - } - leaf cacheMisses { - config "false"; - type uint64; - } - leaf cacheUpdates { - config "false"; - type uint64; - } - leaf smallMtuAdv { - config "false"; - type uint64; - } - leaf cacheNoUpdates { - config "false"; - type uint64; + // Type + leaf type { + + type rtmap_SetT; + default "rt-index"; + description "Type"; } } - grouping ipv6_IPv6Clients-group { - leaf clientName { - config "false"; - type string; - } - leaf clientStatus { - config "false"; - type string; - } - leaf clientPid { - config "false"; - type int32; - } - leaf clientExtPid { - config "false"; - type int32; - } - leaf clientProtocol { - config "false"; - type int32; - } - leaf clientPibIndex { - config "false"; - type int32; + grouping rtmap_SetPref-group { + description "Set Preference"; + + // Preference value + leaf localPref { + + type rtmap_LocalPref; + description "Local Preference"; } - leaf clientUuid { - config "false"; - type int32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf clientRoutingVrf { - config "false"; - type int32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf clientRoutingFlag { - config "false"; - type int32; + + // Type + leaf type { + + type rtmap_SetT; + default "local-pref"; + description "Type"; } - leaf clientCtrlMtsSap { - config "false"; - type int32; + } + + grouping rtmap_SetMetric-group { + description "Set Metric"; + + // Metric value for bandwidth + leaf metric { + + type rtmap_MetricS; + description "Metric"; } - leaf clientDataMtsSap { - config "false"; - type int32; + + // Metric value for delay + leaf metricD { + + type rtmap_MetricD; + description "Metric delay"; } - leaf destUnreachSent { - config "false"; - type int32; + + // Metric value for reliability + leaf metricR { + + type rtmap_MetricR; + description "Metric rlblty"; } - leaf destUnreachRcvd { - config "false"; - type int32; + + // Metric value for load + leaf metricL { + + type rtmap_MetricL; + description "Metric load"; } - leaf adminProhibSent { - config "false"; - type int32; + + // Metric value for mtu + leaf metricM { + + type rtmap_MetricM; + description "Metric mtu"; } - leaf adminProhibRcvd { - config "false"; - type int32; + + // is BGP config + leaf isBGP { + + type rtmap_Proto; + description "is BGP config"; } - leaf clientIfExtIndex { - config "false"; - type int32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf clientRecvFn { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf clientRecvHex { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "metric"; + description "Type"; } } - grouping ipv6_Dom-group { + grouping rtmap_SetMetricType-group { + description "Set Metric Type"; + + // Metric Type + leaf metricT { + + type rtmap_MetricT; + description "Metric Type"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - container mtustats-items { + leaf descr { - // Added containment as a singleton: Prefix=mtustats - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheStat-group; + type naming_Descr; + description "Description of the specified attribute"; } - // ipv6 route static bfd - container rtstaticbfd-items { - list RtStaticBfd-list { - key "intf nexthop"; + // Type + leaf type { - // Added containment: Prefix=rtstaticbfd - // Acquired From Package ipv6 - uses ipv6_RtStaticBfd-group; - } + type rtmap_SetT; + default "metric-type"; + description "Type"; } + } - // This object holds ipv6 information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + grouping rtmap_SetDampeningType-group { + description "Set Dampening"; - // Added containment: Prefix=if - // Acquired From Package ipv6 - uses ipv6_If-group; - } + // Dampening Halflife + leaf halflife { + + type rtmap_HalfLife; + description "Dampening Halfife"; } - // Objectification of IPv6 route statistics - container procstats-items { + // Dampening Reuse + leaf reuse { - // Added containment as a singleton: Prefix=procstats - // Acquired From Package ipv6 - uses ipv6_IPv6ProcessStat-group; + type rtmap_Reuse; + description "Dampening Reuse"; } - // Static route definitions - container rt-items { - list Route-list { - key "prefix"; + // Dampening Supress + leaf supress { - // Added containment: Prefix=rt - // Acquired From Package ipv6 - uses ipv6_Route-group; - } + type rtmap_Supress; + description "Dampening Supress"; } - // Objectification of IPv6 route statistics - container routestats-items { + // Dampening Duration + leaf duration { - // Added containment as a singleton: Prefix=routestats - // Acquired From Package ipv6 - uses ipv6_IPv6RouteStat-group; + type rtmap_Duration; + description "Dampening Duration"; } - } - grouping ipv6_IPv6MtuCacheStat-group { - container addr-items { - list IPv6MtuCacheDestStat-list { - config "false"; - key "pathDestination"; + leaf name { - // Added containment: Prefix=addr - // Acquired From Package ipv6 - uses ipv6_IPv6MtuCacheDestStat-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - } - grouping ipv6_IPv6MtuCacheDestStat-group { - leaf pathDestination { - config "false"; - type address_Ipv6; - } - leaf pathMtu { - config "false"; - type uint16; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf outgoingIod { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "dampening"; + description "Type"; } - leaf smallMtuReceived { - config "false"; - type string; + } + + grouping rtmap_SetPrecedence-group { + description "Set Precedence"; + + // Precedence Name + leaf precname { + + type rtmap_PrecName; + description "Precedence Name"; } - leaf bigMtuReeived { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf smallMtu { - config "false"; - type uint16; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf lastMtuUpdate { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "ip-prec"; + description "Type"; } } - grouping ipv6_RtStaticBfd-group { + grouping rtmap_SetV6Precedence-group { + description "Set IPv6 Precedence"; - // interface value. - // Type is an MO-Defined-Type - leaf intf { - description "Interface"; + // Precedence Name + leaf precname { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_PrecName; + description "Precedence Name"; } - leaf nexthop { - type address_Ip; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; + } + + // Type + leaf type { + + type rtmap_SetT; + default "ipv6-prec"; + description "Type"; } } - grouping ipv6_If-group { + grouping rtmap_SetOspfNssa-group { + description "Set Ospf Nssa"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; + } - // Handle ipv6 address use-link-local-address" - // Type is an MO-Defined-Type - leaf useLinkLocalAddr { - description "IPv6 Address Use Link Local Address"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Handle ipv6 urpf info" - // Type is an MO-Defined-Type - leaf urpf { - description "IPv6 URPF Info"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_UrpfT; + type rtmap_SetT; + default "ospf-nssa"; + description "Type"; } + } - // Handle ipv6 forward" - // Type is an MO-Defined-Type - leaf forward { - description "IPv6 forward"; + grouping rtmap_SetOspfFwdAddr-group { + description "Set Ospf Forwarding Address"; + leaf fwdAddr { + type address_Ip; + description "Forwarding Address"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // IPv6 Stateless address autoconfig - // Type is an MO-Defined-Type - leaf autoconfig { - description "IPv6 Stateless address autoconfig"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // adds default route and the nh would be fetched from RA source address - // Type is an MO-Defined-Type - leaf defaultRoute { - description "Default Route Addition with Nexthop as RA Source Address"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtmap_SetT; + default "ospf-fwd-addr"; + description "Type"; } - leaf llAddr { + } + + grouping rtmap_SetNh-group { + description "Set Nexthop"; + leaf addr { type address_Ip; + description "Address"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type + // Config error in this MO leaf configError { config "false"; - description "Config error"; - // Type is an MO-Defined-Type - type ipv6_ConfigErr; + type rtmap_ConfigErr; + description "config Error associated with this MO"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_SetT; + default "ip-nh"; + description "Type"; } + } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping rtmap_SetNhPeerAddr-group { + description "Set Nexthop Peer Address"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + // IPv4 Next hop peer address + leaf v4PeerAddr { + + type rtmap_AdminSt; + description "Set Next Hop V4 Peer Address"; } - // Interface controls - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // IPv6 Next hop peer address + leaf v6PeerAddr { - // Type is an MO-Defined-Type - type ip_IfControl; + type rtmap_AdminSt; + description "Set Next Hop V6 Peer Address"; } - // Interface mode - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // IPv4 Next hop Unchanged + leaf v4Unchange { - // Type is an MO-Defined-Type - type ip_IfMode; + type rtmap_AdminSt; + description "Set IPv4 Next Hop Unchanged"; } - // Donor interface - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf donorIf { - description "Donor Interface"; + // IPv6 Next hop Unchanged + leaf v6Unchange { - // Type is an MO-Defined-Type - type nw_IfId; + type rtmap_AdminSt; + description "Set IPv6 Next Hop Unchanged"; } - // Operational state - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // IPv4 Next hop Redist Unchanged + leaf v4RedistUnchange { - // Type is an MO-Defined-Type - type ip_OperSt; + type rtmap_AdminSt; + description "Set IPv4 Next Hop Redist Unchanged"; } - // Operational state qualifier - // Inherited From ip:If - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // IPv6 Next hop Redist Unchanged + leaf v6RedistUnchange { - // Type is an MO-Defined-Type - type ip_UnnumberedOperStQual; + type rtmap_AdminSt; + description "Set IPv6 Next Hop Redist Unchanged"; } - // Interface address - container addr-items { - list Addr-list { - key "addr"; + // Config error in this MO + leaf configError { + config "false"; - // Added containment: Prefix=addr - // Acquired From Package ipv6 - uses ipv6_Addr-group; - } + type rtmap_ConfigErr; + description "config Error associated with this MO"; } - // Link local Interface address - container lladdr-items { - list LLaddr-list { - key "addr"; + leaf name { - // Added containment: Prefix=lladdr - // Acquired From Package ipv6 - uses ipv6_LLaddr-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // IPv6 Neighbor Address - container nghbr-items { - list Neighbor-list { - key "addr"; + leaf descr { - // Added containment: Prefix=nghbr - // Acquired From Package ipv6 - uses ipv6_Neighbor-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Objectification of IPv6 interface statistics - container ifstats-items { + // Type + leaf type { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package ipv6 - uses ipv6_IPv6IfStat-group; + type rtmap_SetT; + default "nh-pa"; + description "Type"; } + } - // Objectification of IPv6 neighbor statistics - container nbrstats-items { - list IPv6NeighborStat-list { - config "false"; - key "ngbrAddr"; - - // Added containment: Prefix=nbrstats - // Acquired From Package ipv6 - uses ipv6_IPv6NeighborStat-group; + grouping rtmap_SetPrepend-group { + description "Set Prepend"; + leaf as { + type string { + pattern ".*[0-9 \\.]*"; } + description "As Path Prepend"; } - // Route map entries - container rpol-items { + leaf name { - // Added containment as a singleton: Prefix=rpol - // Acquired From Package rtmap - uses rtmap_RmapPolicy-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - container rtvrfMbr-items { + leaf descr { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Type + leaf type { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type rtmap_SetT; + default "prepend"; + description "Type"; } } - grouping ipv6_Addr-group { - leaf addr { - type address_Ip; - } + grouping rtmap_SetPrependLastAs-group { + description "Set Prepend Last As"; - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // As Path Last As + leaf lastas { - // Type is an MO-Defined-Type - type ip_AddrT; + type rtmap_RouteLastAs; + description "LastAs"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf name { - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + leaf descr { - // Type is an MO-Defined-Type - type rt_Preference; + type naming_Descr; + description "Description of the specified attribute"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + // Type + leaf type { - // Type is an MO-Defined-Type - type rt_Tag; + type rtmap_SetT; + default "lastas"; + description "Type"; } + } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping rtmap_SetAsPathTag-group { + description "Set As Path Tag"; - // Type is an MO-Defined-Type - type ip_OperSt; + // Set as path + leaf tag { + + type rtmap_AdminSt; + description "Set as path tag"; } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + leaf name { - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - } - grouping ipv6_LLaddr-group { - leaf addr { - type address_Ip; + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type + // Type leaf type { - description "Type"; - // Type is an MO-Defined-Type - type ip_AddrT; + type rtmap_SetT; + default "as-pathtag"; + description "Type"; } + } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping rtmap_SetOrigin-group { + description "Set Origin Type"; - // Type is an MO-Defined-Type - type ip_AddrControl; - } - leaf vpcPeer { - type address_Ip; + // Metric Type + leaf originT { + + type rtmap_OriginT; + description "Origin Type"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Remote ASN + leaf asn { - // Type is an MO-Defined-Type - type rt_Preference; + type rtcom_AS; + description "Autonomous System Number"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + leaf name { - // Type is an MO-Defined-Type - type rt_Tag; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf descr { - // Type is an MO-Defined-Type - type ip_OperSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational state qualifier - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Operational State Qualifier"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_AddrOperStQual; + type rtmap_SetT; + default "origin"; + description "Type"; } } - grouping ipv6_Neighbor-group { - leaf neighborMac { - type address_Mac; + grouping rtmap_SetEvpn-group { + description "Set Evpn Gateway Ip Addr and Ether Tag"; + leaf ip { + type address_Ip; + description "EVPN Gateway IP Address"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config error"; + leaf name { - // Type is an MO-Defined-Type - type ipv6_ConfigErr; - } - leaf addr { - type address_Ip; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Type of the address - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { - // Type is an MO-Defined-Type - type ip_AddrT; + type naming_Descr; + description "Description of the specified attribute"; } - // Address controls - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_AddrControl; + type rtmap_SetT; + description "Type"; } - leaf vpcPeer { + } + + grouping rtmap_SetNhVA-group { + description "Set Nexthop Verify Availability"; + leaf addr { type address_Ip; + description "Set NH Verify Availability Address"; + } + leaf trackId { + type uint32 { + range "1..512"; + } + description "Track id for Next Hop VA Address"; } - // Ip address preference - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + leaf name { - // Type is an MO-Defined-Type - type rt_Preference; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Route tag - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + leaf descr { - // Type is an MO-Defined-Type - type rt_Tag; + type naming_Descr; + description "Description of the specified attribute"; } - // Operational state - // Inherited From ip:Addr - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Type + leaf type { - // Type is an MO-Defined-Type - type ip_OperSt; + type rtmap_SetT; + default "ip-nh"; + description "Type of NH Verify Availability"; } } - grouping ipv6_IPv6IfStat-group { - leaf id { - config "false"; - type string; - } - leaf ifName { - config "false"; - type string; - } - leaf ifProtoState { - config "false"; - type string; - } - leaf ifLinkState { - config "false"; - type string; - } - leaf ifAdminState { - config "false"; - type string; - } - leaf ifIod { - config "false"; - type uint32; - } - leaf ifFwdStatus { - config "false"; - type boolean; - } - leaf ifIpv6Enabled { - config "false"; - type string; - } - leaf ifAddr { - config "false"; - type string; - } - leaf ifAddrSubnet { - config "false"; - type address_Ip; - } - leaf ifAnycastAddr { - config "false"; - type string; - } - leaf ifLLaddr { - config "false"; - type address_Ip; - } - leaf ifLinkLocalConfigStatus { - config "false"; - type string; - } - leaf ifLinkLocalState { - config "false"; - type string; + grouping rtmap_SetPathSelection-group { + description "Set As Path Tag"; + + // BGP path advertise + leaf psAdvertise { + + type rtmap_PsType; + description "Specifies BGP path Advertise"; } - leaf ifVIPAddr { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifMcastRoutingStatus { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifReportLLStatus { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + default "ps-adv"; + description "Type of set path selection"; } - leaf ifMcastGroupLocallyJoined { - config "false"; - type string; + } + + grouping rtmap_SetIntf-group { + description "Set Interface for route-map"; + + leaf if { + + type nw_IfId; + description "set interface for route-map"; } - leaf ifMcastSrcGrpAddr { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifmtu { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifUcastRevPathFwdMode { - config "false"; - type string; + + // Type + leaf type { + + type rtmap_SetT; + description "Type"; } - leaf ifUcastRevPathFwdFlag { - config "false"; - type string; + } + + grouping rtmap_ExpandedComList-group { + description "Rule"; + leaf regex { + type string { + length "0..63"; + } + description "Expanded Community list Regular Expression"; } - leaf ifLoadSharing { - config "false"; - type string; + leaf expcommname { + type string { + length "0..63"; + } + description "Expanded Community list Name"; } - leaf ifStatLastReset { - config "false"; - type string; + + // Deny or Permit + leaf action { + + type rtmap_Action; + description "Action"; } - leaf ifAclInbound { - config "false"; - type string; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifAclOutbound { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf ifUnspecifiedSrc { - config "false"; - type uint32; + } + + grouping rtpfx_RuleV4-group { + description "IPv4 Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf ifTotalPktRxTentativeAddr { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; } - leaf ifTotalPktRxInvalidAddrState { - config "false"; - type uint32; + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtpfx_Entry-group; + description "Entry list"; + } + description "Entry"; } - leaf ifTotalPktRxDuplicateState { - config "false"; - type uint32; + + container rtrtmapRtDstAtt-items { + + list RtRtmapRtDstAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf ifAnycastPktTCP { - config "false"; - type uint32; + + container rtrtmapRtDstV6Att-items { + + list RtRtmapRtDstV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6Att_target-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; } - leaf ifDeliverInterfaceDown { - config "false"; - type uint32; + + container rtrtmapRtNhAtt-items { + + list RtRtmapRtNhAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastPktsForwarded { - config "false"; - type uint32; + + container rtrtmapRtNhV6Att-items { + + list RtRtmapRtNhV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhV6Att_target-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; } - leaf rpUcastPktsOriginated { - config "false"; - type uint32; + + container rtrtmapRtSrcAtt-items { + + list RtRtmapRtSrcAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastPktsConsumed { - config "false"; - type uint32; + + container rtrtmapRtSrcV6Att-items { + + list RtRtmapRtSrcV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcV6Att_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf rpUcastBytesForwarded { - config "false"; - type uint32; + } + + grouping rtpfx_Entry-group { + description "Entry"; + leaf pfx { + type address_Ip; + description "Prefix"; } - leaf rpUcastBytesOriginated { - config "false"; - type uint32; + leaf mask { + type address_Ip; + description "mask"; } - leaf rpUcastBytesConsumed { - config "false"; - type uint32; + + // criteria, exact match or inexact match + leaf criteria { + + type rtpfx_Criteria; + description "Criteria"; } - leaf rpMcastPktsForwarded { - config "false"; - type uint32; + + // If the criteria is not an exact match, use a range to + // describe the prefix list range + leaf fromPfxLen { + + type l3_IpPfxLen; + description "Start of Prefix Length"; } - leaf rpMcastPktsOriginated { - config "false"; - type uint32; + + leaf toPfxLen { + + type l3_IpPfxLen; + description "End of Prefix Length"; } - leaf rpMcastPktsConsumed { - config "false"; - type uint32; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rpMcastBytesForwarded { - config "false"; - type uint32; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rpMcastBytesOriginated { - config "false"; - type uint32; + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf rpMcastBytesConsumed { - config "false"; - type uint32; + + // Action + leaf action { + + type rtflt_Action; + description "Action"; } } - grouping ipv6_IPv6NeighborStat-group { - leaf ngbrAddr { - config "false"; - type address_Ipv6; + grouping rtpfx_RuleV6-group { + description "IPv6 Rule"; + + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - } - grouping ipv6_IPv6ProcessStat-group { - leaf procVRFId { - config "false"; - type uint32; + leaf descr { + + type naming_Descr { + length "0..90"; + } + description "descr"; } - leaf procAutoDiscard { - config "false"; - type string; + + // Prefix list entry definition + container ent-items { + list Entry-list { + key "order"; + + uses rtpfx_Entry-group; + description "Entry list"; + } + description "Entry"; } - leaf procAutoDiscardAdded { - config "false"; - type string; + + container rtrtmapRtDstAtt-items { + + list RtRtmapRtDstAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf procStaticDiscard { - config "false"; - type string; + + container rtrtmapRtDstV6Att-items { + + list RtRtmapRtDstV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtDstV6Att_target-group; + description "IPv6 Prefix List Attachment list"; + } + description "IPv6 Prefix List Attachment"; } - leaf procStaticDefaultCount { - config "false"; - type uint32; + + container rtrtmapRtNhAtt-items { + + list RtRtmapRtNhAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } - leaf procIODList { - config "false"; - type string; + + container rtrtmapRtNhV6Att-items { + + list RtRtmapRtNhV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtNhV6Att_target-group; + description "Prefix List Attachment Ipv6 list"; + } + description "Prefix List Attachment Ipv6"; } - leaf procLocalAddrList { - config "false"; - type string; + + container rtrtmapRtSrcAtt-items { + + list RtRtmapRtSrcAtt-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcAtt_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; + } + + container rtrtmapRtSrcV6Att-items { + + list RtRtmapRtSrcV6Att-list { + config "false"; + key "tDn"; + + uses rtmap_RtRtmapRtSrcV6Att_target-group; + description "Prefix List Attachment list"; + } + description "Prefix List Attachment"; } } - grouping ipv6_Route-group { + grouping rtregcom_Rule-group { + description "Rule"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - leaf prefix { - type address_Ip; + + // Type of the community list [regular | extended] + leaf type { + + type rtcom_ComT; + description "Type"; } - // Route preference, the administrative distance assigned - // to this route - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pref { - description "Preference"; + // Mode + leaf mode { - // Type is an MO-Defined-Type - type rt_Preference; + type rtcom_Mode; + description "Mode"; } - // Route tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + // Regular community list entry + container ent-items { + list Entry-list { + key "order"; - // Type is an MO-Defined-Type - type rt_Tag; + uses rtregcom_Entry-group; + description "Entry list"; + } + description "Entry"; } - // Policy tag - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; + container rtRegCommAtt-items { - // Type is an MO-Defined-Type - type actrl_PcTag; + uses rtmap_RtRegCommAtt_target-group; + description "Regular Community Attachment"; } + } - // Route ctrl - // Inherited From ip:Route - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping rtregcom_Entry-group { + description "Entry"; - // Type is an MO-Defined-Type - type ip_RtControl; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - // Nexthops for the static route - container nh-items { - list Nexthop-list { - key "nhIf nhAddr nhVrf"; + leaf descr { - // Added containment: Prefix=nh - // Acquired From Package ipv6 - uses ipv6_Nexthop-group; + type naming_Descr; + description "Description of the specified attribute"; + } + + // Order + leaf order { + + type rtflt_Order { + range "1..4294967294"; } + description "Order"; } - // Temporary Nexthop stub created until the Spine proxy - // IP address is determined. - container nhs-items { - list NexthopStub-list { - config "false"; - key "nhIf nhAddr nhVrf"; + // Action + leaf action { - // Added containment: Prefix=nhs - // Acquired From Package ipv6 - uses ipv6_NexthopStub-group; + type rtflt_Action; + description "Action"; + } + leaf regex { + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; } + description "Regular Expression"; } - } - grouping ipv6_Nexthop-group { - leaf rtname { - type string; + // Item in the community list + container item-items { + list Item-list { + key "community"; + + uses rtregcom_Item-group; + description "Item list"; + } + description "Item"; } - leaf tag { - type uint32; + } + + grouping srcintf_Entity-group { + description " IP Source Interface"; + container dns-items { + list DnsSrcIf-list { + key "vrf"; + + uses srcintf_DnsSrcIf-group; + description "DNS Source Interface list"; + } + description "DNS Source Interface"; } - leaf pref { - type uint8; + container tftp-items { + list Tftp-list { + key "vrf"; + + uses srcintf_Tftp-group; + description "TFTP Source Interface list"; + } + description "TFTP Source Interface"; } - leaf object { - type uint32; + container ftp-items { + list Ftp-list { + key "vrf"; + + uses srcintf_Ftp-group; + description "FTP Source Interface list"; + } + description "FTP Source Interface"; } + container telnet-items { + list Telnet-list { + key "vrf"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses srcintf_Telnet-group; + description "Telnet Source Interface list"; + } + description "Telnet Source Interface"; + } + container ssh-items { + list Ssh-list { + key "vrf"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses srcintf_Ssh-group; + description "SSH Source Interface list"; } + description "SSH Source Interface"; } + container ping-items { + list Ping-list { + key "vrf"; - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + uses srcintf_Ping-group; + description "Ping Source Interface list"; + } + description "Ping Source Interface"; + } + container traceroute-items { + list Traceroute-list { + key "vrf"; - // Type is an MO-Defined-Type - type naming_Descr; + uses srcintf_Traceroute-group; + description "Traceroute Source Interface list"; + } + description "Traceroute Source Interface"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - description "Nexthop Interface"; + grouping srcintf_DnsSrcIf-group { + description "DNS Source Interface"; + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; + description "DNS Source Interface"; } - leaf nhAddr { - type address_Ip; + + // vrf name + leaf vrf { + + type l3_VrfName; + description "DNS Source VRF"; } + } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - description "Nexthop VRF"; + grouping srcintf_Tftp-group { + description "TFTP Source Interface"; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "TFTP Source Interface"; + } + + // vrf name + leaf vrf { - // Type is an MO-Defined-Type type l3_VrfName; + description "TFTP Source VRF"; } - leaf rwEncap { - type string; + } + + grouping srcintf_Ftp-group { + description "FTP Source Interface"; + + // Source interface + leaf srcIf { + + type nw_IfId; + description "FTP Source Interface"; } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type ip_NhFlags; + type l3_VrfName; + description "FTP Source VRF"; } + } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping srcintf_Telnet-group { + description "Telnet Source Interface"; - // Type is an MO-Defined-Type - type ip_OperSt; + // Source interface + leaf srcIf { + + type nw_IfId; + description "Telnet Source Interface"; + } + + // vrf name + leaf vrf { + + type l3_VrfName; + description "Telnet Source VRF"; } } - grouping ipv6_NexthopStub-group { + grouping srcintf_Ssh-group { + description "SSH Source Interface"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_IfId; + description "SSH Source Interface"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type naming_Descr; + type l3_VrfName; + description "SSH Source VRF"; } + } - // Nexthop interface, force the packet that matches - // this prefix on this interface - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhIf { - config "false"; - description "Nexthop Interface"; + grouping srcintf_Ping-group { + description "Ping Source Interface"; + + // Source interface + leaf srcIf { - // Type is an MO-Defined-Type type nw_IfId; - } - leaf nhAddr { - config "false"; - type address_Ip; + description "Ping Source Interface"; } - // Nexthop vrf @@@ This is marked unspecified if the nexthop is in - // @@@ the same vrf as route - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf nhVrf { - config "false"; - description "Nexthop VRF"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type type l3_VrfName; + description "Ping Source VRF"; } - leaf rwEncap { - config "false"; - type string; - } + } - // Nexthop flags - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Rnh Flags"; + grouping srcintf_Traceroute-group { + description "Traceroute Source Interface"; - // Type is an MO-Defined-Type - type ip_NhFlags; + // Source interface + leaf srcIf { + + type nw_IfId; + description "Traceroute Source Interface"; } - // Operational state - // Inherited From ip:Nexthop - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // vrf name + leaf vrf { - // Type is an MO-Defined-Type - type ip_OperSt; + type l3_VrfName; + description "Traceroute Source VRF"; } } - grouping ipv6_IPv6RouteStat-group { - container pfx-items { - list IPv6RouteStatPfx-list { + grouping swpkgs_Install-group { + description "Software packages Install"; + + // Information about the packages present in the system + container rpminfo-items { + list RpmInfo-list { config "false"; - key "rtPrefix rtNextHop"; + key "name"; - // Added containment: Prefix=pfx - // Acquired From Package ipv6 - uses ipv6_IPv6RouteStatPfx-group; + uses swpkgs_RpmInfo-group; + description "RPM Packages in the system list"; } + description "RPM Packages in the system"; } } - grouping ipv6_IPv6RouteStatPfx-group { - leaf rtPrefix { - config "false"; - type address_Ip; - } - leaf rtNextHop { - config "false"; - type address_Ip; - } - leaf rtRealNextHop { - config "false"; - type string; - } - leaf rtRealNextHopIod { - config "false"; - type string; - } - leaf rtInterface { - config "false"; - type string; - } - leaf rtPreference { - config "false"; - type uint32; - } - leaf rtNhVrfName { + grouping swpkgs_RpmInfo-group { + description "RPM Packages in the system"; + leaf name { config "false"; type string; + description "Name of Package"; } - leaf rtResolveTableId { + + // Operational state of the package + leaf operSt { config "false"; - type uint32; + + type swpkgs_OperState; + description "Operational status"; } - leaf rtTrackObjNum { + + // Last Package action + leaf lastAction { config "false"; - type uint32; + + type swpkgs_PackageAction; + description "Last action on the package"; } - leaf rtTrackObjState { + + // Last Action Result on the package + leaf lastActionResult { config "false"; - type string; + + type swpkgs_PackageActionResult; + description "Result of last action"; } - leaf rtRnhSentToUrib { + leaf lastActionFailedReason { config "false"; type string; + description "Last action failed reason"; } - leaf rtBfdEnabled { + leaf signatureStatus { config "false"; type string; + description "Signature status of package"; } } - grouping ipv6_IPv6Fragments-group { - leaf srcAddr { - config "false"; - type address_Ipv6; - } - leaf dstAddr { - config "false"; - type address_Ipv6; - } - leaf fragId { - config "false"; - type int32; - } - leaf fragOffset { - config "false"; - type int32; - } - leaf fragMFlag { - config "false"; - type int32; + grouping sysmgr_Entity-group { + description "Entity"; + + // System state + container sys-items { + + uses sysmgr_SysSt-group; + description "System State"; } - leaf fragNextHeader { - config "false"; - type int32; + + // Holds system control plane entity information + container sysCfg-items { + + uses sysmgr_SysCfgSt-group; + description "MDP Replay Ascii Configuration mode and Operational Data Publish Status"; } - leaf fragPayloadLen { - config "false"; - type int32; + + // MO definition to configure sysmgr + container config-items { + + uses sysmgr_Config-group; + description "To configure sysmgr properties."; } - leaf fragExpirationTime { - config "false"; - type int32; + + // Holder for cores policy + container core-items { + list Cores-list { + config "false"; + key "dest"; + + uses sysmgrp_Cores-group; + description "Core File Policy list"; + } + description "Core File Policy"; } } - grouping ipv6_IPv6EventLogs-group { + grouping sysmgr_SysSt-group { + description "System State"; - // Type of Event - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + // Sup state + container sup-items { + list SupSt-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ipv6_IPv6EventType; + uses sysmgr_SupSt-group; + description "Supervisor State list"; + } + description "Supervisor State"; } - // Type of Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; + // Firmware state + container image-items { + list FwSt-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ipv6_IPv6EventLogSize; + uses sysmgr_FwSt-group; + description "Firmware State list"; + } + description "Firmware State"; } } - grouping ipv6_IPv6InstStat-group { - leaf queuePacket { - config "false"; - type string; - } - } + grouping sysmgr_SupSt-group { + description "Supervisor State"; - grouping ipv6_IPv6Stat-group { - leaf ftmName { - config "false"; - type string; - } - leaf ftmTimeSecond { - config "false"; - type uint32; - } - leaf ftmTimeNanoSecond { + // Local/Remote + leaf type { config "false"; - type uint32; + + type sysmgr_SupT; + description "Type"; } - leaf ftCount { + + // Oper state + leaf operSt { config "false"; - type uint64; + + type sysmgr_SupSt; + description "Operational State"; } } - grouping ipv6_IPv6TrafficStat-group { - leaf statLastReset { - config "false"; - type string; - } - leaf ucastFragOriginated { - config "false"; - type uint64; - } - leaf mcastFragOriginated { - config "false"; - type uint64; - } - leaf ucastFragConsumed { - config "false"; - type uint64; - } - leaf mcastFragConsumed { - config "false"; - type uint64; - } - leaf ingressMcecFwdPkts { - config "false"; - type uint32; - } - leaf ingressPktsVinciMigration { - config "false"; - type uint32; - } - leaf errBadVersion { - config "false"; - type uint64; - } - leaf errRouteLookupFailed { - config "false"; - type uint64; - } - leaf errHopLimitExceeded { - config "false"; - type uint64; - } - leaf errIngressIfMgrInitDrops { - config "false"; - type uint32; - } - leaf errRpfDrop { - config "false"; - type uint32; - } - leaf errOptionHeader { - config "false"; - type uint64; - } - leaf errPayloadLenTooSmall { - config "false"; - type uint64; - } - leaf errPMFailed { + grouping sysmgr_FwSt-group { + description "Firmware State"; + + // Type of the firmware + leaf type { config "false"; - type uint64; + + type sysmgr_FwT; + description "Type"; } - leaf errMbufError { + + // The firmware mode in which we are running, either + // it is recovery or regular mode + leaf mode { config "false"; - type uint64; + + type sysmgr_FwMode; + description "Mode"; } - leaf errEncapError { + } + + grouping sysmgr_SysCfgSt-group { + description "MDP Replay Ascii Configuration mode and Operational Data Publish Status"; + + // MDP Replay Ascii configuration mode + leaf cfgMode { config "false"; - type uint64; + + type sysmgr_CfgMode; + description "MDP Replay Ascii Configuration State. ['init']-Initial, ['replay']-Configuration replay started, ['done']-Configuration replay completed."; } - leaf errPktsDroppedDestIfDown { + + // MDP operational data publish mode + leaf operDataMode { config "false"; - type uint64; + + type sysmgr_OperDataMode; + description "MDP Operational Data Publish Mode State. ['init']-Initial, ['publish']-Data publish started, ['done']-System ready or Box Online."; } - leaf pktsRecvRx { - config "false"; - type uint64; + } + + grouping sysmgr_Config-group { + description "To configure sysmgr properties."; + + // Admin state to configure sysmgr param + leaf adminSt { + + type sysmgr_CfgAdminSt; + description "State to configure sysmgr properites"; } - leaf bytesRecvRx { - config "false"; - type uint64; + + leaf traceMask { + + type sysmgr_TraceMask; + description "Mask to set sysmgr log trace(in hex)"; } - leaf headerErrorsRx { + + // Operational state of trace setting + leaf operSt { config "false"; - type uint32; + + type sysmgr_OperState; + description "Operational status set by sysmgr"; } - leaf noRoutesRx { - config "false"; - type uint32; + + // Fast-reload timer value for network stabilization + // cli:sh system fast-reload stabilization-timer + leaf fastReloadTimer { + + type sysmgr_ReloadTimer; + description "Fast-reload timer value for network stabilization(in secs). Used only during fast-reload"; } - leaf addrErrorRx { - config "false"; - type uint32; + + // MO definition to configure system cores + container systemcore-items { + + uses sysmgr_SystemCore-group; + description "sysmgr configure system cores"; } - leaf unknownProtoRx { - config "false"; - type uint32; + } + + grouping sysmgr_SystemCore-group { + description "sysmgr configure system cores"; + + // Admin state to configure sysmgr param + leaf adminSt { + + type sysmgr_CoreAdminSt; + description "State to configure sysmgr properites"; } - leaf truncatedPktsRx { - config "false"; - type uint32; + + leaf uriType { + + type sysmgr_CoreUriType; + description "URI type of uri provided"; } - leaf forwardgramsRx { - config "false"; - type uint64; + leaf server { + type string; + description "Config server for shipping cores"; } - leaf reassemblyRequiredRx { - config "false"; - type uint32; + leaf path { + type string; + description "Dir patch for shipping cores"; } - leaf reassemblySuccessfulRx { - config "false"; - type uint32; + leaf vrf { + type string; + description "VRF for shipping cores"; } - leaf reassemblyFailedRx { + + // Operational state of system core setting + leaf operSt { config "false"; - type uint32; + + type sysmgr_OperState; + description "Operational status set by sysmgr"; } - leaf discardedPktsRx { + } + + grouping sysmgrp_Cores-group { + description "Core File Policy"; + leaf dest { config "false"; - type uint32; + type string; + description "Destination"; } - leaf deliveredPktsRx { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - leaf mcastPktsRx { + + // Clients can add their own data for entity correlation + leaf ownerKey { config "false"; - type uint64; + + type naming_Descr; + description "TBD"; } - leaf mcastBytesRx { + + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { config "false"; - type uint64; + + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; + } + description "TBD"; } - leaf pktsSentTx { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf bytesSentTx { + } + + grouping sysmgr_ShowVersion-group { + description "Show Version CLI"; + leaf copyRight { config "false"; - type uint64; + type string; + description "Copy Right"; } - leaf sentRequestsTx { + leaf biosVersion { config "false"; - type uint64; + type string; + description "Bios Version"; } - leaf noRoutesTx { + leaf nxosVersion { config "false"; - type uint32; + type string; + description "Nxos Version"; } - leaf forwardgramsTx { + leaf biosCompileTime { config "false"; - type uint64; + type string; + description "Bios Compile Time"; } - leaf discardedPktsTx { + leaf nxosImageFile { config "false"; - type uint32; + type string; + description "Nxos Image File"; } - leaf fragRequiredTx { + leaf nxosCompileTime { config "false"; - type uint32; + type string; + description "Nxos Compile Time"; } - leaf fragSuccesfulTx { + leaf bootflashSize { config "false"; type uint32; + description "Bootflash Size"; } - leaf fragFailedTx { + leaf kernelUptime { config "false"; - type uint32; + type string; + description "Kernel Uptime"; } - leaf fragCreatesTx { + leaf lastResetTime { config "false"; - type uint32; + type string; + description "Last Reset Time"; } - leaf transmitsTx { + leaf lastResetReason { config "false"; - type uint64; + type string; + description "Last Reset Reason"; } - leaf mcastPktsTx { + leaf lastResetSysVersion { config "false"; - type uint64; + type string; + description "Last Reset System Version"; } - leaf mcastBytesTx { + leaf lastResetService { config "false"; - type uint64; + type string; + description "Last Reset Service"; } - leaf rpUcastPktsForwarded { + leaf plugin { config "false"; - type uint32; + type string; + description "Plugin"; } - leaf rpUcastPktsOriginated { + leaf activePackage { config "false"; - type uint32; + type string; + description "Active Package"; } - leaf rpUcastPktsConsumed { - config "false"; - type uint32; + } + + grouping tcpudp_Entity-group { + description "Tcpdp Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf rpUcastBytesForwarded { - config "false"; - type uint32; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf rpUcastBytesOriginated { + + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_EntOperSt; + description "Operational State"; } - leaf rpUcastBytesConsumed { - config "false"; - type uint32; + + // This objects hold per tcpudp instance information. There is + // only one instance of tcpudp running in the system today + container inst-items { + + uses tcpudp_Inst-group; + description "Tcpudp Instance"; } - leaf rpMcastPktsForwarded { - config "false"; - type uint32; + } + + grouping tcpudp_Inst-group { + description "Tcpudp Instance"; + + // Set time to wait on new TCP connections + leaf synWaitTime { + + type tcpudp_SynwaitTime; + description "Set time to wait on new TCP connections"; } - leaf rpMcastPktsOriginated { - config "false"; - type uint32; + + // Enable path-MTU discovery on TCP + leaf pathMtuDiscovery { + + type nw_AdminSt; + default "disabled"; + description "Enable path-MTU discovery on TCP"; } - leaf rpMcastPktsConsumed { - config "false"; - type uint32; + + // Setting up TCP Maximum Segment Size in Bytes + leaf tcpMssBytes { + + type tcpudp_TCPMss; + description "Set the Tcp Mss Byte"; } - leaf rpMcastBytesForwarded { - config "false"; - type uint32; + + // Setting up TCP Socket Local Start Port Range + leaf tcpStartPortRange { + + type tcpudp_TcpStartPort; + description "Sockets Local Start Port Range"; } - leaf rpMcastBytesOriginated { - config "false"; - type uint32; + + // Setting up TCP Socket Local End Port Range + leaf tcpEndPortRange { + + type tcpudp_TcpEndPort; + description "Sockets Local End Port Range"; } - leaf rpMcastBytesConsumed { - config "false"; - type uint32; + + // Setting dscp value for ip dscp + leaf dscpLop { + + type tcpudp_DscpLop; + description "DSCP value for Locally Originated Packets"; + } + + container localport-items { + + uses tcpudp_LocalPort-group; + description "Sockets Local Port Range information"; } } - grouping l1cap_Prov-group { + grouping tcpudp_LocalPort-group { + description "Sockets Local Port Range information"; - // Subject consuming the capability. - // Type is an MO-Defined-Type - leaf subj { + leaf kstackStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type l1cap_Subj; + type tcpudp_TcpStartPort; + description "Kstack Start Port:"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { + leaf kstackEndPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type tcpudp_TcpEndPort; + description "Kstack End Port:"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { + leaf netstackStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type tcpudp_TcpStartPort; + description "Netstack Start Port:"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { + leaf netstackEndPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_StorageHint; + type tcpudp_TcpEndPort; + description "Netstack End Port:"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { + leaf natStartPort { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_RuleT; + type tcpudp_TcpStartPort; + description "Nat Start Port:"; } - } - grouping ethpm_Entity-group { + leaf natEndPort { + config "false"; + + type tcpudp_TcpEndPort; + description "Nat End Port:"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This class shall store the global configuration - // for a running EthPM instance. We have single EthPM - // in a system - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package ethpm - uses ethpm_Inst-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping ethpm_Inst-group { - leaf vlanTagNative { - type boolean; - } + grouping terminal_Terminal-group { + description "Terminal"; - // System default layer - // Type is an MO-Defined-Type - leaf systemDefaultLayer { - description "System Default Layer"; + // Line MO is the MO inside which type of line either vty or console + // would be organize + container ln-items { - // Type is an MO-Defined-Type - type l1_Layer; + uses terminal_Line-group; + description "line"; } + } - // System default admin st - // Type is an MO-Defined-Type - leaf systemDefaultAdminSt { - description "System Default Admin St"; - - // Type is an MO-Defined-Type - type l1_AdminSt; - } + grouping terminal_Line-group { + description "line"; - // System jumbo Mtu - // Type is an MO-Defined-Type - leaf systemJumboMtu { - description "System Jumbo MTU"; + // Console MO is to consolidate the console specific MO and its + // properties which is propretary for the vsh session which is + // spawned via console port + container cons-items { - // Type is an MO-Defined-Type - type l1_Mtu; + uses terminal_Console-group; + description "line type console"; } - // System logging event - // Type is an MO-Defined-Type - leaf logEvent { - description "Logging Interface events"; + // VTY MO is to consolidate the VTY specific MO and its + // properties which is propretary for the vsh session which is + // spawned via mgmt/telnet ip to box + container vty-items { - // Type is an MO-Defined-Type - type l1_LogEventBitmap; + uses terminal_Vty-group; + description "line type vty"; } + } - // System logging level - // Type is an MO-Defined-Type - leaf logLevel { - description "Logging level"; + grouping terminal_Console-group { + description "line type console"; - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + // Organizes the exec timeout specific properties + container execTmeout-items { + + uses terminal_ExecTimeout-group; + description "Configure exec timeout of terminal"; } - // Total pacer credits - // Type is an MO-Defined-Type - leaf pacerTotalCredits { - config "false"; - description "Total Pacer Credits"; + // Organizes the console terminal width specific properties + container wdth-items { - // Type is an MO-Defined-Type - type ethpm_TotalCredits; + uses terminal_Width-group; + description "Configure terminal width"; } - // Access pacer credits - // Type is an MO-Defined-Type - leaf pacerAccessCredits { - config "false"; - description "Access Pacer Credits"; + // Organizes the console terminal length specific properties + container lgth-items { - // Type is an MO-Defined-Type - type ethpm_AccessCredits; + uses terminal_Length-group; + description "Number of lines to be displayed on terminal"; } - // Trunk pacer credits - // Type is an MO-Defined-Type - leaf pacerTrunkCredits { - config "false"; - description "Trunk Pacer Credits"; + // Organizes the console terminal speed specific properties + container speed-items { - // Type is an MO-Defined-Type - type ethpm_TrunkCredits; + uses terminal_Speed-group; + description "terminal console speed"; } - // Per vlan pacer credits - // Type is an MO-Defined-Type - leaf pacerPerVlanCredits { - config "false"; - description "Per Vlan Pacer Credits"; + // Organizes the databits number properties + container databits-items { - // Type is an MO-Defined-Type - type ethpm_PerVlanCredits; + uses terminal_DataBits-group; + description "databits nums"; } - // Routed port pacer credits - // Type is an MO-Defined-Type - leaf pacerRtdPortCredits { - config "false"; - description "Routed Port Pacer Credits"; + // Organizes the async line stopbits properties + container stopbits-items { - // Type is an MO-Defined-Type - type ethpm_RouetdPortCredits; + uses terminal_StopBits-group; + description "async line stopbits"; } - // Per sub-interface pacer credits - // Type is an MO-Defined-Type - leaf pacerPerSiCredits { - config "false"; - description "Per Sub-interface Pacer Credits"; + // Organizes the terminal parity properties + container parity-items { - // Type is an MO-Defined-Type - type ethpm_PerSiCredits; + uses terminal_Parity-group; + description "databits nums"; } + } - // fabric port pacer credits - // Type is an MO-Defined-Type - leaf pacerFabricPortCredits { - config "false"; - description "Fabric Port Pacer Credits"; + grouping terminal_ExecTimeout-group { + description "Configure exec timeout of terminal"; + + leaf timeout { - // Type is an MO-Defined-Type - type ethpm_FabricPortCredits; + type terminal_TimeoutT; + description "Configure exec timeout of terminal"; } + } - // Pacer not connected timer value - // Type is an MO-Defined-Type - leaf pacerNotConnTimer { - config "false"; - description "Pacer Not Connected Timer Value"; + grouping terminal_Width-group { + description "Configure terminal width"; + + leaf termwidth { - // Type is an MO-Defined-Type - type ethpm_NotConnectedTimer; + type terminal_TermSize { + range "51..511"; + } + description "Configure width of the display terminal"; } + } - // Pacer not up timer value - // Type is an MO-Defined-Type - leaf pacerNotUpTimer { - config "false"; - description "Pacer not Up Timer Value"; + grouping terminal_Length-group { + description "Number of lines to be displayed on terminal"; - // Type is an MO-Defined-Type - type ethpm_NotUpTimer; - } - leaf allowUnsupportedSfp { - type boolean; - default "true"; - } + leaf termlength { - // Interface syslog info - // Type is an MO-Defined-Type - leaf ifSyslogInfo { - description "Interface Syslog Info"; + type terminal_TermSize { + range "0..511"; + } + description "Configure number of lines to display on terminal"; + } + } - // Type is an MO-Defined-Type - type ethpm_SyslogInfo; + grouping terminal_Speed-group { + description "terminal console speed"; + leaf speed { + type uint32 { + range "9600..115200"; + } + default "115200"; + description "console speed"; } + } - // Admin link-up syslog level - // Type is an MO-Defined-Type - leaf adminLinkUpSyslogLevel { - description "Admin Link-Up Syslog Level"; + grouping terminal_DataBits-group { + description "databits nums"; + leaf dataBits { + type uint32 { + range "5..8"; + } + default "8"; + description "databits numbers"; + } + } - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + grouping terminal_StopBits-group { + description "async line stopbits"; + leaf stopBits { + type uint32 { + range "1"; + } + default "1"; + description "async line stopbits"; } + } - // Admin link-down syslog level - // Type is an MO-Defined-Type - leaf adminLinkDownSyslogLevel { - description "Admin Link-Down Syslog Level"; + grouping terminal_Parity-group { + description "databits nums"; - // Type is an MO-Defined-Type - type ethpm_SyslogLevel; + leaf parity { + + type terminal_TermParity; + description "databits numbers"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping terminal_Vty-group { + description "line type vty"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Organizes the exec timeout specific properties + container execTmeout-items { + + uses terminal_ExecTimeout-group; + description "Configure exec timeout of terminal"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Organizes the VTY session's absolute timeout specific properties + container absTmeout-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses terminal_AbsTimeout-group; + description "Configure absolute timeout for terminal"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Organizes the VTY session's limit specific properties + container ssLmt-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses terminal_SesLmt-group; + description "Configure session limit"; } - container runtime-items { + // Organizes the VTY session's logout warning specific properties + container lgoutWarning-items { - // Added containment as a singleton: Prefix=runtime - // Acquired From Package ethpm - uses ethpm_InstRuntime-group; + uses terminal_LogoutWarning-group; + description "Logout warning time"; } + } - // Global Error-disable recovery related configuration - container errdisrecover-items { + grouping terminal_AbsTimeout-group { + description "Configure absolute timeout for terminal"; - // Added containment as a singleton: Prefix=errdisrecover - // Acquired From Package ethpm - uses ethpm_ErrDisRecover-group; + leaf timeout { + + type terminal_TimeoutT; + description "Configure absolute timeout for terminal"; } + } - // This object stores the runtime state of vlan inside ethpm - container vlan-items { - list Vlan-list { - config "false"; - key "id"; + grouping terminal_SesLmt-group { + description "Configure session limit"; - // Added containment: Prefix=vlan - // Acquired From Package ethpm - uses ethpm_Vlan-group; + leaf sesLmt { + + type terminal_Limit { + range "1..64"; } + description "Configure maximum number of concurrent vsh sessions allowed"; } + } - // This object stores the runtime state associated - // with a module inside ethpm - container module-items { - list Module-list { - config "false"; - key "id"; + grouping terminal_LogoutWarning-group { + description "Logout warning time"; - // Added containment: Prefix=module - // Acquired From Package ethpm - uses ethpm_Module-group; + leaf lgtWarn { + + type terminal_Limit { + range "0..60"; } + description "Configure logout warning time"; } } - grouping ethpm_InstRuntime-group { - leaf staticRMacCfgRefCount { - config "false"; - type uint32; - } - leaf pvlanTrunkCfgRefCount { - config "false"; - type uint32; - } - leaf dot1qRefCount { - config "false"; - type uint32; - } - leaf ethertypeRefCount { - config "false"; - type uint32; - } - leaf l3SatportRefCount { - config "false"; - type uint32; - } - leaf snmpIfTblLastChange { - config "false"; - type string; - } - leaf issuPacerRefCount { - config "false"; - type uint32; - } - leaf featurePongState { - config "false"; - type uint8; - } - leaf slowdrainCongCoreConfChkState { - config "false"; - type uint8; + grouping terminal_TerminalLog-group { + description "Enable accounting log for all commands"; + leaf logShowCommand { + type boolean; + description "Configure accounting log of all commands including the show commands"; } - leaf slowdrainCongEdgeConfChkState { + } + + grouping tunnel_If-group { + description "Tunnel Interface"; + leaf src { config "false"; - type uint8; + type address_Ip; + description "Tunnel Source IP"; } - leaf slowdrainPausConfChkState { + leaf dest { config "false"; - type uint8; + type address_Ip; + description "Tunnel Destination IP"; } - leaf slowdrainPausEdgeConfChkState { + + // Tunnel type + leaf tType { config "false"; - type uint8; + + type tunnel_TunnelQual; + description "Tunnel Type"; } - leaf eeeRefCount { + + // Tunnel VRF name + leaf vrfName { config "false"; - type uint32; + + type l3_VrfName; + description "VRF"; } - leaf fabpathCfgRefCount { + + // Tunnel MTU + leaf cfgdMtu { config "false"; - type uint32; + + type tunnel_ConfMtu; + description "MTU"; } - leaf dceSwId { + + // Tunnel keep-alive period + leaf keepAlvIntvl { config "false"; - type uint32; + + type tunnel_KeepAlvIntvl; + description "Keep Alive Interval"; } - leaf lifLoopbackDone { + + // Tunnel keep-alive retries + leaf keepAlvRetries { config "false"; - type boolean; + + type tunnel_KeepAlvRetries; + description "Keep Alive Retries"; } - leaf numBundles { + + // Tunnel administrative state + leaf adminSt { config "false"; - type uint32; + + type tunnel_AdminSt; + description "Administrative State"; } - // bundle If list - // Type is an MO-Defined-Type - leaf bundleIfList { + // Tunnel type + leaf type { config "false"; - description "Bundle Interface List"; - // Type is an MO-Defined-Type - type ethpm_IfBundleList1024; + type tunnel_EpT; + description "Endpoint Type"; } - // Configured loopback interfaces - // Type is an MO-Defined-Type - leaf lbIfs { + // Tunnel layer: L2 or L3 + leaf tLayer { config "false"; - description "Configured Loopback Interfaces"; - // Type is an MO-Defined-Type - type ethpm_LbBitmap; + type tunnel_LayerT; + description "Layer"; + } + leaf mac { + config "false"; + type address_Mac; + description "Destination MAC"; } - } - - grouping ethpm_ErrDisRecover-group { - // Error disable recovery interval - // Type is an MO-Defined-Type - leaf errDisRecovIntvl { - description "Error Disable Recovery Interval"; + // Tunnel operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type ethpm_ErrDisRecovIntvl; + type tunnel_OperSt; + description "Operational State"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr1024; + description "Description"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Interface ID of this endpoint + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container Event-items { - list Event-list { - key "event"; - // Added containment: Prefix=Event - // Acquired From Package ethpm - uses ethpm_Event-group; + // @@@Relationship to policy providing physical configuration of + // the ports @@@rel-def + // name="IfConf" + // type="named" + // from="fv:RsCcepConn" + // to="fabric:HIfPol" + // cardinality="1-to-1" + // owner="management" + // mod="explicit" + // > + // name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Each portIf under tunnel has two sets of banks to + // count the packets and bytes. This Mo is defined + // purely for statistics purposes + container bank-items { + list Bank-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses tunnel_Bank-group; + description "Bank list"; } + description "Bank"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object is purely for stats purposes. We count the + // tunnel stats on a given physical port. These port objects + // will be created by default whereever the tunnel can exit + // out. For example, all north bound tunnels will have the + // fabric ports created under it + container portif-items { + list PortIf-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses tunnel_PortIf-group; + description "Port Interface list"; + } + description "Port Interface"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - } - grouping ethpm_Vlan-group { + container rstunnelMbrIfs-items { - // vlan id TODO: how do we add properties to rn - // for objects owned by process? Currently - // compilation seems to fails if owner="oper" - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Vlan ID"; + list RsTunnelMbrIfs-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l2_DomId; - } - leaf numIf { - config "false"; - type uint32; - } - leaf flag { - config "false"; - type uint32; + uses tunnel_RsTunnelMbrIfs_source-group; + } } - // shut state of vlan - // Type is an MO-Defined-Type - leaf shutState { - config "false"; - description "Shut State of VLAN"; - - // Type is an MO-Defined-Type - type l1_AdminSt; - } + container rstunnelToLooseNode-items { - // state of vlan - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "Operational State of VLAN"; + list RsTunnelToLooseNode-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type l2_DomAdminSt; + uses tunnel_RsTunnelToLooseNode_source-group; + } } } - grouping ethpm_Module-group { - leaf id { - config "false"; - type uint8; - } - leaf numPortTypes { - config "false"; - type uint32; - } - leaf swCardId { - config "false"; - type uint16; - } + grouping tunnel_Bank-group { + description "Bank"; - // cfgd ports - // Type is an MO-Defined-Type - leaf cfgdPorts { + // Type + // Liked from ac:Bank:type + leaf type { config "false"; - description "Configured Ports"; - // Type is an MO-Defined-Type - type ethpm_PortBitmap; - } - leaf flags { - config "false"; - type uint32; - } - leaf runtimeNumPorts { - config "false"; - type uint8; + type ac_BankT; + description "Type"; } - // module type - // Type is an MO-Defined-Type - leaf moduleType { - config "false"; - description "Module Type"; + container dbgIngrTep-items { - // Type is an MO-Defined-Type - type l1_Module; - } - leaf isOffline { - config "false"; - type boolean; - } - leaf lcNodeAddress { - config "false"; - type uint32; - } - leaf portCfgSap { - config "false"; - type uint16; + uses tunnel_IngrTep-group; + description "Ingress TEP Counters"; } - // runtime ports - // Type is an MO-Defined-Type - leaf runtimePorts { - config "false"; - description "Runtime Ports"; + container dbgEgrTep-items { - // Type is an MO-Defined-Type - type ethpm_PortBitmap; + uses tunnel_EgrTep-group; + description "Egress TEP Counters"; } } - grouping im_Breakout-group { - container module-items { - list Mod-list { - key "id"; - - // Added containment: Prefix=module - // Acquired From Package im - uses im_Mod-group; - } - } - } + grouping tunnel_PortIf-group { + description "Port Interface"; - grouping im_Mod-group { leaf id { - type uint8 { - range "1..32"; - } + config "false"; + + type nw_IfId; + description "ID"; } - // Front-panel port - container fport-items { - list FpP-list { - key "id"; + // Each portIf under tunnel has two sets of banks to + // count the packets and bytes. This Mo is defined + // purely for statistics purposes + container bank-items { + list Bank-list { + config "false"; + key "type"; - // Added containment: Prefix=fport - // Acquired From Package im - uses im_FpP-group; + uses tunnel_Bank-group; + description "Bank list"; } + description "Bank"; } } - grouping im_FpP-group { - leaf id { - type uint8 { - range "1..72"; - } - } + grouping virtualService_VirtualServiceTop-group { + description "Virtual Service"; - // Breakout Map - // Type is an MO-Defined-Type - leaf breakoutMap { - description "Breakout Map"; + container global-items { - // Type is an MO-Defined-Type - type im_BreakoutMapT; + uses virtualService_GlobalConfig-group; + description "Virtual Service global configuration"; } } - grouping im_Entity-group { + grouping virtualService_GlobalConfig-group { + description "Virtual Service global configuration"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf signingLevel { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type virtualService_SigningLevel; + description "Signing level for allowed for virtual-service packages"; } + } + + grouping vtp_Entity-group { + description "VTP Entity"; // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This class shall store the global configuration - // for a running GIM instance. We have single GIM - // in a system - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package im - uses im_Inst-group; - } - } - - grouping im_Inst-group { - - // Type is an MO-Defined-Type - leaf mode100M { + // Operational errors qualifier + leaf operErr { config "false"; - description "Mode 100M"; - // Type is an MO-Defined-Type - type im_Mode100M; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Type is an MO-Defined-Type - leaf modeHwProfile { - config "false"; - description "Mode 4C, 2C+4Q"; + // This objects hold per vtp instance information. There is only + // one instance of vtp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type im_ModeHwProfile; + uses vtp_Inst-group; + description "VTP Instance"; } + container intf-items { + list Intf-list { + key "intf"; - // default VDC state - // Type is an MO-Defined-Type - leaf vdcSt { - config "false"; - description "Default VDC State"; - - // Type is an MO-Defined-Type - type l1_VdcSt; + uses vtp_Intf-group; + description "Interface which is enabled for VTP list"; + } + description "Interface which is enabled for VTP"; } + } - // Type is an MO-Defined-Type - leaf BreakoutProfile { - config "false"; - description "Breakout Profile"; - - // Type is an MO-Defined-Type - type im_BreakoutProfile; + grouping vtp_Inst-group { + description "VTP Instance"; + leaf domain { + type string; + description "domain"; + } + leaf version { + type uint32 { + range "1..2"; + } + default "1"; + description "version"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Mode + leaf mode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type vtp_Mode; + description "mode"; + } + leaf password { + type string; + description "password"; + } + leaf filePath { + type string; + default "bootflash:/vlan.dat"; + description "file"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Operational errors qualifier + leaf operErr { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container qsa-items { - list Qsa-list { - config "false"; - key "id"; + } - // Added containment: Prefix=qsa - // Acquired From Package im - uses im_Qsa-group; - } - } + grouping vtp_Intf-group { + description "Interface which is enabled for VTP"; - // This class shall store the software/feature capability - // information for the GIM instance - container cap-items { - list Capability-list { - config "false"; - key "id"; + // Domain + leaf intf { - // Added containment: Prefix=cap - // Acquired From Package im - uses im_Capability-group; - } + type nw_IfId; + description "Id (eg: eth1/3) of L2 interface which has VTP enabled"; } + } - // This object stores the runtime state associated - // with a module inside GIM - container module-items { - list Module-list { - config "false"; - key "id"; + grouping wedge_Bmc-group { + description "Wedge BMC IP"; - // Added containment: Prefix=module - // Acquired From Package im - uses im_Module-group; - } - } - } + leaf ipEnabled { - grouping im_Qsa-group { - leaf id { - config "false"; - type string; + type wedge_BmcIPEnabled; + description "BMC Ip Enabled Status"; + } + leaf ipAddr { + type address_Ip; + description "Wedge BMC IP Address"; } } - grouping im_Capability-group { - leaf id { - config "false"; - type uint32; - } - leaf autoInstCpbl { - config "false"; - type boolean; + grouping nbm_NbmTop-group { + description "Non Blocking Multicast."; + + container conf-items { + + uses nbm_ConfTables-group; + description "Non Blocking Multicast CONFIG Tables."; } - leaf isInstalled { - config "false"; - type boolean; + + container show-items { + + uses nbm_ShowTables-group; + description "Non Blocking Multicast Show Tables."; } } - grouping im_Module-group { - leaf id { - config "false"; - type uint8; - } - leaf numPorts { - config "false"; - type uint8; - } + grouping nbm_ConfTables-group { + description "Non Blocking Multicast CONFIG Tables."; - // Module type - // Type is an MO-Defined-Type - leaf moduleType { - config "false"; - description "Module Type"; + container flows-items { - // Type is an MO-Defined-Type - type l1_Module; - } - leaf swCardId { - config "false"; - type uint16; - } - leaf lcNodeAddress { - config "false"; - type uint32; - } - leaf portCfgSap { - config "false"; - type uint16; + uses nbm_Flows-group; + description "Non Blocking Multicast flow config table."; } - leaf isPresent { - config "false"; - type boolean; + + container grouprangelist-items { + + uses nbm_GroupRangeList-group; + description "Non Blocking Multicast ASM Range configuration."; } - leaf runtimeFlag { - config "false"; - type uint8; + + container interfaces-items { + + uses nbm_Interfaces-group; + description "Configure Interface role."; } - leaf moduleInitiEvalFlag { - config "false"; - type uint32; + + container global-items { + + uses nbm_GlobalConf-group; + description "Configure Interface role."; } - leaf lcExceptionFlag { - config "false"; - type uint32; + + // Top MO for branching everything under + container flowpolicytable-items { + + uses nbm_FlowPolicyTable-group; + description "Flow Policy Table."; } - leaf lcInsertPldSz { - config "false"; - type uint32; + + // HOST POLICIES + container hostpolicytable-items { + + uses nbm_HostPolicyTable-group; + description "Host Policy Table."; } + } - // Physical interface - container phys-items { - list PhysIf-list { - config "false"; - key "port"; + grouping nbm_Flows-group { + description "Non Blocking Multicast flow config table."; + + // CONFIG OBJECT FLOWS CONF MO TREE + container dom-items { + list ConfFlowsDom-list { + key "name"; - // Added containment: Prefix=phys - // Acquired From Package im - uses im_PhysIf-group; + uses nbm_ConfFlowsDom-group; + description "This object holds domain information list"; } + description "This object holds domain information"; } + } - // This object stores the information about - // different port-types in a module - container portinfo-items { - list PortInfo-list { - config "false"; - key "phyLayer"; + grouping nbm_ConfFlowsDom-group { + description "This object holds domain information"; - // Added containment: Prefix=portinfo - // Acquired From Package im - uses im_PortInfo-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + container s-items { + list ConfFlow-list { + key "source group"; + + uses nbm_ConfFlow-group; + description "Configured Flows. list"; } + description "Configured Flows."; } } - grouping im_PhysIf-group { + grouping nbm_ConfFlow-group { + description "Configured Flows."; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Runtime State of the Object or Policy"; + // Properties + leaf source { - // Type is an MO-Defined-Type - type l1_OperSt; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Operational physical port layer - // Type is an MO-Defined-Type - leaf operPhyLayer { - config "false"; - description "Operational Physical Port Layer"; + leaf group { - // Type is an MO-Defined-Type - type l1_PhyLayer; - } - leaf backplaneMac { - config "false"; - type address_Mac; - } - leaf operRouterMac { - config "false"; - type address_Mac; - } - leaf slot { - config "false"; - type uint8; + type nbm_nbmIpAddr; + description "Group being sent"; } - leaf port { - config "false"; - type uint8; + + leaf ingressIf { + + type nw_IfId; + description "Incoming Interface for this flow"; } - leaf moveStatus { - config "false"; - type uint32; + leaf bwKbps { + type uint64 { + range "0..25000000"; + } + description "Bandwidth requirement for this flow"; } - } - - grouping im_PortInfo-group { - // Physical Layer - // Type is an MO-Defined-Type - leaf phyLayer { - config "false"; - description "Physical Layer"; + leaf policer { - // Type is an MO-Defined-Type - type l1_PhyLayer; + type nbm_nbmFlowPolicerEn; + default "DISABLED"; + description "Enable or Disable Policer for this flow"; } - leaf numPorts { - config "false"; - type uint8; + container if-items { + list ConfFlowIf-list { + key "id"; + + uses nbm_ConfFlowIf-group; + description "Configured Flows Interface list"; + } + description "Configured Flows Interface"; } - leaf type { - config "false"; - type uint8; + container host-items { + list ConfFlowHost-list { + key "host"; + + uses nbm_ConfFlowHost-group; + description "Configured Flows Reporter IP list"; + } + description "Configured Flows Reporter IP"; } } - grouping pc_Entity-group { + grouping nbm_ConfFlowIf-group { + description "Configured Flows Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf id { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_IfId; + description "OIF Interface"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf isLhr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmNoYes; + description "Signals if this switch is LHR for this flow"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping nbm_ConfFlowHost-group { + description "Configured Flows Reporter IP"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + leaf host { + + type nbm_nbmIpAddr; + description "reporter IP Address"; } + } - // This object holds per port channel instance information - container pc-items { + grouping nbm_GroupRangeList-group { + description "Non Blocking Multicast ASM Range configuration."; + container dom-items { + list GroupRangeDom-list { + key "name"; - // Added containment as a singleton: Prefix=pc - // Acquired From Package pc - uses pc_Inst-group; + uses nbm_GroupRangeDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping pc_Inst-group { + grouping nbm_GroupRangeDom-group { + description "This object holds domain information"; - // Hash distribution type - // Type is an MO-Defined-Type - leaf hashDist { - config "false"; - description "Hash Distribution Type"; + leaf name { - // Type is an MO-Defined-Type - type pc_PCHashDist; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + container g-items { + list GroupRange-list { + key "group groupMask"; - // Load defer timeout - // Type is an MO-Defined-Type - leaf loadDeferTime { - config "false"; - description "Load Defer Timeout"; - - // Type is an MO-Defined-Type - type pc_LoadDeferTime; + uses nbm_GroupRange-group; + description "Non Blocking Multicast ASM Ranges. list"; + } + description "Non Blocking Multicast ASM Ranges."; } + } - // Max number of port-channels - // Type is an MO-Defined-Type - leaf maxChannels { - config "false"; - description "Max Number of Port-channels"; + grouping nbm_GroupRange-group { + description "Non Blocking Multicast ASM Ranges."; - // Type is an MO-Defined-Type - type pc_NumChannels; + leaf group { + + type nbm_nbmMcastIpAddr; + description "ASM Range Multicast Group."; } - // Number of used port-channels - // Type is an MO-Defined-Type - leaf usedChannels { - config "false"; - description "Number of Used Port-channels"; + leaf groupMask { - // Type is an MO-Defined-Type - type pc_NumChannels; + type nbm_nbmIpMask; + description "ASM Range Group Mask as integer."; } - // Number of free port-channels - // Type is an MO-Defined-Type - leaf freeChannels { - config "false"; - description "Number of Free Port-channels"; + leaf rangeType { - // Type is an MO-Defined-Type - type pc_NumChannels; + type nbm_nbmGroupRangeType; + description "ASM Range Type - SSM or ASM."; } + } - // Percentage of used port-channels - // Type is an MO-Defined-Type - leaf pcntChannels { - config "false"; - description "Percentage of Used Port-channels"; + grouping nbm_Interfaces-group { + description "Configure Interface role."; + container dom-items { + list InterfacesDom-list { + key "name"; - // Type is an MO-Defined-Type - type pc_PcntChannels; + uses nbm_InterfacesDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } + + grouping nbm_InterfacesDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + container if-items { + list If-list { + key "if"; - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + uses nbm_If-group; + description "Non Blocking Multicast Interface Link Role list"; + } + description "Non Blocking Multicast Interface Link Role"; + } + } - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping nbm_If-group { + description "Non Blocking Multicast Interface Link Role"; + + leaf if { + + type nbm_nbmIf; + description "Interface if-index."; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + leaf role { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nbm_nbmLinkRole; + description "Link Role."; + } + leaf unicastBwPercent { + type uint32; + default "255"; + description "Value reserved for Unicast BW percent per port."; + } + } + + grouping nbm_GlobalConf-group { + description "Configure Interface role."; + container dom-items { + list GlobalConfDom-list { + key "name"; + + uses nbm_GlobalConfDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping fcpm_Entity-group { + grouping nbm_GlobalConfDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container global-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nbm_GlobalConfig-group; + description "Non Blocking Multicast Global Config."; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } + grouping nbm_GlobalConfig-group { + description "Non Blocking Multicast Global Config."; - // This class shall store the global configuration - // for a running FcPM instance. We have single FcPM - // in a system - container inst-items { + leaf operMode { - // Added containment as a singleton: Prefix=inst - // Acquired From Package fcpm - uses fcpm_Inst-group; + type nbm_nbmOperationalMode; + description "NBM Operation mode."; } - } - - grouping fcpm_Inst-group { - // switch wwn - // Type is an MO-Defined-Type - leaf switchWWN { - description "Switch WWN"; + leaf defaultSenderHostPolicy { - // Type is an MO-Defined-Type - type fc_Wwn; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for Sender hosts."; } - // edtov - // Type is an MO-Defined-Type - leaf edTov { - description "Fc Protocol Error Detect Timeout"; + leaf defaultReceiverHostPolicy { - // Type is an MO-Defined-Type - type fc_TimeoutVal_1_4; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for Receiver hosts."; } - // raTov - // Type is an MO-Defined-Type - leaf raTov { - description "Fc Protocol Resource Allocation Timeout"; + leaf defaultPimHostPolicy { - // Type is an MO-Defined-Type - type fc_TimeoutVal_5_10; + type nbm_nbmPermit; + default "ALLOWED"; + description "Default Allow or Deny policy for PIM groups."; + } + leaf defaultflowBw { + type uint32; + default "0"; + description "Flow Policy Default BW."; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf defaultflowBwUnit { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type nbm_nbmBwUnitEn; + default "KBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; + } + leaf defaultDscp { + type uint32; + default "0"; + description "Default DSCP value for flows."; + } + leaf unicastBwPercent { + type uint8 { + range "0..100"; } + default "0"; + description "Unicast Bandwidth Reservation."; + } + leaf beaconAck { + type string; + default "0"; + description "NBM Process Init Alert ACK. Stops NBM from updating initBeacon."; + } + leaf subscriptionId { + type uint32; + default "0"; + description "DEPRECATED"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf defaultFlowPolicer { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmFlowPolicerEn; + description "Enable or Disable Policer for default Flow Policy"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf immediateBwRecovery { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nbm_nbmBwRecoveryEn; + description "Emable or Disable Immediate Flow BW Recovery"; } } - grouping l2fm_Entity-group { - - // mac-learn - // Type is an MO-Defined-Type - leaf macLearn { - description "mac-learn Enable Disable"; + grouping nbm_FlowPolicyTable-group { + description "Flow Policy Table."; + container dom-items { + list FlowPolicyDom-list { + key "name"; - // Type is an MO-Defined-Type - type l2fm_Learning; + uses nbm_FlowPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping l2rib_Entity-group { + grouping nbm_FlowPolicyDom-group { + description "This object holds domain information"; - // Global L2RIB instance configuration and operation state. - // There is only one instance of L2RIB at any time. - container inst-items { + leaf name { - // Added containment as a singleton: Prefix=inst - // Acquired From Package l2rib - uses l2rib_Inst-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - } - grouping l2rib_Inst-group { - - // L2RIB EVPN Host MAC Mobility Object - container evpn-items { + // Holds NBM configuration + container name-items { + list FlowPolicy-list { + key "name"; - // Added containment as a singleton: Prefix=evpn - // Acquired From Package l2rib - uses l2rib_EvpnMACmob-group; + uses nbm_FlowPolicy-group; + description "Non Blocking Multicast Flow Policy elements. list"; + } + description "Non Blocking Multicast Flow Policy elements."; } } - grouping l2rib_EvpnMACmob-group { - leaf ddMoves { - type uint16 { - range "1..1000"; + grouping nbm_FlowPolicy-group { + description "Non Blocking Multicast Flow Policy elements."; + leaf name { + type string { + pattern ".*[!-~]{0,63}.*"; } - default "5"; + description "Flow Policy Name String."; } - leaf ddDuration { - type uint16 { - range "2..36000"; - } - default "180"; + leaf bw { + type uint64; + description "Flow bandwidth."; } - leaf drTimeout { - type uint16 { - range "0..1800"; - } - default "30"; + + leaf bwUnit { + + type nbm_nbmBwUnitEn; + default "KBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; } - leaf drRetryCnt { - type uint16 { - range "0..3000"; + leaf dscp { + type uint32 { + range "0..63"; } - default "3"; + default "0"; + description "DSCP value for the flow."; } - } - grouping pvlan_Entity-group { + leaf policer { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type nbm_nbmFlowPolicerEn; + description "Enable or Disable Policer for this Flow Policy"; + } + container bgn-items { + list FlowPolicyRange-list { + key "groupBegin groupEnd"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nbm_FlowPolicyRange-group; + description "Multicast Group Range list"; } + description "Multicast Group Range"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping nbm_FlowPolicyRange-group { + description "Multicast Group Range"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf groupBegin { + + type nbm_nbmMcastIpAddr; + description "Flow Policy Group range start."; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf groupEnd { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nbm_nbmMcastIpAddr; + description "Flow Policy Group range end."; } + } - // This objects hold per pvlan instance information. There is only - // one instance of pvlanm running in the system today - container Inst-items { + grouping nbm_HostPolicyTable-group { + description "Host Policy Table."; + container dom-items { + list HostPolicyDom-list { + key "name"; - // Added containment as a singleton: Prefix=Inst - // Acquired From Package pvlan - uses pvlan_Inst-group; + uses nbm_HostPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping pvlan_Inst-group { + grouping nbm_HostPolicyDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container sender-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nbm_SenderHostPolicyTable-group; + description "Sender Host Policy Table."; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + container receiver-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses nbm_ReceiverHostPolicyTable-group; + description "Receiver Host Policy Table."; } - // Abstraction for a layer-1 interface in the system. - // The properties apply to all types of interfaces - container If-items { - list If-list { - key "if"; + container pim-items { - // Added containment: Prefix=If - // Acquired From Package pvlan - uses pvlan_If-group; - } + uses nbm_PimHostPolicyTable-group; + description "Pim Host Policy Table."; } + } - // Layer2 private-vlan. - container vlan-items { - list Pvlan-list { - key "id"; + grouping nbm_SenderHostPolicyTable-group { + description "Sender Host Policy Table."; + container seq-items { + list SenderHostPolicy-list { + key "seqNum"; - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_Pvlan-group; + uses nbm_SenderHostPolicy-group; + description "Sender Host Policies. list"; } + description "Sender Host Policies."; } } - grouping pvlan_If-group { + grouping nbm_SenderHostPolicy-group { + description "Sender Host Policies."; - // pvlan if id - // Type is an MO-Defined-Type - leaf if { - description "ifindex"; + leaf seqNum { - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // promiscous port mapping - // Type is an MO-Defined-Type - leaf promPriMapping { - description "primary vlan mapping"; + leaf host { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Type is an MO-Defined-Type - leaf promSecVlanMapping { - description "secondary vlan mapping"; + leaf group { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; } - // host port mapping - // Type is an MO-Defined-Type - leaf priHostVlan { - description "primary Host Vlan"; + leaf groupMask { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmIpMask; + description "Group Mask as integer"; } - // Type is an MO-Defined-Type - leaf secHostVlan { - description "Host Vlan"; + leaf permission { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } + } - // Type is an MO-Defined-Type - leaf nativevlan { - description "Native Vlan"; + grouping nbm_ReceiverHostPolicyTable-group { + description "Receiver Host Policy Table."; - // Type is an MO-Defined-Type - type l2_DomId; + // Receiver Policy + container seq-items { + list ReceiverHostPolicy-list { + key "seqNum"; + + uses nbm_ReceiverHostPolicy-group; + description "Receiver Host Policies list"; + } + description "Receiver Host Policies"; } + } - // Type is an MO-Defined-Type - leaf tallowedvlans { - description "Trunk Allowed Vlans"; + grouping nbm_ReceiverHostPolicy-group { + description "Receiver Host Policies"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + leaf seqNum { + + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf host { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf source { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nbm_nbmIpAddr; + description "Host IP Address"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + leaf group { - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; } - // trunk promiscous port mapping - container pvlanPromTable-items { - - // Added containment as a singleton: Prefix=pvlanPromTable - // Acquired From Package pvlan - uses pvlan_PvlanTPromTable-group; - } - - // trunk secondary port mapping - container PvlanTSecTable-items { - - // Added containment as a singleton: Prefix=PvlanTSecTable - // Acquired From Package pvlan - uses pvlan_PvlanTSecTable-group; - } - - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - container rtvrfMbr-items { + leaf groupMask { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nbm_nbmIpMask; + description "Group Mask as integer"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf permission { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } } - grouping pvlan_PvlanTPromTable-group { + grouping nbm_PimHostPolicyTable-group { + description "Pim Host Policy Table."; - // trunk promiscous vlan mapping entries - container vlan-items { - list PvlanTPromEntry-list { - key "priVlanId"; + // External Receiver Host Policy + container seq-items { + list PimHostPolicy-list { + key "seqNum"; - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_PvlanTPromEntry-group; + uses nbm_PimHostPolicy-group; + description "PIM Host Policies list"; } + description "PIM Host Policies"; } } - grouping pvlan_PvlanTPromEntry-group { + grouping nbm_PimHostPolicy-group { + description "PIM Host Policies"; - // Type is an MO-Defined-Type - leaf priVlanId { - description "primary Vlan Id"; + leaf seqNum { - // Type is an MO-Defined-Type - type l2_DomId; + type nbm_nbmHostPolicySeq; + description "Unique Sequence Number for Policies"; } - // Type is an MO-Defined-Type - leaf secvlans { - description "secondary vlan bitset"; + leaf source { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmIpAddr; + description "Host IP Address"; } - } - grouping pvlan_PvlanTSecTable-group { + leaf group { - // trunk secondary vlan mapping entries - container vlan-items { - list PvlanTSecEntry-list { - key "priVlanId"; + type nbm_nbmMcastIpAddr; + description "Multicast Group"; + } - // Added containment: Prefix=vlan - // Acquired From Package pvlan - uses pvlan_PvlanTSecEntry-group; - } + leaf groupMask { + + type nbm_nbmIpMask; + description "Group Mask as integer"; + } + + leaf permission { + + type nbm_nbmPermit; + description "Is the given policy to Allow or Deny a host"; } } - grouping pvlan_PvlanTSecEntry-group { + grouping nbm_ShowTables-group { + description "Non Blocking Multicast Show Tables."; - // Type is an MO-Defined-Type - leaf priVlanId { - description "Primary Vlan Id"; + container appliedpolicies-items { - // Type is an MO-Defined-Type - type l2_DomId; + uses nbm_AppliedPolicyTable-group; + description "Non Blocking Multicast applied policy related show tables."; } - // Type is an MO-Defined-Type - leaf secVlanId { - description "Secondary Vlan Id"; + container flows-items { - // Type is an MO-Defined-Type - type l2_DomId; + uses nbm_FlowsTable-group; + description "Non Blocking Multicast flow display table."; } - } - grouping pvlan_Pvlan-group { + container stats-items { - // Private-vlan id - // Type is an MO-Defined-Type - leaf id { - description "Pvlan ID"; + uses nbm_StatsTable-group; + description "Non Blocking Multicast Stats display table."; + } - // Type is an MO-Defined-Type - type l2_DomId; + // OPER GLOBAL + container global-items { + + uses nbm_GlobalShow-group; + description "Show MOs."; } - // Private Vlan Type (Primary, Community, Isolated) - // Type is an MO-Defined-Type - leaf vlanType { - description "Privte-vlan type"; + container endpoints-items { - // Type is an MO-Defined-Type - type l2_PvlanTypes; + uses nbm_EndPointsTable-group; + description "End Point Table. Contains details of all discovered endpoints on a switch."; } - // Association of primary to secondary vlans - // Type is an MO-Defined-Type - leaf association { - description "Secondary Association"; + // OPER GLOBAL + container faults-items { - // Type is an MO-Defined-Type - type l2_VlanBitmap; + uses nbm_FaultsTable-group; + description "Show Config MO Faults."; } } - grouping vlanmgr_Entity-group { + grouping nbm_AppliedPolicyTable-group { + description "Non Blocking Multicast applied policy related show tables."; + container dom-items { + list AppliedPolicyDom-list { + key "name"; + + uses nbm_AppliedPolicyDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; + } + } + + grouping nbm_AppliedPolicyDom-group { + description "This object holds domain information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // APPLIED Policy Oper MO + container host-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses nbm_AppliedHostPolicy-group; + description "Applied Host Policies"; } + } - // This objects hold per vlan-mgr instance information. There is only - // one instance of vlan-mgr running in the system today - container inst-items { + grouping nbm_AppliedHostPolicy-group { + description "Applied Host Policies"; + container seq-items { + list AppliedPolicy-list { + config "false"; + key "seqNum policyType if"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vlanmgr - uses vlanmgr_Inst-group; + uses nbm_AppliedPolicy-group; + description "Applied Sender and Local Receiver Policies list"; + } + description "Applied Sender and Local Receiver Policies"; } } - grouping vlanmgr_Inst-group { + grouping nbm_AppliedPolicy-group { + description "Applied Sender and Local Receiver Policies"; + leaf seqNum { + config "false"; + type uint64; + description "Preference"; + } - // Vdc id - // Type is an MO-Defined-Type - leaf vdcId { + leaf policyType { config "false"; - description "VDC ID"; - // Type is an MO-Defined-Type - type l2_VdcId; + type nbm_nbmPolicyType; + description "Sender, Local Receiver, or External Receiver"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + leaf if { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nbm_nbmIf; + description "Interface to which policy is applicable"; + } + leaf ifName { + config "false"; + type string; + description "Interface name where policy is applied."; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + leaf isActive { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmNoYes; + description "Applied ACTIVE or PASSIVE."; } - - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + leaf tStamp { config "false"; - description "Controls"; + type uint64; + description "Time Stamp when entry created"; + } + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + grouping nbm_FlowsTable-group { + description "Non Blocking Multicast flow display table."; + + // FLOWS SHOW MO TREE + container dom-items { + list FlowsDom-list { + key "name"; + + uses nbm_FlowsDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } - // DomainMbrIf class - container dommbr-items { - list DomMbrIf-list { + grouping nbm_FlowsDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Holds NBM configuration + container s-items { + list NbmFlow-list { config "false"; - key "ifIdx"; + key "source group"; - // Added containment: Prefix=dommbr - // Acquired From Package l2 - uses l2_DomMbrIf-group; + uses nbm_NbmFlow-group; + description "Non Blocking Multicast Elements list"; } + description "Non Blocking Multicast Elements"; } } - grouping l2_DomMbrIf-group { + grouping nbm_NbmFlow-group { + description "Non Blocking Multicast Elements"; - // if-index (Secondary Key) - // Type is an MO-Defined-Type - leaf ifIdx { + // Properties + leaf source { config "false"; - description "Interface Index"; - // Type is an MO-Defined-Type - type nw_IfId; + type nbm_nbmIpAddr; + description "source IP Address"; } - // create-flag to track interface creation status - // Type is an MO-Defined-Type - leaf createFlag { + leaf group { config "false"; - description "Create Flag"; - // Type is an MO-Defined-Type - type l2_CreateState; + type nbm_nbmIpAddr; + description "Group being sent"; } - // bundle_port_state to track port-channel's operational status - // Type is an MO-Defined-Type - leaf bundlePortSt { + leaf ingressIf { config "false"; - description "Bundle Port State"; - // Type is an MO-Defined-Type - type l1_OperSt; + type nbm_nbmIf; + description "ingress Interface for this flow"; } - - // phy-port-state to track port's physical state - // Type is an MO-Defined-Type - leaf phyPortState { + leaf ingressIfName { config "false"; - description "Physical Port State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type string; + description "OIF Interface name"; } - - // pm-port-state to track port's protocol state - // Type is an MO-Defined-Type - leaf pmPortState { + leaf egressIfCount { config "false"; - description "Protocol State"; - - // Type is an MO-Defined-Type - type l1_OperSt; + type uint32; + description "OIF Count for this flow"; } - - // port's access vlan - // Type is an MO-Defined-Type - leaf accessVlan { + leaf flowPol { config "false"; - description "Access VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type string; + description "Flow Policy Used for this flow."; } - - // port's native vlan - // Type is an MO-Defined-Type - leaf nativeVlan { + leaf bwKbps { config "false"; - description "Native VLAN"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint64; + description "Bandwidth used"; } - - // pm-port-mode to track port's mode (access, trunk etc) - // Type is an MO-Defined-Type - leaf pmPortMode { + leaf dscp { config "false"; - description "Port Mode"; - - // Type is an MO-Defined-Type - type l1_Mode; + type uint32; + description "DSCP in use"; } - - // allowed-vlan-bitmap used to track vlans that are configured on the interface - // Type is an MO-Defined-Type - leaf allowedVlanBmp { + leaf qid { config "false"; - description "Allowed Vlan Bitmap"; - - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type uint32; + description "Queue ID"; } - // up-vlan-bitmap used to track vlans that are up on the interface - // Type is an MO-Defined-Type - leaf trunkPortUpVlanBmp { + leaf isFhr { config "false"; - description "Trunk Port Up Vlan Bitmap"; - // Type is an MO-Defined-Type - type l2_VlanBitmap; + type nbm_nbmNoYes; + description "Signals if this switch is FHR for this flow"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + leaf policed { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type nbm_nbmNoYes; + description "Is the corresponding flow policy set to install ingress policer."; } - } - - grouping nvo_Eps-group { - - container evpnmulticast-items { - - // Added containment as a singleton: Prefix=evpnmulticast - // Acquired From Package nvo - uses nvo_EvpnMulticast-group; + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when entry created"; } - - container multisite-items { - - // Added containment as a singleton: Prefix=multisite - // Acquired From Package nvo - uses nvo_EvpnMultisiteBordergw-group; + leaf bucket { + config "false"; + type uint16; + description "Telemetry filter bucket"; } - container epId-items { - list Ep-list { - key "epId"; - // Added containment: Prefix=epId - // Acquired From Package nvo - uses nvo_Ep-group; + // MO FOR OIFs + container oif-items { + list OifList-list { + config "false"; + key "oif"; + + uses nbm_OifList-group; + description "Non Blocking Multicast OIF List list"; } + description "Non Blocking Multicast OIF List"; } } - grouping nvo_EvpnMulticast-group { + grouping nbm_OifList-group { + description "Non Blocking Multicast OIF List"; - // Type is an MO-Defined-Type - leaf state { - description "Advertise EVPN Multicast State."; + leaf oif { + config "false"; - // Type is an MO-Defined-Type - type nvo_EvpnMcastStT; + type nbm_nbmIf; + description "OIF Interface"; + } + leaf oifName { + config "false"; + type string; + description "OIF Interface name"; } - } - grouping nvo_EvpnMultisiteBordergw-group { + leaf reporterIP { + config "false"; - // Type is an MO-Defined-Type - leaf state { - description "Configures the state of EVPN Multisite Border-gateway."; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver. Only LHR Need publish this"; + } - // Type is an MO-Defined-Type - type nvo_MultisiteStateT; + leaf origin { + config "false"; + + type nbm_nbmOifOrigin; + default "PROTOCOL"; + description "OIF Origin - static, dynamic or both"; } - leaf siteId { + leaf oifTstamp { + config "false"; type uint64; + description "Time Stamp when entry created"; } - leaf delayRestoreTime { - type uint16 { - range "30..1000"; + } + + grouping nbm_StatsTable-group { + description "Non Blocking Multicast Stats display table."; + container dom-items { + list StatsDom-list { + key "name"; + + uses nbm_StatsDom-group; + description "This object holds domain information list"; } - default "180"; + description "This object holds domain information"; } } - grouping nvo_Ep-group { + grouping nbm_StatsDom-group { + description "This object holds domain information"; - // Type is an MO-Defined-Type - leaf epId { - description "Network Virtualization Overlay Endpoint (NVE) ID"; + leaf name { - // Type is an MO-Defined-Type - type nvo_EpIdT; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Up or Down state of the NVE."; + // Holds NBM configuration + container s-items { + list StatsEntry-list { + config "false"; + key "source group"; - // Type is an MO-Defined-Type - type nw_AdminSt; - } - leaf descr { - type string; + uses nbm_StatsEntry-group; + description "Non Blocking Multicast Elements list"; + } + description "Non Blocking Multicast Elements"; } + } - // Type is an MO-Defined-Type - leaf sourceInterface { - description "Source Interface associated with the NVE."; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping nbm_StatsEntry-group { + description "Non Blocking Multicast Elements"; - // Type is an MO-Defined-Type - leaf multisiteBordergwInterface { - description "Interface representing the Multisite Border Gateway."; + // Properties + leaf source { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf holdDownTime { - type uint16 { - range "1..1000"; - } - default "180"; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Type is an MO-Defined-Type - leaf hostReach { - description "Host Reachability Protocol."; + leaf group { + config "false"; - // Type is an MO-Defined-Type - type nvo_HostReachT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - leaf suppressARP { - type boolean; + leaf allowedPkts { + config "false"; + type uint64; + description "Allowed Packets"; } - - // Type is an MO-Defined-Type - leaf mcastGroupL2 { - description "Base multicast group address for L2."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + leaf allowedBytes { + config "false"; + type uint64; + description "Allowed Bytes"; } - - // Type is an MO-Defined-Type - leaf mcastGroupL3 { - description "Base multicast group address for L3."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + leaf deniedPkts { + config "false"; + type uint64; + description "Denied Packets"; } - leaf ingressReplProtoBGP { - type boolean; + leaf deniedBytes { + config "false"; + type uint64; + description "Denied Bytes"; } - leaf advertiseVmac { - type boolean; - default "false"; + leaf totalPkts { + config "false"; + type uint64; + description "Total Packets"; } - leaf controllerId { - type uint32; - default "0"; + leaf totalBytes { + config "false"; + type uint64; + description "Total Bytes"; + } + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when stats read"; } + } - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Enable or disable VxLAN configuration via controller."; + grouping nbm_GlobalShow-group { + description "Show MOs."; + container dom-items { + list GlobalShowDom-list { + key "name"; - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + uses nbm_GlobalShowDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } + } - // Type is an MO-Defined-Type - leaf encapType { - description "Encapsulation Type."; + grouping nbm_GlobalShowDom-group { + description "This object holds domain information"; - // Type is an MO-Defined-Type - type nvo_EncapT; - } - leaf autoRemapReplicationServers { - type boolean; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf operState { - config "false"; - description "Operational State of the NVE."; + container global-items { - // Type is an MO-Defined-Type - type l2_DomOperSt; + uses nbm_GlobalOper-group; + description "Non Blocking Multicast Global Config"; } + } - // Type is an MO-Defined-Type - leaf operStSrcLoopbackIntf { + grouping nbm_GlobalOper-group { + description "Non Blocking Multicast Global Config"; + leaf initBeacon { config "false"; - description "Operational State Up or Down of NVE Source Loopback Interface."; - - // Type is an MO-Defined-Type - type l2_DomOperSt; + type uint64; + description "NBM Process Init Alert. Set to epoch every minute."; } - - // Type is an MO-Defined-Type - leaf operStMultisiteBrdrGwLoopbackIntf { + leaf apiVer { config "false"; - description "Operational State Up or Down of Multisite Border Gateway Loopback Interface."; - - // Type is an MO-Defined-Type - type l2_DomOperSt; + type uint8; + default "1"; + description "PMN API Version."; + } + leaf adminSt { + config "false"; + type uint8; + default "1"; + description "Configured or not."; } - // Type is an MO-Defined-Type - leaf adminStMultisiteBrdrGwLoopackIntf { + leaf operMode { config "false"; - description "Administrative State Up or Down of Multisite Border Gateway Loopback Interface."; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nbm_nbmOperationalMode; + description "NBM Operation mode."; } + } - // Type is an MO-Defined-Type - leaf operEncapType { - config "false"; - description "Operational encapsulation type."; + grouping nbm_EndPointsTable-group { + description "End Point Table. Contains details of all discovered endpoints on a switch."; + container dom-items { + list EpiDom-list { + key "name"; - // Type is an MO-Defined-Type - type nvo_EncapT; + uses nbm_EpiDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } - leaf mac { - config "false"; - type address_Mac; + } + + grouping nbm_EpiDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf virtualRtrMac { - config "false"; - type address_Mac; + container h-items { + list EndPoint-list { + config "false"; + key "hostIp if"; + + uses nbm_EndPoint-group; + description "Info on a discovered endpoint. list"; + } + description "Info on a discovered endpoint."; } - leaf virtualRtrMacReorig { + } + + grouping nbm_EndPoint-group { + description "Info on a discovered endpoint."; + + // Properties + leaf hostIp { config "false"; - type address_Mac; + + type nbm_nbmIpAddr; + description "Endpoint IP Address."; } - // Type is an MO-Defined-Type - leaf learningMode { + leaf if { config "false"; - description "Indicates the host learning mode (Control plane or data plane)."; - // Type is an MO-Defined-Type - type nvo_HostLearnModeT; + type nbm_nbmIf; + description "Interface index where endpoint is attached."; } - leaf holdUpTime { + leaf ifName { config "false"; - type uint16; + type string; + description "Interface name where endpoint is attached."; } - // Type is an MO-Defined-Type - leaf holdDownTimerExpiryTime { + leaf role { config "false"; - description "Indicates the time after which the hold down timer will expire (in milliseconds)."; - // Type is an MO-Defined-Type - type nvo_ETimeStamp; + type nbm_nbmEndpointRole; + description "End Point Role. This can be Unknown when discovered via ARP. And specific role when known."; } - // Type is an MO-Defined-Type - leaf holdUpTimerExpiryTime { - config "false"; - description "Indicates the time after which the hold up timer will expire (in milliseconds)."; + container arp-items { - // Type is an MO-Defined-Type - type nvo_ETimeStamp; + uses nbm_EndPointArp-group; + description "Info got via ARP from a discovered endpoint."; } + container g-items { + list EndPointSender-list { + config "false"; + key "group"; - // Type is an MO-Defined-Type - leaf delayRestoreMsBrdrGwExpiryTime { - config "false"; - description "Time when delay restore for Multisite Border Gateway Loopback Interface will expire."; - - // Type is an MO-Defined-Type - type nvo_ETimeStamp; - } - leaf vpcVIPNotified { - config "false"; - type boolean; + uses nbm_EndPointSender-group; + description "Info regarding Sender status on a discovered endpoint. list"; + } + description "Info regarding Sender status on a discovered endpoint."; } - leaf primaryIp { - config "false"; - type address_Ipv4; + container s-items { + list EndPointReceiver-list { + config "false"; + key "source group"; + + uses nbm_EndPointReceiver-group; + description "Info on a discovered endpoint as a receiver. list"; + } + description "Info on a discovered endpoint as a receiver."; } - leaf secondaryIp { + } + + grouping nbm_EndPointArp-group { + description "Info got via ARP from a discovered endpoint."; + + leaf mac { config "false"; - type address_Ipv4; + + type nbm_nbmMacAddr; + description "MAC Address of the endpoint."; } - leaf multisiteBrdrGwIntfIp { + leaf tStamp { config "false"; - type address_Ipv4; + type uint64; + description "Time Stamp when entry created"; } + } - container peers-items { - - // Added containment as a singleton: Prefix=peers - // Acquired From Package nvo - uses nvo_Peers-group; - } + grouping nbm_EndPointSender-group { + description "Info regarding Sender status on a discovered endpoint."; - container nws-items { + leaf group { + config "false"; - // Added containment as a singleton: Prefix=nws - // Acquired From Package nvo - uses nvo_Nws-group; + type nbm_nbmIpAddr; + description "Group being sent by this endpoint."; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf isExt { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmNoYes; + description "Is this an External Sender."; } - // Rel-def from operSourceInterface - container rsoperSourceInterface-items { + leaf faultReason { + config "false"; - // Added containment as a singleton: Prefix=rsoperSourceInterface - // Acquired From Package nvo - uses nvo_RsOperSourceInterface_source-group; + type nbm_nbmFaultType; + description "Signals reason of fault if any."; + } + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when entry created"; } } - grouping nvo_Peers-group { - container st_ir_peer-items { - list StIRPeer-list { - config "false"; - key "ip"; - - // Added containment: Prefix=st_ir_peer - // Acquired From Package nvo - uses nvo_StIRPeer-group; - } - } - container dyn_ir_peer-items { - list DyIRPeer-list { - config "false"; - key "ip"; + grouping nbm_EndPointReceiver-group { + description "Info on a discovered endpoint as a receiver."; - // Added containment: Prefix=dyn_ir_peer - // Acquired From Package nvo - uses nvo_DyIRPeer-group; - } - } - container dy_peer-items { - list DyPeer-list { - config "false"; - key "ip"; + leaf source { + config "false"; - // Added containment: Prefix=dy_peer - // Acquired From Package nvo - uses nvo_DyPeer-group; - } + type nbm_nbmIpAddr; + description "Source requested by this receiver. 0.0.0.0 in case of *."; } - // Commented out - // - // - // - // - // - // - // - container st_peer-items { - list StPeer-list { - key "ip"; + leaf group { + config "false"; - // Added containment: Prefix=st_peer - // Acquired From Package nvo - uses nvo_StPeer-group; - } + type nbm_nbmIpAddr; + description "Group requested by this receiver."; } - } - grouping nvo_StIRPeer-group { - leaf ip { + leaf isExt { config "false"; - type address_Ipv4; + + type nbm_nbmNoYes; + description "Is this an External Receiver."; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf faultReason { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmFaultType; + description "Signals reason of fault if any."; } - leaf upStateTransitionTs { + + leaf owner { config "false"; - type string; + + type nbm_nbmRcvOwner; + default "IGMP"; + description "IGMP or Static receiver."; } - leaf createTs { + leaf tStamp { config "false"; - type string; + type uint64; + description "Time Stamp when entry created"; } + } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + grouping nbm_FaultsTable-group { + description "Show Config MO Faults."; + container dom-items { + list FaultsDom-list { + key "name"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + uses nbm_FaultsDom-group; + description "This object holds domain information list"; + } + description "This object holds domain information"; } } - grouping nvo_Counters-group { - leaf txUcastpkts { - config "false"; - type uint64; + grouping nbm_FaultsDom-group { + description "This object holds domain information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf txUcastbytes { - config "false"; - type uint64; + container faults-items { + list Faults-list { + config "false"; + key "faultDn"; + + uses nbm_Faults-group; + description "Non Blocking Multicast Faults list"; + } + description "Non Blocking Multicast Faults"; } - leaf txMcastpkts { + } + + grouping nbm_Faults-group { + description "Non Blocking Multicast Faults"; + leaf faultDn { config "false"; - type uint64; + type string; + description "Config DN that's in fault"; } - leaf txMcastbytes { + leaf faultReason { config "false"; - type uint64; + type string; + default "Config_Inapplicable"; + description "Reason for occurance of this fault"; } - leaf rxUcastpkts { + leaf faultResolution { config "false"; - type uint64; + type string; + default "Delete_Config"; + description "How to resolve this Fault"; } - leaf rxUcastbytes { + leaf tStamp { config "false"; type uint64; + description "Time Stamp when fault occured"; } - leaf rxMcastpkts { - config "false"; - type uint64; + } + + grouping nbm_NbmCcTable-group { + description "Non Blocking Multicast Consistency Checker"; + + // Holds NBM CC + container eif-items { + list NbmCcFlowEntity-list { + config "false"; + key "egressIf srcIP dstIP"; + + uses nbm_NbmCcFlowEntity-group; + description "Non Blocking Multicast Consistency Checker Elements list"; + } + description "Non Blocking Multicast Consistency Checker Elements"; } - leaf rxMcastbytes { - config "false"; - type uint64; + container srcip-items { + list SenderCcTable-list { + config "false"; + key "srcIP destIP"; + + uses nbm_SenderCcTable-group; + description "Consistency Checker Sender Table list"; + } + description "Consistency Checker Sender Table"; + } + container repip-items { + list ReceiverCcTable-list { + config "false"; + key "reporterIP srcIP destIP"; + + uses nbm_ReceiverCcTable-group; + description "Consistency Checker Receiver Table list"; + } + description "Consistency Checker Receiver Table"; } } - grouping nvo_DyIRPeer-group { - leaf ip { + grouping nbm_NbmCcFlowEntity-group { + description "Non Blocking Multicast Consistency Checker Elements"; + + // Properties + leaf srcIP { config "false"; - type address_Ipv4; + + type nbm_nbmIpAddr; + description "source IP Address"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf dstIP { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - leaf upStateTransitionTs { + + leaf reporterIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver"; } - leaf createTs { + + leaf ingressIf { config "false"; - type string; + + type nbm_nbmIf; + description "ingress Interface"; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf egressIf { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmIf; + description "egress Interface"; } - } - - grouping nvo_DyPeer-group { - leaf ip { + leaf dscp { config "false"; - type address_Ipv4; + type uint32; + description "dscp value"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + leaf bandwidthUnit { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmBwUnitEn; + default "MBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; } - leaf upStateTransitionTs { + leaf bandwidth { config "false"; - type string; + type uint32; + description "bandwidth"; } - leaf mac { + leaf queueId { config "false"; - type address_Mac; + type uint8; + description "Queue Selection Id"; } + } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf firstVNI { - config "false"; - description "Indicates the first VNI on which the NVE peer was learnt."; + grouping nbm_SenderCcTable-group { + description "Consistency Checker Sender Table"; - // Type is an MO-Defined-Type - type nvo_VniT; - } - leaf createTs { + leaf srcIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "source IP address"; } - // Commented out - // - // - // - // - // - // - // - container cntrs-items { + leaf destIP { + config "false"; - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + type nbm_nbmIpAddr; + description "dest IP address"; } - } - - grouping nvo_StPeer-group { - leaf ip { - type address_Ipv4; + leaf iif { + config "false"; + type uint8; + description "CCiif"; } - - // Type is an MO-Defined-Type - leaf type { - description "NVO Peer type (mcast/physical)."; - - // Type is an MO-Defined-Type - type tunnel_EpT; + leaf dummyproperty1 { + config "false"; + type uint32; + description "Dummyprop1"; } - leaf peerId { + leaf dummyproperty2 { + config "false"; + type uint32; + description "Dummyprop2"; + } + leaf dummyproperty3 { + config "false"; type uint32; + description "Dummyprop3"; } + } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf state { + grouping nbm_ReceiverCcTable-group { + description "Consistency Checker Receiver Table"; + + leaf srcIP { config "false"; - description "Indicates the NVE Peer Up or Down state."; - // Type is an MO-Defined-Type - type nvo_PeerStateT; + type nbm_nbmIpAddr; + description "source IP address"; } - leaf upStateTransitionTs { + + leaf destIP { config "false"; - type string; + + type nbm_nbmIpAddr; + description "destination IP address"; } - leaf mac { + leaf oif { config "false"; - type address_Mac; + type uint8; + description "Outgoing Interface ID"; } - // Inherited From nvo:GenericPeer - // Type is an MO-Defined-Type - leaf firstVNI { + leaf reporterIP { config "false"; - description "Indicates the first VNI on which the NVE peer was learnt."; - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver CC Table"; } - leaf createTs { + leaf dummyproperty1 { config "false"; - type string; + type uint32; + description "Dummy Property 1"; } - - // Commented out - // - // - // - // - // - // - // - container cntrs-items { - - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + leaf dummyproperty2 { + config "false"; + type uint32; + description "Dummy Property 2"; + } + leaf dummyproperty3 { + config "false"; + type uint32; + description "Dummy Property 3"; } } - grouping nvo_Nws-group { - container vni-items { - list Nw-list { - key "vni"; + grouping nbm_NbmFlowsTable-group { + description "Non Blocking Multicast"; + leaf mode { + type string; + description "Modes - pim-active, controller, etc"; + } - // Added containment: Prefix=vni - // Acquired From Package nvo - uses nvo_Nw-group; + // Holds NBM configuration + container flowOp-items { + list NbmFlowEntity-list { + key "flowOp srcIP dstIP egressIf"; + + uses nbm_NbmFlowEntity-group; + description "Non Blocking Multicast Elements list"; } + description "Non Blocking Multicast Elements"; } - container opervni-items { - list OperNw-list { + + // Counter MO + container srcIP-items { + list NbmOifCounter-list { config "false"; - key "vni"; + key "srcIP dstIP"; - // Added containment: Prefix=opervni - // Acquired From Package nvo - uses nvo_OperNw-group; + uses nbm_NbmOifCounter-group; + description "Non Blocking Multicast OIF Counter list"; } + description "Non Blocking Multicast OIF Counter"; } - container vnis-items { - list NwRange-list { - key "vniRangeMin vniRangeMax"; - // Added containment: Prefix=vnis - // Acquired From Package nvo - uses nvo_NwRange-group; + // MO FOR IIF CHANGE - UNUSED FOR NOW + container iif-items { + list NbmUpdateIif-list { + key "newIngressIf srcIP dstIP"; + + uses nbm_NbmUpdateIif-group; + description "Non Blocking Multicast IIF Switcher list"; } + description "Non Blocking Multicast IIF Switcher"; } } - grouping nvo_Nw-group { + grouping nbm_NbmFlowEntity-group { + description "Non Blocking Multicast Elements"; - // Type is an MO-Defined-Type - leaf vni { - description "Configure Virtual Network ID"; + // Properties + leaf controllerIP { - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "Controller IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf suppressARP { - description "Enable or disable ARP suppression for VNI(s)."; + leaf controllerVIP { - // Type is an MO-Defined-Type - type nvo_SuppressARPT; + type nbm_nbmIpAddr; + description "Controller Virtual IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf mcastGroup { - description "Configures multicast group address for VNI(s)."; + leaf flowOp { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type nbm_nbmFlowOperEn; + description "Operation Type"; } - leaf associateVrfFlag { - type boolean; + + leaf srcIP { + + type nbm_nbmIpAddr; + description "source IP Address"; } - leaf isLegacyMode { - type boolean; + + leaf dstIP { + + type nbm_nbmIpAddr; + description "destination IP Address"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf multisiteIngRepl { - description "Enable or disable Multisite Ingress Replication for VNI(s)."; + leaf reporterIP { - // Type is an MO-Defined-Type - type nvo_MultisiteIngReplStateT; + type nbm_nbmIpAddr; + description "Reporter IP Address for Receiver"; } - // This property is hidden (secure="yes") and used only for internal validation. - // Following are the expected values - - // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" - // CLI - "cli" - // Controller - "controller" - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Internal system property. Not intended for external use."; + leaf ingressIf { - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + type nbm_nbmIf; + description "ingress Interface"; } - container IngRepl-items { + leaf egressIf { - // Added containment as a singleton: Prefix=IngRepl - // Acquired From Package nvo - uses nvo_IngRepl-group; + type nbm_nbmIf; + description "egress Interface"; + } + leaf egressIfCount { + type uint32; + description "OIF Count for this flow"; + } + leaf seqNum { + type uint32; + description "Sequence Number Exchanged between N9K and DCNM"; + } + leaf dscp { + type uint32; + description "dscp value"; + } + + leaf bandwidthUnit { + + type nbm_nbmBwUnitEn; + default "MBPS"; + description "bandwidth units - Mbps, Kbps, or Gbps"; + } + leaf bandwidth { + type uint32; + description "bandwidth"; + } + leaf queueId { + type uint8; + description "Queue Selection Id"; + } + leaf switchIif { + type uint8; + default "0"; + description "Is this a Switch IIF related message"; } } - grouping nvo_IngRepl-group { + grouping nbm_NbmOifCounter-group { + description "Non Blocking Multicast OIF Counter"; - // Type is an MO-Defined-Type - leaf proto { - description "Configure VxLAN Ingress Replication mode."; + leaf srcIP { + config "false"; - // Type is an MO-Defined-Type - type nvo_IngReplProtoT; + type nbm_nbmIpAddr; + description "source IP Address"; } - // This property is required specifically for configuring replication - // servers from the controller. When its value is replicationServer, it - // signifies that the static peers downloaded from controller should - // programmed wth vni hashing. This property directly maps to the - // replicationMode property in BdEntry MO in the aggregate model. - // And since this property is to be set only from the controller, it has - // been defined as hidden. So it will not be visible in REST/Netconf or - // any other external interface. - // Type is an MO-Defined-Type - leaf replMode { - description "Replication Mode. For internal use only."; + leaf dstIP { + config "false"; - // Type is an MO-Defined-Type - type nvo_ReplModeT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - container config_st_ir_peer-items { - list ConfigStIRPeer-list { - key "ip"; + leaf oifCount { + config "false"; + type uint32; + description "OIF Count"; + } + } - // Added containment: Prefix=config_st_ir_peer - // Acquired From Package nvo - uses nvo_ConfigStIRPeer-group; - } + grouping nbm_NbmUpdateIif-group { + description "Non Blocking Multicast IIF Switcher"; + + leaf srcIP { + + type nbm_nbmIpAddr; + description "source IP Address"; + } + + leaf dstIP { + + type nbm_nbmIpAddr; + description "destination IP Address"; + } + + leaf newIngressIf { + + type nbm_nbmIf; + description "New Ingress Interface"; + } + + leaf prevIngressIf { + + type nbm_nbmIf; + description "Prev Ingress Interface"; + } + leaf seqNum { + type uint32; + description "Sequence Number Exchanged between N9K and DCNM"; } } - grouping nvo_ConfigStIRPeer-group { - leaf ip { - type address_Ipv4; + grouping nbm_NbmStats-group { + description "Non Blocking Multicast"; + + // Holds NBM configuration + container srcIP-items { + list NbmStatsEntity-list { + config "false"; + key "srcIP dstIP"; + + uses nbm_NbmStatsEntity-group; + description "Non Blocking Multicast Elements list"; + } + description "Non Blocking Multicast Elements"; } } - grouping nvo_OperNw-group { + grouping nbm_NbmStatsEntity-group { + description "Non Blocking Multicast Elements"; - // Operational properties - // Type is an MO-Defined-Type - leaf vni { + // Properties + leaf srcIP { config "false"; - description "Virtual Network ID."; - // Type is an MO-Defined-Type - type nvo_VniT; + type nbm_nbmIpAddr; + description "source IP Address"; } - // Type is an MO-Defined-Type - leaf epId { + leaf dstIP { config "false"; - description "Network Virtualization Overlay endpoint (NVE) ID."; - // Type is an MO-Defined-Type - type nvo_EpIdT; + type nbm_nbmIpAddr; + description "destination IP Address"; } - - // Type is an MO-Defined-Type - leaf operMcastGroup { + leaf allowedPkts { config "false"; - description "Indicates the multicast group address."; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type uint64; + description "Allowed Packets"; } - leaf operSupprARP { + leaf allowedBytes { config "false"; - type boolean; + type uint64; + description "Allowed Bytes"; } - - // Type is an MO-Defined-Type - leaf state { + leaf deniedPkts { config "false"; - description "Indicates VNI Up or Down state."; - - // Type is an MO-Defined-Type - type nvo_VniStateT; + type uint64; + description "Denied Packets"; } - - // Type is an MO-Defined-Type - leaf mode { + leaf deniedBytes { config "false"; - description "Indicates VNI Host reachability mode."; - - // Type is an MO-Defined-Type - type nvo_HostLearnModeT; + type uint64; + description "Denied Bytes"; } - - // Type is an MO-Defined-Type - leaf type { + leaf totalPkts { config "false"; - description "Indicates if VNI is in L2 or L3 type."; - - // Type is an MO-Defined-Type - type nvo_VniTypeT; + type uint64; + description "Total Packets"; } - leaf vlanBD { + leaf totalBytes { config "false"; - type string; + type uint64; + description "Total Bytes"; } - - // Commented out - // - // - // - // - // - // - // - container cntrs-items { - - // Added containment as a singleton: Prefix=cntrs - // Acquired From Package nvo - uses nvo_Counters-group; + leaf tStamp { + config "false"; + type uint64; + description "Time Stamp when stats read"; } } - grouping nvo_NwRange-group { + grouping boot_Boot-group { + description "Configure boot images"; - // Type is an MO-Defined-Type - leaf vniRangeMin { - description "Configures the minimum value for the VNI range."; + // boot poap + leaf poap { - // Type is an MO-Defined-Type - type nvo_VniT; + type boot_Poap; + description "Boot Poap Enable Disable"; } - // Type is an MO-Defined-Type - leaf vniRangeMax { - description "Configures the maximum value for the VNI range."; + // boot order + leaf order { - // Type is an MO-Defined-Type - type nvo_VniT; - } - leaf isMcastRange { - type boolean; + type boot_Order; + description "Boot Order bootflash/pxe"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf suppressARP { - description "Enable or disable ARP suppression for VNI(s)."; + // boot mode + leaf mode { - // Type is an MO-Defined-Type - type nvo_SuppressARPT; + type boot_Mode; + description "Select boot mode type"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf mcastGroup { - description "Configures multicast group address for VNI(s)."; + // boot dhcp + leaf dhcp { - // Type is an MO-Defined-Type - type mcast_GrpIp; + type boot_Dhcp; + description "Set the dhcp value"; } - leaf associateVrfFlag { - type boolean; + leaf aci { + type string; + description "Boot aci"; } - leaf isLegacyMode { - type boolean; + leaf fex { + type string { + length "0..128"; + pattern ".*[a-zA-Z0-9\\(\\)\\+,-./:@_\\^]+.*"; + } + description "Boot fex image with the image provided"; } - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf multisiteIngRepl { - description "Enable or disable Multisite Ingress Replication for VNI(s)."; + // boot autocopy + leaf autoCopy { - // Type is an MO-Defined-Type - type nvo_MultisiteIngReplStateT; + type boot_AutoCopy; + description "Boot Auto Copy"; } - // This property is hidden (secure="yes") and used only for internal validation. - // Following are the expected values - - // non-CLI/non-Controller DME agents (eg. NetConf/RestConf) - "0" - // CLI - "cli" - // Controller - "controller" - // Inherited From nvo:GenericNw - // Type is an MO-Defined-Type - leaf cfgSrc { - description "Internal system property. Not intended for external use."; + container image-items { - // Type is an MO-Defined-Type - type nvo_CfgSrcT; + uses boot_Image-group; + description "Configure images"; } - container IngRepl-items { + container modbootorder-items { - // Added containment as a singleton: Prefix=IngRepl - // Acquired From Package nvo - uses nvo_IngRepl-group; + uses boot_ModBootOrder-group; + description "Configure module boot order"; } } - grouping l3_Ctx-group { - - // parameter used by node to enforce filter rules - // Type is an MO-Defined-Type - leaf pcEnfPref { - description "Policy Control Enforcement"; - - // Type is an MO-Defined-Type - type fv_PcEnfPref; - } - - // Type of the context - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type l3_CtxT; - } - - // It represents the classId for the multicast traffic - // terminating on this context - // Type is an MO-Defined-Type - leaf pcTag { - description "PC Tag"; - - // Type is an MO-Defined-Type - type actrl_PcTag; + grouping boot_Image-group { + description "Configure images"; + leaf sup1 { + type string; + description "Image to configure on sup-1"; } - - // Local managment class id - // Type is an MO-Defined-Type - leaf mgmtPcTag { - description "Management PC Tag"; - - // Type is an MO-Defined-Type - type actrl_PcTag; + leaf sup2 { + type string; + description "Image to configure on sup-2"; } - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Modified by Override: l3:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Image Verification parameter + leaf imageverification { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type boot_ImageVerify; + description "Enable/Disable Image Verification"; } - - // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf resourceId { + leaf image_err { config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; + type string; + default "success"; + description "failure string"; } - - // vrf id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf id { + leaf sup1NextReload { config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; - } - leaf encap { type string; + description "Image to configure on sup-1 on next reload"; } - leaf descr { + leaf sup2NextReload { + config "false"; type string; + description "Image to configure on sup-2 on next reload"; } + } - // Scope of the context. It identifies the classId - // pool and all the epg/bd classIds belonging to - // this context needs to be allocated from this pool - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf scope { - config "false"; - description "Scope"; - - // Type is an MO-Defined-Type - type actrl_ScopeId; - } + grouping boot_ModBootOrder-group { + description "Configure module boot order"; - // Controller Id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; + // Module boot order + leaf bootOrderReverse { - // Type is an MO-Defined-Type - type aggregate_ControllerID; + type boot_BootOrderReverse; + description "Configure module boot order"; } + } - // SecurityLabel - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf secLbl { - config "false"; - description "Security Label"; - - // Type is an MO-Defined-Type - type actrl_SecLbl; - } + grouping eqpt_Ch-group { + description "The hardware chassis information container"; - // vrf Admin State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf adminState { - description "Admin State"; + // Role of this chassis + leaf role { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfAdminState; + type top_NodeRole; + description "The role of this chassis"; } - // vrf Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operState { + // Operational status of chassis + leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_ChOperSt; + description "The chassis operational state"; } - // oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type + // Chassis operational status qualifier leaf operStQual { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_OperStQual; + description "The chassis operational state qualifier"; } - // old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf oldOperStQual { + // Module VID + leaf vdrId { config "false"; - description "Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_ModVid; + description "The card vdrId"; } - leaf gsdbCtx { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - leaf pending { + + // The device model + leaf model { config "false"; - type boolean; + + type eqpt_Model; + description "Model"; } - leaf v4TibValid { + + // The device revision. + leaf rev { config "false"; - type boolean; + + type eqpt_Revision; + description "Revision"; } - leaf v4TibId { + + // The device serial number. + leaf ser { config "false"; - type uint32; + + type eqpt_Serial; + description "Serial Number"; } - leaf v4TibName { + leaf mfgTm { config "false"; - type string; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - leaf v4TibPending { + + // Identifier for the item + leaf id { config "false"; - type boolean; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // ipv4 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperState { + leaf descr { config "false"; - description "IPV4 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type naming_Descr; + description "Description of the specified attribute"; } - // ipv4 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperStQual { - config "false"; - description "IPV4 Table Operational State Qualifier"; + // Ejector policy + container ejpol-items { + list EjPol-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_EjPol-group; + description "Ejector Policy list"; + } + description "Ejector Policy"; } - // ipv4 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOldOperStQual { - config "false"; - description "IPV4 Old Operational State Qualifier"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - leaf v6TibValid { - config "false"; - type boolean; + + // supervisor slot + container supslot-items { + list SupCSlot-list { + config "false"; + key "id"; + + uses eqpt_SupCSlot-group; + description "The supervisor slot information list"; + } + description "The supervisor slot information"; } - leaf v6TibId { - config "false"; - type uint32; + + // line card slot + container lcslot-items { + list LCSlot-list { + config "false"; + key "id"; + + uses eqpt_LCSlot-group; + description "The line card slot information list"; + } + description "The line card slot information"; } - leaf v6TibName { - config "false"; - type string; + + // fabric card slot + container fcslot-items { + list FCSlot-list { + config "false"; + key "id"; + + uses eqpt_FCSlot-group; + description "The fabric card slot information list"; + } + description "The fabric card slot information"; } - leaf v6TibPending { - config "false"; - type boolean; + + // system controller slot + container scslot-items { + list SysCSlot-list { + config "false"; + key "id"; + + uses eqpt_SysCSlot-group; + description "The system controller module slot information list"; + } + description "The system controller module slot information"; } - // ipv6 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperState { - config "false"; - description "IPV6 Table Operational State"; + // power supply slot + container psuslot-items { + list PsuSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + uses eqpt_PsuSlot-group; + description "The power supply slot information list"; + } + description "The power supply slot information"; } - // ipv6 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperStQual { - config "false"; - description "IPV6 Table Operational State Qualifer"; + // fan tray slot + container ftslot-items { + list FtSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_FtSlot-group; + description "The fan tray slot information list"; + } + description "The fan tray slot information"; } - // ipv6 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOldOperStQual { - config "false"; - description "IPV6 Table Operational State Qualifer"; + // Sprom Backplane Unit block + container spbp-items { - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + uses eqpt_SpromBP-group; + description "The backplane sprom information"; } - leaf createTs { - config "false"; - type string; + + // Board slot + container bslot-items { + + uses eqpt_BSlot-group; + description "Board Slot"; } - leaf lastChgdTs { - config "false"; - type string; + + // Nic slot + container nslot-items { + list NSlot-list { + config "false"; + key "id"; + + uses eqpt_NSlot-group; + description "Nic Slot list"; + } + description "Nic Slot"; } - // bgp route distinguisher - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf bgpRd { - config "false"; - description "BGP Route Distinguisher"; + // Storage represents the storage of the Controller + container p-items { + list Storage-list { + config "false"; + key "mount fileSystem"; - // Type is an MO-Defined-Type - type l3_BgpRdBytes; + uses eqpt_Storage-group; + description "Storage Equipment list"; + } + description "Storage Equipment"; } - leaf bgpRdDisp { + } + + grouping eqpt_EjPol-group { + description "Ejector Policy"; + + // Auto shutdown on ejector open + leaf autoSh { config "false"; - type string; + + type eqpt_AdSt; + default "disabled"; + description "Auto Shutdown on Ejector Open"; } - leaf prtclBmp { + + // Identifier for the item + leaf id { config "false"; - type uint32; + + type eqpt_Id; + description "ID"; } - leaf oui { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - leaf vpnId { + + // The device model + leaf model { config "false"; - type uint32; + + type eqpt_Model; + description "Model"; } - // Prefix list entry definition - container pfx-items { - list PfxEntry-list { - config "false"; - key "addr"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=pfx - // Acquired From Package actrl - uses actrl_PfxEntry-group; - } + type eqpt_Revision; + description "Revision"; } - // Abstraction of epm database - container db-items { - list Db-list { - config "false"; - key "type"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Routed management interface - container mgmt-items { - list RtdMgmtIf-list { - key "id"; + leaf descr { + config "false"; - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_RtdMgmtIf-group; - } + type naming_Descr; + description "Description of the specified attribute"; } + } - // Rel-def target from tenConn - // Inherited From l3:Ctx - container rttenConn-items { + grouping eqpt_LocLed-group { + description "The locator LED information"; - // Added containment as a singleton: Prefix=rttenConn - // Acquired From Package actrl - uses actrl_RtTenConn_target-group; - } + // Identifier for the item + leaf id { + config "false"; - // Rel-def from ctxToEpP - container rsctxToEpP-items { + type eqpt_Id; + description "ID"; + } - // Abstract containment of rsctxToEpP derived from l3:Ctx - list RsCtxToEpP-list { - key "tDn"; + // The device model + leaf model { + config "false"; - // Added containment: Prefix=rsctxToEpP - // Acquired From Package l3 - uses l3_RsCtxToEpP_source-group; - } + type eqpt_Model; + description "Model"; } - } - grouping actrl_PfxEntry-group { - leaf addr { + leaf descr { config "false"; - type address_Ip; + + type naming_Descr; + description "Description of the specified attribute"; } - // Policy tag - // Type is an MO-Defined-Type - leaf pcTag { + // Color status of an LED + leaf color { config "false"; - description "PC Tag"; - // Type is an MO-Defined-Type - type actrl_PcTag; + type eqpt_Color; + description "The LED Color"; } - // Prefix operational state - // Type is an MO-Defined-Type + // Operational status of an LED leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type actrl_OperSt; + type eqpt_LedOpSt; + description "The LED operational Status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { + // Admin status - Used to locate + leaf adminSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_AdSt; + description "The locator LED admin status"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + grouping eqpt_SupCSlot-group { + description "The supervisor slot information"; + + // Poweroff config + leaf poweroff { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - } - - grouping mgmt_RtdMgmtIf-group { - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Id; + description "The physical slot identifier"; } - // Administrative state - // Inherited From l3:If - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type eqpt_SlotT; + default "supslot"; + description "The supervisor slot type"; } - // Rel-def target from pseudoIf - // Inherited From mgmt:RtdMgmtIf - container rtpseudoIf-items { + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtpseudoIf - // Acquired From Package dhcp - uses dhcp_RtPseudoIf_target-group; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Rel-def from rtdMgmtConf - container rsrtdMgmtConf-items { + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Added containment as a singleton: Prefix=rsrtdMgmtConf - // Acquired From Package mgmt - uses mgmt_RsRtdMgmtConf_source-group; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - container rtvrfMbr-items { + // Sup Card, containing CPU running control plane + container sup-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses eqpt_SupC-group; + description "The supervisor module information"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Card reset record + container rstrec-items { + list CardRstRec-list { config "false"; - key "tDn"; + key "ts"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - } - - grouping l3_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:FwDom->name - // Modified by Override: l3:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } + } - // Vrf Id. Its a Policyelemnt owned ID used for resource tracking purpose - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf resourceId { - config "false"; - description "VRF ID"; - - // Type is an MO-Defined-Type - type l3_VrfId; - } + grouping eqpt_SupC-group { + description "The supervisor module information"; - // vrf id - // Inherited From l3:Dom - // Type is an MO-Defined-Type + // Identifier for the item leaf id { config "false"; - description "VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; - } - leaf encap { - type string; - } - leaf descr { - type string; + type eqpt_Id; + description "ID"; } - // Scope of the context. It identifies the classId - // pool and all the epg/bd classIds belonging to - // this context needs to be allocated from this pool - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf scope { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Scope"; - // Type is an MO-Defined-Type - type actrl_ScopeId; + type eqpt_Vendor; + description "Vendor"; } - // Controller Id - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf ctrlrId { - description "Controller ID"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type aggregate_ControllerID; + type eqpt_Model; + description "Model"; } - // SecurityLabel - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf secLbl { + // The device revision. + leaf rev { config "false"; - description "Security Label"; - // Type is an MO-Defined-Type - type actrl_SecLbl; + type eqpt_Revision; + description "Revision"; } - // vrf Admin State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf adminState { - description "Admin State"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfAdminState; + type eqpt_Serial; + description "Serial Number"; } - - // vrf Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operState { + leaf mfgTm { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type l3_VrfOperState; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf operStQual { + leaf descr { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type naming_Descr; + description "Description of the specified attribute"; } - // old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf oldOperStQual { + // Hardware version for this fru + leaf hwVer { config "false"; - description "Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; - } - leaf gsdbCtx { - config "false"; - type uint32; - } - leaf pending { - config "false"; - type boolean; - } - leaf v4TibValid { - config "false"; - type boolean; - } - leaf v4TibId { - config "false"; - type uint32; + type cap_Version; + description "Hardware Version"; } - leaf v4TibName { + + // Type of card + leaf type { config "false"; - type string; + + type eqpt_CardT; + default "supervisor"; + description "The card type"; } - leaf v4TibPending { + + // Card status + leaf operSt { config "false"; - type boolean; + + type eqpt_COpSt; + description "The card operational status"; } - // ipv4 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperState { + // Redundancy state + leaf rdSt { config "false"; - description "IPV4 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_RdSt; + description "The card redundancy state"; } - // ipv4 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOperStQual { + // Software card ID + leaf swCId { config "false"; - description "IPV4 Table Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_CardId; + description "The card software card identifier"; } - // ipv4 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v4TibOldOperStQual { + // Number of ports on the card + leaf numP { config "false"; - description "IPV4 Old Operational State Qualifier"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - leaf v6TibValid { + + // mac address base + leaf macB { config "false"; - type boolean; + + type eqpt_MacAddr; + description "The card MAC address base"; } - leaf v6TibId { + + // mac address end + leaf macE { config "false"; - type uint32; + + type eqpt_MacAddr; + description "The card MAC address end"; } - leaf v6TibName { + leaf upTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "The timestamp when card was detected"; } - leaf v6TibPending { + + // power state of this card + leaf pwrSt { config "false"; - type boolean; + + type eqpt_PwrState; + description "The power state of this card"; } - // ipv6 table Oper State - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperState { + // The Software revision. + leaf swVer { config "false"; - description "IPV6 Table Operational State"; - // Type is an MO-Defined-Type - type l3_VrfOperState; + type eqpt_Revision; + description "The card software revision"; } - // ipv6 table oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOperStQual { + // Module Part number + leaf partNumber { config "false"; - description "IPV6 Table Operational State Qualifer"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_PartNum; + description "The card part number"; } - // ipv6 table old oper state reason - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf v6TibOldOperStQual { + // Module VID + leaf vdrId { config "false"; - description "IPV6 Table Operational State Qualifer"; - // Type is an MO-Defined-Type - type l3_VrfOperStateQual; + type eqpt_ModVid; + description "The card vdrId"; } - leaf createTs { + + // module actual draw power + leaf powerActualDraw { config "false"; - type string; + + type eqpt_Watts; + description "It is the power value that module actually draw"; } - leaf lastChgdTs { + + // module allocated power + leaf powerAllocated { config "false"; - type string; + + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // bgp route distinguisher - // Inherited From l3:Dom - // Type is an MO-Defined-Type - leaf bgpRd { - config "false"; - description "BGP Route Distinguisher"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type l3_BgpRdBytes; + uses firmware_CardRunning-group; + description "Card Running Status"; } - leaf bgpRdDisp { - config "false"; - type string; + + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; + + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - leaf prtclBmp { - config "false"; - type uint32; + + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; + + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - leaf oui { - config "false"; - type uint32; + + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; + + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - leaf vpnId { - config "false"; - type uint32; + + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; + + uses eqpt_EpcP-group; + description "The EPC port information list"; + } + description "The EPC port information"; } - // Ftag tree, fabric multicast tree to direct the tenant flood - // and multicast traffic over the fabric - container tree-items { - list Tree-list { + // External management port + container mgmt-items { + list MgmtP-list { config "false"; key "id"; - // Added containment: Prefix=tree - // Acquired From Package fmcast - uses fmcast_Tree-group; + uses eqpt_MgmtP-group; + description "The management port information list"; } + description "The management port information"; } - // Layer3 Domain (aka vrf) container for routing protocols - container dom-items { - list Dom-list { - key "name"; + // External (debug) console port + container console-items { + list ConsP-list { + config "false"; + key "id"; - // Added containment: Prefix=dom - // Acquired From Package rtctrl - uses rtctrl_Dom-group; + uses eqpt_ConsP-group; + description "The console port information list"; } + description "The console port information"; } - // Abstraction of epm database - container db-items { - list Db-list { + // Sensor information + container sensor-items { + list Sensor-list { config "false"; - key "type"; + key "id"; - // Added containment: Prefix=db - // Acquired From Package epm - uses epm_Db-group; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Shard chaining policy - container shchp-items { - list ShardChP-list { + // Sprom Supervisor + container spsup-items { + + uses eqpt_SpromSup-group; + description "The supervisor sprom information"; + } + + // ASIC information container + container asic-items { + list Asic-list { config "false"; - key "af"; + key "id"; - // Added containment: Prefix=shchp - // Acquired From Package topoctrl - uses topoctrl_ShardChP-group; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; + } + container cpu-items { + list CPU-list { + config "false"; + key "id"; + + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Routed management interface - container mgmt-items { - list RtdMgmtIf-list { + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; key "id"; - // Added containment: Prefix=mgmt - // Acquired From Package mgmt - uses mgmt_RtdMgmtIf-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // Rel-def from vrfMbr - container rsvrfMbr-items { + // Flash memory unit + container flash-items { - // Abstract containment of rsvrfMbr derived from l3:Inst - list RsVrfMbr-list { - key "tDn"; + uses eqpt_Flash-group; + description "The flash memory information"; + } - // Added containment: Prefix=rsvrfMbr - // Acquired From Package l3 - uses l3_RsVrfMbr_source-group; + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; + } + } + + grouping firmware_CardRunning-group { + description "Card Running Status"; + + // Bios version + leaf biosVer { + config "false"; + + type cap_Version; + description "A property that indicates Loader Version"; + } + + // Expected Component version + leaf expectedVer { + config "false"; + + type cap_Version; + description "A property that indicates Expected Loader Version"; + } + + // running version Operational State + leaf operSt { + config "false"; + + type firmware_RunningOperSt; + description "A property that indicates Operational State"; + } + + // Interim version + leaf interimVer { + config "false"; + + type cap_Version; + description "A property that indicates Interim Version"; + } + + // Running firmware version. + leaf version { + config "false"; + + type cap_Version; + description "Version"; + } + leaf internalLabel { + config "false"; + type string; + description "Internal Label"; + } + + // Running firmware type. + leaf type { + config "false"; + + type firmware_Type; + description "Type"; + } + + // Running firmware mode. + leaf mode { + config "false"; + + type firmware_RunningMode; + description "Mode"; + } + leaf ts { + config "false"; + type union { + type string; + type uint64; } + description "Timestamp"; + } + + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; } } - grouping fmcast_Tree-group { + grouping eqpt_Ejec-group { + description "Ejector"; - // Id - // Type is an MO-Defined-Type - leaf id { + // Status of ejector + leaf operSt { config "false"; - description "Tree Id"; - // Type is an MO-Defined-Type - type fmcast_Id; + type eqpt_EjSt; + description "Operational State"; } - // Multicast root for this tree, identified by the node - // ip address - // Type is an MO-Defined-Type - leaf root { + // Identifier for the item + leaf id { config "false"; - description "Root"; - // Type is an MO-Defined-Type - type mcast_Root; + type eqpt_Id { + range "1..2"; + } + description "ID"; } - // Administrative state - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Adminitrative State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:Conn - // Modified by Override: nw:Tree->name - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Model; + description "Model"; } - } - grouping rtctrl_Dom-group { - leaf rd { - type mtx_array_community; - } - leaf operRd { + // The device revision. + leaf rev { config "false"; - type mtx_array_community; + + type eqpt_Revision; + description "Revision"; } - // Inherited From nw:Conn - // Modified by Override: rtctrl:Dom->name - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // This object holds per address family bgp vrf information - container af-items { - list DomAf-list { - key "type"; + leaf descr { + config "false"; - // Added containment: Prefix=af - // Acquired From Package rtctrl - uses rtctrl_DomAf-group; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping rtctrl_DomAf-group { + grouping eqpt_EobcP-group { + description "The Ethernet Out of Band Channel(EOBC) port information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Type - // Inherited From rtctrl:Af - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type bgp_AfT; + type naming_Descr; + description "Description of the specified attribute"; } - // This object holds policy to control vpn af - // information for a given vrf - container ctrl-items { - list AfCtrl-list { - key "type"; + // Type of port + leaf type { + config "false"; - // Added containment: Prefix=ctrl - // Acquired From Package rtctrl - uses rtctrl_AfCtrl-group; - } + type eqpt_PortT; + description "The port type"; } } - grouping rtctrl_AfCtrl-group { + grouping eqpt_EpcP-group { + description "The EPC port information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // Type - // Inherited From rtctrl:Af - // Type is an MO-Defined-Type - leaf type { - description "Type"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type bgp_AfT; + type naming_Descr; + description "Description of the specified attribute"; } - // Route policy holds all route policy entries and route controls - container rttp-items { - list RttP-list { - key "type"; + // Type of port + leaf type { + config "false"; - // Added containment: Prefix=rttp - // Acquired From Package rtctrl - uses rtctrl_RttP-group; - } + type eqpt_PortT; + description "The port type"; } } - grouping topoctrl_ShardChP-group { + grouping eqpt_MgmtP-group { + description "The management port information"; - // Address family for chaining - // Type is an MO-Defined-Type - leaf af { + // Identifier for the item + leaf id { config "false"; - description "Address Family"; - // Type is an MO-Defined-Type - type nw_AddrF; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Redundancy node, determines the node to go to in case of - // a local node failure - // Type is an MO-Defined-Type - leaf node { + leaf descr { config "false"; - description "Node"; - // Type is an MO-Defined-Type - type topoctrl_ShardChNode; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Type of port + leaf type { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_PortT; + description "The port type"; + } + + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; + + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; + } + } + + grouping eqpt_ConsP-group { + description "The console port information"; + + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; + } + + // Type of port + leaf type { + config "false"; + + type eqpt_PortT; + description "The port type"; } } - grouping l3cap_Prov-group { + grouping eqpt_Sensor-group { + description "The equipment sensor information"; - // Subject consuming the capability - // Type is an MO-Defined-Type - leaf subj { + // Type of the sensor + leaf type { config "false"; - description "Subject"; - // Type is an MO-Defined-Type - type l3cap_Subj; + type eqpt_SensorT; + description "The equipment sensor type"; } - // Every Consumer has a Subject. - // Subject represents the entity which consumes the capability. - // Namespaces which have concrete consumers, define the Subject property - // and its types - // Max capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf total { + // Major threshold + leaf majorThresh { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type eqpt_TempThresh; + description "The equipment sensor major threshold"; } - // Remaining capability available - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf remaining { + // Minor threshold + leaf minorThresh { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_Counter; + type eqpt_TempThresh; + description "The equipment sensor minor threshold"; } - // utilization indicator in percentages of consiumption - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf utilization { + // oper state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_StorageHint; + type eqpt_SensorOpSt; + description "The equipment sensor operational status"; } - // Type of the Rule consumed by this consumer. - // Inherited From cap:Prov - // Type is an MO-Defined-Type - leaf type { + // Temperature Value + leaf tempValue { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type cap_RuleT; + type eqpt_TempValue; + description "The equipment sensor temperature value"; } - } - - grouping l3vm_Entity-group { - leaf vrfmemberchangeretainl3cfg { - type boolean; - default "true"; + leaf unit { + config "false"; + type string; + description "The equipment sensor temperature unit"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..32"; } + description "The equipment sensor identifier"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Model; + description "Model"; } - // This objects hold per l3vm instance information. There is only - // one instance of l3vm running in the system today - container inst-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package l3vm - uses l3vm_Inst-group; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping l3vm_Inst-group { - leaf vrfAllocId { - config "false"; - type uint32; - } - leaf tblAllocId { - config "false"; - type uint32; - } - leaf featureSet { - config "false"; - type uint32; - } + grouping eqpt_SpromSup-group { + description "The supervisor sprom information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Identifier for the item + leaf id { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // The device model + leaf model { config "false"; - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_Model; + description "Model"; } - // DomainMbrIf class - container dommbr-items { - list DomMbrIf-list { - config "false"; - key "id"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=dommbr - // Acquired From Package l3 - uses l3_DomMbrIf-group; - } + type eqpt_Revision; + description "Revision"; } - // This objects hold runtime information on l3vm tables - container tbl-items { - list Tbl-list { - config "false"; - key "id"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=tbl - // Acquired From Package l3vm - uses l3vm_Tbl-group; - } + type eqpt_Serial; + description "Serial Number"; } - } - - grouping l3_DomMbrIf-group { - // ifindex - // Type is an MO-Defined-Type - leaf id { + leaf descr { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf iod { - config "false"; - type uint32; + type naming_Descr; + description "Description of the specified attribute"; } - // vrfId - // Type is an MO-Defined-Type - leaf vrfId { + // Type of the memory + leaf type { config "false"; - description "VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; + type eqpt_MemT; + description "The memory type"; } - // old vrfId - // Type is an MO-Defined-Type - leaf oldVrfId { + // capacity + leaf cap { config "false"; - description "Old VRF ID"; - // Type is an MO-Defined-Type - type l3_VrfId; + type eqpt_Capacity; + description "The memory capacity"; } - // vrf name - // Type is an MO-Defined-Type - leaf vrfName { + // access: RO/RW + leaf acc { config "false"; - description "VRF Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Acc; + description "The memory access type"; } - // old vrf name - // Type is an MO-Defined-Type - leaf oldVrfName { + // Operational status + leaf operSt { config "false"; - description "Old VRF Name"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_OpSt; + description "The memory operational status"; } - leaf gsdbCtx { + leaf numBlk { config "false"; - type uint32; + type uint16; + description "The sprom number of blocks"; } - // gsdb context type - // Type is an MO-Defined-Type - leaf gsdbCtxType { - config "false"; - description "GSDB Context Type"; + // sprom Common Block + container spcmn-items { - // Type is an MO-Defined-Type - type l3_VrfGsdbCtxType; + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Sprom Supervisor block + container spsupblk-items { - // Type is an MO-Defined-Type - type naming_Name; + uses eqpt_SpromSupBlk-group; + description "The sprom supervisor block information"; + } + + // sprom Port Data Interface + container sppd-items { + + uses eqpt_SpPd-group; + description "The sprom port data information"; + } + + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; + + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; + } + + // Sprom Sensor block + container spsensorblk-items { + + uses eqpt_SpSensorBlk-group; + description "The sprom sensor block information"; } } - grouping l3vm_Tbl-group { - leaf id { + grouping eqpt_SpCmnBlk-group { + description "The sprom common block information"; + leaf size { config "false"; - type uint32; + type uint16; + description "The sprom common block size"; } - leaf gsdbCtx { + leaf count { config "false"; - type uint32; + type uint16; + description "The sprom common block count"; } - leaf rtLmtMax { + leaf major { config "false"; - type uint32; + type uint16; + description "The sprom common block FRU major number"; } - leaf rtLmtWarn { + leaf minor { config "false"; - type uint32; + type uint16; + description "The sprom common block FRU minor number"; } - leaf rtLmtWarnOnly { + leaf oem { config "false"; - type boolean; + type string; + description "The sprom common block OEM string"; } - leaf rtLmtWarnPct { + leaf pdNum { config "false"; - type uint8; + type string; + description "The sprom common block product number"; } - leaf rtLmtReinstPct { + leaf serNum { config "false"; - type uint8; + type string; + description "The sprom common block serial number"; } - } - - grouping urib_Entity4-group { - - // Specific to v4 - container table4-items { - list Table4-list { - config "false"; - key "vrfName"; - - // Added containment: Prefix=table4 - // Acquired From Package urib - uses urib_Table4-group; - } + leaf prtNum { + config "false"; + type string; + description "The sprom common block part number"; } - } - - grouping urib_Table4-group { - leaf vrfName { + leaf pRev { config "false"; type string; + description "The sprom common block part revision"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf routeCount { + leaf mfgDev { config "false"; - description "Total number of route in this table"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type string; + description "The sprom common block manufacturing deviation"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf uniBestCount { + leaf hwVer { config "false"; - description "Number of unicast route considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type string; + description "The sprom common block hardware revision"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf uniBackupCount { + leaf mfgBits { config "false"; - description "Number of unicast route not considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type uint16; + description "The sprom common block manufacturing bits"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf multiBestCount { + leaf engBits { config "false"; - description "Number of multicast route considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type uint16; + description "The sprom common block engineering bits"; } - - // Inherited From urib:TableBase - // Type is an MO-Defined-Type - leaf multiBackupCount { + leaf pwrCon { config "false"; - description "Number of multicast route not considered as the best"; - - // Type is an MO-Defined-Type - type urib_Counter32; + type int16; + description "The sprom common block power consumption"; } - leaf routePerMaskCount { + leaf rmaFl { config "false"; type string; + description "The sprom common block RMA failure code"; } - - // Specific to v4 - container route4-items { - list Route4-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=route4 - // Acquired From Package urib - uses urib_Route4-group; - } - } - } - - grouping urib_Route4-group { - leaf prefix { + leaf clei { config "false"; type string; + description "The sprom common block CLEI code"; } - - // Specific to v4 - container nh4-items { - list NextHop4-list { - config "false"; - key "id"; - - // Added containment: Prefix=nh4 - // Acquired From Package urib - uses urib_NextHop4-group; - } - } - - // Specific to v4 - container routedetail4-items { - - // Added containment as a singleton: Prefix=routedetail4 - // Acquired From Package urib - uses urib_RouteDetail4-group; + leaf vdrId { + config "false"; + type string; + description "The sprom common block vendor identifier"; } - } - - grouping urib_NextHop4-group { - leaf id { + leaf sig { config "false"; - type uint32; + type uint16; + description "The sprom block header signature"; } - - // Specific to v4 - container nhdetail4-items { - - // Added containment as a singleton: Prefix=nhdetail4 - // Acquired From Package urib - uses urib_NextHopDetail4-group; + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; } - } - - grouping urib_NextHopDetail4-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf len { config "false"; - description "Flags."; - - // Type is an MO-Defined-Type - type urib_NhFlags4; + type uint16; + description "The sprom block header length"; } - } - - grouping urib_RouteDetail4-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf cksum { config "false"; - description "Route flags."; - - // Type is an MO-Defined-Type - type urib_RouteFlags4; + type uint16; + description "The sprom block header checksum"; } } - grouping urib_Entity6-group { - - // Specific to v6 - container table6-items { - list Table6-list { - config "false"; - key "vrfName"; - - // Added containment: Prefix=table6 - // Acquired From Package urib - uses urib_Table6-group; - } + grouping eqpt_SpromSupBlk-group { + description "The sprom supervisor block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom supervisor block feature bits"; } - } - - grouping urib_Table6-group { - leaf vrfName { + leaf hwCBits { config "false"; - type string; + type uint64; + description "The sprom supervisor block hardware change bits"; } - - // Specific to v6 - container route6-items { - list Route6-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=route6 - // Acquired From Package urib - uses urib_Route6-group; - } + leaf crdIdx { + config "false"; + type uint16; + description "The sprom supervisor block card index"; } - } - - grouping urib_Route6-group { - leaf prefix { + leaf macB { config "false"; type string; + description "The sprom supervisor block MAC address base"; } - - // Specific to v6 - container nh6-items { - list NextHop6-list { - config "false"; - key "id"; - - // Added containment: Prefix=nh6 - // Acquired From Package urib - uses urib_NextHop6-group; - } + leaf macL { + config "false"; + type uint16; + description "The sprom supervisor block number of MACs"; } - - // Specific to v6 - container routedetail6-items { - - // Added containment as a singleton: Prefix=routedetail6 - // Acquired From Package urib - uses urib_RouteDetail6-group; + leaf eobcN { + config "false"; + type uint16; + description "The sprom supervisor block number of EOBC connections"; } - } - - grouping urib_NextHop6-group { - leaf id { + leaf epldN { config "false"; - type uint32; + type uint16; + description "The sprom supervisor block EPLD number"; } - - // Specific to v6 - container nhdetail6-items { - - // Added containment as a singleton: Prefix=nhdetail6 - // Acquired From Package urib - uses urib_NextHopDetail6-group; + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom supervisor block max connector power"; } - } - - grouping urib_NextHopDetail6-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf coolRq { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type urib_NhFlags6; + type uint16; + description "The sprom supervisor block cooling requirement"; } - } - - grouping urib_RouteDetail6-group { - - // Type is an MO-Defined-Type - leaf flags { + leaf ambT { config "false"; - description "Route flags."; - - // Type is an MO-Defined-Type - type urib_RouteFlags6; + type uint16; + description "The sprom supervisor block ambient temperature"; } - } - - grouping uribv4_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor1 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf sensor2 { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf sensor3 { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package uribv4 - uses uribv4_Dom-group; - } + leaf sensor4 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv4_Dom-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf sensor5 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_DomOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor6 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package uribv4 - uses uribv4_Db-group; - } + leaf sensor7 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv4_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor8 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type of the repository - // Inherited From rib:Db - // Type is an MO-Defined-Type - leaf type { + leaf sig { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rib_DbT; + type uint16; + description "The sprom block header signature"; } - - // Route - container rt-items { - list Route-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=rt - // Acquired From Package uribv4 - uses uribv4_Route-group; - } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; } - } - - grouping uribv4_Route-group { - leaf prefix { + leaf len { config "false"; - type address_Ip; + type uint16; + description "The sprom block header length"; } - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf cksum { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint16; + description "The sprom block header checksum"; } - // URIB next-hop database record - container nh-items { - list Nexthop-list { + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { config "false"; - key "owner addr if vrf"; + key "id"; - // Added containment: Prefix=nh - // Acquired From Package uribv4 - uses uribv4_Nexthop-group; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; } + description "The sensor data sprom information"; } - // URIB route ownership record - container owner-items { - list RouteOwner-list { - config "false"; - key "owner"; + // sprom Port Data Interface + container sppd-items { - // Added containment: Prefix=owner - // Acquired From Package uribv4 - uses uribv4_RouteOwner-group; - } + uses eqpt_SpPd-group; + description "The sprom port data information"; } } - grouping uribv4_Nexthop-group { + grouping eqpt_SpSd-group { + description "The sensor data sprom information"; - // Owner - // Type is an MO-Defined-Type - leaf owner { + // Major Threshold + leaf majTh { config "false"; - description "Nexthop Owner"; - // Type is an MO-Defined-Type - type rib_OwnerT; - } - leaf addr { - config "false"; - type address_Ip; + type eqpt_TempThresh; + description "The sensor data sprom major threshold"; } - // Nexthop interface - // Type is an MO-Defined-Type - leaf if { + // Minor Threshold + leaf minTh { config "false"; - description "Nexthop Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_TempThresh; + description "The sensor data sprom minor threshold"; } - // Nexthop vrf - // Type is an MO-Defined-Type - leaf vrf { + // Identifier for the item + leaf id { config "false"; - description "Nexthop VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Id; + description "ID"; } - // NH type - // Type is an MO-Defined-Type - leaf type { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type rib_NhT; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Model; + description "Model"; } - } - grouping uribv4_RouteOwner-group { - - // Owner's name - // Type is an MO-Defined-Type - leaf owner { + // The device revision. + leaf rev { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type rib_OwnerT; + type eqpt_Revision; + description "Revision"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // The device serial number. + leaf ser { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv4 - uses uribv4_Nexthop-group; - } - } - - // Rel-def from RouteOwnerToNexthopAtt - container rsrouteOwnerToNexthopAtt-items { - - // Abstract containment of rsrouteOwnerToNexthopAtt derived from uribv4:RouteOwner - list RsRouteOwnerToNexthopAtt-list { - key "tDn"; - // Added containment: Prefix=rsrouteOwnerToNexthopAtt - // Acquired From Package uribv4 - uses uribv4_RsRouteOwnerToNexthopAtt_source-group; - } + type eqpt_Serial; + description "Serial Number"; } - } - - grouping uribv6_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf mfgTm { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + grouping eqpt_SpPd-group { + description "The sprom port data information"; + leaf prtTy { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type uint16; + description "The port data sprom port type"; } - - // Domain (vrf) information - container dom-items { - list Dom-list { - config "false"; - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package uribv6 - uses uribv6_Dom-group; - } + leaf numPts { + config "false"; + type uint16; + description "The port data sprom number of ports"; } } - grouping uribv6_Dom-group { - - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + grouping eqpt_SpSensorBlk-group { + description "The sprom sensor block information"; + leaf sensor9 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_DomOperSt; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor10 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - container db-items { - list Db-list { - config "false"; - key "type"; - - // Added containment: Prefix=db - // Acquired From Package uribv6 - uses uribv6_Db-group; - } + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor11 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type of the repository - // Inherited From rib:Db - // Type is an MO-Defined-Type - leaf type { + leaf sensor12 { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rib_DbT; + type string; + description "The sensor data sprom temperature threshold"; } - - // Route - container rt-items { - list Route-list { - config "false"; - key "prefix"; - - // Added containment: Prefix=rt - // Acquired From Package uribv6 - uses uribv6_Route-group; - } + leaf sensor13 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Route-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor14 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - leaf prefix { + leaf sensor15 { config "false"; - type address_Ip; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv6 - uses uribv6_Nexthop-group; - } + leaf sensor16 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB route ownership record - container owner-items { - list RouteOwner-list { - config "false"; - key "owner"; - - // Added containment: Prefix=owner - // Acquired From Package uribv6 - uses uribv6_RouteOwner-group; - } + leaf sensor17 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_Nexthop-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor18 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Owner - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf owner { + leaf sensor19 { config "false"; - description "Nexthop Owner"; - - // Type is an MO-Defined-Type - type rib_OwnerT; + type string; + description "The sensor data sprom temperature threshold"; + } + leaf sensor20 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf addr { + leaf sensor21 { config "false"; - type address_Ip; + type string; + description "The sensor data sprom temperature threshold"; } - - // Nexthop interface - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf if { + leaf sensor22 { config "false"; - description "Nexthop Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + type string; + description "The sensor data sprom temperature threshold"; } - - // Nexthop vrf - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf vrf { + leaf sensor23 { config "false"; - description "Nexthop VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; + type string; + description "The sensor data sprom temperature threshold"; } - - // NH type - // Inherited From rib:Nexthop - // Type is an MO-Defined-Type - leaf type { + leaf sensor24 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_NhT; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping uribv6_RouteOwner-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor25 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Owner's name - // Inherited From rib:RouteOwner - // Type is an MO-Defined-Type - leaf owner { + leaf sensor26 { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type rib_OwnerT; + type string; + description "The sensor data sprom temperature threshold"; } - - // URIB next-hop database record - container nh-items { - list Nexthop-list { - config "false"; - key "owner addr if vrf"; - - // Added containment: Prefix=nh - // Acquired From Package uribv6 - uses uribv6_Nexthop-group; - } + leaf sensor27 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_ConnGrp-group { - - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { + leaf sensor28 { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:ConnGrp->name - // Type is an MO-Defined-Type - leaf name { + leaf sensor29 { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Path enpoint - container path-items { - list PathEp-list { - key "id"; - - // Added containment: Prefix=path - // Acquired From Package nw - uses nw_PathEp-group; - } + leaf sensor30 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_PathEp-group { - - // Path ID of this endpoint - // Type is an MO-Defined-Type - leaf id { - description "TBD"; - - // Type is an MO-Defined-Type - type nw_IfId; + leaf sensor31 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf nativeEncap { + leaf sensor32 { + config "false"; type string; + description "The sensor data sprom temperature threshold"; } - leaf fabricPathDn { + leaf sensor33 { + config "false"; type string; + description "The sensor data sprom temperature threshold"; } - - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf sensor34 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf sensor35 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from epDefToPathEp - // Inherited From nw:PathEp - container rtfvEpDefToPathEp-items { - - // Abstract containment of rtfvEpDefToPathEp derived from nw:PathEp - list RtFvEpDefToPathEp-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvEpDefToPathEp - // Acquired From Package fv - uses fv_RtFvEpDefToPathEp_target-group; - } + leaf sensor36 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from dyPathAtt - // Inherited From nw:PathEp - container rtfvDyPathAtt-items { - - // Abstract containment of rtfvDyPathAtt derived from nw:PathEp - list RtFvDyPathAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtfvDyPathAtt - // Acquired From Package fv - uses fv_RtFvDyPathAtt_target-group; - } + leaf sensor37 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def target from VsanPathAtt - // Inherited From nw:PathEp - container rtvsanVsanPathAtt-items { - - // Abstract containment of rtvsanVsanPathAtt derived from nw:PathEp - list RtVsanVsanPathAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtvsanVsanPathAtt - // Acquired From Package vsan - uses vsan_RtVsanVsanPathAtt_target-group; - } + leaf sensor38 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // Rel-def from pathToIf - container rspathToIf-items { - - // Added containment as a singleton: Prefix=rspathToIf - // Acquired From Package nw - uses nw_RsPathToIf_source-group; + leaf sensor39 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping nw_Vdc-group { - - // vdc ID - // Type is an MO-Defined-Type - leaf id { + leaf sensor40 { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type l2_VdcId; + type string; + description "The sensor data sprom temperature threshold"; } - - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { + leaf sig { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name; + type uint16; + description "The sprom block header signature"; } - } - - grouping proc_System-group { - - // Maximum memory allocated for the system - // Type is an MO-Defined-Type - leaf maxMemAlloc { + leaf ver { config "false"; - description "Maximum Memory Allocated"; - - // Type is an MO-Defined-Type - type proc_ProcMem; + type uint16; + description "The sprom block header version"; } - leaf upTs { + leaf len { config "false"; - type string; + type uint16; + description "The sprom block header length"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf cksum { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type uint16; + description "The sprom block header checksum"; } - // Process entry in the system - container proc-items { - list Proc-list { + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { config "false"; key "id"; - // Added containment: Prefix=proc - // Acquired From Package proc - uses proc_Proc-group; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; } - } - - // System load statistics - container sysload-items { - - // Added containment as a singleton: Prefix=sysload - // Acquired From Package proc - uses proc_SysLoad-group; - } - - // System cpu summary statistics - container syscpusummary-items { - - // Added containment as a singleton: Prefix=syscpusummary - // Acquired From Package proc - uses proc_SysCpuSummary-group; - } - - // System memory statistics - container sysmem-items { - - // Added containment as a singleton: Prefix=sysmem - // Acquired From Package proc - uses proc_SysMem-group; + description "The sensor data sprom information"; } } - grouping proc_Proc-group { + grouping eqpt_Asic-group { + description "The Asic information"; - // Process id - // Type is an MO-Defined-Type - leaf id { + // Type of asic + leaf type { config "false"; - description "Process ID"; - // Type is an MO-Defined-Type - type proc_ProcId; + type eqpt_AsicT; + description "The Asic type"; } - // State of the process - // Type is an MO-Defined-Type + // Asic status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type proc_OperSt; + type eqpt_OpSt; + description "The Asic operational status"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // Asic numSlices + leaf numSlices { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_AsicNumSlices; + description "The number of slices in this Asic"; } - } - grouping proc_SysLoad-group { - leaf loadAverage1m { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf loadAverage5m { + // Asic Capability + leaf capabilities { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_AsicCapability; + description "The Asic capabilities"; } - leaf loadAverage15m { + + // Identifier for the item + leaf id { config "false"; - type decimal64 { - fraction-digits 2; + + type eqpt_Id { + range "1..10"; } + description "The Asic identifier"; } - leaf totalProc { - config "false"; - type uint32; - } - leaf runProc { + + // The vendor manufacturing this device. + leaf vendor { config "false"; - type uint32; + + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Model; + description "Model"; } - } - grouping proc_SysCpuSummary-group { - leaf user { + // The device revision. + leaf rev { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Revision; + description "Revision"; } - leaf kernel { + + // The device serial number. + leaf ser { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Serial; + description "Serial Number"; } - leaf idle { + leaf mfgTm { config "false"; - type decimal64 { - fraction-digits 2; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } + } - // System cpu history statistics - container syscpuhistory-items { - list SysCpuHistory-list { - config "false"; - key "durationname"; - - // Added containment: Prefix=syscpuhistory - // Acquired From Package proc - uses proc_SysCpuHistory-group; - } - } + grouping eqpt_CPU-group { + description "CPU"; - // System cpu statistics - container syscpu-items { - list SysCpu-list { - config "false"; - key "id"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=syscpu - // Acquired From Package proc - uses proc_SysCpu-group; + type eqpt_Id { + range "1"; } + description "The CPU identifier"; } - } - - grouping proc_SysCpuHistory-group { - // cpu history duration name - // Type is an MO-Defined-Type - leaf durationname { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "cpu history duration name, it can be last60seconds, \ - last60minutes, last60hours"; - // Type is an MO-Defined-Type - type proc_CpuHistoryDurationName; + type eqpt_Vendor; + description "Vendor"; } - // history data - // Type is an MO-Defined-Type - leaf usage { + // The device model + leaf model { config "false"; - description "cpu usage for the last duration time (60sec/60min/60hours)"; - // Type is an MO-Defined-Type - type proc_CpuHistoryList; + type eqpt_Model; + description "Model"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device revision. + leaf rev { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Revision; + description "Revision"; } - } - grouping proc_SysCpu-group { - leaf id { - config "false"; - type string; - } - leaf user { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf kernel { + // The device serial number. + leaf ser { config "false"; - type decimal64 { - fraction-digits 2; - } + + type eqpt_Serial; + description "Serial Number"; } - leaf idle { + leaf mfgTm { config "false"; - type decimal64 { - fraction-digits 2; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping proc_SysMem-group { - leaf total { - config "false"; - type uint64; - } - leaf used { - config "false"; - type uint64; - } - leaf free { - config "false"; - type uint64; - } - leaf memstatus { + // Socket designation + leaf sock { config "false"; - type string; + + type eqpt_Sock; + description "The CPU socket designation"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // Architecture of the CPU + leaf arch { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + // Type is a Local-MO-Defined-Type + type eqpt_Arch_CPU_arch; + description "The CPU architecture"; } - } - - grouping proc_Entity-group { - // Maximum memory allocated for the system - // Type is an MO-Defined-Type - leaf maxMemAlloc { + // CPU speed + leaf speed { config "false"; - description "Maximum Memory Allocated"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Speed; + description "The CPU Speed in Giga Hz"; } - // Free memory in the system - // Type is an MO-Defined-Type - leaf memFree { + // Number of cores on the CPU + leaf cores { config "false"; - description "Free Memory"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Cores; + description "The number of cores within the CPU"; } - // CPU Usage in the system - // Type is an MO-Defined-Type - leaf cpuPct { + // Number of cores enabled on the CPU + leaf coresEn { config "false"; - description "CPU Usage"; - // Type is an MO-Defined-Type - type proc_CpuUsage; + type eqpt_Cores; + description "The number of cores enabled within the CPU"; } - - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + leaf thrds { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256; + type uint16; + description "The number of threads within the CPU"; } - - // Process entry in the system - container process-items { - list Entry-list { + container core-items { + list Core-list { config "false"; key "id"; - // Added containment: Prefix=process - // Acquired From Package proc - uses proc_Entry-group; + uses eqpt_Core-group; + description "Core list"; } + description "Core"; } } - grouping proc_Entry-group { + grouping eqpt_Core-group { + description "Core"; - // Process id - // Type is an MO-Defined-Type + // Identifier for the item leaf id { config "false"; - description "Process ID"; - // Type is an MO-Defined-Type - type proc_ProcId; + type eqpt_Id; + description "ID"; } - // Process name - // Type is an MO-Defined-Type - leaf processName { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Process Name"; - // Type is an MO-Defined-Type - type proc_ProcessName; + type eqpt_Vendor; + description "Vendor"; } - // Start count of the process - // Type is an MO-Defined-Type - leaf startCnt { + // The device model + leaf model { config "false"; - description "Start Count"; - // Type is an MO-Defined-Type - type proc_StartCnt; + type eqpt_Model; + description "Model"; } - // Program counter - // Type is an MO-Defined-Type - leaf pc { + // The device revision. + leaf rev { config "false"; - description "Program Counter"; - // Type is an MO-Defined-Type - type proc_ProgCntr; + type eqpt_Revision; + description "Revision"; } - // Stack pointer - // Type is an MO-Defined-Type - leaf esp { + // The device serial number. + leaf ser { config "false"; - description "Stack Pointer"; - // Type is an MO-Defined-Type - type proc_Stack; + type eqpt_Serial; + description "Serial Number"; } - - // Process Type - // Type is an MO-Defined-Type - leaf processType { + leaf mfgTm { config "false"; - description "Process Type"; - - // Type is an MO-Defined-Type - type proc_ProcessType; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Maximum memory allocated for a process - // Type is an MO-Defined-Type - leaf maxMemAlloc { + leaf descr { config "false"; - description "Maximum Memory Allocated"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type naming_Descr; + description "Description of the specified attribute"; } + } + + grouping eqpt_Dimm-group { + description "The dual in-line memory module(DIMM) information"; - // Maximum memory used by a process - // Type is an MO-Defined-Type - leaf memUsed { + // used + leaf used { config "false"; - description "Maximum Memory used"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Capacity; + description "The used memory size in MB"; } - // Operational state for a process - // Type is an MO-Defined-Type - leaf operState { + // Identifier for the item + leaf id { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type proc_OperState; + type eqpt_Id; + description "ID"; } - // Physical memory used by a process - // Type is an MO-Defined-Type - leaf phyMem { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Actual real physical memory used by the process (ram)"; - // Type is an MO-Defined-Type - type proc_ProcMem; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // The device model + leaf model { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Model; + description "Model"; } - } - - grouping regress_If-group { - // Enum Property - // Type is an MO-Defined-Type - leaf enumProp { + // The device revision. + leaf rev { config "false"; - description "Enum Property"; - // Type is an MO-Defined-Type - type regress_EnumT; - } - leaf strProp { - config "false"; - type string; + type eqpt_Revision; + description "Revision"; } - leaf intProp { + + // The device serial number. + leaf ser { config "false"; - type uint32; + + type eqpt_Serial; + description "Serial Number"; } - leaf boolProp { + leaf mfgTm { config "false"; - type boolean; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Type of the memory + leaf type { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type eqpt_MemT; + default "dimm"; + description "The dual in-line memory module(DIMM) type"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // capacity + leaf cap { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Capacity; + description "The memory capacity"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - container rtvrfMbr-items { + // access: RO/RW + leaf acc { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type eqpt_Acc; + description "The memory access type"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type eqpt_OpSt; + description "The memory operational status"; } } - grouping rpm_Entity-group { + grouping eqpt_Flash-group { + description "The flash memory information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Identifier for the item + leaf id { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Id; + description "ID"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Vendor; + description "Vendor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Model; + description "Model"; } - // Route control rule for extended community lists - container rtextcom-items { - list Rule-list { - key "name"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rtextcom - // Acquired From Package rtextcom - uses rtextcom_Rule-group; - } + type eqpt_Revision; + description "Revision"; } - // Route control rule for access lists - container accesslist-items { - list Rule-list { - key "name"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=accesslist - // Acquired From Package rtlist - uses rtlist_Rule-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Route map rule - container rtmap-items { - list Rule-list { - key "name"; + leaf descr { + config "false"; - // Added containment: Prefix=rtmap - // Acquired From Package rtmap - uses rtmap_Rule-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Expanded Community List - container expcommlist-items { - list ExpandedComList-list { - key "regex expcommname"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=expcommlist - // Acquired From Package rtmap - uses rtmap_ExpandedComList-group; - } + type eqpt_MemT; + default "flash"; + description "The flash memory type"; } - // Route control rule for V4 prefix lists - container pfxlistv4-items { - list RuleV4-list { - key "name"; + // capacity + leaf cap { + config "false"; - // Added containment: Prefix=pfxlistv4 - // Acquired From Package rtpfx - uses rtpfx_RuleV4-group; - } + type eqpt_Capacity; + description "The memory capacity"; } - // Route control rule for V6 prefix lists - container pfxlistv6-items { - list RuleV6-list { - key "name"; + // access: RO/RW + leaf acc { + config "false"; - // Added containment: Prefix=pfxlistv6 - // Acquired From Package rtpfx - uses rtpfx_RuleV6-group; - } + type eqpt_Acc; + description "The memory access type"; } - // Route control rule for regular community lists - container rtregcom-items { - list Rule-list { - key "name"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtregcom - // Acquired From Package rtregcom - uses rtregcom_Rule-group; - } + type eqpt_OpSt; + description "The memory operational status"; } } - grouping rtextcom_Rule-group { + grouping eqpt_Obfl-group { + description "Onboard Failure Log"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Set the obfl log parameters + leaf logT { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_LogType; + description "Log Type"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "ID"; } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtextcom:Rule->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtcom_ComT; + type eqpt_Vendor; + description "Vendor"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtcom_Mode; + type eqpt_Model; + description "Model"; } - // Extended community list entry - container ent-items { - list Entry-list { - key "order"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtextcom - uses rtextcom_Entry-group; - } + type eqpt_Revision; + description "Revision"; } - // Rel-def target from ExtCommAtt - // Inherited From rtextcom:Rule - container rtExtCommAtt-items { + // The device serial number. + leaf ser { + config "false"; - // Added containment as a singleton: Prefix=rtExtCommAtt - // Acquired From Package rtmap - uses rtmap_RtExtCommAtt_target-group; + type eqpt_Serial; + description "Serial Number"; } - } - - grouping rtextcom_Entry-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; - - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + grouping syshist_CardRstRec-group { + description "The card reset record information"; + leaf ts { + config "false"; + type union { + type string; + type uint64; } + description "The reset timestamp"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Reset reason + leaf reason { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - type string { - } + type syshist_RstRsn; + description "The reset reason"; } - // Item in the community list - container item-items { - list Item-list { - key "scope community"; + // Reset reason qualifier + leaf reasonQual { + config "false"; - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; - } + type syshist_RstRsnQual; + description "The reset reason qualifier"; } - } - - grouping rtextcom_Item-group { - // type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Version with which the reset happened + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Type; + type cap_Version; + description "The version with which the reset happened"; } - // Scope - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Service name related with reset + leaf service { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Scope; + type syshist_RstService; + description "Service name related with reset"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping eqpt_LCSlot-group { + description "The line card slot information"; + leaf purgeCfg { + config "false"; + type boolean; + description "Purge Config"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Poweroff config + leaf poweroff { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf community { - type mtx_array_community; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - } - - grouping rtlist_Rule-group { - // Inherited From pol:Obj - // Modified by Override: rtlist:Rule->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // Physical Slot ID + leaf physId { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtlist - uses rtlist_Entry-group; - } + type eqpt_Id; + description "The physical slot identifier"; } - // Rel-def target from RtAsPathAccAtt - // Inherited From rtlist:Rule - container rtrtmapRtAsPathAccAtt-items { - - // Abstract containment of rtrtmapRtAsPathAccAtt derived from rtlist:Rule - list RtRtmapRtAsPathAccAtt-list { - config "false"; - key "tDn"; + // type of the slot + leaf type { + config "false"; - // Added containment: Prefix=rtrtmapRtAsPathAccAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtAsPathAccAtt_target-group; - } + type eqpt_SlotT; + default "lcslot"; + description "The type of line card slot"; } - } - grouping rtlist_Entry-group { + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type eqpt_SlotOpSt; + description "The slot operational status"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; + + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Line Card (IO card), containing io ports + container lc-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_LC-group; + description "The line card information"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // LEM Card (IO card), containing io ports + container lem-items { + list LEM-list { + config "false"; + key "lemid"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + uses eqpt_LEM-group; + description "The line card information list"; } + description "The line card information"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - type string { + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - } - grouping rtmap_Rule-group { + container rtoosSlot-items { - // Inherited From pol:Obj - // Modified by Override: rtmap:Rule->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; + } + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + grouping eqpt_LC-group { + description "The line card information"; + leaf breakoutFactor { + config "false"; + type uint32; + default "1"; + description "The line card breakout factor"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "ID"; } - // Route map entries - container ent-items { - list Entry-list { - key "order"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtmap - uses rtmap_Entry-group; - } + type eqpt_Vendor; + description "Vendor"; } - } - grouping rtmap_Entry-group { - - // Load Sharing v4 - // Type is an MO-Defined-Type - leaf loadShareV4 { - description "Load Sharing V4"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Model; + description "Model"; } - // Load Sharing v6 - // Type is an MO-Defined-Type - leaf loadShareV6 { - description "Load Sharing V6"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Revision; + description "Revision"; } - // Force Order v4 - // Type is an MO-Defined-Type - leaf forceOrderV4 { - description "Force Order V4"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Force Order v6 - // Type is an MO-Defined-Type - leaf forceOrderV6 { - description "Force Order V6"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type cap_Version; + description "Hardware Version"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:Entry->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // Type of card + leaf type { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type eqpt_CardT; + default "linecard"; + description "The card type"; } - // Order - // Inherited From rtflt:Entry - // Modified by Override: rtmap:Entry->order - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Card status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type eqpt_COpSt; + description "The card operational status"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type rtflt_Action; + type eqpt_CardId; + description "The card software card identifier"; } - // Match rule based on regular communities - container mregcomm-items { + // Number of ports on the card + leaf numP { + config "false"; - // Added containment as a singleton: Prefix=mregcomm - // Acquired From Package rtmap - uses rtmap_MatchRegComm-group; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Match rule based on extended communities - container mextcomm-items { + // mac address base + leaf macB { + config "false"; - // Added containment as a singleton: Prefix=mextcomm - // Acquired From Package rtmap - uses rtmap_MatchExtComm-group; + type eqpt_MacAddr; + description "The card MAC address base"; } - // Match rule based on route destinations - container mrtdst-items { + // mac address end + leaf macE { + config "false"; - // Added containment as a singleton: Prefix=mrtdst - // Acquired From Package rtmap - uses rtmap_MatchRtDst-group; + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; + } + description "The timestamp when card was detected"; } - // Match rule based on IPv6 route destinations - container mrtdstv6-items { + // power state of this card + leaf pwrSt { + config "false"; - // Added containment as a singleton: Prefix=mrtdstv6 - // Acquired From Package rtmap - uses rtmap_MatchRtDstV6-group; + type eqpt_PwrState; + description "The power state of this card"; } - // Match rule based on ipv4 multicast attributes - container mipv4mcast-items { + // The Software revision. + leaf swVer { + config "false"; - // Added containment as a singleton: Prefix=mipv4mcast - // Acquired From Package rtmap - uses rtmap_MatchIPv4Mcast-group; + type eqpt_Revision; + description "The card software revision"; } - // Match rule based on ipv6 multicast attributes - container mipv6mcast-items { + // Module Part number + leaf partNumber { + config "false"; - // Added containment as a singleton: Prefix=mipv6mcast - // Acquired From Package rtmap - uses rtmap_MatchIPv6Mcast-group; + type eqpt_PartNum; + description "The card part number"; } - // Match rule based on route nexthops - container mrtnh-items { + // Module VID + leaf vdrId { + config "false"; - // Added containment as a singleton: Prefix=mrtnh - // Acquired From Package rtmap - uses rtmap_MatchRtNh-group; + type eqpt_ModVid; + description "The card vdrId"; } - // Match rule based on route nexthops ipv6 - container mrtnhv6-items { + // module actual draw power + leaf powerActualDraw { + config "false"; - // Added containment as a singleton: Prefix=mrtnhv6 - // Acquired From Package rtmap - uses rtmap_MatchRtNhV6-group; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // Match rule based on route sources - container mrtsrc-items { + // module allocated power + leaf powerAllocated { + config "false"; - // Added containment as a singleton: Prefix=mrtsrc - // Acquired From Package rtmap - uses rtmap_MatchRtSrc-group; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Match rule based on route sources ipv6 - container mrtsrcv6-items { + // Information about each card firmware + container running-items { - // Added containment as a singleton: Prefix=mrtsrcv6 - // Acquired From Package rtmap - uses rtmap_MatchRtSrcV6-group; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // Match rule based on route types - container mrttype-items { - list MatchRtType-list { - key "routeT"; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; - // Added containment: Prefix=mrttype - // Acquired From Package rtmap - uses rtmap_MatchRtType-group; + uses eqpt_Ejec-group; + description "Ejector list"; } + description "Ejector"; } - // Match rule based on route tag - container mrttag-items { - list MatchRtTag-list { - key "tag"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment: Prefix=mrttag - // Acquired From Package rtmap - uses rtmap_MatchRtTag-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } - // Match rule based on source protocol - container msrcprot-items { - list MatchSrcProto-list { - key "proto"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Added containment: Prefix=msrcprot - // Acquired From Package rtmap - uses rtmap_MatchSrcProto-group; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Match rule based on pervasive routes - container mrtpervasive-items { - - // Added containment as a singleton: Prefix=mrtpervasive - // Acquired From Package rtmap - uses rtmap_MatchRtPervasive-group; - } + // Fabric facing external IO port + container fabport-items { - // Match rule based on AS Path Access List - container mrtacclist-items { + list FabP-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=mrtacclist - // Acquired From Package rtmap - uses rtmap_MatchAsPathAccessList-group; + uses eqpt_FabP-group; + description "The fabric port information list"; + } + description "The fabric port information"; } - // Match rule based on route metric - container mrtmetric-items { - list MatchRtMetric-list { - key "measure deviation"; + // Leaf (compute, WAN, services) facing external IO port + container leafport-items { - // Added containment: Prefix=mrtmetric - // Acquired From Package rtmap - uses rtmap_MatchRtMetric-group; + list LeafP-list { + config "false"; + key "id"; + + uses eqpt_LeafP-group; + description "The access port information list"; } + description "The access port information"; } - // Match rule based on route asn - container mrtasn-items { - list MatchRtAsn-list { - key "asn"; + // Extension chassis port connected to hosts + container hostextport-items { - // Added containment: Prefix=mrtasn - // Acquired From Package rtmap - uses rtmap_MatchRtAsn-group; + list ExtChHP-list { + config "false"; + key "id"; + + uses eqpt_ExtChHP-group; + description "Extended Chassis Host Port list"; } + description "Extended Chassis Host Port"; } - // Match rule based on route Interface - container mrtif-items { - list MatchRtIf-list { + // Extension chassis port connected to Leaf + container leafextport-items { + + list ExtChFP-list { + config "false"; key "id"; - // Added containment: Prefix=mrtif - // Acquired From Package rtmap - uses rtmap_MatchRtIf-group; + uses eqpt_ExtChFP-group; + description "Extended Chassis Fabric Port list"; } + description "Extended Chassis Fabric Port"; } - // Match rule based on Ospf-area - container mrtospf-items { - list MatchRtOspf-list { - key "area"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Added containment: Prefix=mrtospf - // Acquired From Package rtmap - uses rtmap_MatchRtOspf-group; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Route map Continue - container scontinue-items { + // Sprom Linecard + container splc-items { - // Added containment as a singleton: Prefix=scontinue - // Acquired From Package rtmap - uses rtmap_Continue-group; + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Set rule based on regular communities - container sregcomm-items { + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=sregcomm - // Acquired From Package rtmap - uses rtmap_SetRegComm-group; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Set rule based on generic extended communities - container sextcomm-items { - - // Added containment as a singleton: Prefix=sextcomm - // Acquired From Package rtmap - uses rtmap_SetExtComm-group; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - // Set rule based on cost communities - container sextcommcost-items { - list SetExtCommCost-list { - key "commCrit commId"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=sextcommcost - // Acquired From Package rtmap - uses rtmap_SetExtCommCost-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // Set rule based on color community - container sextcommcolor-items { + // Flash memory unit + container flash-items { - // Added containment as a singleton: Prefix=sextcommcolor - // Acquired From Package rtmap - uses rtmap_SetExtCommColor-group; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Set rule based on community list (for deletion) - container scommlist-items { + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Added containment as a singleton: Prefix=scommlist - // Acquired From Package rtmap - uses rtmap_SetCommList-group; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Set rule based on community list (for deletion) - container sextcommlist-items { - - // Added containment as a singleton: Prefix=sextcommlist - // Acquired From Package rtmap - uses rtmap_SetExtCommList-group; - } + grouping eqpt_FabP-group { + description "The fabric port information"; - // Set rule based on route targets communities - container srtt-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=srtt - // Acquired From Package rtmap - uses rtmap_SetRttComm-group; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set rule based on route distance - container srtdist-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=srtdist - // Acquired From Package rtmap - uses rtmap_SetRtDist-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set rule based on route tag - container srttag-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=srttag - // Acquired From Package rtmap - uses rtmap_SetRtTag-group; + type eqpt_PortT; + description "The port type"; } - - // Set rule based on weight - container sweight-items { - - // Added containment as a singleton: Prefix=sweight - // Acquired From Package rtmap - uses rtmap_SetWeight-group; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } - // Set rule based on label-index - container slblindex-items { + // ***************** MOs ******************* MO to send Adj info to dbgrelem from policyelem + container remotePort-items { + list RemotePort-list { + config "false"; + key "lldpAdjEpInstId"; - // Added containment as a singleton: Prefix=slblindex - // Acquired From Package rtmap - uses rtmap_SetLabelIndex-group; + uses dbg_RemotePort-group; + description "Remote Port Debug Information list"; + } + description "Remote Port Debug Information"; } - // Set rule based on preference - container spref-items { + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=spref - // Acquired From Package rtmap - uses rtmap_SetPref-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } + } - // Set rule based on metric - container smetric-items { - - // Added containment as a singleton: Prefix=smetric - // Acquired From Package rtmap - uses rtmap_SetMetric-group; - } + grouping dbg_RemotePort-group { + description "Remote Port Debug Information"; - // Set rule based on metric type - container smetrict-items { + // Neighbor port description + leaf remotePortDesc { + config "false"; - // Added containment as a singleton: Prefix=smetrict - // Acquired From Package rtmap - uses rtmap_SetMetricType-group; + type naming_Descr; + description "Description of the Remote Port"; } - container sdamp-items { + // Neighbor system description + leaf remoteSysDesc { + config "false"; - // Added containment as a singleton: Prefix=sdamp - // Acquired From Package rtmap - uses rtmap_SetDampeningType-group; + type naming_Descr; + description "Description of the Remote System"; + } + leaf remoteIp { + config "false"; + type address_Ip; + description "IP Address of the Remote Node"; } - container sprec-items { + // Local Interface ID of the port + leaf LocalIfid { + config "false"; - // Added containment as a singleton: Prefix=sprec - // Acquired From Package rtmap - uses rtmap_SetPrecedence-group; + type nw_IfId; + description "Interface ID of the Local Port"; + } + leaf lldpAdjEpInstId { + config "false"; + type string; + description "Instance ID of the LLDP Adjancy Object"; } + } - container sprecv6-items { + grouping eqpt_LeafP-group { + description "The access port information"; - // Added containment as a singleton: Prefix=sprecv6 - // Acquired From Package rtmap - uses rtmap_SetV6Precedence-group; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set rule based on ospf-nssa - container snssa-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=snssa - // Acquired From Package rtmap - uses rtmap_SetOspfNssa-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set rule based on ospf forwarding address - container sfwdaddr-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=sfwdaddr - // Acquired From Package rtmap - uses rtmap_SetOspfFwdAddr-group; + type eqpt_PortT; + description "The port type"; + } + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } - // Set rule based on next hop - container nh-items { - list SetNh-list { - key "addr"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Added containment: Prefix=nh - // Acquired From Package rtmap - uses rtmap_SetNh-group; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } + } - // Set rule based on next hop peer-address - container nhpa-items { - - // Added containment as a singleton: Prefix=nhpa - // Acquired From Package rtmap - uses rtmap_SetNhPeerAddr-group; - } + grouping eqpt_ExtChHP-group { + description "Extended Chassis Host Port"; - // Set rule based on as-path prepend - container setaspathprepend-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=setaspathprepend - // Acquired From Package rtmap - uses rtmap_SetPrepend-group; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // Set Prepend Last As - container setaspathlastas-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=setaspathlastas - // Acquired From Package rtmap - uses rtmap_SetPrependLastAs-group; + type naming_Descr; + description "Description of the specified attribute"; } - // Set Prepend Tag - container setaspathtag-items { + // Type of port + leaf type { + config "false"; - // Added containment as a singleton: Prefix=setaspathtag - // Acquired From Package rtmap - uses rtmap_SetAsPathTag-group; + type eqpt_PortT; + description "The port type"; } - - // Set rule based on origin type - container origin-items { - - // Added containment as a singleton: Prefix=origin - // Acquired From Package rtmap - uses rtmap_SetOrigin-group; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } } - grouping rtmap_MatchRegComm-group { + grouping eqpt_ExtChFP-group { + description "Extended Chassis Fabric Port"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRegComm->type - // Type is an MO-Defined-Type + // Type of port leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_PortT; + description "The port type"; } - - // criteria - // Inherited From rtmap:MatchComm - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; - - // Type is an MO-Defined-Type - type rtmap_Criteria; + leaf speed { + config "false"; + type uint64; + description "The port operational speed"; } + } - // Rel-def from RegCommAtt - container rsregCommAtt-items { + grouping eqpt_SpromLc-group { + description "The linecard sprom information"; - // Abstract containment of rsregCommAtt derived from rtmap:MatchRegComm - list RsRegCommAtt-list { - key "tDn"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=rsregCommAtt - // Acquired From Package rtmap - uses rtmap_RsRegCommAtt_source-group; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - } - - grouping rtmap_MatchExtComm-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Vendor; + description "Vendor"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Revision; + description "Revision"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchExtComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Serial; + description "Serial Number"; } - // criteria - // Inherited From rtmap:MatchComm - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Criteria; + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def from ExtCommAtt - container rsextCommAtt-items { - - // Abstract containment of rsextCommAtt derived from rtmap:MatchExtComm - list RsExtCommAtt-list { - key "tDn"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=rsextCommAtt - // Acquired From Package rtmap - uses rtmap_RsExtCommAtt_source-group; - } + type eqpt_MemT; + description "The memory type"; } - } - - grouping rtmap_MatchRtDst-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // capacity + leaf cap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Capacity; + description "The memory capacity"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // access: RO/RW + leaf acc { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Acc; + description "The memory access type"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtDst->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Rel-def from RtDstAtt - container rsrtDstAtt-items { - - // Abstract containment of rsrtDstAtt derived from rtmap:MatchRtDst - list RsRtDstAtt-list { - key "tDn"; + // sprom Common Block + container spcmn-items { - // Added containment: Prefix=rsrtDstAtt - // Acquired From Package rtmap - uses rtmap_RsRtDstAtt_source-group; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - } - - grouping rtmap_MatchRtDstV6-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sprom Linecard block + container splcblk-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_SpromLcBlk-group; + description "Sprom linecard block information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // sprom Port Data Interface + container sppd-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_SpPd-group; + description "The sprom port data information"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtDstV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; } - // Rel-def from RtDstV6Att - container rsrtDstV6Att-items { - - // Abstract containment of rsrtDstV6Att derived from rtmap:MatchRtDstV6 - list RsRtDstV6Att-list { - key "tDn"; + // Sprom Sensor block + container spsensorblk-items { - // Added containment: Prefix=rsrtDstV6Att - // Acquired From Package rtmap - uses rtmap_RsRtDstV6Att_source-group; - } + uses eqpt_SpSensorBlk-group; + description "The sprom sensor block information"; } } - grouping rtmap_MatchIPv4Mcast-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Modified by Override: rtmap:MatchIPMcast->name - // Type is an MO-Defined-Type - leaf name { + grouping eqpt_SpromLcBlk-group { + description "Sprom linecard block information"; + leaf fbits { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint64; + description "The sprom linecard block feature bits"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:MatchIPMcast->descr - // Type is an MO-Defined-Type - leaf descr { + leaf hwCBits { config "false"; - description "descr"; - - // Type is an MO-Defined-Type - type naming_Descr { - length "0..32"; - } + type uint64; + description "The sprom linecard block hardware change bits"; } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchIPv4Mcast->type - // Modified by Override: rtmap:MatchIPMcast->type - // Type is an MO-Defined-Type - leaf type { + leaf crdIdx { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; + type uint16; + description "The sprom linecard block card index"; } - leaf groupAddr { - type address_Ip; + leaf macB { + config "false"; + type string; + description "The sprom linecard block MAC address base"; } - leaf groupStartAddr { - type address_Ip; + leaf macL { + config "false"; + type uint16; + description "The sprom linecard block number of MACs"; } - leaf groupEndAddr { - type address_Ip; + leaf eobcN { + config "false"; + type uint16; + description "The sprom linecard block number of EOBC connections"; } - leaf rp { - type address_Ip; + leaf epldN { + config "false"; + type uint16; + description "The sprom linecard block EPLD number"; } - - // rp type ASM/Bidir - // Inherited From rtmap:MatchIPMcast - // Type is an MO-Defined-Type - leaf rpType { - description "rp type ASM/Bidir"; - - // Type is an MO-Defined-Type - type rtmap_rpTypeT; + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom linecard block max connector power"; } - leaf sourceAddr { - type address_Ip; + leaf coolRq { + config "false"; + type uint16; + description "The sprom linecard block cooling requirement"; } - } - - grouping rtmap_MatchIPv6Mcast-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Modified by Override: rtmap:MatchIPMcast->name - // Type is an MO-Defined-Type - leaf name { + leaf ambT { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type uint16; + description "The sprom linecard block ambient temperature"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtmap:MatchIPMcast->descr - // Type is an MO-Defined-Type - leaf descr { + leaf sensor1 { config "false"; - description "descr"; - - // Type is an MO-Defined-Type - type naming_Descr { - length "0..32"; - } + type string; + description "The sensor data sprom temperature threshold"; } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchIPv6Mcast->type - // Modified by Override: rtmap:MatchIPMcast->type - // Type is an MO-Defined-Type - leaf type { + leaf sensor2 { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupAddr { - type address_Ip; + leaf sensor3 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupStartAddr { - type address_Ip; + leaf sensor4 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf groupEndAddr { - type address_Ip; + leaf sensor5 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf rp { - type address_Ip; + leaf sensor6 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - - // rp type ASM/Bidir - // Inherited From rtmap:MatchIPMcast - // Type is an MO-Defined-Type - leaf rpType { - description "rp type ASM/Bidir"; - - // Type is an MO-Defined-Type - type rtmap_rpTypeT; + leaf sensor7 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - leaf sourceAddr { - type address_Ip; + leaf sensor8 { + config "false"; + type string; + description "The sensor data sprom temperature threshold"; } - } - - grouping rtmap_MatchRtNh-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtNh->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // sprom Sensor Data Interface + container spsd-items { + list SpSd-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_SpSd-group; + description "The sensor data sprom information list"; + } + description "The sensor data sprom information"; } - // Rel-def from RtNhAtt - container rsrtNhAtt-items { - - // Abstract containment of rsrtNhAtt derived from rtmap:MatchRtNh - list RsRtNhAtt-list { - key "tDn"; + // sprom Port Data Interface + container sppd-items { - // Added containment: Prefix=rsrtNhAtt - // Acquired From Package rtmap - uses rtmap_RsRtNhAtt_source-group; - } + uses eqpt_SpPd-group; + description "The sprom port data information"; } } - grouping rtmap_MatchRtNhV6-group { + grouping eqpt_LEM-group { + description "The line card information"; + leaf lemid { + config "false"; + type uint32; + description "LEM Module Id"; + } + leaf breakoutFactor { + config "false"; + type uint32; + default "1"; + description "The LEM card breakout factor"; + } + leaf purgeLemCfg { + config "false"; + type boolean; + description "Purge Config for LEM"; + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtNhV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Model; + description "Model"; } - // Rel-def from RtNhV6Att - container rsrtNhV6Att-items { - - // Abstract containment of rsrtNhV6Att derived from rtmap:MatchRtNhV6 - list RsRtNhV6Att-list { - key "tDn"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rsrtNhV6Att - // Acquired From Package rtmap - uses rtmap_RsRtNhV6Att_source-group; - } + type eqpt_Revision; + description "Revision"; } - } - - grouping rtmap_MatchRtSrc-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtSrc->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type cap_Version; + description "Hardware Version"; } - // Rel-def from RtSrcAtt - container rsrtSrcAtt-items { - - // Abstract containment of rsrtSrcAtt derived from rtmap:MatchRtSrc - list RsRtSrcAtt-list { - key "tDn"; + // Type of card + leaf type { + config "false"; - // Added containment: Prefix=rsrtSrcAtt - // Acquired From Package rtmap - uses rtmap_RsRtSrcAtt_source-group; - } + type eqpt_CardT; + default "lemcard"; + description "The card type"; } - } - grouping rtmap_MatchRtSrcV6-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Card status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_COpSt; + description "The card operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_CardId; + description "The card software card identifier"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtSrcV6->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Number of ports on the card + leaf numP { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Rel-def from RtSrcV6Att - container rsrtSrcV6Att-items { - - // Abstract containment of rsrtSrcV6Att derived from rtmap:MatchRtSrcV6 - list RsRtSrcV6Att-list { - key "tDn"; + // mac address base + leaf macB { + config "false"; - // Added containment: Prefix=rsrtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RsRtSrcV6Att_source-group; - } + type eqpt_MacAddr; + description "The card MAC address base"; } - } - - grouping rtmap_MatchRtType-group { - // Route types - // Type is an MO-Defined-Type - leaf routeT { - description "Route Type"; + // mac address end + leaf macE { + config "false"; - // Type is an MO-Defined-Type - type rtmap_RouteT; + type eqpt_MacAddr; + description "The card MAC address end"; } - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Revision; + description "The card software revision"; } - } - grouping rtmap_MatchRtTag-group { + // Module Part number + leaf partNumber { + config "false"; - // Route tag - // Type is an MO-Defined-Type - leaf tag { - description "Route Tag"; + type eqpt_PartNum; + description "The card part number"; + } - // Type is an MO-Defined-Type - type rtmap_RouteTag; + // Module VID + leaf vdrId { + config "false"; + + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtTag->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } - } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - grouping rtmap_MatchSrcProto-group { - leaf proto { - type string { - length "1..32"; + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchSrcProto->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping rtmap_MatchRtPervasive-group { + grouping eqpt_FCSlot-group { + description "The fabric card slot information"; - // Route pervasive - // Type is an MO-Defined-Type - leaf pervasive { - description "Pervasive"; + // Poweroff config + leaf poweroff { + config "false"; - // Type is an MO-Defined-Type - type rtmap_RoutePervasive; + type eqpt_PoweroffSt; + description "Poweroff Config"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtPervasive->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_MatchT; - } - } - - grouping rtmap_MatchAsPathAccessList-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id; + description "The physical slot identifier"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchAsPathAccessList->type - // Type is an MO-Defined-Type + // type of the slot leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_SlotT; + default "fcslot"; + description "The fabric card type"; } - // Rel-def from RtAsPathAccAtt - container rsrtAsPathAccAtt-items { - - // Abstract containment of rsrtAsPathAccAtt derived from rtmap:MatchAsPathAccessList - list RsRtAsPathAccAtt-list { - key "tDn"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Added containment: Prefix=rsrtAsPathAccAtt - // Acquired From Package rtmap - uses rtmap_RsRtAsPathAccAtt_source-group; - } + type eqpt_SlotOpSt; + description "The slot operational status"; } - } - - grouping rtmap_MatchRtMetric-group { - // Route metric measure - // Type is an MO-Defined-Type - leaf measure { - description "Route Metric Measure"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Route metric deviation - // Type is an MO-Defined-Type - leaf deviation { - description "Route Metric Deviation"; + // Fabric Card, connecting different io cards + container fc-items { - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + uses eqpt_FC-group; + description "The fabric card information"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtMetric->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_MatchT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_MatchRtAsn-group { - leaf asn { - type string; - } + grouping eqpt_FC-group { + description "The fabric card information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtAsn->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_MatchRtIf-group { - - // Route asn - // Type is an MO-Defined-Type - leaf id { - description "Route If"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtIf->type - // Type is an MO-Defined-Type + // Hardware version for this fru + leaf hwVer { + config "false"; + + type cap_Version; + description "Hardware Version"; + } + + // Type of card leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_CardT; + default "fabriccard"; + description "The card type"; } - } - grouping rtmap_MatchRtOspf-group { + // Card status + leaf operSt { + config "false"; - // Route ospf - // Type is an MO-Defined-Type - leaf area { - description "OSPF Area"; + type eqpt_COpSt; + description "The card operational status"; + } - // Type is an MO-Defined-Type - type rtmap_OSPFArea; + // Software card ID + leaf swCId { + config "false"; + + type eqpt_CardId; + description "The card software card identifier"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Number of ports on the card + leaf numP { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Match - // Modified by Override: rtmap:MatchRtOspf->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MatchT; + type eqpt_Revision; + description "The card software revision"; } - } - - grouping rtmap_Continue-group { - // Continue - // Type is an MO-Defined-Type - leaf continue { - description "continue"; + // Module Part number + leaf partNumber { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Order; + type eqpt_PartNum; + description "The card part number"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Module VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_ModVid; + description "The card vdrId"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:Continue->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - } - - grouping rtmap_SetRegComm-group { - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // No Community Attribute - // Type is an MO-Defined-Type - leaf noCommAttr { - description "No Community Attribute"; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_LocLed-group; + description "The locator LED information list"; } + description "The locator LED information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRegComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_EpcP-group; + description "The EPC port information list"; + } + description "The EPC port information"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + // Sprom Linecard + container splc-items { - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; - } + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Item in the community list - container item-items { - list Item-list { - key "community"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Added containment: Prefix=item - // Acquired From Package rtregcom - uses rtregcom_Item-group; + uses eqpt_Asic-group; + description "The Asic information list"; } + description "The Asic information"; } - } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - grouping rtmap_SetCommItem-group { - leaf community { - type mtx_array_community; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - } - - grouping rtregcom_Item-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Flash-group; + description "The flash memory information"; } - leaf community { - type mtx_array_community; + + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping rtmap_SetExtComm-group { + grouping eqpt_SysCSlot-group { + description "The system controller module slot information"; - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Id { + range "1..666"; + } + description "ID"; } - // No Community Attribute - // Type is an MO-Defined-Type - leaf noCommAttr { - description "No Community Attribute"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtextcom_Scope; + type eqpt_Id; + description "The physical slot identifier"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotT; + default "scslot"; + description "The system controller slot type"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // System Controller Card + container sc-items { - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_SysC-group; + description "The system controller module information"; } - // Item in the community list - container item-items { - list Item-list { - key "scope community"; + // Card reset record + container rstrec-items { + list CardRstRec-list { + config "false"; + key "ts"; - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; + uses syshist_CardRstRec-group; + description "The card reset record information list"; } + description "The card reset record information"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + container rtoosSlot-items { - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; - } + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetExtCommCost-group { + grouping eqpt_SysC-group { + description "The system controller module information"; - // Set criteria for IGP or Pre-bestpath - // Type is an MO-Defined-Type - leaf commCrit { - description "Criteria"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_Id; + description "ID"; } - // Community Id - // Type is an MO-Defined-Type - leaf commId { - description "Community Id"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityId; + type eqpt_Vendor; + description "Vendor"; } - // Community Value - // Type is an MO-Defined-Type - leaf commValue { - description "Community Value"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_CommunityVal; + type eqpt_Model; + description "Model"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Revision; + description "Revision"; + } + + // The device serial number. + leaf ser { + config "false"; + + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtCommCost->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Type of card + leaf type { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_CardT; + default "sysctrlcard"; + description "The card type"; } - } - grouping rtmap_SetExtCommColor-group { - leaf commValue { - type uint32 { - range "1..4294967295"; - } - } - } + // Card status + leaf operSt { + config "false"; - grouping rtmap_SetCommList-group { + type eqpt_COpSt; + description "The card operational status"; + } - // Delete Matching Communities - // Type is an MO-Defined-Type - leaf delete { - description "Delete Matching Communities"; + // Redundancy state + leaf rdSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_RdSt; + description "The card redundancy state"; } - // Inherited From pol:Obj - // Modified by Override: rtmap:SetCommList->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Software card ID + leaf swCId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_CardId; + description "The card software card identifier"; + } + + // Number of ports on the card + leaf numP { + config "false"; + + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetCommList->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Revision; + description "The card software revision"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Module Part number + leaf partNumber { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + type eqpt_PartNum; + description "The card part number"; } - } - - grouping rtmap_SetExtCommList-group { - // Delete Matching Communities - // Type is an MO-Defined-Type - leaf delete { - description "Delete Matching Ext Communities"; + // Module VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: rtmap:SetExtCommList->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetExtCommList->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Information about each card firmware + container running-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses firmware_CardRunning-group; + description "Card Running Status"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - } - grouping rtmap_SetRttComm-group { - - // Add To Existing Community - // Type is an MO-Defined-Type - leaf additive { - description "Add To Existing Community"; + // internal eobc (ethernet out of band channel) port + // (all card component management is done via this port) + container eobc-items { + list EobcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + uses eqpt_EobcP-group; + description "The Ethernet Out of Band Channel(EOBC) port information list"; + } + description "The Ethernet Out of Band Channel(EOBC) port information"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // internal epc port + // (internal hi-gig links connecting the external io ports) + container epc-items { + list EpcP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_EpcP-group; + description "The EPC port information list"; } + description "The EPC port information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRttComm->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Sprom Linecard + container splc-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromLc-group; + description "The linecard sprom information"; } - // Set criteria - // Inherited From rtmap:SetComm - // Type is an MO-Defined-Type - leaf setCriteria { - description "Criteria"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtmap_SetCriteria; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Item in the community list - container item-items { - list Item-list { - key "scope community"; - - // Added containment: Prefix=item - // Acquired From Package rtextcom - uses rtextcom_Item-group; + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // List of community values - container scomm-items { - list SetCommItem-list { - key "community"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=scomm - // Acquired From Package rtmap - uses rtmap_SetCommItem-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - } - grouping rtmap_SetRtDist-group { - - // Route Administrative Distance for IGP or EBGP - // Type is an MO-Defined-Type - leaf dist { - description "Distance"; + // Flash memory unit + container flash-items { - // Type is an MO-Defined-Type - type rtmap_RouteDist; + uses eqpt_Flash-group; + description "The flash memory information"; } - // Route Administrative Distance for Internal - // Type is an MO-Defined-Type - leaf distI { - description "Distance internal"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type rtmap_RouteDist; + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Route Administrative Distance for local - // Type is an MO-Defined-Type - leaf distL { - description "Distance local"; - - // Type is an MO-Defined-Type - type rtmap_RouteDist; - } + grouping eqpt_PsuSlot-group { + description "The power supply slot information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..10"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRtDist->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Id; + description "The physical slot identifier"; } - } - grouping rtmap_SetRtTag-group { + // type of the slot + leaf type { + config "false"; - // Tag value - // Type is an MO-Defined-Type - leaf tag { - description "Tag"; + type eqpt_SlotT; + default "psuslot"; + description "The power supply slot type"; + } - // Type is an MO-Defined-Type - type rtmap_RouteTag; + // slot status: is it empty or inserted + leaf operSt { + config "false"; + + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power supply slot + container psu-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Psu-group; + description "The power supply unit information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetRtTag->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetWeight-group { + grouping eqpt_Psu-group { + description "The power supply unit information"; - // Weight value - // Type is an MO-Defined-Type - leaf weight { - description "Weight"; + // Power supply status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Weight; + type eqpt_OpSt; + description "The power supply unit operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Power supply capacity in Amps + leaf cap { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Amps; + description "The power supply unit capacity"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Actual drawn/output current in Amps + leaf drawnCurr { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Amps; + description "The power supply unit actual drawn/output current"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetWeight->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Power supply voltage source + leaf vSrc { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_VSrc; + description "The power supply unit voltage source"; } - } - grouping rtmap_SetLabelIndex-group { - - // Label Index value - // Type is an MO-Defined-Type - leaf index { - description "Label Index"; + // Power supply voltage + leaf volt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Index; + type eqpt_Volts; + description "The power supply unit voltage"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Power supply fan operational status + leaf fanOpSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_OpSt; + description "The power supply unit fan operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Power supply fan air direction + leaf fanDirection { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_AirDir; + description "The power supply unit fan air direction"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetLabelIndex->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Actual Input current in Amps + leaf inputCurr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Amps; + description "The power supply unit input current"; } - } - - grouping rtmap_SetPref-group { - // Preference value - // Type is an MO-Defined-Type - leaf localPref { - description "Local Preference"; + // power supply VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_LocalPref; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // power supply input voltage + leaf vIn { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Volts; + description "The power supply input voltage"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power supply output voltage + leaf vOut { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Volts; + description "The power supply output voltage"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPref->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // power supply input watts + leaf pIn { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "The power supply input watts"; } - } - grouping rtmap_SetMetric-group { + // power supply output watts + leaf pOut { + config "false"; - // Metric value for bandwidth - // Type is an MO-Defined-Type - leaf metric { - description "Metric"; + type eqpt_Watts; + description "The power supply output watts"; + } - // Type is an MO-Defined-Type - type rtmap_MetricS; + // power supply input amps + leaf iIn { + config "false"; + + type eqpt_Amps; + description "The power supply input amps"; } - // Metric value for delay - // Type is an MO-Defined-Type - leaf metricD { - description "Metric delay"; + // power supply output amps + leaf iOut { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricD; + type eqpt_Amps; + description "The power supply output amps"; + } + leaf softwareAlarm { + config "false"; + type boolean; + description "It is shown if there is power supply software alarm"; + } + leaf hardwareAlarm { + config "false"; + type string; + description "It is shown if there is power supply hardware alarm"; + } + leaf typeCordConnected { + config "false"; + type string; + description "The power supply type cord connected"; } - // Metric value for reliability - // Type is an MO-Defined-Type - leaf metricR { - description "Metric rlblty"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricR; + type eqpt_Id; + description "ID"; } - // Metric value for load - // Type is an MO-Defined-Type - leaf metricL { - description "Metric load"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricL; + type eqpt_Vendor; + description "Vendor"; } - // Metric value for mtu - // Type is an MO-Defined-Type - leaf metricM { - description "Metric mtu"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricM; + type eqpt_Model; + description "Model"; } - // is BGP config - // Type is an MO-Defined-Type - leaf isBGP { - description "is BGP config"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Proto; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetMetric->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; + } + + // Represents an fan in PSU + container psfan-items { + list PsFan-list { + config "false"; + key "id"; + + uses eqpt_PsFan-group; + description "The fan in PSU information list"; + } + description "The fan in PSU information"; } } - grouping rtmap_SetMetricType-group { + grouping eqpt_PsFan-group { + description "The fan in PSU information"; - // Metric Type - // Type is an MO-Defined-Type - leaf metricT { - description "Metric Type"; + // Fan operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_MetricT; + type eqpt_OpSt; + description "The fan operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Fan direction + leaf dir { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_PsuFanDir; + description "The fan air direction"; + } + leaf speedInRpm { + config "false"; + type uint32; + description "The fan speed in rpm"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Id { + range "1..10"; + } + description "The fan identifier"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetMetricType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Vendor; + description "Vendor"; } - } - grouping rtmap_SetDampeningType-group { + // The device model + leaf model { + config "false"; - // Dampening Halflife - // Type is an MO-Defined-Type - leaf halflife { - description "Dampening Halfife"; + type eqpt_Model; + description "Model"; + } - // Type is an MO-Defined-Type - type rtmap_HalfLife; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Dampening Reuse - // Type is an MO-Defined-Type - leaf reuse { - description "Dampening Reuse"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Reuse; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Dampening Supress - // Type is an MO-Defined-Type - leaf supress { - description "Dampening Supress"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Supress; + type naming_Descr; + description "Description of the specified attribute"; } - // Dampening Duration - // Type is an MO-Defined-Type - leaf duration { - description "Dampening Duration"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Duration; + type cap_Version; + description "Hardware Version"; } + } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping eqpt_FtSlot-group { + description "The fan tray slot information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..6"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetDampeningType->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Id; + description "The physical slot identifier"; } - } - grouping rtmap_SetPrecedence-group { + // type of the slot + leaf type { + config "false"; - // Precedence Name - // Type is an MO-Defined-Type - leaf precname { - description "Precedence Name"; + type eqpt_SlotT; + default "fantray"; + description "The fan tray slot type"; + } - // Type is an MO-Defined-Type - type rtmap_PrecName; + // slot status: is it empty or inserted + leaf operSt { + config "false"; + + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Represents an inventoried fan tray + container ft-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_Ft-group; + description "The fan tray information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrecedence->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtmap_SetV6Precedence-group { + grouping eqpt_Ft-group { + description "The fan tray information"; - // Precedence Name - // Type is an MO-Defined-Type - leaf precname { - description "Precedence Name"; + // Fan tray operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_PrecName; + type eqpt_OpSt; + description "The fan tray operational status"; + } + leaf fanName { + config "false"; + type string; + description "The fan tray name"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // power supply VID + leaf vdrId { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_ModVid; + description "The fan vdrId"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // fan module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that fan module actually draw"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetV6Precedence->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // fan module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Watts; + description "It is the power value that power supply allocated to fan module"; } - } - grouping rtmap_SetOspfNssa-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..4"; } + description "The fan tray identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOspfNssa->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetOspfFwdAddr-group { - leaf fwdAddr { - type address_Ip; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOspfFwdAddr->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Hardware version for this fru + leaf hwVer { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type cap_Version; + description "Hardware Version"; } - } - grouping rtmap_SetNh-group { - leaf addr { - type address_Ip; + // Ejector information + container ej-items { + list Ejec-list { + config "false"; + key "id"; + + uses eqpt_Ejec-group; + description "Ejector list"; + } + description "Ejector"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Represents a fan in a fan tray + container fan-items { + list Fan-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses eqpt_Fan-group; + description "The fan information list"; } + description "The fan information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Locator LED on chassis components + container locled-items { + list LocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_LocLed-group; + description "The locator LED information list"; + } + description "The locator LED information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetNh->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + container spfan-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromFan-group; + description "The fan sprom information"; } } - grouping rtmap_SetNhPeerAddr-group { + grouping eqpt_Fan-group { + description "The fan information"; - // IPv4 Next hop peer address - // Type is an MO-Defined-Type - leaf v4PeerAddr { - description "Set Next Hop V4 Peer Address"; + // Fan operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_OpSt; + description "The fan operational status"; } - // IPv6 Next hop peer address - // Type is an MO-Defined-Type - leaf v6PeerAddr { - description "Set Next Hop V6 Peer Address"; + // Fan direction + leaf dir { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_AirDir; + description "The fan air direction"; } - - // IPv4 Next hop Unchanged - // Type is an MO-Defined-Type - leaf v4Unchange { - description "Set IPv4 Next Hop Unchanged"; - - // Type is an MO-Defined-Type - type rtmap_AdminSt; + leaf speedInRpm { + config "false"; + type uint32; + description "The fan speed in rpm"; } - - // IPv6 Next hop Unchanged - // Type is an MO-Defined-Type - leaf v6Unchange { - description "Set IPv6 Next Hop Unchanged"; - - // Type is an MO-Defined-Type - type rtmap_AdminSt; + leaf speedInPercent { + config "false"; + type uint32; + description "The fan speed in percentage"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..10"; } + description "The fan identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetNhPeerAddr->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetPrepend-group { - leaf as { - type string; + // The device revision. + leaf rev { + config "false"; + + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; - } - - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrepend->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; - - // Type is an MO-Defined-Type - type rtmap_SetT; + description "Description of the specified attribute"; } } - grouping rtmap_SetPrependLastAs-group { - - // As Path Last As - // Type is an MO-Defined-Type - leaf lastas { - description "LastAs"; - - // Type is an MO-Defined-Type - type rtmap_RouteLastAs; - } + grouping eqpt_SpromFan-group { + description "The fan sprom information"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Vendor; + description "Vendor"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetPrependLastAs->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_Model; + description "Model"; } - } - grouping rtmap_SetAsPathTag-group { - - // Set as path - // Type is an MO-Defined-Type - leaf tag { - description "Set as path tag"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type rtmap_AdminSt; + type eqpt_Revision; + description "Revision"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Serial; + description "Serial Number"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetAsPathTag->type - // Type is an MO-Defined-Type + // Type of the memory leaf type { - description "Type"; + config "false"; - // Type is an MO-Defined-Type - type rtmap_SetT; + type eqpt_MemT; + description "The memory type"; } - } - grouping rtmap_SetOrigin-group { + // capacity + leaf cap { + config "false"; - // Metric Type - // Type is an MO-Defined-Type - leaf originT { - description "Origin Type"; + type eqpt_Capacity; + description "The memory capacity"; + } - // Type is an MO-Defined-Type - type rtmap_OriginT; + // access: RO/RW + leaf acc { + config "false"; + + type eqpt_Acc; + description "The memory access type"; } - // Remote ASN - // Type is an MO-Defined-Type - leaf asn { - description "Autonomous System Number"; + // Operational status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type rtcom_AS; + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // sprom Common Block + container spcmn-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Sprom FAN block + container spfanblk-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses eqpt_SpromFanBlk-group; + description "The sprom fan block information"; } - // Type - // Inherited From rtmap:Set - // Modified by Override: rtmap:SetOrigin->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // Fan Serial Number + container spfansn-items { - // Type is an MO-Defined-Type - type rtmap_SetT; + uses eqpt_SpromFanSN-group; + description "The sprom fan serial number information"; } } - grouping rtmap_ExpandedComList-group { - leaf regex { - type string { - length "0..63"; - } + grouping eqpt_SpromFanBlk-group { + description "The sprom fan block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom fan block feature bits"; } - leaf expcommname { - type string { - length "0..63"; + leaf hwCBits { + config "false"; + type uint64; + description "The sprom fan block hardware change bits"; + } + leaf stackMIB { + config "false"; + type uint16; + description "The sprom fan block stack MIB idnetifier"; + } + leaf coolCap { + config "false"; + type uint16; + description "The sprom fan block cooling capacity"; + } + leaf ambTemp { + config "false"; + type uint16; + description "The sprom fan block ambient temperature"; + } + leaf hpPwrCon { + config "false"; + type uint16; + description "The sprom fan block HP mode power consumption"; + } + leaf hpCoolCon { + config "false"; + type uint16; + description "The sprom fan block HP mode cooling consumption"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; + } + } + + grouping eqpt_SpromFanSN-group { + description "The sprom fan serial number information"; + + // Serial Number + leaf serNum { + config "false"; + + type eqpt_Serial; + description "The sprom fan serial number"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; + } + } + + grouping eqpt_SpromBP-group { + description "The backplane sprom information"; + + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..100"; } + description "The sprom identifier"; } - // Deny or Permit - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type rtmap_Action; + type eqpt_Vendor; + description "Vendor"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device model + leaf model { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Model; + description "Model"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // The device revision. + leaf rev { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Revision; + description "Revision"; } - } - grouping rtpfx_RuleV4-group { - - // Inherited From pol:Obj - // Modified by Override: rtpfx:RuleV4->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // The device serial number. + leaf ser { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Serial; + description "Serial Number"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtpfx:RuleV4->descr - // Type is an MO-Defined-Type leaf descr { - description "descr"; + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // Type of the memory + leaf type { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtpfx - uses rtpfx_Entry-group; - } + type eqpt_MemT; + description "The memory type"; } - // Rel-def target from RtDstAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtDstAtt-items { - - // Abstract containment of rtrtmapRtDstAtt derived from rtpfx:Rule - list RtRtmapRtDstAtt-list { - config "false"; - key "tDn"; + // capacity + leaf cap { + config "false"; - // Added containment: Prefix=rtrtmapRtDstAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstAtt_target-group; - } + type eqpt_Capacity; + description "The memory capacity"; } - // Rel-def target from RtDstV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtDstV6Att-items { - - // Abstract containment of rtrtmapRtDstV6Att derived from rtpfx:Rule - list RtRtmapRtDstV6Att-list { - config "false"; - key "tDn"; + // access: RO/RW + leaf acc { + config "false"; - // Added containment: Prefix=rtrtmapRtDstV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstV6Att_target-group; - } + type eqpt_Acc; + description "The memory access type"; } - // Rel-def target from RtNhAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtNhAtt-items { - - // Abstract containment of rtrtmapRtNhAtt derived from rtpfx:Rule - list RtRtmapRtNhAtt-list { - config "false"; - key "tDn"; + // Operational status + leaf operSt { + config "false"; - // Added containment: Prefix=rtrtmapRtNhAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhAtt_target-group; - } + type eqpt_OpSt; + description "The memory operational status"; + } + leaf numBlk { + config "false"; + type uint16; + description "The sprom number of blocks"; } - // Rel-def target from RtNhV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtNhV6Att-items { - - // Abstract containment of rtrtmapRtNhV6Att derived from rtpfx:Rule - list RtRtmapRtNhV6Att-list { - config "false"; - key "tDn"; + // sprom Common Block + container spcmn-items { - // Added containment: Prefix=rtrtmapRtNhV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhV6Att_target-group; - } + uses eqpt_SpCmnBlk-group; + description "The sprom common block information"; } - // Rel-def target from RtSrcAtt - // Inherited From rtpfx:RuleV4 - container rtrtmapRtSrcAtt-items { + // Sprom BP block + container spbpblk-items { - // Abstract containment of rtrtmapRtSrcAtt derived from rtpfx:Rule - list RtRtmapRtSrcAtt-list { - config "false"; - key "tDn"; + uses eqpt_SpromBPBlk-group; + description "The sprom backplane block information"; + } + } - // Added containment: Prefix=rtrtmapRtSrcAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcAtt_target-group; - } + grouping eqpt_SpromBPBlk-group { + description "The sprom backplane block information"; + leaf fbits { + config "false"; + type uint64; + description "The sprom backplane block feature bits"; + } + leaf hwCBits { + config "false"; + type uint64; + description "The sprom backplane block hardware change bits"; + } + leaf macB { + config "false"; + type string; + description "The sprom backplane block MAC address base"; + } + leaf macL { + config "false"; + type uint16; + description "The sprom backplane block number of MACs"; + } + leaf stackMIB { + config "false"; + type uint16; + description "The sprom backplane block stack MIB identifier"; + } + leaf oemEprise { + config "false"; + type uint16; + description "The sprom backplane block OEM enterprise identifier"; + } + leaf oemMIB { + config "false"; + type uint16; + description "The sprom backplane block OEM MIB offset"; + } + leaf maxCPwr { + config "false"; + type uint16; + description "The sprom backplane block maximum connector power"; + } + leaf sig { + config "false"; + type uint16; + description "The sprom block header signature"; + } + leaf ver { + config "false"; + type uint16; + description "The sprom block header version"; + } + leaf len { + config "false"; + type uint16; + description "The sprom block header length"; + } + leaf cksum { + config "false"; + type uint16; + description "The sprom block header checksum"; } + } - // Rel-def target from RtSrcV6Att - // Inherited From rtpfx:RuleV4 - container rtrtmapRtSrcV6Att-items { + grouping eqpt_BSlot-group { + description "Board Slot"; - // Abstract containment of rtrtmapRtSrcV6Att derived from rtpfx:Rule - list RtRtmapRtSrcV6Att-list { - config "false"; - key "tDn"; + // Identifier for the item + leaf id { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcV6Att_target-group; + type eqpt_Id { + range "1..666"; } - } - } - - grouping rtpfx_Entry-group { - leaf pfx { - type address_Ip; - } - leaf mask { - type address_Ip; + description "ID"; } - // criteria, exact match or inexact match - // Type is an MO-Defined-Type - leaf criteria { - description "Criteria"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type rtpfx_Criteria; + type naming_Descr; + description "Description of the specified attribute"; } - // If the criteria is not an exact match, use a range to - // describe the prefix list range - // Type is an MO-Defined-Type - leaf fromPfxLen { - description "Start of Prefix Length"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type eqpt_Id; + description "The physical slot identifier"; } - // Type is an MO-Defined-Type - leaf toPfxLen { - description "End of Prefix Length"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type eqpt_SlotT; + default "bslot"; + description "The slot type"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_SlotOpSt; + description "The slot operational status"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Board represents the motherboard of the Controller + container board-items { - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + uses eqpt_Board-group; + description "Board Equipment"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type rtflt_Action; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping rtpfx_RuleV6-group { + grouping eqpt_Board-group { + description "Board Equipment"; - // Inherited From pol:Obj - // Modified by Override: rtpfx:RuleV6->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Id; + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Modified by Override: rtpfx:RuleV6->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr { - length "0..90"; - } + type eqpt_Vendor; + description "Vendor"; } - // Prefix list entry definition - container ent-items { - list Entry-list { - key "order"; + // The device model + leaf model { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtpfx - uses rtpfx_Entry-group; - } + type eqpt_Model; + description "Model"; } - // Rel-def target from RtDstAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtDstAtt-items { - - // Abstract containment of rtrtmapRtDstAtt derived from rtpfx:Rule - list RtRtmapRtDstAtt-list { - config "false"; - key "tDn"; + // The device revision. + leaf rev { + config "false"; - // Added containment: Prefix=rtrtmapRtDstAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstAtt_target-group; - } + type eqpt_Revision; + description "Revision"; } - // Rel-def target from RtDstV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtDstV6Att-items { - - // Abstract containment of rtrtmapRtDstV6Att derived from rtpfx:Rule - list RtRtmapRtDstV6Att-list { - config "false"; - key "tDn"; + // The device serial number. + leaf ser { + config "false"; - // Added containment: Prefix=rtrtmapRtDstV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtDstV6Att_target-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; } + default "0"; + description "Manufacturing Time"; } - // Rel-def target from RtNhAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtNhAtt-items { - - // Abstract containment of rtrtmapRtNhAtt derived from rtpfx:Rule - list RtRtmapRtNhAtt-list { - config "false"; - key "tDn"; + leaf descr { + config "false"; - // Added containment: Prefix=rtrtmapRtNhAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhAtt_target-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - // Rel-def target from RtNhV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtNhV6Att-items { - - // Abstract containment of rtrtmapRtNhV6Att derived from rtpfx:Rule - list RtRtmapRtNhV6Att-list { - config "false"; - key "tDn"; + // Type of card + leaf type { + config "false"; - // Added containment: Prefix=rtrtmapRtNhV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtNhV6Att_target-group; - } + type eqpt_CardT; + description "The card type"; } - // Rel-def target from RtSrcAtt - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtSrcAtt-items { - - // Abstract containment of rtrtmapRtSrcAtt derived from rtpfx:Rule - list RtRtmapRtSrcAtt-list { - config "false"; - key "tDn"; + // Card status + leaf operSt { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcAtt - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcAtt_target-group; - } + type eqpt_COpSt; + description "The card operational status"; } - // Rel-def target from RtSrcV6Att - // Inherited From rtpfx:RuleV4 - // Inherited From rtpfx:RuleV6 - container rtrtmapRtSrcV6Att-items { - - // Abstract containment of rtrtmapRtSrcV6Att derived from rtpfx:Rule - list RtRtmapRtSrcV6Att-list { - config "false"; - key "tDn"; + // Software card ID + leaf swCId { + config "false"; - // Added containment: Prefix=rtrtmapRtSrcV6Att - // Acquired From Package rtmap - uses rtmap_RtRtmapRtSrcV6Att_target-group; - } + type eqpt_CardId; + description "The card software card identifier"; } - } - grouping rtregcom_Rule-group { + // Number of ports on the card + leaf numP { + config "false"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type eqpt_CardNumPorts; + description "The number of ports on the card"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + // mac address end + leaf macE { + config "false"; + + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // power state of this card + leaf pwrSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_PwrState; + description "The power state of this card"; } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtregcom:Rule->type - // Type is an MO-Defined-Type - leaf type { - description "Type"; + // The Firmware revision. + leaf fwVer { + config "false"; - // Type is an MO-Defined-Type - type rtcom_ComT; + type eqpt_Revision; + description "The card firmware revision"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - description "Mode"; + // The Software revision. + leaf swVer { + config "false"; - // Type is an MO-Defined-Type - type rtcom_Mode; + type eqpt_Revision; + description "The card software revision"; } - // Regular community list entry - container ent-items { - list Entry-list { - key "order"; + // Module Part number + leaf partNumber { + config "false"; - // Added containment: Prefix=ent - // Acquired From Package rtregcom - uses rtregcom_Entry-group; - } + type eqpt_PartNum; + description "The card part number"; } - // Rel-def target from RegCommAtt - // Inherited From rtregcom:Rule - container rtRegCommAtt-items { + // Module VID + leaf vdrId { + config "false"; - // Added containment as a singleton: Prefix=rtRegCommAtt - // Acquired From Package rtmap - uses rtmap_RtRegCommAtt_target-group; + type eqpt_ModVid; + description "The card vdrId"; } - } - - grouping rtregcom_Entry-group { - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // module actual draw power + leaf powerActualDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_Watts; + description "It is the power value that module actually draw"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // module allocated power + leaf powerAllocated { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { - description "Order"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; } + description "The equipment sensor information"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { - description "Action"; + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type rtflt_Action; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; } - leaf regex { - type string { + container cpu-items { + list CPU-list { + config "false"; + key "id"; + + uses eqpt_CPU-group; + description "CPU list"; } + description "CPU"; } - // Item in the community list - container item-items { - list Item-list { - key "community"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Added containment: Prefix=item - // Acquired From Package rtregcom - uses rtregcom_Item-group; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; } + description "The dual in-line memory module(DIMM) information"; } - } - grouping srcintf_Entity-group { - container dns-items { - list DnsSrcIf-list { - key "vrf"; + // Flash memory unit + container flash-items { - // Added containment: Prefix=dns - // Acquired From Package srcintf - uses srcintf_DnsSrcIf-group; - } + uses eqpt_Flash-group; + description "The flash memory information"; } - container tftp-items { - list Tftp-list { - key "vrf"; - // Added containment: Prefix=tftp - // Acquired From Package srcintf - uses srcintf_Tftp-group; - } + // OBFL (OnBoard Failure Log) information + container obfl-items { + + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } } - grouping srcintf_DnsSrcIf-group { + grouping eqpt_NSlot-group { + description "Nic Slot"; - // Source interface - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:DnsSrcIf->srcIf - // Type is an MO-Defined-Type - leaf srcIf { - description "DNS Source Interface"; + // Identifier for the item + leaf id { + config "false"; + + type eqpt_Id { + range "1..666"; + } + description "ID"; + } + + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // vrf name - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:DnsSrcIf->vrf - // Type is an MO-Defined-Type - leaf vrf { - description "DNS Source VRF"; + // Physical Slot ID + leaf physId { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_Id; + description "The physical slot identifier"; } - } - - grouping srcintf_Tftp-group { - // Source interface - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:Tftp->srcIf - // Type is an MO-Defined-Type - leaf srcIf { - description "TFTP Source Interface"; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_SlotT; + default "nslot"; + description "The slot type"; } - // vrf name - // Inherited From srcintf:SrcIf - // Modified by Override: srcintf:Tftp->vrf - // Type is an MO-Defined-Type - leaf vrf { - description "TFTP Source VRF"; + // slot status: is it empty or inserted + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_SlotOpSt; + description "The slot operational status"; } - } - - grouping swpkgs_Install-group { - // Input Request from the user - container rpmaction-items { + // location of the slot in the chassis (front/back) + leaf loc { + config "false"; - // Added containment as a singleton: Prefix=rpmaction - // Acquired From Package swpkgs - uses swpkgs_RpmActionReq-group; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Information about the packages present in the system - container rpminfo-items { - list RpmInfo-list { + // Nic represents the NIC Card + container nic-items { + list Nic-list { config "false"; - key "name"; + key "id"; - // Added containment: Prefix=rpminfo - // Acquired From Package swpkgs - uses swpkgs_RpmInfo-group; + uses eqpt_Nic-group; + description "Nic list"; } + description "Nic"; } - } - grouping swpkgs_RpmActionReq-group { - - // To Add/Activate/Deactivate/Commit/Remove a RPM package - // Type is an MO-Defined-Type - leaf pkgAction { - description "Package action on RPM package"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type swpkgs_PackageAction; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } + } - // URL of the package - // Type is an MO-Defined-Type - leaf url { - description "URL of the package"; + grouping eqpt_Nic-group { + description "Nic"; - // Type is an MO-Defined-Type - type reference_URI; - } - leaf lastActionStatus { + // Identifier for the item + leaf id { config "false"; - type string; + + type eqpt_Id; + description "ID"; } - } - grouping swpkgs_RpmInfo-group { - leaf name { + // The vendor manufacturing this device. + leaf vendor { config "false"; - type string; + + type eqpt_Vendor; + description "Vendor"; } - // Operational state of the package - // Type is an MO-Defined-Type - leaf operSt { + // The device model + leaf model { config "false"; - description "Operational status"; - // Type is an MO-Defined-Type - type swpkgs_OperState; + type eqpt_Model; + description "Model"; } - // Last Package action - // Type is an MO-Defined-Type - leaf lastAction { + // The device revision. + leaf rev { config "false"; - description "Last action on the package"; - // Type is an MO-Defined-Type - type swpkgs_PackageAction; + type eqpt_Revision; + description "Revision"; } - // Last Action Result on the package - // Type is an MO-Defined-Type - leaf lastActionResult { + // The device serial number. + leaf ser { config "false"; - description "Result of last action"; - // Type is an MO-Defined-Type - type swpkgs_PackageActionResult; + type eqpt_Serial; + description "Serial Number"; } - leaf lastActionFailedReason { + leaf mfgTm { config "false"; - type string; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - } - - grouping sysmgr_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + leaf descr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Type of card + leaf type { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_CardT; + description "The card type"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Card status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_COpSt; + description "The card operational status"; } - // System state - container sys-items { + // Software card ID + leaf swCId { + config "false"; - // Added containment as a singleton: Prefix=sys - // Acquired From Package sysmgr - uses sysmgr_SysSt-group; + type eqpt_CardId; + description "The card software card identifier"; } - // Holds sysmgr control plane entity information - container sysCfg-items { + // Number of ports on the card + leaf numP { + config "false"; - // Added containment as a singleton: Prefix=sysCfg - // Acquired From Package sysmgr - uses sysmgr_SysCfgSt-group; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // Holder for cores policy - container core-items { - list Cores-list { - config "false"; - key "dest"; + // mac address end + leaf macE { + config "false"; - // Added containment: Prefix=core - // Acquired From Package sysmgrp - uses sysmgrp_Cores-group; + type eqpt_MacAddr; + description "The card MAC address end"; + } + leaf upTs { + config "false"; + type union { + type string; + type uint64; } + description "The timestamp when card was detected"; } - } - - grouping sysmgr_SysSt-group { - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // power state of this card + leaf pwrSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_PwrState; + description "The power state of this card"; } - // Sup state - container sup-items { - list SupSt-list { - config "false"; - key "type"; + // The Firmware revision. + leaf fwVer { + config "false"; - // Added containment: Prefix=sup - // Acquired From Package sysmgr - uses sysmgr_SupSt-group; - } + type eqpt_Revision; + description "The card firmware revision"; } - // Firmware state - container image-items { - list FwSt-list { - config "false"; - key "type"; + // The Software revision. + leaf swVer { + config "false"; - // Added containment: Prefix=image - // Acquired From Package sysmgr - uses sysmgr_FwSt-group; - } + type eqpt_Revision; + description "The card software revision"; } - } - - grouping sysmgr_SupSt-group { - // Local/Remote - // Type is an MO-Defined-Type - leaf type { + // Module Part number + leaf partNumber { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type sysmgr_SupT; + type eqpt_PartNum; + description "The card part number"; } - // Oper state - // Type is an MO-Defined-Type - leaf operSt { + // Module VID + leaf vdrId { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type sysmgr_SupSt; + type eqpt_ModVid; + description "The card vdrId"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { + // module actual draw power + leaf powerActualDraw { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256; + type eqpt_Watts; + description "It is the power value that module actually draw"; } - } - grouping sysmgr_FwSt-group { - - // Type of the firmware - // Type is an MO-Defined-Type - leaf type { + // module allocated power + leaf powerAllocated { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type sysmgr_FwT; + type eqpt_Watts; + description "It is the power value that power supply allocated to the module"; } - // The firmware mode in which we are running, either - // it is recovery or regular mode - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + // External Ext Port for Controller + container eaport-items { + list ExtAP-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_FwMode; + uses eqpt_ExtAP-group; + description "ExtAP list"; + } + description "ExtAP"; } - // Inherited From nw:CpSt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Sensor information + container sensor-items { + list Sensor-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type naming_Name256; + uses eqpt_Sensor-group; + description "The equipment sensor information list"; + } + description "The equipment sensor information"; } - } - grouping sysmgr_SysCfgSt-group { + // ASIC information container + container asic-items { + list Asic-list { + config "false"; + key "id"; - // configuration mode - // Type is an MO-Defined-Type - leaf cfgMode { - config "false"; - description "Configuration Mode"; + uses eqpt_Asic-group; + description "The Asic information list"; + } + description "The Asic information"; + } + container cpu-items { + list CPU-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_CfgMode; + uses eqpt_CPU-group; + description "CPU list"; + } + description "CPU"; } - // operational data mode - // Type is an MO-Defined-Type - leaf operDataMode { - config "false"; - description "Operational Data Mode"; + // Dimm memory unit + container dimm-items { + list Dimm-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type sysmgr_OperDataMode; + uses eqpt_Dimm-group; + description "The dual in-line memory module(DIMM) information list"; + } + description "The dual in-line memory module(DIMM) information"; } - } - grouping sysmgrp_Cores-group { - leaf dest { - config "false"; - type string; + // Flash memory unit + container flash-items { + + uses eqpt_Flash-group; + description "The flash memory information"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // OBFL (OnBoard Failure Log) information + container obfl-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses eqpt_Obfl-group; + description "Onboard Failure Log"; } + } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + grouping eqpt_ExtAP-group { + description "ExtAP"; + + // port status + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_OpSt; + description "Operational Status"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Identifier for the item + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type eqpt_Id { + range "1..666"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - } - grouping sysmgr_ShowVersion-group { - leaf copyRight { - config "false"; - type string; - } - leaf biosVersion { - config "false"; - type string; - } - leaf nxosVersion { - config "false"; - type string; - } - leaf biosCompileTime { - config "false"; - type string; - } - leaf nxosImageFile { - config "false"; - type string; - } - leaf nxosCompileTime { - config "false"; - type string; - } - leaf bootflashSize { - config "false"; - type uint32; - } - leaf kernelUptime { - config "false"; - type string; - } - leaf lastResetTime { - config "false"; - type string; - } - leaf lastResetReason { - config "false"; - type string; - } - leaf lastResetSysVersion { - config "false"; - type string; - } - leaf lastResetService { - config "false"; - type string; - } - leaf plugin { - config "false"; - type string; - } - leaf activePackage { + // Type of port + leaf type { config "false"; - type string; + + type eqpt_PortT; + description "The port type"; } } - grouping tcpudp_Entity-group { + grouping eqpt_Storage-group { + description "Storage Equipment"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf fileSystem { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type comp_DelimitedString; + description "File System"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf blocks { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_Capacity; + description "Blocks"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + leaf used { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type eqpt_Capacity; + description "Capacity Used"; } - // This objects hold per tcpudp instance information. There is - // only one instance of tcpudp running in the system today - container inst-items { + leaf available { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package tcpudp - uses tcpudp_Inst-group; + type eqpt_Capacity; + description "Capacity Available"; + } + leaf capUtilized { + config "false"; + type uint8; + description "Capacity Utilized"; } - } - - grouping tcpudp_Inst-group { - // Set time to wait on new TCP connections - // Type is an MO-Defined-Type - leaf synWaitTime { - description "Set time to wait on new TCP connections"; + leaf mount { + config "false"; - // Type is an MO-Defined-Type - type tcpudp_SynwaitTime; + type comp_DelimitedString; + description "Mounted On"; } - // Enable path-MTU discovery on TCP - // Type is an MO-Defined-Type - leaf pathMtuDiscovery { - description "Enable path-MTU discovery on TCP"; + // port status + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type eqpt_OpSt; + description "Operational Status"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type naming_Name; + description "Name"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping eqpt_ExtCh-group { + description "FEX"; - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // State of the extended chassis + leaf extChSt { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_ExtChSt; + description "State"; } - } - grouping terminal_Terminal-group { - - // Line MO is the MO inside which type of line either vty or console - // would be organize - container ln-items { + // Part number of the extended chassis + leaf partNum { + config "false"; - // Added containment as a singleton: Prefix=ln - // Acquired From Package terminal - uses terminal_Line-group; + type eqpt_PartNum; + description "TBD"; } - } - grouping terminal_Line-group { - - // Console MO is to consolidate the console specific MO and its - // properties which is propretary for the vsh session which is - // spawned via console port - container cons-items { + // MAC address of the extended chassis + leaf macAddr { + config "false"; - // Added containment as a singleton: Prefix=cons - // Acquired From Package terminal - uses terminal_Console-group; + type eqpt_MacAddr; + description "MAC Address"; } - // VTY MO is to consolidate the VTY specific MO and its - // properties which is propretary for the vsh session which is - // spawned via mgmt/telnet ip to box - container vty-items { + // Number of macs supported + leaf numMacs { + config "false"; - // Added containment as a singleton: Prefix=vty - // Acquired From Package terminal - uses terminal_Vty-group; + type eqpt_ExtChNumMacs; + description "MACs Supported"; } - } - - grouping terminal_Console-group { - // Organizes the exec timeout specific properties - container execTmeout-items { + // Number of uplink ports supported + leaf numUplinkP { + config "false"; - // Added containment as a singleton: Prefix=execTmeout - // Acquired From Package terminal - uses terminal_ExecTimeout-group; + type eqpt_ExtChNumUplinkP; + description "Number of Uplink Ports"; } - // Organizes the console terminal width specific properties - container wdth-items { + // The vendor manufacturing this device. + leaf vendor { + config "false"; - // Added containment as a singleton: Prefix=wdth - // Acquired From Package terminal - uses terminal_Width-group; + type eqpt_Vendor; + description "Vendor"; } - // Organizes the console terminal length specific properties - container lgth-items { + // The device model + leaf model { + config "false"; - // Added containment as a singleton: Prefix=lgth - // Acquired From Package terminal - uses terminal_Length-group; + type eqpt_Model; + description "Model"; } - // Organizes the console terminal speed specific properties - container speed-items { + // The device revision. + leaf rev { + config "false"; - // Added containment as a singleton: Prefix=speed - // Acquired From Package terminal - uses terminal_Speed-group; + type eqpt_Revision; + description "Revision"; } - // Organizes the databits number properties - container databits-items { + // The device serial number. + leaf ser { + config "false"; - // Added containment as a singleton: Prefix=databits - // Acquired From Package terminal - uses terminal_DataBits-group; + type eqpt_Serial; + description "Serial Number"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Organizes the async line stopbits properties - container stopbits-items { + // Identifier for the item + leaf id { + config "false"; - // Added containment as a singleton: Prefix=stopbits - // Acquired From Package terminal - uses terminal_StopBits-group; + type eqpt_Id { + range "101..199"; + } + description "ID"; } - // Organizes the terminal parity properties - container parity-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=parity - // Acquired From Package terminal - uses terminal_Parity-group; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping terminal_ExecTimeout-group { - // Inherited From terminal:Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Information about extended chassis firmware + container running-items { - // Type is an MO-Defined-Type - type terminal_TimeoutT; + uses firmware_ExtChRunning-group; + description "Extended Chassis Running Status"; } - } - grouping terminal_Width-group { - - // Type is an MO-Defined-Type - leaf termwidth { - description "Configure width of the display terminal"; + // Locator LED on extended chassis components + container locled-items { + list ExtChLocLed-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type terminal_TermSize { - range "51..511"; + uses eqpt_ExtChLocLed-group; + description "Extended Chassis Locator LED list"; } + description "Extended Chassis Locator LED"; } - } - - grouping terminal_Length-group { - // Type is an MO-Defined-Type - leaf termlength { - description "Configure number of lines to display on terminal"; + // Extended chassis card slot + container extchslot-items { + list ExtChCardSlot-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type terminal_TermSize { - range "0..511"; + uses eqpt_ExtChCardSlot-group; + description "FEX Slot list"; } + description "FEX Slot"; } - } - grouping terminal_Speed-group { - leaf speed { - type uint32 { - range "9600..115200"; - } - default "115200"; - } - } + // power supply slot + container psuslot-items { + list PsuSlot-list { + config "false"; + key "id"; - grouping terminal_DataBits-group { - leaf dataBits { - type uint32 { - range "5..8"; + uses eqpt_PsuSlot-group; + description "The power supply slot information list"; } - default "8"; + description "The power supply slot information"; } - } - grouping terminal_StopBits-group { - leaf stopBits { - type uint32 { - range "1"; + // fan tray slot + container ftslot-items { + list FtSlot-list { + config "false"; + key "id"; + + uses eqpt_FtSlot-group; + description "The fan tray slot information list"; } - default "1"; + description "The fan tray slot information"; } - } - grouping terminal_Parity-group { + // Sprom Backplane Unit block + container spbp-items { - // Type is an MO-Defined-Type - leaf parity { - description "databits numbers"; + uses eqpt_SpromBP-group; + description "The backplane sprom information"; + } - // Type is an MO-Defined-Type - type terminal_TermParity; + // Sprom Supervisor + container spsup-items { + + uses eqpt_SpromSup-group; + description "The supervisor sprom information"; } } - grouping terminal_Vty-group { + grouping firmware_ExtChRunning-group { + description "Extended Chassis Running Status"; - // Organizes the exec timeout specific properties - container execTmeout-items { + // Loader version + leaf loaderVer { + config "false"; - // Added containment as a singleton: Prefix=execTmeout - // Acquired From Package terminal - uses terminal_ExecTimeout-group; + type cap_Version; + description "A property that indicates Loader Version"; } - // Organizes the VTY session's absolute timeout specific properties - container absTmeout-items { + // Running firmware version. + leaf version { + config "false"; - // Added containment as a singleton: Prefix=absTmeout - // Acquired From Package terminal - uses terminal_AbsTimeout-group; + type cap_Version; + description "Version"; } - - // Organizes the VTY session's limit specific properties - container ssLmt-items { - - // Added containment as a singleton: Prefix=ssLmt - // Acquired From Package terminal - uses terminal_SesLmt-group; + leaf internalLabel { + config "false"; + type string; + description "Internal Label"; } - // Organizes the VTY session's logout warning specific properties - container lgoutWarning-items { + // Running firmware type. + leaf type { + config "false"; - // Added containment as a singleton: Prefix=lgoutWarning - // Acquired From Package terminal - uses terminal_LogoutWarning-group; + type firmware_Type; + description "Type"; } - } - - grouping terminal_AbsTimeout-group { - // Inherited From terminal:Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Running firmware mode. + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type terminal_TimeoutT; + type firmware_RunningMode; + description "Mode"; + } + leaf ts { + config "false"; + type union { + type string; + type uint64; + } + description "Timestamp"; } - } - - grouping terminal_SesLmt-group { - // Type is an MO-Defined-Type - leaf sesLmt { - description "Configure maximum number of concurrent vsh sessions allowed"; + leaf descr { + config "false"; - // Type is an MO-Defined-Type - type terminal_Limit { - range "1..64"; - } + type naming_Descr; + description "Description of the specified attribute"; } } - grouping terminal_LogoutWarning-group { + grouping eqpt_ExtChLocLed-group { + description "Extended Chassis Locator LED"; - // Type is an MO-Defined-Type - leaf lgtWarn { - description "Configure logout warning time"; + // Identifier for the item + leaf id { + config "false"; - // Type is an MO-Defined-Type - type terminal_Limit { - range "0..60"; - } + type eqpt_Id; + description "ID"; } - } - grouping terminal_TerminalLog-group { - leaf logShowCommand { - type boolean; - } - } + // The device model + leaf model { + config "false"; - grouping test_CRule-group { + type eqpt_Model; + description "Model"; + } - // Prof. Name - // Type is an MO-Defined-Type - leaf peChunkName { + leaf descr { config "false"; - description "Secondary Chunk Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Descr; + description "Description of the specified attribute"; } - // Type is an MO-Defined-Type - leaf testclientChunkName { + // Color status of an LED + leaf color { config "false"; - description "Secondary Chunk Name"; - // Type is an MO-Defined-Type - type naming_Name; + type eqpt_Color; + description "The LED Color"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Operational status of an LED + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type eqpt_LedOpSt; + description "The LED operational Status"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + // Admin status - Used to locate + leaf adminSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; + type eqpt_AdSt; + description "The locator LED admin status"; } + } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + grouping eqpt_ExtChCardSlot-group { + description "FEX Slot"; + + // Identifier for the item + leaf id { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; + type eqpt_Id { + range "1"; } + description "ID"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { + // Physical Slot ID + leaf physId { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type eqpt_Id; + description "The physical slot identifier"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { + // type of the slot + leaf type { config "false"; - description "Frequency"; - // Type is an MO-Defined-Type - type test_Freq; + type eqpt_SlotT; + default "extchslot"; + description "The slot type"; } - } - grouping test_CRslt-group { - - // Trigger for this result - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf trig { + // slot status: is it empty or inserted + leaf operSt { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type eqpt_SlotOpSt; + description "The slot operational status"; } - // Test operational status - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf operSt { + // location of the slot in the chassis (front/back) + leaf loc { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type eqpt_SlotLoc; + description "The location of the slot in the chassis"; } - // Test status qualifier, deprecate this XXX - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "Operational State Qualifier"; + // Module on extension chassis + container extchc-items { - // Type is an MO-Defined-Type - type test_OperStQual; - } - leaf ts { - config "false"; - type string; + uses eqpt_ExtChCard-group; + description "Extended Chassis Module"; } - // Prof. Name - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + container rtoosSlot-items { - // Type is an MO-Defined-Type - type naming_Name; + uses fabric_RtOosSlot_target-group; + description "Out of Service Slot"; } } - grouping tunnel_If-group { - leaf src { + grouping eqpt_ExtChCard-group { + description "Extended Chassis Module"; + + // Module serial number + leaf modSerial { config "false"; - type address_Ip; + + type eqpt_Serial; + description "Serial Number"; } - leaf dest { + + // Module vendor + leaf modVendor { config "false"; - type address_Ip; + + type eqpt_Vendor; + description "Vendor"; } - // Tunnel type - // Type is an MO-Defined-Type - leaf tType { + // Module model + leaf modModel { config "false"; - description "Tunnel Type"; - // Type is an MO-Defined-Type - type tunnel_TunnelQual; + type eqpt_Model; + description "Model"; } - // Tunnel VRF name - // Type is an MO-Defined-Type - leaf vrfName { + // Module Part number + leaf partNum { config "false"; - description "VRF"; - // Type is an MO-Defined-Type - type l3_VrfName; + type eqpt_PartNum; + description "Module Part Number"; } - // Tunnel MTU - // Type is an MO-Defined-Type - leaf cfgdMtu { + // The vendor manufacturing this device. + leaf vendor { config "false"; - description "MTU"; - // Type is an MO-Defined-Type - type tunnel_ConfMtu; + type eqpt_Vendor; + description "Vendor"; } - // Tunnel keep-alive period - // Type is an MO-Defined-Type - leaf keepAlvIntvl { + // The device model + leaf model { config "false"; - description "Keep Alive Interval"; - // Type is an MO-Defined-Type - type tunnel_KeepAlvIntvl; + type eqpt_Model; + description "Model"; } - // Tunnel keep-alive retries - // Type is an MO-Defined-Type - leaf keepAlvRetries { + // The device revision. + leaf rev { config "false"; - description "Keep Alive Retries"; - // Type is an MO-Defined-Type - type tunnel_KeepAlvRetries; + type eqpt_Revision; + description "Revision"; } - // Tunnel administrative state - // Type is an MO-Defined-Type - leaf adminSt { + // The device serial number. + leaf ser { config "false"; - description "Administrative State"; - // Type is an MO-Defined-Type - type tunnel_AdminSt; + type eqpt_Serial; + description "Serial Number"; } - // Tunnel type - // Type is an MO-Defined-Type - leaf type { + // Identifier for the item + leaf id { config "false"; - description "Endpoint Type"; - // Type is an MO-Defined-Type - type tunnel_EpT; + type eqpt_Id; + description "ID"; + } + leaf mfgTm { + config "false"; + type union { + type string; + type uint64; + } + default "0"; + description "Manufacturing Time"; } - // Tunnel layer: L2 or L3 - // Type is an MO-Defined-Type - leaf tLayer { + leaf descr { config "false"; - description "Layer"; - // Type is an MO-Defined-Type - type tunnel_LayerT; + type naming_Descr; + description "Description of the specified attribute"; } - leaf mac { + + // Type of card + leaf type { config "false"; - type address_Mac; + + type eqpt_CardT; + default "extchcard"; + description "Type"; } - // Tunnel operational state - // Type is an MO-Defined-Type + // Card status leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type tunnel_OperSt; + type eqpt_COpSt; + description "The card operational status"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Redundancy state + leaf rdSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_RdSt; + description "The card redundancy state"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Software card ID + leaf swCId { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type eqpt_CardId; + description "The card software card identifier"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { + // Number of ports on the card + leaf numP { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type eqpt_CardNumPorts; + description "The number of ports on the card"; } - // @@@Relationship to policy providing physical configuration of - // the ports @@@rel-def - // name="IfConf" - // type="named" - // from="fv:RsCcepConn" - // to="fabric:HIfPol" - // cardinality="1-to-1" - // owner="management" - // mod="explicit" - // > - // name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // console policy + container consolep-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses eqpt_ConsoleP-group; + description "Console Policy"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Global Ejector policy under eqpt entity + container ejector-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses eqpt_Ejector-group; + description "Ejector Policy"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Represents an fan direction mismatch enabler + container fanproperties-items { - // Type is an MO-Defined-Type - type nw_OperErrQual; + uses eqpt_FanProperties-group; + description "The fan properties enablers like fan direction mismatch and fan presence simulation enablers"; } - // This objects hold per vtp instance information. There is only - // one instance of vtp running in the system today - container inst-items { + // Represents an inventoried fan zone + container fanzone-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package vtp - uses vtp_Inst-group; + uses eqpt_FanZone-group; + description "The fan zone information"; } - } - grouping vtp_Inst-group { - leaf domain { - type string; - } - leaf version { - type uint32 { - range "1..2"; - } - default "1"; - } - leaf password { - type string; - } - leaf filePath { - type string; - default "bootflash:/vlan.dat"; + // Power supply group policy + container psgp-items { + + uses eqpt_PsgP-group; + description "The power supply group policy information"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Policy container for slot + container slot-items { + list SlotP-list { + config "false"; + key "type id"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses eqpt_SlotP-group; + description "The slot policy information list"; } + description "The slot policy information"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping eqpt_ConsoleP-group { + description "Console Policy"; - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // num of databits per character + leaf dataBits { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type eqpt_DataBits; + description "Data Bits"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + // timeout for an inactive session in minutes + leaf inactiveIntvl { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type - type nw_OperErrQual; + type eqpt_InactiveIntvl; + description "Inactive Interval"; } - } - - grouping nbm_NbmTop-group { - container conf-items { + // Terminal parity none, even or odd + leaf parity { + config "false"; - // Added containment as a singleton: Prefix=conf - // Acquired From Package nbm - uses nbm_ConfTables-group; + type eqpt_Parity; + description "Parity"; } - container show-items { + // transmit and receive speed on console port + leaf baudRate { + config "false"; - // Added containment as a singleton: Prefix=show - // Acquired From Package nbm - uses nbm_ShowTables-group; + type eqpt_BaudRate; + description "Baud Rate"; } - } - - grouping nbm_ConfTables-group { - container grouprangelist-items { + // Async line stopbits + leaf stopBits { + config "false"; - // Added containment as a singleton: Prefix=grouprangelist - // Acquired From Package nbm - uses nbm_GroupRangeList-group; + type eqpt_StopBits; + description "Stop Bits"; } - container interfaces-items { + leaf name { + config "false"; - // Added containment as a singleton: Prefix=interfaces - // Acquired From Package nbm - uses nbm_Interfaces-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - container global-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalConf-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Top MO for branching everything under - container flowpolicytable-items { - - // Added containment as a singleton: Prefix=flowpolicytable - // Acquired From Package nbm - uses nbm_FlowPolicyTable-group; - } + grouping eqpt_Ejector-group { + description "Ejector Policy"; - // HOST POLICIES - container hostpolicytable-items { + // Auto shutdown on ejector open + leaf autoShutdown { - // Added containment as a singleton: Prefix=hostpolicytable - // Acquired From Package nbm - uses nbm_HostPolicyTable-group; + type eqpt_AutoShutdown; + description "Auto Shutdown on Ejector Open"; } - } - grouping nbm_GroupRangeList-group { - container dom-items { - list GroupRangeDom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GroupRangeDom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_GroupRangeDom-group { + grouping eqpt_FanProperties-group { + description "The fan properties enablers like fan direction mismatch and fan presence simulation enablers"; + leaf directionMismatch { + type boolean; + description "The fan direction mismatch enabler"; + } + leaf fanPresence { + type boolean; + description "Flag to simulate fan presence"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - container g-items { - list GroupRange-list { - key "group groupMask"; - - // Added containment: Prefix=g - // Acquired From Package nbm - uses nbm_GroupRange-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_GroupRange-group { - - // Type is an MO-Defined-Type - leaf group { - description "ASM Range Multicast Group."; - - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; - } - - // Type is an MO-Defined-Type - leaf groupMask { - description "ASM Range Group Mask as integer."; - - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + grouping eqpt_FanZone-group { + description "The fan zone information"; + leaf zoneSpeed { + type uint32; + description "The fan zone speed"; } - // Type is an MO-Defined-Type - leaf rangeType { - description "ASM Range Type - SSM or ASM."; + // Fan air filter + leaf airFilter { - // Type is an MO-Defined-Type - type nbm_nbmGroupRangeType; + type eqpt_AirFilter; + description "The fan air filter"; } - } - grouping nbm_Interfaces-group { - container dom-items { - list InterfacesDom-list { - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_InterfacesDom-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } } - grouping nbm_InterfacesDom-group { + grouping eqpt_PsgP-group { + description "The power supply group policy information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Admin redundancy mode + leaf adminRdnM { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_PsRdnM; + description "The power supply group admin redundancy mode"; } - container if-items { - list If-list { - key "if"; - // Added containment: Prefix=if - // Acquired From Package nbm - uses nbm_If-group; - } - } - } + // The power supply redundancy operational mode + leaf operRdnM { + config "false"; - grouping nbm_If-group { + type eqpt_PsRdnM; + description "The power supply group operational redundancy mode"; + } - // Type is an MO-Defined-Type - leaf if { - description "Interface if-index."; + // total power capacity in watts. It depends on the + // redundancy mode and is equal to one of cumCap, + // psRdCap, gridRdCap, FullRdCap + leaf tc { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmIf; + type eqpt_Watts; + description "The power supply group total capacity"; } - // Type is an MO-Defined-Type - leaf role { - description "Link Role."; + // Reserved power in watts + leaf rsdPwr { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmLinkRole; + type eqpt_Watts; + description "The power supply group reserved power"; } - } - grouping nbm_GlobalConf-group { - container dom-items { - list GlobalConfDom-list { - key "name"; + // Allocated power in watts + leaf alPwr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GlobalConfDom-group; - } + type eqpt_Watts; + description "The power supply group allocated power"; } - } - - grouping nbm_GlobalConfDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Available power in watts + leaf avPwr { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Watts; + description "The power supply group available power"; + } + leaf unit { + config "false"; + type string; + description "The power supply unit"; } - container global-items { + // Available power under various redundancy modes + // Cumulative power available in non-redundant mode. + // It is obtained by summing the individual power + // provided by all present and functioning psu + leaf nRdnCap { + config "false"; - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalConfig-group; + type eqpt_Watts; + description "The power supply group non-redundant capacity"; } - } - - grouping nbm_GlobalConfig-group { - // Type is an MO-Defined-Type - leaf operMode { - description "NBM Operation mode."; + // power capacity under power supply redundancy, also called + // N+1 redundancy. It is the sum of lowest N rated psu + leaf psRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmOperationalMode; + type eqpt_Watts; + description "The power supply group N+1 redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultSenderHostPolicy { - description "Default Allow or Deny policy for Sender hosts."; + // power capacity under AC power redundancy + leaf acRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type eqpt_Watts; + description "AC Redundant Capacity"; } - // Type is an MO-Defined-Type - leaf defaultReceiverHostPolicy { - description "Default Allow or Deny policy for Receiver hosts."; + // power capacity under grid redundancy, also called input + // src redundancy. It is calculated as the minimum of grid + // A and grid B capacity. It is relevant for psu which + // can take two independent inputs. For single input psu, + // grid redundancy is calculated as half of cumulative + // capacity + leaf grdRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type eqpt_Watts; + description "The power supply group grid redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultPimHostPolicy { - description "Default Allow or Deny policy for PIM groups."; + // Power capacity under full redundancy. It is calculated + // as the minimum of ps and grid redundancy + leaf flRdnCap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; - } - leaf defaultflowBw { - type uint32; - default "0"; + type eqpt_Watts; + description "The power supply group full redundant capacity"; } - // Type is an MO-Defined-Type - leaf defaultflowBwUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + // Total Grid-A (first half of PS slots) power capability + leaf grdACap { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; - } - leaf defaultDscp { - type uint32; - default "0"; - } - leaf unicastBwPercent { - type uint8 { - range "0..100"; - } - default "0"; - } - leaf beaconAck { - type string; - default "0"; - } - leaf subscriptionId { - type uint32; - default "0"; + type eqpt_Watts; + description "The power supply Grid-A total power capacity"; } - } - grouping nbm_FlowPolicyTable-group { - container dom-items { - list FlowPolicyDom-list { - key "name"; + // Total Grid-B (second half of PS slots) power capability + leaf grdBCap { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_FlowPolicyDom-group; - } + type eqpt_Watts; + description "The power supply Grid-B total power capacity"; } - } - - grouping nbm_FlowPolicyDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Total actual input (actual draw) + leaf inputDraw { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type eqpt_Watts; + description "The power supply total power input (actual draw)"; } - // Holds NBM configuration - container name-items { - list FlowPolicy-list { - key "name"; + // Total actual output (actual draw) + leaf outputDraw { + config "false"; - // Added containment: Prefix=name - // Acquired From Package nbm - uses nbm_FlowPolicy-group; - } + type eqpt_Watts; + description "The power supply total power output (actual draw)"; + } + leaf cordsConnected { + config "false"; + type boolean; + description "It is shown if all inlet cords connected"; } - } - grouping nbm_FlowPolicy-group { leaf name { - type string; - } - leaf bw { - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type is an MO-Defined-Type - leaf bwUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + leaf descr { - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; - } - leaf dscp { - type uint32; - default "0"; + type naming_Descr; + description "Description of the specified attribute"; } - container bgn-items { - list FlowPolicyRange-list { - key "groupBegin groupEnd"; - // Added containment: Prefix=bgn - // Acquired From Package nbm - uses nbm_FlowPolicyRange-group; - } + container rspsuInstPolCons-items { + + uses eqpt_RsPsuInstPolCons_source-group; + description "The power supply group policy attachment"; } } - grouping nbm_FlowPolicyRange-group { + grouping eqpt_SlotP-group { + description "The slot policy information"; - // Type is an MO-Defined-Type - leaf groupBegin { - description "Flow Policy Group range start."; + // type of the slot + leaf type { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type eqpt_SlotT; + description "The slop policy type"; } - // Type is an MO-Defined-Type - leaf groupEnd { - description "Flow Policy Group range end."; + // logical slot id + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type eqpt_Id; + description "The slot policy logical identifier"; } - } - - grouping nbm_HostPolicyTable-group { - container dom-items { - list HostPolicyDom-list { - key "name"; - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_HostPolicyDom-group; - } - } - } + // Controls + leaf ctrl { + config "false"; - grouping nbm_HostPolicyDom-group { + type eqpt_SlotControl; + description "The slot policy controls"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - container sender-items { + leaf descr { + config "false"; - // Added containment as a singleton: Prefix=sender - // Acquired From Package nbm - uses nbm_SenderHostPolicyTable-group; + type naming_Descr; + description "Description of the specified attribute"; } + } - container receiver-items { + grouping lcm_Entity-group { + description "lcm entity"; - // Added containment as a singleton: Prefix=receiver - // Acquired From Package nbm - uses nbm_ReceiverHostPolicyTable-group; + // Hold the global configuration of system module + container sysmod-items { + + uses lcm_SysMod-group; + description "lcm system module object"; } - container pim-items { + // Container for all the ecmp template config data in the system. + container ecmptemplate-items { - // Added containment as a singleton: Prefix=pim - // Acquired From Package nbm - uses nbm_PimHostPolicyTable-group; + uses lcm_EcmpTemplateEntity-group; + description "Ecmp Template Config Entity"; } - } - grouping nbm_SenderHostPolicyTable-group { - container seq-items { - list SenderHostPolicy-list { - key "seqNum"; + // This object configs module logging level + container modloglevel-items { - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_SenderHostPolicy-group; - } + uses lcm_ModLogLevel-group; + description "Config module logging level"; } - } - grouping nbm_SenderHostPolicy-group { + // This object configs hardware profile muticast optimization + container mcastopt-items { - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + uses lcm_McastOpt-group; + description "Config hardware profile muticast optimization"; + } - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + // Container for all the port type config data in the system. + container slotcfg-items { + + uses lcm_SlotCfgEntity-group; + description "Slot Config Entity"; } - // Type is an MO-Defined-Type - leaf host { - description "Host IP Address"; + // Container for all the vxlan|mpls or acl-stats or acl-eg-ext config data in the system. + container vxlanmplsacl-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses lcm_VxlanMplsAclEntity-group; + description "vxlan|mpls or acl-stats or acl-eg-ext Config Entity"; } + } - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + grouping lcm_SysMod-group { + description "lcm system module object"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + leaf moduleFailureAction { + + type lcm_ModuleFailureAction; + description "Configure module action on failure"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + leaf moduleEmonEnhanced { - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_ModuleEmonEnhanced; + description "Configure module emon enhanced status"; } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + leaf moduleEmonEnhancedSlowTimeout { - // Type is an MO-Defined-Type - type nbm_nbmPermit; + type lcm_ModuleEmonEnhancedSlowTimeout; + description "Configure module emon enhanced slow timeout status"; } } - grouping nbm_ReceiverHostPolicyTable-group { - - // Receiver Policy - container seq-items { - list ReceiverHostPolicy-list { - key "seqNum"; + grouping lcm_EcmpTemplateEntity-group { + description "Ecmp Template Config Entity"; + container module-items { + list EcmpTemplateModule-list { + key "id"; - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_ReceiverHostPolicy-group; + uses lcm_EcmpTemplateModule-group; + description "MO to hold config for module Ecmp Template list"; } + description "MO to hold config for module Ecmp Template"; } } - grouping nbm_ReceiverHostPolicy-group { + grouping lcm_EcmpTemplateModule-group { + description "MO to hold config for module Ecmp Template"; - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + leaf id { - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + type lcm_moduleNumber; + description "Module identifier for ecmp template property"; } - // Type is an MO-Defined-Type - leaf host { - description "Host IP Address"; + leaf ecmpTemplateL3vpn { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type lcm_EcmpTemplateL3vpn; + description "ecmp template l3vpn config state for the module [no/yes]"; } + } - // Type is an MO-Defined-Type - leaf source { - description "Host IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } + grouping lcm_ModLogLevel-group { + description "Config module logging level"; - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + // logging level + leaf loggingLevel { - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + type lcm_LoggingLevel; + description "Logging Level"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + // logging type + leaf loggingType { + config "false"; - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_LoggingType; + description "Logging type"; } + } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + grouping lcm_McastOpt-group { + description "Config hardware profile muticast optimization"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + // multicast Optimization + leaf multicastOptimization { + + type lcm_MulticastOptimization; + description "enable or disable muticast optimization"; } } - grouping nbm_PimHostPolicyTable-group { - - // External Receiver Host Policy - container seq-items { - list PimHostPolicy-list { - key "seqNum"; + grouping lcm_SlotCfgEntity-group { + description "Slot Config Entity"; + container slot-items { + list SlotInst-list { + key "id"; - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_PimHostPolicy-group; + uses lcm_SlotInst-group; + description "MO to hold config for slot list"; } + description "MO to hold config for slot"; } } - grouping nbm_PimHostPolicy-group { + grouping lcm_SlotInst-group { + description "MO to hold config for slot"; - // Type is an MO-Defined-Type - leaf seqNum { - description "Unique Sequence Number for Policies"; + leaf id { - // Type is an MO-Defined-Type - type nbm_nbmHostPolicySeq; + type lcm_moduleNumber; + description "Module identifier for Slot property"; } - // Type is an MO-Defined-Type - leaf source { - description "Host IP Address"; + container portcfg-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses lcm_PortCfg-group; + description "MO to hold config for slot port type"; } + } - // Type is an MO-Defined-Type - leaf group { - description "Multicast Group"; + grouping lcm_PortCfg-group { + description "MO to hold config for slot port type"; - // Type is an MO-Defined-Type - type nbm_nbmMcastIpAddr; + leaf portRange { + + type lcm_PortRange; + description "port range to config port type"; } - // Type is an MO-Defined-Type - leaf groupMask { - description "Group Mask as integer"; + leaf portType { - // Type is an MO-Defined-Type - type nbm_nbmIpMask; + type lcm_PortType; + description "port type to config [ethernet/fc]"; } + } - // Type is an MO-Defined-Type - leaf permission { - description "Is the given policy to Allow or Deny a host"; + grouping lcm_VxlanMplsAclEntity-group { + description "vxlan|mpls or acl-stats or acl-eg-ext Config Entity"; + container module-items { + list VxlanMplsAclModule-list { + key "id"; - // Type is an MO-Defined-Type - type nbm_nbmPermit; + uses lcm_VxlanMplsAclModule-group; + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext list"; + } + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext"; } } - grouping nbm_ShowTables-group { + grouping lcm_VxlanMplsAclModule-group { + description "MO to hold config for module vxlan|mpls or acl-stats or acl-eg-ext"; - container appliedpolicies-items { + leaf id { - // Added containment as a singleton: Prefix=appliedpolicies - // Acquired From Package nbm - uses nbm_AppliedPolicyTable-group; + type lcm_ProfModAllId; + description "Module identifier for vxlan|mpls or acl-stats or acl-eg-ext property"; } - container flows-items { + leaf profVxlanMpls { - // Added containment as a singleton: Prefix=flows - // Acquired From Package nbm - uses nbm_FlowsTable-group; + type lcm_ProfVxlanMpls; + description "vxlan or mpls config status [no/vxlan/mpls] for the module"; } - container stats-items { + leaf profAclStats { - // Added containment as a singleton: Prefix=stats - // Acquired From Package nbm - uses nbm_StatsTable-group; + type lcm_ProfAclStats; + description "acl-stats config status [no/yes] for the module"; } - // OPER GLOBAL - container global-items { + leaf profAclEgExt { - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalShow-group; + type lcm_ProfAclEgExt; + description "acl-eg-ext config status [no/yes] for the module"; } + } - container endpoints-items { - - // Added containment as a singleton: Prefix=endpoints - // Acquired From Package nbm - uses nbm_EndPointsTable-group; + grouping platform_Entity-group { + description "Platform Entity"; + leaf descr { + type string; + description "Container to hold platform data of apps"; } - } - grouping nbm_AppliedPolicyTable-group { - container dom-items { - list AppliedPolicyDom-list { - key "name"; + leaf profileMode { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_AppliedPolicyDom-group; - } + type platform_HwProfile; + description "Hardware profile mode for platform entity "; } - } - - grouping nbm_AppliedPolicyDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf profileFrontPortmode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_FrontPortmode; + description "Hardware profile front portmode for platform entity "; } - // APPLIED Policy Oper MO - container host-items { + leaf profileTuple { - // Added containment as a singleton: Prefix=host - // Acquired From Package nbm - uses nbm_AppliedHostPolicy-group; + type platform_Tuple; + description "Profile tuple for platform entity"; } - } - grouping nbm_AppliedHostPolicy-group { - container seq-items { - list AppliedPolicy-list { - config "false"; - key "seqNum policyType if"; + leaf unicastSyslogThreshold { - // Added containment: Prefix=seq - // Acquired From Package nbm - uses nbm_AppliedPolicy-group; - } + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for unicast cases. The default is 90 percent of the total available shared buffer"; } - } - grouping nbm_AppliedPolicy-group { - leaf seqNum { - config "false"; - type uint64; + leaf lpmMaxLimit { + + type platform_LpmMaxLimits; + description "Maximum limit for LPM routes"; } - // Type is an MO-Defined-Type - leaf policyType { - config "false"; - description "Sender, Local Receiver, or External Receiver"; + leaf aclTapAggregation { - // Type is an MO-Defined-Type - type nbm_nbmPolicyType; + type platform_AclTapAggregation; + description "Configure tap-aggregation feature"; } - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface to which policy is applicable"; + leaf unicastMaxLimit { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ifName { - config "false"; - type string; + type platform_UnicastMaxLimit; + description "Maximum limit for unicast LPM routes"; } - // Type is an MO-Defined-Type - leaf isActive { - config "false"; - description "Applied ACTIVE or PASSIVE."; + leaf multicastMaxLimit { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + type platform_MulticastMaxLimit; + description "Maximum limit for multicast LPM routes"; } - } - grouping nbm_FlowsTable-group { - container dom-items { - list FlowsDom-list { - key "name"; + leaf multicastServiceReflectPort { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_FlowsDom-group; - } + type platform_multicastServiceReflectPort; + description "mcast service-reflect port"; } - } - grouping nbm_FlowsDom-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf multicastRpfCheckOptimization { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_AdminState; + description "mcast rpf check optimization"; } - // Holds NBM configuration - container s-items { - list NbmFlow-list { - config "false"; - key "source group"; + leaf highMulticastPriority { - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_NbmFlow-group; - } + type platform_AdminState; + description "high mcast priority"; } - } - - grouping nbm_NbmFlow-group { - // Properties - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "source IP Address"; + leaf pstatCfg { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_PstatCfg; + description "pstat enable"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group being sent"; + leaf multicastSyslogThreshold { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for multicast cases. The default is 90 percent of the total available shared buffer"; } - // Type is an MO-Defined-Type - leaf ingressIf { - config "false"; - description "ingress Interface"; + leaf IPV6alpmCarveValue { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ingressIfName { - config "false"; - type string; - } - leaf egressIfCount { - config "false"; - type uint32; - } - leaf flowPol { - config "false"; - type string; - } - leaf bwKbps { - config "false"; - type uint64; - } - leaf dscp { - config "false"; - type uint32; - } - leaf qid { - config "false"; - type uint32; + type platform_IPV6alpmCarveValues; + description "Hardware profile ipv6 alpm carve-value"; } - // Type is an MO-Defined-Type - leaf isFhr { - config "false"; - description "Signals if this switch is FHR for this flow"; + leaf ipv6LpmMaxEntries { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; - } - leaf tStamp { - config "false"; - type uint64; - } - leaf bucket { - config "false"; - type uint16; + type platform_IPv6LpmRange; + description "Maximum limit for IPv6 LPM routes"; } - // MO FOR OIFs - container oif-items { - list OifList-list { - config "false"; - key "oif"; + leaf routingMode { - // Added containment: Prefix=oif - // Acquired From Package nbm - uses nbm_OifList-group; - } + type platform_RoutingMode; + description "Routing mode"; } - } - grouping nbm_OifList-group { + leaf pcLbAlgo { - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "OIF Interface"; + type platform_PcLbAlgo; + description "Pc load-balance internal algorithm"; + } - // Type is an MO-Defined-Type - type nbm_nbmIf; + leaf pcLbRes { + + type platform_PcLbRes; + description "Pc load-balance resilient"; } - leaf oifName { - config "false"; - type string; + + leaf pcFastConv { + + type platform_PcFastConv; + description "Port-channel Fast Convergence"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver. Only LHR Need publish this"; + leaf pcScaleFanout { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_PcScaleFanout; + description "Port-channel Scale Fanout"; } - leaf oifTstamp { - config "false"; - type uint64; + leaf dot1qTunnelTransit { + type boolean; + default "false"; + description "Enable Dot1Q tunnel transit for multi-tag Ethernet frames"; } - } - grouping nbm_StatsTable-group { - container dom-items { - list StatsDom-list { - key "name"; + leaf pcMplsLbLabelIp { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_StatsDom-group; - } + type platform_PcMplsLbLabelIp; + description "Mpls load-balance label ip"; } - } - - grouping nbm_StatsDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf pcMplsLbLabelOnly { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_PcMplsLbLabelOnly; + description "Mpls load-balance label only"; } - // Holds NBM configuration - container s-items { - list StatsEntry-list { - config "false"; - key "source group"; + // valif for n3ktoronly + leaf urpfStatus { - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_StatsEntry-group; - } + type nw_AdminSt; + description "Unicast Reverse Path Forwarding Status"; } - } - - grouping nbm_StatsEntry-group { - // Properties - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "source IP Address"; + leaf unknownUnicastFlood { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type nw_AdminSt; + description "Hardware flood post-routed traffic on SVI if dest-mac->layer2-port binding unknown"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "destination IP Address"; + // valid for n9knontahoe + leaf qosMinBuffer { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf allowedPkts { - config "false"; - type uint64; + type platform_QosMinBuffer; + description "qos min-buffer qos-group"; } - leaf allowedBytes { - config "false"; - type uint64; + + leaf switchingMode { + + type platform_SwitchingMode; + description "Corresponds to the global switching mode. Default is cut-through"; } - leaf deniedPkts { - config "false"; - type uint64; + + leaf switchingFabricSpeed { + + type platform_FabricSpeed; + description "Corresponds to the switching fabric speed."; } - leaf deniedBytes { - config "false"; - type uint64; + + leaf mcastNlb { + + type platform_McastNlb; + description "Used to enable/disable hardware profile multicast nlb"; } - leaf totalPkts { - config "false"; - type uint64; + + leaf disParseErr { + + type platform_DisParseErr; + description "Used to disable/enable hardware profile disable parse-err"; } - leaf totalBytes { - config "false"; - type uint64; + + leaf mldSnooping { + + type platform_MldSnooping; + description "Used to enable/disable system mld snooping"; } - leaf tStamp { - config "false"; - type uint64; + + leaf mcastFlexStats { + + type platform_McastFlexStats; + description "Used to enable/disable hardware profile multicast flex-stats"; } - } - grouping nbm_GlobalShow-group { - container dom-items { - list GlobalShowDom-list { - key "name"; + leaf sviFlexStats { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_GlobalShowDom-group; - } + type platform_SviFlexStats; + description "Used to enable/disable hardware profile si flex-stats"; } - } - grouping nbm_GlobalShowDom-group { + leaf sviAndSiFlexStats { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type platform_SviAndSiFlexStats; + description "Used to enable/disable hardware profile sviandsi flex-stats"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf iRaclSize { + + type platform_tcamLabelSize; + description "To set the ingress RACL TCAM label size to 9 bits and the default value is 6 bits"; } - container global-items { + leaf iBdIfaclLblOpt { - // Added containment as a singleton: Prefix=global - // Acquired From Package nbm - uses nbm_GlobalOper-group; + type platform_QosLabelOpt; + description "To optimize the ingress QOS Ingress BD IFACL label size"; } - } - grouping nbm_GlobalOper-group { - leaf initBeacon { - config "false"; - type uint64; + leaf globalTxSpan { + + type platform_GlobalTxSpan; + description "Used to enable/disable hardware multicast global tx span"; } - leaf apiVer { + + leaf appliedRoutingMode { config "false"; - type uint8; - default "1"; + + type platform_RoutingMode; + description "Actual routing mode that got applied"; } - leaf adminSt { - config "false"; - type uint8; - default "1"; + leaf ingRepRoundRobin { + type boolean; + description "Round-Robin hashing of underlay-paths for VXLAN ingress-replication peers"; } - // Type is an MO-Defined-Type - leaf operMode { - config "false"; - description "NBM Operation mode."; + // valid for n3ktoronly + leaf pbrSkipSelfIp { - // Type is an MO-Defined-Type - type nbm_nbmOperationalMode; + type nw_AdminSt; + default "disabled"; + description "Configure Skipping PBR for self-ip packets"; } - } - grouping nbm_EndPointsTable-group { - container dom-items { - list EpiDom-list { - key "name"; + leaf mcastLpmMaxEntries { - // Added containment: Prefix=dom - // Acquired From Package nbm - uses nbm_EpiDom-group; - } + type platform_McastLpmMaxEntriesType; + description "Maximum limit for multicast LPM routes"; } - } - - grouping nbm_EpiDom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf systemFabricMode { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type platform_FabricMode; + description "Corresponds to the system fabric mode"; } - container h-items { - list EndPoint-list { - config "false"; - key "hostIp if"; - // Added containment: Prefix=h - // Acquired From Package nbm - uses nbm_EndPoint-group; - } - } - } + leaf switchMode { - grouping nbm_EndPoint-group { + type platform_SwitchMode; + description "Corresponds to the switch mode(N3K/N9K)"; + } - // Properties - // Type is an MO-Defined-Type - leaf hostIp { - config "false"; - description "Endpoint IP Address."; + leaf mroutingPerfMode { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_MroutingPerfMode; + description "Corresponds to enabling/disabling mrouting performance mode"; } - // Type is an MO-Defined-Type - leaf if { - config "false"; - description "Interface index where endpoint is attached."; + leaf mroutingDisableSecRouteUpd { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf ifName { - config "false"; - type string; + type platform_MroutingDisableSecRouteUpd; + description "Corresponds to enabling/disabling second route update"; } - // Type is an MO-Defined-Type - leaf role { - config "false"; - description "End Point Role. This can be Unknown when discovered via ARP. And specific role when known."; + leaf mroutingDisableL2Upd { - // Type is an MO-Defined-Type - type nbm_nbmEndpointRole; + type platform_MroutingDisableL2Upd; + description "Corresponds to enabling/disabling l2 update"; } - container arp-items { + leaf unicastTrace { - // Added containment as a singleton: Prefix=arp - // Acquired From Package nbm - uses nbm_EndPointArp-group; + type platform_UnicastTrace; + description "Used to enable/disable unicast trace"; } - container g-items { - list EndPointSender-list { - config "false"; - key "group"; - - // Added containment: Prefix=g - // Acquired From Package nbm - uses nbm_EndPointSender-group; + leaf hwLouResThreshold { + type uint16 { + range "1..50"; } + default "5"; + description "Hardware Lou Resource Threshold value."; + } + leaf accessListMatchInnerHeader { + type enumeration { + enum disable { + value 0; + } + enum enable { + value 1; + } + } + default "disable"; + description "Used to enable/disable hardware access-list match inner-header"; } - container s-items { - list EndPointReceiver-list { - config "false"; - key "source group"; - // Added containment: Prefix=s - // Acquired From Package nbm - uses nbm_EndPointReceiver-group; + leaf mplsAdjStatsMode { + + type platform_MplsStatsType; + description "Corresponds to MPLS Adjacency stats type"; + } + + leaf mplsCfgEcmpMode { + + type platform_MplsEcmpMode; + description "Used to enable/disable extended-ecmp for MPLS on RX-series Linecards N9K"; + } + leaf wrrUnicastBw { + type uint8 { + range "0..100"; } + default "50"; + description "WRR Unicast Bandwidth Value"; } - } - - grouping nbm_EndPointArp-group { - // Type is an MO-Defined-Type - leaf mac { - config "false"; - description "MAC Address of the endpoint."; + leaf tcamSyslogThreshold { - // Type is an MO-Defined-Type - type nbm_nbmMacAddr; - } - leaf tStamp { - config "false"; - type uint64; + type platform_Percentage; + description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for TCAM. The default is 90 percent of the total available shared buffer"; } - } - grouping nbm_EndPointSender-group { + leaf mcastRaclBridge { - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group being sent by this endpoint."; + type platform_AdminState; + description "Apply permit/drop for mcast bridged pkt"; + } - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf serviceTemplateName { + + type platform_TcamTemplateName; + description "Name of the user-defined service template"; } - // Type is an MO-Defined-Type - leaf isExt { - config "false"; - description "Is this an External Sender."; + // Port-channel Load-Balance Related Properties + container pclb-items { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + uses platform_LoadBalance-group; + description "Port-Channel Load-Balance"; } - // Type is an MO-Defined-Type - leaf faultReason { - config "false"; - description "Signals reason of fault if any."; + // Hardware Profile Related Properties + container profile-items { - // Type is an MO-Defined-Type - type nbm_nbmFaultType; + uses platform_Profile-group; + description "Platform Profile"; } - leaf tStamp { - config "false"; - type uint64; + + // congestion-control properties [default value = (0xFFFF * 208){no of cells * no of bytes for each cell}] + container globalrandomdetect-items { + + uses platform_GlobalRandomDetect-group; + description "Congestion-control Random-detect"; } - } - grouping nbm_EndPointReceiver-group { + // TCAM resource utilization on the module + container mod-items { + list TcamStatsModule-list { + config "false"; + key "module"; - // Type is an MO-Defined-Type - leaf source { - config "false"; - description "Source requested by this receiver. 0.0.0.0 in case of *."; + uses platform_TcamStatsModule-group; + description "represents module for which TCAM resource utilization is required list"; + } + description "represents module for which TCAM resource utilization is required"; + } + container nve-items { + list NVE-list { + key "id"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_NVE-group; + description "Nve Configs list"; + } + description "Nve Configs"; } - // Type is an MO-Defined-Type - leaf group { - config "false"; - description "Group requested by this receiver."; + container forwardingmode-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_ForwardingMode-group; + description "Forwarding Mode Property"; } - // Type is an MO-Defined-Type - leaf isExt { - config "false"; - description "Is this an External Receiver."; + // ECMP related properties + container ecmp-items { - // Type is an MO-Defined-Type - type nbm_nbmNoYes; + uses platform_Ecmp-group; + description "represents hardware related ecmp properties"; } - // Type is an MO-Defined-Type - leaf faultReason { - config "false"; - description "Signals reason of fault if any."; + // Hardware Qos Related Properties + container qos-items { - // Type is an MO-Defined-Type - type nbm_nbmFaultType; + uses platform_Qos-group; + description "Hardware qos type"; } - // Type is an MO-Defined-Type - leaf owner { - config "false"; - description "IGMP or Static receiver."; + // PFC Wd Related Properties + container priorflowctrlwd-items { - // Type is an MO-Defined-Type - type nbm_nbmRcvOwner; + uses platform_PriorFlowCtrlWd-group; + description "PFC WD config"; } - leaf tStamp { - config "false"; - type uint64; - } - } - - grouping nbm_NbmCcTable-group { - // Holds NBM CC - container eif-items { - list NbmCcFlowEntity-list { - config "false"; - key "egressIf srcIP dstIP"; + container wredqueue-items { - // Added containment: Prefix=eif - // Acquired From Package nbm - uses nbm_NbmCcFlowEntity-group; - } + uses platform_WredQueue-group; + description "Enable queue based ECN marking"; } - container srcip-items { - list SenderCcTable-list { - config "false"; - key "srcIP destIP"; - // Added containment: Prefix=srcip - // Acquired From Package nbm - uses nbm_SenderCcTable-group; - } + // Rate Limiter Related Properties + container ratelimiter-items { + + uses platform_RateLimiter-group; + description "Rate Limiter container for the platform entity "; } - container repip-items { - list ReceiverCcTable-list { - config "false"; - key "reporterIP srcIP destIP"; - // Added containment: Prefix=repip - // Acquired From Package nbm - uses nbm_ReceiverCcTable-group; + // TCAM Template Related Properties + container template-items { + list TcamTemplate-list { + key "name"; + + uses platform_TcamTemplate-group; + description "Manages the user defined tcam template list"; } + description "Manages the user defined tcam template"; } - } - grouping nbm_NbmCcFlowEntity-group { + // Container for all the BDs to hold platform data in the system. + container bd-items { - // Properties - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP Address"; + uses platform_BdEntity-group; + description "Bridge domain"; + } - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + // Container for all the interfaces in the system. + container intf-items { + + uses platform_Intf-group; + description "Interface"; } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + // This object configs platform logging level + container loglevel-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_LogLevel-group; + description "Config Platform logging level"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver"; + // Container for all the power off config data in the system. + container poweroffEntity-items { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_PoweroffEntity-group; + description "Poweroff Module Config"; } - // Type is an MO-Defined-Type - leaf ingressIf { - config "false"; - description "ingress Interface"; + container sysmemth-items { - // Type is an MO-Defined-Type - type nbm_nbmIf; + uses platform_SysMemTh-group; + description "System Memory Threshold"; } - // Type is an MO-Defined-Type - leaf egressIf { - config "false"; - description "egress Interface"; + // Container for all the tcam regions in the system. + container tcamRegion-items { - // Type is an MO-Defined-Type - type nbm_nbmIf; + uses platform_TcamRegion-group; + description "Tcam region type"; } - leaf dscp { - config "false"; - type uint32; + + container latencymonitor-items { + + uses platform_LatencyMonitor-group; + description "Latency Monitor Property"; } - // Type is an MO-Defined-Type - leaf bandwidthUnit { - config "false"; - description "bandwidth units - Mbps, Kbps, or Gbps"; + container buffermonitor-items { - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; + uses platform_BufferMonitor-group; + description "Buffer Monitor Property"; } - leaf bandwidth { - config "false"; - type uint32; + + container pfcmmubuffer-items { + + uses platform_PfcMmuBuffer-group; + description "Pfc mmu buffer Property"; } - leaf queueId { - config "false"; - type uint8; + + // Container for all udf . + container udf-items { + + uses platform_UdfEntity-group; + description "UdfEntity"; } } - grouping nbm_SenderCcTable-group { + grouping platform_LoadBalance-group { + description "Port-Channel Load-Balance"; - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP address"; + leaf loadBalanceAlgo { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_LoadBalanceAlgo; + description "src-dst based load balancing parameters"; } - // Type is an MO-Defined-Type - leaf destIP { - config "false"; - description "dest IP address"; + leaf concatenation { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_Concatenation; + description "Enable/Disable load-balancing concatenation parameter"; } - leaf iif { - config "false"; - type uint8; + + leaf rotate { + + type platform_Rotate; + description "Hash-input of load balancing rotate parameter"; } - leaf dummyproperty1 { - config "false"; - type uint32; + leaf fex { + type boolean; + description "fex based load balancing parameter"; } - leaf dummyproperty2 { - config "false"; - type uint32; + + leaf symmetry { + + type platform_Symmetry; + description "load balancing symmetry parameter"; } - leaf dummyproperty3 { - config "false"; - type uint32; + + leaf encapsulation { + + type platform_Encapsulation; + description "load balancing encapsulation parameter"; } } - grouping nbm_ReceiverCcTable-group { + grouping platform_Profile-group { + description "Platform Profile"; - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP address"; + // valid for MTC + leaf spanBufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_ThresPercentage; + description "buffer span threshold"; } - // Type is an MO-Defined-Type - leaf destIP { - config "false"; - description "destination IP address"; + leaf qosGrp0BufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf oif { - config "false"; - type uint8; + type platform_ThresPercentage; + description "buffer qos group 0 threshold"; } - // Type is an MO-Defined-Type - leaf reporterIP { - config "false"; - description "Reporter IP Address for Receiver CC Table"; + leaf qosGrp1BufferThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf dummyproperty1 { - config "false"; - type uint32; - } - leaf dummyproperty2 { - config "false"; - type uint32; + type platform_ThresPercentage; + description "buffer qos group 1 threshold"; } - leaf dummyproperty3 { - config "false"; - type uint32; + + leaf qosGrp2BufferThresh { + + type platform_ThresPercentage; + description "buffer qos group 2 threshold"; } - } - grouping nbm_NbmFlowsTable-group { - leaf mode { - type string; + leaf qosGrp3BufferThresh { + + type platform_ThresPercentage; + description "buffer qos group 3 threshold"; } - // Holds NBM configuration - container flowOp-items { - list NbmFlowEntity-list { - key "flowOp srcIP dstIP egressIf"; + leaf qosGrp4BufferThresh { - // Added containment: Prefix=flowOp - // Acquired From Package nbm - uses nbm_NbmFlowEntity-group; - } + type platform_ThresPercentage; + description "buffer qos group 4 threshold"; } - // Counter MO - container srcIP-items { - list NbmOifCounter-list { - config "false"; - key "srcIP dstIP"; + // Hardware Profile Related Properties + container module-items { + list Module-list { + key "moduleId"; - // Added containment: Prefix=srcIP - // Acquired From Package nbm - uses nbm_NbmOifCounter-group; + uses platform_Module-group; + description "Module list"; } + description "Module"; } - // MO FOR IIF CHANGE - UNUSED FOR NOW - container iif-items { - list NbmUpdateIif-list { - key "newIngressIf srcIP dstIP"; + // Packet Drop Related Properties + container packetdrop-items { - // Added containment: Prefix=iif - // Acquired From Package nbm - uses nbm_NbmUpdateIif-group; - } + uses platform_PacketDrop-group; + description "Packet Drop config"; } } - grouping nbm_NbmFlowEntity-group { + grouping platform_Module-group { + description "Module"; - // Properties - // Type is an MO-Defined-Type - leaf controllerIP { - description "Controller IP Address"; + leaf moduleId { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_slotNumber; + description "Module number on the switch"; } - // Type is an MO-Defined-Type - leaf controllerVIP { - description "Controller Virtual IP Address"; + leaf infoPortThresh { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_portThresPercentage; + description "buffer info port-threshold threshold"; } - // Type is an MO-Defined-Type - leaf flowOp { - description "Operation Type"; + leaf infoPollInt { - // Type is an MO-Defined-Type - type nbm_nbmFlowOperEn; + type platform_Interval; + description "buffer info poll-interval timer"; } + } - // Type is an MO-Defined-Type - leaf srcIP { - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + grouping platform_PacketDrop-group { + description "Packet Drop config"; + leaf preTriggerSampling { + type uint8 { + range "1..16"; + } + default "8"; + description "Packet Drop Pre-Sampling Rate"; } - - // Type is an MO-Defined-Type - leaf dstIP { - description "destination IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf postTriggerSampling { + type uint8 { + range "1..16"; + } + default "16"; + description "Packet Drop Post-Sampling Rate"; } - // Type is an MO-Defined-Type - leaf reporterIP { - description "Reporter IP Address for Receiver"; + leaf dropTrigger { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_TriggerType; + description "Packet Drop Trigger"; } - // Type is an MO-Defined-Type - leaf ingressIf { - description "ingress Interface"; + leaf sourceScope { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type platform_SourceScope; + description "Packet Drop Capture Scope"; } - // Type is an MO-Defined-Type - leaf egressIf { - description "egress Interface"; + leaf sourceInterface { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type nw_IfId; + description "Capture Entity"; } - leaf egressIfCount { - type uint32; + leaf sourceInterfaceQosGrp { + type uint8 { + range "0..8"; + } + default "0"; + description "Capture Entity QosGroup"; } - leaf seqNum { - type uint32; + leaf captureCount { + type uint16 { + range "2..1024"; + } + default "304"; + description "Packet Drop Capture Count"; } - leaf dscp { - type uint32; + leaf captureTimer { + type uint16 { + range "1..429"; + } + description "Packet Drop Capture Timer (Micro-Seconds)"; + } + leaf packetDropEnable { + type boolean; + default "false"; + description "Packet Drop Enable"; } - // Type is an MO-Defined-Type - leaf bandwidthUnit { - description "bandwidth units - Mbps, Kbps, or Gbps"; + // Profile Related Properties + container dropprofile-items { + list DropProfile-list { + key "profileName"; - // Type is an MO-Defined-Type - type nbm_nbmBwUnitEn; + uses platform_DropProfile-group; + description "Packet Drop config list"; + } + description "Packet Drop config"; } - leaf bandwidth { - type uint32; + } + + grouping platform_DropProfile-group { + description "Packet Drop config"; + leaf profileName { + type string { + length "1..40"; + } + description "Packet Drop Profile Name"; } - leaf queueId { - type uint8; + leaf startThreshold { + type uint16 { + range "0..65535"; + } + default "0"; + description "Packet Drop Profile Start-Threshold"; } - leaf switchIif { - type uint8; + leaf stopThreshold { + type uint16 { + range "0..65535"; + } default "0"; + description "Packet Drop Profile Stop-Threshold"; } - } - - grouping nbm_NbmOifCounter-group { - // Type is an MO-Defined-Type - leaf srcIP { - config "false"; - description "source IP Address"; + // Profile Interface Related Properties + container profileinterface-items { + list ProfileInterface-list { + key "profileInterface"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + uses platform_ProfileInterface-group; + description "Packet Drop config list"; + } + description "Packet Drop config"; } + } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + grouping platform_ProfileInterface-group { + description "Packet Drop config"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + leaf profileInterface { + + type nw_IfId; + description "Packet Drop Profile Interface"; } - leaf oifCount { - config "false"; - type uint32; + leaf qosGrp0 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 0"; + } + leaf qosGrp1 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 1"; + } + leaf qosGrp2 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 2"; + } + leaf qosGrp3 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 3"; + } + leaf qosGrp4 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 4"; + } + leaf qosGrp5 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 5"; + } + leaf qosGrp6 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 6"; + } + leaf qosGrp7 { + type boolean; + default "false"; + description "Packet Drop Profile Qosgrp 7"; + } + leaf monitorAllQgrps { + type boolean; + default "false"; + description "Packet Drop Profile Monitor Qgrp"; } } - grouping nbm_NbmUpdateIif-group { - - // Type is an MO-Defined-Type - leaf srcIP { - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + grouping platform_GlobalRandomDetect-group { + description "Congestion-control Random-detect"; + leaf minThreshold { + type uint32; + default "13631280"; + description "Global-buffer min Threshold"; } - // Type is an MO-Defined-Type - leaf dstIP { - description "destination IP Address"; + leaf minThresholdUnit { - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type platform_ThresUnit; + description "Global-buffer max Threshold unit"; + } + leaf maxThreshold { + type uint32; + default "13631280"; + description "Global-buffer max Threshold"; } - // Type is an MO-Defined-Type - leaf newIngressIf { - description "New Ingress Interface"; + leaf maxThresholdUnit { - // Type is an MO-Defined-Type - type nbm_nbmIf; + type platform_ThresUnit; + description "Global-buffer min Threshold unit"; } - // Type is an MO-Defined-Type - leaf prevIngressIf { - description "Prev Ingress Interface"; + leaf forwardNonEcn { - // Type is an MO-Defined-Type - type nbm_nbmIf; - } - leaf seqNum { - type uint32; + type platform_ConfigState; + description "Forward non ECN capable traffic without WRED dropping"; } } - grouping nbm_NbmStats-group { + grouping platform_TcamStatsModule-group { + description "represents module for which TCAM resource utilization is required"; + leaf module { + config "false"; + type uint16; + description "module number for which TCAM resource utilization is required"; + } - // Holds NBM configuration - container srcIP-items { - list NbmStatsEntity-list { + // TCAM resource utilization on the asic instance + container inst-items { + list TcamStatsInst-list { config "false"; - key "srcIP dstIP"; + key "instance"; - // Added containment: Prefix=srcIP - // Acquired From Package nbm - uses nbm_NbmStatsEntity-group; + uses platform_TcamStatsInst-group; + description "represents aisc instance number on the module list"; } + description "represents aisc instance number on the module"; } } - grouping nbm_NbmStatsEntity-group { - - // Properties - // Type is an MO-Defined-Type - leaf srcIP { + grouping platform_TcamStatsInst-group { + description "represents aisc instance number on the module"; + leaf instance { config "false"; - description "source IP Address"; - - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; + type uint16; + description "instance number"; } - // Type is an MO-Defined-Type - leaf dstIP { - config "false"; - description "destination IP Address"; + // TCAM regions on the asic instance + container region-items { + list TcamStatsRegion-list { + config "false"; + key "regionName"; - // Type is an MO-Defined-Type - type nbm_nbmIpAddr; - } - leaf allowedPkts { - config "false"; - type uint64; - } - leaf allowedBytes { - config "false"; - type uint64; - } - leaf deniedPkts { - config "false"; - type uint64; - } - leaf deniedBytes { - config "false"; - type uint64; - } - leaf totalPkts { - config "false"; - type uint64; + uses platform_TcamStatsRegion-group; + description "represents TCAM Region name on the asic instance list"; + } + description "represents TCAM Region name on the asic instance"; } - leaf totalBytes { + } + + grouping platform_TcamStatsRegion-group { + description "represents TCAM Region name on the asic instance"; + leaf regionName { config "false"; - type uint64; + type string; + description "TCAM region name"; } - leaf tStamp { + leaf regionSize { config "false"; - type uint64; - } - } - - grouping boot_Boot-group { - - // boot poap - // Type is an MO-Defined-Type - leaf poap { - description "Boot Poap Enable Disable"; - - // Type is an MO-Defined-Type - type boot_Poap; + type uint16; + description "carved size of TCAM region"; } - container image-items { + // TCAM utilization values for the regions + container utilization-items { - // Added containment as a singleton: Prefix=image - // Acquired From Package boot - uses boot_Image-group; + uses platform_TcamResourceUtilization-group; + description "represents TCAM resouce utilization for the region"; } } - grouping boot_Image-group { - leaf sup1 { - type string; - } - leaf sup2 { - type string; + grouping platform_TcamResourceUtilization-group { + description "represents TCAM resouce utilization for the region"; + leaf used { + config "false"; + type uint16; + description "overall used entries for the region"; } - leaf image_err { + leaf free { config "false"; - type string; - default "success"; + type uint16; + description "overall free entries for the region"; } - leaf sup1NextReload { + leaf percent { config "false"; - type string; + type decimal64 { + fraction-digits 6; + } + description "overall percent utilization for the region"; } - leaf sup2NextReload { + leaf ipv4Used { config "false"; - type string; + type uint16; + description "number of ipv4 access-list entries in the region"; } - } - - grouping eqpt_Ch-group { - - // Role of this chassis - // Type is an MO-Defined-Type - leaf role { + leaf ipv4Percent { config "false"; - description "The role of this chassis"; - - // Type is an MO-Defined-Type - type top_NodeRole; + type decimal64 { + fraction-digits 6; + } + description "Ipv4 percent utilization of the region"; + } + leaf ipv6Used { + config "false"; + type uint16; + description "number of ipv6 access-list entries in the region"; } - - // Operational status of chassis - // Type is an MO-Defined-Type - leaf operSt { + leaf ipv6Percent { config "false"; - description "The chassis operational state"; - - // Type is an MO-Defined-Type - type eqpt_ChOperSt; + type decimal64 { + fraction-digits 6; + } + description "Ipv6 percent utilization of the region"; } - - // Chassis operational status qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf macUsed { config "false"; - description "The chassis operational state qualifier"; - - // Type is an MO-Defined-Type - type eqpt_OperStQual; + type uint16; + description "number of mac access-list entries in the region"; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + leaf macPercent { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type decimal64 { + fraction-digits 6; + } + description "mac percent utilization of the region"; } - - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + leaf allUsed { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint16; + description "all used entries in the region"; } - - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + leaf allPercent { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type decimal64 { + fraction-digits 6; + } + description "all percent utilization of the region"; } - - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + leaf otherUsed { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint16; + description "used other entries in the region"; } - leaf mfgTm { + leaf otherPercent { config "false"; - type string; - default "0"; + type decimal64 { + fraction-digits 6; + } + description "other percent utilization of the region"; } + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type + grouping platform_NVE-group { + description "Nve Configs"; leaf id { - config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + type uint16; + description "int nve"; + } + leaf ipmcIndexSize { + type uint32 { + range "1000..7000"; } + default "3000"; + description "global ipmc index size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf overlayVlanId { - // Type is an MO-Defined-Type - type naming_Descr; + type l2_VlanBitmap; + description "nve overlay vlan id range"; } - - // Ejector policy - container ejpol-items { - list EjPol-list { - config "false"; + container infravlan-items { + list InfraVlan-list { key "id"; - // Added containment: Prefix=ejpol - // Acquired From Package eqpt - uses eqpt_EjPol-group; + uses platform_InfraVlan-group; + description "InfraVlan Config list"; } + description "InfraVlan Config"; } + } - // supervisor slot - container supslot-items { - list SupCSlot-list { - config "false"; - key "id"; + grouping platform_InfraVlan-group { + description "InfraVlan Config"; - // Added containment: Prefix=supslot - // Acquired From Package eqpt - uses eqpt_SupCSlot-group; - } + leaf id { + + type platform_infraVlanId; + description "Id for all vlans that are infravlan enabled"; } - // line card slot - container lcslot-items { - list LCSlot-list { - config "false"; - key "id"; + leaf force { - // Added containment: Prefix=lcslot - // Acquired From Package eqpt - uses eqpt_LCSlot-group; - } + type platform_infraVlanForce; + description "Force flag if infra vlan added by force"; } + } - // fabric card slot - container fcslot-items { - list FCSlot-list { - config "false"; - key "id"; + grouping platform_ForwardingMode-group { + description "Forwarding Mode Property"; - // Added containment: Prefix=fcslot - // Acquired From Package eqpt - uses eqpt_FCSlot-group; - } + // description + leaf forwardingModeType { + + type platform_forwardingModeSelector; + description "Forwarding Mode Type"; } - // system controller slot - container scslot-items { - list SysCSlot-list { - config "false"; - key "id"; + leaf lpmEntryWarp { - // Added containment: Prefix=scslot - // Acquired From Package eqpt - uses eqpt_SysCSlot-group; - } + type platform_forwardingModeLpmEntryWarp; + description "Forwarding Mode Warp LPM Entry"; } - // power supply slot - container psuslot-items { - list PsuSlot-list { - config "false"; - key "id"; + leaf hostEntryWarp { - // Added containment: Prefix=psuslot - // Acquired From Package eqpt - uses eqpt_PsuSlot-group; - } + type platform_forwardingModeHostEntryWarp; + description "Forwarding Mode Warp Host Entry"; } - // fan tray slot - container ftslot-items { - list FtSlot-list { - config "false"; - key "id"; + leaf l2EntryWarp { - // Added containment: Prefix=ftslot - // Acquired From Package eqpt - uses eqpt_FtSlot-group; - } + type platform_forwardingModeL2EntryWarp; + description "Forwarding Mode Warp L2 Entry"; } - // Sprom Backplane Unit block - container spbp-items { + leaf mcstEntryWarp { - // Added containment as a singleton: Prefix=spbp - // Acquired From Package eqpt - uses eqpt_SpromBP-group; + type platform_forwardingModeMcstEntryWarp; + description "Forwarding Mode Warp Mcast Entry"; } - // Board slot - container bslot-items { + leaf lpmEntryNormal { - // Added containment as a singleton: Prefix=bslot - // Acquired From Package eqpt - uses eqpt_BSlot-group; + type platform_forwardingModeLpmEntryNormal; + description "Forwarding Mode Normal LPM Entry"; } - // Nic slot - container nslot-items { - list NSlot-list { - config "false"; - key "id"; + leaf mcstEntryNormal { - // Added containment: Prefix=nslot - // Acquired From Package eqpt - uses eqpt_NSlot-group; - } + type platform_forwardingModeMcstEntryNormal; + description "Forwarding Mode Normal Mcast Entry"; } - // Storage represents the storage of the Controller - container p-items { - list Storage-list { - config "false"; - key "mount fileSystem"; + leaf fwdModeCfgFailed { + config "false"; - // Added containment: Prefix=p - // Acquired From Package eqpt - uses eqpt_Storage-group; - } + type platform_forwardingModeConfigFailed; + description "Forwarding Mode Config Failed"; } } - grouping eqpt_EjPol-group { + grouping platform_Ecmp-group { + description "represents hardware related ecmp properties"; - // Auto shutdown on ejector open - // Type is an MO-Defined-Type - leaf autoSh { - config "false"; - description "Auto Shutdown on Ejector Open"; + leaf ecmpResilientMode { - // Type is an MO-Defined-Type - type eqpt_AdSt; + type platform_AdminState; + description "Configure ECMP resilient mode"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf ecmpReuse { - // Type is an MO-Defined-Type - type eqpt_Id; + type platform_AdminState; + description "Enable ECMP reuse to scale"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf ecmpAutoRecoveryThreshold { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_Percent; + description "Configure ECMP Auto recovery mode"; } + } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + grouping platform_Qos-group { + description "Hardware qos type"; - // Type is an MO-Defined-Type - type eqpt_Model; + // Buffer peak configuraion for counter0 classes + leaf bufPeakMonitorCnt0Class0 { + + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 0"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf bufPeakMonitorCnt0Class1 { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 1"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf bufPeakMonitorCnt0Class2 { - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { - config "false"; - type string; - default "0"; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 2"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf bufPeakMonitorCnt0Class3 { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 3"; } - } - - grouping eqpt_SupCSlot-group { - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { - config "false"; - description "Poweroff Config"; + leaf bufPeakMonitorCnt0Class4 { - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 4"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf bufPeakMonitorCnt0Class5 { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 5"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf bufPeakMonitorCnt0Class6 { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 6"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { - config "false"; - description "The physical slot identifier"; + leaf bufPeakMonitorCnt0Class7 { - // Type is an MO-Defined-Type - type eqpt_Id; + type platform_ConfigureSt; + description "Used to configure/unconfigure buffer peak monitor for counter 0 class 7"; + } + leaf macIpgVal { + type uint16 { + range "12..63"; + } + default "12"; + description "To configure MAC IPG Value in bytes"; + } + leaf dppMaxNumPkts { + type uint32 { + range "1..1023"; + } + default "120"; + description "To configure the max number of packets to prioritize"; + } + leaf dppAgePeriod { + type uint32 { + range "5000..1000000"; + } + default "5000"; + description "To configure DPP aging period in microseconds"; + } + leaf etrapAgePeriod { + type uint32 { + range "1..1000000"; + } + default "50"; + description "To configure ETRAP aging period in microseconds"; + } + leaf etrapBandwidthThreshold { + type uint32 { + range "1..1073741824"; + } + default "500"; + description "To configure ETRAP aging period in bytes"; + } + leaf etrapByteCount { + type uint32 { + range "1..1048575"; + } + default "1048555"; + description "To configure number of bytes to become elephant flow"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:SupCSlot->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The supervisor slot type"; + // Per output queue drops configuration + leaf oqDropsType { - // Type is an MO-Defined-Type - type eqpt_SlotT; + type platform_OqDropsType; + description "Type of per output queue drops"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // AFD Profile configuration + leaf qosAfdNSBuffProfile { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type platform_QosAfdBufferProfileOptions; + description "To configure approximate fair dropping profile"; + } + leaf qNoisePercent { + type uint16 { + range "0..100"; + } + default "20"; + description "To configure queue noise threshold in percentage"; + } + leaf pgHdrmReserve { + type uint8 { + range "20..100"; + } + default "100"; + description "Percent of Hdrm to reserve"; + } + leaf pgMinValue { + type uint8 { + range "0..32"; + } + default "0"; + description "PG Min Value"; + } + leaf pgNoMin { + type boolean; + default "false"; + description "PG no-min"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + leaf classify { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type platform_ConfigState; + description "Qos classification"; } - // Sup Card, containing CPU running control plane - container sup-items { + leaf ipg { - // Added containment as a singleton: Prefix=sup - // Acquired From Package eqpt - uses eqpt_SupC-group; + type platform_ConfigState; + description "Include IPG in shape/police"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - container rtoosSlot-items { + leaf pgShare { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type platform_ConfigState; + default "Enabled"; + description "PG Shared Buffer Usage"; + } + leaf burstDetectMaxRecords { + type uint16 { + range "200..2000"; + } + default "1000"; + description "Configure the max number of burst records to monitor"; } - } - grouping eqpt_SupC-group { + leaf burstDetectRiseThreshold { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_Threshold; + description "Threshold bytes to start monitoring burst"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + leaf burstDetectRiseThreshUnit { + + type platform_ThreshUnit; + description "Units for rise-threshold value"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf burstDetectFallThreshold { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_Threshold; + description "Threshold bytes to stop monitoring burst"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf burstDetectFallThreshUnit { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_ThreshUnit; + description "Units for fall-threshold value"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf nsBufferProfile { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_BufferProfileOptions; + description "Qos NS Buffer Profile"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf eoqStatsClass { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_QosGroup; + description "Qos eoq Stats Class Qos Group"; } - leaf mfgTm { - config "false"; - type string; + leaf nodropQueueYellowThresh { + type uint32; default "0"; + description "No-drop PG's Queue yellow threshold"; } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + leaf nodropQueueGreenThresh { + type uint32; + default "0"; + description "No-drop PG's Queue green threshold"; } - - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + leaf nodropQueueGreenThreshFx { + type uint32; + default "0"; + description "No-drop PG's Queue green threshold for FX platforms"; + } + leaf nodropPgSize { + type uint32; + default "0"; + description "Configure No-drop Pool Group size"; + } + leaf nodropPgRedThresh { + type uint32; + default "0"; + description "Configure No-drop PG red threshold"; + } + leaf nodropPgYellowThresh { + type uint32; + default "0"; + description "Configure No-drop PG yellow threshold"; + } + leaf nodropPgGreenThresh { + type uint32; + default "0"; + description "Configure No-drop PG green threshold"; + } + leaf nodropPgSizeFx { + type uint32; + default "0"; + description "Configure No-drop Pool Group size for FX platforms"; + } + leaf cpuSize { + type uint16 { + range "0..1500"; + } + default "0"; + description "CPU Pool Group threshold"; + } + leaf lCpuSize { + type uint16 { + range "0..10000"; + } + default "0"; + description "LCPU Pool Group threshold"; + } + leaf spanSize { + type uint32 { + range "0..10000"; + } + default "0"; + description "Span Pool Group size"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:SupC->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + leaf inputBufferPeak { - // Type is an MO-Defined-Type - type eqpt_CardT; + type platform_PeakCountType; + description "peak counter type"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + leaf mcQosGroup3Traffic { - // Type is an MO-Defined-Type - type eqpt_COpSt; + type platform_QosGroupVal; + description "Qos-group to which to divert qos-group-3 Multicast traffic"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { - config "false"; - description "The card redundancy state"; + leaf pfcMcDrop { - // Type is an MO-Defined-Type - type eqpt_RdSt; + type platform_ConfigState; + description "Drop mcast/bcast traffic on no-drop configured class"; } + container counter-items { + list QosOqStatsConfiguration-list { + key "counterNumber"; - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + uses platform_QosOqStatsConfiguration-group; + description "represents module for which TCAM resource utilization is required list"; + } + description "represents module for which TCAM resource utilization is required"; + } + } - // Type is an MO-Defined-Type - type eqpt_CardId; + grouping platform_QosOqStatsConfiguration-group { + description "represents module for which TCAM resource utilization is required"; + leaf counterNumber { + type uint16 { + range "0..9"; + } + description "Use per port counter number"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // Qos group for which queuing statistics is to be configured + leaf qosGrpForQueuingStatistics { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type platform_QosGroupForQueuingStatistics; + description "Qos group for which queuing statistics is to be configured"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { - config "false"; - description "The card MAC address base"; + // Oq stats type + leaf oqStatsType { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type platform_OqStatsType; + description "Type of per output queue statistics"; } + } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + grouping platform_PriorFlowCtrlWd-group { + description "PFC WD config"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + leaf cfgMode { + + type platform_ConfigOnOff; + description "PFC WD enabled"; } - leaf upTs { - config "false"; - type string; + leaf interval { + type uint16 { + range "100..1000"; + } + default "100"; + description "PFC WD poll interval"; } - - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; - - // Type is an MO-Defined-Type - type eqpt_PwrState; + leaf shutdownMultiplier { + type uint8 { + range "1..10"; + } + default "1"; + description "PFC WD Shutdown multiplier"; } - - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + leaf autoRestoreMultiplier { + type uint8 { + range "0..100"; + } + default "10"; + description "PFC WD Auto shutdown multiplier"; + } + leaf fixedRestoreMultiplier { + type uint8 { + range "0..100"; + } + default "0"; + description "PFC WD Fixed shutdown multiplier"; + } + leaf internalIntfMultiplier { + type uint8 { + range "0..10"; + } + default "2"; + description "PFC WD Internal interface multiplier"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + leaf forcedOn { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type platform_ConfigOnOff; + description "PFC WD forced on"; } + } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + grouping platform_WredQueue-group { + description "Enable queue based ECN marking"; + leaf qosGroup0 { + type boolean; + description "Enable queue based ECN marking for qos-group0"; + } + leaf qosGroup1 { + type boolean; + description "Enable queue based ECN marking for qos-group1"; + } + leaf qosGroup2 { + type boolean; + description "Enable queue based ECN marking for qos-group2"; + } + leaf qosGroup3 { + type boolean; + description "Enable queue based ECN marking for qos-group3"; + } + leaf qosGroup4 { + type boolean; + description "Enable queue based ECN marking for qos-group4"; + } + leaf qosGroup5 { + type boolean; + description "Enable queue based ECN marking for qos-group5"; + } + leaf qosGroup6 { + type boolean; + description "Enable queue based ECN marking for qos-group6"; + } + leaf qosGroup7 { + type boolean; + description "Enable queue based ECN marking for qos-group7"; + } + } - // Type is an MO-Defined-Type - type eqpt_ModVid; + grouping platform_RateLimiter-group { + description "Rate Limiter container for the platform entity "; + leaf rate { + type uint32 { + range "0..100000000"; + } + description "rate value in kbit per sec"; } + leaf module { + type uint32; + description "module number for which rate is being configured"; + } + } - // Information about each card firmware - container running-items { + grouping platform_TcamTemplate-group { + description "Manages the user defined tcam template"; - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + leaf name { + + type platform_TcamTemplateName; + description "Name of the user-defined tcam template"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + leaf refTemplate { - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type platform_RefTemplate; + description "Select a default template as reference"; } + } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + grouping platform_BdEntity-group { + description "Bridge domain"; + leaf descr { + config "false"; + type string; + description "Bridge Domain description"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { - config "false"; - key "id"; + // Layer2 Bridge-domain + container bd-items { + list Bd-list { + key "fabEncap"; - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; + uses platform_Bd-group; + description "vlan object list"; } + description "vlan object"; } + } - // External management port - container mgmt-items { - list MgmtP-list { - config "false"; - key "id"; + grouping platform_Bd-group { + description "vlan object"; + leaf fabEncap { + type string; + description "Fabric Encapsulation for Bridge Domain"; + } + } - // Added containment: Prefix=mgmt - // Acquired From Package eqpt - uses eqpt_MgmtP-group; - } + grouping platform_Intf-group { + description "Interface"; + leaf descr { + config "false"; + type string; + description "Interface platform data"; } - // External (debug) console port - container console-items { - list ConsP-list { - config "false"; + // This object holds platfrom information at an + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=console - // Acquired From Package eqpt - uses eqpt_ConsP-group; + uses platform_If-group; + description "Platform data per interface list"; } + description "Platform data per interface"; } + } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; - - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + grouping platform_If-group { + description "Platform data per interface"; + leaf stormCtrlCpuArp { + type uint16 { + range "0..40000"; } + default "0"; + description "set arp traffic rate on this interface"; } - // Sprom Supervisor - container spsup-items { + leaf name { - // Added containment as a singleton: Prefix=spsup - // Acquired From Package eqpt - uses eqpt_SpromSup-group; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + leaf descr { - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + type naming_Descr1024; + description "Description"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + container mcast-items { - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + uses platform_Multicast-group; + description "Multicast Slow Receive"; } - // Flash memory unit - container flash-items { + container eltmIf-items { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + uses eltm_If-group; + description "Eltm Interface"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping firmware_CardRunning-group { + grouping platform_Multicast-group { + description "Multicast Slow Receive"; - // Bios version - // Type is an MO-Defined-Type - leaf biosVer { - config "false"; - description "A property that indicates Loader Version"; + leaf mcastSlowRcv { - // Type is an MO-Defined-Type - type cap_Version; + type platform_mcastSlowRcvState; + description "mcast slow-receiver port"; } + } - // Expected Component version - // Type is an MO-Defined-Type - leaf expectedVer { + grouping eltm_If-group { + description "Eltm Interface"; + + // hw bd id (allocated for l3 ports, port-channels) + leaf hwBdId { config "false"; - description "A property that indicates Expected Loader Version"; - // Type is an MO-Defined-Type - type cap_Version; + type l2_DomOperId; + description "Hw Bd Id (allocated for L3 Ports, Port-channels)"; } + } - // running version Operational State - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "A property that indicates Operational State"; + grouping platform_LogLevel-group { + description "Config Platform logging level"; - // Type is an MO-Defined-Type - type firmware_RunningOperSt; + // logging leve + leaf loggingLevel { + + type platform_LoggingLevel; + description "Logging Level"; } - // Interim version - // Type is an MO-Defined-Type - leaf interimVer { + // logging type + leaf loggingType { config "false"; - description "A property that indicates Interim Version"; - // Type is an MO-Defined-Type - type cap_Version; + type platform_LoggingType; + description "Logging type"; } + } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + grouping platform_PoweroffEntity-group { + description "Poweroff Module Config"; + leaf descr { config "false"; - description "Version"; + type string; + description "Poweroff config description"; + } + container poweroffModule-items { + list PoweroffModule-list { + key "id"; - // Type is an MO-Defined-Type - type cap_Version; + uses platform_PoweroffModule-group; + description "MO to hold config for all powered off modules list"; + } + description "MO to hold config for all powered off modules"; } - leaf internalLabel { - config "false"; - type string; + } + + grouping platform_PoweroffModule-group { + description "MO to hold config for all powered off modules"; + + leaf id { + + type platform_moduleNumberSt; + description "Module identifier for power off property"; } - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + leaf poweroffStatus { - // Type is an MO-Defined-Type - type firmware_Type; + type platform_poweroffSt; + description "Power off config state for the module [yes/no]"; } + } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + grouping platform_SysMemTh-group { + description "System Memory Threshold"; - // Type is an MO-Defined-Type - type firmware_RunningMode; + // Minor System Memory Threshold + leaf memThMinor { + + type platform_SysMemThVal; + description "Minor System Memory Threshold"; } - leaf ts { - config "false"; - type string; + + // Severe System Memory Threshold + leaf memThSevere { + + type platform_SysMemThVal; + description "Severe System Memory Threshold"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Critical System Memory Threshold + leaf memThCritical { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_SysMemThVal; + description "Critical System Memory Threshold"; } } - grouping eqpt_Ejec-group { + grouping platform_TcamRegion-group { + description "Tcam region type"; - // Status of ejector - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf ingFlowRedirectSize { - // Type is an MO-Defined-Type - type eqpt_EjSt; + type platform_tcamRegionSize; + description "Size of Egress region in ACX"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Ejec->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf eRaclSize { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..2"; - } + type platform_tcamRegionSize; + description "Egress RACL TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf vpcConvergenceSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "VPC TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf raclLiteSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "RACL TCAM region size"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf ipv6IfaclSize { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_tcamRegionSize; + description "IPv6 Interface ACL TCAM region size"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf eIpv6RaclSize { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_tcamRegionSize; + description "Egress IPv6 RACL TCAM region size"; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + leaf ifaclLiteSize { + + type platform_tcamRegionSize; + description "Interface ACL Lite TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf vaclSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "Virtual ACL TCAM region size"; } - } - grouping eqpt_EobcP-group { + leaf ifaclSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "Interface ACL TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf eVaclSize { + + type platform_tcamRegionSize; + description "Egress VACL TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf qosSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "QOS TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf raclSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "RACL TCAM region size"; } - } - grouping eqpt_EpcP-group { + leaf ingFlowSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_flowTcamRegionSize; + description "Ingress Flow TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf natSize { + + type platform_tcamRegionSize; + description "NAT TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf tcpNatSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_TcpNatTcamRegionSize; + description "TCP NAT TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf macIfaclSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "MAC Interface ACL TCAM region size"; } - } - grouping eqpt_MgmtP-group { + leaf eQosSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "Egress Qos TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf eIpv6QosSize { + + type platform_tcamRegionSize; + description "Egress IPV6 Qos TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf eMacQosSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "Egress Mac Qos TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf eQosLiteSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "Egress Qos Lite TCAM region size"; } - } - grouping eqpt_ConsP-group { + leaf ipsgSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type platform_tcamRegionSize; + description "IPSG TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + leaf ipv6QosSize { + + type platform_tcamRegionSize; + description "IPV6 QoS TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf ipv6RaclSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "IPV6 RACL TCAM region size"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf mcastBidirSize { - // Type is an MO-Defined-Type - type eqpt_PortT; + type platform_tcamRegionSize; + description "MCAST BIDIR TCAM region size"; } - } - grouping eqpt_Sensor-group { + leaf macVqosSize { - // Type of the sensor - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The equipment sensor type"; + type platform_tcamRegionSize; + description "MAC VLAN QoS TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_SensorT; + leaf fcoeIngressSize { + + type platform_tcamRegionSize; + description "Ingress FCoE Counters size"; } - // Major threshold - // Type is an MO-Defined-Type - leaf majorThresh { - config "false"; - description "The equipment sensor major threshold"; + leaf fcoeEgressSize { - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type platform_tcamRegionSize; + description "Egress FCoE Counters size"; } - // Minor threshold - // Type is an MO-Defined-Type - leaf minorThresh { - config "false"; - description "The equipment sensor minor threshold"; + leaf ifaclUdfSize { - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type platform_tcamRegionSize; + description "IPV4 IFACL SPAN UDF size"; } - // oper state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The equipment sensor operational status"; + leaf ipv6L3qosSize { - // Type is an MO-Defined-Type - type eqpt_SensorOpSt; + type platform_tcamRegionSize; + description "IPV6 L3 QoS TCAM region size"; } - // Temperature Value - // Type is an MO-Defined-Type - leaf tempValue { - config "false"; - description "The equipment sensor temperature value"; + leaf ipv6VaclSize { - // Type is an MO-Defined-Type - type eqpt_TempValue; + type platform_tcamRegionSize; + description "IPV6 VACL TCAM region size"; } - leaf unit { - config "false"; - type string; + + leaf ipv6VqosSize { + + type platform_tcamRegionSize; + description "IPV6 VLAN QoS TCAM region size"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sensor->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The equipment sensor identifier"; + leaf macL3qosSize { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..32"; - } + type platform_tcamRegionSize; + description "MAC L3 QoS TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf macQosSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "MAC QoS TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf macVaclSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "MAC VACL TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf mplsSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "MPLS TCAM region size"; } - } - grouping eqpt_SpromSup-group { + leaf openflowSize { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The sprom identifier"; + type platform_tcamRegionSize; + description "OPENFLOW TCAM region size"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + leaf openflowLiteSize { + + type platform_tcamRegionSize; + description "OPENFLOW Lite TCAM region size"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf qosIntraLiteSize { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type platform_tcamRegionSize; + description "QoS Intra Lite TCAM region size"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + leaf raclUdfSize { - // Type is an MO-Defined-Type - type eqpt_Model; + type platform_tcamRegionSize; + description "IPV4 RACL SPAN UDF TCAM region size"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + leaf vaclLiteSize { - // Type is an MO-Defined-Type - type eqpt_Revision; + type platform_tcamRegionSize; + description "VACL Lite TCAM region size"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + leaf vqosSize { - // Type is an MO-Defined-Type - type eqpt_Serial; + type platform_tcamRegionSize; + description "VLAN QoS TCAM region size"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf vqosIntraLiteSize { - // Type is an MO-Defined-Type - type naming_Descr; + type platform_tcamRegionSize; + description "VLAN QoS Intra Lite TCAM region size"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The memory type"; + leaf vxlanp2pSize { - // Type is an MO-Defined-Type - type eqpt_MemT; + type platform_tcamRegionSize; + description "VXLAN P2P TCAM region size"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The memory capacity"; + leaf coppSize { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type platform_tcamRegionSize; + description "Ingress Copp TCAM region size"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { - config "false"; - description "The memory access type"; + leaf coppSystemSize { - // Type is an MO-Defined-Type - type eqpt_Acc; + type platform_tcamRegionSize; + description "Copp System TCAM region size"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The memory operational status"; + leaf l3qosIntraLiteSize { - // Type is an MO-Defined-Type - type eqpt_OpSt; + type platform_tcamRegionSize; + description "L3 QoS Intra Lite TCAM region size"; } - leaf numBlk { - config "false"; - type uint16; + + leaf sviSize { + + type platform_tcamRegionSize; + description "Ingress SVI Counters TCAM region size"; } - // sprom Common Block - container spcmn-items { + leaf arpaclSize { - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type platform_tcamRegionSize; + description "ARP ACL TCAM region size"; } - // Sprom Supervisor block - container spsupblk-items { + leaf pbrSize { - // Added containment as a singleton: Prefix=spsupblk - // Acquired From Package eqpt - uses eqpt_SpromSupBlk-group; + type platform_tcamRegionSize; + description "IPV4 PBR TCAM region size"; } - // sprom Port Data Interface - container sppd-items { + leaf ipv6PbrSize { - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + type platform_tcamRegionSize; + description "IPV6 PBR TCAM region size"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + leaf supSize { - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + type platform_tcamRegionSize; + description "SUP TCAM region size"; } - // Sprom Sensor block - container spsensorblk-items { + leaf qoslblSize { - // Added containment as a singleton: Prefix=spsensorblk - // Acquired From Package eqpt - uses eqpt_SpSensorBlk-group; + type platform_tcamRegionSize; + description "Qos Label TCAM region size"; } - } - grouping eqpt_SpCmnBlk-group { - leaf size { - config "false"; - type uint16; + leaf ipv6SpanSize { + + type platform_tcamRegionSize; + description "IPV6 SPAN TCAM region size"; } - leaf count { - config "false"; - type uint16; + + leaf ipv6SpanL2Size { + + type platform_tcamRegionSize; + description "IPV6 L2 SPAN TCAM region size"; } - leaf major { - config "false"; - type uint16; + + leaf ipv6SupSize { + + type platform_tcamRegionSize; + description "IPV6 SUP TCAM region size"; } - leaf minor { - config "false"; - type uint16; + + leaf fhsSize { + + type platform_tcamRegionSize; + description "FHS TCAM region size"; } - leaf oem { - config "false"; - type string; + + leaf n9kArpaclSize { + + type platform_tcamRegionSize; + description "n9k-arp-acl TCAM region size"; } - leaf pdNum { - config "false"; - type string; + leaf mplsDoublewide { + type boolean; + description "MPLS double-wide TCAM region"; } - leaf serNum { - config "false"; - type string; + leaf openflowDoublewide { + type boolean; + description "Openflow double-wide TCAM region"; } - leaf prtNum { + + leaf cfgFault { config "false"; - type string; + + type platform_TcamRegionCfgFault; + description "TcamRegion carving fault"; } - leaf pRev { + leaf cfgFaultMsg { config "false"; - type string; + type string { + length "1..2048"; + } + description "TcamRegion carving fault message"; } - leaf mfgDev { + + leaf cfgFaultBmp { config "false"; - type string; + + type platform_TcamRegionCfgFaultBmp; + description "TCAM region config fault bit map"; } - leaf hwVer { + leaf reinitDefaults { config "false"; - type string; + type boolean; + description "Re-initializing default values"; } - leaf mfgBits { - config "false"; - type uint16; + + // WARNING: MO Type "base:Uint32Array128" is unknown in the source model + /* + property { + MTEPKG platform; + MTEMO TcamRegion; + MTESRC /dev/shm/irvine/REL_9_3_2_83/app_bi/model/specific/mo/switch/platform/pltfm/tcam_region.xml; + name tcamRegionSizesArray0To127; + type base:Uint32Array128; + mod implicit; + owner oper; + label Tcam Region Sizes of regions 0-127 to be sent from backend(pltfm_config) to frontend; } - leaf engBits { - config "false"; - type uint16; + */ + + + // WARNING: MO Type "base:Uint32Array128" is unknown in the source model + /* + property { + MTEPKG platform; + MTEMO TcamRegion; + MTESRC /dev/shm/irvine/REL_9_3_2_83/app_bi/model/specific/mo/switch/platform/pltfm/tcam_region.xml; + name tcamRegionSizesArray128To255; + type base:Uint32Array128; + mod implicit; + owner oper; + label Tcam Region Sizes of regions 128-255 to be sent from backend(pltfm_config) to frontend; } - leaf pwrCon { - config "false"; - type int16; + */ + + } + + grouping platform_LatencyMonitor-group { + description "Latency Monitor Property"; + + // description + leaf sampling { + + type platform_latencyMonitorSampling; + description "Latency Monitor Sampling"; } - leaf rmaFl { - config "false"; - type string; + + leaf latencyMonitorThreshholdAvg { + + type platform_latencyMonitorThreshholdAv; + description "Average latency monitor threshold"; } - leaf clei { - config "false"; - type string; + + leaf latencyMonitorThreshholdMax { + + type platform_latencyMonitorThreshholdMx; + description "Maximum latency monitor threshold"; } - leaf vdrId { - config "false"; - type string; + + leaf latencyMonitorState { + + type platform_latencyMonitorSt; + description "Latency monitor state"; } - leaf sig { - config "false"; - type uint16; + } + + grouping platform_BufferMonitor-group { + description "Buffer Monitor Property"; + + // description + leaf sampling { + + type platform_bufferMonitorSampling; + description "Buffer Monitor Sampling"; } - leaf ver { - config "false"; - type uint16; + + leaf bufferMonitorThreshhold { + + type platform_bufferMonitorThreshhold; + description "Buffer monitor threshold"; } - leaf len { - config "false"; - type uint16; + + leaf bufferMonitorState { + + type platform_bufferMonitorSt; + description "Buffer monitor state"; } - leaf cksum { - config "false"; - type uint16; + + leaf bufferMonitorMode { + + type platform_bufferMonitorMd; + description "Buffer monitor mode"; } } - grouping eqpt_SpromSupBlk-group { - leaf fbits { - config "false"; - type uint64; + grouping platform_PfcMmuBuffer-group { + description "Pfc mmu buffer Property"; + + // description + leaf mmuBufferState { + + type platform_pfcMmuBufferSt; + description "Pfc Buffer monitor state"; } - leaf hwCBits { - config "false"; - type uint64; + + leaf bufferReservation { + + type platform_pfcMmuBufferRes; + description "Percentage of shared pool buffers to be reserved"; } - leaf crdIdx { + + leaf cfgFault { config "false"; - type uint16; + + type platform_pfcMmuCfgFault; + description "Fault handling for pfc mmu buffer config"; } - leaf macB { - config "false"; + } + + grouping platform_UdfEntity-group { + description "UdfEntity"; + leaf descr { type string; + description "UdfEntity Description"; } - leaf macL { - config "false"; - type uint16; - } - leaf eobcN { - config "false"; - type uint16; + container udf-items { + list Udf-list { + key "name"; + + uses platform_Udf-group; + description "Udf list"; + } + description "Udf"; } - leaf epldN { - config "false"; - type uint16; + } + + grouping platform_Udf-group { + description "Udf"; + leaf name { + type string { + length "1..16"; + } + description "Udf Name"; } - leaf maxCPwr { - config "false"; - type uint16; + + leaf offsetBase { + + type platform_UdfOffsetBase; + description "Offset Base"; } - leaf coolRq { - config "false"; - type uint16; + leaf offsetPosition { + type uint8 { + range "0..127"; + } + description "offsetPosition from base 0-127"; } - leaf ambT { - config "false"; - type uint16; + leaf offsetLength { + type uint8 { + range "1..2"; + } + description "offsetLength 1-2"; } - leaf sensor1 { - config "false"; - type string; + leaf qualifySpan { + type boolean; + default "false"; + description "qualifySpan"; } - leaf sensor2 { - config "false"; - type string; + leaf qualifySpanV6 { + type boolean; + default "false"; + description "qualifySpanV6"; } - leaf sensor3 { - config "false"; - type string; + leaf qualifySpanV6L2 { + type boolean; + default "false"; + description "qualifySpanV6L2"; } - leaf sensor4 { - config "false"; - type string; + leaf qualifyIfacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for IFACL region"; } - leaf sensor5 { - config "false"; - type string; + leaf qualifyRacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for RACL region"; } - leaf sensor6 { - config "false"; - type string; + leaf qualifyVacl { + type boolean; + default "false"; + description "Configure UDFs to be qualified for VACL region"; } - leaf sensor7 { + + // Fault handling related + leaf cfgFault { config "false"; - type string; + + type platform_UdfCfgFault; + description "cfgFault"; } - leaf sensor8 { + } + + grouping satm_Entity-group { + description "Satellite Manager Entity"; + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf sig { + + // - Admin state + leaf adminSt { config "false"; - type uint16; + + type nw_AdminSt; + description "Admin State"; } - leaf ver { + + // Operational state + leaf operSt { config "false"; - type uint16; + + type nw_EntOperSt; + description "Operational State"; } - leaf len { - config "false"; - type uint16; + + // Discovered extended chassis + container dextch-items { + list DExtCh-list { + config "false"; + key "vendor model ser"; + + uses satm_DExtCh-group; + description "Discovered Extended Chassis list"; + } + description "Discovered Extended Chassis"; } - leaf cksum { - config "false"; - type uint16; + + // Configure FEX + container fex-items { + list Fex-list { + key "id"; + + uses satm_Fex-group; + description "FEX Configuration list"; + } + description "FEX Configuration"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { + // Fabric port definition + container fabp-items { + list FabP-list { config "false"; key "id"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; + uses satm_FabP-group; + description "Fabric Port list"; } + description "Fabric Port"; } + } - // sprom Port Data Interface - container sppd-items { + grouping satm_DExtCh-group { + description "Discovered Extended Chassis"; - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Operational state + leaf operSt { + config "false"; + + type satm_ExtChOperSt; + description "Operational State"; } - } - grouping eqpt_SpSd-group { + // Extended chassis software version + leaf ver { + config "false"; - // Major Threshold - // Type is an MO-Defined-Type - leaf majTh { + type cap_Version; + description "Software Version"; + } + + // Switch software version + leaf swVer { config "false"; - description "The sensor data sprom major threshold"; - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type cap_Version; + description "Switch Software Version"; } - // Minor Threshold - // Type is an MO-Defined-Type - leaf minTh { + // Interim extended chassis software version + leaf intVer { config "false"; - description "The sensor data sprom minor threshold"; - // Type is an MO-Defined-Type - type eqpt_TempThresh; + type cap_Version; + description "Interim Software Version"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Interim switch software version + leaf swIntVer { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type cap_Version; + description "Interim Switch Software Version"; + } + + // Extended chassis software generation + leaf swGen { + config "false"; + + type satm_SwGen; + description "Software Generation"; + } + + // Control channel fabric port + leaf controlFPort { + config "false"; + + type nw_IfId; + description "Control Channel Fabric Port"; } // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf vendor { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type type eqpt_Vendor; + description "Vendor"; } // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf model { config "false"; - description "Model"; - // Type is an MO-Defined-Type type eqpt_Model; + description "Model"; } // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf rev { config "false"; - description "Revision"; - // Type is an MO-Defined-Type type eqpt_Revision; + description "Revision"; } // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf ser { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type type eqpt_Serial; + description "Serial Number"; } - leaf mfgTm { + + // Identifier for the item + leaf id { config "false"; - type string; - default "0"; + + type eqpt_Id { + range "101..199"; + } + description "ID"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } } - grouping eqpt_SpPd-group { - leaf prtTy { + grouping satm_Fex-group { + description "FEX Configuration"; + leaf id { + type uint32 { + range "101..199"; + } + description "FEX number"; + } + leaf descr { + type string { + length "0..22"; + } + description "FEX description"; + } + leaf serialNumber { + type string { + length "0..20"; + } + description "Chassis serial number"; + } + } + + grouping satm_FabP-group { + description "Fabric Port"; + + // Interface ID of port + leaf id { config "false"; - type uint16; + + type nw_IfId; + description "ID"; } - leaf numPts { + + // Fabric port operational state + leaf operSt { + config "false"; + + type satm_OperSt; + description "Operational State"; + } + + // Extended chassis id + leaf extChId { + config "false"; + + type eqpt_ExtChId; + description "Extended Chassis ID"; + } + + // Fabric port FSM state + leaf fsmSt { + config "false"; + + type satm_FpFsmSt; + description "Fabric FSM State"; + } + leaf remoteLinkId { config "false"; type uint16; + description "Remote Link ID of the Fabric Port"; } - } - grouping eqpt_SpSensorBlk-group { - leaf sensor9 { + // Fabric port flags + leaf flags { config "false"; - type string; + + type satm_FportFlags; + description "Fabric Port Flags"; } - leaf sensor10 { + + // Satellite manager host port + container hostp-items { + list HostP-list { + config "false"; + key "id"; + + uses satm_HostP-group; + description "Host Port list"; + } + description "Host Port"; + } + + // Remote fcot definition + container remotefcot-items { + + uses satm_RemoteFcot-group; + description "Remote Fcot"; + } + + // Remote X2 fcot definition + container remotefcotx2-items { + + uses satm_RemoteFcotX2-group; + description "Remote X2 Fcot"; + } + } + + grouping satm_HostP-group { + description "Host Port"; + + // Interface ID of port + leaf id { config "false"; - type string; + + type nw_IfId; + description "ID"; } - leaf sensor11 { + + // Operational state + leaf operSt { config "false"; - type string; + + type satm_HpOperSt; + description "Operational State"; } - leaf sensor12 { + + // Fabric port + leaf fabricPort { config "false"; - type string; + + type nw_IfId; + description "Fabric Port"; } - leaf sensor13 { + } + + grouping satm_RemoteFcot-group { + description "Remote Fcot"; + leaf isFcotPresent { config "false"; - type string; + type boolean; + description "Presence Status"; } - leaf sensor14 { + + // Fcot state + leaf state { config "false"; - type string; + + type ethpm_FcotState; + description "State"; } - leaf sensor15 { + + // Fcot flags + leaf flags { config "false"; - type string; + + type ethpm_FcotFlags; + description "Flags"; } - leaf sensor16 { + + // Fcot type + leaf type { config "false"; - type string; + + type ethpm_FcotType; + description "Type"; } - leaf sensor17 { + leaf typeName { config "false"; type string; + description "Type Name"; } - leaf sensor18 { + leaf xcvrId { config "false"; - type string; + type uint8; + description "Transceiver ID"; } - leaf sensor19 { + leaf xcvrExtId { config "false"; - type string; + type uint8; + description "Transceiver Extended ID"; } - leaf sensor20 { + leaf connectType { config "false"; - type string; + type uint8; + description "Connector Type"; } - leaf sensor21 { + + // Xcvr code field + leaf xcvrCode { config "false"; - type string; + + type ethpm_SfpXcvrCodeBytes; + description "Transceiver Code"; } - leaf sensor22 { + leaf encoding { config "false"; - type string; + type uint8; + description "Encoding"; } - leaf sensor23 { + leaf brIn100MHz { config "false"; - type string; + type uint8; + description "Baud Rate"; } - leaf sensor24 { + leaf baseResvd1 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor25 { + leaf distInKmFor9u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor26 { + leaf distIn100mFor9u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor27 { + leaf distIn10mFor50u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor28 { + leaf distIn10mFor60u { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor29 { + leaf distIn1mForCu { config "false"; - type string; + type uint8; + description "Distance"; } - leaf sensor30 { + leaf baseResvd2 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor31 { + leaf vendorName { config "false"; type string; + description "Vendor Name"; } - leaf sensor32 { + leaf baseResvd3 { config "false"; - type string; + type uint8; + description "Base Reserved Field"; } - leaf sensor33 { + leaf vendorPn { config "false"; type string; + description "Vendor Part Number"; } - leaf sensor34 { + leaf vendorRev { config "false"; type string; + description "Vendor Revision"; } - leaf sensor35 { + + // Reserved field 4 + leaf baseResvd4 { config "false"; - type string; + + type ethpm_SfpReserved4Array; + description "Base Reserved Field"; } - leaf sensor36 { + leaf ccid { config "false"; - type string; + type uint8; + description "CCID"; } - leaf sensor37 { + + // Extended option + leaf extOption { config "false"; - type string; + + type ethpm_SfpExtendedOptionBytes; + description "Extended Option"; } - leaf sensor38 { + leaf brMaxMargin { config "false"; - type string; + type uint8; + description "Baud Rate Maximum Margin"; } - leaf sensor39 { + leaf brMinMargin { config "false"; - type string; + type uint8; + description "Baud Rate Minimum Margin"; } - leaf sensor40 { + leaf vendorSn { config "false"; type string; } - leaf sig { + leaf dateCode { config "false"; - type uint16; + type string; } - leaf ver { + leaf diagMonType { config "false"; - type uint16; + type uint8; } - leaf len { + leaf enhOption { config "false"; - type uint16; + type uint8; } - leaf cksum { + leaf ccex { config "false"; - type uint16; + type uint8; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + // Vendor data + leaf vendorData { + config "false"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + type ethpm_X2VendorDataBytes; + description "TBD"; } - } - - grouping eqpt_Asic-group { - - // Type of asic - // Type is an MO-Defined-Type - leaf type { + leaf maxSpeed { config "false"; - description "The Asic type"; - - // Type is an MO-Defined-Type - type eqpt_AsicT; + type uint32; } - - // Asic status - // Type is an MO-Defined-Type - leaf operSt { + leaf minSpeed { config "false"; - description "The Asic operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint32; } - - // Asic numSlices - // Type is an MO-Defined-Type - leaf numSlices { + leaf fcotNum { config "false"; - description "The number of slices in this Asic"; - - // Type is an MO-Defined-Type - type eqpt_AsicNumSlices; + type uint8; } - - // Asic Capability - // Type is an MO-Defined-Type - leaf capabilities { + leaf gigEthCC { config "false"; - description "The Asic capabilities"; - - // Type is an MO-Defined-Type - type eqpt_AsicCapability; + type uint8; } - - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Asic->id - // Type is an MO-Defined-Type - leaf id { + leaf fCTxType { config "false"; - description "The Asic identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type uint8; } + } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + grouping satm_RemoteFcotX2-group { + description "Remote X2 Fcot"; + leaf isFcotPresent { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type boolean; + description "Presence Status"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Fcot state + leaf state { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type ethpm_FcotState; + description "State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Fcot flags + leaf flags { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type ethpm_FcotFlags; + description "Flags"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Fcot type + leaf type { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type ethpm_FcotType; + description "Type"; } - leaf mfgTm { + leaf typeName { config "false"; type string; - default "0"; - } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + description "Type Name"; } - } - - grouping eqpt_CPU-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ACPU->id - // Type is an MO-Defined-Type - leaf id { + leaf connectType { config "false"; - description "The CPU identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1"; - } + type uint8; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + leaf bitEncoding { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint8; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Bit rate (Mbps) + leaf bitRateMbps { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type ethpm_X2BitRateBytes; + description "TBD"; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf protocolType { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint8; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // 10G eth code + leaf xgEthCode { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { - config "false"; - type string; - default "0"; + type ethpm_X2XgEthCodeBytes; + description "TBD"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Sonet SDH code + leaf sonetSdhCode { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ethpm_X2SonetSdhCodeBytes; + description "TBD"; } - // Socket designation - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf sock { + // 10G fc code + leaf xgFcCode { config "false"; - description "The CPU socket designation"; - // Type is an MO-Defined-Type - type eqpt_Sock; + type ethpm_X2XbFcCodeBytes; + description "TBD"; } - // Architecture of the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf arch { + // Range + leaf range { config "false"; - description "The CPU architecture"; - // Type is a Local-MO-Defined-Type - type eqpt_Arch_CPU_arch; + type ethpm_X2RangeBytes; + description "TBD"; } - // CPU speed - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf speed { + // Fibre type + leaf fibreType { config "false"; - description "The CPU Speed in Giga Hz"; - // Type is an MO-Defined-Type - type eqpt_Speed; + type ethpm_X2FibreTypeBytes; + description "TBD"; } - // Number of cores on the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf cores { + // Wavelength channel 0 + leaf waveLenCh0 { config "false"; - description "The number of cores within the CPU"; - // Type is an MO-Defined-Type - type eqpt_Cores; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - // Number of cores enabled on the CPU - // Inherited From eqpt:ACPU - // Type is an MO-Defined-Type - leaf coresEn { - config "false"; - description "The number of cores enabled within the CPU"; - - // Type is an MO-Defined-Type - type eqpt_Cores; - } - leaf thrds { + // Wavelength channel 1 + leaf waveLenCh1 { config "false"; - type uint16; - } - container core-items { - list Core-list { - config "false"; - key "id"; - // Added containment: Prefix=core - // Acquired From Package eqpt - uses eqpt_Core-group; - } + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - } - grouping eqpt_Core-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Wavelength channel 2 + leaf waveLenCh2 { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Wavelength channel 3 + leaf waveLenCh3 { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type ethpm_X2WavelengthChannelBytes; + description "TBD"; } - - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + leaf vendorName { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type string; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf vendorPn { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type string; } - - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + leaf vendorRev { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type string; } - leaf mfgTm { + leaf vendorSerNo { config "false"; type string; - default "0"; } - - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + leaf dateCode { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type string; } - } - - grouping eqpt_Dimm-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + leaf fiveVStressEnv { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint8; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + leaf ciscoPid { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type string; } - - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + leaf ciscoVid { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type string; } - - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + leaf ciscoSN { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type string; } - - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + leaf ciscoPN { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type string; } - leaf mfgTm { + leaf ciscoRev { config "false"; type string; - default "0"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Extended vendor specific info + leaf extVendorSpecific { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type ethpm_X2ExtendedVendorSpecificInfoBytes; + description "TBD"; } - - // Type of the memory - // Inherited From eqpt:Mem - // Modified by Override: eqpt:Dimm->type - // Type is an MO-Defined-Type - leaf type { + leaf maxSpeed { config "false"; - description "The dual in-line memory module(DIMM) type"; - - // Type is an MO-Defined-Type - type eqpt_MemT; + type uint32; } - - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + leaf minSpeed { config "false"; - description "The memory capacity"; - - // Type is an MO-Defined-Type - type eqpt_Capacity; + type uint32; } - - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + leaf fcotNum { config "false"; - description "The memory access type"; - - // Type is an MO-Defined-Type - type eqpt_Acc; + type uint8; } - - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + leaf fcotType { config "false"; - description "The memory operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint8; + } + leaf gigEthCC { + config "false"; + type uint8; } } - grouping eqpt_Flash-group { + grouping adjacency_Entity-group { + description "Adjacency Entity"; - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_AdminSt; + description "Admin State"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Operational state + leaf operSt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_EntOperSt; + description "Operational State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + container inst-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses adjacency_Inst-group; + description "Adjacency Instance"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping adjacency_Inst-group { + description "Adjacency Instance"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { + leaf name { config "false"; - type string; - default "0"; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Administrative state + leaf adminSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Type of the memory - // Inherited From eqpt:Mem - // Modified by Override: eqpt:Flash->type - // Type is an MO-Defined-Type - leaf type { + // Instance controls + leaf ctrl { config "false"; - description "The flash memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_InstCtrl; + description "Controls"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The memory capacity"; + // Ephemeral data + container dom-items { - // Type is an MO-Defined-Type - type eqpt_Capacity; + // Ephemeral data + list Dom-list { + config "false"; + key "name"; + + uses adjacency_Dom-group; + description "Adjacency Domain list"; + } + description "Adjacency Domain"; } + } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + grouping adjacency_Dom-group { + description "Adjacency Domain"; + + // Ephemeral data + leaf name { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The memory operational status"; + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses adjacency_Db-group; + description "Database list"; + } + description "Database"; } } - grouping eqpt_Obfl-group { + grouping adjacency_Db-group { + description "Database"; - // Set the obfl log parameters - // Type is an MO-Defined-Type - leaf logT { + // Ephemeral data + leaf type { config "false"; - description "Log Type"; - // Type is an MO-Defined-Type - type eqpt_LogType; + type adjacency_DbT; + description "Type"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf name { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // Ephemeral data + container if-items { - // Type is an MO-Defined-Type - type eqpt_Vendor; + // Ephemeral data + list If-list { + config "false"; + key "ifId"; + + uses adjacency_If-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Ephemeral data + container subnetprefix-items { - // Type is an MO-Defined-Type - type eqpt_Model; + uses adjacency_SubnetPrefix-group; + description "Subnet Prefix"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // Ephemeral data + container aggrprefix-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses adjacency_AggregatePrefix-group; + description "Aggregate Prefix"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping adjacency_If-group { + description "Adjacency Interface"; - // Type is an MO-Defined-Type - type eqpt_Serial; - } - leaf mfgTm { + // Ephemeral data + leaf ifId { config "false"; - type string; - default "0"; + + type nw_IfId; + description "Logical Interface ID"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Ephemeral data + container ip-items { - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + list AdjEp-list { + config "false"; + key "ip"; + + uses adjacency_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } } - grouping eqpt_LCSlot-group { - leaf purgeCfg { + grouping adjacency_AdjEp-group { + description "Adjacency"; + leaf ip { config "false"; - type boolean; + type address_Ip; + description "Address"; } - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { + // Ephemeral data + leaf mac { config "false"; - description "Poweroff Config"; - - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + type address_Mac; + description "MAC"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf operSt { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type adjacency_AdjOperSt; + description "Operational State"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf physIfId { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_IfId; + description "Physical Interface ID"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf source { config "false"; - description "The physical slot identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type string; + description "Source"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:LCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Flags that this ep has + // Ephemeral data + leaf flags { config "false"; - description "The type of line card slot"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type adjacency_AdjFlags; + description "Flags"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + grouping adjacency_SubnetPrefix-group { + description "Subnet Prefix"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + // Ephemeral data + container if-items { + + // Ephemeral data + list IfSubnetPrfx-list { + config "false"; + key "ifId"; + + uses adjacency_IfSubnetPrfx-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } + } - // Line Card (IO card), containing io ports - container lc-items { + grouping adjacency_IfSubnetPrfx-group { + description "Adjacency Interface"; - // Added containment as a singleton: Prefix=lc - // Acquired From Package eqpt - uses eqpt_LC-group; + // Ephemeral data + leaf ifId { + config "false"; + + type nw_IfId; + description "Logical Interface ID"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - container rtoosSlot-items { + // Ephemeral data + container ip-items { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + list SubPrfxEp-list { + config "false"; + key "ip"; + + uses adjacency_SubPrfxEp-group; + description "Subnet Prefix list"; + } + description "Subnet Prefix"; } } - // Has Polymorphic containment of abstract object eqpt:IoP - grouping eqpt_LC-group { - leaf breakoutFactor { + grouping adjacency_SubPrfxEp-group { + description "Subnet Prefix"; + leaf ip { config "false"; - type uint32; - default "1"; + type address_Ip; + description "Address"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf aggLen { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "Aggregate Length"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf nhCount { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "nh count"; } + } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + grouping adjacency_AggregatePrefix-group { + description "Aggregate Prefix"; - // Type is an MO-Defined-Type - type eqpt_Model; + // Ephemeral data + container if-items { + + // Ephemeral data + list IfAggrPrfx-list { + config "false"; + key "ifId"; + + uses adjacency_IfAggrPrfx-group; + description "Adjacency Interface list"; + } + description "Adjacency Interface"; } + } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + grouping adjacency_IfAggrPrfx-group { + description "Adjacency Interface"; + + // Ephemeral data + leaf ifId { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_IfId; + description "Logical Interface ID"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + // Ephemeral data + container ip-items { - // Type is an MO-Defined-Type - type eqpt_Serial; + // Ephemeral data + list AggrPrfxEp-list { + config "false"; + key "ip"; + + uses adjacency_AggrPrfxEp-group; + description "Subnet Prefix list"; + } + description "Subnet Prefix"; } - leaf mfgTm { + } + + grouping adjacency_AggrPrfxEp-group { + description "Subnet Prefix"; + leaf ip { config "false"; - type string; - default "0"; + type address_Ip; + description "Address"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf refCount { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Reference count"; } + } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; + grouping arp_Entity-group { + description "ARP Entity"; - // Type is an MO-Defined-Type - type cap_Version; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:LC->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_AdminSt; + description "Admin State"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "The card operational status"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + type nw_EntOperSt; + description "Operational State"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // This object holds per arp instance information. There is + // only one instance of arp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type eqpt_CardId; + uses arp_Inst-group; + description "ARP Instance"; } + } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + grouping arp_Inst-group { + description "ARP Instance"; - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Timeout + leaf timeout { + + type arp_Timeout; + description "ARP Global Timeout"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { - config "false"; - description "The card MAC address base"; + // Evpn-Timeout + leaf evpn_timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type arp_EvpnTimeout; + description "Refresh in EVPN on host moves"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // Suppression Timeout + leaf suppression_timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; - } - leaf upTs { - config "false"; - type string; + type arp_SuppressionTimeout; + description "Suppression Timeout"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + // Off list Timeout + leaf offListTimeout { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type arp_OffListTimeout; + description "Off-list timeout"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + // RARP fabric forwarding + leaf rarpFabricFwding { - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_AdminSt; + default "disabled"; + description "RARP Fabric Forwarding"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // RARP Fabric Fwding Rate + leaf rarpFabricFwdingRate { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type arp_RarpForwadingRate; + description "RARP Fabric Forwarding Rate"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // ARP Cache Limit + leaf cacheLimit { - // Type is an MO-Defined-Type - type eqpt_ModVid; + type arp_ArpCacheLimit; + description "Cache Limit"; } - // Information about each card firmware - container running-items { + // ARP Cache SysLog Rate + leaf cacheSyslogRate { - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + type arp_ArpCacheSyslogRate; + description "Cache Syslog Rate"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + // COS for ARP packet + leaf ipArpCos { - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type arp_IpArpCos; + description "COS for ARP packet"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; + // ARP Logging Level + leaf loggingLevel { - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + type arp_LoggingLevel; + description "Logging Level"; } - // Fabric facing external IO port - // Polymorphic containment of derivative object eqpt:FabP (from eqpt:IoP) - container fabport-items { + // Adjacency Manager Logging Level + leaf adjLoggingLevel { - // Abstract containment of eqpt:FabP derived from eqpt:IoP - list FabP-list { - config "false"; - key "id"; + type arp_LoggingLevel; + description "Adjacency Events Logging Level"; + } - // Added containment: Prefix=fabport - // Acquired From Package eqpt - uses eqpt_FabP-group; - } + leaf ipAdjRouteDistance { + + type arp_AdjRouteDist; + description "IP Adjacency Route Distance"; } - // Leaf (compute, WAN, services) facing external IO port - // Polymorphic containment of derivative object eqpt:LeafP (from eqpt:IoP) - container leafport-items { + // Enable / Disable allow-static-arp-outside-subnet + leaf allowStaticArpOutsideSubnet { - // Abstract containment of eqpt:LeafP derived from eqpt:IoP - list LeafP-list { - config "false"; - key "id"; + type nw_AdminSt; + default "disabled"; + description "Allow Static ARP Outside Subnet"; + } - // Added containment: Prefix=leafport - // Acquired From Package eqpt - uses eqpt_LeafP-group; - } + // Enable / Disable arp sw-replication + leaf arpUnnumSviSwReplication { + + type nw_AdminSt; + default "disabled"; + description "ARP Packets Replication In Software For Unnumbered SVI"; } - // Extension chassis port connected to hosts - // Polymorphic containment of derivative object eqpt:ExtChHP (from eqpt:IoP) - container hostextport-items { + // Config error in this MO + leaf configErr { + config "false"; - // Abstract containment of eqpt:ExtChHP derived from eqpt:IoP - list ExtChHP-list { - config "false"; - key "id"; + type arp_ConfigErrInst; + description "Config Error Inst"; + } - // Added containment: Prefix=hostextport - // Acquired From Package eqpt - uses eqpt_ExtChHP-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Extension chassis port connected to Leaf - // Polymorphic containment of derivative object eqpt:ExtChFP (from eqpt:IoP) - container leafextport-items { + // Administrative state + leaf adminSt { - // Abstract containment of eqpt:ExtChFP derived from eqpt:IoP - list ExtChFP-list { - config "false"; - key "id"; + type nw_AdminSt; + description "Admin State"; + } - // Added containment: Prefix=leafextport - // Acquired From Package eqpt - uses eqpt_ExtChFP-group; - } + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // Holds GlobalStats information + // Ephemeral data + container globalstats-items { - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + uses arp_GlobalStats-group; + description "Global Statistics"; } - // Sprom Linecard - container splc-items { + // This object holds the arp related statistics for L2 Interface + // Ephemeral data + container l2stats-items { - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + uses arp_L2Stats-group; + description "This Object Holds The ARP Related Statistics For L2 Interface"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // This object holds per ARP domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + uses arp_Dom-group; + description "This Object Holds Per ARP Domain (vrf) Information list"; } + description "This Object Holds Per ARP Domain (vrf) Information"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // IpV4 Glean throttling MO + container ipgleanthrottle-items { + + uses arp_Ipv4Throttle-group; + description "Ipv4 throttling"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + // This object holds the size of the Log Tables for + // various types of ARP events + container evtLogs-items { + list EventLogs-list { + key "eventType"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + uses arp_EventLogs-group; + description "ARP Event Logging list"; } + description "ARP Event Logging"; } - // Flash memory unit - container flash-items { + // This object holds IP ARP Sync for VPC + container vpc-items { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + uses arp_Vpc-group; + description "Ip Arp Synchronize"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Holds Suppression-cache table oper data + // Ephemeral data + container db-items { + + // Ephemeral data + list DbSupCache-list { + config "false"; + key "type"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + uses arp_DbSupCache-group; + description " This Object Holds Suppression-Cache Database list"; + } + description " This Object Holds Suppression-Cache Database"; } } - grouping eqpt_FabP-group { + grouping arp_GlobalStats-group { + description "Global Statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf name { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Administrative state + // Ephemeral data + leaf adminSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Instance controls + // Ephemeral data + leaf ctrl { config "false"; - description "The port type"; - // Type is an MO-Defined-Type - type eqpt_PortT; + type nw_InstCtrl; + description "Controls"; } - leaf speed { - config "false"; - type uint64; + + // Holds controller-statistics information + // Ephemeral data + container controllerstats-items { + + uses arp_ControllerStats-group; + description "ARP Controller Statistics"; } - // ***************** MOs ******************* MO to send Adj info to dbgrelem from policyelem - container remotePort-items { - list RemotePort-list { - config "false"; - key "lldpAdjEpInstId"; + // Holds VPC related statistics information + // Ephemeral data + container vpcstats-items { - // Added containment: Prefix=remotePort - // Acquired From Package dbg - uses dbg_RemotePort-group; - } + uses arp_VpcStats-group; + description "ARP VPC statistics"; } - } - grouping dbg_RemotePort-group { + // Holds Tunnel statistics information + // Ephemeral data + container tunnelstats-items { - // Neighbor port description - // Type is an MO-Defined-Type - leaf remotePortDesc { - config "false"; - description "Description of the Remote Port"; + uses arp_TunnelStats-group; + description "ARP Tunnel statistics"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Holds Suppression-cache related statistics + // Ephemeral data + container supcachestats-items { + + uses arp_SupCacheStats-group; + description "ARP suppression cache statistics"; } - // Neighbor system description - // Type is an MO-Defined-Type - leaf remoteSysDesc { - config "false"; - description "Description of the Remote System"; + // Holds open-flow error statistics + // Ephemeral data + container ofastats-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses arp_OfaStats-group; + description "ARP Open-flow Error statistics"; } - leaf remoteIp { + } + + grouping arp_ControllerStats-group { + description "ARP Controller Statistics"; + + // Ephemeral data + leaf adjAddCount { config "false"; - type address_Ip; + type uint64; + description "ARP Controller Adjacency Add Count"; } - // Local Interface ID of the port - // Type is an MO-Defined-Type - leaf LocalIfid { + // Ephemeral data + leaf adjDelCount { config "false"; - description "Interface ID of the Local Port"; + type uint64; + description "ARP Controller Adjacency Delete Count"; + } - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf adjAddErrorCount { + config "false"; + type uint64; + description "ARP Controller Adjacency Add Error Count"; } - leaf lldpAdjEpInstId { + + // Ephemeral data + leaf adjDelErrorCount { config "false"; - type string; + type uint64; + description "ARP Controller Adjacency Delete Error Count"; } } - grouping eqpt_LeafP-group { + grouping arp_VpcStats-group { + description "ARP VPC statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf cfsPullDropSinceOff { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type uint64; + description "CFS request dropped as feature is off"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cfsPushDropSinceOff { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "CFS push message drop as the feature is off"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf sendIgnorePullReqCfsoe { config "false"; - description "The port type"; + type uint64; + description "Ignore to send pull request using CFSoE as the feature is off"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf sendIgnorePushMsgCfsoe { + config "false"; + type uint64; + description "Ignore to send push message using CFSoE as the feature is off"; } - leaf speed { + + // Ephemeral data + leaf imFailCFSPayload { config "false"; type uint64; + description "IM api failed while processing CFS payload"; } - } - grouping eqpt_ExtChHP-group { + // Ephemeral data + leaf mcecmFailCFSPayload { + config "false"; + type uint64; + description "MCECM api failed while processing CFS payload"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf invalidMctPcCFSPayload { config "false"; - description "ID"; + type uint64; + description "Invalid MCT port-channel iod while processing CFS payload"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf ptLookFailCFSPayload { + config "false"; + type uint64; + description "PT lookup failed while processing CFS payload"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cfsRspFailInvalidMct { config "false"; - description "Description"; + type uint64; + description "Sending CFS response failed due to invalid MCT iod while processing CFS payload"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf cfsRspFailCfsPayload { + config "false"; + type uint64; + description "Sending CFS response failed while processing CFS payload"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf retrieveVpcFailPushMsg { config "false"; - description "The port type"; + type uint64; + description "Unabled to retrieve VPC id from ifindex while sending push message"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf retIfindexFrmVpcFail { + config "false"; + type uint64; + description "Unabled to retrieve ifindex from vpc id while processing CFS payload"; } - leaf speed { + + // Ephemeral data + leaf retIfindexFrmVpcFailSync { config "false"; type uint64; + description "Unabled to retrieve VPC id from ifindex while doing periodic sync"; } - } - grouping eqpt_ExtChFP-group { + // Ephemeral data + leaf rspSentCfsoe { + config "false"; + type uint64; + description "Response sent via CFSoE"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf rspRecvCfsoe { config "false"; - description "ID"; + type uint64; + description "Response received via CFSoE"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf rspRecvCfsoeErr { + config "false"; + type uint64; + description "Response received via CFSoE with errors"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf recvCfsoe { config "false"; - description "Description"; + type uint64; + description "Received message via CFSoE"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf sentFailCfsoe { + config "false"; + type uint64; + description "Send message failed via CFSoE"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf mcecmSendApiFailCfsoe { config "false"; - description "The port type"; + type uint64; + description "MCECM send api failed via CFSoE"; + } - // Type is an MO-Defined-Type - type eqpt_PortT; + // Ephemeral data + leaf sendCfsoe { + config "false"; + type uint64; + description "Send message succeeded via CFSoE"; } - leaf speed { + + // Ephemeral data + leaf vmctPktDropCount { config "false"; type uint64; + description "Total virtual-mct packets dropped"; + } + + // Holds VPC SYNC related statistics + // Ephemeral data + container syncstats-items { + + uses arp_VpcSyncStats-group; + description "ARP VPC Sync statistics"; } } - grouping eqpt_SpromLc-group { + grouping arp_VpcSyncStats-group { + description "ARP VPC Sync statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf ptAddFailOfflist { config "false"; - description "The sprom identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type uint64; + description "PT add failed while processing offlist"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf mallocFailOfflistDb { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; + description "Memory alloc failed while processing offlist database"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf timerCreateFailOfflistDb { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Timer create failed while processing offlist database"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf adjAddFailOfflistDb { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description "Adjacency addition failed while processing offlist database"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf ptLookupFailOfflistDb { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "PT lookup failed while processing offlist database"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf vlanMismatchOfflistDb { config "false"; - description "The memory type"; - - // Type is an MO-Defined-Type - type eqpt_MemT; + type uint64; + description "VLAN mismatch while processing offlist database"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // Ephemeral data + leaf invalidSviOfflistDb { config "false"; - description "The memory capacity"; - - // Type is an MO-Defined-Type - type eqpt_Capacity; + type uint64; + description "SVI is invalid while processing offlist database"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // Ephemeral data + leaf sviDownOfflistDb { config "false"; - description "The memory access type"; - - // Type is an MO-Defined-Type - type eqpt_Acc; + type uint64; + description "SVI is down while processing offlist database"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf mctDownOfflistDb { config "false"; - description "The memory operational status"; - - // Type is an MO-Defined-Type - type eqpt_OpSt; + type uint64; + description "MCT is down while processing offlist database"; } - leaf numBlk { + + // Ephemeral data + leaf ctxTypeInvalidOfflistDb { config "false"; - type uint16; + type uint64; + description "Context type is invalid while processing offlist database"; } - // sprom Common Block - container spcmn-items { - - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + // Ephemeral data + leaf vrfInvalidOfflistDb { + config "false"; + type uint64; + description "VRF is invalid while processing offlist database"; } - // Sprom Linecard block - container splcblk-items { + // Ephemeral data + leaf invalidIpOfflistDb { + config "false"; + type uint64; + description "IP address is invalid while processing offlist database"; + } - // Added containment as a singleton: Prefix=splcblk - // Acquired From Package eqpt - uses eqpt_SpromLcBlk-group; + // Ephemeral data + leaf ipSanityFailOfflistDb { + config "false"; + type uint64; + description "IP address sanity failed while processing offlist database"; } - // sprom Port Data Interface - container sppd-items { + // Ephemeral data + leaf macSanityFailOfflistDb { + config "false"; + type uint64; + description "MAC address sanity failed while processing offlist database"; + } - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Ephemeral data + leaf ownRouterMacOfflistDb { + config "false"; + type uint64; + description "Our own router mac while processing offlist database"; } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + // Ephemeral data + leaf ownIpOfflistDb { + config "false"; + type uint64; + description "Our own ip address while processing offlist database"; + } - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + // Ephemeral data + leaf ownvIpOfflistDb { + config "false"; + type uint64; + description "Our own virtual ip address while processing offlist database"; } - // Sprom Sensor block - container spsensorblk-items { + // Ephemeral data + leaf adjCreateFailOfflistDb { + config "false"; + type uint64; + description "Create adjacency failed while processing offlist database"; + } - // Added containment as a singleton: Prefix=spsensorblk - // Acquired From Package eqpt - uses eqpt_SpSensorBlk-group; + // Ephemeral data + leaf subnetMismatchOfflistDb { + config "false"; + type uint64; + description "Subnet mismatch while processing offlist database"; } - } - grouping eqpt_SpromLcBlk-group { - leaf fbits { + // Ephemeral data + leaf dupEntryOfflistDb { config "false"; type uint64; + description "Entry exists while processing offlist database"; } - leaf hwCBits { + + // Ephemeral data + leaf ipNotEnOfflistDb { config "false"; type uint64; + description "IP not enabled on interface while processing offlist database"; } - leaf crdIdx { + + // Ephemeral data + leaf totDropOfflistDb { config "false"; - type uint16; + type uint64; + description "Total drop count while processing offlist database"; } - leaf macB { + + // Ephemeral data + leaf totDontDropOfflistDb { config "false"; - type string; + type uint64; + description "Total don't drop count while processing offlist database"; } - leaf macL { + + // Ephemeral data + leaf totAdjAddOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacency additions in offlist database"; } - leaf eobcN { + + // Ephemeral data + leaf totAdjDelOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacency deletions in offlist database"; } - leaf epldN { + + // Ephemeral data + leaf totAdjIgnoredOfflistDb { config "false"; - type uint16; + type uint64; + description "Total adjacencies ignored as they already exists in offlist database"; } - leaf maxCPwr { + + // Ephemeral data + leaf totAdjFrmPeerToAdd { config "false"; - type uint16; + type uint64; + description "Total adjacencies received from the peer to add"; } - leaf coolRq { + + // Ephemeral data + leaf totAdjFrmPeerToDel { config "false"; - type uint16; + type uint64; + description "Total adjacencies received from the peer to delete"; } - leaf ambT { + + // Ephemeral data + leaf totAdjSentPeriodically { config "false"; - type uint16; + type uint64; + description "Total gross adjacencies sent periodically"; } - leaf sensor1 { + + // Ephemeral data + leaf totAdjPeerToAdd { config "false"; - type string; + type uint64; + description "Total adjacencies sent to the peer to add"; } - leaf sensor2 { + + // Ephemeral data + leaf totAdjPeerToDel { config "false"; - type string; + type uint64; + description "Total adjacencies sent to the peer to del"; } - leaf sensor3 { + + // Ephemeral data + leaf totPeriodicSyncAdj { config "false"; - type string; + type uint64; + description "Total periodic sync adjacencies"; } - leaf sensor4 { + + // Ephemeral data + leaf totAdjAddFailDuringSyncSend { config "false"; - type string; + type uint64; + description "Total no of failures in adding adjacenies while periodic sync send"; } - leaf sensor5 { + + // Ephemeral data + leaf totDropDuringSyncInvalidSvi { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of invalid svi"; } - leaf sensor6 { + + // Ephemeral data + leaf totDropSyncSviDown { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of svi being down"; } - leaf sensor7 { + + // Ephemeral data + leaf totDropSyncInvalidCtxt { config "false"; - type string; + type uint64; + description "Total no of drops during periodic sync because of invalid context"; } - leaf sensor8 { + + // Ephemeral data + leaf totDropSyncNullAdj { config "false"; - type string; + type uint64; + description "Total no of drops while processing sync because of NULL Adjacencies"; } - leaf sig { + + // Ephemeral data + leaf totDropSyncNullIp { config "false"; - type uint16; + type uint64; + description "Total no of drops while processing sync because of NULL IP"; } - leaf ver { + + // Ephemeral data + leaf totSyncAdjAddL2SupCache { config "false"; - type uint16; + type uint64; + description "Total periodic sync adjacencies added for L2 suppression case"; } - leaf len { + + // Ephemeral data + leaf totSyncStopBcastPkt { config "false"; - type uint16; + type uint64; + description "Total periodic sync broadcast packet stopped from syncing to peer"; } - leaf cksum { + + // Ephemeral data + leaf totVmctOrphanSyncDropCount { config "false"; - type uint16; + type uint64; + description "Total virtual-mct orphan hosts stopped from syncing to peer"; } + } - // sprom Sensor Data Interface - container spsd-items { - list SpSd-list { - config "false"; - key "id"; + grouping arp_TunnelStats-group { + description "ARP Tunnel statistics"; - // Added containment: Prefix=spsd - // Acquired From Package eqpt - uses eqpt_SpSd-group; - } + // Ephemeral data + leaf totTunnelRcvd { + config "false"; + type uint64; + description "Total tunneled packets received"; } - // sprom Port Data Interface - container sppd-items { + // Ephemeral data + leaf rxForIngressVpc { + config "false"; + type uint64; + description "Tunneled packets rx for ingress vPC"; + } - // Added containment as a singleton: Prefix=sppd - // Acquired From Package eqpt - uses eqpt_SpPd-group; + // Ephemeral data + leaf rxIngressforGpc { + config "false"; + type uint64; + description "Tunneled packets rx for ingress GPC"; } - } - grouping eqpt_FCSlot-group { + // Ephemeral data + leaf rxIngressOrphanVpc { + config "false"; + type uint64; + description "Tunneled Packets rx for ingress orphan vPC"; + } - // Poweroff config - // Type is an MO-Defined-Type - leaf poweroff { + // Ephemeral data + leaf rxIngressOrphanVpcPlus { config "false"; - description "Poweroff Config"; + type uint64; + description "Tunneled Packets rx for ingress orphan vPC+"; + } - // Type is an MO-Defined-Type - type eqpt_PoweroffSt; + // Ephemeral data + leaf totPackSent { + config "false"; + type uint64; + description "Total tunneled packets sent"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf pktSentArpSnoop { config "false"; - description "ID"; + type uint64; + description "Tunneled packets Sent for ARP Snoop"; + } - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + // Ephemeral data + leaf pktSentNonlocalVip { + config "false"; + type uint64; + description "Tunneled packets sent for Non-Local VIP"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf pktSentPeerGway { config "false"; - description "Description"; + type uint64; + description "Tunneled Packets sent for Peer Gateway"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf txIngressVpc { + config "false"; + type uint64; + description "Tunneled packets tx for ingress vPC"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf txIngressGpc { config "false"; - description "The physical slot identifier"; + type uint64; + description "Tunneled packets tx for ingress GPC"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + // Ephemeral data + leaf txIngressOrphanVpc { + config "false"; + type uint64; + description "Tunneled Packets tx for ingress orphan vPC"; + } + + // Ephemeral data + leaf txIngressOrphanVpcPlus { + config "false"; + type uint64; + description "Tunneled Packets tx for ingress orphan vPC+"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:FCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf totRecvDropped { config "false"; - description "The fabric card type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type uint64; + description "Total tunnel packets recv dropped"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf totSendDropped { config "false"; - description "The slot operational status"; - - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type uint64; + description "Total tunnel packets send dropped"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // Ephemeral data + leaf sendFailDrop { config "false"; - description "The location of the slot in the chassis"; - - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type uint64; + description "Drops due to send failed"; } - // Fabric Card, connecting different io cards - container fc-items { - - // Added containment as a singleton: Prefix=fc - // Acquired From Package eqpt - uses eqpt_FC-group; + // Ephemeral data + leaf rcvdInvalidVer { + config "false"; + type uint64; + description "Received packet with invalid version"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - container rtoosSlot-items { - - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + leaf rcvdInvalidPayloadType { + config "false"; + type uint64; + description "Received packet with invalid payload type"; } - } - - grouping eqpt_FC-group { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf rcvdMctIf { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Received packet on non mct interface"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf rcvdInvalidIngressPort { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Ephemeral data + leaf dropSentInvalidPort { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint64; + description "Drop send packets for invalid ingress port"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf dropRecvInvalidGpcCore { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Drop recv pkt, invalid GPC of core switch"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf dropRecvInvalidGpcPeer { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description "Drop recv pkt, invalid GPC of peer switch"; } - leaf mfgTm { + + // Ephemeral data + leaf dropRecvFailRetrieveGpc { config "false"; - type string; - default "0"; + type uint64; + description "Drop recv pkt, failed in retrieving the GPC"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf dropSendFailRetrieveGpc { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "Drop send pkt, failed in retrieving the GPC"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // Ephemeral data + leaf failRetrieveVpcId { config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + type uint64; + description "Failed to retrieve vPC ID while processing"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:FC->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf imApiFail { config "false"; - description "The card type"; - - // Type is an MO-Defined-Type - type eqpt_CardT; + type uint64; + description "IM api failed while processing"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf invalidContext { config "false"; - description "The card operational status"; + type uint64; + description "Invalid context while processing"; + } - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Ephemeral data + leaf dropMctDown { + config "false"; + type uint64; + description "Drop since MCT Down"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Ephemeral data + leaf recvDropMbufFail { config "false"; - description "The card software card identifier"; + type uint64; + description "Drop recv packets as mbuf operation failed"; + } - // Type is an MO-Defined-Type - type eqpt_CardId; + // Ephemeral data + leaf sendDropMbufFail { + config "false"; + type uint64; + description "Drop send packets as mbuf operation failed"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Ephemeral data + leaf tunnelFailed { config "false"; - description "The number of ports on the card"; + type uint64; + description "Cannot tunnel a incoming tunneled packet"; + } - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Ephemeral data + leaf tunnelFailCENetwork { + config "false"; + type uint64; + description "Cannot tunnel in a CE network"; } - leaf upTs { + leaf mcecmKeyNotFound { config "false"; - type string; + type uint64; + description "MCEC_ID to PHY_IF_INDEX not found in DB"; } + } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + grouping arp_SupCacheStats-group { + description "ARP suppression cache statistics"; - // Type is an MO-Defined-Type - type eqpt_PwrState; + // Ephemeral data + leaf requests { + config "false"; + type uint64; + description "Requests"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + // Ephemeral data + leaf requestsL2 { config "false"; - description "The card software revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "Requests on L2"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + // Ephemeral data + leaf gratuitous { config "false"; - description "The card part number"; - - // Type is an MO-Defined-Type - type eqpt_PartNum; + type uint64; + description "Gratuitous"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // Ephemeral data + leaf gratuitousL2 { config "false"; - description "The card vdrId"; - - // Type is an MO-Defined-Type - type eqpt_ModVid; + type uint64; + description "Gratuitous on L2"; } - // Information about each card firmware - container running-items { - - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + // Ephemeral data + leaf fwdRequestsL3 { + config "false"; + type uint64; + description "Forwarded Requests"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; - - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + // Ephemeral data + leaf fwdRepliesL3 { + config "false"; + type uint64; + description "Forwarded Replies"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; - } + // Ephemeral data + leaf fwdRequestOnCorePort { + config "false"; + type uint64; + description "Forwarded Request on core port"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { - config "false"; - key "id"; - - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; - } + // Ephemeral data + leaf fwdReplyOnCorePort { + config "false"; + type uint64; + description "Forwarded reply on core port"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; - - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + // Ephemeral data + leaf sentDrop { + config "false"; + type uint64; + description "Send drop"; } - // Sprom Linecard - container splc-items { - - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + // Ephemeral data + leaf sentReqL2 { + config "false"; + type uint64; + description "Sent Request L2"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; - - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + // Ephemeral data + leaf sentReplyL2 { + config "false"; + type uint64; + description "Sent reply L2"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // Ephemeral data + leaf sentReqCoreL2 { + config "false"; + type uint64; + description "Sent Req core L2"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; - - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Ephemeral data + leaf sentReplyCoreL2 { + config "false"; + type uint64; + description "Sent reply core L2"; } - // Flash memory unit - container flash-items { - - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + // Ephemeral data + leaf sentDropL2 { + config "false"; + type uint64; + description "Sent drop L2"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { - - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + // Ephemeral data + leaf recvReqL3 { + config "false"; + type uint64; + description "Receive req L3"; } - } - - grouping eqpt_SysCSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf recvReplyL3 { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type uint64; + description "Receive Reply L3"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf recvLocalReqL3 { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "Receive local req L3"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf recvLocalReplyL3 { config "false"; - description "The physical slot identifier"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Receive local reply L3"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:SysCSlot->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf recvGratArp { config "false"; - description "The system controller slot type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type uint64; + description "Receive grat ARP"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf recvDrop { config "false"; - description "The slot operational status"; - - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type uint64; + description "Receive drop"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // Ephemeral data + leaf recvRequestL2 { config "false"; - description "The location of the slot in the chassis"; + type uint64; + description "Receive request L2"; + } - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + // Ephemeral data + leaf recvReplyL2 { + config "false"; + type uint64; + description "Receive reply L2"; } - // System Controller Card - container sc-items { + // Ephemeral data + leaf recvGratArpL2 { + config "false"; + type uint64; + description "Receive grat ARP L2"; + } - // Added containment as a singleton: Prefix=sc - // Acquired From Package eqpt - uses eqpt_SysC-group; + // Ephemeral data + leaf recvDropL2 { + config "false"; + type uint64; + description "Receive drop L2"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - container rtoosSlot-items { + // Ephemeral data + leaf localEntryAdds { + config "false"; + type uint64; + description "Local entry adds"; + } - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + // Ephemeral data + leaf localEntryDel { + config "false"; + type uint64; + description "Local entry deletes"; } } - grouping eqpt_SysC-group { + grouping arp_OfaStats-group { + description "ARP Open-flow Error statistics"; - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf dpAdjErrDel { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type eqpt_Id; + type uint64; + description "Controller Deleting DP adjacency error"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Ephemeral data + leaf cpMacMismatchErrDel { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type uint64; + description "CP adjacency MAC mismatch error while delete"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Ephemeral data + leaf cpNullMacErrDel { config "false"; - description "Model"; - - // Type is an MO-Defined-Type - type eqpt_Model; + type uint64; + description "CP adjacency NULL mac error while delete"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Ephemeral data + leaf cpNoAdjErrDel { config "false"; - description "Revision"; - - // Type is an MO-Defined-Type - type eqpt_Revision; + type uint64; + description "No adjacency found while delete"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Ephemeral data + leaf cpCpNhMismatchErrDel { config "false"; - description "Serial Number"; - - // Type is an MO-Defined-Type - type eqpt_Serial; + type uint64; + description " CP adjacency NH mismatch error while delete"; } - leaf mfgTm { + + // Ephemeral data + leaf cpAdjDelFailureErr { config "false"; - type string; - default "0"; + type uint64; + description "Other errors"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Ephemeral data + leaf cpNullMacErrAdd { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type uint64; + description "CP adjacency NULL mac error while Adding"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // Ephemeral data + leaf cpDpMacMismatchErrAdd { config "false"; - description "Hardware Version"; - - // Type is an MO-Defined-Type - type cap_Version; + type uint64; + description "DP adjacency already present with different mac"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:SysC->type - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf cpCpMacMismatchErrAdd { config "false"; - description "The card type"; - - // Type is an MO-Defined-Type - type eqpt_CardT; + type uint64; + description "CP adjacency already present with different mac"; } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf cpAddFirstErr { config "false"; - description "The card operational status"; - - // Type is an MO-Defined-Type - type eqpt_COpSt; + type uint64; + description "CP adjacency added first"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { + // Ephemeral data + leaf dpOverwriteCpErr { config "false"; - description "The card redundancy state"; + type uint64; + description "Overwriting CP adjacency with DP"; + } - // Type is an MO-Defined-Type - type eqpt_RdSt; + // Ephemeral data + leaf dpCpNhMismatchErrAdd { + config "false"; + type uint64; + description "DP adjacency already present with different NH"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Ephemeral data + leaf cpCpNhMismatchErrAdd { config "false"; - description "The card software card identifier"; + type uint64; + description "CP adjacency already present with different NH"; + } - // Type is an MO-Defined-Type - type eqpt_CardId; + // Ephemeral data + leaf cpDpNhMismatchErrAdd { + config "false"; + type uint64; + description "Overwriting CP adj with DP with different NH"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Ephemeral data + leaf cpAdjAddFailureErr { config "false"; - description "The number of ports on the card"; + type uint64; + description "Other errors for Add"; + } - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + // Ephemeral data + leaf peerIPLookupRecPhyIod { + config "false"; + type uint64; + description "NVE Peer IP lookup for Rec Phy Iod"; } - leaf upTs { + + // Ephemeral data + leaf peerIPIPv6RecPhyIod { config "false"; - type string; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { + // Ephemeral data + leaf peerIPLookupAdjPhyIod { config "false"; - description "The power state of this card"; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; + } - // Type is an MO-Defined-Type - type eqpt_PwrState; + // Ephemeral data + leaf peerIPIPv6AdjPhyIod { + config "false"; + type uint64; + description "NVE Peer is IPv6 for Rec Phy Iod"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + // Ephemeral data + leaf barrierResponseErr { config "false"; - description "The card software revision"; + type uint64; + description "Barrier responses"; + } + } - // Type is an MO-Defined-Type - type eqpt_Revision; + grouping arp_L2Stats-group { + description "This Object Holds The ARP Related Statistics For L2 Interface"; + + // Ephemeral data + container if-items { + + // Ephemeral data + list L2If-list { + config "false"; + key "id"; + + uses arp_L2If-group; + description "ARP L2 Interface list"; + } + description "ARP L2 Interface"; } + } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + grouping arp_L2If-group { + description "ARP L2 Interface"; + + leaf id { config "false"; - description "The card part number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_IfId; + description "Interface ID"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // ARP_L2_PORT_STATS_RX_TOTAL + // Ephemeral data + leaf pktRecL2Int { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type nw_Counter32; + description "Packet Received on L2 interface"; } + } - // Information about each card firmware - container running-items { - - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_CardRunning-group; + grouping arp_Dom-group { + description "This Object Holds Per ARP Domain (vrf) Information"; + leaf encap { + type string; + description "Encapsulation"; } - // internal eobc (ethernet out of band channel) port - // (all card component management is done via this port) - container eobc-items { - list EobcP-list { - config "false"; - key "id"; + leaf name { - // Added containment: Prefix=eobc - // Acquired From Package eqpt - uses eqpt_EobcP-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // internal epc port - // (internal hi-gig links connecting the external io ports) - container epc-items { - list EpcP-list { + // ARP databases + // Ephemeral data + container db-items { + + // Ephemeral data + list Db-list { config "false"; - key "id"; + key "type"; - // Added containment: Prefix=epc - // Acquired From Package eqpt - uses eqpt_EpcP-group; + uses arp_Db-group; + description "Database list"; } + description "Database"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; + // This object holds arp information that is operated at a + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + uses arp_If-group; + description "ARP Interface list"; } + description "ARP Interface"; } + } - // Sprom Linecard - container splc-items { + grouping arp_Db-group { + description "Database"; - // Added containment as a singleton: Prefix=splc - // Acquired From Package eqpt - uses eqpt_SpromLc-group; + // Type of the repository + // Ephemeral data + leaf type { + config "false"; + + type arp_DbT; + description "Type"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + leaf name { + config "false"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container cpu-items { - list CPU-list { + + // Arp adjacency definitions + // Ephemeral data + container adj-items { + + // Ephemeral data + list AdjEp-list { config "false"; - key "id"; + key "ifId ip"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; + uses arp_AdjEp-group; + description "Adjacency list"; } + description "Adjacency"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping arp_AdjEp-group { + description "Adjacency"; + leaf ip { + config "false"; + type address_Ip; + description "Address"; + } - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + // Ephemeral data + leaf mac { + config "false"; + type address_Mac; + description "MAC"; + } + + // Ephemeral data + leaf upTS { + config "false"; + type union { + type string; + type uint64; } + description "ARP Entry Age"; } - // Flash memory unit - container flash-items { + // Logical interface that this ep is associated with + leaf ifId { + config "false"; - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type nw_IfId; + description "Logical Interface ID"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Operational state + // Ephemeral data + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type arp_AdjOperSt; + description "Operational State"; } - } - - grouping eqpt_PsuSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:PsuSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Physical interface that this ep is associated with + // Ephemeral data + leaf physIfId { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type nw_IfId; + description "Physical Interface ID"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Flags that this ep has + // Ephemeral data + leaf flags { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type arp_AdjFlags; + description "Flags"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + leaf name { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } + } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:PsuSlot->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The power supply slot type"; + grouping arp_If-group { + description "ARP Interface"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + // Timeout + leaf timeout { + + type arp_Timeout; + description "ARP Timeout"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // Gratuitous ARP request + leaf gratuitousRequest { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_AdminSt; + description "Gratuitous ARP Request"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // Gratuitous ARP Update + leaf gratuitousUpdate { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_AdminSt; + description "Gratuitous ARP Update"; } - // power supply slot - container psu-items { + // Gratuitous ARP HSRP Duplicate + leaf gratuitousHsrpDup { - // Added containment as a singleton: Prefix=psu - // Acquired From Package eqpt - uses eqpt_Psu-group; + type nw_AdminSt; + description "Gratuitous ARP HSRP Duplicate"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - container rtoosSlot-items { + // Proxy ARP + leaf proxyArp { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_AdminSt; + default "disabled"; + description "Proxy ARP"; } - } - grouping eqpt_Psu-group { + // Local Proxy ARP + leaf localProxyArp { - // Power supply status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The power supply unit operational status"; + type nw_AdminSt; + default "disabled"; + description "Local Proxy ARP"; + } - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Local Proxy ARP without HW Flooding + leaf localProxyArpNoHwFlood { + + type nw_AdminSt; + default "disabled"; + description "Local Proxy ARP w/o HW Flooding"; } - // Power supply capacity in Amps - // Type is an MO-Defined-Type - leaf cap { - config "false"; - description "The power supply unit capacity"; + // Delete adjacency on MAC delete without refresh + leaf deleteAdjOnMacDelete { - // Type is an MO-Defined-Type - type eqpt_Amps; + type nw_AdminSt; + default "disabled"; + description "Delete Adjacency On MAC Delete w/o Refresh"; } - // Actual drawn/output current in Amps - // Type is an MO-Defined-Type - leaf drawnCurr { - config "false"; - description "The power supply unit actual drawn/output current"; + // Set refresh timer for MAC delete adjacency request + leaf refreshTimerForMacDelete { - // Type is an MO-Defined-Type - type eqpt_Amps; + type arp_MacDelTimeout; + description "Set Refresh Timer For MAC Delete Adjacency"; } - // Power supply voltage source - // Type is an MO-Defined-Type - leaf vSrc { - config "false"; - description "The power supply unit voltage source"; + // Enable duplicate IP detection across VLANs for IP + // unnumbered SVIs + leaf duplicateIpDetectionForUnnumberedSvi { - // Type is an MO-Defined-Type - type eqpt_VSrc; + type nw_AdminSt; + default "disabled"; + description + "Enable Duplicate IP Detection Across VLANs for + IP Unnumbered SVIs"; } - // Power supply voltage - // Type is an MO-Defined-Type - leaf volt { + // Config error in this MO + leaf configError { config "false"; - description "The power supply unit voltage"; - // Type is an MO-Defined-Type - type eqpt_Volts; + type arp_ConfigErr; + description "Config Error"; } - // Power supply fan operational status - // Type is an MO-Defined-Type - leaf fanOpSt { - config "false"; - description "The power supply unit fan operational status"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Power supply fan air direction - // Type is an MO-Defined-Type - leaf fanDirection { - config "false"; - description "The power supply unit fan air direction"; + // Static arp adjacency definitions + container sadj-items { + list StAdjEp-list { + key "ip"; - // Type is an MO-Defined-Type - type eqpt_AirDir; + uses arp_StAdjEp-group; + description "ARP Static Adjacency list"; + } + description "ARP Static Adjacency"; } - // Actual Input current in Amps - // Type is an MO-Defined-Type - leaf inputCurr { - config "false"; - description "The power supply unit input current"; + // This object holds the arp if related tx statistics + // Ephemeral data + container ifstatstx-items { - // Type is an MO-Defined-Type - type eqpt_Amps; + uses arp_IfStatsTx-group; + description "This Object Holds The ARP Related Transmit Statistics For Interface"; } - // power supply VID - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // This object holds the arp if related rx statistics + // Ephemeral data + container ifstatsrx-items { - // Type is an MO-Defined-Type - type eqpt_ModVid; + uses arp_IfStatsRx-group; + description "This Object Holds the ARP Related Receive Statistics For the Interface"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // This object holds the arp if related adj statistics + // Ephemeral data + container ifstatsadj-items { - // Type is an MO-Defined-Type - type eqpt_Id; + uses arp_IfStatsAdj-group; + description "This Object Holds The ARP Related Adjacency Statistics For Interface"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // This object holds the arp if related misc statistics + // Ephemeral data + container ifstatsmisc-items { - // Type is an MO-Defined-Type - type eqpt_Vendor; + uses arp_IfStatsMisc-group; + description "This Object Holds The ARP Related Miscellaneous Statistics For Interface"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // This object holds the arp related Multihoming(MH) statistics + // Ephemeral data + container ifstatsmh-items { - // Type is an MO-Defined-Type - type eqpt_Model; + uses arp_IfStatsMH-group; + description "This Object Holds The ARP Related Multihoming(MH) Statistics For Interface"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + grouping arp_StAdjEp-group { + description "ARP Static Adjacency"; + + // Operational state + leaf operSt { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type arp_StAdjOperSt; + description "Operational State"; } - leaf mfgTm { + + // Operational state qualifier + leaf operStQual { config "false"; - type string; - default "0"; + + type arp_StAdjOperStQual; + description "Operational State Qualifier"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf ip { + type address_Ip; + description "Address"; + } + leaf mac { + type address_Mac; + description "MAC"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { - config "false"; - description "Hardware Version"; + container rtfvEpDefRefToStAdjEp-items { - // Type is an MO-Defined-Type - type cap_Version; + list RtFvEpDefRefToStAdjEp-list { + config "false"; + key "tDn"; + + uses fv_RtFvEpDefRefToStAdjEp_target-group; + } } } - grouping eqpt_FtSlot-group { + grouping arp_IfStatsTx-group { + description "This Object Holds The ARP Related Transmit Statistics For Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:FtSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_COUNT + // Ephemeral data + leaf pktSent { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..6"; - } + type nw_Counter32; + description "ARP Packet Send Total Count"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SEND_REQ_COUNT + // Ephemeral data + leaf pktSentReq { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Send Request Count"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // ARP_PKT_SEND_REPLY_COUNT + // Ephemeral data + leaf pktSentRsp { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Packet Send Reply Count"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:FtSlot->type - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_SEND_REQ_COUNT_L2 + // Ephemeral data + leaf pktSentReqL2 { config "false"; - description "The fan tray slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_Counter32; + description "ARP Packet Send Request Count On L2"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_SEND_REPLY_COUNT_L2 + // Ephemeral data + leaf pktSentRspL2 { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_Counter32; + description "ARP Packet Send Reply Count On L2"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // ARP_PKT_SEND_GRAT_REQ_COUNT + // Ephemeral data + leaf pktSentGratReq { config "false"; - description "The location of the slot in the chassis"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_Counter32; + description "ARP Packet Send Gratuitous Request Count"; } - // Represents an inventoried fan tray - container ft-items { + // ARP_PKT_SEND_TUNNEL_COUNT + // Ephemeral data + leaf pktSentTunnel { + config "false"; - // Added containment as a singleton: Prefix=ft - // Acquired From Package eqpt - uses eqpt_Ft-group; + type nw_Counter32; + description "ARP Packet Send Tunnel Count"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - container rtoosSlot-items { + // ARP_PKT_SEND_DROP_COUNT + // Ephemeral data + leaf pktSentDrop { + config "false"; - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_Counter32; + description "ARP Packet Send Drop Count"; } - } - grouping eqpt_Ft-group { + // ARP_PKT_SEND_SRVRPORT_COUNT + // Ephemeral data + leaf pktSendSrvPort { + config "false"; - // Fan tray operational status - // Type is an MO-Defined-Type - leaf operSt { + type nw_Counter32; + description "ARP Packet Send Server Port Count"; + } + + // ARP_PKT_SEND_FBRCPORT_COUNT + // Ephemeral data + leaf pktSendFbrcPort { config "false"; - description "The fan tray operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Send Fabric Port Count"; } - leaf fanName { + + // ARP_PKT_SEND_FIXUP_CORE_COUNT + // Ephemeral data + leaf pktSendFixupCore { config "false"; - type string; + + type nw_Counter32; + description "ARP Packet Send Fixup Core Count"; } - // power supply VID - // Type is an MO-Defined-Type - leaf vdrId { + // ARP_PKT_SEND_FIXUP_SERVER_COUNT + // Ephemeral data + leaf pktSendFixupServer { config "false"; - description "The fan vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type nw_Counter32; + description "ARP Packet Send Fixup Server Count"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Ft->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_FIXUP_RARP_COUNT + // Ephemeral data + leaf pktSendFixupRarp { config "false"; - description "The fan tray identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..4"; - } + type nw_Counter32; + description "ARP Packet Send Fixup Rarp Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_SEND_ANYCAST_GLEAN_COUNT + // Ephemeral data + leaf pktSendAnyCastGlean { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Send Anycast Glean Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_SEND_FAIL_INVALID_PKT_COUNT + // Ephemeral data + leaf pktSentFailInvPkt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Packet Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_SEND_FAIL_MBUF_OP_COUNT + // Ephemeral data + leaf pktSentFailMbufOp { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Send Fail Mbuf Operation Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_SEND_FAIL_NO_IFINDEX_COUNT + // Ephemeral data + leaf pktSentFailNoIfindex { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Ifindex Count"; } - leaf mfgTm { + + // ARP_PKT_SEND_FAIL_UNSUPPORTED_INT_COUNT + // Ephemeral data + leaf pktSentFailUnsupportedInt { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Packet Send Fail On Unsupported Interface Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SEND_FAIL_IM_DOWN_COUNT + // Ephemeral data + leaf pktSentFailImDown { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Send Fail On Interface Down Count"; } - // Hardware version for this fru - // Inherited From eqpt:Fru - // Type is an MO-Defined-Type - leaf hwVer { + // ARP_PKT_SEND_FAIL_INVALID_SRC_IP_COUNT + // Ephemeral data + leaf pktSentFailInvSrcIp { config "false"; - description "Hardware Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Source IP Count"; } - // Ejector information - container ej-items { - list Ejec-list { - config "false"; - key "id"; + // ARP_PKT_SEND_FAIL_INVALID_DEST_IP_COUNT + // Ephemeral data + leaf pktSentFailInvDstIp { + config "false"; - // Added containment: Prefix=ej - // Acquired From Package eqpt - uses eqpt_Ejec-group; - } + type nw_Counter32; + description "ARP Packet Send Fail Invalid Destination IP Count"; } - // Represents a fan in a fan tray - container fan-items { - list Fan-list { - config "false"; - key "id"; + // ARP_PKT_SEND_FAIL_OWN_IP_COUNT + // Ephemeral data + leaf pktSentFailOwnIp { + config "false"; - // Added containment: Prefix=fan - // Acquired From Package eqpt - uses eqpt_Fan-group; - } + type nw_Counter32; + description "ARP Packet Send Fail Own IP Count"; + } + + // ARP_PKT_SEND_FAIL_CONTEXT_NOT_CREATED_COUNT + // Ephemeral data + leaf pktSentFailCtxtNotCreated { + config "false"; + + type nw_Counter32; + description "ARP Packet Send Fail Context Not Created Count"; } - container spfan-items { + // ARP_PKT_SEND_FAIL_BAD_CONTEXT_ID_COUNT + // Ephemeral data + leaf pktSentFailBadCtxtId { + config "false"; - // Added containment as a singleton: Prefix=spfan - // Acquired From Package eqpt - uses eqpt_SpromFan-group; + type nw_Counter32; + description "ARP Packet Send Fail Bad Context Id Count"; } - } - grouping eqpt_Fan-group { + // ARP_PKT_SEND_FAIL_UNATTACHED_IP_COUNT + // Ephemeral data + leaf pktSentFailUnattachedIp { + config "false"; - // Fan operational status - // Type is an MO-Defined-Type - leaf operSt { + type nw_Counter32; + description "ARP Packet Send Fail Unattached IP Count"; + } + + // ARP_PKT_SEND_FAIL_ADJ_ADD_FAILURE_COUNT + // Ephemeral data + leaf pktSentFailAdjAddFailure { config "false"; - description "The fan operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Send Fail Adjacency Add Failure Count"; } - // Fan direction - // Type is an MO-Defined-Type - leaf dir { + // ARP_PKT_SEND_FAIL_NO_SRC_IP_COUNT + // Ephemeral data + leaf pktSentFailNoSrcIp { config "false"; - description "The fan air direction"; - // Type is an MO-Defined-Type - type eqpt_AirDir; + type nw_Counter32; + description "ARP Packet Send Fail No Source IP Count"; } - leaf speedInRpm { + + // ARP_PKT_SEND_FAIL_NO_MAC_COUNT + // Ephemeral data + leaf pktSentFailNoMac { config "false"; - type uint32; + + type nw_Counter32; + description "ARP Packet Send Fail No Mac Count"; } - leaf speedInPercent { + + // ARP_PKT_SEND_FAIL_CLIENT_ENQUEUE_FAILED_COUNT + // Ephemeral data + leaf pktSentFailClientEnqFailed { config "false"; - type uint32; + + type nw_Counter32; + description "ARP Packet Send Fail Client Enqueue Failed Count"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Fan->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_SEND_FAIL_PROXY_DEST_NOT_REACHABLE_COUNT + // Ephemeral data + leaf pktSentFailProxyDstNotRchbl { config "false"; - description "The fan identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..10"; - } + type nw_Counter32; + description "ARP Packet Send Fail Proxy Destination Not Reachable Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_DEST_NOT_REACHABLE_COUNT + // Ephemeral data + leaf pktSkipRespEnhancedProxyDestNotReach { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Skip Response Enhanced Proxy Destination Not Reachable Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_L2PORT_TRACK_COUNT + // Ephemeral data + leaf pktSkipRespEnhancedProxyL2portTrack { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Skip Response Enhanced Proxy L2 Port Track Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_SEND_FAIL_INVALID_LOCAL_PROXY_COUNT + // Ephemeral data + leaf pktSentFailInvLocalProxy { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Local Proxy Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_SEND_FAIL_INVALID_PROXY_COUNT + // Ephemeral data + leaf pktSentFailInvProxy { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Send Fail Invalid Proxy Count"; } - leaf mfgTm { + + // ARP_PKT_SEND_FAIL_VIP_GROUP_NOT_ACTIVE_COUNT + // Ephemeral data + leaf pktSentFailVipGroupNotActive { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Packet Send Fail VIP Group Not Active Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_SKIP_REFRESH_OVER_CORE_AND_FLOOD_TO_SERVER + // Ephemeral data + leaf pktRefreshFloodToServerSkipCore { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Refresh pkts flooded to the server but skipped over core Count"; } } - grouping eqpt_SpromFan-group { + grouping arp_IfStatsRx-group { + description "This Object Holds the ARP Related Receive Statistics For the Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_RECV_COUNT + // Ephemeral data + leaf pktRcvd { config "false"; - description "The sprom identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type nw_Counter32; + description "ARP Packet Received Total Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_RECV_REQ_COUNT + // Ephemeral data + leaf pktRcvdReq { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Received Request Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_RECV_REPLY_COUNT + // Ephemeral data + leaf pktRcvdRsp { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Received Reply Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_RECV_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdProxyArp { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Received Proxy ARP Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_RECV_LOCAL_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdLocalProxyArp { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Local Proxy ARP Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_RECV_ENHANCED_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyArp { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy ARP Count"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_RECV_ENHANCED_PROXY_ANYCAST_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyAnycastArp { config "false"; - description "The memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy Anycast ARP Count"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // ARP_PKT_RECV_ENHANCED_PROXY_L2PORT_TRACK_ARP_COUNT + // Ephemeral data + leaf pktRcvdEnhancedProxyL2portTrackArp { config "false"; - description "The memory capacity"; - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_Counter32; + description "ARP Packet Received Enhanced Proxy L2 Port Track ARP Count"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // ARP_PKT_RECV_SRVRPORT_COUNT + // Ephemeral data + leaf pktRcvdServerPort { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type nw_Counter32; + description "ARP Packet Received Server Port Count"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_RECV_REQ_COUNT_L2 + // Ephemeral data + leaf pktRcvdReqL2 { config "false"; - description "The memory operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; - } - leaf numBlk { - config "false"; - type uint16; + type nw_Counter32; + description "ARP Packet Received Request Count On L2"; } - // sprom Common Block - container spcmn-items { + // ARP_PKT_RECV_REPLY_COUNT_L2 + // Ephemeral data + leaf pktRcvdRspL2 { + config "false"; - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type nw_Counter32; + description "ARP Packet Received Reply Count On L2"; } - // Sprom FAN block - container spfanblk-items { + // ARP_PKT_RECV_TUNNEL_COUNT + // Ephemeral data + leaf pktRcvdTunnel { + config "false"; - // Added containment as a singleton: Prefix=spfanblk - // Acquired From Package eqpt - uses eqpt_SpromFanBlk-group; + type nw_Counter32; + description "ARP Packet Received Tunnel Count"; } - // Fan Serial Number - container spfansn-items { + // ARP_PKT_RECV_FASTPATH_COUNT + // Ephemeral data + leaf pktRcvdFastpath { + config "false"; - // Added containment as a singleton: Prefix=spfansn - // Acquired From Package eqpt - uses eqpt_SpromFanSN-group; + type nw_Counter32; + description "ARP Packet Received Fastpath Count"; } - } - grouping eqpt_SpromFanBlk-group { - leaf fbits { + // ARP_PKT_RECV_SNOOP_COUNT + // Ephemeral data + leaf pktRcvdSnoop { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Snoop Count"; } - leaf hwCBits { + + // ARP_PKT_RECV_DROP_COUNT + // Ephemeral data + leaf pktRcvdDrp { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Drop Count"; } - leaf stackMIB { + + // ARP_PKT_RECV_DROP_BAD_IF_COUNT + // Ephemeral data + leaf pktRcvdDrpBadIf { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Interface Count"; } - leaf coolCap { + + // ARP_PKT_RECV_DROP_BAD_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Length Count"; } - leaf ambTemp { + + // ARP_PKT_RECV_DROP_BAD_PROTO_COUNT + // Ephemeral data + leaf pktRcvdDrpBadProto { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Protocol Count"; } - leaf hpPwrCon { + + // ARP_PKT_RECV_DROP_BAD_HRD_TYPE + // Ephemeral data + leaf pktRcvdDropBadHrd { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Hardware Type Count"; } - leaf hpCoolCon { + + // ARP_PKT_RECV_DROP_BAD_L2ADDR_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadL2AddrLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Layer 2 Address Length Count"; } - leaf sig { + + // ARP_PKT_RECV_DROP_BAD_L3ADDR_LEN_COUNT + // Ephemeral data + leaf pktRcvdDrpBadL3AddrLen { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Bad Layer 3 Length Count"; } - leaf ver { + + // ARP_PKT_RECV_DROP_INVAL_SRC_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpInvalSrcIp { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Invalid Source IP Count"; } - leaf len { + + // ARP_PKT_RECV_DROP_DIR_BCAST_COUNT + // Ephemeral data + leaf pktRcvdDrpDirBcast { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Direct Broadcast Count"; } - leaf cksum { + + // ARP_PKT_RECV_DROP_INVAL_DST_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpInvalDstIp { config "false"; - type uint16; - } - } - grouping eqpt_SpromFanSN-group { + type nw_Counter32; + description "ARP Packet Received Drop Invalid Destination IP Count"; + } - // Serial Number - // Type is an MO-Defined-Type - leaf serNum { + // ARP_PKT_RECV_DROP_BAD_SRC_MAC_COUNT + // Ephemeral data + leaf pktRcvdDrpBadSrcMac { config "false"; - description "The sprom fan serial number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Drop Bad Source Mac Count"; } - leaf sig { + + // ARP_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf pktRcvdDrpOwnSrcMac { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Own Source Mac Count"; } - leaf ver { + + // ARP_PKT_RECV_DROP_OWN_SRC_IP_COUNT + // Ephemeral data + leaf pktRcvdDrpOwnSrcIp { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop Own Source IP Count"; } - leaf len { + + // ARP_PKT_RECV_DROP_ARP_IF_NO_MEM_COUNT + // Ephemeral data + leaf pktRcvdDrpArpIfNoMem { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop ARP Interface No Memory Count"; } - leaf cksum { + + // ARP_PKT_RECV_DROP_NOT_FOR_US_COUNT + // Ephemeral data + leaf pktRcvdDrpNotForUs { config "false"; - type uint16; - } - } - grouping eqpt_SpromBP-group { + type nw_Counter32; + description "ARP Packet Received Drop Not For Us Count"; + } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Sprom->id - // Type is an MO-Defined-Type - leaf id { + // ARP_PKT_RECV_LEARN_AND_DROP_NOT_FOR_US_COUNT + // Ephemeral data + leaf pktRcvdLearnAndDropNotForUs { config "false"; - description "The sprom identifier"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..100"; - } + type nw_Counter32; + description "ARP Packet Received Learn And Drop Not For Us Count"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_PKT_RECV_DROP_SUBNET_MISMATCH_COUNT + // Ephemeral data + leaf pktRcvdDrpSubnetMismatch { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Packet Received Drop Subnet Mismatch Count"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_PKT_RECV_DROP_NOT_INITIALIZED_COUNT + // Ephemeral data + leaf pktRcvdDrpNotInit { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Packet Received Drop Not Initialized Count"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_PKT_RECV_DROP_BAD_CONTEXT_COUNT + // Ephemeral data + leaf pktRcvdDrpBadCtxt { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Packet Received Drop Bad Context Count"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_PKT_RECV_DROP_CONTEXT_NOT_CREATED_COUNT + // Ephemeral data + leaf pktRcvdDrpCtxtNotCreated { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Packet Received Drop Context Not Created Count"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_PKT_RECV_DROP_L2_LOCAL_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdDrpL2LocalProxyArp { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Packet Received Drop L2 Local Proxy ARP Count"; } - // Type of the memory - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf type { + // ARP_PKT_RECV_DROP_L2_PURE_L2_PKT_COUNT + // Ephemeral data + leaf pktRcvdDrpL2PureL2Pkt { config "false"; - description "The memory type"; - // Type is an MO-Defined-Type - type eqpt_MemT; + type nw_Counter32; + description "ARP Packet Received Drop L2 Pure L2 Packet Count"; } - // capacity - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf cap { + // ARP_PKT_RECV_DROP_L2_PORT_UNTRUSTED_COUNT + // Ephemeral data + leaf pktRcvdDrpL2PrtUntrusted { config "false"; - description "The memory capacity"; - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_Counter32; + description "ARP Packet Received Drop L2 Port Untrusted Count"; } - // access: RO/RW - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf acc { + // ARP_PKT_RECV_DROP_STANDBY_FHRP_VIP_COUNT + // Ephemeral data + leaf pktRcvdDrpStdbyFhrpVip { config "false"; - description "The memory access type"; - // Type is an MO-Defined-Type - type eqpt_Acc; + type nw_Counter32; + description "ARP Packet Received Drop Standby FHRP VIP Count"; } - // Operational status - // Inherited From eqpt:Mem - // Type is an MO-Defined-Type - leaf operSt { + // ARP_PKT_RECV_DROP_GRAT_ON_PROXY_ARP_COUNT + // Ephemeral data + leaf pktRcvdDrpGratOnProxyArp { config "false"; - description "The memory operational status"; - // Type is an MO-Defined-Type - type eqpt_OpSt; + type nw_Counter32; + description "ARP Packet Received Drop Gratuitous On Proxy ARP Count"; } - leaf numBlk { + + // ARP_PKT_RECV_DROP_ARP_REQUEST_IGNORE_COUNT + // Ephemeral data + leaf pktRcvdDrpArpRequestIgnore { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Drop ARP Request Ignore Count"; } - // sprom Common Block - container spcmn-items { + // ARP_PKT_RECV_DROP_L2FM_QUERY_FAIL_COUNT + // Ephemeral data + leaf pktRcvdDrpL2FmQueryFail { + config "false"; - // Added containment as a singleton: Prefix=spcmn - // Acquired From Package eqpt - uses eqpt_SpCmnBlk-group; + type nw_Counter32; + description "ARP Packet Received Drop L2FM Query Fail Count"; } - // Sprom BP block - container spbpblk-items { + // ARP_PKT_RECV_DROP_TUNNEL_FAIL_COUNT + // Ephemeral data + leaf pktRcvdDrpTunnelFail { + config "false"; - // Added containment as a singleton: Prefix=spbpblk - // Acquired From Package eqpt - uses eqpt_SpromBPBlk-group; + type nw_Counter32; + description "ARP Packet Received Drop Tunnel Fail Count"; } - } - grouping eqpt_SpromBPBlk-group { - leaf fbits { + // ARP_PKT_RECV_DROP_RSP_ON_HSRP_STANDBY_HSRP_ACTIVE_VMAC + // Ephemeral data + leaf pktRcvdDrpRspOnHsrpStbyActiveVmac { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Drop Response On HSRP Standby With HSRP Active Vmac Count"; } - leaf hwCBits { + + // ARP_PKT_RECV_FAIL_IM_DOWN_COUNT + // Ephemeral data + leaf pktRcvdFailImDown { config "false"; - type uint64; + + type nw_Counter32; + description "ARP Packet Received Fail Interface Down Count"; } - leaf macB { + + // ARP_PKT_RECV_GLEAN_REQ_COUNT + // Ephemeral data + leaf pktRcvdGleanReqCount { config "false"; - type string; + + type nw_Counter32; + description "Glean Requests Received Count"; } - leaf macL { + + // ARP_PKT_REFRESH_REQUESTS_RECV_FROM_CLIENTS + // Ephemeral data + leaf pktRfrshReqRecFrmClients { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Packet Received Refresh requests from clients"; } - leaf stackMIB { + + // ARP_PKT_RECV_SIGNALS_FROM_L2RIB + // Ephemeral data + leaf pktRcvdSigFrmL2rib { config "false"; - type uint16; + + type nw_Counter32; + description "Number of Signals received from L2rib"; } - leaf oemEprise { + } + + grouping arp_IfStatsAdj-group { + description "This Object Holds The ARP Related Adjacency Statistics For Interface"; + + // ARP_ADJ_ADD_COUNT + // Ephemeral data + leaf adjAdd { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Add Count"; } - leaf oemMIB { + + // ARP_ADJ_DEL_COUNT + // Ephemeral data + leaf adjDel { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Delete Count"; } - leaf maxCPwr { + + // ARP_ADJ_TIMEOUT_COUNT + // Ephemeral data + leaf adjTimeout { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Adjacency Timeout Count"; } - leaf sig { + } + + grouping arp_IfStatsMisc-group { + description "This Object Holds The ARP Related Miscellaneous Statistics For Interface"; + + // ARP_CLIENT_MSG_COUNT + // Ephemeral data + leaf clientMsg { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Client Message Count"; } - leaf ver { + + // ARP_CLIENT_MSG_FAIL_COUNT + // Ephemeral data + leaf clientMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Client Message Fail Count"; } - leaf len { + + // ARP_IF_TIMEOUT_MSG_FAIL_COUNT + // Ephemeral data + leaf ifTimeoutMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Interface Timeout Message Fail Count"; } - leaf cksum { + + // ARP_IF_STATUS_MSG_FAIL_COUNT + // Ephemeral data + leaf ifStatusMsgFail { config "false"; - type uint16; + + type nw_Counter32; + description "ARP Interface Status Message Fail Count"; } } - grouping eqpt_BSlot-group { + grouping arp_IfStatsMH-group { + description "This Object Holds The ARP Related Multihoming(MH) Statistics For Interface"; - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // ARP_MH_PS_RECV_ADD_FROM_L2RIB + // Ephemeral data + leaf recvaddfrml2rib { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type nw_Counter32; + description "ARP Received Peer Sync Add From L2RIB"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // ARP_MH_PS_PROCESS_ADD_FROM_L2RIB + // Ephemeral data + leaf processaddfrml2rib { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Processed Peer Sync Add From L2RIB"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // ARP_MH_PS_RECV_DEL_FROM_L2RIB + // Ephemeral data + leaf recvdelfrml2rib { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Received Peer Sync Delete From L2RIB"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:BSlot->type - // Type is an MO-Defined-Type - leaf type { + // ARP_MH_PS_PROCESS_DEL_FROM_L2RIB + // Ephemeral data + leaf processdelfrml2rib { config "false"; - description "The slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_Counter32; + description "ARP Processed Peer Sync Delete From L2RIB"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { + // ARP_MH_PS_RECV_PC_SHUT_FROM_L2RIB + // Ephemeral data + leaf recvpcshutfrml2rib { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_Counter32; + description "ARP Received Port Channel Shut From L2RIB"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { + // ARP_MH_PS_PROCESS_PC_SHUT_FROM_L2RIB + // Ephemeral data + leaf processpcshutfrml2rib { config "false"; - description "The location of the slot in the chassis"; - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + type nw_Counter32; + description "ARP Processed Port Channel Shut From L2RIB"; } - // Board represents the motherboard of the Controller - container board-items { + // ARP_MH_PS_RECV_REMOTE_UPD_FROM_L2RIB + // Ephemeral data + leaf recvremoteupdfrml2rib { + config "false"; - // Added containment as a singleton: Prefix=board - // Acquired From Package eqpt - uses eqpt_Board-group; + type nw_Counter32; + description "ARP Received Remote Update From L2RIB"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - // Inherited From eqpt:BSlot - container rtoosSlot-items { + // ARP_MH_PS_PROCESS_REMOTE_UPD_FROM_L2RIB + // Ephemeral data + leaf processremoteupdfrml2rib { + config "false"; - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type nw_Counter32; + description "ARP Processed Remote Update From L2RIB"; } - } - - grouping eqpt_Board-group { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // ARP_MH_PS_ADD_ERR_INVALID_FLAGS + // Ephemeral data + leaf psadderrinvalidflags { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type nw_Counter32; + description "ARP Multihoming Add Error Invalid Flag"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // ARP_MH_PS_DEL_ERR_INVALID_FLAGS + // Ephemeral data + leaf psdelerrinvalidflags { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter32; + description "ARP Multihoming Delete Error Invalid Flag"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // ARP_MH_PS_ADD_ERR_INVALID_CURR_STATE + // Ephemeral data + leaf psadderrinvalidcurrstate { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter32; + description "ARP Multihoming Add Error Current State"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // ARP_MH_PS_DEL_ERR_INVALID_CURR_STATE + // Ephemeral data + leaf psdelerrinvalidcurrstate { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter32; + description "ARP Multihoming Delete Error Current State"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // ARP_MH_PS_DEL_ERR_MAC_MISMATCH + // Ephemeral data + leaf psdelerrmacmismatch { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Delete Mac Mismatch"; } - leaf mfgTm { + + // ARP_MH_PS_DEL_ERR_SEC_DEL_FROM_L2RIB + // Ephemeral data + leaf psdelerrsecdelfrml2rib { config "false"; - type string; - default "0"; + + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Second Delete From L2RIB"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // ARP_MH_PS_DEL_ERR_FOR_TL_ROUTE + // Ephemeral data + leaf psdelerrfortlroute { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "ARP Multihoming Error Peer Sync Delete For True Local Route"; } - // Type of card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf type { + // ARP_MH_TL_DEL_ERR_FOR_PSRO_ROUTE + // Ephemeral data + leaf tldelerrforpsroroute { config "false"; - description "The card type"; - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_Counter32; + description "ARP Multihoming Error True Local Delete For Peer Sync Re-originate Route"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + grouping arp_Ipv4Throttle-group { + description "Ipv4 throttling"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Enable / Disable glean throttling + leaf adminSt { + + type nw_AdminSt; + default "disabled"; + description "Glean throttle state"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // Threshold for syslog for number of packets hitting the entry + leaf syslog { - // Type is an MO-Defined-Type - type eqpt_CardId; + type arp_SyslogCnt; + description "Glean Throttle Syslog For Number Of Packets"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // Max throttle packets count. Crossing this threshold, + // packet will not be throttled for a particular adjacency + leaf maxPacket { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type arp_MaxPacket; + description "Glean throttle packet count"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // Timeout for throttle setting for a particular adjacency + leaf timeout { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type arp_ThrottleTimeout; + description "Ipv4 Glean Throttle Timeout"; } - leaf upTs { - config "false"; - type string; + } + + grouping arp_EventLogs-group { + description "ARP Event Logging"; + + // Event LogType + leaf eventType { + + type arp_EventType; + description "Sync Event Log Type"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + // Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type arp_EventLogSize; + description "Sync Event Log Size"; } + } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { - config "false"; - description "The card firmware revision"; + grouping arp_Vpc-group { + description "Ip Arp Synchronize"; - // Type is an MO-Defined-Type - type eqpt_Revision; + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system + container dom-items { + list VpcDom-list { + key "domainId"; + + uses arp_VpcDom-group; + description "VPC Domain list"; + } + description "VPC Domain"; } + } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + grouping arp_VpcDom-group { + description "VPC Domain"; - // Type is an MO-Defined-Type - type eqpt_Revision; + // VPC Domain ID + leaf domainId { + + type vpc_DomId; + description "TBD"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // Enable/Disable IP ARP SYNC + leaf arpSync { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_AdminSt; + default "disabled"; + description "IP ARP Sync"; } + } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + grouping arp_DbSupCache-group { + description " This Object Holds Suppression-Cache Database"; + + // Type of the repository + // Ephemeral data + leaf type { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type arp_DbT; + description "Database Type"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + leaf name { + config "false"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // ASIC information container - container asic-items { - list Asic-list { + // Holds Suppression-cache vlan related information + // Ephemeral data + container vlan-items { + + // Ephemeral data + list SupCacheVlan-list { config "false"; key "id"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; + uses arp_SupCacheVlan-group; + description "This Object Holds Suppression Cache Table Vlan list"; } + description "This Object Holds Suppression Cache Table Vlan"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; + } - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + grouping arp_SupCacheVlan-group { + description "This Object Holds Suppression Cache Table Vlan"; + + // vlan id + // Ephemeral data + leaf id { + config "false"; + + type stp_VlanId; + description "VLAN id"; } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + // Suppression ARP Mode + // Ephemeral data + leaf suppressArpMode { + config "false"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; + type arp_SuppressArpMode; + description "Suppression ARP mode"; + } + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Flash memory unit - container flash-items { + // - Admin state + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type nw_AdminSt; + description "Admin State"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type nw_EntOperSt; + description "Operational State"; } - } - grouping eqpt_NSlot-group { + // Holds suppression-cache entry information + // Ephemeral data + container ip-items { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Ephemeral data + list SupCacheEntry-list { + config "false"; + key "ip"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; + uses arp_SupCacheEntry-group; + description "This Object Holds Suppression Cache Entry list"; } + description "This Object Holds Suppression Cache Entry"; } + } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + grouping arp_SupCacheEntry-group { + description "This Object Holds Suppression Cache Entry"; + + // Ephemeral data + leaf ip { config "false"; - description "Description"; + type address_Ip; + description "IP Address"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // IRP Entry flags + // Ephemeral data + leaf flags { + config "false"; + + type arp_SupCacheFlag; + description "Flags"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Ephemeral data + leaf mac { config "false"; - description "The physical slot identifier"; + type address_Mac; + description "MAC Address"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + // Ephemeral data + leaf upTS { + config "false"; + type union { + type string; + type uint64; + } + description "ARP Entry Up Time"; } - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:NSlot->type - // Type is an MO-Defined-Type - leaf type { + // Physical Interface ID + // Ephemeral data + leaf phyid { config "false"; - description "The slot type"; - // Type is an MO-Defined-Type - type eqpt_SlotT; + type nw_IfId; + description "Physical Interface ID"; } + leaf remotevtepaddr { + config "false"; + type string; + description "Remote Vtep Address"; + } + } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type + grouping bfd_Entity-group { + description "BFD Entity"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; + } + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state leaf operSt { config "false"; - description "The slot operational status"; - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + type nw_EntOperSt; + description "Operational State"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // This objects hold per bfd instance information. + container inst-items { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + uses bfd_Inst-group; + description "BFD Instance"; } + } - // Nic represents the NIC Card - container nic-items { - list Nic-list { - config "false"; - key "id"; + grouping bfd_Inst-group { + description "BFD Instance"; - // Added containment: Prefix=nic - // Acquired From Package eqpt - uses eqpt_Nic-group; - } + // Loopback interface to be used for bfd echo frames + leaf echoIf { + + type nw_IfId; + description "Echo Interface to be used for BFD echo frames"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - // Inherited From eqpt:PsuSlot - // Inherited From eqpt:FtSlot - // Inherited From eqpt:BSlot - // Inherited From eqpt:NSlot - container rtoosSlot-items { + // Startup timer interval. + leaf startupIntvl { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + type bfd_StartupIntvl; + description "Startup timer Interval"; } - } - grouping eqpt_Nic-group { + // Slow mode timer interval. This is the interval at which + // BFD control packets are sent. + leaf slowIntvl { - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + type bfd_SlowIntvl; + description "Slow timer Interval"; + } - // Type is an MO-Defined-Type - type eqpt_Id; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_AdminSt; + description "Admin State"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_InstCtrl; + description "Controls"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // This object holds bfd interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type eqpt_Revision; + uses bfd_If-group; + description "BFD Interface list"; + } + description "BFD Interface"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + // This objects hold per address family bfd instance information + container af-items { + list InstAf-list { + key "type"; - // Type is an MO-Defined-Type - type eqpt_Serial; + uses bfd_InstAf-group; + description "Instance Address Family list"; + } + description "Instance Address Family"; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + // This objects hold Multihop bfd instance information + container mhop-items { + + uses bfd_Mhop-group; + description "Multihop Sessions"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // This object holds keepalive policy information + container ka-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses bfd_KaP-group; + description "Keepalive Policy information is held in this object"; } - // Type of card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The card type"; + // This object holds bfd session information + container session-items { + list Sess-list { + config "false"; + key "discr"; - // Type is an MO-Defined-Type - type eqpt_CardT; + uses bfd_Sess-group; + description "BFD Session list"; + } + description "BFD Session"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The card operational status"; + grouping bfd_If-group { + description "BFD Interface"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + // Enable/disable echo mode for interface + leaf echoAdminSt { + + type nw_AdminSt; + description "Echo Mode Admin State of BFD Interface"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { - config "false"; - description "The card software card identifier"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_CardId; + type bfd_IfControl; + description "Interface Controls"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { - config "false"; - description "The number of ports on the card"; + // BFD track-member-link + leaf trkMbrLnk { - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type bfd_TrkMbrLnk; + description "Track Member Link Enable Disable on bfd interface"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { - config "false"; - description "The card MAC address end"; + // BFD Start Time + leaf stTm { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_StTm; + description "BFD Start timeout"; } - leaf upTs { - config "false"; - type string; + leaf dst { + type address_Ipv4; + description "Destination IP Address"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { - config "false"; - description "The power state of this card"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_PwrState; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { - config "false"; - description "The card firmware revision"; + leaf descr { - // Type is an MO-Defined-Type - type eqpt_Revision; + type naming_Descr1024; + description "Description"; } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { - config "false"; - description "The card software revision"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { - config "false"; - description "The card part number"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type nw_IfAdminSt; + description "Admin State"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { - config "false"; - description "The card vdrId"; + // This object holds authentication policy information + container auth-items { - // Type is an MO-Defined-Type - type eqpt_ModVid; + uses bfd_AuthP-group; + description "Authentication Policy"; } - // External Ext Port for Controller - container eaport-items { - list ExtAP-list { - config "false"; - key "id"; + // This object holds per address family bfd interface information + container af-items { + list IfAf-list { + key "type"; - // Added containment: Prefix=eaport - // Acquired From Package eqpt - uses eqpt_ExtAP-group; + uses bfd_IfAf-group; + description "Interface Address Family list"; } + description "Interface Address Family"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // Neighbor MacEntry + container nbr-items { + list Nbr-list { + key "srcip destip"; - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; + uses bfd_Nbr-group; + description "Neighbor Entry list"; } + description "Neighbor Entry"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // This object holds interface keepalive policy information + container ifka-items { - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + uses bfd_IfKaP-group; + description "Interface Keepalive Policy"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping bfd_AuthP-group { + description "Authentication Policy"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Interop Attribute + leaf authInterop { + + type bfd_AuthInterop; + description "Auth Interop Enable Disable on BFD Interface"; } - // Flash memory unit - container flash-items { + // Authentication type + leaf type { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type bfd_AuthT; + description "Authentication Type of the BFD session"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Authentication key id + leaf keyId { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type bfd_AuthKeyId; + description "Authentication Key ID to be used in the BFD session"; } - } - grouping eqpt_ExtAP-group { + // Authentication Hex key Size + leaf hexKeySize { - // port status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + type bfd_AuthHexKeySize; + description "A property to indicate Authentication Hex Key Size"; + } - // Type is an MO-Defined-Type - type eqpt_OpSt; + // Authentication hex key + leaf hexKey { + + type bfd_AuthHexKey; + description "A property to indicate Authentication Hex Key for the BFD session"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Port->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Authentication key + leaf key { - // Type is an MO-Defined-Type - type eqpt_Id { - range "1..666"; - } + type bfd_AuthKey; + description "A property to indicate Authentication Key for the BFD session"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type naming_Descr; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Type of port - // Inherited From eqpt:Port - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The port type"; + leaf descr { - // Type is an MO-Defined-Type - type eqpt_PortT; + type naming_Descr; + description "Description of the specified attribute"; } } - grouping eqpt_Storage-group { + grouping bfd_IfAf-group { + description "Interface Address Family"; - // Type is an MO-Defined-Type - leaf fileSystem { - config "false"; - description "File System"; + // Enable/disable sessions for interface address family + leaf adminSt { - // Type is an MO-Defined-Type - type comp_DelimitedString; + type nw_AdminSt; + description "Admin State for Interface Address family"; } - // Type is an MO-Defined-Type - leaf blocks { - config "false"; - description "Blocks"; + // Enable/disable echo mode for interface address family + leaf echoAdminSt { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type nw_AdminSt; + description "Echo Mode Admin State for Interface Address family"; } - // Type is an MO-Defined-Type - leaf used { - config "false"; - description "Capacity Used"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_Capacity; + type bfd_IfControl; + description "Interface Controls"; } - // Type is an MO-Defined-Type - leaf available { - config "false"; - description "Capacity Available"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Capacity; - } - leaf capUtilized { - config "false"; - type uint8; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf mount { - config "false"; - description "Mounted On"; + // Type + leaf type { - // Type is an MO-Defined-Type - type comp_DelimitedString; + type bfd_AfT; + description "Type of the Address Family"; } - // port status - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + // This object holds authentication policy information + container auth-items { - // Type is an MO-Defined-Type - type eqpt_OpSt; + uses bfd_AuthP-group; + description "Authentication Policy"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // This object holds interface keepalive policy information + container ifka-items { - // Type is an MO-Defined-Type - type naming_Name; + uses bfd_IfKaP-group; + description "Interface Keepalive Policy"; } } - grouping eqpt_ExtCh-group { + grouping bfd_IfKaP-group { + description "Interface Keepalive Policy"; - // State of the extended chassis - // Type is an MO-Defined-Type - leaf extChSt { - config "false"; - description "State"; + // Desired minimum tx interval. This is the minimum interval, + // in ms, that the system would like to use when transmitting + // BFD control packets. + leaf minTxIntvl { - // Type is an MO-Defined-Type - type eqpt_ExtChSt; + type bfd_IfMinTxIntvl; + description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; } - // Part number of the extended chassis - // Type is an MO-Defined-Type - leaf partNum { - config "false"; - description "TBD"; + // Required minimum rx interval. This is the minimum interval, + // in ms, between received BFD control packets that this + // system is capable of supporting. + leaf minRxIntvl { - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_IfMinRxIntvl; + description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; } - // MAC address of the extended chassis - // Type is an MO-Defined-Type - leaf macAddr { - config "false"; - description "MAC Address"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_IfDetectMult; + description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; } - // Number of macs supported - // Type is an MO-Defined-Type - leaf numMacs { - config "false"; - description "MACs Supported"; + // Echo rx interval. This is the minimum interval, in ms, + // between received BFD echo packets that this system is + // capable of supporting. + leaf echoRxIntvl { - // Type is an MO-Defined-Type - type eqpt_ExtChNumMacs; + type bfd_EchoRxIntvl; + description "Echo Rx Interval. This is the minimum interval, in ms, between received BFD echo packets that this system is capable of supporting."; } + } - // Number of uplink ports supported - // Type is an MO-Defined-Type - leaf numUplinkP { - config "false"; - description "Number of Uplink Ports"; + grouping bfd_Nbr-group { + description "Neighbor Entry"; + leaf srcip { + type address_Ip; + description "Source IP Address of BFD neighbor "; + } + leaf destip { + type address_Ip; + description "Destination IP Address of BFD neighbor"; + } + } - // Type is an MO-Defined-Type - type eqpt_ExtChNumUplinkP; + grouping bfd_InstAf-group { + description "Instance Address Family"; + + // Slow mode timer interval. This is the interval at which + // BFD control packets are sent. + leaf slowIntvl { + + type bfd_SlowIntvl; + description "Slow timer Interval"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { - config "false"; - description "Vendor"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_Vendor; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model"; + // Type + leaf type { - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_AfT; + description "Type of the Address Family"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { - config "false"; - description "Revision"; + // This object holds keepalive policy information + container ka-items { - // Type is an MO-Defined-Type - type eqpt_Revision; + uses bfd_KaP-group; + description "Keepalive Policy information is held in this object"; } + } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { - config "false"; - description "Serial Number"; + grouping bfd_KaP-group { + description "Keepalive Policy information is held in this object"; - // Type is an MO-Defined-Type - type eqpt_Serial; + // Desired minimum tx interval. This is the minimum interval, + // in ms, that the system would like to use when transmitting + // BFD control packets. + leaf minTxIntvl { + + type bfd_MinTxIntvl; + description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; } - leaf mfgTm { - config "false"; - type string; - default "0"; + + // Required minimum rx interval. This is the minimum interval, + // in ms, between received BFD control packets that this + // system is capable of supporting. + leaf minRxIntvl { + + type bfd_MinRxIntvl; + description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ExtCh->id - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Type is an MO-Defined-Type - type eqpt_Id { - range "101..199"; - } + type bfd_DetectMult; + description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Echo rx interval. This is the minimum interval, in ms, + // between received BFD echo packets that this system is + // capable of supporting. + leaf echoRxIntvl { - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_EchoRxIntvl; + description "Echo Rx Interval. This is the minimum interval,in ms, between received BFD echo packets that this system is capable of supporting."; } + } - // Information about extended chassis firmware - container running-items { + grouping bfd_Mhop-group { + description "Multihop Sessions"; - // Added containment as a singleton: Prefix=running - // Acquired From Package firmware - uses firmware_ExtChRunning-group; + // Desired minimum tx interval. This is the minimum interval, in ms, + // that the system would like to use when transmitting BFD control packets. + leaf minTxIntvl { + + type bfd_MhMinTxIntvl; + description "Desired Minimum TX Interval"; } - // Locator LED on extended chassis components - container locled-items { - list ExtChLocLed-list { - config "false"; - key "id"; + // Required minimum rx interval. This is the minimum interval, in ms, + // between received BFD control packets that this system is capable of supporting. + leaf minRxIntvl { - // Added containment: Prefix=locled - // Acquired From Package eqpt - uses eqpt_ExtChLocLed-group; - } + type bfd_MhMinRxIntvl; + description "Required Minimum RX Interval"; } - // Extended chassis card slot - container extchslot-items { - list ExtChCardSlot-list { - config "false"; - key "id"; + // Detection multiplier. This is the desired detection time + // multiplier for BFD packets on the local system. + leaf detectMult { - // Added containment: Prefix=extchslot - // Acquired From Package eqpt - uses eqpt_ExtChCardSlot-group; - } + type bfd_DetectMult; + description "Detection Multiplier"; } + } - // power supply slot - container psuslot-items { - list PsuSlot-list { - config "false"; - key "id"; + grouping bfd_Sess-group { + description "BFD Session"; - // Added containment: Prefix=psuslot - // Acquired From Package eqpt - uses eqpt_PsuSlot-group; - } + // Local session identifier + leaf discr { + config "false"; + + type bfd_Discr; + description "Local Session Identifier of the BFD session"; } - // fan tray slot - container ftslot-items { - list FtSlot-list { - config "false"; - key "id"; + // Remote session identifier + leaf remoteDiscr { + config "false"; - // Added containment: Prefix=ftslot - // Acquired From Package eqpt - uses eqpt_FtSlot-group; - } + type bfd_Discr; + description "Remote Session Identifier of the BFD session"; } - // Sprom Backplane Unit block - container spbp-items { + // Async mode source port + leaf asyncPort { + config "false"; - // Added containment as a singleton: Prefix=spbp - // Acquired From Package eqpt - uses eqpt_SpromBP-group; + type l4_Port; + description "Asynchronous mode Source Port"; } - // Sprom Supervisor - container spsup-items { + // Echo mode source port + leaf echoPort { + config "false"; + + type l4_Port; + description "Echo mode Source Port"; + } + leaf localMac { + config "false"; + type address_Mac; + description "Local MAC Address"; + } + leaf remoteMac { + config "false"; + type address_Mac; + description "Remote MAC Address"; + } + + // Interface id + leaf ifId { + config "false"; - // Added containment as a singleton: Prefix=spsup - // Acquired From Package eqpt - uses eqpt_SpromSup-group; + type nw_IfId; + description "Interface ID associated with the BFD session"; } - } - - grouping firmware_ExtChRunning-group { - // Loader version - // Type is an MO-Defined-Type - leaf loaderVer { + // Interface ordinal + leaf iod { config "false"; - description "A property that indicates Loader Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Iod; + description "Interface ordinal associated with the BFD session"; } - // Running firmware version. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf version { + // L3 context name + leaf vrfName { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type cap_Version; + type l3_VrfName; + description "L3 Context Name"; } - leaf internalLabel { + leaf srcAddr { config "false"; - type string; + type address_Ip; + description "Source IP Address"; } - - // Running firmware type. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf type { + leaf destAddr { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type firmware_Type; + type address_Ip; + description "Destination IP Address"; } - // Running firmware mode. - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf mode { + // Local value of tx interval + leaf localTxIntvl { config "false"; - description "Mode"; - // Type is an MO-Defined-Type - type firmware_RunningMode; - } - leaf ts { - config "false"; - type string; + type bfd_MinTxIntvl; + description "Local Value of Tx Interval"; } - // From Interface naming:Described - // Inherited From firmware:ARunning - // Type is an MO-Defined-Type - leaf descr { + // Local value of rx interval + leaf localRxIntvl { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_MinRxIntvl; + description "Local Value of Rx Interval"; } - } - grouping eqpt_ExtChLocLed-group { - - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Local value of detection multiplier + leaf localDetectMult { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_DetectMult; + description "Local value of Detection Multiplier"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf vendor { + // Active value of tx interval + leaf txIntvl { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type bfd_MinTxIntvl; + description "Active Value of Tx Interval"; } - // The device model - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf model { + // Active value of echo tx interval + leaf echoTxIntvl { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_MinTxIntvl; + description "Active Value of Echo Tx Interval"; } - // The device revision. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf rev { + // Active value of rx interval + leaf rxIntvl { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_MinRxIntvl; + description "Active Value of Rx Interval"; } - // The device serial number. - // From Interface eqpt:Dev - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf ser { + // Active value of slow interval + leaf slowIntvl { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type bfd_SlowIntvl; + description "Active value of Slow Interval"; } - leaf mfgTm { + + // Active value of detection multiplier + leaf detectMult { config "false"; - type string; - default "0"; + + type bfd_DetectMult; + description "Active value of Detection Multiplier"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Active value of auth type + leaf authType { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type bfd_AuthT; + description "Active value of Authentication Type"; } - // Color status of an LED - // Inherited From eqpt:Led - // Type is an MO-Defined-Type - leaf color { + // Authentication sequence number + leaf authSeqno { config "false"; - description "The LED Color"; - // Type is an MO-Defined-Type - type eqpt_Color; + type bfd_AuthSeqno; + description "Authentication Sequence Number"; } - // Operational status of an LED - // Inherited From eqpt:Led - // Type is an MO-Defined-Type + // Oper (protocol) state leaf operSt { config "false"; - description "The LED operational Status"; - // Type is an MO-Defined-Type - type eqpt_LedOpSt; + type bfd_OperSt; + description "Operational State"; } - // LED type - // Inherited From eqpt:Led - // Type is an MO-Defined-Type - leaf type { + // Remote oper state + leaf remoteOperSt { config "false"; - description "The LED type"; - // Type is an MO-Defined-Type - type eqpt_LedType; + type bfd_OperSt; + description "Remote Operational State"; } - // Admin status - Used to locate - // Inherited From eqpt:ALocLed - // Type is an MO-Defined-Type - leaf adminSt { + // Protocol diag code + leaf diag { config "false"; - description "The locator LED admin status"; - // Type is an MO-Defined-Type - type eqpt_AdSt; + type bfd_DiagCode; + description "Protocol Diagnostic code"; } - } - - grouping eqpt_ExtChCardSlot-group { - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: eqpt:ExtChCardSlot->id - // Modified by Override: eqpt:Cont->id - // Modified by Override: eqpt:Slot->id - // Type is an MO-Defined-Type - leaf id { + // Packet flags + leaf flags { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "1"; - } + type bfd_PktFlags; + description "Packet Flags"; } - - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + leaf lastTransTime { config "false"; - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + type union { + type string; + type uint64; + } + description "Transition Time. Last time when protocol state changed"; } - // Physical Slot ID - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf physId { + // Last diag code + leaf lastDiag { config "false"; - description "The physical slot identifier"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_DiagCode; + description "Last Diagnostic code"; } - - // type of the slot - // Inherited From eqpt:Slot - // Modified by Override: eqpt:ExtChCardSlot->type - // Type is an MO-Defined-Type - leaf type { + leaf lastDownTime { config "false"; - description "The slot type"; - - // Type is an MO-Defined-Type - type eqpt_SlotT; + type union { + type string; + type uint64; + } + description "Last Down Time"; } - // slot status: is it empty or inserted - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "The slot operational status"; + // This object holds bfd session stats information + container stats-items { - // Type is an MO-Defined-Type - type eqpt_SlotOpSt; + uses bfd_SessStats-group; + description "BFD Session Stats"; } - // location of the slot in the chassis (front/back) - // Inherited From eqpt:Slot - // Type is an MO-Defined-Type - leaf loc { - config "false"; - description "The location of the slot in the chassis"; + // This object holds bfd last packet information. This signifies + // peer view of the session. + container peerv-items { - // Type is an MO-Defined-Type - type eqpt_SlotLoc; + uses bfd_PeerV-group; + description "BFD Peer View"; } - // Module on extension chassis - container extchc-items { + // This object holds app information per bfd session + container app-items { + list SessApp-list { + config "false"; + key "id"; - // Added containment as a singleton: Prefix=extchc - // Acquired From Package eqpt - uses eqpt_ExtChCard-group; + uses bfd_SessApp-group; + description "BFD Session App list"; + } + description "BFD Session App"; } - // Rel-def target from oosSlot - // Inherited From eqpt:SupCSlot - // Inherited From eqpt:LCSlot - // Inherited From eqpt:FCSlot - // Inherited From eqpt:SysCSlot - // Inherited From eqpt:ExtChCardSlot - container rtoosSlot-items { + container rsmbrSess-items { - // Added containment as a singleton: Prefix=rtoosSlot - // Acquired From Package fabric - uses fabric_RtOosSlot_target-group; + list RsMbrSess-list { + key "tDn"; + + uses bfd_RsMbrSess_source-group; + description "Port-Channel Member Sessions list"; + } + description "Port-Channel Member Sessions"; } } - grouping eqpt_ExtChCard-group { + grouping bfd_SessStats-group { + description "BFD Session Stats"; - // Module serial number - // Type is an MO-Defined-Type - leaf modSerial { + // Packets received + leaf rxCnt { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter64; + description "Packets Received"; } - // Module vendor - // Type is an MO-Defined-Type - leaf modVendor { + // Average interval between received packets + leaf rxAvg { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type bfd_PktInterval; + description "Packets Average Receive Interval, which is the average interval between received packets "; } - // Module model - // Type is an MO-Defined-Type - leaf modModel { + // Minimum interval between received packets + leaf rxMin { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type bfd_PktInterval; + description "Packets Minimum Receive Interval"; } - // Module Part number - // Type is an MO-Defined-Type - leaf partNum { + // Maximum interval between received packets + leaf rxMax { config "false"; - description "Module Part Number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_PktInterval; + description "Packets Maximum Receive Interval"; } - - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + leaf lastRxPkt { config "false"; - description "Vendor"; - - // Type is an MO-Defined-Type - type eqpt_Vendor; + type union { + type string; + type uint64; + } + description "Last packet received timestamp"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + // Packets transmitted + leaf txCnt { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter64; + description "Packets Transmitted"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + // Average interval between transmitted packets + leaf txAvg { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_PktInterval; + description "Packets Average Transmit Interval, which is average interval between transmitted packets"; } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + // Minimum interval between transmitted packets + leaf txMin { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type bfd_PktInterval; + description "Packets Minimum Transmit Interval"; } - // Identifier for the item - // Inherited From eqpt:Item - // Type is an MO-Defined-Type - leaf id { + // Maximum interval between transmitted packets + leaf txMax { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id; + type bfd_PktInterval; + description "Packets Maximum Transmit Interval"; } - leaf mfgTm { + leaf lastTxPkt { config "false"; - type string; - default "0"; + type union { + type string; + type uint64; + } + description "Last packet transmitted timestamp"; } - // From Interface naming:Described - // Inherited From eqpt:Comp - // Type is an MO-Defined-Type - leaf descr { + // Number of times session has gone into up state + leaf upCnt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Up Count is the number of times session has gone into up state"; } - // Type of card - // Inherited From eqpt:Card - // Modified by Override: eqpt:ExtChCard->type - // Type is an MO-Defined-Type - leaf type { + // Number of times session has gone into down state + leaf downCnt { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type eqpt_CardT; + type nw_Counter32; + description "Down Count is the number of times session has gone into down state"; } + } - // Card status - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf operSt { + grouping bfd_PeerV-group { + description "BFD Peer View"; + + // Diag Code in last packet + leaf diag { config "false"; - description "The card operational status"; - // Type is an MO-Defined-Type - type eqpt_COpSt; + type bfd_DiagCode; + description "Diagnostic Code in Last Packet"; } - // Redundancy state - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf rdSt { + // Protocol state in last packet + leaf operSt { config "false"; - description "The card redundancy state"; - // Type is an MO-Defined-Type - type eqpt_RdSt; + type bfd_OperSt; + description "Protocol State in Last Packet"; } - // Software card ID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swCId { + // Flags in last packet + leaf flags { config "false"; - description "The card software card identifier"; - // Type is an MO-Defined-Type - type eqpt_CardId; + type bfd_PktFlags; + description "Flags in Last Packet"; } - // Number of ports on the card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf numP { + // Detect multiplier in last packet + leaf detectMult { config "false"; - description "The number of ports on the card"; - // Type is an MO-Defined-Type - type eqpt_CardNumPorts; + type bfd_DetectMult; + description "Detect Multiplier in Last Packet"; } - // mac address base - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macB { + // My discriminator in last packet + leaf myDisc { config "false"; - description "The card MAC address base"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_Discr; + description "My Discriminator in Last Packet"; } - // mac address end - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf macE { + // Your discriminator in last packet + leaf yourDisc { config "false"; - description "The card MAC address end"; - // Type is an MO-Defined-Type - type eqpt_MacAddr; + type bfd_Discr; + description "Your Discriminator in Last Packet"; } - leaf upTs { + + // Min tx interval in last packet + leaf minTx { config "false"; - type string; + + type bfd_MinTxIntvl; + description "Minimum Tx Interval in Last Packet"; } - // power state of this card - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf pwrSt { + // Min rx interval in last packet + leaf minRx { config "false"; - description "The power state of this card"; - // Type is an MO-Defined-Type - type eqpt_PwrState; + type bfd_MinRxIntvl; + description "Minimum Rx Interval in Last Packet"; } - // The Firmware revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf fwVer { + // Min echo interval in last packet + leaf minEcho { config "false"; - description "The card firmware revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_MinRxIntvl; + description "Minimum Echo Interval in Last Packet"; } + } - // The Software revision. - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf swVer { + grouping bfd_SessApp-group { + description "BFD Session App"; + + // Application ID + leaf id { config "false"; - description "The card software revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type bfd_AppId; + description "Application ID of the app associated with the BFD session"; + } + leaf name { + config "false"; + type string; + description "Application Name of the app associated with the BFD session"; } - // Module Part number - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf partNumber { + // Application sap ID + leaf sapId { config "false"; - description "The card part number"; - // Type is an MO-Defined-Type - type eqpt_PartNum; + type bfd_SapId; + description "Application SAP ID of the app associated with the BFD session"; + } + leaf descr { + config "false"; + type string; + description "Application Description"; } - // Module VID - // Inherited From eqpt:Card - // Type is an MO-Defined-Type - leaf vdrId { + // Application session flags + leaf flags { config "false"; - description "The card vdrId"; - // Type is an MO-Defined-Type - type eqpt_ModVid; + type bfd_AppFlags; + description "Application Session Flags"; } - // Extension chassis port connected to hosts - container hostextport-items { - list ExtChHP-list { - config "false"; - key "id"; + // Application private data + leaf data { + config "false"; - // Added containment: Prefix=hostextport - // Acquired From Package eqpt - uses eqpt_ExtChHP-group; + type bfd_AppData; + description "Application Private Data"; + } + leaf autoExpTime { + config "false"; + type union { + type string; + type uint64; } + description "Application Auto-Expiry Timestamp"; } + } - // Extension chassis port connected to Leaf - container leafextport-items { - list ExtChFP-list { - config "false"; - key "id"; + grouping cfs_Entity-group { + description "Cfs Entity"; - // Added containment: Prefix=leafextport - // Acquired From Package eqpt - uses eqpt_ExtChFP-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Sensor information - container sensor-items { - list Sensor-list { - config "false"; - key "id"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=sensor - // Acquired From Package eqpt - uses eqpt_Sensor-group; - } + type nw_AdminSt; + description "Admin State"; } - // ASIC information container - container asic-items { - list Asic-list { - config "false"; - key "id"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=asic - // Acquired From Package eqpt - uses eqpt_Asic-group; - } + type nw_EntOperSt; + description "Operational State"; } - container cpu-items { - list CPU-list { - config "false"; - key "id"; - // Added containment: Prefix=cpu - // Acquired From Package eqpt - uses eqpt_CPU-group; - } + // This objects hold cfs instance information. + container inst-items { + + uses cfs_Inst-group; + description "CFS Instance"; } + } - // Dimm memory unit - container dimm-items { - list Dimm-list { - config "false"; - key "id"; + grouping cfs_Inst-group { + description "CFS Instance"; - // Added containment: Prefix=dimm - // Acquired From Package eqpt - uses eqpt_Dimm-group; - } + // Enable CFS distribution + leaf distribute { + + type cfs_AdminSt; + description "Enable CFS distribution"; } - // Flash memory unit - container flash-items { + // Enable CFS distribution over Ethernet + leaf ethDist { - // Added containment as a singleton: Prefix=flash - // Acquired From Package eqpt - uses eqpt_Flash-group; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over Ethernet"; } - // OBFL (OnBoard Failure Log) information - container obfl-items { + // Enable CFS distribution over IPv4 + leaf ipv4Dist { - // Added containment as a singleton: Prefix=obfl - // Acquired From Package eqpt - uses eqpt_Obfl-group; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over IPv4"; } - } - grouping eqpt_Entity-group { + // Enable CFS distribution over IPv6 + leaf ipv6Dist { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type cfs_AdminSt; + default "disabled"; + description "Enable CFS distribution over IPv6"; + } + leaf ipv4Mcast { + type address_Ipv4; + default "239.255.70.83"; + description "cfs IPv4 mcast address"; + } + leaf ipv6Mcast { + type address_Ipv6; + default "ff15::efff:4653"; + description "cfs IPv6 mcast address"; + } + container region-items { + list Region-list { + key "regId"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + uses cfs_Region-group; + description "CFS Region list"; } + description "CFS Region"; } + } - // console policy - container consolep-items { - - // Added containment as a singleton: Prefix=consolep - // Acquired From Package eqpt - uses eqpt_ConsoleP-group; - } + grouping cfs_Region-group { + description "CFS Region"; - // Power supply group policy - container psgp-items { + leaf regId { - // Added containment as a singleton: Prefix=psgp - // Acquired From Package eqpt - uses eqpt_PsgP-group; + type cfs_RegId; + description "CFS Region ID"; } + container app-items { + list App-list { + key "appName"; - // Policy container for slot - container slot-items { - list SlotP-list { - config "false"; - key "type id"; - - // Added containment: Prefix=slot - // Acquired From Package eqpt - uses eqpt_SlotP-group; + uses cfs_App-group; + description "CFS Appname list"; } + description "CFS Appname"; } } - grouping eqpt_ConsoleP-group { + grouping cfs_App-group { + description "CFS Appname"; + leaf appName { + type string; + description "CFS Appname ID"; + } + } - // num of databits per character - // Type is an MO-Defined-Type - leaf dataBits { - config "false"; - description "Data Bits"; + grouping dot1x_Entity-group { + description "Dot1x entity information"; - // Type is an MO-Defined-Type - type eqpt_DataBits; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // timeout for an inactive session in minutes - // Type is an MO-Defined-Type - leaf inactiveIntvl { - config "false"; - description "Inactive Interval"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type eqpt_InactiveIntvl; + type nw_AdminSt; + description "Admin State"; } - // Terminal parity none, even or odd - // Type is an MO-Defined-Type - leaf parity { + // Operational state + leaf operSt { config "false"; - description "Parity"; - // Type is an MO-Defined-Type - type eqpt_Parity; + type nw_EntOperSt; + description "Operational State"; } - // transmit and receive speed on console port - // Type is an MO-Defined-Type - leaf baudRate { + // Operational errors qualifier + leaf operErr { config "false"; - description "Baud Rate"; - // Type is an MO-Defined-Type - type eqpt_BaudRate; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Async line stopbits - // Type is an MO-Defined-Type - leaf stopBits { - config "false"; - description "Stop Bits"; + // This objects hold per dot1x instance information. There is + // only one instance of dot1x running in the system today + container inst-items { - // Type is an MO-Defined-Type - type eqpt_StopBits; + uses dot1x_Inst-group; + description "Dot1x instance information"; + } + } + + grouping dot1x_Inst-group { + description "Dot1x instance information"; + leaf sysAuthCtrl { + type boolean; + default "true"; + description "Dot1x sys-auth-control"; + } + leaf radAcct { + type boolean; + default "false"; + description "Dot1x radius accounting"; + } + + // Dot1x Mac-Move + leaf macMove { + + type dot1x_MacMove; + description "Dot1x mac-move setting"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - } - grouping eqpt_PsgP-group { - - // Admin redundancy mode - // Type is an MO-Defined-Type - leaf adminRdnM { - description "The power supply group admin redundancy mode"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type eqpt_PsRdnM; + type nw_InstCtrl; + description "Controls"; } - // The power supply redundancy operational mode - // Type is an MO-Defined-Type - leaf operRdnM { + // Operational errors qualifier + leaf operErr { config "false"; - description "The power supply group operational redundancy mode"; - // Type is an MO-Defined-Type - type eqpt_PsRdnM; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // total power capacity in watts. It depends on the - // redundancy mode and is equal to one of cumCap, - // psRdCap, gridRdCap, FullRdCap - // Type is an MO-Defined-Type - leaf tc { - config "false"; - description "The power supply group total capacity"; + // This object holds dot1x information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_If-group; + description "Dot1x interface information list"; + } + description "Dot1x interface information"; } - // Reserved power in watts - // Type is an MO-Defined-Type - leaf rsdPwr { - config "false"; - description "The power supply group reserved power"; + // This objects holds AAA Authentication Groups + container authconfig-items { - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_AuthConfig-group; + description "Dot1x-AAA Authentication Group information"; } - // Allocated power in watts - // Type is an MO-Defined-Type - leaf alPwr { - config "false"; - description "The power supply group allocated power"; + // This objects holds AAA Accounting Groups + container acctconfig-items { - // Type is an MO-Defined-Type - type eqpt_Watts; + uses dot1x_AcctConfig-group; + description "Dot1x-AAA Accounting Group information"; } + } - // Available power in watts - // Type is an MO-Defined-Type - leaf avPwr { - config "false"; - description "The power supply group available power"; + grouping dot1x_If-group { + description "Dot1x interface information"; - // Type is an MO-Defined-Type - type eqpt_Watts; - } - leaf unit { - config "false"; - type string; + // Dot1x Host Mode + leaf hostMode { + + type dot1x_HostMode; + description "Dot1x host mode type"; } - // Available power under various redundancy modes - // Cumulative power available in non-redundant mode. - // It is obtained by summing the individual power - // provided by all present and functioning psu - // Type is an MO-Defined-Type - leaf nRdnCap { - config "false"; - description "The power supply group non-redundant capacity"; + // Dot1x Pae Type + leaf paeType { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_PaeType; + description "Role of dot1x authenticating entity"; } - // power capacity under power supply redundancy, also called - // N+1 redundancy. It is the sum of lowest N rated psu - // Type is an MO-Defined-Type - leaf psRdnCap { - config "false"; - description "The power supply group N+1 redundant capacity"; + // Dot1x MAC Auth Bypass + leaf macAuthBypass { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MacAuthBypass; + description "Dot1x mac auth bypass"; } - // power capacity under AC power redundancy - // Type is an MO-Defined-Type - leaf acRdnCap { - config "false"; - description "AC Redundant Capacity"; + // Dot1x Max Reauth Request + leaf maxReauthReq { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MaxReauthReq; + description "Maximum re-authentication attempts before failing"; } - // power capacity under grid redundancy, also called input - // src redundancy. It is calculated as the minimum of grid - // A and grid B capacity. It is relevant for psu which - // can take two independent inputs. For single input psu, - // grid redundancy is calculated as half of cumulative - // capacity - // Type is an MO-Defined-Type - leaf grdRdnCap { - config "false"; - description "The power supply group grid redundant capacity"; + // Dot1x Max Request + leaf maxReq { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_MaxReq; + description "Maximum retries to initiate authentication"; } - // Power capacity under full redundancy. It is calculated - // as the minimum of ps and grid redundancy - // Type is an MO-Defined-Type - leaf flRdnCap { - config "false"; - description "The power supply group full redundant capacity"; + // Dot1x Port Control + leaf portCtrl { - // Type is an MO-Defined-Type - type eqpt_Watts; + type dot1x_PortCtrl; + description "Dot1x port control mode"; + } + leaf reAuth { + type boolean; + default "false"; + description "Enable or disable reauthentication for this port"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Dot1x Timeout: Quiet Period + leaf quietPeriod { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type dot1x_QuietPeriod; + description "Dot1x timeout quiet period"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Dot1x Timeout: Rate limit period + leaf rateLimitPeriod { - // Type is an MO-Defined-Type - type naming_Descr; + type dot1x_RateLimitPeriod; + description "Dot1x timeout rate limit period"; } - // Rel-def from psuInstPolCons - container rspsuInstPolCons-items { + // Dot1x Timeout: Re-auth Period + leaf reAuthPeriod { - // Added containment as a singleton: Prefix=rspsuInstPolCons - // Acquired From Package eqpt - uses eqpt_RsPsuInstPolCons_source-group; + type dot1x_ReAuthPeriod; + description "Dot1x timeout re-auth period"; } - } - grouping eqpt_SlotP-group { + // Dot1x Timeout: Server Timeout + leaf serverTimeout { - // type of the slot - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "The slop policy type"; + type dot1x_ServerTimeout; + description "Dot1x timeout server timeout"; + } - // Type is an MO-Defined-Type - type eqpt_SlotT; + // Dot1x Timeout: Supplicant Timeout + leaf suppTimeout { + + type dot1x_SuppTimeout; + description "Dot1x timeout supplicant timeout"; } - // logical slot id - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "The slot policy logical identifier"; + // Dot1x Timeout: Tx Period + leaf txPeriod { - // Type is an MO-Defined-Type - type eqpt_Id; + type dot1x_TxPeriod; + description "Dot1x timeout tx period"; } - // Controls - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "The slot policy controls"; + // Dot1x Timeout: Inactivity Period + leaf inactivityPeriod { - // Type is an MO-Defined-Type - type eqpt_SlotControl; + type dot1x_InactivityPeriod; + description "Dot1x timeout inactivity period"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; + + type naming_Descr1024; description "Description"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping eqptcapacity_Entity-group { + // Administrative state + leaf adminSt { - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + type nw_IfAdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping eqptdiag_Entity-group { + grouping dot1x_AuthConfig-group { + description "Dot1x-AAA Authentication Group information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Clients can add their own data for entity correlation + leaf ownerKey { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type naming_Descr; + description "TBD"; } - // Diag Group to Diag Test Mappings - container grptests-items { - list GrpTests-list { - config "false"; - key "subjClass model grp"; + // Clients can add their own data, for example, to indicate who created this object + leaf ownerTag { - // Added containment: Prefix=grptests - // Acquired From Package eqptdiagp - uses eqptdiagp_GrpTests-group; + type naming_Descr1024 { + length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // Diag rule for bootup and health tests - container rule-items { - list Rule-list { - config "false"; - key "type trig"; + leaf descr { - // Added containment: Prefix=rule - // Acquired From Package eqptdiag - uses eqptdiag_Rule-group; - } + type naming_Descr; + description "Description of the specified attribute"; } - } - grouping eqptdiagp_GrpTests-group { - leaf subjClass { - config "false"; - type string; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { + + type aaa_ProviderGroupName; + description "Provider Group"; } - // Model - // Type is an MO-Defined-Type - leaf model { - config "false"; - description "Model of the Subject"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type eqpt_Model; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Diag group name - // Type is an MO-Defined-Type - leaf grp { - config "false"; - description "Diag Test Group"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type eqptdiag_AllGrpsT; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Bitmap of tests that are in the diag test group for the givel - // class and model of the subject - // Type is an MO-Defined-Type - leaf testBm { - config "false"; - description "CLass Name of the Subject"; + leaf providerGroup4 { - // Type is an MO-Defined-Type - type eqptdiag_TypeBm; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { - config "false"; - description "TBD"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type naming_Descr; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { - config "false"; - description "TBD"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..64"; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type naming_Descr; + type aaa_ProviderGroupName; + description "Provider Group"; } } - grouping eqptdiag_Rule-group { + grouping dot1x_AcctConfig-group { + description "Dot1x-AAA Accounting Group information"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerKey { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "TBD"; } // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf ownerTag { - config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr1024 { length "0..64"; + pattern ".*[a-zA-Z0-9\\\\!#$%\\(\\)\\*,-./:;@ _\\{\\|\\}~\\?&\\+]*.*"; } + description "TBD"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { - config "false"; - description "Trigger"; + // This property specifies the name of ProviderGroup which + // will be used for for authentication/accounting.The usage + // of this property value depends on the value of 'realm' + // property above. When an value is provided for property, + // this would restrict the servers which will be tried. + // When no value is provided, then all the servers will be + // tried for the protocol realm configured in the 'realm' + // property above. + leaf providerGroup { - // Type is an MO-Defined-Type - type test_Trig; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { - config "false"; - description "Frequency"; + leaf providerGroup2 { - // Type is an MO-Defined-Type - type test_Freq; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Test type - // Inherited From eqptdiag:ARule - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + leaf providerGroup3 { - // Type is an MO-Defined-Type - type eqptdiag_Type; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Diag subject - container subj-items { - list Subj-list { - config "false"; - key "oDn"; + leaf providerGroup4 { - // Added containment: Prefix=subj - // Acquired From Package eqptdiag - uses eqptdiag_Subj-group; - } + type aaa_ProviderGroupName; + description "Provider Group"; } - } - - grouping eqptdiag_Subj-group { - // Object primary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oPk { - config "false"; - description "Object Primary Key"; + leaf providerGroup5 { - // Type is an MO-Defined-Type - type test_PInstId; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Object secondary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oSk { - config "false"; - description "Object Secondary Key"; + leaf providerGroup6 { - // Type is an MO-Defined-Type - type test_PInstId; - } - leaf oDn { - config "false"; - type string; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Consolidated operational state of the test - // on this subject - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf providerGroup7 { - // Type is an MO-Defined-Type - type test_OperSt; + type aaa_ProviderGroupName; + description "Provider Group"; } - // Prof. Name - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf providerGroup8 { - // Type is an MO-Defined-Type - type naming_Name; + type aaa_ProviderGroupName; + description "Provider Group"; } + } - // Diag result - container rslt-items { - list Rslt-list { - config "false"; - key "ts"; - - // Added containment: Prefix=rslt - // Acquired From Package eqptdiag - uses eqptdiag_Rslt-group; - } - } + grouping hsrp_Entity-group { + description "HSRP Entity"; - // Port test stats - container portteststats-items { + leaf name { - // Added containment as a singleton: Prefix=portteststats - // Acquired From Package eqptdiag - uses eqptdiag_PortTestStats-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping eqptdiag_Rslt-group { - - // Trigger for this result - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf trig { - config "false"; - description "Trigger"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type test_Trig; + type nw_AdminSt; + description "Admin State"; } - // Test operational status - // Inherited From test:Rslt - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type nw_EntOperSt; + description "Operational State"; } - // Test status qualifier, deprecate this XXX - // Inherited From test:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "Operational State Qualifier"; + // This objects holds HSRP instance information. There is only one instance of HSRP supported currently + container inst-items { - // Type is an MO-Defined-Type - type test_OperStQual; - } - leaf ts { - config "false"; - type string; + uses hsrp_Inst-group; + description "HSRP Instance"; } + } + + grouping hsrp_Inst-group { + description "HSRP Instance"; - // Prof. Name - // Inherited From test:Rslt - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping eqptdiag_PortTestStats-group { - - // Packets Sent - // Type is an MO-Defined-Type - leaf pktSent { - config "false"; - description "Packets Sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_AdminSt; + description "Admin State"; } - // Packets Received - // Type is an MO-Defined-Type - leaf pktRcvd { - config "false"; - description "Packets Received"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_InstCtrl; + description "Controls"; } - // Packets Dropped - // Type is an MO-Defined-Type - leaf pktDrop { - config "false"; - description "Packets Dropped"; + // This object holds interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses hsrp_If-group; + description "Interface with HSRP Enabled list"; + } + description "Interface with HSRP Enabled"; } } - grouping leqpt_LooseNode-group { + grouping hsrp_If-group { + description "Interface with HSRP Enabled"; - // A unique identifier for this object - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description " Property has READ-Create access."; + // Hsrp version + leaf version { - // Type is an MO-Defined-Type - type fabric_LooseNodeId; + type hsrp_HsrpVersion; + description "Hsrp version"; } - // System description - // Type is an MO-Defined-Type - leaf sysDesc { - config "false"; - description "TBD"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type naming_Descr; + type hsrp_IfControl; + description "Controls"; } - // System Name - // Type is an MO-Defined-Type - leaf sysName { - config "false"; - description "TBD"; + // Use-Bia Scope + leaf biaScope { - // Type is an MO-Defined-Type - type naming_Descr; + type hsrp_BiaScopeType; + description "Use-Bia Scope"; } - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Rel-def target from epDefToLooseNode - // Inherited From leqpt:LooseNode - container rtfvEpDefToLooseNode-items { + leaf descr { - // Abstract containment of rtfvEpDefToLooseNode derived from leqpt:LooseNode - list RtFvEpDefToLooseNode-list { - config "false"; - key "tDn"; + type naming_Descr1024; + description "Description"; + } - // Added containment: Prefix=rtfvEpDefToLooseNode - // Acquired From Package fv - uses fv_RtFvEpDefToLooseNode_target-group; - } + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Rel-def target from lsNodeAtt - // Inherited From leqpt:LooseNode - container rtfvLsNodeAtt-items { + // Administrative state + leaf adminSt { - // Abstract containment of rtfvLsNodeAtt derived from leqpt:LooseNode - list RtFvLsNodeAtt-list { - config "false"; - key "tDn"; + type nw_IfAdminSt; + description "Admin State"; + } + container grp-items { + list Group-list { + key "id af"; - // Added containment: Prefix=rtfvLsNodeAtt - // Acquired From Package fv - uses fv_RtFvLsNodeAtt_target-group; + uses hsrp_Group-group; + description "HSRP Virtual Router list"; } + description "HSRP Virtual Router"; } - // Rel-def target from tunnelToLooseNode - // Inherited From leqpt:LooseNode - container rttunnelTunnelToLooseNode-items { - - // Abstract containment of rttunnelTunnelToLooseNode derived from leqpt:LooseNode - list RtTunnelTunnelToLooseNode-list { - config "false"; - key "tDn"; + container rtvrfMbr-items { - // Added containment: Prefix=rttunnelTunnelToLooseNode - // Acquired From Package tunnel - uses tunnel_RtTunnelTunnelToLooseNode_target-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Rel-def from LsNodeToIf - container rslsNodeToIf-items { + grouping hsrp_Group-group { + description "HSRP Virtual Router"; - // Abstract containment of rslsNodeToIf derived from leqpt:LooseNode - list RsLsNodeToIf-list { - config "false"; - key "tDn"; + // HSRP Group ID + leaf id { - // Added containment: Prefix=rslsNodeToIf - // Acquired From Package leqpt - uses leqpt_RsLsNodeToIf_source-group; - } + type hsrp_GroupId; + description "Group Id"; } - // Rel-def from LsAttLink - container rslsAttLink-items { + // HSRP Address Family + leaf af { - // Added containment as a singleton: Prefix=rslsAttLink - // Acquired From Package leqpt - uses leqpt_RsLsAttLink_source-group; + type hsrp_GroupAf; + description "Group Address Family"; } - } - - grouping platform_Entity-group { - leaf descr { - type string; + leaf ip { + type address_Ip; + description "Primary IP Address"; } - // Type is an MO-Defined-Type - leaf profileMode { - description "Hardware profile mode for platform entity "; + // HSRP primary IP Obtain Mode + leaf ipObtainMode { - // Type is an MO-Defined-Type - type platform_HwProfile; + type hsrp_GrpIpObtainMode; + description "IP Obtain Mode"; } - // Type is an MO-Defined-Type - leaf profileTuple { - description "Profile tuple for platform entity"; + // Control Bits + leaf ctrl { - // Type is an MO-Defined-Type - type platform_Tuple; + type hsrp_GrpControl; + description "Group control bits"; } - // Type is an MO-Defined-Type - leaf unicastSyslogThreshold { - description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for unicast cases. The default is 90 percent of the total available shared buffer"; + // Minimum Preemption delay before this group can preempt a high priority Active + leaf preemptDelayMin { - // Type is an MO-Defined-Type - type platform_Percentage; + type hsrp_PreemptDelay; + description "Miminum delay before preempt"; } - // Type is an MO-Defined-Type - leaf lpmMaxLimit { - description "Maximum limit for LPM routes"; + // Preemption delay after a switch reboot before this group can preempt a High priority Active + leaf preemptDelayReload { - // Type is an MO-Defined-Type - type platform_LpmMaxLimits; + type hsrp_PreemptDelay; + description "Preempt delay after a switch reload"; } - // Type is an MO-Defined-Type - leaf unicastMaxLimit { - description "Maximum limit for unicast LPM routes"; + // Maximum number of seconds to allow IP redundancy clients to prevent preemption @@@ Dont expose thi to user + leaf preemptDelaySync { - // Type is an MO-Defined-Type - type platform_UnicastMaxLimit; + type hsrp_PreemptDelay; + description "Wait for IP redundancy clients"; } - // Type is an MO-Defined-Type - leaf multicastMaxLimit { - description "Maximum limit for multicast LPM routes"; + // HSRP Hello packet interval + leaf helloIntvl { - // Type is an MO-Defined-Type - type platform_MulticastMaxLimit; + type hsrp_HelloIntvl; + description "Hello Interval"; } - // Type is an MO-Defined-Type - leaf multicastServiceReflectPort { - description "mcast service-reflect port"; + // HSRP Hold interval + leaf holdIntvl { - // Type is an MO-Defined-Type - type platform_multicastServiceReflectPort; + type hsrp_HoldIntvl; + description "Hold Interval"; } - // Type is an MO-Defined-Type - leaf multicastSyslogThreshold { - description "Specifies to generate a syslog entry when the specified maximum buffer size is exceeded for multicast cases. The default is 90 percent of the total available shared buffer"; + // Grouph Priority + leaf prio { - // Type is an MO-Defined-Type - type platform_Percentage; + type hsrp_GrpPrio; + description "Group Priority"; } - // Type is an MO-Defined-Type - leaf IPV6alpmCarveValue { - description "Hardware profile ipv6 alpm carve-value"; + // forwarding lower threshold + leaf fwdLwrThrld { - // Type is an MO-Defined-Type - type platform_IPV6alpmCarveValues; + type hsrp_GrpPrio; + description "Fowarding Lower Threshold"; } - // Type is an MO-Defined-Type - leaf routingMode { - description "Routing mode"; + // forwarding upper threshold + leaf fwdUprThrld { - // Type is an MO-Defined-Type - type platform_RoutingMode; + type hsrp_GrpPrio; + description "Forwarding Upper Threshold"; } - // Type is an MO-Defined-Type - leaf pcLbAlgo { - description "Pc load-balance internal algorithm"; + // HSRP master name for the group + leaf name { - // Type is an MO-Defined-Type - type platform_PcLbAlgo; + type hsrp_GrpName; + description "Master name string"; } - // valif for n3ktoronly - // Type is an MO-Defined-Type - leaf urpfStatus { - description "Unicast Reverse Path Forwarding Status"; + // HSRP Slave/follow config the group + leaf follow { - // Type is an MO-Defined-Type - type nw_AdminSt; + type hsrp_GrpName; + description "Master name string to follow"; } - // valid for n9knontahoe - // Type is an MO-Defined-Type - leaf qosMinBuffer { - description "qos min-buffer qos-group"; + // HSRP authentication type for the group + leaf type { - // Type is an MO-Defined-Type - type platform_QosMinBuffer; + type hsrp_AuthT; + description "Authentication Type for the group"; } - // Type is an MO-Defined-Type - leaf switchingMode { - description "Corresponds to the global switching mode. Default is cut-through"; + // HSRP authentication key for the group + leaf key { - // Type is an MO-Defined-Type - type platform_SwitchingMode; + type hsrp_AuthKey; + description "Authentication key for the group"; } - - // Type is an MO-Defined-Type - leaf switchingFabricSpeed { - description "Corresponds to the switching fabric speed"; - - // Type is an MO-Defined-Type - type platform_FabricSpeed; + leaf mac { + type address_Mac; + description "Configured MAC address for the group"; } - // TCAM resource utilization on the module - container mod-items { - list TcamStatsModule-list { - config "false"; - key "module"; + // Class for HSRP secondary vips + container addr-items { + list Addr-list { + key "ip"; - // Added containment: Prefix=mod - // Acquired From Package platform - uses platform_TcamStatsModule-group; + uses hsrp_Addr-group; + description "HSRP Secondary VIP list"; } + description "HSRP Secondary VIP"; } - container nve-items { - list NVE-list { - key "id"; + } - // Added containment: Prefix=nve - // Acquired From Package platform - uses platform_NVE-group; - } + grouping hsrp_Addr-group { + description "HSRP Secondary VIP"; + leaf ip { + type address_Ip; + description "Secondary IP Address"; } + } - // Container for all the BDs to hold platform data in the system. - container bd-items { - - // Added containment as a singleton: Prefix=bd - // Acquired From Package platform - uses platform_BdEntity-group; - } + grouping icmpv4_Entity-group { + description "ICMPv4 Entity"; - // Container for all the interfaces in the system. - container intf-items { + leaf name { - // Added containment as a singleton: Prefix=intf - // Acquired From Package platform - uses platform_Intf-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Container for all the power off config data in the system. - container poweroffEntity-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=poweroffEntity - // Acquired From Package platform - uses platform_PoweroffEntity-group; + type nw_AdminSt; + description "Admin State"; } - // Container for all the tcam regions in the system. - container tcamRegion-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=tcamRegion - // Acquired From Package platform - uses platform_TcamRegion-group; + type nw_EntOperSt; + description "Operational State"; } - container latencymonitor-items { + // This objects hold per icmpv4 instance information. There is + // only one instance of icmpv4 running in the system today + container inst-items { - // Added containment as a singleton: Prefix=latencymonitor - // Acquired From Package platform - uses platform_LatencyMonitor-group; + uses icmpv4_Inst-group; + description "ICMPv4 Instance"; } + } - container buffermonitor-items { + grouping icmpv4_Inst-group { + description "ICMPv4 Instance"; - // Added containment as a singleton: Prefix=buffermonitor - // Acquired From Package platform - uses platform_BufferMonitor-group; - } - } + leaf name { - grouping platform_TcamStatsModule-group { - leaf module { - config "false"; - type uint16; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // TCAM resource utilization on the asic instance - container inst-items { - list TcamStatsInst-list { - config "false"; - key "instance"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=inst - // Acquired From Package platform - uses platform_TcamStatsInst-group; - } + type nw_AdminSt; + description "Admin State"; } - } - grouping platform_TcamStatsInst-group { - leaf instance { - config "false"; - type uint16; + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // TCAM regions on the asic instance - container region-items { - list TcamStatsRegion-list { - config "false"; - key "regionName"; + // This objects hold per icmpv4 layer3 domain (vrf) + // information + container dom-items { + list Dom-list { + key "name"; - // Added containment: Prefix=region - // Acquired From Package platform - uses platform_TcamStatsRegion-group; + uses icmpv4_Dom-group; + description "ICMPv4 Domain list"; } + description "ICMPv4 Domain"; } } - grouping platform_TcamStatsRegion-group { - leaf regionName { - config "false"; - type string; - } - leaf regionSize { - config "false"; - type uint16; - } - - // TCAM utilization values for the regions - container utilization-items { + grouping icmpv4_Dom-group { + description "ICMPv4 Domain"; - // Added containment as a singleton: Prefix=utilization - // Acquired From Package platform - uses platform_TcamResourceUtilization-group; - } - } + leaf name { - grouping platform_TcamResourceUtilization-group { - leaf used { - config "false"; - type uint16; - } - leaf free { - config "false"; - type uint16; - } - leaf percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf ipv4Used { - config "false"; - type uint16; - } - leaf ipv4Percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf ipv6Used { - config "false"; - type uint16; - } - leaf ipv6Percent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf macUsed { - config "false"; - type uint16; - } - leaf macPercent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf allUsed { - config "false"; - type uint16; - } - leaf allPercent { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf otherUsed { - config "false"; - type uint16; - } - leaf otherPercent { - config "false"; - type decimal64 { - fraction-digits 2; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - } - grouping platform_NVE-group { - leaf id { - type uint16; - } - container infravlan-items { - list InfraVlan-list { + // This object holds icmp information that is operated at a + // interface level + container if-items { + list If-list { key "id"; - // Added containment: Prefix=infravlan - // Acquired From Package platform - uses platform_InfraVlan-group; + uses icmpv4_If-group; + description "ICMPv4 Interface list"; } + description "ICMPv4 Interface"; } } - grouping platform_InfraVlan-group { + grouping icmpv4_If-group { + description "ICMPv4 Interface"; - // Type is an MO-Defined-Type + // Interface ID of this endpoint leaf id { - description "Id for all vlans that are infravlan enabled"; - // Type is an MO-Defined-Type - type platform_infraVlanId; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Type is an MO-Defined-Type - leaf force { - description "Force flag if infra vlan added by force"; + // Interface controls + // Default value handled in local MO type + leaf ctrl { - // Type is an MO-Defined-Type - type platform_infraVlanForce; + // Type is a Local-MO-Defined-Type + type icmp_IfControl_If_ctrl; + description "Controls"; } - } - grouping platform_BdEntity-group { - leaf descr { - config "false"; - type string; + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Layer2 Bridge-domain - container bd-items { - list Bd-list { - key "fabEncap"; + grouping icmpv6_Entity-group { + description "ICMPv6 Entity"; - // Added containment: Prefix=bd - // Acquired From Package platform - uses platform_Bd-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping platform_Bd-group { - leaf fabEncap { - type string; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - } - grouping platform_Intf-group { - leaf descr { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } - // This object holds platfrom information at an - // interface level - container if-items { - list If-list { - key "id"; + // This objects hold per icmpv6 instance information. There is + // only one instance of icmpv6 running in the system today + container inst-items { - // Added containment: Prefix=if - // Acquired From Package platform - uses platform_If-group; - } + uses icmpv6_Inst-group; + description "ICMPv6 Instance"; } } - grouping platform_If-group { + grouping icmpv6_Inst-group { + description "ICMPv6 Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type icmpv6_OperSt; + description "Operational State"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Adjacency stale timer + leaf adjStaleTimer { - // Type is an MO-Defined-Type - type naming_Descr1024; + type icmpv6_AdjStaleTimer; + description "Adjacency stale timer"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Adjacency stale timer with icmp option + leaf adjStaleTimerIcmp { - // Type is an MO-Defined-Type - type nw_IfId; + type nw_AdminSt; + description "Ipv6 adjacency stale timer with ICMP option"; } - container eltmIf-items { + leaf name { - // Added containment as a singleton: Prefix=eltmIf - // Acquired From Package eltm - uses eltm_If-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - // Inherited From platform:If - container rtvrfMbr-items { + // Administrative state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - // Inherited From poe:PhysIf - // Inherited From udld:PhysIf - // Inherited From l1:PhysIfExtended - // Inherited From pc:AggrIfExtended - // Inherited From pc:ShadowAggrIfExtended - // Inherited From pvlan:If - // Inherited From platform:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_InstCtrl; + description "Controls"; } - } - - grouping eltm_If-group { - // hw bd id (allocated for l3 ports, port-channels) - // Type is an MO-Defined-Type - leaf hwBdId { - config "false"; - description "Hw Bd Id (allocated for L3 Ports, Port-channels)"; + // This object holds icmpv6 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type l2_DomOperId; + uses icmpv6_If-group; + description "ICMPV6 Interface list"; + } + description "ICMPV6 Interface"; } - } + container logs-items { + list ICMPv6EventLogs-list { + key "eventType"; - grouping platform_PoweroffEntity-group { - leaf descr { - config "false"; - type string; + uses icmpv6_ICMPv6EventLogs-group; + description "ICMPv6 Event History Logging list"; + } + description "ICMPv6 Event History Logging"; } - container poweroffModule-items { - list PoweroffModule-list { - key "id"; - // Added containment: Prefix=poweroffModule - // Acquired From Package platform - uses platform_PoweroffModule-group; - } + // Interface statistics icmpv6 common packet counters (global and per-i/f) + // Ephemeral data + container ifstats-items { + + uses icmpv6_IfStats-group; + description "ICMPv6 interface statistics"; } } - grouping platform_PoweroffModule-group { + grouping icmpv6_If-group { + description "ICMPV6 Interface"; - // Type is an MO-Defined-Type - leaf id { - description "Module identifier for power off property"; + // Interface controls + leaf ctrl { - // Type is an MO-Defined-Type - type platform_moduleNumberSt; + type icmpv6_IfControl; + description "Controls"; } - // Type is an MO-Defined-Type - leaf poweroffStatus { - description "Power off config state for the module [yes/no]"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type platform_poweroffSt; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - - grouping platform_TcamRegion-group { - // description - // Type is an MO-Defined-Type - leaf eRaclSize { - description "Egress RACL TCAM region size"; + // Interface statistics icmpv6 common packet counters (global and per-i/f) + // Ephemeral data + container ifstats-items { - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + uses icmpv6_IfStats-group; + description "ICMPv6 interface statistics"; } - // Type is an MO-Defined-Type - leaf vpcConvergenceSize { - description "VPC TCAM region size"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Type is an MO-Defined-Type - leaf raclLiteSize { - description "RACL TCAM region size"; + grouping icmpv6_IfStats-group { + description "ICMPv6 interface statistics"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { + config "false"; + + type nw_Counter64; + description "Total messages sent"; } - // Type is an MO-Defined-Type - leaf ipv6IfaclSize { - description "IPv6 Interface ACL TCAM region size"; + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Total messages received"; } - // Type is an MO-Defined-Type - leaf eIpv6RaclSize { - description "Egress IPv6 RACL TCAM region size"; + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Error messages sent"; } - // Type is an MO-Defined-Type - leaf ifaclLiteSize { - description "Interface ACL Lite TCAM region size"; + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Error messages received"; } - // Type is an MO-Defined-Type - leaf vaclSize { - description "Virtual ACL TCAM region size"; + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Interface Down Drop Count sent"; } - // Type is an MO-Defined-Type - leaf ifaclSize { - description "Interface ACL TCAM region size"; + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Interface Down Drop Count received"; } - // Type is an MO-Defined-Type - leaf eVaclSize { - description "Egress VACL TCAM region size"; + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - // Type is an MO-Defined-Type - leaf qosSize { - description "QOS TCAM region size"; + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - // Type is an MO-Defined-Type - leaf raclSize { - description "RACL TCAM region size"; + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Type is an MO-Defined-Type - leaf ingFlowSize { - description "Ingress Flow TCAM region size"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_flowTcamRegionSize; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Type is an MO-Defined-Type - leaf natSize { - description "NAT TCAM region size"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_tcamRegionSize; + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - } - - grouping platform_LatencyMonitor-group { - // description - // Type is an MO-Defined-Type - leaf sampling { - description "Latency Monitor Sampling"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorSampling; + type nw_Counter64; + description "Destination Unreachables sent"; } - // Type is an MO-Defined-Type - leaf latencyMonitorThreshholdAvg { - description "Average latency monitor threshold"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorThreshholdAv; + type nw_Counter64; + description "Destination Unreachables received"; } - // Type is an MO-Defined-Type - leaf latencyMonitorThreshholdMax { - description "Maximum latency monitor threshold"; + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorThreshholdMx; + type nw_Counter64; + description "Administratively Prohibited sent"; } - // Type is an MO-Defined-Type - leaf latencyMonitorState { - description "Latency monitor state"; + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_latencyMonitorSt; + type nw_Counter64; + description "Administratively Prohibited received"; } - } - - grouping platform_BufferMonitor-group { - // description - // Type is an MO-Defined-Type - leaf sampling { - description "Buffer Monitor Sampling"; + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorSampling; + type nw_Counter64; + description "Time Exceeded sent "; } - // Type is an MO-Defined-Type - leaf bufferMonitorThreshhold { - description "Buffer monitor threshold"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorThreshhold; + type nw_Counter64; + description "Time Exceeded received"; } - // Type is an MO-Defined-Type - leaf bufferMonitorState { - description "Buffer monitor state"; + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorSt; + type nw_Counter64; + description "Parameter Problems sent"; } - // Type is an MO-Defined-Type - leaf bufferMonitorMode { - description "Buffer monitor mode"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Type is an MO-Defined-Type - type platform_bufferMonitorMd; + type nw_Counter64; + description "Parameter Problems received"; } - } - - grouping satm_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Echo Request sent"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter64; + description "Echo Request received"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_Counter64; + description "Echo Replies sent"; } - // Discovered extended chassis - container dextch-items { - list DExtCh-list { - config "false"; - key "vendor model ser"; + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { + config "false"; - // Added containment: Prefix=dextch - // Acquired From Package satm - uses satm_DExtCh-group; - } + type nw_Counter64; + description "Echo Replies received"; } - // Fabric port definition - container fabp-items { - list FabP-list { - config "false"; - key "id"; + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { + config "false"; - // Added containment: Prefix=fabp - // Acquired From Package satm - uses satm_FabP-group; - } + type nw_Counter64; + description "Redirects sent"; } - } - - grouping satm_DExtCh-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_ExtChOperSt; + type nw_Counter64; + description "Redirects received"; } - // Extended chassis software version - // Type is an MO-Defined-Type - leaf ver { + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - description "Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Packet Too Big sent"; } - // Switch software version - // Type is an MO-Defined-Type - leaf swVer { + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - description "Switch Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Packet Too Big received"; } - // Interim extended chassis software version - // Type is an MO-Defined-Type - leaf intVer { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Interim Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Router Advertisements sent"; } - // Interim switch software version - // Type is an MO-Defined-Type - leaf swIntVer { + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { config "false"; - description "Interim Switch Software Version"; - // Type is an MO-Defined-Type - type cap_Version; + type nw_Counter64; + description "Router Advertisements received"; } - // Extended chassis software generation - // Type is an MO-Defined-Type - leaf swGen { + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { config "false"; - description "Software Generation"; - // Type is an MO-Defined-Type - type satm_SwGen; + type nw_Counter64; + description "Router Solicitations sent"; } - // Control channel fabric port - // Type is an MO-Defined-Type - leaf controlFPort { + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { config "false"; - description "Control Channel Fabric Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Router Solicitations received"; } - // The vendor manufacturing this device. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf vendor { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { config "false"; - description "Vendor"; - // Type is an MO-Defined-Type - type eqpt_Vendor; + type nw_Counter64; + description "Neighbor Advertisements sent"; } - // The device model - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf model { + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { config "false"; - description "Model"; - // Type is an MO-Defined-Type - type eqpt_Model; + type nw_Counter64; + description "Neighbor Advertisements received"; } - // The device revision. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf rev { + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { config "false"; - description "Revision"; - // Type is an MO-Defined-Type - type eqpt_Revision; + type nw_Counter64; + description "Neighbor Solicitations sent"; } - // The device serial number. - // From Interface eqpt:Dev - // Type is an MO-Defined-Type - leaf ser { + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { config "false"; - description "Serial Number"; - // Type is an MO-Defined-Type - type eqpt_Serial; + type nw_Counter64; + description "Neighbor Solicitations received"; } - // Identifier for the item - // Inherited From eqpt:Item - // Modified by Override: satm:DExtCh->id - // Modified by Override: eqpt:Cont->id - // Type is an MO-Defined-Type - leaf id { + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type eqpt_Id { - range "101..199"; - } + type nw_Counter64; + description "Duplicate router RA received"; } - // From Interface naming:Described - // Inherited From eqpt:Cont - // Type is an MO-Defined-Type - leaf descr { + // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT + // Ephemeral data + leaf fastpthRcvd { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Fastpath Packets"; } - } - - grouping satm_FabP-group { - // Interface ID of port - // Type is an MO-Defined-Type - leaf id { + // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT + // Ephemeral data + leaf fastpathDsbleIgnRcvd { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } - // Fabric port operational state - // Type is an MO-Defined-Type - leaf operSt { + // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT + // Ephemeral data + leaf fastpathOtherIgnRcvd { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_OperSt; + type nw_Counter64; + description "Ignored fastpath packets - others"; } - // Extended chassis id - // Type is an MO-Defined-Type - leaf extChId { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT + // Ephemeral data + leaf mldV1QueriesSent { config "false"; - description "Extended Chassis ID"; - // Type is an MO-Defined-Type - type eqpt_ExtChId; + type nw_Counter64; + description "V1 queries sent"; } - // Fabric port FSM state - // Type is an MO-Defined-Type - leaf fsmSt { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT + // Ephemeral data + leaf mldV1QueriesRecv { config "false"; - description "Fabric FSM State"; - // Type is an MO-Defined-Type - type satm_FpFsmSt; + type nw_Counter64; + description "V1 queries received"; } - leaf remoteLinkId { + + // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT + // Ephemeral data + leaf mldV2QueriesSent { config "false"; - type uint16; + + type nw_Counter64; + description "V2 queries sent"; } - // Fabric port flags - // Type is an MO-Defined-Type - leaf flags { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT + // Ephemeral data + leaf mldV2QueriesRecv { config "false"; - description "Fabric Port Flags"; - // Type is an MO-Defined-Type - type satm_FportFlags; + type nw_Counter64; + description "V2 queries received"; } - // Satellite manager host port - container hostp-items { - list HostP-list { - config "false"; - key "id"; + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV1ReportsSent { + config "false"; - // Added containment: Prefix=hostp - // Acquired From Package satm - uses satm_HostP-group; - } + type nw_Counter64; + description "V1 reports sent"; } - // Remote fcot definition - container remotefcot-items { + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV1ReportsRecv { + config "false"; - // Added containment as a singleton: Prefix=remotefcot - // Acquired From Package satm - uses satm_RemoteFcot-group; + type nw_Counter64; + description "V1 reports received"; } - // Remote X2 fcot definition - container remotefcotx2-items { + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV2ReportsSent { + config "false"; - // Added containment as a singleton: Prefix=remotefcotx2 - // Acquired From Package satm - uses satm_RemoteFcotX2-group; + type nw_Counter64; + description "V2 reports sent"; } - } - grouping satm_HostP-group { - - // Interface ID of port - // Type is an MO-Defined-Type - leaf id { + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV2ReportsRecv { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "V2 reports received"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT + // Ephemeral data + leaf mldV1LeavesSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type satm_HpOperSt; + type nw_Counter64; + description "V1 leaves sent"; } - // Fabric port - // Type is an MO-Defined-Type - leaf fabricPort { + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT + // Ephemeral data + leaf mldV1LeavesRecv { config "false"; - description "Fabric Port"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "V1 leaves received"; } } - grouping satm_RemoteFcot-group { - leaf isFcotPresent { - config "false"; - type boolean; - } + grouping icmpv6_ICMPv6EventLogs-group { + description "ICMPv6 Event History Logging"; - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + // Type of Event + leaf eventType { - // Type is an MO-Defined-Type - type ethpm_FcotState; + type icmpv6_EventType; + description "Event Log Type"; } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Type of Event LogSize + leaf logSize { - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type icmpv6_EventLogSize; + description "Event Log Size"; } + } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + grouping igmpsnoop_Entity-group { + description "Holds IGMP Snooping Entity Information"; - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; - type string; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf xcvrId { - config "false"; - type uint8; + + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf xcvrExtId { + + // Operational state + leaf operSt { config "false"; - type uint8; + + type nw_EntOperSt; + description "Operational State"; } - leaf connectType { + + // Operational errors qualifier + leaf operErr { config "false"; - type uint8; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Xcvr code field - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf xcvrCode { - config "false"; - description "Transceiver Code"; + // This objects hold per igmp instance information. There is only + // one instance of igmp running in the system today + container inst-items { - // Type is an MO-Defined-Type - type ethpm_SfpXcvrCodeBytes; + uses igmpsnoop_Inst-group; + description "Holds IGMP Snooping Instance information"; } - leaf encoding { - config "false"; - type uint8; + } + + grouping igmpsnoop_Inst-group { + description "Holds IGMP Snooping Instance information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - leaf brIn100MHz { - config "false"; - type uint8; + + // Administrative state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf baseResvd1 { - config "false"; - type uint8; + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - leaf distInKmFor9u { + + // Operational errors qualifier + leaf operErr { config "false"; - type uint8; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf distIn100mFor9u { + + // All router multicast group address (GIPo), outer multicast + // encapsulation ip address + leaf allRtrMcastEncap { config "false"; - type uint8; + + type mcast_GrpIp; + description "All Router Multicast Encapsulation"; } - leaf distIn10mFor50u { + + // Flags + leaf flags { config "false"; - type uint8; + + type ipmcsnoop_InstFlags; + description "Flags"; } - leaf distIn10mFor60u { - config "false"; - type uint8; + + // This objects hold per igmp domain information + container dom-items { + + uses igmpsnoop_Dom-group; + description "Holds IGMP Snooping Domain information"; } - leaf distIn1mForCu { - config "false"; - type uint8; + + // This objects hold per Instance statistics operational + // information. This is a singleton within Instance + container inststats-items { + + uses igmpsnoop_InstStats-group; + description "Holds statistics data per Igmpsnoop Instance"; } - leaf baseResvd2 { + } + + grouping igmpsnoop_Dom-group { + description "Holds IGMP Snooping Domain information"; + leaf operCfgRecovery { config "false"; - type uint8; + type boolean; + description "Running configuration recovery"; } - leaf vendorName { - config "false"; - type string; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "IP Multicast snooping domain name"; } - leaf baseResvd3 { + + // Id for this domain @@@ This comes from the domain id assigned by the + // PE for the bridge domain + leaf id { config "false"; - type uint8; + + type l2_DomId; + description "Operational domain identifier"; } - leaf vendorPn { - config "false"; + leaf encap { type string; + description "L2 Domain Fabric Encapsulation"; } - leaf vendorRev { + + // Admin State + leaf adminSt { config "false"; - type string; + + type nw_AdminSt; + description "Administrative State"; } - // Reserved field 4 - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf baseResvd4 { - config "false"; - description "Base Reserved Field"; + // Controls + leaf ctrl { - // Type is an MO-Defined-Type - type ethpm_SfpReserved4Array; + type ipmcsnoop_DomControl; + description "Controls for IP milticast domains"; } - leaf ccid { + + // Flags + leaf flags { config "false"; - type uint8; + + type ipmcsnoop_DomFlags; + description "Flags for IP milticast domains"; } - // Extended option - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf extOption { + // Forwarding mode + leaf fwdMode { config "false"; - description "Extended Option"; - // Type is an MO-Defined-Type - type ethpm_SfpExtendedOptionBytes; + type ipmcsnoop_FwdMode; + description "Operating Fowarding Mode"; } - leaf brMaxMargin { + + // Number of router interfaces + leaf numRtrIf { config "false"; - type uint8; + + type nw_Counter32; + description "Multicast Router Interfaces"; } - leaf brMinMargin { + + // Number of multicast groups + leaf numMcGrp { config "false"; - type uint8; + + type nw_Counter32; + description "Number of Multicast Groups"; } - leaf vendorSn { + + // Number of Source groups + leaf numSrcGrp { config "false"; - type string; + + type nw_Counter32; + description "Number of Multicast Source Groups"; } - leaf dateCode { + leaf grpFlushTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Group Flush No Querier Timestamp"; } - leaf diagMonType { + leaf nextQueryTs { config "false"; - type uint8; + type union { + type string; + type uint64; + } + description "Next Query Timestamp"; } - leaf enhOption { + leaf nextQueryExpTs { config "false"; - type uint8; + type union { + type string; + type uint64; + } + description "Next Query Timestamp"; } - leaf ccex { + + // Mrtr Epg Id used when sending packets to mrtr port + leaf mrtrEpgId { config "false"; - type uint8; + + type l2_DomId; + description "Mrouter Endpoint Group ID"; } - // Vendor data - // Inherited From ethpm:AFcot - // Type is an MO-Defined-Type - leaf vendorData { - config "false"; - description "TBD"; + // IGMP database + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type ethpm_X2VendorDataBytes; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses igmpsnoop_Db-group; + description "Database record with type of data to display list"; + } + description "Database record with type of data to display"; } - leaf maxSpeed { - config "false"; - type uint32; + + // This objects hold per igmp domain statistics operational + // information. This is a singleton within a Dom + container domstats-items { + + uses igmpsnoop_DomStats-group; + description "Holds statistics data per Igmpsnoop Domain"; } - leaf minSpeed { - config "false"; - type uint32; + + // Multicast router if that is configured statically + container strtrif-items { + list StRtrIf-list { + config "false"; + key "id"; + + uses igmpsnoop_StRtrIf-group; + description "Holds IGMP Static Router Interface configuration information list"; + } + description "Holds IGMP Static Router Interface configuration information"; } - leaf fcotNum { - config "false"; - type uint8; + + // Multicast router if @@@ Mulitcast router if in the BD. These can be either + // configured by the admin or discovered through protocols + // like PIM, IGMP. + container rtrif-items { + list RtrIf-list { + config "false"; + key "id"; + + uses igmpsnoop_RtrIf-group; + description "Holds configuration information for Router Interface list"; + } + description "Holds configuration information for Router Interface"; } - leaf gigEthCC { - config "false"; - type uint8; + + // This objects is the parent for vlan config mode params + container vlan-items { + list Vlan-list { + key "vlanid"; + + uses igmpsnoop_Vlan-group; + description "Holds IGMP snooping vlan configurations list"; + } + description "Holds IGMP snooping vlan configurations"; } - leaf fCTxType { - config "false"; - type uint8; + + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; + + uses igmpsnoop_Intf-group; + description "Holds IGMP snooping Interface configurations list"; + } + description "Holds IGMP snooping Interface configurations"; } - } - grouping satm_RemoteFcotX2-group { - leaf isFcotPresent { - config "false"; - type boolean; + // This objects holds configurable params in + // bridge domain config mode + container bd-items { + list BD-list { + key "bdid"; + + uses igmpsnoop_BD-group; + description "Holds IGMP Snooping Bridge Domain Configurations list"; + } + description "Holds IGMP Snooping Bridge Domain Configurations"; } - // Fcot state - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; + // This objects holds configurable params in global config mode + container gl-items { - // Type is an MO-Defined-Type - type ethpm_FcotState; + uses igmpsnoop_Gl-group; + description "Holds IGMP Snooping Configurations in Global Configuration Mode"; } + } - // Fcot flags - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type - leaf flags { + grouping igmpsnoop_Db-group { + description "Database record with type of data to display"; + + // Ephemeral data + leaf name { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ethpm_FcotFlags; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Fcot type - // Inherited From ethpm:FcotBase - // Type is an MO-Defined-Type + // Type of the repository + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type ethpm_FcotType; - } - leaf typeName { - config "false"; - type string; - } - leaf connectType { - config "false"; - type uint8; + type ipmcsnoop_DbT; + description "Database Type identifying the oper data to display"; } - leaf bitEncoding { + + // Ephemeral data + leaf totalMacCount { config "false"; - type uint8; + type uint32; + description "Total mac count"; } - // Bit rate (Mbps) - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf bitRateMbps { - config "false"; - description "TBD"; + // igmpsnoop global records + // Ephemeral data + container gsnoop-items { - // Type is an MO-Defined-Type - type ethpm_X2BitRateBytes; - } - leaf protocolType { - config "false"; - type uint8; + uses igmpsnoop_GSnoopRec-group; + description "Holds IGMP Snooping Global Parameters"; } - // 10G eth code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgEthCode { - config "false"; - description "TBD"; + // igmpsnoop Vlan records + // Ephemeral data + container vsnoop-items { - // Type is an MO-Defined-Type - type ethpm_X2XgEthCodeBytes; + // Ephemeral data + list VSnoopRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VSnoopRec-group; + description "Holds IGMP Snooping Parameters per Vlan list"; + } + description "Holds IGMP Snooping Parameters per Vlan"; } - // Sonet SDH code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf sonetSdhCode { - config "false"; - description "TBD"; + // Vlan record + // Ephemeral data + container vlanrec-items { - // Type is an MO-Defined-Type - type ethpm_X2SonetSdhCodeBytes; + // Ephemeral data + list VlanRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VlanRec-group; + description "Holds IGMP Snooping Vlan Record list"; + } + description "Holds IGMP Snooping Vlan Record"; } - // 10G fc code - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf xgFcCode { - config "false"; - description "TBD"; + // Mrouter record + // Ephemeral data + container mrouter-items { - // Type is an MO-Defined-Type - type ethpm_X2XbFcCodeBytes; + // Ephemeral data + list MRouterRec-list { + config "false"; + key "vlanid interface"; + + uses igmpsnoop_MRouterRec-group; + description "Holds IGMP Snooping Static Multicast Router Record list"; + } + description "Holds IGMP Snooping Static Multicast Router Record"; } - // Range - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf range { - config "false"; - description "TBD"; + // Explicit Tracking record + // Ephemeral data + container expTrack-items { - // Type is an MO-Defined-Type - type ethpm_X2RangeBytes; + // Ephemeral data + list ExpTrackRec-list { + config "false"; + key "vlanid grpAddr srcAddr intf"; + + uses igmpsnoop_ExpTrackRec-group; + description "Holds IGMP Snooping Explicit Host Tracking Record list"; + } + description "Holds IGMP Snooping Explicit Host Tracking Record"; } - // Fibre type - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf fibreType { - config "false"; - description "TBD"; + // Vlan statistics MO + // Ephemeral data + container vstats-items { - // Type is an MO-Defined-Type - type ethpm_X2FibreTypeBytes; + // Ephemeral data + list VlanStatsRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_VlanStatsRec-group; + description "Holds IGMP Snooping Per Vlan Statistics list"; + } + description "Holds IGMP Snooping Per Vlan Statistics"; } - // Wavelength channel 0 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh0 { - config "false"; - description "TBD"; + // Ephemeral data + container gstats-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + uses igmpsnoop_GStatsRec-group; + description "Holds IGMP Snooping Global Statistics"; } - // Wavelength channel 1 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh1 { - config "false"; - description "TBD"; + // Report policy MO + // Ephemeral data + container policy-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list ReportPolicyStats-list { + config "false"; + key "vlanid qcount"; + + uses igmpsnoop_ReportPolicyStats-group; + description "Holds IGMP Snooping Report Policy Statistics list"; + } + description "Holds IGMP Snooping Report Policy Statistics"; } - // Wavelength channel 2 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh2 { - config "false"; - description "TBD"; + // Group MO + // Ephemeral data + container group-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list IgmpsnGroupRec-list { + config "false"; + key "vlanid groupaddr sourceaddr ifname"; + + uses igmpsnoop_IgmpsnGroupRec-group; + description "Holds IGMP Snooping Group Record list"; + } + description "Holds IGMP Snooping Group Record"; } - // Wavelength channel 3 - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf waveLenCh3 { - config "false"; - description "TBD"; + // Multicast Group records + // Ephemeral data + container mcgrp-items { - // Type is an MO-Defined-Type - type ethpm_X2WavelengthChannelBytes; + // Ephemeral data + list McGrpRec-list { + config "false"; + key "addr"; + + uses igmpsnoop_McGrpRec-group; + description "Holds IGMP Snooping Group Information list"; + } + description "Holds IGMP Snooping Group Information"; } - leaf vendorName { - config "false"; - type string; + + // Multicast Group records + // Ephemeral data + container querier-items { + + // Ephemeral data + list QuerierRec-list { + config "false"; + key "vlanid"; + + uses igmpsnoop_QuerierRec-group; + description "Holds IGMP Snooping querier specific information list"; + } + description "Holds IGMP Snooping querier specific information"; } - leaf vendorPn { + } + + grouping igmpsnoop_GSnoopRec-group { + description "Holds IGMP Snooping Global Parameters"; + + // Ephemeral data + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf vendorRev { + + // Ephemeral data + leaf snooping { config "false"; - type string; + type boolean; + description "Global Snooping Enabled Disabled"; } - leaf vendorSerNo { + + // Ephemeral data + leaf omf { config "false"; - type string; + type boolean; + description "Global Optimized Multicast Flooding"; } - leaf dateCode { + + // Ephemeral data + leaf grepsup { config "false"; - type string; + type boolean; + description "Global Report Suppression"; } - leaf fiveVStressEnv { + + // Ephemeral data + leaf gv3repsup { config "false"; - type uint8; + type boolean; + description "Gloabl v3 Report Suppression"; } - leaf ciscoPid { + + // Ephemeral data + leaf glinklocalgrpsup { config "false"; - type string; + type boolean; + description "Global Logical Link Suppression"; } - leaf ciscoVid { + + // Ephemeral data + leaf groupTimeout { config "false"; - type string; + type uint32; + description "Group Timeout "; } - leaf ciscoSN { + + // Ephemeral data + leaf proxyGeneralQuery { config "false"; - type string; + type boolean; + description "Global Proxy Queries"; } - leaf ciscoPN { + + // Ephemeral data + leaf gmaxResponseTime { config "false"; - type string; + type uint32; + description "Max Response Time"; } - leaf ciscoRev { + } + + grouping igmpsnoop_VSnoopRec-group { + description "Holds IGMP Snooping Parameters per Vlan"; + + // Ephemeral data + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Extended vendor specific info - // Inherited From ethpm:AFcotX2 - // Type is an MO-Defined-Type - leaf extVendorSpecific { + // Ephemeral data + leaf lkpmode { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type ethpm_X2ExtendedVendorSpecificInfoBytes; + type ipmcsnoop_LkpModeT; + description "Lookup Mode"; } - leaf maxSpeed { + + // Ephemeral data + leaf snoopOn { config "false"; - type uint32; + type boolean; + description "Indicates if Vlan Snooping is Enabled/Disabled"; } - leaf minSpeed { + + // Ephemeral data + leaf repsup { config "false"; - type uint32; + type boolean; + description "Vlan Report Suppression"; } - leaf fcotNum { + + // Ephemeral data + leaf v3repsup { config "false"; - type uint8; + type boolean; + description "Vlan v3 Report Suppression"; } - leaf fcotType { + + // Ephemeral data + leaf vlinklocalgrpsup { config "false"; - type uint8; + type boolean; + description "Vlan logical link Group Suppressison"; } - leaf gigEthCC { + + // Ephemeral data + leaf omf_enabled { config "false"; - type uint8; + type boolean; + description "Vlan Optimized Multicast Flooding"; } - } - grouping adjacency_Entity-group { + // Ephemeral data + leaf vlanid { + config "false"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Last member query interval + // Ephemeral data + leaf lastMbrIntvl { + config "false"; + + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Querier version + // Ephemeral data + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_Ver; + description "Current IGMP Version"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Querier IP Address + // Ephemeral data + leaf addr { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type mcast_QuerierIp; + description "Querier IP Address"; } - container inst-items { + // Query interval + // Ephemeral data + leaf queryIntvl { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package adjacency - uses adjacency_Inst-group; + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping adjacency_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Robustness factor + // Ephemeral data + leaf robustFac { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mcast_RobustFactor; + description "Robustness Factor"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf routePortcnt { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Route Port Count"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Ephemeral data + leaf groupcnt { config "false"; - description "Controls"; + type uint32; + description "Groups Under This Vlan"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf vpcFunction { + config "false"; + type boolean; + description "Indicates if VPC Function is Enabled"; } - container dom-items { - list Dom-list { - config "false"; - key "name"; - // Added containment: Prefix=dom - // Acquired From Package adjacency - uses adjacency_Dom-group; - } + // Ephemeral data + leaf fastleave { + config "false"; + type boolean; + description "Indicates if Fast-leave is Enabled"; } } - grouping adjacency_Dom-group { + grouping igmpsnoop_VlanRec-group { + description "Holds IGMP Snooping Vlan Record"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf vlanid { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - container db-items { - list Db-list { + + // Ephemeral data + leaf macCount { + config "false"; + type uint32; + description "MAC Entries Count for a Vlan Identifier"; + } + + // MAC record + // Ephemeral data + container mac-items { + + // Ephemeral data + list MacRec-list { config "false"; - key "type"; + key "macAddress"; - // Added containment: Prefix=db - // Acquired From Package adjacency - uses adjacency_Db-group; + uses igmpsnoop_MacRec-group; + description "Holds IGMP Snooping MAC-Address Record list"; } + description "Holds IGMP Snooping MAC-Address Record"; } } - grouping adjacency_Db-group { + grouping igmpsnoop_MacRec-group { + description "Holds IGMP Snooping MAC-Address Record"; + + // Ephemeral data + leaf macAddress { + config "false"; + type address_Mac; + description "MAC Address of the Outgoing Interface"; + } - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type adjacency_DbT; + type ipmcsnoop_MacType; + description "Type of MAC Address"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf age { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Seconds Since Last Seen"; } - container if-items { - list If-list { + + // MAC-OIF record + // Ephemeral data + container oif-items { + + // Ephemeral data + list MacOifRec-list { config "false"; - key "ifId"; + key "oif"; - // Added containment: Prefix=if - // Acquired From Package adjacency - uses adjacency_If-group; + uses igmpsnoop_MacOifRec-group; + description "Holds IGMP Snooping MAC-Address OIF Record list"; } + description "Holds IGMP Snooping MAC-Address OIF Record"; } } - grouping adjacency_If-group { + grouping igmpsnoop_MacOifRec-group { + description "Holds IGMP Snooping MAC-Address OIF Record"; - // Type is an MO-Defined-Type - leaf ifId { + // Ephemeral data + leaf oif { config "false"; - description "Logical Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; - } - container ip-items { - list AdjEp-list { - config "false"; - key "ip"; - - // Added containment: Prefix=ip - // Acquired From Package adjacency - uses adjacency_AdjEp-group; - } + description "Outgoing Interface for a MAC Address"; } } - grouping adjacency_AdjEp-group { - leaf ip { - config "false"; - type address_Ip; - } - leaf mac { - config "false"; - type address_Mac; - } + grouping igmpsnoop_MRouterRec-group { + description "Holds IGMP Snooping Static Multicast Router Record"; - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf type { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type adjacency_AdjOperSt; + type ipmcsnoop_MrouteType; + description "Specify the Type of Mroute for a VLAN/BD"; } - // Type is an MO-Defined-Type - leaf physIfId { + // Ephemeral data + leaf interface { config "false"; - description "Physical Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Specify the Interface Port of Mroute for a VLAN/BD"; } - leaf source { + + // Ephemeral data + leaf uptime { config "false"; type string; + description "Specify the Uptime of Mroute for a VLAN/BD"; } - // Flags that this ep has - // Type is an MO-Defined-Type - leaf flags { + // Ephemeral data + leaf expTime { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type adjacency_AdjFlags; + type string; + description "Specify the Expiry timestamp of Mroute for a VLAN/BD"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf vlanid { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } } - grouping arp_Entity-group { + grouping igmpsnoop_ExpTrackRec-group { + description "Holds IGMP Snooping Explicit Host Tracking Record"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf vlanid { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf intf { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_IfId; + description "Interface Identifier. Supported types are ethernet-like, port/channel, Vlan interfaces."; } - // This object holds per arp instance information. There is - // only one instance of arp running in the system today - container inst-items { + // Ephemeral data + leaf reporter { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package arp - uses arp_Inst-group; + type ipmcsnoop_Reporter; + description "Report IP Address"; } - } - - grouping arp_Inst-group { - - // Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "ARP Global Timeout"; - // Type is an MO-Defined-Type - type arp_Timeout; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Uptime Timestamp"; } - // Evpn-Timeout - // Type is an MO-Defined-Type - leaf evpn_timeout { - description "Refresh in EVPN on host moves"; - - // Type is an MO-Defined-Type - type arp_EvpnTimeout; + // Ephemeral data + leaf lastJoin { + config "false"; + type union { + type string; + type uint64; + } + description "Last join Timestamp"; } - // Suppression Timeout - // Type is an MO-Defined-Type - leaf suppression_timeout { - description "Suppression Timeout"; - - // Type is an MO-Defined-Type - type arp_SuppressionTimeout; + // Ephemeral data + leaf expires { + config "false"; + type union { + type string; + type uint64; + } + description "Expiry Timestamp"; } - // Off list Timeout - // Type is an MO-Defined-Type - leaf offListTimeout { - description "Off-list timeout"; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source IP Address"; + } - // Type is an MO-Defined-Type - type arp_OffListTimeout; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group IP Address"; } - // RARP fabric forwarding - // Type is an MO-Defined-Type - leaf rarpFabricFwding { - description "RARP Fabric Forwarding"; + // Ephemeral data + leaf version { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_VersionT; + description "Version v3/v2"; } - // RARP Fabric Fwding Rate - // Type is an MO-Defined-Type - leaf rarpFabricFwdingRate { - description "RARP Fabric Forwarding Rate"; - - // Type is an MO-Defined-Type - type arp_RarpForwadingRate; + // Ephemeral data + leaf numReports { + config "false"; + type uint32; + description "Number of Reports Sent"; } + } - // ARP Cache Limit - // Type is an MO-Defined-Type - leaf cacheLimit { - description "Cache Limit"; + grouping igmpsnoop_VlanStatsRec-group { + description "Holds IGMP Snooping Per Vlan Statistics"; - // Type is an MO-Defined-Type - type arp_ArpCacheLimit; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Uptime Timestamp"; } - // ARP Cache SysLog Rate - // Type is an MO-Defined-Type - leaf cacheSyslogRate { - description "Cache Syslog Rate"; - - // Type is an MO-Defined-Type - type arp_ArpCacheSyslogRate; + // Ephemeral data + leaf vpr { + config "false"; + type uint32; + description "Packets Received"; } - // ARP Logging Level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging Level"; + // Ephemeral data + leaf v1rr { + config "false"; + type uint32; + description "IGMPv1 Reports Received"; + } - // Type is an MO-Defined-Type - type arp_LoggingLevel; + // Ephemeral data + leaf v2rr { + config "false"; + type uint32; + description "IGMPv2 Reports Received"; } - // Adjacency Manager Logging Level - // Type is an MO-Defined-Type - leaf adjLoggingLevel { - description "Adjacency Events Logging Level"; + // Ephemeral data + leaf v3rr { + config "false"; + type uint32; + description "IGMPv3 Reports Received"; + } - // Type is an MO-Defined-Type - type arp_LoggingLevel; + // Ephemeral data + leaf v3qr { + config "false"; + type uint32; + description "IGMPv3 Queries Received"; } - // Type is an MO-Defined-Type - leaf ipAdjRouteDistance { - description "IP Adjacency Route Distance"; + // Ephemeral data + leaf v2lr { + config "false"; + type uint32; + description "IGMPv2 Leave Received"; + } - // Type is an MO-Defined-Type - type arp_AdjRouteDist; + // Ephemeral data + leaf phr { + config "false"; + type uint32; + description "PIM HELLOs Received count"; } - // Enable / Disable allow-static-arp-outside-subnet - // Type is an MO-Defined-Type - leaf allowStaticArpOutsideSubnet { - description "Allow Static ARP Outside Subnet"; + // Ephemeral data + leaf irr { + config "false"; + type uint32; + description "Invalid Reports Received"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf iqr { + config "false"; + type uint32; + description "Invalid Queries Received"; } - // Enable / Disable arp sw-replication - // Type is an MO-Defined-Type - leaf arpUnnumSviSwReplication { - description "ARP Packets Replication In Software For Unnumbered SVI"; + // Ephemeral data + leaf v2ls { + config "false"; + type uint32; + description "IGMPv2 Leaves Suppressed"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf v3gs { + config "false"; + type uint32; + description "IGMPv3 Group records Suppressed"; } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configErr { + // Ephemeral data + leaf vmr { config "false"; - description "Config Error Inst"; + type uint32; + description "Report Version mismatch"; + } - // Type is an MO-Defined-Type - type arp_ConfigErrInst; + // Ephemeral data + leaf upr { + config "false"; + type uint32; + description "Unknown Packets Received"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf qo { + config "false"; + type uint32; + description "Queries Originated"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf v2ro { + config "false"; + type uint32; + description "IGMPv2 Proxy-Reports Originated"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf v2lo { + config "false"; + type uint32; + description "IGMPv2 Proxy-Leaves Originated"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf v3ro { + config "false"; + type uint32; + description "IGMPv3 Proxy-Reports Originated"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf vpsr { + config "false"; + type uint32; + description "Packets Sent to routers"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf str { + config "false"; + type uint32; + description "STP TCN Received"; } - // Holds GlobalStats information - container globalstats-items { + // Ephemeral data + leaf cps { + config "false"; + type uint32; + description "CFS Packets Sent"; + } - // Added containment as a singleton: Prefix=globalstats - // Acquired From Package arp - uses arp_GlobalStats-group; + // Ephemeral data + leaf cpr { + config "false"; + type uint32; + description "CFS Packets Received"; } - // This object holds per ARP domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Ephemeral data + leaf cpe { + config "false"; + type uint32; + description "CFS Packets Errored"; + } - // Added containment: Prefix=dom - // Acquired From Package arp - uses arp_Dom-group; - } + // Ephemeral data + leaf mps { + config "false"; + type uint32; + description "MCT Packets Sent"; } - // IpV4 Glean throttling MO - container ipgleanthrottle-items { + // Ephemeral data + leaf mpr { + config "false"; + type uint32; + description "MCT Packets Received"; + } - // Added containment as a singleton: Prefix=ipgleanthrottle - // Acquired From Package arp - uses arp_Ipv4Throttle-group; + // Ephemeral data + leaf mpe { + config "false"; + type uint32; + description "MCT Packets Errored"; } - // This object holds the size of the Log Tables for - // various types of ARP events - container evtLogs-items { - list EventLogs-list { - key "eventType"; + // Ephemeral data + leaf v1qr { + config "false"; + type uint32; + description "IGMPv1 Queries Received"; + } - // Added containment: Prefix=evtLogs - // Acquired From Package arp - uses arp_EventLogs-group; - } + // Ephemeral data + leaf v2qr { + config "false"; + type uint32; + description "IGMPv2 Queries Received"; } - // This object holds IP ARP Sync for VPC - container vpc-items { + // Ephemeral data + leaf v1rs { + config "false"; + type uint32; + description "IGMPv1 Reports Suppressed"; + } - // Added containment as a singleton: Prefix=vpc - // Acquired From Package arp - uses arp_Vpc-group; + // Ephemeral data + leaf v2rs { + config "false"; + type uint32; + description "IGMPv2 Reports Suppressed"; } - // Holds Suppression-cache table oper data - container db-items { - list DbSupCache-list { - config "false"; - key "type"; + // Ephemeral data + leaf vlanid { + config "false"; - // Added containment: Prefix=db - // Acquired From Package arp - uses arp_DbSupCache-group; - } + type ipmcsnoop_Vlanid; + description "Vlan identifier"; } } - grouping arp_GlobalStats-group { + grouping igmpsnoop_GStatsRec-group { + description "Holds IGMP Snooping Global Statistics"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf pr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Global Packets Received"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf invPkt { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type uint32; + description "Global Packets Errored"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { + // Ephemeral data + leaf pnv { config "false"; - description "Controls"; + type uint32; + description "Global Packets for Non-Snooped Vlans"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf loopBkPkt { + config "false"; + type uint32; + description "Global Packets Loopbacked"; } - // Holds controller-statistics information - container controllerstats-items { + // Ephemeral data + leaf mrdLoopBk { + config "false"; + type uint32; + description "Global MRD Loopback Packets"; + } - // Added containment as a singleton: Prefix=controllerstats - // Acquired From Package arp - uses arp_ControllerStats-group; + // Ephemeral data + leaf pf { + config "false"; + type uint32; + description "Global Packets flooded"; } - // Holds VPC related statistics information - container vpcstats-items { + // Ephemeral data + leaf vpcDrQs { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Sent"; + } - // Added containment as a singleton: Prefix=vpcstats - // Acquired From Package arp - uses arp_VpcStats-group; + // Ephemeral data + leaf vpcDrQr { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Received"; } - // Holds Tunnel statistics information - container tunnelstats-items { + // Ephemeral data + leaf vpcDrQf { + config "false"; + type uint32; + description "Global vPC PIM DR Queries Failed"; + } - // Added containment as a singleton: Prefix=tunnelstats - // Acquired From Package arp - uses arp_TunnelStats-group; + // Ephemeral data + leaf vpcDrUs { + config "false"; + type uint32; + description "Global vPC PIM DR updates Sent"; } - // Holds Suppression-cache related statistics - container supcachestats-items { + // Ephemeral data + leaf vpcDrUr { + config "false"; + type uint32; + description "Global vPC PIM DR updates Received"; + } - // Added containment as a singleton: Prefix=supcachestats - // Acquired From Package arp - uses arp_SupCacheStats-group; + // Ephemeral data + leaf vpcDrUf { + config "false"; + type uint32; + description "Global vPC PIM DR updates Failed"; } - // Holds open-flow error statistics - container ofastats-items { + // Ephemeral data + leaf vpcCfsSf { + config "false"; + type uint32; + description "Global vPC CFS send fail"; + } - // Added containment as a singleton: Prefix=ofastats - // Acquired From Package arp - uses arp_OfaStats-group; + // Ephemeral data + leaf vpcCfsRs { + config "false"; + type uint32; + description "GlobalvPC CFS message response Sent"; } - } - grouping arp_ControllerStats-group { - leaf adjAddCount { + // Ephemeral data + leaf vpcCfsRr { config "false"; - type uint64; + type uint32; + description "GlobalvPC CFS message response Received"; } - leaf adjDelCount { + + // Ephemeral data + leaf vpcCfsRf { config "false"; - type uint64; + type uint32; + description "Global vPC CFS message response Failed"; } - leaf adjAddErrorCount { + + // Ephemeral data + leaf vpcCfsRfp { config "false"; - type uint64; + type uint32; + description "Global vPC CFS message response fail peer-link down"; } - leaf adjDelErrorCount { + + // Ephemeral data + leaf vpcCfsUrls { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Sent"; } - } - grouping arp_VpcStats-group { - leaf cfsPullDropSinceOff { + // Ephemeral data + leaf vpcCfsUrR { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Received"; } - leaf cfsPushDropSinceOff { + + // Ephemeral data + leaf vpcCfsCrlF { config "false"; - type uint64; + type uint32; + description "Global vPC CFS unreliable message Failed"; } - leaf sendIgnorePullReqCfsoe { + + // Ephemeral data + leaf vpccfsrls { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Sent"; } - leaf sendIgnorePushMsgCfsoe { + + // Ephemeral data + leaf vpccfsrlr { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Received"; } - leaf imFailCFSPayload { + + // Ephemeral data + leaf vpccfsrlf { config "false"; - type uint64; + type uint32; + description "Global vPC CFS reliable message Failed"; } - leaf mcecmFailCFSPayload { + + // Ephemeral data + leaf invIod { config "false"; - type uint64; + type uint32; + description "Global invalid IOD Packets"; } - leaf invalidMctPcCFSPayload { + + // Ephemeral data + leaf stptcnr { config "false"; - type uint64; + type uint32; + description "Global STP TCN Messages Received"; } - leaf ptLookFailCFSPayload { + + // Ephemeral data + leaf imapif { config "false"; - type uint64; + type uint32; + description "Global IM API Failed"; } - leaf cfsRspFailInvalidMct { + + // Ephemeral data + leaf mfreqr { config "false"; - type uint64; + type uint32; + description "Global MFDM Download Requests Received"; } - leaf cfsRspFailCfsPayload { + + // Ephemeral data + leaf mfcmps { config "false"; - type uint64; + type uint32; + description "Global MFDM Download Complete Sent"; } - leaf retrieveVpcFailPushMsg { + + // Ephemeral data + leaf mfdgcmps { config "false"; - type uint64; + type uint32; + description "Global MFDM Downgrade Complete Sent"; } - leaf retIfindexFrmVpcFail { + + // Ephemeral data + leaf bufsnt { config "false"; - type uint64; + type uint32; + description "Global Number of Buffers Sent to MFDM"; } - leaf retIfindexFrmVpcFailSync { + + // Ephemeral data + leaf bufackr { config "false"; - type uint64; + type uint32; + description "Global Number of Buffer Acks Received from MFDM"; } - leaf rspSentCfsoe { + + // Ephemeral data + leaf vpcmismatch { config "false"; - type uint64; + type uint32; + description "Global VPC-incr-type Mismatch"; } - leaf rspRecvCfsoe { + } + + grouping igmpsnoop_ReportPolicyStats-group { + description "Holds IGMP Snooping Report Policy Statistics"; + + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - leaf rspRecvCfsoeErr { + + // Ephemeral data + leaf rpmType { config "false"; - type uint64; + type uint32; + description "RPM Type"; } - leaf recvCfsoe { + + // Ephemeral data + leaf policyName { config "false"; - type uint64; + + type ipmcsnoop_PolicyNameT; + description "Policy Name"; } - leaf sentFailCfsoe { + + // Ephemeral data + leaf qcount { config "false"; - type uint64; + type uint32; + description "Queue Count"; } - leaf mcecmSendApiFailCfsoe { + + // Ephemeral data + leaf acceptCount { config "false"; - type uint64; + type uint32; + description "Queue Accept Count"; } - leaf sendCfsoe { + + // Ephemeral data + leaf rejectCount { config "false"; - type uint64; + type uint32; + description "Queue Reject Count"; } + } - // Holds VPC SYNC related statistics - container syncstats-items { + grouping igmpsnoop_IgmpsnGroupRec-group { + description "Holds IGMP Snooping Group Record"; - // Added containment as a singleton: Prefix=syncstats - // Acquired From Package arp - uses arp_VpcSyncStats-group; + // Ephemeral data + leaf ifname { + config "false"; + + type nw_IfId; + description "Interace name for the Group. Supported interfaces include Ethernet-like, Port/Channel, Loopback"; } - } - grouping arp_VpcSyncStats-group { - leaf ptAddFailOfflist { + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan Identifier"; } - leaf mallocFailOfflistDb { + + // Ephemeral data + leaf sourceaddr { config "false"; - type uint64; + type address_Ip; + description "Specify Source IP Address"; } - leaf timerCreateFailOfflistDb { + + // Ephemeral data + leaf groupaddr { config "false"; - type uint64; + type address_Ip; + description "Specify Group Address"; } - leaf adjAddFailOfflistDb { + + // Ephemeral data + leaf ver { config "false"; - type uint64; + type string; + description "Current Version Configured"; } - leaf ptLookupFailOfflistDb { + + // Ephemeral data + leaf sportType { config "false"; - type uint64; + type string; + description "Source Port Type"; } - leaf vlanMismatchOfflistDb { + + // Ephemeral data + leaf gportType { config "false"; - type uint64; + type string; + description "Group Port Type"; } - leaf invalidSviOfflistDb { + + // Ephemeral data + leaf rportType { config "false"; - type uint64; + type string; + description "router Port Type"; } - leaf sviDownOfflistDb { + + // Ephemeral data + leaf rifname { config "false"; - type uint64; + type string; + description "(*,G) interface name"; } - leaf mctDownOfflistDb { + } + + grouping igmpsnoop_McGrpRec-group { + description "Holds IGMP Snooping Group Information"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf ctxTypeInvalidOfflistDb { + + // Group address + // Ephemeral data + leaf addr { config "false"; - type uint64; + + type mcast_GrpIp; + description "Multicast Group Address"; } - leaf vrfInvalidOfflistDb { + + // Version + // Ephemeral data + leaf ver { config "false"; - type uint64; + + type mcast_Ver; + description "Version"; } - leaf invalidIpOfflistDb { + + // Latest reporter + // Ephemeral data + leaf latReporter { config "false"; - type uint64; + + type ipmcsnoop_Reporter; + description "Latest Reporter"; } - leaf ipSanityFailOfflistDb { + + // Ephemeral data + leaf oldHostTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Old Host Timestamp"; } - leaf macSanityFailOfflistDb { + + // Ephemeral data + leaf reportTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Group Report Timer Timestamp"; } - leaf ownRouterMacOfflistDb { + + // Number of Sources + // Ephemeral data + leaf numSrc { config "false"; - type uint64; + + type nw_Counter32; + description "Num of Sources"; } - leaf ownIpOfflistDb { - config "false"; - type uint64; + + // EPG entries in mcast group record + // Ephemeral data + container epg-items { + + // Ephemeral data + list EpgRec-list { + config "false"; + key "fabEncap"; + + uses igmpsnoop_EpgRec-group; + description "Holds IGMP Snooping Per Group Endpoint Record list"; + } + description "Holds IGMP Snooping Per Group Endpoint Record"; } - leaf ownvIpOfflistDb { - config "false"; - type uint64; + + // IGMP report record snooped by igmp-snoop application + // Ephemeral data + container rep-items { + + // Ephemeral data + list ReportRec-list { + config "false"; + key "mcastSrc ver"; + + uses igmpsnoop_ReportRec-group; + description "Holds Report Policy Specific Record list"; + } + description "Holds Report Policy Specific Record"; } - leaf adjCreateFailOfflistDb { + } + + grouping igmpsnoop_EpgRec-group { + description "Holds IGMP Snooping Per Group Endpoint Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf subnetMismatchOfflistDb { + + // Ephemeral data + leaf fabEncap { config "false"; - type uint64; + type string; + description "Fabric Encapsulation"; } - leaf dupEntryOfflistDb { + + // Epg id, identified using the circuit endpoint + // id in the system + // Ephemeral data + leaf id { config "false"; - type uint64; + + type l2_DomId; + description "Endpoint Group ID"; } - leaf ipNotEnOfflistDb { + + // Multicast group address (GIPO'), Outer multicast + // encapsulation ip address for this layer2 domain + // Ephemeral data + leaf mcastEncap { config "false"; - type uint64; + + type mcast_GrpIp; + description "Multicat Encapsulation"; } - leaf totDropOfflistDb { - config "false"; - type uint64; + + // IGMP report record snooped by igmp-snoop application + // Ephemeral data + container rep-items { + + // Ephemeral data + list ReportRec-list { + config "false"; + key "mcastSrc ver"; + + uses igmpsnoop_ReportRec-group; + description "Holds Report Policy Specific Record list"; + } + description "Holds Report Policy Specific Record"; } - leaf totDontDropOfflistDb { + } + + grouping igmpsnoop_ReportRec-group { + description "Holds Report Policy Specific Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totAdjAddOfflistDb { + + // Multicast traffic source + // Ephemeral data + leaf mcastSrc { config "false"; - type uint64; + + type ipmcsnoop_McastSrc; + description "Multicast Source Address"; } - leaf totAdjDelOfflistDb { + + // Version + // Ephemeral data + leaf ver { config "false"; - type uint64; + + type mcast_Ver; + description "Version"; } - leaf totAdjIgnoredOfflistDb { + + // Filter mode + // Ephemeral data + leaf filtMode { config "false"; - type uint64; + + type mcast_FiltMode; + description "Filter Mode"; } - leaf totAdjFrmPeerToAdd { + + // Filter mode + // Ephemeral data + leaf flags { config "false"; - type uint64; + + type ipmcsnoop_RepFlags; + description "Flags"; } - leaf totAdjFrmPeerToDel { - config "false"; - type uint64; + + // OIF list (outgoing interface list) + // Ephemeral data + container oif-items { + + // Ephemeral data + list OIFRec-list { + config "false"; + key "id"; + + uses igmpsnoop_OIFRec-group; + description "Holds Outgoing Interface Record list"; + } + description "Holds Outgoing Interface Record"; } - leaf totAdjSentPeriodically { + } + + grouping igmpsnoop_OIFRec-group { + description "Holds Outgoing Interface Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totAdjPeerToAdd { + + // Multicast traffic source + // Ephemeral data + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "ID"; } - leaf totAdjPeerToDel { + + // Ephemeral data + leaf numGqMiss { config "false"; - type uint64; + type uint16; + description "Num of General Query Missed"; } - leaf totPeriodicSyncAdj { + + // Ephemeral data + leaf expireTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Port Expire Timestamp"; } - leaf totAdjAddFailDuringSyncSend { - config "false"; - type uint64; + + // Host Record List (Used for Explicit Host Tracking) + // Ephemeral data + container host-items { + + // Ephemeral data + list HostRec-list { + config "false"; + key "addr"; + + uses igmpsnoop_HostRec-group; + description "Holds Explicit Host Tracking Record list"; + } + description "Holds Explicit Host Tracking Record"; } - leaf totDropDuringSyncInvalidSvi { + } + + grouping igmpsnoop_HostRec-group { + description "Holds Explicit Host Tracking Record"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totDropSyncSviDown { + + // Ephemeral data + leaf addr { config "false"; - type uint64; + type address_Ip; + description "Host Address"; } - leaf totDropSyncInvalidCtxt { + + // Ephemeral data + leaf upTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Up Timestamp"; } - leaf totDropSyncNullAdj { + + // Ephemeral data + leaf lastJoinTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Join Timestamp"; } - leaf totDropSyncNullIp { + + // Ephemeral data + leaf nextExpiryTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Next Expiry Timestamp"; } - leaf totSyncAdjAddL2SupCache { + } + + grouping igmpsnoop_QuerierRec-group { + description "Holds IGMP Snooping querier specific information"; + + // Ephemeral data + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf totSyncStopBcastPkt { + + // Ephemeral data + leaf timeout { config "false"; - type uint64; + + type mcast_QuerierTimeout; + description "Querier Timeout in Seconds"; } - } - grouping arp_TunnelStats-group { - leaf totTunnelRcvd { + // Last member query interval + // Ephemeral data + leaf lastMbrIntvl { config "false"; - type uint64; + + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval in Seconds"; } - leaf rxForIngressVpc { + + // Ephemeral data + leaf ver { config "false"; - type uint64; + type string; + description "Querier Version"; } - leaf rxIngressforGpc { + + // Querier IP address + // Ephemeral data + leaf addr { config "false"; - type uint64; + + type mcast_QuerierIp; + description "Querier IP Address"; } - leaf rxIngressOrphanVpc { + + // Query interval + // Ephemeral data + leaf queryIntvl { config "false"; - type uint64; + + type mcast_QueryIntvl; + description "Query Interval in seconds"; } - leaf rxIngressOrphanVpcPlus { + + // Query response interval + // Ephemeral data + leaf rspIntvl { config "false"; - type uint64; + + type mcast_QueryRspIntvl; + description "Query Response Interval in Seconds"; } - leaf totPackSent { + + // Robustness factor + // Ephemeral data + leaf robustFac { config "false"; - type uint64; + + type mcast_RobustFactor; + description "Robustness Factor"; } - leaf pktSentArpSnoop { + + // Startup query interval + // Ephemeral data + leaf startQueryIntvl { config "false"; - type uint64; + + type mcast_StartQueryIntvl; + description "Startup Query Interval Time in Seconds"; } - leaf pktSentNonlocalVip { + + // Startup query count + // Ephemeral data + leaf startQueryCnt { config "false"; - type uint64; + + type mcast_QueryCnt; + description "Startup Query Count"; } - leaf pktSentPeerGway { + + // Ephemeral data + leaf port { config "false"; - type uint64; + type string; + description "Querier Switch Port Type"; } - leaf txIngressVpc { + + // Ephemeral data + leaf vlanid { config "false"; - type uint64; + + type ipmcsnoop_Vlanid; + description "Vlan on Which Querier is Configured"; } - leaf txIngressGpc { + + // Ephemeral data + leaf expTime { config "false"; - type uint64; + type string; + description "Specify the Expiry Timestamp of Querier"; } - leaf txIngressOrphanVpc { + } + + grouping igmpsnoop_DomStats-group { + description "Holds statistics data per Igmpsnoop Domain"; + + // V1 Reports received + leaf v1RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Received"; } - leaf txIngressOrphanVpcPlus { + + // V2 Reports received + leaf v2RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Received"; } - leaf totRecvDropped { + + // V2 Leave received + leaf v2LeaveRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leave Received"; } - leaf totSendDropped { + + // V1 Query received + leaf v1QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Query Received"; } - leaf sendFailDrop { + + // V2 Query received + leaf v2QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Query Received"; } - leaf rcvdInvalidVer { + + // V1 Reports suppressed + leaf v1RepSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Suppressed"; } - leaf rcvdInvalidPayloadType { + + // V2 Reports suppressed + leaf v2RepSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Suppressed"; } - leaf rcvdMctIf { + + // V2 leaves suppressed + leaf v2LeaveSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leaves Suppressed"; } - leaf rcvdInvalidIngressPort { + + // v1 Proxy Report Originated + leaf v1RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V1 Reports Originated"; } - leaf dropSentInvalidPort { + + // v2 Proxy Report Originated + leaf v2RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Reports Originated"; } - leaf dropRecvInvalidGpcCore { + + // v2 Proxy Leave Originated + leaf v2LeaveOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V2 Leaves Originated"; } - leaf dropRecvInvalidGpcPeer { + + // V3 Reports received + leaf v3RepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Reports Received"; } - leaf dropRecvFailRetrieveGpc { + + // V3 Query received + leaf v3QueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Query Received"; } - leaf dropSendFailRetrieveGpc { + + // V3 Group Record suppressed + leaf v3GrpRecSupr { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Group Records Suppressed"; } - leaf failRetrieveVpcId { + + // v3 Proxy Report Originated + leaf v3RepOrig { config "false"; - type uint64; + + type nw_Counter32; + description "V3 Reports Originated"; } - leaf imApiFail { + leaf lastClearTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - leaf invalidContext { + + // packets received + leaf pktsRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Packets Received"; } - leaf dropMctDown { + + // Pim Hello Rcvd + leaf pimHelloRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Pim Hello Received"; } - leaf recvDropMbufFail { + + // Invalid Query Rcvd + leaf invQueryRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Invalid Query Received"; } - leaf sendDropMbufFail { + + // Invalid Report Rcvd + leaf invRepRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Invalid Report Received"; } - leaf tunnelFailed { + + // Version Mismatch Rcvd + leaf verMisMatchRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Version Mismatch Received"; } - leaf tunnelFailCENetwork { + + // Unknown Packets Rcvd + leaf unknPktRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "Unknown Packets Received"; } - leaf mcecmKeyNotFound { + + // Query Originated + leaf queryPktsOrig { config "false"; - type uint64; + + type nw_Counter32; + description "Query Packets Originated"; } - } - grouping arp_SupCacheStats-group { - leaf requests { + // Packets Sent to Router Ports + leaf pktsToRport { config "false"; - type uint64; + + type nw_Counter32; + description "Packets to Router Ports"; } - leaf requestsL2 { + + // VPC Sync Packets Sent to Peer + leaf vpcSyncSent { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Sent"; } - leaf gratuitous { + + // VPC Sync Packets Rcvd from Peer + leaf vpcSyncRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Received"; } - leaf gratuitousL2 { + + // VPC Sync Packets Failed to send to Peer + leaf vpcSyncFail { config "false"; - type uint64; + + type nw_Counter32; + description "VPC Sync Packets Failed"; } - leaf fwdRequestsL3 { + + // MRD Sync Packets Sent to Peer + leaf mrdSyncSent { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Sent"; } - leaf fwdRepliesL3 { + + // MRD Sync Packets Rcvd from Peer + leaf mrdSyncRcvd { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Received"; } - leaf fwdRequestOnCorePort { + + // MRD Sync Packets Failed to send to Peer + leaf mrdSyncFail { config "false"; - type uint64; + + type nw_Counter32; + description "MRD Sync Packets Failed"; } - leaf fwdReplyOnCorePort { + } + + grouping igmpsnoop_StRtrIf-group { + description "Holds IGMP Static Router Interface configuration information"; + + leaf name { config "false"; - type uint64; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf sentDrop { + + leaf descr { config "false"; - type uint64; + + type naming_Descr1024; + description "Description"; } - leaf sentReqL2 { + + // Interface ID of this endpoint + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - leaf sentReplyL2 { + + // Administrative state + leaf adminSt { config "false"; - type uint64; + + type nw_IfAdminSt; + description "Admin State"; } - leaf sentReqCoreL2 { + leaf encap { config "false"; - type uint64; + type string; + description "Enable Encapsulation when flooding packets"; } - leaf sentReplyCoreL2 { - config "false"; - type uint64; + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - leaf sentDropL2 { + } + + grouping igmpsnoop_RtrIf-group { + description "Holds configuration information for Router Interface"; + + // Identifier for the if + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Router interface identifier"; } - leaf recvReqL3 { + + // Life cycle control + leaf lcC { config "false"; - type uint64; + + type ipmcsnoop_LcC; + description "Life Cycle Control"; } - leaf recvReplyL3 { + leaf upTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Last Up transition Timestamp"; } - leaf recvLocalReqL3 { + leaf nextExpiryTs { config "false"; - type uint64; + type union { + type string; + type uint64; + } + description "Next Expiry Timestamp"; } - leaf recvLocalReplyL3 { - config "false"; - type uint64; + } + + grouping igmpsnoop_Vlan-group { + description "Holds IGMP snooping vlan configurations"; + + leaf vlanid { + + type nw_IfId; + description "Vlan ID for IGMP Snooping Configuration"; } - leaf recvGratArp { - config "false"; - type uint64; + leaf rprtFldAllIntf { + type boolean; + description "Enable Report-Flood on all Active Interfaces of VLAN"; } - leaf recvDrop { - config "false"; - type uint64; + + // Circuit endpoint representing EPG + container cktep-items { + list CktEp-list { + key "encap"; + + uses igmpsnoop_CktEp-group; + description "Represents Endpoint Encapsulation for a circuit list"; + } + description "Represents Endpoint Encapsulation for a circuit"; } - leaf recvRequestL2 { - config "false"; - type uint64; + + // Multicast Snoop Configured statically + container mcgrp-items { + list StMcGrp-list { + key "addr"; + + uses igmpsnoop_StMcGrp-group; + description "Holds Static IP Multicast Group Information list"; + } + description "Holds Static IP Multicast Group Information"; } - leaf recvReplyL2 { - config "false"; - type uint64; + + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; + + uses igmpsnoop_Intf-group; + description "Holds IGMP snooping Interface configurations list"; + } + description "Holds IGMP snooping Interface configurations"; } - leaf recvGratArpL2 { - config "false"; - type uint64; + + container igmpsnbase-items { + + uses igmpsnoop_IgmpsnBase-group; + description "Holds IGMP Snooping Parameters for all Configuration Modes"; } - leaf recvDropL2 { - config "false"; - type uint64; + + // This objects holds IGMP snooping timers for vlan + container gTimers-items { + + uses igmpsnoop_GTimers-group; + description "Holds Global IGMP Snooping Timers"; } - leaf localEntryAdds { - config "false"; - type uint64; + + // This objects holds multicast mac address table params + container mactable-items { + list MacTable-list { + key "macAddress"; + + uses igmpsnoop_MacTable-group; + description "Holds IGMP Snooping Mac-Address Table Configurations list"; + } + description "Holds IGMP Snooping Mac-Address Table Configurations"; } - leaf localEntryDel { - config "false"; - type uint64; + + // This objects holds multicast router snoop params + container mrouter-items { + + uses igmpsnoop_MRouter-group; + description "Holds IGMP Snooping Static Multicast Router Configurations"; } - } - grouping arp_OfaStats-group { - leaf dpAdjErrDel { - config "false"; - type uint64; + // This objects holds multicast proxy snoop params + container proxy-items { + + uses igmpsnoop_Proxy-group; + description "Holds IGMP Snooping Proxy Configurations"; } - leaf cpMacMismatchErrDel { - config "false"; - type uint64; + + // Querier policy + container querierp-items { + + uses igmpsnoop_QuerierP-group; + description "Holds IGMP Snooping Querier Policy Configurations"; } - leaf cpNullMacErrDel { - config "false"; - type uint64; + + // Querier state + container querierst-items { + + uses igmpsnoop_QuerierSt-group; + description "Holds IGMP Snooping Querier State Configurations"; } - leaf cpNoAdjErrDel { - config "false"; - type uint64; + + // Route control policy for igmp multicast snoop. + container actrl-items { + + uses igmpsnoop_ACtrl-group; + description "Holds IGMP Snooping Access Control Policy Configurations"; } - leaf cpCpNhMismatchErrDel { - config "false"; - type uint64; + + // Report policy for igmp multicast snoop + container rpolicy-items { + list RPolicy-list { + key "rtMap"; + + uses igmpsnoop_RPolicy-group; + description "Holds IGMP Snooping Report Policy Configurations list"; + } + description "Holds IGMP Snooping Report Policy Configurations"; } - leaf cpAdjDelFailureErr { - config "false"; - type uint64; + } + + grouping igmpsnoop_CktEp-group { + description "Represents Endpoint Encapsulation for a circuit"; + leaf encap { + type string; + description "Fabric Encapsulation"; } - leaf cpNullMacErrAdd { - config "false"; - type uint64; + } + + grouping igmpsnoop_StMcGrp-group { + description "Holds Static IP Multicast Group Information"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf cpDpMacMismatchErrAdd { - config "false"; - type uint64; + + // Multicast group address + leaf addr { + + type mcast_GrpIp; + description "Multicast Group IP Address"; } - leaf cpCpMacMismatchErrAdd { - config "false"; - type uint64; + + // IPMC Source IP + container src-items { + list McSrc-list { + key "id"; + + uses igmpsnoop_McSrc-group; + description "Holds IGMP Snooping Source Specific Information list"; + } + description "Holds IGMP Snooping Source Specific Information"; } - leaf cpAddFirstErr { - config "false"; - type uint64; + + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; + + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } - leaf dpOverwriteCpErr { - config "false"; - type uint64; + } + + grouping igmpsnoop_McSrc-group { + description "Holds IGMP Snooping Source Specific Information"; + + // Multicast traffic source + leaf id { + + type ipmcsnoop_McastSrc; + description "Multicast Source IP Address"; } - leaf dpCpNhMismatchErrAdd { - config "false"; - type uint64; + + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; + + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } - leaf cpCpNhMismatchErrAdd { - config "false"; - type uint64; + } + + grouping igmpsnoop_TgtIf-group { + description "Holds Outgoing Interface Information"; + leaf vsi { + type boolean; + description "Specifies if this interface is VSI"; } - leaf cpDpNhMismatchErrAdd { - config "false"; - type uint64; + leaf accGrp { + type boolean; + description "Specifies if this interface is Access group"; } - leaf cpAdjAddFailureErr { - config "false"; - type uint64; + leaf pfxList { + type boolean; + description "Specifies prefix list route map for this interface"; } - leaf barrierResponseErr { - config "false"; - type uint64; + + // Target interface Id + leaf id { + + type nw_IfId; + description "Multicast Source IP Address"; } } - grouping arp_Dom-group { - leaf encap { - type string; - } + grouping igmpsnoop_Intf-group { + description "Holds IGMP snooping Interface configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // ARP databases - container db-items { - list Db-list { - config "false"; - key "type"; + leaf descr { - // Added containment: Prefix=db - // Acquired From Package arp - uses arp_Db-group; - } + type naming_Descr1024; + description "Description"; } - // This object holds arp information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Interface ID of this endpoint + leaf id { - // Added containment: Prefix=if - // Acquired From Package arp - uses arp_If-group; - } + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping arp_Db-group { - - // Type of the repository - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type arp_DbT; + type nw_IfAdminSt; + description "Admin State"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf rtrGrdVlanId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_RtrGrdVlanIdT; + description "Router-Guard Vlan Identifier"; + } + leaf rtrGrdEnable { + type boolean; + description "Indicates if Router-Guard is Enabled on the Interface"; + } + leaf reportFlood { + type boolean; + description "Indicates if Report Flood is Enabled on the Interface"; } - // Arp adjacency definitions - container adj-items { - list AdjEp-list { - config "false"; - key "ifId ip"; + container rtvrfMbr-items { - // Added containment: Prefix=adj - // Acquired From Package arp - uses arp_AdjEp-group; - } + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping arp_AdjEp-group { - leaf ip { - config "false"; - type address_Ip; + grouping igmpsnoop_IgmpsnBase-group { + description "Holds IGMP Snooping Parameters for all Configuration Modes"; + leaf lookupMac { + type boolean; + description "Indicates if Layer-2 Multicast Lookup Mac is Enabled"; } - leaf mac { - config "false"; - type address_Mac; + + leaf llGrpSuppr { + + type ipmcsnoop_LlGrpSuppr; + description "Link Local Group Suppression"; } - leaf upTS { - config "false"; - type string; + + leaf reportSuppr { + + type ipmcsnoop_ReportSuppr; + description "IGMPv1/v2 report Suppression for VLAN"; } - // Logical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Logical Interface ID"; + leaf v3ReportSuppr { - // Type is an MO-Defined-Type - type nw_IfId; + type ipmcsnoop_V3ReportSuppr; + description "IGMPv3 Report Suppression and Proxy Reporting"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + leaf expTracking { - // Type is an MO-Defined-Type - type arp_AdjOperSt; + type ipmcsnoop_ExpTracking; + description "Configures Explicit Host for a VLAN"; } - // Physical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf physIfId { - config "false"; - description "Physical Interface ID"; + leaf igmpSnoop { - // Type is an MO-Defined-Type - type nw_IfId; + type ipmcsnoop_IgmpSnoop; + description "Enable/Disable IGMP Snooping Globally"; } - // Flags that this ep has - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + leaf minVer { - // Type is an MO-Defined-Type - type arp_AdjFlags; + type ipmcsnoop_MinVer; + description "Minimum IGMP Version Supported"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + leaf maxGrp { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ipmcsnoop_MaxGrp; + description "Maximum Groups per Interface"; } } - grouping arp_If-group { + grouping igmpsnoop_GTimers-group { + description "Holds Global IGMP Snooping Timers"; - // Timeout - // Type is an MO-Defined-Type - leaf timeout { - description "ARP Timeout"; + leaf fastLeave { - // Type is an MO-Defined-Type - type arp_Timeout; + type ipmcsnoop_FastLeave; + description "Indicates if Fastleave is Enabled"; } - // Gratuitous ARP request - // Type is an MO-Defined-Type - leaf gratuitousRequest { - description "Gratuitous ARP Request"; + // Group timeout + // Default value handled in local MO type + leaf grpTimeout { - // Type is an MO-Defined-Type - type nw_AdminSt; + // Type is a Local-MO-Defined-Type + type mcast_GrpTimeout_GTimers_grpTimeout { + range "0"; + } + description "Group Membership Timeout"; } - // Gratuitous ARP Update - // Type is an MO-Defined-Type - leaf gratuitousUpdate { - description "Gratuitous ARP Update"; + leaf maxGqMiss { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_MaxGqMiss; + description "Maximum General Query Miss Count"; } - - // Gratuitous ARP HSRP Duplicate - // Type is an MO-Defined-Type - leaf gratuitousHsrpDup { - description "Gratuitous ARP HSRP Duplicate"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf useGrpAddr { + type boolean; + description "Use Group IP Address for Proxy-Leave"; } + } - // Proxy ARP - // Type is an MO-Defined-Type - leaf proxyArp { - description "Proxy ARP"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping igmpsnoop_MacTable-group { + description "Holds IGMP Snooping Mac-Address Table Configurations"; + leaf macAddress { + type address_Mac; + description "Specify MAC Address for a VLAN/BD"; } - // Local Proxy ARP - // Type is an MO-Defined-Type - leaf localProxyArp { - description "Local Proxy ARP"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // Local Proxy ARP without HW Flooding - // Type is an MO-Defined-Type - leaf localProxyArpNoHwFlood { - description "Local Proxy ARP w/o HW Flooding"; + uses igmpsnoop_MIf-group; + description "Holds IGMP Snooping Multicast Router's Interface Configurations list"; + } + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; + } + } - // Type is an MO-Defined-Type - type nw_AdminSt; + grouping igmpsnoop_MIf-group { + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; + leaf intf { + type string; + description "Interface for Static-Mrouter"; + } + leaf vsi { + type boolean; + description "Specify Interface is VSI"; } + } - // Delete adjacency on MAC delete without refresh - // Type is an MO-Defined-Type - leaf deleteAdjOnMacDelete { - description "Delete Adjacency On MAC Delete w/o Refresh"; + grouping igmpsnoop_MRouter-group { + description "Holds IGMP Snooping Static Multicast Router Configurations"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Global property + leaf vpcPeerLink { + + type ipmcsnoop_Vpc; + description "Specify vpc-peer-link as Static Mrouter for all VLAN/BD"; } - // Set refresh timer for MAC delete adjacency request - // Type is an MO-Defined-Type - leaf refreshTimerForMacDelete { - description "Set Refresh Timer For MAC Delete Adjacency"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type arp_MacDelTimeout; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // Enable duplicate IP detection across VLANs for IP - // unnumbered SVIs - // Type is an MO-Defined-Type - leaf duplicateIpDetectionForUnnumberedSvi { - description - "Enable Duplicate IP Detection Across VLANs for - IP Unnumbered SVIs"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + uses igmpsnoop_MIf-group; + description "Holds IGMP Snooping Multicast Router's Interface Configurations list"; + } + description "Holds IGMP Snooping Multicast Router's Interface Configurations"; } + } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configError { - config "false"; - description "Config Error"; + grouping igmpsnoop_Proxy-group { + description "Holds IGMP Snooping Proxy Configurations"; - // Type is an MO-Defined-Type - type arp_ConfigErr; + leaf maxRespTime { + + type ipmcsnoop_Mrt; + description "Configures MRT for Switch's Proxy General-Queries"; } + } + + grouping igmpsnoop_QuerierP-group { + description "Holds IGMP Snooping Querier Policy Configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr1024; - } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Querier version + leaf ver { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_Ver; + description "Version"; } - // Static arp adjacency definitions - container sadj-items { - list StAdjEp-list { - key "ip"; + // Querier IP address + leaf addr { - // Added containment: Prefix=sadj - // Acquired From Package arp - uses arp_StAdjEp-group; - } + type mcast_QuerierIp; + description "Address"; } - // This object holds the arp if related tx statistics - container ifstatstx-items { + // Query interval + leaf queryIntvl { - // Added containment as a singleton: Prefix=ifstatstx - // Acquired From Package arp - uses arp_IfStatsTx-group; + type mcast_QueryIntvl; + description "Query Interval"; } - // This object holds the arp if related rx statistics - container ifstatsrx-items { + // Query response interval + leaf rspIntvl { - // Added containment as a singleton: Prefix=ifstatsrx - // Acquired From Package arp - uses arp_IfStatsRx-group; + type mcast_QueryRspIntvl { + range "1..25"; + } + description "Response Interval of Querier"; } - // This object holds the arp if related adj statistics - container ifstatsadj-items { + // Robustness factor + leaf robustFac { - // Added containment as a singleton: Prefix=ifstatsadj - // Acquired From Package arp - uses arp_IfStatsAdj-group; + type mcast_RobustFactor; + description "Robustness Factor"; } - // This object holds the arp if related misc statistics - container ifstatsmisc-items { + // Startup query interval + leaf startQueryIntvl { - // Added containment as a singleton: Prefix=ifstatsmisc - // Acquired From Package arp - uses arp_IfStatsMisc-group; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // This object holds the arp related Multihoming(MH) statistics - container ifstatsmh-items { + // Startup query count + leaf startQueryCnt { - // Added containment as a singleton: Prefix=ifstatsmh - // Acquired From Package arp - uses arp_IfStatsMH-group; + type mcast_QueryCnt; + description "Startup Query Count"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - container rtvrfMbr-items { + // Last member query interval + leaf lastMbrIntvl { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Querier timeout + leaf timeout { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } } - grouping arp_StAdjEp-group { + grouping igmpsnoop_QuerierSt-group { + description "Holds IGMP Snooping Querier State Configurations"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type arp_StAdjOperSt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf descr { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type arp_StAdjOperStQual; + type naming_Descr; + description "Description of the specified attribute"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Querier version + leaf ver { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf ip { - type address_Ip; - } - leaf mac { - type address_Mac; + type mcast_Ver; + description "Version"; } - // Rel-def target from CtrlrAdjEpToStAdjEp - // Inherited From arp:StAdjEp - container rtCtrlrAdjEpToStAdjEp-items { + // Querier IP address + leaf addr { + config "false"; - // Added containment as a singleton: Prefix=rtCtrlrAdjEpToStAdjEp - // Acquired From Package lldp - uses lldp_RtCtrlrAdjEpToStAdjEp_target-group; + type mcast_QuerierIp; + description "Address"; } - // Rel-def target from EpDefRefToStAdjEp - // Inherited From arp:StAdjEp - container rtfvEpDefRefToStAdjEp-items { - - // Abstract containment of rtfvEpDefRefToStAdjEp derived from arp:StAdjEp - list RtFvEpDefRefToStAdjEp-list { - config "false"; - key "tDn"; + // Query interval + leaf queryIntvl { + config "false"; - // Added containment: Prefix=rtfvEpDefRefToStAdjEp - // Acquired From Package fv - uses fv_RtFvEpDefRefToStAdjEp_target-group; - } + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping arp_IfStatsTx-group { - // ARP_PKT_SEND_COUNT - // Type is an MO-Defined-Type - leaf pktSent { + // Query response interval + leaf rspIntvl { config "false"; - description "ARP Packet Send Total Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QueryRspIntvl; + description "Response Interval of Querier"; } - // ARP_PKT_SEND_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktSentReq { + // Robustness factor + leaf robustFac { config "false"; - description "ARP Packet Send Request Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_RobustFactor; + description "Robustness Factor"; } - // ARP_PKT_SEND_REPLY_COUNT - // Type is an MO-Defined-Type - leaf pktSentRsp { + // Startup query interval + leaf startQueryIntvl { config "false"; - description "ARP Packet Send Reply Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // ARP_PKT_SEND_REQ_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktSentReqL2 { + // Startup query count + leaf startQueryCnt { config "false"; - description "ARP Packet Send Request Count On L2"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QueryCnt; + description "Startup Query Count"; } - // ARP_PKT_SEND_REPLY_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktSentRspL2 { + // Last member query interval + leaf lastMbrIntvl { config "false"; - description "ARP Packet Send Reply Count On L2"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; } - // ARP_PKT_SEND_GRAT_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktSentGratReq { + // Querier timeout + leaf timeout { config "false"; - description "ARP Packet Send Gratuitous Request Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } - // ARP_PKT_SEND_TUNNEL_COUNT - // Type is an MO-Defined-Type - leaf pktSentTunnel { + // Interface on which the querier is present + leaf if { config "false"; - description "ARP Packet Send Tunnel Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "Interface on which querier is present"; } - // ARP_PKT_SEND_DROP_COUNT - // Type is an MO-Defined-Type - leaf pktSentDrop { + // Querier flags + leaf flags { config "false"; - description "ARP Packet Send Drop Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_QuerierFlags; + description "Querier Flags presenting different states"; } + } - // ARP_PKT_SEND_SRVRPORT_COUNT - // Type is an MO-Defined-Type - leaf pktSendSrvPort { - config "false"; - description "ARP Packet Send Server Port Count"; + grouping igmpsnoop_ACtrl-group { + description "Holds IGMP Snooping Access Control Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf name { + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // ARP_PKT_SEND_FBRCPORT_COUNT - // Type is an MO-Defined-Type - leaf pktSendFbrcPort { - config "false"; - description "ARP Packet Send Fabric Port Count"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter32; + type naming_Descr; + description "Description of the specified attribute"; } - // ARP_PKT_SEND_FIXUP_CORE_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupCore { - config "false"; - description "ARP Packet Send Fixup Core Count"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type nw_Counter32; + type rtctrl_RtCtrlDir; + description "Direction"; + } + leaf rtMap { + type string; + description "Route Map"; } - // ARP_PKT_SEND_FIXUP_SERVER_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupServer { - config "false"; - description "ARP Packet Send Fixup Server Count"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // ARP_PKT_SEND_FIXUP_RARP_COUNT - // Type is an MO-Defined-Type - leaf pktSendFixupRarp { - config "false"; - description "ARP Packet Send Fixup Rarp Count"; + grouping igmpsnoop_RPolicy-group { + description "Holds IGMP Snooping Report Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Route map name to control the distribution + leaf rtMap { + + type igmpsnoop_RtMapType; + description "Route Map Name to control the distribution"; } - // ARP_PKT_SEND_ANYCAST_GLEAN_COUNT - // Type is an MO-Defined-Type - leaf pktSendAnyCastGlean { - config "false"; - description "ARP Packet Send Anycast Glean Count"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // ARP_PKT_SEND_FAIL_INVALID_PKT_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvPkt { - config "false"; - description "ARP Packet Send Fail Invalid Packet Count"; + grouping igmpsnoop_BD-group { + description "Holds IGMP Snooping Bridge Domain Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf bdid { + + type nw_IfId; + description "Bridge Domain Identifier"; } + } - // ARP_PKT_SEND_FAIL_MBUF_OP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailMbufOp { - config "false"; - description "ARP Packet Send Fail Mbuf Operation Count"; + grouping igmpsnoop_Gl-group { + description "Holds IGMP Snooping Configurations in Global Configuration Mode"; + container eventHist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_EventHistory-group; + description "Holds IGMP Snooping Event-History Buffer Configurations list"; + } + description "Holds IGMP Snooping Event-History Buffer Configurations"; } - // ARP_PKT_SEND_FAIL_NO_IFINDEX_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoIfindex { - config "false"; - description "ARP Packet Send Fail Invalid Ifindex Count"; + container rtrgrd-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_RtrGrd-group; + description "Holds Router Guard Configuration for all switchports or specific vlan"; } - // ARP_PKT_SEND_FAIL_UNSUPPORTED_INT_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailUnsupportedInt { - config "false"; - description "ARP Packet Send Fail On Unsupported Interface Count"; + container igmpsnbase-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_IgmpsnBase-group; + description "Holds IGMP Snooping Parameters for all Configuration Modes"; } - // ARP_PKT_SEND_FAIL_IM_DOWN_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailImDown { - config "false"; - description "ARP Packet Send Fail On Interface Down Count"; + // This objects holds traffic related snooping params + container mctraf-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_McTraf-group; + description "Holds IGMP Snooping Multicast Traffic Configurations"; } - // ARP_PKT_SEND_FAIL_INVALID_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvSrcIp { - config "false"; - description "ARP Packet Send Fail Invalid Source IP Count"; + // This objects holds IGMP snooping timers for vlan + container gTimers-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GTimers-group; + description "Holds Global IGMP Snooping Timers"; } - // ARP_PKT_SEND_FAIL_INVALID_DEST_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvDstIp { - config "false"; - description "ARP Packet Send Fail Invalid Destination IP Count"; + // This objects holds vlan specific IGMP snooping params + container gvlan-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GVlan-group; + description "Holds IGMP Snooping Vlan Specific Configurations"; } - // ARP_PKT_SEND_FAIL_OWN_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailOwnIp { - config "false"; - description "ARP Packet Send Fail Own IP Count"; + // This Object holds global debug + container gdebug-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_GDebug-group; + description "Holds IGMP Snooping Debugs Enabling Configuration"; } - // ARP_PKT_SEND_FAIL_CONTEXT_NOT_CREATED_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailCtxtNotCreated { - config "false"; - description "ARP Packet Send Fail Context Not Created Count"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_MRouter-group; + description "Holds IGMP Snooping Static Multicast Router Configurations"; } - // ARP_PKT_SEND_FAIL_BAD_CONTEXT_ID_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailBadCtxtId { - config "false"; - description "ARP Packet Send Fail Bad Context Id Count"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses igmpsnoop_Proxy-group; + description "Holds IGMP Snooping Proxy Configurations"; } + } - // ARP_PKT_SEND_FAIL_UNATTACHED_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailUnattachedIp { - config "false"; - description "ARP Packet Send Fail Unattached IP Count"; + grouping igmpsnoop_EventHistory-group { + description "Holds IGMP Snooping Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf type { + + type igmpsnoop_EhType; + description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; } - // ARP_PKT_SEND_FAIL_ADJ_ADD_FAILURE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailAdjAddFailure { - config "false"; - description "ARP Packet Send Fail Adjacency Add Failure Count"; + leaf size { - // Type is an MO-Defined-Type - type nw_Counter32; + type igmpsnoop_Size; + description "configures buffer size in text/kb"; } + } - // ARP_PKT_SEND_FAIL_NO_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoSrcIp { - config "false"; - description "ARP Packet Send Fail No Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping igmpsnoop_RtrGrd-group { + description "Holds Router Guard Configuration for all switchports or specific vlan"; + leaf state { + type boolean; + description "Configures Router Guard for Multicast packets on all switchports"; } + } - // ARP_PKT_SEND_FAIL_NO_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailNoMac { - config "false"; - description "ARP Packet Send Fail No Mac Count"; + grouping igmpsnoop_McTraf-group { + description "Holds IGMP Snooping Multicast Traffic Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf holddownTimer { + + type mcast_HolddownTimer; + description "Configures Initial Holddown Period After Switchover/Restart"; } - // ARP_PKT_SEND_FAIL_CLIENT_ENQUEUE_FAILED_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailClientEnqFailed { - config "false"; - description "ARP Packet Send Fail Client Enqueue Failed Count"; + leaf vpcPeerLinkExc { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_VpcPlExclude; + description "Exclude vPC Peer-link for Routed Multicast Traffic"; } - // ARP_PKT_SEND_FAIL_PROXY_DEST_NOT_REACHABLE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailProxyDstNotRchbl { - config "false"; - description "ARP Packet Send Fail Proxy Destination Not Reachable Count"; + leaf ccMode { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_CcMode; + description "Enter MFDM Congestion Control Mode"; } + } - // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_DEST_NOT_REACHABLE_COUNT - // Type is an MO-Defined-Type - leaf pktSkipRespEnhancedProxyDestNotReach { - config "false"; - description "ARP Packet Skip Response Enhanced Proxy Destination Not Reachable Count"; + grouping igmpsnoop_GVlan-group { + description "Holds IGMP Snooping Vlan Specific Configurations"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf disableNveStRtrPort { + + type ipmcsnoop_DisableNveStRtrPort; + description "Disable NVE Static Router Port"; } - // ARP_PKT_SKIP_RESPONSE_ENHANCED_PROXY_L2PORT_TRACK_COUNT - // Type is an MO-Defined-Type - leaf pktSkipRespEnhancedProxyL2portTrack { - config "false"; - description "ARP Packet Skip Response Enhanced Proxy L2 Port Track Count"; + leaf vxlan { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_Vxlan; + description "Enable IGMP Snooping on all VXLAN Ports "; } - // ARP_PKT_SEND_FAIL_INVALID_LOCAL_PROXY_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvLocalProxy { - config "false"; - description "ARP Packet Send Fail Invalid Local Proxy Count"; + leaf vxlanUmcDropVlan { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_VxlanVlanRange; + description "Drop Unknown Multicast Traffic on Vlan(s)"; } + } - // ARP_PKT_SEND_FAIL_INVALID_PROXY_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailInvProxy { - config "false"; - description "ARP Packet Send Fail Invalid Proxy Count"; + grouping igmpsnoop_GDebug-group { + description "Holds IGMP Snooping Debugs Enabling Configuration"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf syslogThreshold { + + type ipmcsnoop_SyslogThrshold; + description "IGMP Snooping Syslog Threshold Percentage"; } - // ARP_PKT_SEND_FAIL_VIP_GROUP_NOT_ACTIVE_COUNT - // Type is an MO-Defined-Type - leaf pktSentFailVipGroupNotActive { - config "false"; - description "ARP Packet Send Fail VIP Group Not Active Count"; + leaf selfMacCheck { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmcsnoop_SelfMacCheck; + description "Enable IGMP Snooping Self-mac-check Loopback"; } } - grouping arp_IfStatsRx-group { + grouping igmpsnoop_InstStats-group { + description "Holds statistics data per Igmpsnoop Instance"; - // ARP_PKT_RECV_COUNT - // Type is an MO-Defined-Type - leaf pktRcvd { + // Total Number of multicast groups + leaf totNumMcGrp { config "false"; - description "ARP Packet Received Total Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Total Number of Multicast Groups"; } - // ARP_PKT_RECV_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdReq { + // Invalid packets received + leaf invPktsRcvd { config "false"; - description "ARP Packet Received Request Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Invalid Packets Received"; } - // ARP_PKT_RECV_REPLY_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdRsp { + // Loopback packets received + leaf lpbkPktsRcvd { config "false"; - description "ARP Packet Received Reply Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Loopback Packets Received"; } - // ARP_PKT_RECV_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdProxyArp { + // packets Flooded + leaf pktsFlooded { config "false"; - description "ARP Packet Received Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Packets Flooded"; } - // ARP_PKT_RECV_LOCAL_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdLocalProxyArp { + // MRD Loopback packets received + leaf mrdLpbkPktsRcvd { config "false"; - description "ARP Packet Received Local Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "MRD Loopback Packets Received"; } - // ARP_PKT_RECV_ENHANCED_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyArp { + // No Vlan DB packets received + leaf noVlanDbPktsRcvd { config "false"; - description "ARP Packet Received Enhanced Proxy ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Vlan Db Packets Received"; } - // ARP_PKT_RECV_ENHANCED_PROXY_ANYCAST_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyAnycastArp { + // Vpc Peer packets sent + leaf vpcPeerPktsSent { config "false"; - description "ARP Packet Received Enhanced Proxy Anycast ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Sent"; } - // ARP_PKT_RECV_ENHANCED_PROXY_L2PORT_TRACK_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdEnhancedProxyL2portTrackArp { + // Vpc Peer packets received + leaf vpcPeerPktsRcvd { config "false"; - description "ARP Packet Received Enhanced Proxy L2 Port Track ARP Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Received"; } - // ARP_PKT_RECV_SRVRPORT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdServerPort { + // Vpc Peer packets send Fail + leaf vpcPeerPktsSentFail { config "false"; - description "ARP Packet Received Server Port Count"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Send Fail"; } - // ARP_PKT_RECV_REQ_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktRcvdReqL2 { + // Vpc Peer packets receive Fail + leaf vpcPeerPktsRcvdFail { config "false"; - description "ARP Packet Received Request Count On L2"; - // Type is an MO-Defined-Type type nw_Counter32; + description "VPC Peer Packets Receive Fail"; } + } - // ARP_PKT_RECV_REPLY_COUNT_L2 - // Type is an MO-Defined-Type - leaf pktRcvdRspL2 { - config "false"; - description "ARP Packet Received Reply Count On L2"; + grouping m6rib_Entity-group { + description "Holds M6RIB entity information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // This objects hold per m6rib instance information + container inst-items { + + uses m6rib_Inst-group; + description "This objects hold per M6RIB instance information"; } + } - // ARP_PKT_RECV_TUNNEL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdTunnel { - config "false"; - description "ARP Packet Received Tunnel Count"; + grouping m6rib_Inst-group { + description "This objects hold per M6RIB instance information"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + // This object holds m6rib route db information + // Ephemeral data + container db-items { - // ARP_PKT_RECV_FASTPATH_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdFastpath { - config "false"; - description "ARP Packet Received Fastpath Count"; + // Ephemeral data + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_Db-group; + description "Holds M6RIB Oper Database list"; + } + description "Holds M6RIB Oper Database"; } - // ARP_PKT_RECV_SNOOP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdSnoop { - config "false"; - description "ARP Packet Received Snoop Count"; + // This objects hold per MRIB information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_Dom-group; + description "This objects hold per MRIB information list"; + } + description "This objects hold per MRIB information"; } - // ARP_PKT_RECV_DROP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrp { - config "false"; - description "ARP Packet Received Drop Count"; + // This object holds m6rib route db information + // Ephemeral data + container routedb-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_RouteDb-group; + description "This object holds M6RIB route database information"; } + } - // ARP_PKT_RECV_DROP_BAD_IF_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadIf { + grouping m6rib_Db-group { + description "Holds M6RIB Oper Database"; + + // db type + // Ephemeral data + leaf type { config "false"; - description "ARP Packet Received Drop Bad Interface Count"; - // Type is an MO-Defined-Type - type nw_Counter32; + type m6rib_DbT; + description "Database type identifier"; } - // ARP_PKT_RECV_DROP_BAD_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadLen { - config "false"; - description "ARP Packet Received Drop Bad Length Count"; + // This object holds m6rib client information + // Ephemeral data + container client-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ClntEntity-list { + config "false"; + key "name"; + + uses m6rib_ClntEntity-group; + description "Represents M6RIB Client list"; + } + description "Represents M6RIB Client"; } - // ARP_PKT_RECV_DROP_BAD_PROTO_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadProto { - config "false"; - description "ARP Packet Received Drop Bad Protocol Count"; + // This object holds m6rib memory information + // Ephemeral data + container memest-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_MemEstimate-group; + description "M6RIB Parent Class for Memeory Details"; } - // ARP_PKT_RECV_DROP_BAD_HRD_TYPE - // Type is an MO-Defined-Type - leaf pktRcvdDropBadHrd { - config "false"; - description "ARP Packet Received Drop Bad Hardware Type Count"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses m6rib_Vrf-group; + description "This objects holds M6RIB context level information list"; + } + description "This objects holds M6RIB context level information"; } + } - // ARP_PKT_RECV_DROP_BAD_L2ADDR_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadL2AddrLen { - config "false"; - description "ARP Packet Received Drop Bad Layer 2 Address Length Count"; + grouping m6rib_ClntEntity-group { + description "Represents M6RIB Client"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf name { + config "false"; + type string; + description "Client Name"; } - // ARP_PKT_RECV_DROP_BAD_L3ADDR_LEN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadL3AddrLen { + // Ephemeral data + leaf id { config "false"; - description "ARP Packet Received Drop Bad Layer 3 Length Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client Identifier"; } - // ARP_PKT_RECV_DROP_INVAL_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpInvalSrcIp { + // Ephemeral data + leaf pid { config "false"; - description "ARP Packet Received Drop Invalid Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client Process Identifier"; } - // ARP_PKT_RECV_DROP_DIR_BCAST_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpDirBcast { + // Ephemeral data + leaf mtsSapId { config "false"; - description "ARP Packet Received Drop Direct Broadcast Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Client MTS SAP Identifier"; } - // ARP_PKT_RECV_DROP_INVAL_DST_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpInvalDstIp { + // Ephemeral data + leaf shMemName { config "false"; - description "ARP Packet Received Drop Invalid Destination IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Client Shared memory name"; } - // ARP_PKT_RECV_DROP_BAD_SRC_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadSrcMac { + // Ephemeral data + leaf notify { config "false"; - description "ARP Packet Received Drop Bad Source Mac Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Flag to indicate if client wants notifications"; } - // ARP_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpOwnSrcMac { + // Ephemeral data + leaf staleTimerRunning { config "false"; - description "ARP Packet Received Drop Own Source Mac Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Flag to indicate if stale timer is running"; } - // ARP_PKT_RECV_DROP_OWN_SRC_IP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpOwnSrcIp { + // Ephemeral data + leaf ssmOwner { config "false"; - description "ARP Packet Received Drop Own Source IP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol owner of SSM-Ranges Flag"; } - // ARP_PKT_RECV_DROP_ARP_IF_NO_MEM_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpArpIfNoMem { + // Ephemeral data + leaf bidirOwner { config "false"; - description "ARP Packet Received Drop ARP Interface No Memory Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of Bidir-Modes Flag"; } - // ARP_PKT_RECV_DROP_NOT_FOR_US_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpNotForUs { + // Ephemeral data + leaf staticOwner { config "false"; - description "ARP Packet Received Drop Not For Us Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of Static-OIFs Flag"; } - // ARP_PKT_RECV_LEARN_AND_DROP_NOT_FOR_US_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdLearnAndDropNotForUs { + // Ephemeral data + leaf sharedOnlyOwner { config "false"; - description "ARP Packet Received Learn And Drop Not For Us Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner of shared-tree Flag"; } - // ARP_PKT_RECV_DROP_SUBNET_MISMATCH_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpSubnetMismatch { + // Ephemeral data + leaf localJoinOwner { config "false"; - description "ARP Packet Received Drop Subnet Mismatch Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for Local Groups Flag"; } - // ARP_PKT_RECV_DROP_NOT_INITIALIZED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpNotInit { + // Ephemeral data + leaf externalOwner { config "false"; - description "ARP Packet Received Drop Not Initialized Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for External Routes Flag"; } - // ARP_PKT_RECV_DROP_BAD_CONTEXT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpBadCtxt { + // Ephemeral data + leaf attachedOwner { config "false"; - description "ARP Packet Received Drop Bad Context Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol is the owner for Attached Routes Flag"; } - // ARP_PKT_RECV_DROP_CONTEXT_NOT_CREATED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpCtxtNotCreated { + // Ephemeral data + leaf fabricOwner { config "false"; - description "ARP Packet Received Drop Context Not Created Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Protocol owner setting Fabric Flag"; } - // ARP_PKT_RECV_DROP_L2_LOCAL_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2LocalProxyArp { - config "false"; - description "ARP Packet Received Drop L2 Local Proxy ARP Count"; + // MO for Client notifications + // Ephemeral data + container cnotify-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ClientNotify-list { + config "false"; + key "notifyName"; + + uses m6rib_ClientNotify-group; + description "Holds M6RIB Client Notification Details list"; + } + description "Holds M6RIB Client Notification Details"; } + } - // ARP_PKT_RECV_DROP_L2_PURE_L2_PKT_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2PureL2Pkt { - config "false"; - description "ARP Packet Received Drop L2 Pure L2 Packet Count"; + grouping m6rib_ClientNotify-group { + description "Holds M6RIB Client Notification Details"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf notifyName { + config "false"; + type string; + description "Client Notification Name"; } - // ARP_PKT_RECV_DROP_L2_PORT_UNTRUSTED_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2PrtUntrusted { + // Ephemeral data + leaf sent { config "false"; - description "ARP Packet Received Drop L2 Port Untrusted Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Sent"; } - // ARP_PKT_RECV_DROP_STANDBY_FHRP_VIP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpStdbyFhrpVip { + // Ephemeral data + leaf fail { config "false"; - description "ARP Packet Received Drop Standby FHRP VIP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Failed"; } - // ARP_PKT_RECV_DROP_GRAT_ON_PROXY_ARP_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpGratOnProxyArp { + // Ephemeral data + leaf rcvd { config "false"; - description "ARP Packet Received Drop Gratuitous On Proxy ARP Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications Received"; } - // ARP_PKT_RECV_DROP_ARP_REQUEST_IGNORE_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpArpRequestIgnore { + // Ephemeral data + leaf ackRcvd { config "false"; - description "ARP Packet Received Drop ARP Request Ignore Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement received"; } - // ARP_PKT_RECV_DROP_L2FM_QUERY_FAIL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpL2FmQueryFail { + // Ephemeral data + leaf ackSent { config "false"; - description "ARP Packet Received Drop L2FM Query Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement sent"; } - // ARP_PKT_RECV_DROP_TUNNEL_FAIL_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdDrpTunnelFail { + // Ephemeral data + leaf ackFail { config "false"; - description "ARP Packet Received Drop Tunnel Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Count of Notifications acknowledgement failed"; } + } - // ARP_PKT_RECV_DROP_RSP_ON_HSRP_STANDBY_HSRP_ACTIVE_VMAC - // Type is an MO-Defined-Type - leaf pktRcvdDrpRspOnHsrpStbyActiveVmac { - config "false"; - description "ARP Packet Received Drop Response On HSRP Standby With HSRP Active Vmac Count"; + grouping m6rib_MemEstimate-group { + description "M6RIB Parent Class for Memeory Details"; - // Type is an MO-Defined-Type - type nw_Counter32; - } + // Current maximum memory available + // Ephemeral data + container currmaxgrp-items { - // ARP_PKT_RECV_FAIL_IM_DOWN_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdFailImDown { - config "false"; - description "ARP Packet Received Fail Interface Down Count"; + // Ephemeral data + list CurrMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_CurrMaxMB-group; + description "Holds Current Maximum memory available information list"; + } + description "Holds Current Maximum memory available information"; } - // ARP_PKT_RECV_GLEAN_REQ_COUNT - // Type is an MO-Defined-Type - leaf pktRcvdGleanReqCount { - config "false"; - description "Glean Requests Received Count"; + // In-Use maximum memory + // Ephemeral data + container inusegrp-items { + + // Ephemeral data + list InUseKB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses m6rib_InUseKB-group; + description "Holds In-Use Memory Information list"; + } + description "Holds In-Use Memory Information"; } - // ARP_PKT_REFRESH_REQUESTS_RECV_FROM_CLIENTS - // Type is an MO-Defined-Type - leaf pktRfrshReqRecFrmClients { - config "false"; - description "ARP Packet Received Refresh requests from clients"; + // Configured maximum memory + // Ephemeral data + container configmaxgrp-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list ConfiguredMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; + + uses m6rib_ConfiguredMaxMB-group; + description "Holds Maximum Configured Memory Information list"; + } + description "Holds Maximum Configured Memory Information"; } - // ARP_PKT_RECV_SIGNALS_FROM_L2RIB - // Type is an MO-Defined-Type - leaf pktRcvdSigFrmL2rib { - config "false"; - description "Number of Signals received from L2rib"; + // Estimate maximum memory required + // Ephemeral data + container estgrp-items { - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + list EstMaxMB-list { + config "false"; + key "grpCount srcPerGrp oifPerEntry"; + + uses m6rib_EstMaxMB-group; + description "Holds Maximum Estimated Memory Information list"; + } + description "Holds Maximum Estimated Memory Information"; } } - grouping arp_IfStatsAdj-group { + grouping m6rib_CurrMaxMB-group { + description "Holds Current Maximum memory available information"; - // ARP_ADJ_ADD_COUNT - // Type is an MO-Defined-Type - leaf adjAdd { + // Ephemeral data + leaf max { config "false"; - description "ARP Adjacency Add Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_ADJ_DEL_COUNT - // Type is an MO-Defined-Type - leaf adjDel { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Adjacency Delete Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_ADJ_TIMEOUT_COUNT - // Type is an MO-Defined-Type - leaf adjTimeout { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Adjacency Timeout Count"; + type uint32; + description "Sources per Group"; + } - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf oifPerEntry { + config "false"; + type uint32; + description "OIFs per Entry"; } } - grouping arp_IfStatsMisc-group { + grouping m6rib_InUseKB-group { + description "Holds In-Use Memory Information"; - // ARP_CLIENT_MSG_COUNT - // Type is an MO-Defined-Type - leaf clientMsg { + // Ephemeral data + leaf max { config "false"; - description "ARP Client Message Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_CLIENT_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf clientMsgFail { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Client Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_IF_TIMEOUT_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf ifTimeoutMsgFail { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Interface Timeout Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_IF_STATUS_MSG_FAIL_COUNT - // Type is an MO-Defined-Type - leaf ifStatusMsgFail { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Interface Status Message Fail Count"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } } - grouping arp_IfStatsMH-group { + grouping m6rib_ConfiguredMaxMB-group { + description "Holds Maximum Configured Memory Information"; - // ARP_MH_PS_RECV_ADD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvaddfrml2rib { + // Ephemeral data + leaf max { config "false"; - description "ARP Received Peer Sync Add From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_MH_PS_PROCESS_ADD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processaddfrml2rib { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Processed Peer Sync Add From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_MH_PS_RECV_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvdelfrml2rib { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Received Peer Sync Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_MH_PS_PROCESS_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processdelfrml2rib { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Processed Peer Sync Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } + } - // ARP_MH_PS_RECV_PC_SHUT_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvpcshutfrml2rib { - config "false"; - description "ARP Received Port Channel Shut From L2RIB"; + grouping m6rib_EstMaxMB-group { + description "Holds Maximum Estimated Memory Information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf max { + config "false"; + type uint64; + description "Maximum memory in MB/KB"; } - // ARP_MH_PS_PROCESS_PC_SHUT_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processpcshutfrml2rib { + // Ephemeral data + leaf grpCount { config "false"; - description "ARP Processed Port Channel Shut From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Maximum Group Count"; } - // ARP_MH_PS_RECV_REMOTE_UPD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf recvremoteupdfrml2rib { + // Ephemeral data + leaf srcPerGrp { config "false"; - description "ARP Received Remote Update From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Sources per Group"; } - // ARP_MH_PS_PROCESS_REMOTE_UPD_FROM_L2RIB - // Type is an MO-Defined-Type - leaf processremoteupdfrml2rib { + // Ephemeral data + leaf oifPerEntry { config "false"; - description "ARP Processed Remote Update From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "OIFs per Entry"; } + } - // ARP_MH_PS_ADD_ERR_INVALID_FLAGS - // Type is an MO-Defined-Type - leaf psadderrinvalidflags { - config "false"; - description "ARP Multihoming Add Error Invalid Flag"; + grouping m6rib_Vrf-group { + description "This objects holds M6RIB context level information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Ephemeral data + leaf name { + config "false"; + type string; + description "Vrf Name"; } - // ARP_MH_PS_DEL_ERR_INVALID_FLAGS - // Type is an MO-Defined-Type - leaf psdelerrinvalidflags { + // Ephemeral data + leaf cid { config "false"; - description "ARP Multihoming Delete Error Invalid Flag"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Vrf Identifier"; } - // ARP_MH_PS_ADD_ERR_INVALID_CURR_STATE - // Type is an MO-Defined-Type - leaf psadderrinvalidcurrstate { + // Ephemeral data + leaf tableId { config "false"; - description "ARP Multihoming Add Error Current State"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Table Identifier"; } - // ARP_MH_PS_DEL_ERR_INVALID_CURR_STATE - // Type is an MO-Defined-Type - leaf psdelerrinvalidcurrstate { + // Ephemeral data + leaf totalNumRoutes { config "false"; - description "ARP Multihoming Delete Error Current State"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Total Number of Routes"; } - // ARP_MH_PS_DEL_ERR_MAC_MISMATCH - // Type is an MO-Defined-Type - leaf psdelerrmacmismatch { + // Ephemeral data + leaf totalNumGroups { config "false"; - description "ARP Multihoming Error Peer Sync Delete Mac Mismatch"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Total Number of Groups"; } - // ARP_MH_PS_DEL_ERR_SEC_DEL_FROM_L2RIB - // Type is an MO-Defined-Type - leaf psdelerrsecdelfrml2rib { + // Ephemeral data + leaf starGRoute { config "false"; - description "ARP Multihoming Error Peer Sync Second Delete From L2RIB"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Star G Count"; } - // ARP_MH_PS_DEL_ERR_FOR_TL_ROUTE - // Type is an MO-Defined-Type - leaf psdelerrfortlroute { + // Ephemeral data + leaf sgRoute { config "false"; - description "ARP Multihoming Error Peer Sync Delete For True Local Route"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "SG Route Count"; } - // ARP_MH_TL_DEL_ERR_FOR_PSRO_ROUTE - // Type is an MO-Defined-Type - leaf tldelerrforpsroroute { + // Ephemeral data + leaf starGPrfx { config "false"; - description "ARP Multihoming Error True Local Delete For Peer Sync Re-originate Route"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Star-G Route Prefix"; } - } - grouping arp_Ipv4Throttle-group { + // This object holds m6rib route group information + // Ephemeral data + container group-items { - // Enable / Disable glean throttling - // Type is an MO-Defined-Type - leaf adminSt { - description "Glean throttle state"; + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses m6rib_Group-group; + description "This object holds M6RIB route group information list"; + } + description "This object holds M6RIB route group information"; } + } - // Threshold for syslog for number of packets hitting the entry - // Type is an MO-Defined-Type - leaf syslog { - description "Glean Throttle Syslog For Number Of Packets"; + grouping m6rib_Group-group { + description "This object holds M6RIB route group information"; - // Type is an MO-Defined-Type - type arp_SyslogCnt; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group Address"; } - // Max throttle packets count. Crossing this threshold, - // packet will not be throttled for a particular adjacency - // Type is an MO-Defined-Type - leaf maxPacket { - description "Glean throttle packet count"; - - // Type is an MO-Defined-Type - type arp_MaxPacket; + // Ephemeral data + leaf grpMasklen { + config "false"; + type uint32; + description "Group Mask Length"; } - // Timeout for throttle setting for a particular adjacency - // Type is an MO-Defined-Type - leaf timeout { - description "Ipv4 Glean Throttle Timeout"; - - // Type is an MO-Defined-Type - type arp_ThrottleTimeout; + // Ephemeral data + leaf bidir { + config "false"; + type boolean; + description "Bidirectional Flag"; } - } - grouping arp_EventLogs-group { - - // Event LogType - // Type is an MO-Defined-Type - leaf eventType { - description "Sync Event Log Type"; - - // Type is an MO-Defined-Type - type arp_EventType; - } + // This object holds m6rib route source information + // Ephemeral data + container source-items { - // Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Sync Event Log Size"; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; - // Type is an MO-Defined-Type - type arp_EventLogSize; + uses m6rib_Source-group; + description "This object holds M6RIB Route Source information list"; + } + description "This object holds M6RIB Route Source information"; } } - grouping arp_Vpc-group { - - // This objects hold per vpc domain information. There is only - // one vpc domain that is configurable in the system - container dom-items { - list VpcDom-list { - key "domainId"; + grouping m6rib_Source-group { + description "This object holds M6RIB Route Source information"; - // Added containment: Prefix=dom - // Acquired From Package arp - uses arp_VpcDom-group; - } + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source IPv6 Address"; } - } - - grouping arp_VpcDom-group { - // VPC Domain ID - // Type is an MO-Defined-Type - leaf domainId { - description "TBD"; + // Ephemeral data + leaf pending { + config "false"; + type boolean; + description "Pending flag"; + } - // Type is an MO-Defined-Type - type vpc_DomId; + // Ephemeral data + leaf uptime { + config "false"; + type string; + description "Route Uptime in HH:MM:SS format"; } - // Enable/Disable IP ARP SYNC - // Type is an MO-Defined-Type - leaf arpSync { - description "IP ARP Sync"; + // Ephemeral data + leaf oifcount { + config "false"; + type uint32; + description "Outgoing Interface Count"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf statsPkts { + config "false"; + type uint32; + description "Packets Forwarded by IPv6"; } - } - grouping arp_DbSupCache-group { + // Ephemeral data + leaf statsBytes { + config "false"; + type uint32; + description "Byte Count of Packets IPv6 forwarded"; + } - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf statsRateBuf { config "false"; - description "Database Type"; + type string; + description "Rate Buffer Count of IPv6 packets forwarded"; + } - // Type is an MO-Defined-Type - type arp_DbT; + // Ephemeral data + leaf lispSrcRloc { + config "false"; + type string; + description "Lisp Source Rloc Count"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf routeIif { config "false"; - description "Name"; + type string; + description "Route Incoming Interface"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf rpfNbr { + config "false"; + type address_Ip; + description "RPF Neighbor IPv6 Address"; } - // Holds Suppression-cache vlan related information - container vlan-items { - list SupCacheVlan-list { - config "false"; - key "id"; + // Ephemeral data + leaf internal { + config "false"; + type boolean; + description "RPF Internal Flag"; + } - // Added containment: Prefix=vlan - // Acquired From Package arp - uses arp_SupCacheVlan-group; + // Ephemeral data + leaf rpfNbrUptime { + config "false"; + type union { + type string; + type uint64; } + description "RPF Neighbor uptime"; } - } - - grouping arp_SupCacheVlan-group { - // vlan id - // Type is an MO-Defined-Type - leaf id { + // Ephemeral data + leaf fabricOif { config "false"; - description "VLAN id"; - - // Type is an MO-Defined-Type - type stp_VlanId; + type boolean; + description "Fabric OIF Flag"; } - // Suppression ARP Mode - // Type is an MO-Defined-Type - leaf suppressArpMode { + // Ephemeral data + leaf fabricLoser { config "false"; - description "Suppression ARP mode"; - - // Type is an MO-Defined-Type - type arp_SuppressArpMode; + type boolean; + description "Fabric Loser Flag"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf numVpcSviOifs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type uint32; + description "Number of vpc svi OIFs"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { + // Ephemeral data + leaf routeMdtIod { config "false"; - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + type boolean; + description "Route MDT IOD Flag"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf mdtEncapIndex { config "false"; - description "Operational State"; + type uint32; + description "MDT Encap Index"; + } - // Type is an MO-Defined-Type - type nw_EntOperSt; + // This object holds m6rib mpib information + // Ephemeral data + container mpib-items { + + // Ephemeral data + list Mpib-list { + config "false"; + key "mpibName"; + + uses m6rib_Mpib-group; + description "This object holds M6RIB route owner information list"; + } + description "This object holds M6RIB route owner information"; } - // Holds suppression-cache entry information - container ip-items { - list SupCacheEntry-list { + // This object holds m6rib OIF information + // Ephemeral data + container oif-items { + + // Ephemeral data + list Oif-list { config "false"; - key "ip"; + key "oifName"; - // Added containment: Prefix=ip - // Acquired From Package arp - uses arp_SupCacheEntry-group; + uses m6rib_Oif-group; + description "This object holds M6RIB Outgoing Interface information list"; } + description "This object holds M6RIB Outgoing Interface information"; } } - grouping arp_SupCacheEntry-group { - leaf ip { + grouping m6rib_Mpib-group { + description "This object holds M6RIB route owner information"; + + // Ephemeral data + leaf mpibName { config "false"; - type address_Ip; + type string; + description "MPIB name"; } - // IRP Entry flags - // Type is an MO-Defined-Type - leaf flags { + // Ephemeral data + leaf oifCount { config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type arp_SupCacheFlag; + type uint32; + description "OIF count"; } - leaf mac { + + // Ephemeral data + leaf staleRoute { config "false"; - type address_Mac; + type boolean; + description "Stale Route Flag"; } - leaf upTS { + } + + grouping m6rib_Oif-group { + description "This object holds M6RIB Outgoing Interface information"; + + // Ephemeral data + leaf oifName { config "false"; type string; + description "OIF name"; } - // Physical Interface ID - // Type is an MO-Defined-Type - leaf phyid { + // Ephemeral data + leaf oifUptime { config "false"; - description "Physical Interface ID"; + type string; + description "OIF Uptime in HH:MM:SS Format"; + } - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf oifRPF { + config "false"; + type boolean; + description "OIF RPF flag"; } - leaf remotevtepaddr { + + // Ephemeral data + leaf oifLispEncapEntries { config "false"; - type string; + type uint32; + description "Lisp Encap Entries Count"; } - } - grouping bfd_Entity-group { + // This object holds lisp encap information + // Ephemeral data + container lispencap-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list LispEncap-list { + config "false"; + key "index"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses m6rib_LispEncap-group; + description "This object holds lisp encap information list"; } + description "This object holds lisp encap information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds m6rib OIF MPIB information + // Ephemeral data + container oifmpib-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + list OifMpib-list { + config "false"; + key "oifMpibName"; + + uses m6rib_OifMpib-group; + description "This object holds M6RIB Outgoing Interface owner information list"; + } + description "This object holds M6RIB Outgoing Interface owner information"; } + } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + grouping m6rib_LispEncap-group { + description "This object holds lisp encap information"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + // Ephemeral data + leaf index { + config "false"; + type uint32; + description "Lisp Encap Index"; } - // This objects hold per bfd instance information. - container inst-items { + // Ephemeral data + leaf srcRloc { + config "false"; + type address_Ip; + description "Source remote location"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package bfd - uses bfd_Inst-group; + // Ephemeral data + leaf dstRloc { + config "false"; + type address_Ip; + description "Destination remote location"; } } - grouping bfd_Inst-group { - - // Loopback interface to be used for bfd echo frames - // Type is an MO-Defined-Type - leaf echoIf { - description "Echo Interface to be used for BFD echo frames"; + grouping m6rib_OifMpib-group { + description "This object holds M6RIB Outgoing Interface owner information"; - // Type is an MO-Defined-Type - type nw_IfId; + // Ephemeral data + leaf oifMpibName { + config "false"; + type string; + description "OIF MPIB name"; } - // Startup timer interval. - // Type is an MO-Defined-Type - leaf startupIntvl { - description "Startup timer Interval"; - - // Type is an MO-Defined-Type - type bfd_StartupIntvl; + // Ephemeral data + leaf staleOif { + config "false"; + type boolean; + description "Stale OIF Flag"; } - // Slow mode timer interval. This is the interval at which - // BFD control packets are sent. - // Type is an MO-Defined-Type - leaf slowIntvl { - description "Slow timer Interval"; - - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + // Ephemeral data + leaf vpcSvi { + config "false"; + type boolean; + description "VPC SVI Flag"; } + } + + grouping m6rib_Dom-group { + description "This objects hold per MRIB information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Admin State leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type + // Per-Dom Controls leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtdmc_DomCtrl; + description "Domain Controls"; } - // This object holds bfd interface information - container if-items { - list If-list { - key "id"; + // Protocol packet MTU + leaf mtu { - // Added containment: Prefix=if - // Acquired From Package bfd - uses bfd_If-group; - } + type rtdmc_Mtu; + description "Maximum Transmission Unit"; } - // This objects hold per address family bfd instance information - container af-items { - list InstAf-list { - key "type"; + // Auto Enable + leaf autoEnable { - // Added containment: Prefix=af - // Acquired From Package bfd - uses bfd_InstAf-group; - } + type rtdmc_AutoEnable; + description "Auto Enable"; } - - // This object holds keepalive policy information - container ka-items { - - // Added containment as a singleton: Prefix=ka - // Acquired From Package bfd - uses bfd_KaP-group; + leaf logNbhChng { + type boolean; + description "Log Neighbhor changes"; + } + leaf flushRoutes { + type boolean; + description "Flush Routes"; + } + leaf bfd { + type boolean; + description "BFD"; } - // This object holds bfd session information - container session-items { - list Sess-list { - config "false"; - key "discr"; + leaf jpDelay { - // Added containment: Prefix=session - // Acquired From Package bfd - uses bfd_Sess-group; - } + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - } - grouping bfd_If-group { - - // Enable/disable echo mode for interface - // Type is an MO-Defined-Type - leaf echoAdminSt { - description "Echo Mode Admin State of BFD Interface"; + leaf regRateLmt { - // Type is an MO-Defined-Type - type nw_AdminSt; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Interface Controls"; + // This object holds m6rib config information + container config-items { - // Type is an MO-Defined-Type - type bfd_IfControl; + uses m6rib_Config-group; + description "This object holds M6RIB config information"; } - // BFD track-member-link - // Type is an MO-Defined-Type - leaf trkMbrLnk { - description "Track Member Link Enable Disable on bfd interface"; + // This object holds m6rib rpf-meter config information + container rpfmeter-items { - // Type is an MO-Defined-Type - type bfd_TrkMbrLnk; + uses m6rib_RpfMeter-group; + description "Holds M6RIB rpf-meter config information"; } - // BFD Start Time - // Type is an MO-Defined-Type - leaf stTm { - description "BFD Start timeout"; + // This object holds m6rib last-hop-meter config information + container lasthopmeter-items { - // Type is an MO-Defined-Type - type bfd_StTm; - } - leaf dst { - type address_Ipv4; + uses m6rib_LastHopMeter-group; + description "M6RIB last hop meter Configuration information"; } + container eventhist-items { + list EventHistory-list { + key "type"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses m6rib_EventHistory-group; + description "Holds Configuration details of event-history buffers list"; } + description "Holds Configuration details of event-history buffers"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds m6rib Notify information + container loglevel-items { - // Type is an MO-Defined-Type - type naming_Descr1024; + uses m6rib_LogLevel-group; + description "Holds M6RIB logging level information"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // This object holds m6rib Notify information + container notify-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses m6rib_Notify-group; + description "This object holds m6rib Notify information"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds global config for mrib + container trace-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses m6rib_Trace-group; + description "This object holds global configuration for Bintrace"; } + } - // This object holds authentication policy information - container auth-items { - - // Added containment as a singleton: Prefix=auth - // Acquired From Package bfd - uses bfd_AuthP-group; - } + grouping m6rib_Config-group { + description "This object holds M6RIB config information"; - // This object holds per address family bfd interface information - container af-items { - list IfAf-list { - key "type"; + // Holddown Enable + leaf holdEnable { - // Added containment: Prefix=af - // Acquired From Package bfd - uses bfd_IfAf-group; - } + type m6rib_HoldAdminSt; + description "Holddown Enable"; } - // Neighbor MacEntry - container nbr-items { - list Nbr-list { - key "srcip destip"; + // Holddown second + leaf holddown { - // Added containment: Prefix=nbr - // Acquired From Package bfd - uses bfd_Nbr-group; - } + type m6rib_HoldDownType; + description "holddown second"; + } + leaf compressBit { + type boolean; + description "M6RIB Compress Bitfield"; } - // This object holds interface keepalive policy information - container ifka-items { + // Mfdm-buffer-route-count size + leaf mfdmSize { - // Added containment as a singleton: Prefix=ifka - // Acquired From Package bfd - uses bfd_IfKaP-group; + type m6rib_MfdmSize; + description "Mfdm buffer route size"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - container rtvrfMbr-items { + // Multipath Mode + leaf mode { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type m6rib_MultipathMode; + description "M6RIB ECMP Multicast load splitting"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Multipath Resilient + leaf modeResilient { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type m6rib_ResilientType; + description "Multipath Resilient RPF interface mode"; } } - grouping bfd_AuthP-group { + grouping m6rib_RpfMeter-group { + description "Holds M6RIB rpf-meter config information"; + leaf hwDropAll { + type boolean; + description "hardware drop all configuration"; + } - // Authentication type - // Type is an MO-Defined-Type - leaf type { - description "Authentication Type of the BFD session"; + leaf kbps { - // Type is an MO-Defined-Type - type bfd_AuthT; + type m6rib_Kbps; + description "rpf-meter in killobytes/seconds"; } - // Authentication key id - // Type is an MO-Defined-Type - leaf keyId { - description "Authentication Key ID to be used in the BFD session"; + leaf burstSize { - // Type is an MO-Defined-Type - type bfd_AuthKeyId; + type m6rib_BurstSize; + description "rpf-meter in killobytes"; } + } - // Authentication Hex key Size - // Type is an MO-Defined-Type - leaf hexKeySize { - description "A property to indicate Authentication Hex Key Size"; + grouping m6rib_LastHopMeter-group { + description "M6RIB last hop meter Configuration information"; - // Type is an MO-Defined-Type - type bfd_AuthHexKeySize; + leaf kbps { + + type m6rib_Kbps; + description "rpf-meter in killobytes/seconds"; } - // Authentication hex key - // Type is an MO-Defined-Type - leaf hexKey { - description "A property to indicate Authentication Hex Key for the BFD session"; + leaf burstSize { - // Type is an MO-Defined-Type - type bfd_AuthHexKey; + type m6rib_BurstSize; + description "rpf-meter in killobytes"; } + } - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "A property to indicate Authentication Key for the BFD session"; + grouping m6rib_EventHistory-group { + description "Holds Configuration details of event-history buffers"; - // Type is an MO-Defined-Type - type bfd_AuthKey; + leaf type { + + type m6rib_EhType; + description "configures type of event history"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf size { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type m6rib_Size; + description "configures buffer size in text/kb"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping m6rib_LogLevel-group { + description "Holds M6RIB logging level information"; - // Type is an MO-Defined-Type - type naming_Descr; + // logging leve + leaf level { + + type m6rib_LogLevel; + description "Logging Level"; + } + leaf type { + type string; + description "Logging type"; } } - grouping bfd_IfAf-group { + grouping m6rib_Notify-group { + description "This object holds m6rib Notify information"; - // Enable/disable sessions for interface address family - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State for Interface Address family"; + // Notify interval + leaf interval { - // Type is an MO-Defined-Type - type nw_AdminSt; + type m6rib_Interval; + description "Notify Interval"; } + } - // Enable/disable echo mode for interface address family - // Type is an MO-Defined-Type - leaf echoAdminSt { - description "Echo Mode Admin State for Interface Address family"; + grouping m6rib_Trace-group { + description "This object holds global configuration for Bintrace"; + leaf traceEnable { + type boolean; + description "Configure multicast and enable bintrace"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // trace entries + leaf traceEntryCnt { + + type m6rib_TraceCountType; + description "Update number of bintrace entries"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Interface Controls"; + // trace records + leaf traceRecCnt { - // Type is an MO-Defined-Type - type bfd_IfControl; + type m6rib_TraceCountType; + description "Update number of bintrace record per entry"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping m6rib_RouteDb-group { + description "This object holds M6RIB route database information"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { + + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses m6rib_Vrf-group; + description "This objects holds M6RIB context level information list"; } + description "This objects holds M6RIB context level information"; } + } - // Type - // Inherited From bfd:Af - // Type is an MO-Defined-Type - leaf type { - description "Type of the Address Family"; + grouping macsec_Entity-group { + description "Macsec control plane entity"; - // Type is an MO-Defined-Type - type bfd_AfT; + // This objects hold per macsec instance information. There is + // only one instance of macsec running in the system today + container inst-items { + + uses macsec_Inst-group; + description "Macsec Instance object"; } + } - // This object holds authentication policy information - container auth-items { + grouping macsec_Inst-group { + description "Macsec Instance object"; - // Added containment as a singleton: Prefix=auth - // Acquired From Package bfd - uses bfd_AuthP-group; + // macsec shutdown + leaf macsecShutdown { + + type macsec_MacsecShutdown; + description "Enable or disable Macsec Shutdown"; } + container if-items { + list If-list { + key "id"; - // This object holds interface keepalive policy information - container ifka-items { + uses macsec_If-group; + description "Interface for Macsec keychain CLI list"; + } + description "Interface for Macsec keychain CLI"; + } + container eapol-items { + list Eapol-list { + key "id"; - // Added containment as a singleton: Prefix=ifka - // Acquired From Package bfd - uses bfd_IfKaP-group; + uses macsec_Eapol-group; + description "Interface for Macsec Eapol mac-address CLI list"; + } + description "Interface for Macsec Eapol mac-address CLI"; + } + + // This object holds macsec information that is operated at a + // interface level + container policy-items { + list Policy-list { + key "policyName"; + + uses macsec_Policy-group; + description "Macsec Policy Instance list"; + } + description "Macsec Policy Instance"; } } - grouping bfd_IfKaP-group { + grouping macsec_If-group { + description "Interface for Macsec keychain CLI"; - // Desired minimum tx interval. This is the minimum interval, - // in ms, that the system would like to use when transmitting - // BFD control packets. - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; + // Key Chain Name + leaf keychainName { - // Type is an MO-Defined-Type - type bfd_IfMinTxIntvl; + type macsec_KeyChainName; + description "Name of Macsec Key Chain"; } - // Required minimum rx interval. This is the minimum interval, - // in ms, between received BFD control packets that this - // system is capable of supporting. - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; + // Policy Name + leaf policyName { - // Type is an MO-Defined-Type - type bfd_IfMinRxIntvl; + type macsec_PolicyName; + description "Name of Macsec Policy"; } - // Detection multiplier. This is the desired detection time - // multiplier for BFD packets on the local system. - // Type is an MO-Defined-Type - leaf detectMult { - description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; + // Fallback Key Chain Name + leaf fallbackKeychainName { - // Type is an MO-Defined-Type - type bfd_IfDetectMult; + type macsec_KeyChainName; + description "Name of Macsec Fallback Key Chain"; } - // Echo rx interval. This is the minimum interval, in ms, - // between received BFD echo packets that this system is - // capable of supporting. - // Type is an MO-Defined-Type - leaf echoRxIntvl { - description "Echo Rx Interval. This is the minimum interval, in ms, between received BFD echo packets that this system is capable of supporting."; + // Interface Index + leaf id { - // Type is an MO-Defined-Type - type bfd_EchoRxIntvl; + type nw_IfId; + description "Interface Index"; } } - grouping bfd_Nbr-group { - leaf srcip { - type address_Ip; + grouping macsec_Eapol-group { + description "Interface for Macsec Eapol mac-address CLI"; + leaf macAddress { + type address_Mac; + default "03:00:00:c2:80:01"; + description "Macsec EAPOL Mac Address"; } - leaf destip { - type address_Ip; + + // Ether type + leaf etherType { + + type macsec_EtherType; + description "Macsec EAPOL Ether Type"; + } + + // Interface Index + leaf id { + + type nw_IfId; + description "Interface Index"; } } - grouping bfd_InstAf-group { + grouping macsec_Policy-group { + description "Macsec Policy Instance"; - // Slow mode timer interval. This is the interval at which - // BFD control packets are sent. - // Type is an MO-Defined-Type - leaf slowIntvl { - description "Slow timer Interval"; + // Policy Name + leaf policyName { - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + type macsec_PolicyName; + description "Name of Macsec Policy"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Key Server Priority + leaf keySvrPrio { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type macsec_KeySvrPrio; + description "Key Server Priority for Macsec Policy"; } - // Type - // Inherited From bfd:Af - // Type is an MO-Defined-Type - leaf type { - description "Type of the Address Family"; + // Confidentiality Offset + leaf confOffset { - // Type is an MO-Defined-Type - type bfd_AfT; + type macsec_ConfOffset; + description "Confidentiality Offset for Macsec Policy"; } - // This object holds keepalive policy information - container ka-items { + // Security Policy + leaf secPolicy { - // Added containment as a singleton: Prefix=ka - // Acquired From Package bfd - uses bfd_KaP-group; + type macsec_SecPolicy; + description "Security Policy for Macsec Policy"; } - } - - grouping bfd_KaP-group { - // Desired minimum tx interval. This is the minimum interval, - // in ms, that the system would like to use when transmitting - // BFD control packets. - // Type is an MO-Defined-Type - leaf minTxIntvl { - description "Desired Minimum TX Interval.This is the minimum interval, in ms, that the system would like to use when transmitting BFD control packets."; + // Replay Protection Window Size + leaf replayWindow { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type macsec_ReplayWindow; + description "Replay Window for Macsec Policy"; } - // Required minimum rx interval. This is the minimum interval, - // in ms, between received BFD control packets that this - // system is capable of supporting. - // Type is an MO-Defined-Type - leaf minRxIntvl { - description "Required Minimum RX Interval. This is the minimum interval, in ms, between received BFD control packets that this system is capable of supporting."; + // Cipher Suite + leaf cipherSuite { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type macsec_CipherSuite; + description "Cipher Suite for Macsec Policy"; } - // Detection multiplier. This is the desired detection time - // multiplier for BFD packets on the local system. - // Type is an MO-Defined-Type - leaf detectMult { - description "Detection Multiplier. This is the desired detection time multiplier for BFD packets on the local system."; + // SAK expiry time + leaf sakExpiryTime { - // Type is an MO-Defined-Type - type bfd_DetectMult; + type macsec_SakExpiryTime; + description "Security Association Key Expiry Time for Macsec Policy"; } - // Echo rx interval. This is the minimum interval, in ms, - // between received BFD echo packets that this system is - // capable of supporting. - // Type is an MO-Defined-Type - leaf echoRxIntvl { - description "Echo Rx Interval. This is the minimum interval,in ms, between received BFD echo packets that this system is capable of supporting."; + // Include icv indicator + leaf includeIcvParam { - // Type is an MO-Defined-Type - type bfd_EchoRxIntvl; + type macsec_IncludeIcvParam; + description "Include ICV Indicator paramset in MKPDU for Macsec Policy"; } } - grouping bfd_Sess-group { + grouping mcastfwd_Entity-group { + description "Holds Multicast Forwarding Entity Information"; - // Local session identifier - // Type is an MO-Defined-Type - leaf discr { - config "false"; - description "Local Session Identifier of the BFD session"; + leaf name { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Remote session identifier - // Type is an MO-Defined-Type - leaf remoteDiscr { - config "false"; - description "Remote Session Identifier of the BFD session"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_Discr; + type nw_AdminSt; + description "Admin State"; } - // Async mode source port - // Type is an MO-Defined-Type - leaf asyncPort { + // Operational state + leaf operSt { config "false"; - description "Asynchronous mode Source Port"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_EntOperSt; + description "Operational State"; } - // Echo mode source port - // Type is an MO-Defined-Type - leaf echoPort { + // Operational errors qualifier + leaf operErr { config "false"; - description "Echo mode Source Port"; - // Type is an MO-Defined-Type - type l4_Port; - } - leaf localMac { - config "false"; - type address_Mac; - } - leaf remoteMac { - config "false"; - type address_Mac; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Interface id - // Type is an MO-Defined-Type - leaf ifId { - config "false"; - description "Interface ID associated with the BFD session"; + // This objects hold per mcastfwd instance information. There is only + // one instance of mcastfwd running in the system today + container inst-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mcastfwd_Inst-group; + description "Holds Multicast Forwarding Instance information"; } + } - // Interface ordinal - // Type is an MO-Defined-Type - leaf iod { - config "false"; - description "Interface ordinal associated with the BFD session"; + grouping mcastfwd_Inst-group { + description "Holds Multicast Forwarding Instance information"; - // Type is an MO-Defined-Type - type nw_Iod; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // L3 context name - // Type is an MO-Defined-Type - leaf vrfName { - config "false"; - description "L3 Context Name"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type l3_VrfName; - } - leaf srcAddr { - config "false"; - type address_Ip; + type nw_AdminSt; + description "Admin State"; } - leaf destAddr { - config "false"; - type address_Ip; + + // Instance controls + leaf ctrl { + + type nw_InstCtrl; + description "Controls"; } - // Local value of tx interval - // Type is an MO-Defined-Type - leaf localTxIntvl { + // Operational errors qualifier + leaf operErr { config "false"; - description "Local Value of Tx Interval"; - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Local value of rx interval - // Type is an MO-Defined-Type - leaf localRxIntvl { - config "false"; - description "Local Value of Rx Interval"; + // Inter Packet Delay + leaf jpDelay { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type rtdmc_JPDelay; + description "Inter Packet Delay"; } - // Local value of detection multiplier - // Type is an MO-Defined-Type - leaf localDetectMult { - config "false"; - description "Local value of Detection Multiplier"; + // Null Register Inter Batch Delay + leaf nrDelay { - // Type is an MO-Defined-Type - type bfd_DetectMult; + type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } - // Active value of tx interval - // Type is an MO-Defined-Type - leaf txIntvl { - config "false"; - description "Active Value of Tx Interval"; + // Number of routes in a null register + leaf nrNumRt { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type rtdmc_NRNumRt; + description "Null Register Number of Routes"; + } + leaf regStop { + type boolean; + description "Register until stops"; } - // Active value of echo tx interval - // Type is an MO-Defined-Type - leaf echoTxIntvl { - config "false"; - description "Active Value of Echo Tx Interval"; + // This objects hold per igmp domain information + container dom-items { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + uses mcastfwd_Dom-group; + description "Holds Multicast Forwarding Domain information"; } + container eventhist-items { + list EventHistory-list { + key "type"; - // Active value of rx interval - // Type is an MO-Defined-Type - leaf rxIntvl { - config "false"; - description "Active Value of Rx Interval"; + uses mcastfwd_EventHistory-group; + description "Holds Multicast Forwarding Event-History Buffer Configurations list"; + } + description "Holds Multicast Forwarding Event-History Buffer Configurations"; + } - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + container loglevel-items { + + uses mcastfwd_LogLevel-group; + description "Configures logging level"; } - // Active value of slow interval - // Type is an MO-Defined-Type - leaf slowIntvl { - config "false"; - description "Active value of Slow Interval"; + container swrepli-items { - // Type is an MO-Defined-Type - type bfd_SlowIntvl; + uses mcastfwd_SwRepli-group; + description "Configures software replicate"; } + } - // Active value of detection multiplier - // Type is an MO-Defined-Type - leaf detectMult { - config "false"; - description "Active value of Detection Multiplier"; + grouping mcastfwd_Dom-group { + description "Holds Multicast Forwarding Domain information"; - // Type is an MO-Defined-Type - type bfd_DetectMult; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Active value of auth type - // Type is an MO-Defined-Type - leaf authType { - config "false"; - description "Active value of Authentication Type"; + // Admin State + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_AuthT; + type nw_AdminSt; + default "disabled"; + description "Admin State"; } - // Authentication sequence number - // Type is an MO-Defined-Type - leaf authSeqno { - config "false"; - description "Authentication Sequence Number"; + // Per-Dom Controls + leaf ctrl { - // Type is an MO-Defined-Type - type bfd_AuthSeqno; + type rtdmc_DomCtrl; + description "Domain Controls"; } - // Oper (protocol) state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Protocol packet MTU + leaf mtu { - // Type is an MO-Defined-Type - type bfd_OperSt; + type rtdmc_Mtu; + description "Maximum Transmission Unit"; } - // Remote oper state - // Type is an MO-Defined-Type - leaf remoteOperSt { - config "false"; - description "Remote Operational State"; + // Auto Enable + leaf autoEnable { - // Type is an MO-Defined-Type - type bfd_OperSt; + type rtdmc_AutoEnable; + description "Auto Enable"; + } + leaf logNbhChng { + type boolean; + description "Log Neighbhor changes"; + } + leaf flushRoutes { + type boolean; + description "Flush Routes"; + } + leaf bfd { + type boolean; + description "BFD"; } - // Protocol diag code - // Type is an MO-Defined-Type - leaf diag { - config "false"; - description "Protocol Diagnostic code"; + leaf jpDelay { - // Type is an MO-Defined-Type - type bfd_DiagCode; + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - // Packet flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Packet Flags"; + leaf regRateLmt { - // Type is an MO-Defined-Type - type bfd_PktFlags; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; } - leaf lastTransTime { - config "false"; - type string; + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } + } - // Last diag code - // Type is an MO-Defined-Type - leaf lastDiag { - config "false"; - description "Last Diagnostic code"; + grouping mcastfwd_EventHistory-group { + description "Holds Multicast Forwarding Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type bfd_DiagCode; - } - leaf lastDownTime { - config "false"; - type string; + leaf type { + + type mcastfwd_EhType; + description "Configures type of event history"; } - // This object holds bfd session stats information - container stats-items { + leaf size { - // Added containment as a singleton: Prefix=stats - // Acquired From Package bfd - uses bfd_SessStats-group; + type mcastfwd_Size; + description "Configures buffer size in text/kb"; } + } - // This object holds bfd last packet information. This signifies - // peer view of the session. - container peerv-items { + grouping mcastfwd_LogLevel-group { + description "Configures logging level"; - // Added containment as a singleton: Prefix=peerv - // Acquired From Package bfd - uses bfd_PeerV-group; + leaf lvltype { + + type mcastfwd_LvlType; + description "Configures type of logging level"; } - // This object holds app information per bfd session - container app-items { - list SessApp-list { - config "false"; - key "id"; + leaf level { - // Added containment: Prefix=app - // Acquired From Package bfd - uses bfd_SessApp-group; - } + type mcastfwd_Level; + description "Configures level values from 0-7"; } + } - // Rel-def from mbrSess - container rsmbrSess-items { + grouping mcastfwd_SwRepli-group { + description "Configures software replicate"; - // Abstract containment of rsmbrSess derived from bfd:Sess - list RsMbrSess-list { - key "tDn"; + leaf type { - // Added containment: Prefix=rsmbrSess - // Acquired From Package bfd - uses bfd_RsMbrSess_source-group; - } + type mcastfwd_SwRep; + description "Enable software replication of PIM ASM leak packets and incoming interface"; } } - grouping bfd_SessStats-group { + grouping mld_Entity-group { + description "MLD Entity"; - // Packets received - // Type is an MO-Defined-Type - leaf rxCnt { - config "false"; - description "Packets Received"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Average interval between received packets - // Type is an MO-Defined-Type - leaf rxAvg { - config "false"; - description "Packets Average Receive Interval, which is the average interval between received packets "; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_AdminSt; + description "Admin State"; } - // Minimum interval between received packets - // Type is an MO-Defined-Type - leaf rxMin { + // Operational state + leaf operSt { config "false"; - description "Packets Minimum Receive Interval"; - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_EntOperSt; + description "Operational State"; } - // Maximum interval between received packets - // Type is an MO-Defined-Type - leaf rxMax { - config "false"; - description "Packets Maximum Receive Interval"; + // This objects hold per mld instance information. There is only + // one instance of mld running in the system today + container inst-items { - // Type is an MO-Defined-Type - type bfd_PktInterval; + uses mld_Inst-group; + description "MLD Instance"; } - leaf lastRxPkt { - config "false"; - type string; + } + + grouping mld_Inst-group { + description "MLD Instance"; + + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Packets transmitted - // Type is an MO-Defined-Type - leaf txCnt { - config "false"; - description "Packets Transmitted"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Average interval between transmitted packets - // Type is an MO-Defined-Type - leaf txAvg { - config "false"; - description "Packets Average Transmit Interval, which is average interval between transmitted packets"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type nw_InstCtrl; + description "Controls"; } - // Minimum interval between transmitted packets - // Type is an MO-Defined-Type - leaf txMin { - config "false"; - description "Packets Minimum Transmit Interval"; + // Control + leaf instCtrl { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type ipmc_InstCtrl; + description "Inst Controls"; } - // Maximum interval between transmitted packets - // Type is an MO-Defined-Type - leaf txMax { - config "false"; - description "Packets Maximum Transmit Interval"; + // Bootup route add delay to RIB + leaf bootupDelay { - // Type is an MO-Defined-Type - type bfd_PktInterval; + type ipmc_BootupDelay; + description "Bootup Route Add Delay"; } - leaf lastTxPkt { - config "false"; - type string; + leaf flushRoute { + type boolean; + description "Flush Routes on Restart"; + } + leaf rtrAlert { + type boolean; + description "Enforce Router Alert"; + } + leaf anyQueryDest { + type boolean; + description "Allow any destination-IP for General Queries "; } - // Number of times session has gone into up state - // Type is an MO-Defined-Type - leaf upCnt { - config "false"; - description "Up Count is the number of times session has gone into up state"; + // syslog-Threshold + leaf syslogThreshold { - // Type is an MO-Defined-Type - type nw_Counter32; + type ipmc_SyslogThresT; + description "IGMP table syslog threshold percentage"; + } + leaf spoofCheck { + type boolean; + description "Enable spoof check for IGMP"; + } + leaf strictQuerElect { + type boolean; + description "Consider subnet check for L3 igmp querier election"; } - // Number of times session has gone into down state - // Type is an MO-Defined-Type - leaf downCnt { - config "false"; - description "Down Count is the number of times session has gone into down state"; + // This objects hold per mld domain information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mld_Dom-group; + description "This object holds MLD domain information list"; + } + description "This object holds MLD domain information"; + } + container eventhist-items { + list EventHistory-list { + key "type"; + + uses mld_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; + } + description "This object holds configuration details of event-history buffers"; } } - grouping bfd_PeerV-group { + grouping mld_Dom-group { + description "This object holds MLD domain information"; - // Diag Code in last packet - // Type is an MO-Defined-Type - leaf diag { - config "false"; - description "Diagnostic Code in Last Packet"; + leaf name { - // Type is an MO-Defined-Type - type bfd_DiagCode; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Protocol state in last packet - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Protocol State in Last Packet"; + // This objects hold per mld interface information + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type bfd_OperSt; + uses mld_If-group; + description "This object holds per MLD interface information list"; + } + description "This object holds per MLD interface information"; } - // Flags in last packet - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags in Last Packet"; + // This objects hold per mld domain information + container ssmxlate-items { + list SsmXlate-list { + key "srcAddr grpPfx"; - // Type is an MO-Defined-Type - type bfd_PktFlags; + uses mld_SsmXlate-group; + description "Holds Source Specific Multicast (SSM) translation information list"; + } + description "Holds Source Specific Multicast (SSM) translation information"; } + } - // Detect multiplier in last packet - // Type is an MO-Defined-Type - leaf detectMult { - config "false"; - description "Detect Multiplier in Last Packet"; + grouping mld_If-group { + description "This object holds per MLD interface information"; - // Type is an MO-Defined-Type - type bfd_DetectMult; + leaf mldVersion { + + type mld_Ver; + description "MLD supported version"; } - // My discriminator in last packet - // Type is an MO-Defined-Type - leaf myDisc { - config "false"; - description "My Discriminator in Last Packet"; + leaf name { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Your discriminator in last packet - // Type is an MO-Defined-Type - leaf yourDisc { - config "false"; - description "Your Discriminator in Last Packet"; + leaf descr { - // Type is an MO-Defined-Type - type bfd_Discr; + type naming_Descr1024; + description "Description"; } - // Min tx interval in last packet - // Type is an MO-Defined-Type - leaf minTx { - config "false"; - description "Minimum Tx Interval in Last Packet"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type bfd_MinTxIntvl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Min rx interval in last packet - // Type is an MO-Defined-Type - leaf minRx { - config "false"; - description "Minimum Rx Interval in Last Packet"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type nw_IfAdminSt; + description "Admin State"; } - // Min echo interval in last packet - // Type is an MO-Defined-Type - leaf minEcho { - config "false"; - description "Minimum Echo Interval in Last Packet"; + // Interface Control + leaf ifCtrl { - // Type is an MO-Defined-Type - type bfd_MinRxIntvl; + type ipmc_IfCtrl; + description "Controls"; } - } - grouping bfd_SessApp-group { + // Group Timeout + leaf grpTimeout { - // Application ID - // Type is an MO-Defined-Type - leaf id { + type ipmc_GrpTimeout; + description "Group Membership Timeout"; + } + leaf actQuer { config "false"; - description "Application ID of the app associated with the BFD session"; - - // Type is an MO-Defined-Type - type bfd_AppId; + type address_Ip; + description "IGMP active querier IP"; } - leaf name { + leaf nextQuerTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "IGMP next query time"; } - // Application sap ID - // Type is an MO-Defined-Type - leaf sapId { + // Flags + leaf flags { config "false"; - description "Application SAP ID of the app associated with the BFD session"; - // Type is an MO-Defined-Type - type bfd_SapId; + type ipmc_IfFlags; + description "Flags"; } - leaf descr { - config "false"; - type string; + leaf entryCount { + type uint32; + description "Dynamic entry count"; } - - // Application session flags - // Type is an MO-Defined-Type - leaf flags { + leaf stEntryCount { + type uint32; + description "Static Entry count"; + } + leaf querExpiry { config "false"; - description "Application Session Flags"; - - // Type is an MO-Defined-Type - type bfd_AppFlags; + type union { + type string; + type uint64; + } + description "Querier expiry time"; + } + leaf reportLl { + type boolean; + description "Report link local"; + } + leaf immediateLeave { + type boolean; + description "Fast leave"; } - // Application private data - // Type is an MO-Defined-Type - leaf data { - config "false"; - description "Application Private Data"; + // Allow v3 ASM + leaf allowv3Asm { - // Type is an MO-Defined-Type - type bfd_AppData; + type ipmc_Allowv3AsmType; + description "Allow v3 ASM"; } - leaf autoExpTime { - config "false"; - type string; + leaf suppressv3Gsq { + type boolean; + description "Suppress v3 GSQ"; } - } - - grouping hsrp_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This objects hold IP Multicast Group JoinType information + container jointype-items { + list JoinType-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mld_JoinType-group; + description "This object holds IP Multicast Group JoinType information list"; } + description "This object holds IP Multicast Group JoinType information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This object holds resource (router state) limit policy + // to limit amount of multicast routing state on the router + container limit-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mld_ResP-group; + description "Holds Resource policy to limit amount of multicast routing state on the router"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // This object holds mld reports policy state per Interface + container reppol-items { - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses mld_RepP-group; + description "This object holds mld reports policy state per Interface"; } - // This objects holds HSRP instance information. There is only one instance of HSRP supported currently - container inst-items { + // This object holds static mld reports policy state per Interface + container streppol-items { + list StRepP-list { + key "joinType"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package hsrp - uses hsrp_Inst-group; + uses mld_StRepP-group; + description "Holds Static MLD report policy list"; + } + description "Holds Static MLD report policy"; } - } - - grouping hsrp_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // This object holds querier information per interface + container querierp-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + uses mld_QuerierP-group; + description "Holds MLD querier information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping mld_JoinType-group { + description "This object holds IP Multicast Group JoinType information"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Join Type of the groups + leaf type { + + type ipmc_JoinType; + description "Join Type of the groups"; } - // This object holds interface information - container if-items { - list If-list { - key "id"; + // This objects hold IP Multicast Group version information + container ver-items { + list Version-list { + key "version"; - // Added containment: Prefix=if - // Acquired From Package hsrp - uses hsrp_If-group; + uses mld_Version-group; + description "This object holds IP Multicast Group version information list"; } + description "This object holds IP Multicast Group version information"; } } - grouping hsrp_If-group { + grouping mld_Version-group { + description "This object holds IP Multicast Group version information"; - // Hsrp version - // Type is an MO-Defined-Type + // MLD version leaf version { - description "Hsrp version"; - // Type is an MO-Defined-Type - type hsrp_HsrpVersion; + type ipmc_Ver; + description "Group version"; } - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds mld group configuration per Interface + container group-items { + list Group-list { + key "grp"; - // Type is an MO-Defined-Type - type hsrp_IfControl; + uses mld_Group-group; + description "MLD group information per interface list"; + } + description "MLD group information per interface"; } + } - // Use-Bia Scope - // Type is an MO-Defined-Type - leaf biaScope { - description "Use-Bia Scope"; + grouping mld_Group-group { + description "MLD group information per interface"; + leaf grp { + type address_Ip; + description "Route address name for choosing groups"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is used"; + } - // Type is an MO-Defined-Type - type hsrp_BiaScopeType; + // This object holds static mld source per group + container source-items { + list Source-list { + key "src"; + + uses mld_Source-group; + description "This object holds static mld source per group list"; + } + description "This object holds static mld source per group"; } - leaf isCreate { - config "false"; - type uint8; - default "0"; + } + + grouping mld_Source-group { + description "This object holds static mld source per group"; + leaf src { + type address_Ip; + description "Source IP address"; + } + leaf useStaticOif { + type boolean; + default "true"; + description "Indicates if Static Outgoing Interface is used"; } + } + + grouping mld_ResP-group { + description "Holds Resource policy to limit amount of multicast routing state on the router"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Maximum Multicast Entries + leaf max { - // Type is an MO-Defined-Type - type nw_IfId; + type mcast_NumEntries; + description "Maximum Multicast Entries"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Reserved Multicast Entries + leaf rsvd { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type mcast_NumEntries; + description "Reserved Multicast Entries"; } - container grp-items { - list Group-list { - key "id af"; - - // Added containment: Prefix=grp - // Acquired From Package hsrp - uses hsrp_Group-group; - } + leaf rtMap { + type string; + description "Reserved Entries Route Map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - container rtvrfMbr-items { - - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + grouping mld_RepP-group { + description "This object holds mld reports policy state per Interface"; + leaf rtMap { + type string; + description "Route Map"; } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + leaf pfxList { + type string; + description "Prefix List"; + } + leaf useAccessGrpCommand { + type boolean; + description "Flag to use access-group"; } } - grouping hsrp_Group-group { - - // HSRP Group ID - // Type is an MO-Defined-Type - leaf id { - description "Group Id"; - - // Type is an MO-Defined-Type - type hsrp_GroupId; + grouping mld_StRepP-group { + description "Holds Static MLD report policy"; + leaf rtMap { + type string; + description "Route Map"; } - - // HSRP Address Family - // Type is an MO-Defined-Type - leaf af { - description "Group Address Family"; - - // Type is an MO-Defined-Type - type hsrp_GroupAf; + leaf pfxList { + type string; + description "Prefix List"; } - leaf ip { - type address_Ip; + leaf useAccessGrpCommand { + type boolean; + description "Flag to use access-group"; } - // HSRP primary IP Obtain Mode - // Type is an MO-Defined-Type - leaf ipObtainMode { - description "IP Obtain Mode"; + // Join Type of the groups + leaf joinType { - // Type is an MO-Defined-Type - type hsrp_GrpIpObtainMode; + type ipmc_JoinType; + description "Join Type of Groups"; } + } - // Control Bits - // Type is an MO-Defined-Type - leaf ctrl { - description "Group control bits"; - - // Type is an MO-Defined-Type - type hsrp_GrpControl; - } + grouping mld_QuerierP-group { + description "Holds MLD querier information"; - // Minimum Preemption delay before this group can preempt a high priority Active - // Type is an MO-Defined-Type - leaf preemptDelayMin { - description "Miminum delay before preempt"; + leaf name { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Preemption delay after a switch reboot before this group can preempt a High priority Active - // Type is an MO-Defined-Type - leaf preemptDelayReload { - description "Preempt delay after a switch reload"; + leaf descr { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type naming_Descr; + description "Description of the specified attribute"; } - // Maximum number of seconds to allow IP redundancy clients to prevent preemption @@@ Dont expose thi to user - // Type is an MO-Defined-Type - leaf preemptDelaySync { - description "Wait for IP redundancy clients"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type hsrp_PreemptDelay; + type mcast_QuerierIp; + description "Address"; } - // HSRP Hello packet interval - // Type is an MO-Defined-Type - leaf helloIntvl { - description "Hello Interval"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type hsrp_HelloIntvl; + type mcast_QueryIntvl; + description "Query Interval"; } - // HSRP Hold interval - // Type is an MO-Defined-Type - leaf holdIntvl { - description "Hold Interval"; + // Query response interval + leaf rspIntvl { - // Type is an MO-Defined-Type - type hsrp_HoldIntvl; + type mcast_QueryRspIntvl; + description "Response Interval of Querier"; } - // Grouph Priority - // Type is an MO-Defined-Type - leaf prio { - description "Group Priority"; + // Robustness factor + leaf robustFac { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_RobustFactor; + description "Robustness Factor"; } - // forwarding lower threshold - // Type is an MO-Defined-Type - leaf fwdLwrThrld { - description "Fowarding Lower Threshold"; + // Startup query interval + leaf startQueryIntvl { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // forwarding upper threshold - // Type is an MO-Defined-Type - leaf fwdUprThrld { - description "Forwarding Upper Threshold"; + // Startup query count + leaf startQueryCnt { - // Type is an MO-Defined-Type - type hsrp_GrpPrio; + type mcast_QueryCnt; + description "Startup Query Count"; } - // HSRP master name for the group - // Type is an MO-Defined-Type - leaf name { - description "Master name string"; + // Querier timeout + leaf querierTimeout { - // Type is an MO-Defined-Type - type hsrp_GrpName; + type mcast_QuerierTimeout; + description "Querier Timeout"; } - // HSRP Slave/follow config the group - // Type is an MO-Defined-Type - leaf follow { - description "Master name string to follow"; + // Last member query count + leaf lastMbrCnt { - // Type is an MO-Defined-Type - type hsrp_GrpName; + type mcast_LastMbrQueryCnt; + description "Last Member Query Count"; } - // HSRP authentication type for the group - // Type is an MO-Defined-Type - leaf type { - description "Authentication Type for the group"; + // Last member response time + leaf lastMbrRespTime { - // Type is an MO-Defined-Type - type hsrp_AuthT; + type mcast_LastMbrRespTime; + description "Last Member Response Time"; } + } - // HSRP authentication key for the group - // Type is an MO-Defined-Type - leaf key { - description "Authentication key for the group"; + grouping mld_SsmXlate-group { + description "Holds Source Specific Multicast (SSM) translation information"; - // Type is an MO-Defined-Type - type hsrp_AuthKey; + // Group IP Prefix address + leaf grpPfx { + + type mcast_GrpIp; + description "Address"; } - leaf mac { - type address_Mac; + leaf srcAddr { + type address_Ip; + description "Address"; } + } - // Class for HSRP secondary vips - container addr-items { - list Addr-list { - key "ip"; + grouping mld_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Added containment: Prefix=addr - // Acquired From Package hsrp - uses hsrp_Addr-group; - } + leaf type { + + type mld_EhType; + description "Configures type of event history"; } - } - grouping hsrp_Addr-group { - leaf ip { - type address_Ip; + leaf size { + + type mld_Size; + description "Configures buffer size in text per kb"; } } - grouping icmpv4_Entity-group { + grouping mldsnoop_Entity-group { + description "Holds MLD Snooping Entity Information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per icmpv4 instance information. There is - // only one instance of icmpv4 running in the system today + // This objects hold per mld instance information. There is only + // one instance of mld running in the system today container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package icmpv4 - uses icmpv4_Inst-group; + uses mldsnoop_Inst-group; + description "Holds MLD Snooping Instance information"; } } - grouping icmpv4_Inst-group { + grouping mldsnoop_Inst-group { + description "Holds MLD Snooping Instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // This objects hold per icmpv4 layer3 domain (vrf) - // information + // All router multicast group address (GIPo), outer multicast + // encapsulation ip address + leaf allRtrMcastEncap { + config "false"; + + type mcast_GrpIp; + description "All Router Multicast Encapsulation"; + } + + // Flags + leaf flags { + config "false"; + + type ipmcsnoop_InstFlags; + description "Flags"; + } + + // This objects hold per mld domain information container dom-items { - list Dom-list { - key "name"; - // Added containment: Prefix=dom - // Acquired From Package icmpv4 - uses icmpv4_Dom-group; - } + uses mldsnoop_Dom-group; + description "Holds MLD Snooping Domain information"; + } + + // This objects hold per Instance statistics operational + // information. This is a singleton within Instance + container inststats-items { + + uses mldsnoop_InstStats-group; + description "Instance Statistics"; } } - grouping icmpv4_Dom-group { + grouping mldsnoop_Dom-group { + description "Holds MLD Snooping Domain information"; + leaf operCfgRecovery { + config "false"; + type boolean; + description "Running configuration recovery"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "IP Multicast snooping domain name"; } - // This object holds icmp information that is operated at a - // interface level - container if-items { - list If-list { + // Id for this domain @@@ This comes from the domain id assigned by the + // PE for the bridge domain + leaf id { + config "false"; + + type l2_DomId; + description "Operational domain identifier"; + } + leaf encap { + type string; + description "L2 Domain Fabric Encapsulation"; + } + + // Admin State + leaf adminSt { + config "false"; + + type nw_AdminSt; + description "Administrative State"; + } + + // Controls + leaf ctrl { + + type ipmcsnoop_DomControl; + description "Controls for IP milticast domains"; + } + + // IGMP database + container db-items { + list Db-list { + config "false"; + key "type"; + + uses mldsnoop_Db-group; + description "Database list"; + } + description "Database"; + } + + // This objects hold per mld domain statistics operational + // information. This is a singleton within a Dom + container domstats-items { + + uses mldsnoop_DomStats-group; + description "Domain Statistics"; + } + + // Multicast router if that is configured statically + container strtrif-items { + list StRtrIf-list { + config "false"; key "id"; - // Added containment: Prefix=if - // Acquired From Package icmpv4 - uses icmpv4_If-group; + uses mldsnoop_StRtrIf-group; + description "MLD Static Router Interface list"; } + description "MLD Static Router Interface"; } - } - grouping icmpv4_If-group { + // Multicast router if @@@ Mulitcast router if in the BD. These can be either + // configured by the admin or discovered through protocols + // like PIM, IGMP, MLD + container rtrif-items { + list RtrIf-list { + config "false"; + key "id"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses mldsnoop_RtrIf-group; + description "Router Interface list"; + } + description "Router Interface"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // This objects is the parent for vlan config mode params + container vlan-items { + list Vlan-list { + key "vlanid"; + + uses mldsnoop_Vlan-group; + description "Holds MLD snooping vlan configurations list"; } + description "Holds MLD snooping vlan configurations"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses mldsnoop_Intf-group; + description "Holds MLD snooping Interface configurations list"; + } + description "Holds MLD snooping Interface configurations"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // This objects holds configurable params in + // bridge domain config mode + container bd-items { + list BD-list { + key "bdid"; - // Type is an MO-Defined-Type - type nw_IfId; + uses mldsnoop_BD-group; + description "Holds MLD Snooping Bridge Domain Configurations list"; + } + description "Holds MLD Snooping Bridge Domain Configurations"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // This objects holds configurable params in global config mode + container gl-items { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + uses mldsnoop_Gl-group; + description "Holds MLD Snooping Configurations in Global Configuration Mode"; } + } - // Interface controls - // Inherited From icmp:If - // Modified by Override: icmpv4:If->ctrl - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf ctrl { - description "Controls"; + grouping mldsnoop_Db-group { + description "Database"; - // Type is a Local-MO-Defined-Type - type icmp_IfControl_If_ctrl; + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - container rtvrfMbr-items { + // Type of the repository + leaf type { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type ipmcsnoop_DbT; + description "Database Type identifying the oper data to display"; + } + leaf totalMacCount { + config "false"; + type uint32; + description "Total mac count"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { + // Multicast Group records + container mcgrp-items { + list McGrpRec-list { config "false"; - key "tDn"; + key "addr"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses mldsnoop_McGrpRec-group; + description "Multicast Group Record list"; } + description "Multicast Group Record"; } } - grouping icmpv6_Entity-group { + grouping mldsnoop_McGrpRec-group { + description "Multicast Group Record"; + + leaf mldVersion { + config "false"; + + type mld_Ver; + description "Mld snooping version"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Group address + leaf addr { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_GrpIp; + description "Multicast Group Address"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // EPG entries in mcast group record + container epg-items { + list EpgRec-list { + config "false"; + key "fabEncap"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses mldsnoop_EpgRec-group; + description "Endpoint Group Record list"; + } + description "Endpoint Group Record"; } - // This objects hold per icmpv6 instance information. There is - // only one instance of icmpv6 running in the system today - container inst-items { + // MLD report record snooped by mld-snoop application + container rep-items { + list ReportRec-list { + config "false"; + key "mcastSrc mldVersion"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package icmpv6 - uses icmpv6_Inst-group; + uses mldsnoop_ReportRec-group; + description "Report Record list"; + } + description "Report Record"; } } - grouping icmpv6_Inst-group { + grouping mldsnoop_EpgRec-group { + description "Endpoint Group Record"; - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf name { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type icmpv6_OperSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf fabEncap { + config "false"; + type string; + description "Fabric Encapsulation"; } - // Adjacency stale timer - // Type is an MO-Defined-Type - leaf adjStaleTimer { - description "Adjacency stale timer"; + // Epg id, identified using the circuit endpoint + // id in the system + leaf id { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_AdjStaleTimer; + type l2_DomId; + description "Endpoint Group ID"; } - // Adjacency stale timer with icmp option - // Type is an MO-Defined-Type - leaf adjStaleTimerIcmp { - description "Ipv6 adjacency stale timer with ICMP option"; + // MLD report record snooped by mld-snoop application + container rep-items { + list ReportRec-list { + config "false"; + key "mcastSrc mldVersion"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mldsnoop_ReportRec-group; + description "Report Record list"; + } + description "Report Record"; } + } - // ICMPv6 Logging Level - // Type is an MO-Defined-Type - leaf loggingLevel { - description "Logging Level"; + grouping mldsnoop_ReportRec-group { + description "Report Record"; + + leaf mldVersion { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_LoggingLevel; + type mld_Ver; + description "Mld snooping version"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Multicast traffic source + leaf mcastSrc { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type ipmcsnoop_McastSrc; + description "Multicast Source Address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Filter mode + leaf filtMode { + config "false"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + type mcast_FiltMode; + description "Filter Mode"; } - // This object holds icmpv6 information that is operated at a - // interface level - container if-items { - list If-list { + // Filter mode + leaf flags { + config "false"; + + type ipmcsnoop_RepFlags; + description "Flags"; + } + + // OIF list (outgoing interface list) + container oif-items { + list OIFRec-list { + config "false"; key "id"; - // Added containment: Prefix=if - // Acquired From Package icmpv6 - uses icmpv6_If-group; + uses mldsnoop_OIFRec-group; + description "OIF Record list"; } + description "OIF Record"; } - container logs-items { - list ICMPv6EventLogs-list { - key "eventType"; + } + + grouping mldsnoop_OIFRec-group { + description "OIF Record"; + + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Multicast traffic source + leaf id { + config "false"; - // Added containment: Prefix=logs - // Acquired From Package icmpv6 - uses icmpv6_ICMPv6EventLogs-group; - } + type nw_IfId; + description "ID"; } - // Interface statistics icmpv6 common packet counters (global and per-i/f) - container ifstats-items { + // Host Record List (Used for Explicit Host Tracking) + container host-items { + list HostRec-list { + config "false"; + key "addr"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package icmpv6 - uses icmpv6_IfStats-group; + uses mldsnoop_HostRec-group; + description "Host Record list"; + } + description "Host Record"; } } - grouping icmpv6_If-group { + grouping mldsnoop_HostRec-group { + description "Host Record"; - // Interface controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type icmpv6_IfControl; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + leaf addr { + config "false"; + type address_Ip; + description "Host Address"; } + } + + grouping mldsnoop_DomStats-group { + description "Domain Statistics"; + } + + grouping mldsnoop_StRtrIf-group { + description "MLD Static Router Interface"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; + config "false"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; + config "false"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; + config "false"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } - - // Interface statistics icmpv6 common packet counters (global and per-i/f) - container ifstats-items { - - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package icmpv6 - uses icmpv6_IfStats-group; + leaf encap { + config "false"; + type string; + description "Enable Encapsulation when flooding packets"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } - grouping icmpv6_IfStats-group { + grouping mldsnoop_RtrIf-group { + description "Router Interface"; - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { + // Identifier for the if + leaf id { config "false"; - description "Total messages sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Router interface identifier"; } + } - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { - config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; - } + grouping mldsnoop_Vlan-group { + description "Holds MLD snooping vlan configurations"; - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { - config "false"; - description "Error messages sent"; + leaf vlanid { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Vlan ID for MLD Snooping Configuration"; } - - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { - config "false"; - description "Error messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf rprtFldAllIntf { + type boolean; + description "Enable Report-Flood on all Active Interfaces of VLAN"; } - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { - config "false"; - description "Interface Down Drop Count sent"; + leaf mldSnoop { - // Type is an MO-Defined-Type - type nw_Counter64; + type mldsnoop_MldSnoopVlan; + description "Enable/Disable MLD Snooping per Vlan"; } - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { - config "false"; - description "Interface Down Drop Count received"; + // Circuit endpoint representing EPG + container cktep-items { + list CktEp-list { + key "encap"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_CktEp-group; + description "Represents Endpoint Encapsulation for a circuit list"; + } + description "Represents Endpoint Encapsulation for a circuit"; } - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { - config "false"; - description "Adjacency not recovered from AM after HA"; + // Multicast Snoop Configured statically + container mcgrp-items { + list StMcGrp-list { + key "addr"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_StMcGrp-group; + description "Holds Static IP Multicast Group Information list"; + } + description "Holds Static IP Multicast Group Information"; } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { - config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; + // This objects is the parent for Interface config mode params + container intf-items { + list Intf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_Intf-group; + description "Holds MLD snooping Interface configurations list"; + } + description "Holds MLD snooping Interface configurations"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { - config "false"; - description "Pkts dropped as source mac addr is own"; + container mldsnbase-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MldsnBase-group; + description "Holds MLD Snooping Parameters for all Configuration Modes"; } - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { - config "false"; - description "Pkts dropped as tgt ip addr is not own"; + // This objects holds MLD snooping timers for vlan + container gtimers-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_GTimers-group; + description "Holds Global MLD Snooping Timers"; } - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { - config "false"; - description "Pkts dropped as src ip addr is not own"; + // This objects holds multicast mac address table params + container mactable-items { + list MacTable-list { + key "macAddress"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MacTable-group; + description "Holds MLD Snooping Mac-Address Table Configurations list"; + } + description "Holds MLD Snooping Mac-Address Table Configurations"; } - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { - config "false"; - description "Destination Unreachables sent"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MRouter-group; + description "Holds MLD Snooping Static Multicast Router Configurations"; } - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { - config "false"; - description "Destination Unreachables received"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_Proxy-group; + description "Holds MLD Snooping Proxy Configurations"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { - config "false"; - description "Administratively Prohibited sent"; + // Querier policy + container querierp-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_QuerierP-group; + description "Holds MLD Snooping Querier Policy Configurations"; } - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { - config "false"; - description "Administratively Prohibited received"; + // Route control policy for mld multicast snoop. + container actrl-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_ACtrl-group; + description "Holds MLD Snooping Access Control Policy Configurations"; } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + // Report policy for mld multicast snoop + container rpolicy-items { + list RPolicy-list { + key "rtMap"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_RPolicy-group; + description "Holds MLD Snooping Report Policy Configurations list"; + } + description "Holds MLD Snooping Report Policy Configurations"; } + } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_CktEp-group { + description "Represents Endpoint Encapsulation for a circuit"; + leaf encap { + type string; + description "Fabric Encapsulation"; } + } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { - config "false"; - description "Parameter Problems sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; - } + grouping mldsnoop_StMcGrp-group { + description "Holds Static IP Multicast Group Information"; - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { - config "false"; - description "Parameter Problems received"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // Multicast group address + leaf addr { - // Type is an MO-Defined-Type - type nw_Counter64; + type mcast_GrpIp; + description "Multicast Group IP Address"; } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; + // IPMC Source IP + container src-items { + list McSrc-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_McSrc-group; + description "Holds MLD Snooping Source Specific Information list"; + } + description "Holds MLD Snooping Source Specific Information"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + grouping mldsnoop_McSrc-group { + description "Holds MLD Snooping Source Specific Information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Multicast traffic source + leaf id { + + type ipmcsnoop_McastSrc; + description "Multicast Source IP Address"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { - config "false"; - description "Redirects sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { - config "false"; - description "Redirects received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_TgtIf-group { + description "Holds Outgoing Interface Information"; + leaf vsi { + type boolean; + description "Specifies if this interface is VSI"; + } + leaf accGrp { + type boolean; + description "Specifies if this interface is Access group"; + } + leaf pfxList { + type boolean; + description "Specifies prefix list route map for this interface"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Target interface Id + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Multicast Source IP Address"; } + } - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + grouping mldsnoop_Intf-group { + description "Holds MLD snooping Interface configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { - config "false"; - description "Router Advertisements sent"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr1024; + description "Description"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { - config "false"; - description "Router Solicitations sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfAdminSt; + description "Admin State"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { - config "false"; - description "Router Solicitations received"; + leaf rtrGrdVlanId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_RtrGrdVlanIdT; + description "Router-Guard Vlan Identifier"; + } + leaf rtrGrdEnable { + type boolean; + description "Indicates if Router-Guard is Enabled on the Interface"; + } + leaf reportFlood { + type boolean; + description "Indicates if Report Flood is Enabled on the Interface"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + grouping mldsnoop_MldsnBase-group { + description "Holds MLD Snooping Parameters for all Configuration Modes"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf v2ReportSuppr { + + type mldsnoop_V2ReportSuppr; + description "MLDv2 Report Suppression and Proxy Reporting"; } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + leaf llGrpSuppr { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_LlGrpSuppr; + description "Link Local Group Suppression"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + leaf reportSuppr { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_ReportSuppr; + description "IGMPv1/v2 report Suppression for VLAN"; } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + leaf expTracking { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_ExpTracking; + description "Configures Explicit Host for a VLAN"; } + } - // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpthRcvd { - config "false"; - description "Fastpath Packets"; + grouping mldsnoop_GTimers-group { + description "Holds Global MLD Snooping Timers"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf fastLeave { + + type ipmcsnoop_FastLeave; + description "Indicates if Fastleave is Enabled"; } - // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathDsbleIgnRcvd { - config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; + // Group timeout + // Default value handled in local MO type + leaf grpTimeout { - // Type is an MO-Defined-Type - type nw_Counter64; + // Type is a Local-MO-Defined-Type + type mcast_GrpTimeout_GTimers_grpTimeout { + range "0..10081"; + } + description "Group Membership Timeout"; } - // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathOtherIgnRcvd { - config "false"; - description "Ignored fastpath packets - others"; + leaf maxGqMiss { - // Type is an MO-Defined-Type - type nw_Counter64; + type ipmcsnoop_MaxGqMiss; + description "Maximum General Query Miss Count"; } + leaf useGrpAddr { + type boolean; + description "Use Group IP Address for Proxy-Leave"; + } + } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesSent { - config "false"; - description "V1 queries sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_MacTable-group { + description "Holds MLD Snooping Mac-Address Table Configurations"; + leaf macAddress { + type address_Mac; + description "Specify MAC Address for a VLAN/BD"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesRecv { - config "false"; - description "V1 queries received"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesSent { - config "false"; - description "V2 queries sent"; + uses mldsnoop_MIf-group; + description "Holds MLD Snooping Multicast Router's Interface Configurations list"; + } + description "Holds MLD Snooping Multicast Router's Interface Configurations"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping mldsnoop_MIf-group { + description "Holds MLD Snooping Multicast Router's Interface Configurations"; + leaf intf { + type string; + description "Interface for Static-Mrouter"; + } + leaf vsi { + type boolean; + description "Specify Interface is VSI"; } + } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesRecv { - config "false"; - description "V2 queries received"; + grouping mldsnoop_MRouter-group { + description "Holds MLD Snooping Static Multicast Router Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Global property + leaf vpcPeerLink { + + type ipmcsnoop_Vpc; + description "Specify vpc-peer-link as Static Mrouter for all VLAN/BD"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsSent { - config "false"; - description "V1 reports sent"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + container mif-items { + list MIf-list { + key "intf"; - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsRecv { - config "false"; - description "V1 reports received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + uses mldsnoop_MIf-group; + description "Holds MLD Snooping Multicast Router's Interface Configurations list"; + } + description "Holds MLD Snooping Multicast Router's Interface Configurations"; } + } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsSent { - config "false"; - description "V2 reports sent"; + grouping mldsnoop_Proxy-group { + description "Holds MLD Snooping Proxy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf maxRespTime { + + type ipmcsnoop_Mrt; + description "Configures MRT for Switch's Proxy General-Queries"; } + } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsRecv { - config "false"; - description "V2 reports received"; + grouping mldsnoop_QuerierP-group { + description "Holds MLD Snooping Querier Policy Configurations"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf mldsnVer { + + type mldsnoop_Ver; + description "MLD snooping version"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesSent { - config "false"; - description "V1 leaves sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesRecv { - config "false"; - description "V1 leaves received"; + leaf descr { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Descr; + description "Description of the specified attribute"; } - } - - grouping icmpv6_ICMPv6EventLogs-group { - // Type of Event - // Type is an MO-Defined-Type - leaf eventType { - description "Event Log Type"; + // Querier IP address + leaf addr { - // Type is an MO-Defined-Type - type icmpv6_EventType; + type mcast_QuerierIp; + description "Address"; } - // Type of Event LogSize - // Type is an MO-Defined-Type - leaf logSize { - description "Event Log Size"; + // Query interval + leaf queryIntvl { - // Type is an MO-Defined-Type - type icmpv6_EventLogSize; + type mcast_QueryIntvl; + description "Query Interval"; } - } - - grouping igmpsnoop_Entity-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Query response interval + leaf rspIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type mcast_QueryRspIntvl { + range "1..25"; } + description "Response Interval of Querier"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Robustness factor + leaf robustFac { - // Type is an MO-Defined-Type - type nw_AdminSt; + type mcast_RobustFactor; + description "Robustness Factor"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Startup query interval + leaf startQueryIntvl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type mcast_StartQueryIntvl; + description "Startup Query Interval"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Startup query count + leaf startQueryCnt { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type mcast_QueryCnt; + description "Startup Query Count"; } - // This objects hold per igmp instance information. There is only - // one instance of igmp running in the system today - container inst-items { + // Last member query interval + leaf lastMbrIntvl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package igmpsnoop - uses igmpsnoop_Inst-group; + type mcast_LastMbrQueryIntvl; + description "Last Member Query Interval"; + } + + // Querier timeout + leaf timeout { + + type mcast_QuerierTimeout; + description "Configures Querier Timeout"; } } - grouping igmpsnoop_Inst-group { + grouping mldsnoop_ACtrl-group { + description "Holds MLD Snooping Access Control Policy Configurations"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type rtctrl_RtCtrlDir; + description "Direction"; } - - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + leaf rtMap { + type string; + description "Route Map"; } - // All router multicast group address (GIPo), outer multicast - // encapsulation ip address - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf allRtrMcastEncap { - config "false"; - description "All Router Multicast Encapsulation"; + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } + } - // Flags - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; - - // Type is an MO-Defined-Type - type ipmcsnoop_InstFlags; - } + grouping mldsnoop_RPolicy-group { + description "Holds MLD Snooping Report Policy Configurations"; - // This objects hold per igmp domain information - container dom-items { + // Route map name to control the distribution + leaf rtMap { - // Added containment as a singleton: Prefix=dom - // Acquired From Package igmpsnoop - uses igmpsnoop_Dom-group; + type mldsnoop_RtMapType; + description "Route Map Name to control the distribution"; } - // This objects hold per Instance statistics operational - // information. This is a singleton within Instance - container inststats-items { + // Target Interface (outgoing interface list) + container if-items { + list TgtIf-list { + key "id"; - // Added containment as a singleton: Prefix=inststats - // Acquired From Package igmpsnoop - uses igmpsnoop_InstStats-group; + uses mldsnoop_TgtIf-group; + description "Holds Outgoing Interface Information list"; + } + description "Holds Outgoing Interface Information"; } } - grouping igmpsnoop_Dom-group { - leaf operCfgRecovery { - config "false"; - type boolean; + grouping mldsnoop_BD-group { + description "Holds MLD Snooping Bridge Domain Configurations"; + + leaf bdid { + + type nw_IfId; + description "Bridge Domain Identifier"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ipmcsnoop:Dom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping mldsnoop_Gl-group { + description "Holds MLD Snooping Configurations in Global Configuration Mode"; + container eventhist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mldsnoop_EventHistory-group; + description "Holds MLD Snooping Event-History Buffer Configurations list"; } + description "Holds MLD Snooping Event-History Buffer Configurations"; } - // Id for this domain @@@ This comes from the domain id assigned by the - // PE for the bridge domain - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + container rtrgrd-items { - // Type is an MO-Defined-Type - type l2_DomId; - } - leaf encap { - type string; + uses mldsnoop_RtrGrd-group; + description "Holds Router Guard Configuration for all switchports or specific vlan"; } - // Admin State - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container mldsnbase-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses mldsnoop_MldsnBase-group; + description "Holds MLD Snooping Parameters for all Configuration Modes"; } - // Controls - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This objects holds traffic related snooping params + container mctraf-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; + uses mldsnoop_McTraf-group; + description "Holds MLD Snooping Multicast Traffic Configurations"; } - // Flags - // Inherited From ipmcsnoop:Dom - // Modified by Override: igmpsnoop:Dom->flags - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // This objects holds MLD snooping timers for vlan + container gtimers-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + uses mldsnoop_GTimers-group; + description "Holds Global MLD Snooping Timers"; } - // Forwarding mode - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf fwdMode { - config "false"; - description "Fowarding Mode"; + // This objects holds vlan specific MLD snooping params + container gvlan-items { - // Type is an MO-Defined-Type - type ipmcsnoop_FwdMode; + uses mldsnoop_GVlan-group; + description "Holds MLD Snooping Vlan Specific Configurations"; } - // Number of router interfaces - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numRtrIf { - config "false"; - description "Router Interfaces"; + // This Object holds global debug + container gdebug-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mldsnoop_GDebug-group; + description "Holds MLD Snooping Debugs Enabling Configuration"; } - // Number of multicast groups - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numMcGrp { - config "false"; - description "Multicast Groups"; + // This objects holds multicast router snoop params + container mrouter-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mldsnoop_MRouter-group; + description "Holds MLD Snooping Static Multicast Router Configurations"; } - // Number of Source groups - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf numSrcGrp { - config "false"; - description "Multicast Groups"; + // This objects holds multicast proxy snoop params + container proxy-items { - // Type is an MO-Defined-Type - type nw_Counter32; - } - leaf grpFlushTs { - config "false"; - type string; - } - leaf nextQueryTs { - config "false"; - type string; - } - leaf nextQueryExpTs { - config "false"; - type string; + uses mldsnoop_Proxy-group; + description "Holds MLD Snooping Proxy Configurations"; } + } - // Mrtr Epg Id used when sending packets to mrtr port - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf mrtrEpgId { - config "false"; - description "Mrouter Endpoint Group ID"; + grouping mldsnoop_EventHistory-group { + description "Holds MLD Snooping Event-History Buffer Configurations"; - // Type is an MO-Defined-Type - type l2_DomId; + leaf type { + + type mldsnoop_EhType; + description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; } - // IGMP database - container db-items { - list Db-list { - config "false"; - key "type"; + leaf size { - // Added containment: Prefix=db - // Acquired From Package igmpsnoop - uses igmpsnoop_Db-group; - } + type mldsnoop_Size; + description "configures buffer size in text/kb"; } + } - // This objects hold per igmp domain statistics operational - // information. This is a singleton within a Dom - container domstats-items { - - // Added containment as a singleton: Prefix=domstats - // Acquired From Package igmpsnoop - uses igmpsnoop_DomStats-group; + grouping mldsnoop_RtrGrd-group { + description "Holds Router Guard Configuration for all switchports or specific vlan"; + leaf state { + type boolean; + description "Configures Router Guard for Multicast packets on all switchports"; } + } - // Multicast router if that is configured statically - container strtrif-items { - list StRtrIf-list { - config "false"; - key "id"; + grouping mldsnoop_McTraf-group { + description "Holds MLD Snooping Multicast Traffic Configurations"; - // Added containment: Prefix=strtrif - // Acquired From Package igmpsnoop - uses igmpsnoop_StRtrIf-group; - } + leaf holddownTimer { + + type mcast_HolddownTimer; + description "Configures Initial Holddown Period After Switchover/Restart"; } - // Multicast router if @@@ Mulitcast router if in the BD. These can be either - // configured by the admin or discovered through protocols - // like PIM, IGMP. - container rtrif-items { - list RtrIf-list { - config "false"; - key "id"; + leaf ccMode { - // Added containment: Prefix=rtrif - // Acquired From Package igmpsnoop - uses igmpsnoop_RtrIf-group; - } + type ipmcsnoop_CcMode; + description "Enter MFDM Congestion Control Mode"; } + } - // This objects is the parent for vlan config mode params - container vlan-items { - list Vlan-list { - key "vlanid"; + grouping mldsnoop_GVlan-group { + description "Holds MLD Snooping Vlan Specific Configurations"; - // Added containment: Prefix=vlan - // Acquired From Package igmpsnoop - uses igmpsnoop_Vlan-group; - } + leaf mldSnoop { + + type mldsnoop_MldSnoopGl; + description "Enable/Disable MLD Snooping globally"; } - // This objects holds configurable params in bridge domain config mode - container bd-items { - list BD-list { - key "bdid"; + leaf disableNveStRtrPort { - // Added containment: Prefix=bd - // Acquired From Package igmpsnoop - uses igmpsnoop_BD-group; - } + type ipmcsnoop_DisableNveStRtrPort; + description "Disable NVE Static Router Port"; } - // This objects holds configurable params in global config mode - container gl-items { + leaf vxlanUmcDropVlan { - // Added containment as a singleton: Prefix=gl - // Acquired From Package igmpsnoop - uses igmpsnoop_Gl-group; + type ipmcsnoop_VxlanVlanRange; + description "Drop Unknown Multicast Traffic on Vlan(s)"; } } - grouping igmpsnoop_Db-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + grouping mldsnoop_GDebug-group { + description "Holds MLD Snooping Debugs Enabling Configuration"; - // Type of the repository - // Inherited From ipmcsnoop:Db - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Database Type"; + leaf syslogThreshold { - // Type is an MO-Defined-Type - type ipmcsnoop_DbT; - } - leaf totalMacCount { - config "false"; - type uint32; + type ipmcsnoop_SyslogThrshold; + description "IGMP Snooping Syslog Threshold Percentage"; } + } - // igmpsnoop global records - container gsnoop-items { + grouping mldsnoop_InstStats-group { + description "Instance Statistics"; + } - // Added containment as a singleton: Prefix=gsnoop - // Acquired From Package igmpsnoop - uses igmpsnoop_GSnoopRec-group; - } + grouping mplsldp_LDP-group { + description "MPLS LDP Entity, anchoring all LDP specific MOs"; - // igmpsnoop Vlan records - container vsnoop-items { - list VSnoopRec-list { - config "false"; - key "vlanid"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=vsnoop - // Acquired From Package igmpsnoop - uses igmpsnoop_VSnoopRec-group; - } + type nw_AdminSt; + description "Admin State"; } - // Vlan record - container vlanrec-items { - list VlanRec-list { - config "false"; - key "vlanid"; + // Platform wide LDP state + container ldpbindings-items { - // Added containment: Prefix=vlanrec - // Acquired From Package igmpsnoop - uses igmpsnoop_VlanRec-group; - } + uses mplsldp_LdpBindings-group; + description "Global LDP binding state"; } - // Mrouter record - container mrouter-items { - list MRouterRec-list { - config "false"; - key "vlanid interface"; + // Neibgbor discovery operational state + container discovery_state-items { - // Added containment: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouterRec-group; - } + uses mplsldp_DiscoveryState-group; + description "Neibgbor discovery operational state"; } - // Explicit Tracking record - container expTrack-items { - list ExpTrackRec-list { - config "false"; - key "vlanid grpAddr srcAddr intf"; + // Platform wide LDP state + container global-items { - // Added containment: Prefix=expTrack - // Acquired From Package igmpsnoop - uses igmpsnoop_ExpTrackRec-group; - } + uses mplsldp_Global-group; + description "Platform wide LDP configuration and state"; } - // Vlan statistics MO - container vstats-items { - list VlanStatsRec-list { - config "false"; - key "vlanid"; + // Contains LDP IGP synchronization information + container igp_sync-items { - // Added containment: Prefix=vstats - // Acquired From Package igmpsnoop - uses igmpsnoop_VlanStatsRec-group; - } + uses mplsldp_IgpSync-group; + description "IGP Synchronization Information"; } - container gstats-items { + // LDP Label Advertisements + container advlbl-items { - // Added containment as a singleton: Prefix=gstats - // Acquired From Package igmpsnoop - uses igmpsnoop_GStatsRec-group; + uses mplsldp_AdvLbl-group; + description "Control if labels are advertised. When this MO exists, labels are advertised (the default). When this MO does not exist, no labels will be advertised to neighbors."; } - // Report policy MO - container policy-items { - list ReportPolicyStats-list { - config "false"; - key "vlanid qcount"; + // LDP Label Advertisements for prefix list + container advlblpfx-items { + list AdvLblPfx-list { + key "pfxList"; - // Added containment: Prefix=policy - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportPolicyStats-group; + uses mplsldp_AdvLblPfx-group; + description "Advertises local labels for some destination prefixes list"; } + description "Advertises local labels for some destination prefixes"; } - // Group MO - container group-items { - list IgmpsnGroupRec-list { - config "false"; - key "vlanid groupaddr sourceaddr ifname"; + // LDP Label Advertisements interface + container advlblintf-items { + list AdvLblIntf-list { + key "interface"; - // Added containment: Prefix=group - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnGroupRec-group; + uses mplsldp_AdvLblIntf-group; + description "Advertises local labels for a particular interface list"; } + description "Advertises local labels for a particular interface"; } - // Multicast Group records - container mcgrp-items { - list McGrpRec-list { - config "false"; - key "addr"; + // LDP Session backoff parameters + container backoffparams-items { - // Added containment: Prefix=mcgrp - // Acquired From Package igmpsnoop - uses igmpsnoop_McGrpRec-group; - } + uses mplsldp_BackoffParams-group; + description "LDP Session backoff parameters"; } - // Multicast Group records - container querier-items { - list QuerierRec-list { - config "false"; - key "vlanid"; + // LDP Discovery + container discovery-items { - // Added containment: Prefix=querier - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierRec-group; - } + uses mplsldp_Discovery-group; + description "Anchors configuration related to LDP neighbor discovery"; } - } - - grouping igmpsnoop_GSnoopRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // LDP Explicit Null + container explicitnull-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf snooping { - config "false"; - type boolean; - } - leaf omf { - config "false"; - type boolean; - } - leaf grepsup { - config "false"; - type boolean; - } - leaf gv3repsup { - config "false"; - type boolean; - } - leaf glinklocalgrpsup { - config "false"; - type boolean; - } - leaf groupTimeout { - config "false"; - type uint32; - } - leaf proxyGeneralQuery { - config "false"; - type boolean; - } - leaf gmaxResponseTime { - config "false"; - type uint32; + uses mplsldp_ExplicitNull-group; + description "LDP Explicit Null advertises an explicit-null label in situations where an implicit-null label would normally be advertised"; } - } - - grouping igmpsnoop_VSnoopRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // LDP Explicit Null for prefix list + container explnullforlist-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf lkpmode { - config "false"; - type string; - } - leaf snoopOn { - config "false"; - type boolean; - } - leaf repsup { - config "false"; - type boolean; - } - leaf v3repsup { - config "false"; - type boolean; - } - leaf vlinklocalgrpsup { - config "false"; - type boolean; - } - leaf omf_enabled { - config "false"; - type boolean; + uses mplsldp_ExplNullForList-group; + description "Controls which label bindings will be advertised as explicit-null rather than inplicit-null"; } - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Explicit Null to access list + container explnulltolist-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_ExplNullToList-group; + description "Controls to which neighbors label bindings will be advertised as explicit-null rather than implicit-null"; } - // Last member query interval - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + // LDP Graceful restart + container gr-items { - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + uses mplsldp_Gr-group; + description "LDP Graceful restart parameters"; } - // Querier version - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // LDP session holdtime + container holdtime-items { - // Type is an MO-Defined-Type - type mcast_Ver; + uses mplsldp_HoldTime-group; + description "LDP session holdtime parameters"; } - // Querier IP address - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; + // LDP logging neighbor, password, rollover changes + container logging-items { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + uses mplsldp_Logging-group; + description "LDP logging parameters"; } - // Query interval - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf queryIntvl { - config "false"; - description "Query Interval"; + // LDP default route + container defaultroute-items { - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + uses mplsldp_DefaultRoute-group; + description "Allow MPLS forwarding for ip default route"; } - // Robustness factor - // Inherited From ipmcsnoop:AVSnoopRec - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; + // LDP neighbor Parameters + container neighbor-items { + list Neighbor-list { + key "nbrAddr"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; - } - leaf routePortcnt { - config "false"; - type uint32; - } - leaf groupcnt { - config "false"; - type uint32; - } - leaf vpcFunction { - config "false"; - type boolean; - } - leaf fastleave { - config "false"; - type boolean; + uses mplsldp_Neighbor-group; + description "LDP neighbor parameters class list"; + } + description "LDP neighbor parameters class"; } - } - - grouping igmpsnoop_VlanRec-group { - // Inherited From ipmcsnoop:AVlanRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Password + container password-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf macCount { - config "false"; - type uint32; + uses mplsldp_Password-group; + description "Anchors configuration related to LDP password parameters"; } - // MAC record - container mac-items { - list MacRec-list { - config "false"; - key "macAddress"; + // LDP router id + container routerid-items { - // Added containment: Prefix=mac - // Acquired From Package igmpsnoop - uses igmpsnoop_MacRec-group; - } + uses mplsldp_RouterId-group; + description "LDP router id class"; } - } - grouping igmpsnoop_MacRec-group { - leaf macAddress { - config "false"; - type address_Mac; + // LDP session protection + container sessprot-items { + + uses mplsldp_SessProt-group; + description "Enables LDP sessions to be protected during a link failure. It protects all LDP sessions, unless you specify a prefix list"; } - // Inherited From ipmcsnoop:AMacRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type of MAC address"; + // LDP label allocate global + container labelallocate-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MacType; - } - leaf age { - config "false"; - type uint32; + uses mplsldp_LabelAllocate-group; + description "Configures local label allocation filters for MPLS LDP"; } - // MAC-OIF record - container oif-items { - list MacOifRec-list { + // Peers operational state + container peers-items { + list Peers-list { config "false"; - key "oif"; + key "peerLsrId"; - // Added containment: Prefix=oif - // Acquired From Package igmpsnoop - uses igmpsnoop_MacOifRec-group; + uses mplsldp_Peers-group; + description "Peers operational state list"; } + description "Peers operational state"; } - } - - grouping igmpsnoop_MacOifRec-group { - // Inherited From ipmcsnoop:AMacOif - // Type is an MO-Defined-Type - leaf oif { - config "false"; - description "Outgoing interface for a MAC address"; + // This object holds MPLS LDP information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_If-group; + description "Object holds LDP information that is operated at interface level list"; + } + description "Object holds LDP information that is operated at interface level"; } } - grouping igmpsnoop_MRouterRec-group { + grouping mplsldp_LdpBindings-group { + description "Global LDP binding state"; - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Specify the type of mroute for a VLAN/BD"; + // Per address family operational state + container address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MrouteType; + uses mplsldp_BindingAddressFamilies-group; + description "Per address family operational state"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf interface { - config "false"; - description "Specify the interface port of mroute for a VLAN/BD"; + grouping mplsldp_BindingAddressFamilies-group { + description "Per address family operational state"; - // Type is an MO-Defined-Type - type nw_IfId; + // Containing data related to the IPv4 address family + container ipv4-items { + + uses mplsldp_BindingIpv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf uptime { - config "false"; - description "Specify the uptime of mroute for a VLAN/BD"; + grouping mplsldp_BindingIpv4-group { + description "Containing data related to the IPv4 address family"; + + // LDP address and label binding information + container bindings-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + uses mplsldp_BindingList-group; + description "LDP address and label binding information"; } + } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf expTime { + grouping mplsldp_BindingList-group { + description "LDP address and label binding information"; + + leaf localLabelFilteringSpecifications { config "false"; - description "Specify the expiry of mroute for a VLAN/BD"; - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + type mplsldp_LocalLabelFilteringSpecifications; + description "LDP Local Label Filtering Specifications"; } - // Inherited From ipmcsnoop:AmrouterRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + // LDP Advertisement Specifications + container advertisement_specifications-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_BindingAdvertisementSpecifications-group; + description "LDP Advertisement Specifications"; } - } - grouping igmpsnoop_ExpTrackRec-group { + // List of address bindings learned by LDP + // Ephemeral data + container address-items { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Ephemeral data + list BindingAddress-list { + config "false"; + key "address"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mplsldp_BindingAddress-group; + description "List of address bindings learned by LDP list"; } + description "List of address bindings learned by LDP"; } + } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf vlanid { + grouping mplsldp_BindingAdvertisementSpecifications-group { + description "LDP Advertisement Specifications"; + leaf oldStyleAssignmentOfPrefixAcls { config "false"; - description "Vlan ID"; - - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + type boolean; + description "LDP Advertisement Specifications - Old Style Assignment of Prefix ACLs to Entries"; } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf intf { + leaf peerAcl { config "false"; - description "Interface ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Peer ACL"; } - // Inherited From ipmcsnoop:AExpTrackRec - // Type is an MO-Defined-Type - leaf reporter { + leaf prefixAcl { config "false"; - description "Report IP"; - // Type is an MO-Defined-Type - type ipmcsnoop_Reporter; - } - leaf uptime { - config "false"; - type string; - } - leaf lastJoin { - config "false"; - type string; - } - leaf expires { - config "false"; - type string; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Prefix ACL"; } - leaf srcAddr { + } + + grouping mplsldp_BindingAddress-group { + description "List of address bindings learned by LDP"; + + // Ephemeral data + leaf address { config "false"; type address_Ip; + description "The IPv4 address learned from an Address message received from or advertised to a peer"; } - leaf grpAddr { + + // Ephemeral data + leaf localtag { config "false"; - type address_Ip; + + type mplsldp_LocalBindingTag; + description "The label value in the local binding"; } - leaf version { - config "false"; - type string; + + // List of LDP peers from which this address is received + // Ephemeral data + container peer-items { + + // Ephemeral data + list BindingPeer-list { + config "false"; + key "lsrId"; + + uses mplsldp_BindingPeer-group; + description "LDP peer from which this address is received list"; + } + description "LDP peer from which this address is received"; } - leaf numReports { - config "false"; - type uint32; + + // List of LDP peer to which this binding is advertised + // Ephemeral data + container advertisedtolist-items { + + // Ephemeral data + list BindingAdvertisedToList-list { + config "false"; + key "lsrId"; + + uses mplsldp_BindingAdvertisedToList-group; + description "LDP peer to which this address is advertised list"; + } + description "LDP peer to which this address is advertised"; } } - grouping igmpsnoop_VlanStatsRec-group { - leaf uptime { - config "false"; - type string; - } - leaf vpr { - config "false"; - type uint32; - } - leaf v1rr { - config "false"; - type uint32; - } - leaf v2rr { - config "false"; - type uint32; - } - leaf v3rr { - config "false"; - type uint32; - } - leaf v3qr { + grouping mplsldp_BindingPeer-group { + description "LDP peer from which this address is received"; + + // Ephemeral data + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf v2lr { + + // Ephemeral data + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf phr { + + // Ephemeral data + leaf remotetag { config "false"; - type uint32; + + type mplsldp_RemoteBindingTag; + description "The label value in the remote binding"; } - leaf irr { + } + + grouping mplsldp_BindingAdvertisedToList-group { + description "LDP peer to which this address is advertised"; + + // Ephemeral data + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf iqr { + + // Ephemeral data + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf v2ls { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryState-group { + description "Neibgbor discovery operational state"; + + // List of interfaces for LDP Basic Descovery + container interfaces-items { + list Interfaces-list { + config "false"; + key "ifIdString"; + + uses mplsldp_Interfaces-group; + description "List of interfaces for LDP Basic Discovery list"; + } + description "List of interfaces for LDP Basic Discovery"; } - leaf v3gs { - config "false"; - type uint32; + + // List of targeted neighbors for extended discovery + container targeted-items { + list Targeted-list { + config "false"; + key "name"; + + uses mplsldp_Targeted-group; + description "List of targeted neighbors for extended discovery list"; + } + description "List of targeted neighbors for extended discovery"; } - leaf vmr { + } + + grouping mplsldp_Interfaces-group { + description "List of interfaces for LDP Basic Discovery"; + + leaf ifId { config "false"; - type uint32; + + type nw_IfId; + description "Interface id used for LDP Basic Discovery"; } - leaf upr { + + leaf ifIdString { config "false"; - type uint32; + + type mplsldp_InterfaceString; + description "Interface id name used for LDP Basic Discovery"; } - leaf qo { + + leaf interfaceStatus { config "false"; - type uint32; + + type mplsldp_InterfaceStatus; + description "Discovery interface status"; } - leaf v2ro { + + leaf interfaceEnableStatus { config "false"; - type uint32; + + type mplsldp_InterfaceEnableStatus; + description "Discovery interface enable status"; } - leaf v2lo { + leaf nexthello { config "false"; type uint32; + description "The time when the next Hello message will be sent (s)"; } - leaf v3ro { + leaf helloInterval { config "false"; type uint32; + description "LDP adjacency hello interval (s)"; } - leaf vpsr { + leaf transportIpAddress { config "false"; - type uint32; + type address_Ip; + description "LDP adjacency transport IP address"; } - leaf str { + + leaf clients { config "false"; - type uint32; + + type mplsldp_IntfClients; + description "Hello adjacency clients"; } - leaf cps { - config "false"; - type uint32; + + // Per address family operational state + container discovery_address_families-items { + + uses mplsldp_DiscoveryAddressFamilies-group; + description "Per address family operational state"; } - leaf cpr { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container discovery_ipv4-items { + + uses mplsldp_DiscoveryIpv4-group; + description "Containing data related to the IPv4 address family"; } - leaf cpe { - config "false"; - type uint32; + } + + grouping mplsldp_DiscoveryIpv4-group { + description "Containing data related to the IPv4 address family"; + + // Containing a list of hello adjacencies + container hello_adjacencies-items { + + uses mplsldp_HelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } - leaf mps { - config "false"; - type uint32; + } + + grouping mplsldp_HelloAdjacencies-group { + description "Containing a list of hello adjacencies"; + + // List of hello adjacencies + container hello_adjacency-items { + + uses mplsldp_HelloAdjacency-group; + description "List of hello adjacencies"; } - leaf mpr { + } + + grouping mplsldp_HelloAdjacency-group { + description "List of hello adjacencies"; + leaf adjacentaddress { config "false"; - type uint32; + type address_Ip; + description "Neighbor address of the hello adjacency"; } - leaf mpe { + leaf transportaddress { config "false"; - type uint32; + type address_Ip; + description "Transport address of the hello adjacency"; } - leaf v1qr { + leaf reachabilityaddress { config "false"; - type uint32; + type address_Ip; + description "Reachability address of the hello adjacency"; } - leaf v2qr { + leaf nexthello { config "false"; - type uint32; + type uint16; + description "The time when the next Hello message will be sent (s)"; } - leaf v1rs { + + leaf password { config "false"; - type uint32; + + type mplsldp_LdpPasswordStatus; + description "Hello adjacency password information"; } - leaf v2rs { - config "false"; - type uint32; + + // Containing hello holdtime state information + container hello_holdtime-items { + + uses mplsldp_HelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Inherited From ipmcsnoop:AVlanStats - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan id"; + // A container containing an absolute reference to an LDP peer + container ldp_peer-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + uses mplsldp_LdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } } - grouping igmpsnoop_GStatsRec-group { - leaf pr { - config "false"; - type uint32; - } - leaf invPkt { - config "false"; - type uint32; - } - leaf pnv { - config "false"; - type uint32; - } - leaf loopBkPkt { - config "false"; - type uint32; - } - leaf mrdLoopBk { + grouping mplsldp_HelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { config "false"; type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - leaf pf { + leaf negotiated { config "false"; type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - leaf vpcDrQs { + leaf holdtime { config "false"; type uint32; + description "The current holdtime for this LSR (s)"; } - leaf vpcDrQr { + leaf remaining { config "false"; type uint32; + description "The time remaining until the holdtime timer expires (s)"; } - leaf vpcDrQf { + } + + grouping mplsldp_LdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcDrUs { + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcDrUr { + } + + grouping mplsldp_Targeted-group { + description "List of targeted neighbors for extended discovery"; + + leaf name { config "false"; - type uint32; + + type mplsldp_TargetedHelloIdentifier; + description "The targeted hello entry identifier"; } - leaf vpcDrUf { + + leaf interfaceState { config "false"; - type uint32; + + type mplsldp_TargetedInterfaceState; + description "Targeted Hello State"; } - leaf vpcCfsSf { + + leaf transmissionState { config "false"; - type uint32; + + type mplsldp_InterfaceStatus; + description "Targeted Hello Transmission State"; } - leaf vpcCfsRs { + leaf helloInterval { config "false"; type uint32; + description "LDP adjacency hello interval (s)"; } - leaf vpcCfsRr { + leaf transportIpAddress { config "false"; - type uint32; + type address_Ip; + description "LDP adjacency transport IP address"; } - leaf vpcCfsRf { - config "false"; - type uint32; + + // Per address family operational state + container tgt_address_families-items { + + uses mplsldp_TargetedAddressFamilies-group; + description "Per address family operational state"; } - leaf vpcCfsRfp { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container targeted_ipv4-items { + + uses mplsldp_TargetedIpv4-group; + description "Containing data related to the IPv4 address family"; } - leaf vpcCfsUrls { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedIpv4-group { + description "Containing data related to the IPv4 address family"; + + // Containing a list of hello adjacencies + container targeted_hello_adjacencies-items { + + uses mplsldp_TargetedHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } - leaf vpcCfsUrR { - config "false"; - type uint32; + } + + grouping mplsldp_TargetedHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; + + // List of hello adjacencies + container targeted_hello_adjacency-items { + + uses mplsldp_TargetedHelloAdjacency-group; + description "List of hello adjacencies"; } - leaf vpcCfsCrlF { + } + + grouping mplsldp_TargetedHelloAdjacency-group { + description "List of hello adjacencies"; + leaf adjacentaddress { config "false"; - type uint32; + type address_Ip; + description "Neighbor address of the hello adjacency"; } - leaf vpccfsrls { + leaf transportaddress { config "false"; - type uint32; + type address_Ip; + description "Transport address of the hello adjacency"; } - leaf vpccfsrlr { + leaf reachabilityaddress { config "false"; - type uint32; + type address_Ip; + description "Reachability address of the hello adjacency"; } - leaf vpccfsrlf { + leaf nexthello { config "false"; - type uint32; + type uint16; + description "The time when the next Hello message will be sent (s)"; } - leaf invIod { + + leaf password { config "false"; - type uint32; + + type mplsldp_LdpPasswordStatus; + description "Hello adjacency password information"; } - leaf stptcnr { - config "false"; - type uint32; + + // Containing hello holdtime state information + container targeted_hello_holdtime-items { + + uses mplsldp_TargetedHelloHoldtime-group; + description "Containing hello holdtime state information"; } - leaf imapif { - config "false"; - type uint32; + + // A container containing an absolute reference to an LDP peer + container targeted_ldp_peer-items { + + uses mplsldp_TargetedLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } - leaf mfreqr { + } + + grouping mplsldp_TargetedHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { config "false"; type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - leaf mfcmps { + leaf negotiated { config "false"; type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - leaf mfdgcmps { + leaf holdtime { config "false"; type uint32; + description "The current holdtime for this LSR (s)"; } - leaf bufsnt { + leaf remaining { config "false"; type uint32; + description "The time remaining until the holdtime timer expires (s)"; } - leaf bufackr { + } + + grouping mplsldp_TargetedLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { config "false"; - type uint32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vpcmismatch { + leaf labelSpaceId { config "false"; type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_ReportPolicyStats-group { + grouping mplsldp_Global-group { + description "Platform wide LDP configuration and state"; - // Inherited From ipmcsnoop:AIgmpsnReportPolicy - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan id "; + // Per address family operational state + container address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf rpmType { - config "false"; - type uint32; + uses mplsldp_AddressFamilies-group; + description "Per address family operational state"; } - leaf policyName { - config "false"; - type string; + + // Contains LDP backoff configuration information + container backoff-items { + + uses mplsldp_Backoff-group; + description "LDP Backoff Configuration Information"; } - leaf qcount { - config "false"; - type uint32; + + // Contains LDP graceful restart configuration information + container graceful_restart_state-items { + + uses mplsldp_GracefulRestartState-group; + description "LDP Graceful Restart Configuration Information"; } - leaf acceptCount { - config "false"; - type uint32; + + // Contains LDP capabilities information + container capabilities-items { + list Capabilities-list { + config "false"; + key "capability"; + + uses mplsldp_Capabilities-group; + description "LDP Capabilities Information list"; + } + description "LDP Capabilities Information"; } - leaf rejectCount { - config "false"; - type uint32; + + // Contains LDP configuration parameters Information + container parameters-items { + + uses mplsldp_Parameters-group; + description "LDP Configuration Parameters Information"; } } - grouping igmpsnoop_IgmpsnGroupRec-group { + grouping mplsldp_AddressFamilies-group { + description "Per address family operational state"; - // Inherited From ipmcsnoop:AIgmpsnGroupRec - // Type is an MO-Defined-Type - leaf ifname { - config "false"; - description "Specify interace name"; + // Containing data related to the IPv4 address family + container ipv4-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_Ipv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AIgmpsnGroupRec - // Type is an MO-Defined-Type - leaf vlanid { - config "false"; - description "Vlan ID"; + grouping mplsldp_Ipv4-group { + description "Containing data related to the IPv4 address family"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; - } - leaf sourceaddr { - config "false"; - type address_Ip; + // LDP address and label binding information + container bindings-items { + + uses mplsldp_Bindings-group; + description "LDP address and label binding information"; } - leaf groupaddr { + } + + grouping mplsldp_Bindings-group { + description "LDP address and label binding information"; + + leaf localLabelFilteringSpecifications { config "false"; - type address_Ip; + + type mplsldp_LocalLabelFilteringSpecifications; + description "LDP Local Label Filtering Specifications"; } - leaf ver { - config "false"; - type string; + + // List of address bindings learned by LDP + container address-items { + list Address-list { + config "false"; + key "address"; + + uses mplsldp_Address-group; + description "List of address bindings learned by LDP list"; + } + description "List of address bindings learned by LDP"; } - leaf sportType { - config "false"; - type string; + + // Contains LDP Bindings Summary Information + container summary-items { + list Summary-list { + config "false"; + key "peer"; + + uses mplsldp_Summary-group; + description "LDP Bindings Summary Information list"; + } + description "LDP Bindings Summary Information"; } - leaf gportType { + } + + grouping mplsldp_Address-group { + description "List of address bindings learned by LDP"; + leaf address { config "false"; - type string; + type address_Ip; + description "The IPv4 address learned from an Address message received from or advertised to a peer"; } - leaf rportType { + + leaf localtag { config "false"; - type string; + + type mplsldp_LocalBindingTag; + description "The label value in the local binding"; } - leaf rifname { - config "false"; - type string; + + // LDP Advertisement Specifications + container advertisement_specifications-items { + + uses mplsldp_AdvertisementSpecifications-group; + description "LDP Advertisement Specifications"; } - } - grouping igmpsnoop_McGrpRec-group { + // List of LDP peers from which this address is received + container peer-items { + list Peer-list { + config "false"; + key "lsrId"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + uses mplsldp_Peer-group; + description "LDP peer from which this address is received list"; + } + description "LDP peer from which this address is received"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // List of LDP peer to which this binding is advertised + container advertised_to_list-items { + list AdvertisedToList-list { + config "false"; + key "lsrId"; + + uses mplsldp_AdvertisedToList-group; + description "LDP peer to which this address is advertised list"; } + description "LDP peer to which this address is advertised"; } + } - // Group address - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf addr { + grouping mplsldp_AdvertisementSpecifications-group { + description "LDP Advertisement Specifications"; + leaf oldStyleAssignmentOfPrefixAcls { config "false"; - description "Multicast Group Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type boolean; + description "LDP Advertisement Specifications - Old Style Assignment of Prefix ACLs to Entries"; } - // Version - // Inherited From ipmcsnoop:McGrpRec - // Modified by Override: igmpsnoop:McGrpRec->ver - // Type is an MO-Defined-Type - leaf ver { + leaf peerAcl { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Peer ACL"; } - // Latest reporter - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf latReporter { + leaf prefixAcl { config "false"; - description "Latest Reporter"; - // Type is an MO-Defined-Type - type ipmcsnoop_Reporter; + type mplsldp_AclType; + description "LDP Advertisement Specifications - Prefix ACL"; } - leaf oldHostTs { + } + + grouping mplsldp_Peer-group { + description "LDP peer from which this address is received"; + leaf lsrId { config "false"; - type string; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf reportTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - // Number of Sources - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf numSrc { + leaf remotetag { config "false"; - description "Num of Sources"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_RemoteBindingTag; + description "The label value in the remote binding"; } + } - // EPG entries in mcast group record - container epg-items { - list EpgRec-list { - config "false"; - key "fabEncap"; - - // Added containment: Prefix=epg - // Acquired From Package igmpsnoop - uses igmpsnoop_EpgRec-group; - } + grouping mplsldp_AdvertisedToList-group { + description "LDP peer to which this address is advertised"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - - // IGMP report record snooped by igmp-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; - - // Added containment: Prefix=rep - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportRec-group; - } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_EpgRec-group { + grouping mplsldp_Summary-group { + description "LDP Bindings Summary Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf peer { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_BindingSummaryPeerType; + description "LDP Bindings Summary - Peer"; } - leaf fabEncap { + leaf totalPrefixes { config "false"; - type string; + type uint32; + description "LDP Bindings Summary - Total Number of Prefixes"; } - - // Epg id, identified using the circuit endpoint - // id in the system - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf id { + leaf totalInLabels { config "false"; - description "Endpoint Group ID"; - - // Type is an MO-Defined-Type - type l2_DomId; + type uint32; + description "LDP Bindings Summary - Total Number of In Labels"; + } + leaf totalOutLabels { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Number of Out Labels"; + } + leaf totalTibRouteAllocated { + config "false"; + type uint32; + description "LDP Bindings Summary - Total tib Route Info Allocated"; + } + leaf totalPreviousTibRemoteLabelEntries { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Previous tib Remote Label Entries"; + } + leaf currentPreviousTibRemoteLabelEntries { + config "false"; + type uint32; + description "LDP Bindings Summary - Current Previous tib Remote Label Entries"; + } + leaf totalPreviousTibRemoteLabelQueues { + config "false"; + type uint32; + description "LDP Bindings Summary - Total Previous tib Remote Label Queues"; } + leaf currentPreviousTibRemoteLabelQueues { + config "false"; + type uint32; + description "LDP Bindings Summary - Current Previous tib Remote Label Queues"; + } + } - // Multicast group address (GIPO'), Outer multicast - // encapsulation ip address for this layer2 domain - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf mcastEncap { + grouping mplsldp_Backoff-group { + description "LDP Backoff Configuration Information"; + + leaf initialBackoff { config "false"; - description "Multicat Encapsulation"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + type mplsldp_InitBackoff; + description "LDP Session Initial Backoff (s)"; } - // IGMP report record snooped by igmp-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf maximumBackoff { + config "false"; - // Added containment: Prefix=rep - // Acquired From Package igmpsnoop - uses igmpsnoop_ReportRec-group; - } + type mplsldp_MaxBackoff; + description "LDP Session Maximum Backoff (s)"; } } - grouping igmpsnoop_ReportRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + grouping mplsldp_GracefulRestartState-group { + description "LDP Graceful Restart Configuration Information"; + leaf adminConfig { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type boolean; + description "Is LDP graceful restart enabled or not ?"; } - // Multicast traffic source - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf mcastSrc { + leaf forwardingHolding { config "false"; - description "Multicast Source Address"; - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type mplsldp_FwdHoldTime; + description "Interval for keeping the node in recovery mode (s)"; } - // Version - // Inherited From ipmcsnoop:ReportRec - // Modified by Override: igmpsnoop:ReportRec->ver - // Type is an MO-Defined-Type - leaf ver { + leaf maxRecovery { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type mplsldp_RecoveryTime; + description "Time for the remote peer to maintain the MPLS forwarding state after the local node has succesfully reconnected (s)"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf filtMode { + leaf neighborLiveness { config "false"; - description "Filter Mode"; - // Type is an MO-Defined-Type - type mcast_FiltMode; + type mplsldp_NbrLiveTime; + description "Time for which the remote LDP peers will wait for the local node to reconnect after a failure (s)"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Contains list of LDP down neighbor information + container down_neighbor-items { + list DownNeighbor-list { + config "false"; + key "peerlsrId"; - // Type is an MO-Defined-Type - type ipmcsnoop_RepFlags; + uses mplsldp_DownNeighbor-group; + description "List of LDP Down Neighbor Information list"; + } + description "List of LDP Down Neighbor Information"; } - // OIF list (outgoing interface list) - container oif-items { - list OIFRec-list { + // Contains list of LDP graceful restart enabled session information + container grsession-items { + list GrSession-list { config "false"; - key "id"; + key "lsrId"; - // Added containment: Prefix=oif - // Acquired From Package igmpsnoop - uses igmpsnoop_OIFRec-group; + uses mplsldp_GrSession-group; + description "List of LDP Graceful Restart Enabled Session Information list"; } + description "List of LDP Graceful Restart Enabled Session Information"; } } - grouping igmpsnoop_OIFRec-group { + grouping mplsldp_DownNeighbor-group { + description "List of LDP Down Neighbor Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf status { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_DownNeighborStatus; + description "Down neighbor status"; } - - // Multicast traffic source - // Inherited From ipmcsnoop:OIFRec - // Type is an MO-Defined-Type - leaf id { + leaf peerlsrId { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf numGqMiss { + leaf peerlabelSpaceId { config "false"; - type uint16; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf expireTs { + leaf locallsrId { config "false"; - type string; + type address_Ip; + description "The LSR ID of the local LDP identifier, as a portion of the local LDP ID"; } - - // Host Record List (Used for Explicit Host Tracking) - container host-items { - list HostRec-list { - config "false"; - key "addr"; - - // Added containment: Prefix=host - // Acquired From Package igmpsnoop - uses igmpsnoop_HostRec-group; - } + leaf locallabelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the local LDP identifier, as a portion of the local LDP ID"; } } - grouping igmpsnoop_HostRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf addr { + grouping mplsldp_GrSession-group { + description "List of LDP Graceful Restart Enabled Session Information"; + leaf lsrId { config "false"; type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf upTs { - config "false"; - type string; - } - leaf lastJoinTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } - leaf nextExpiryTs { + + leaf state { config "false"; - type string; + + type mplsldp_PeerStateType; + description "Graceful restart enabled session state"; } } - grouping igmpsnoop_QuerierRec-group { + grouping mplsldp_Capabilities-group { + description "LDP Capabilities Information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + leaf capability { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf timeout { + grouping mplsldp_Parameters-group { + description "LDP Configuration Parameters Information"; + + leaf featureSetManagerState { config "false"; - description "Timeout"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type mplsldp_FeaturesetManagerStateType; + description "LDP Configuration Parameters - Feature Set Manager State"; } - - // Last member query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf lastMbrIntvl { + leaf protocolVersion { config "false"; - description "Last Member Query Interval"; - - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type uint32; + default "1"; + description "LDP Configuration Parameters - Protocol Version"; } - leaf ver { + leaf sessionHoldTime { config "false"; - type string; + type uint32; + default "180"; + description "LDP Configuration Parameters - Session Hold Time (s)"; } - // Querier IP address - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf addr { + leaf overrideSessionHoldTime { config "false"; - description "Address"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Override Adjacency Session Hold Time"; + } + leaf keepAliveInterval { + config "false"; + type uint32; + default "60"; + description "LDP Configuration Parameters - Keep Alive Interval (s)"; + } + leaf discoveryHelloHoldTime { + config "false"; + type uint32; + default "15"; + description "LDP Configuration Parameters - Discovery Hello Hold Time (s)"; + } + leaf discoveryHelloInterval { + config "false"; + type uint32; + default "5"; + description "LDP Configuration Parameters - Discovery Hello Interval (s)"; + } + leaf discoveryTargetedHelloHoldTime { + config "false"; + type uint32; + default "90"; + description "LDP Configuration Parameters - Discovery Targeted Hello Hold Time (s)"; + } + leaf discoveryTargetedHelloInterval { + config "false"; + type uint32; + default "10"; + description "LDP Configuration Parameters - Discovery Targeted Hello Interval (s)"; } - // Query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf queryIntvl { + leaf acceptingTargetedHellos { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Accepting Targeted Hellos"; } - // Query response interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf rspIntvl { + leaf targetedHellosAcl { config "false"; - description "Response Interval"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type mplsldp_AclType; + description "LDP Configuration Parameters - Targeted Hello ACL"; } - // Robustness factor - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf robustFac { + leaf omittingTransportAddressOptionTransmittedHellos { config "false"; - description "Robustness Factor"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Omitting transport address option in transmitted hellos ?"; } - // Startup query interval - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf startQueryIntvl { + leaf ignoringTransportAddressOptionReceivedHellos { config "false"; - description "Startup Query Interval"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Ignoring transport address option in received hellos"; } - // Startup query count - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf startQueryCnt { + leaf acceptingUndirectedHellosNonbroadcastAddresses { config "false"; - description "Startup Query Count"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type mplsldp_enableDisableFlagType; + description "LDP Configuration Parameters - Accepting undirected hellos to non-broadcast addresses"; } - leaf port { + leaf downstreamOnDemandMaxHopCount { config "false"; - type string; + type uint8; + default "255"; + description "LDP Configuration Parameters - Downstream on Demand Max Hop Count"; } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf vlanid { + leaf protocolType { config "false"; - description "Vlan ID"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vlanid; + type mplsldp_ParametersProtocolType; + description "LDP Configuration Parameters - Protocol Type"; } - // Inherited From ipmcsnoop:QuerierRec - // Type is an MO-Defined-Type - leaf expTime { + leaf loopDetection { config "false"; - description "Specify the expiry of querier mo"; - // Type is an MO-Defined-Type - type ipmcsnoop_Timer; + type mplsldp_LoopDetectionType; + description "LDP Loop Detection Enabled ?"; + } + + // Contains LDP Configuration Parameters Information - Features + container features-items { + list Features-list { + config "false"; + key "feature"; + + uses mplsldp_Features-group; + description " LDP Configuration Parameters - Features list"; + } + description " LDP Configuration Parameters - Features"; } } - grouping igmpsnoop_DomStats-group { + grouping mplsldp_Features-group { + description " LDP Configuration Parameters - Features"; - // V1 Reports received - // Type is an MO-Defined-Type - leaf v1RepRcvd { + leaf feature { config "false"; - description "V1 Reports Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_FeatureType; + description "LDP Configuration Parameters - Feature Name"; } + } - // V2 Reports received - // Type is an MO-Defined-Type - leaf v2RepRcvd { - config "false"; - description "V2 Reports Received"; + grouping mplsldp_IgpSync-group { + description "IGP Synchronization Information"; - // Type is an MO-Defined-Type - type nw_Counter32; + // Per interface IGP synchronization information + container igp_sync_interface-items { + list IgpSyncInterface-list { + config "false"; + key "ifIdString"; + + uses mplsldp_IgpSyncInterface-group; + description "Per interface IGP synchronization information list"; + } + description "Per interface IGP synchronization information"; } + } - // V2 Leave received - // Type is an MO-Defined-Type - leaf v2LeaveRcvd { + grouping mplsldp_IgpSyncInterface-group { + description "Per interface IGP synchronization information"; + + leaf ifIdString { config "false"; - description "V2 Leave Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_InterfaceString; + description "Interface id name used for IGP synchronization"; } - // V1 Query received - // Type is an MO-Defined-Type - leaf v1QueryRcvd { + leaf ifId { config "false"; - description "V1 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "LDP IGP Synchronization Interface Id"; } - // V2 Query received - // Type is an MO-Defined-Type - leaf v2QueryRcvd { + leaf status { config "false"; - description "V2 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpStatusType; + description "LDP IGP Synchronization Status"; } - // V1 Reports suppressed - // Type is an MO-Defined-Type - leaf v1RepSupr { + leaf syncEnableStatus { config "false"; - description "V1 Reports Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpSyncEnableType; + description "LDP IGP Synchronization Enable Status"; } - // V2 Reports suppressed - // Type is an MO-Defined-Type - leaf v2RepSupr { + leaf syncStatus { config "false"; - description "V2 Reports Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpSyncStatusType; + description "LDP IGP Synchronization Sync Status"; } - // V2 leaves suppressed - // Type is an MO-Defined-Type - leaf v2LeaveSupr { + leaf peerStatus { config "false"; - description "V2 Leaves Suppressed"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpIgpPeerStatusType; + description "LDP IGP Synchronization Peer Reachable Status"; } - - // v1 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v1RepOrig { + leaf syncDelayTime { config "false"; - description "V1 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "LDP IGP Synchronization Delay Time Value (s)"; } - - // v2 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v2RepOrig { + leaf syncDelayTimeLeft { config "false"; - description "V2 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "LDP IGP Synchronization Delay Time Left Value (s)"; } - - // v2 Proxy Leave Originated - // Type is an MO-Defined-Type - leaf v2LeaveOrig { + leaf igpHoldDownTime { config "false"; - description "V2 Leaves Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "LDP IGP Synchronization IGP Hold Down Time (ms)"; } - - // V3 Reports received - // Type is an MO-Defined-Type - leaf v3RepRcvd { + leaf grEnabled { config "false"; - description "V3 Reports Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "LDP Discovery Information - Graceful Enabled for Session"; } - // V3 Query received - // Type is an MO-Defined-Type - leaf v3QueryRcvd { + leaf igpEnabled { config "false"; - description "V3 Query Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_IgpEnabledType; + description "LDP Discovery Information - IGP that Enabled Sync"; } - // V3 Group Record suppressed - // Type is an MO-Defined-Type - leaf v3GrpRecSupr { - config "false"; - description "V3 Group Records Suppressed"; + // LDP IGP Sync Peer information + container igp_sync_peer-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_IgpSyncPeer-group; + description "LDP IGP Sync Peer Information"; } + } - // v3 Proxy Report Originated - // Type is an MO-Defined-Type - leaf v3RepOrig { + grouping mplsldp_IgpSyncPeer-group { + description "LDP IGP Sync Peer Information"; + leaf lsrId { config "false"; - description "V3 Reports Originated"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf lastClearTs { + leaf labelSpaceId { config "false"; - type string; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } + } - // packets received - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pktsRcvd { - config "false"; - description "Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping mplsldp_AdvLbl-group { + description "Control if labels are advertised. When this MO exists, labels are advertised (the default). When this MO does not exist, no labels will be advertised to neighbors."; + leaf advLbl { + type boolean; + default "true"; + description "The advLbl property enables the label advertisements"; } + } - // Pim Hello Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pimHelloRcvd { - config "false"; - description "Pim Hello Received"; + grouping mplsldp_AdvLblPfx-group { + description "Advertises local labels for some destination prefixes"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on destination prefixes"; } - // Invalid Query Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf invQueryRcvd { - config "false"; - description "Invalid Query Received"; + leaf peerPfxList { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on LDP peers"; } + } - // Invalid Report Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf invRepRcvd { - config "false"; - description "Invalid Report Received"; + grouping mplsldp_AdvLblIntf-group { + description "Advertises local labels for a particular interface"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf interface { + + type nw_IfId; + description "Advertise /32 interface address"; } + } - // Version Mismatch Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf verMisMatchRcvd { - config "false"; - description "Version Mismatch Received"; + grouping mplsldp_BackoffParams-group { + description "LDP Session backoff parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf initBackoff { + + type mplsldp_InitBackoff; + description "Initial session backoff time (seconds)"; } - // Unknown Packets Rcvd - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf unknPktRcvd { - config "false"; - description "Unknown Packets Received"; + leaf maxBackoff { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_MaxBackoff; + description "Maximum session backoff time (seconds)"; } + } - // Query Originated - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf queryPktsOrig { - config "false"; - description "Query Packets Originated"; + grouping mplsldp_Discovery-group { + description "Anchors configuration related to LDP neighbor discovery"; - // Type is an MO-Defined-Type - type nw_Counter32; + // LDP Discovery Hello + container discoveryhello-items { + + uses mplsldp_DiscoveryHello-group; + description "LDP Discovery hello parameters"; } - // Packets Sent to Router Ports - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf pktsToRport { - config "false"; - description "Packets to Router Ports"; + // LDP Discovery Targeted Hello + container discoverytgthello-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_DiscoveryTgtHello-group; + description "LDP Discovery Targeted Hello parameters"; } + } - // VPC Sync Packets Sent to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncSent { - config "false"; - description "VPC Sync Packets Sent"; + grouping mplsldp_DiscoveryHello-group { + description "LDP Discovery hello parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf helloHoldtime { + + type mplsldp_HelloHoldTime; + description "LDP discovery Hello holdtime defines the period of time that a discovered LDP neighbor is remembered without receipt of an LDP hello message from the neighbor. The range is from 1 to 65535 seconds"; } - // VPC Sync Packets Rcvd from Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncRcvd { - config "false"; - description "VPC Sync Packets Received"; + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_IntvlTime; + description "LDP discovery Hello interval defines the period of time between the sending of consecutive hello messages. The range is from 1 to 65535 seconds"; } + } - // VPC Sync Packets Failed to send to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf vpcSyncFail { - config "false"; - description "VPC Sync Packets Failed"; + grouping mplsldp_DiscoveryTgtHello-group { + description "LDP Discovery Targeted Hello parameters"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf tgtHelloHoldtime { + + type mplsldp_TgtHoldTime; + description "LDP discovery Targeted Hello holdtime defines the period of time that a discovered LDP neighbor is remembered without receipt of an LDP hello message from the neighbor. The range is from 1 to 65535 seconds"; } - // MRD Sync Packets Sent to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncSent { - config "false"; - description "MRD Sync Packets Sent"; + leaf tgtHelloIntvl { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsldp_TgtIntvlTime; + description "LDP discovery Targeted Hello interval defines the period of time between the sending of consecutive hello messages. The range is from 1 to 65535 seconds"; } - // MRD Sync Packets Rcvd from Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncRcvd { - config "false"; - description "MRD Sync Packets Received"; + // LDP Discovery target hello accept + container distgthelloaccept-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsldp_DisTgtHelloAccept-group; + description "LDP Discovery target hello accept parameters"; } + } - // MRD Sync Packets Failed to send to Peer - // Inherited From ipmcsnoop:DomStats - // Type is an MO-Defined-Type - leaf mrdSyncFail { - config "false"; - description "MRD Sync Packets Failed"; + grouping mplsldp_DisTgtHelloAccept-group { + description "LDP Discovery target hello accept parameters"; + leaf accept { + type boolean; + default "true"; + description "The accept property configures the router to respond to requests for targeted-hello messages from all neighbors"; + } - // Type is an MO-Defined-Type - type nw_Counter32; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Neighbor prefix list to specify acceptable targeted hello sources"; } } - grouping igmpsnoop_StRtrIf-group { + grouping mplsldp_ExplicitNull-group { + description "LDP Explicit Null advertises an explicit-null label in situations where an implicit-null label would normally be advertised"; + leaf explicitNull { + type boolean; + default "true"; + description "The explicitNull property advertises Explicit Null label in place of Implicit Null"; + } + } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + grouping mplsldp_ExplNullForList-group { + description "Controls which label bindings will be advertised as explicit-null rather than inplicit-null"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + leaf forPfxList { + + type mplsldp_LdpPrefixListName; + description "Prefix list specifying controls on destination prefixes"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + leaf toPfxList { - // Type is an MO-Defined-Type - type naming_Descr1024; + type mplsldp_LdpPrefixListName; + description "Access list specifying controls on LDP peers"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + grouping mplsldp_ExplNullToList-group { + description "Controls to which neighbors label bindings will be advertised as explicit-null rather than implicit-null"; - // Type is an MO-Defined-Type - type nw_IfId; - } + leaf toPfxList { - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + type mplsldp_LdpPrefixListName; + description "Access list specifying controls on LDP peers"; + } + } - // Type is an MO-Defined-Type - type nw_IfAdminSt; + grouping mplsldp_Gr-group { + description "LDP Graceful restart parameters"; + leaf graceful { + type boolean; + default "true"; + description "The graceful property configures LDP graceful restart"; } - leaf encap { - config "false"; - type string; + + leaf forwardingHoldtime { + + type mplsldp_FwdHoldTime; + description "LDP forwarding state holding time. Specifies the amount of time the MPLS forwarding state should be preserved after the control plane restarts."; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - container rtvrfMbr-items { + leaf recoveryTime { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type mplsldp_RecoveryTime; + description "LDP maximum recovery time. Specifies the amount of time a router should hold stale label-FEC bindings after an LDP session has been reestablished."; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf neighborLivenessTime { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type mplsldp_NbrLiveTime; + description "LDP Neighbor-Liveness time. Specifies the amount of time a router should wait for an LDP session to be reestablished."; } } - grouping igmpsnoop_RtrIf-group { + grouping mplsldp_HoldTime-group { + description "LDP session holdtime parameters"; + leaf infinite { + type boolean; + default "false"; + description "Ignore LDP session holdtime"; + } - // Identifier for the if - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + leaf sessionHoldTime { - // Type is an MO-Defined-Type - type nw_IfId; + type mplsldp_SessionHoldTime; + description "LDP session holdtime specifies how long an LDP session is maintained in the absence of LDP messages from the session peer. The range is from 15 to 65535 seconds"; } + } - // Life cycle control - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf lcC { - config "false"; - description "Life Cycle Control"; + grouping mplsldp_Logging-group { + description "LDP logging parameters"; + leaf nbrChanges { + type boolean; + default "true"; + description "Log LDP neighbor state changes"; + } + leaf config { + type boolean; + default "true"; + description "Log LDP password configuration changes"; + } - // Type is an MO-Defined-Type - type ipmcsnoop_LcC; + leaf configRateLimit { + + type mplsldp_RateLimit; + description "LDP logging password configuration rate limit"; } - leaf upTs { - config "false"; - type string; + leaf rollover { + type boolean; + default "true"; + description "Log LDP password rollover events"; } - leaf nextExpiryTs { - config "false"; - type string; + + leaf rolloverRateLimit { + + type mplsldp_RateLimit; + description "LDP logging password rollover rate limit"; } } - grouping igmpsnoop_Vlan-group { + grouping mplsldp_DefaultRoute-group { + description "Allow MPLS forwarding for ip default route"; + leaf defaultRoute { + type boolean; + default "true"; + description "Allow MPLS forwarding for ip default route"; + } + } - // Type is an MO-Defined-Type - leaf vlanid { - description "Vlan ID"; + grouping mplsldp_Neighbor-group { + description "LDP neighbor parameters class"; + leaf nbrAddr { + type address_Ip; + description "IP address for LDP neighbor"; + } + leaf implicitWithdraw { + type boolean; + default "false"; + description "Enable LDP neighbor implicit withdraw"; + } - // Type is an MO-Defined-Type - type nw_IfId; + leaf pfxList { + + type mplsldp_LdpPrefixListName; + description "Specifies the prefix list to be used to filter label bindings for the specified LDP neighbor."; + } + leaf targeted { + type boolean; + default "false"; + description "Establish LDP targeted session"; } + } - // Circuit endpoint representing EPG - container cktep-items { - list CktEp-list { - key "encap"; + grouping mplsldp_Password-group { + description "Anchors configuration related to LDP password parameters"; - // Added containment: Prefix=cktep - // Acquired From Package igmpsnoop - uses igmpsnoop_CktEp-group; - } + // LDP Password fallback class + container passwordfallback-items { + + uses mplsldp_PasswordFallback-group; + description "Configures a backup MD5 keychain for peers that have no keychain configured"; } - // Multicast Snoop Configured statically - container mcgrp-items { - list StMcGrp-list { - key "addr"; + // LDP Password option + container passwordoption-items { + list PasswordOption-list { + key "seqNum"; - // Added containment: Prefix=mcgrp - // Acquired From Package igmpsnoop - uses igmpsnoop_StMcGrp-group; + uses mplsldp_PasswordOption-group; + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list list"; } + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list"; } - container igmpsnbase-items { + // LDP Password required + container passwordrequired-items { - // Added containment as a singleton: Prefix=igmpsnbase - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnBase-group; + uses mplsldp_PasswordRequired-group; + description "Specifies that LDP must use a password when establishing a session between LDP peers."; } + } - // This objects holds IGMP snooping timers for vlan - container gTimers-items { + grouping mplsldp_PasswordFallback-group { + description "Configures a backup MD5 keychain for peers that have no keychain configured"; + leaf keyChain { + type string; + description "The key-chain keychain-name keyword-argument pair specifies a keychain of multiple MD5 keys to be used for the LDP sessions."; + } + } - // Added containment as a singleton: Prefix=gTimers - // Acquired From Package igmpsnoop - uses igmpsnoop_GTimers-group; + grouping mplsldp_PasswordOption-group { + description "Configures an MD5 password for LDP sessions with neighbors whose LDP router IDs are permitted by a specified prefix list"; + + leaf seqNum { + + type mplsldp_SeqNum; + description "The number argument defines the order in which the prefix lists are evaluated in the determination of a neighbor password. The valid range is from 1 to 32767."; } - // This objects holds multicast mac address table params - container mactable-items { - list MacTable-list { - key "macAddress"; + leaf pfxList { - // Added containment: Prefix=mactable - // Acquired From Package igmpsnoop - uses igmpsnoop_MacTable-group; - } + type mplsldp_LdpPrefixListName; + description "Specifies the name of the prefix list that includes the LDP router IDs of those neighbors for which the password applies"; + } + leaf keyChain { + type string; + description "Specifies a keychain of multiple MD5 keys to be used for the LDP sessions."; } + } - // This objects holds multicast router snoop params - container mrouter-items { + grouping mplsldp_PasswordRequired-group { + description "Specifies that LDP must use a password when establishing a session between LDP peers."; + leaf required { + type boolean; + default "true"; + description "Specifies that LDP must use a password when establishing a session between LDP peers."; + } - // Added containment as a singleton: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouter-group; + leaf reqPfxList { + + type mplsldp_LdpPrefixListName; + description "Specifies a prefix list, which specifies that a password is mandatory only for LDP sessions with neighbors whose LDP router IDs are permitted by the list"; } + } + + grouping mplsldp_RouterId-group { + description "LDP router id class"; + leaf force { + type boolean; + default "false"; + description "LDP router id force keyword enables the router ID to take effect more quickly"; + } + + leaf if { - // This objects holds multicast proxy snoop params - container proxy-items { + type nw_IfId; + description "Specifies the preferred interface for determining the LDP router ID, which is typically determined the next time that the interface is shut down or the address is deconfigured"; + } + } - // Added containment as a singleton: Prefix=proxy - // Acquired From Package igmpsnoop - uses igmpsnoop_Proxy-group; + grouping mplsldp_SessProt-group { + description "Enables LDP sessions to be protected during a link failure. It protects all LDP sessions, unless you specify a prefix list"; + leaf infinite { + type boolean; + default "false"; + description "The infinite keyword allows the LDP targeted hello adjacency to exist indefinitely following the loss of the LDP link hello adjacency."; } - // Querier policy - container querierp-items { + leaf duration { - // Added containment as a singleton: Prefix=querierp - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierP-group; + type mplsldp_ProtectDuration; + description "The duration keyword enables you to specify how long the router should retain the LDP targeted hello adjacency following the loss of the LDP link hello adjacency. The range is from 30 to 2,147,483 seconds."; } - // Querier state - container querierst-items { + leaf pfxList { - // Added containment as a singleton: Prefix=querierst - // Acquired From Package igmpsnoop - uses igmpsnoop_QuerierSt-group; + type mplsldp_LdpPrefixListName; + description "Prefix list for LDP peers that should be protected. Session protection is then enabled for the peer routers in that prefix list"; } + } - // Route control policy for igmp multicast snoop. - container actrl-items { + grouping mplsldp_LabelAllocate-group { + description "Configures local label allocation filters for MPLS LDP"; - // Added containment as a singleton: Prefix=actrl - // Acquired From Package igmpsnoop - uses igmpsnoop_ACtrl-group; + leaf lblAllocT { + + type mplsldp_LblAllocT; + description "Specifies label allocation type"; } - // Report policy for igmp multicast snoop - container rpolicy-items { - list RPolicy-list { - key "rtMap"; + leaf pfxList { - // Added containment: Prefix=rpolicy - // Acquired From Package igmpsnoop - uses igmpsnoop_RPolicy-group; - } + type mplsldp_LdpPrefixListName; + description "Specifies a prefix list to be used as a filter for MPLS LDP local label allocation."; } } - grouping igmpsnoop_CktEp-group { - leaf encap { - type string; + grouping mplsldp_Peers-group { + description "Peers operational state"; + leaf peerLsrId { + config "false"; + type address_Ip; + description "The LSR ID of peer, as a portion of the peer LDP ID"; + } + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of local LDP, as a portion of the local LDP ID"; + } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of local LDP, as a portion of the local LDP ID"; } - } - - grouping igmpsnoop_StMcGrp-group { - // Inherited From nw:Conn - // Modified by Override: mcast:Grp->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf peerState { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type mplsldp_PeerStateType; + description "LDP Neighbor Information - Peer State"; } - // Multicast group address - // Inherited From mcast:Grp - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + leaf peerHoldTime { + config "false"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + type mplsldp_HelloHoldTime; + description "LDP Neighbor Information - Peer Hold Time (ms)"; + } + leaf keepAliveInterval { + config "false"; + type uint32; + description "LDP Neighbor Information - Keep Alive Interval (ms)"; + } + leaf nextKeepAlive { + config "false"; + type uint32; + description "Time to send the next KeepAlive message"; } - // IPMC Source IP - container src-items { - list McSrc-list { - key "id"; + leaf labelAdvertisementMode { + config "false"; - // Added containment: Prefix=src - // Acquired From Package igmpsnoop - uses igmpsnoop_McSrc-group; - } + type mplsldp_LabelAdvertisementModeType; + description "Label advertisement mode"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + leaf clients { + config "false"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + type mplsldp_NeighborPeerClientType; + description "LDP Neighbor Information - Clients"; } - } - - grouping igmpsnoop_McSrc-group { - // Multicast traffic source - // Inherited From ipmcsnoop:McSrc - // Type is an MO-Defined-Type - leaf id { - description "Multicast Source IP"; + leaf password { + config "false"; - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type mplsldp_LdpPasswordStatus; + description "LDP peer password information"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // List of interfaces for LDP Basic Descovery + container discovery_interfaces-items { + list DiscoverySourcesInterfaces-list { + config "false"; + key "ifIdString"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + uses mplsldp_DiscoverySourcesInterfaces-group; + description "List of interfaces for LDP Basic Descovery list"; } + description "List of interfaces for LDP Basic Descovery"; } - } - grouping igmpsnoop_TgtIf-group { - leaf vsi { - type boolean; - } - leaf accGrp { - type boolean; - } - leaf pfxList { - type boolean; + // List of targeted interfaces for LDP Basic Descovery + container discovery_targeted-items { + list TargetedDiscoverySourcesInterfaces-list { + config "false"; + key "name"; + + uses mplsldp_TargetedDiscoverySourcesInterfaces-group; + description "List of interfaces for LDP Basic Descovery list"; + } + description "List of interfaces for LDP Basic Descovery"; } - // Target interface Id - // Inherited From ipmcsnoop:TgtIf - // Type is an MO-Defined-Type - leaf id { - description "Multicast Source IP"; + // Neighbor Session Protection Information + container session_protection-items { - // Type is an MO-Defined-Type - type nw_IfId; + uses mplsldp_PeerSessionProtection-group; + description "Neighbor session protection details"; } - } - grouping igmpsnoop_IgmpsnBase-group { - leaf lookupMac { - type boolean; + // Operational state information learned from the peer + container received_peer_state-items { + + uses mplsldp_ReceivedPeerState-group; + description "Operational state information learned from the peer"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf llGrpSuppr { - description "Link local groups suppression"; + container peer_capabilities-items { - // Type is an MO-Defined-Type - type ipmcsnoop_LlGrpSuppr; + uses mplsldp_PeerCapabilities-group; + description "Per peer capabilities"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf reportSuppr { - description "v1/v2 report suppression"; + // TCP connection state + container tcp-items { - // Type is an MO-Defined-Type - type ipmcsnoop_ReportSuppr; + uses mplsldp_TcpConnection-group; + description "TCP connection state"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf v3ReportSuppr { - description "v3 report suppression"; + // Peer connection information + container connection-items { - // Type is an MO-Defined-Type - type ipmcsnoop_V3ReportSuppr; + uses mplsldp_Connection-group; + description "Peer connection information"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf expTracking { - description "Explicit tracking"; + grouping mplsldp_DiscoverySourcesInterfaces-group { + description "List of interfaces for LDP Basic Descovery"; - // Type is an MO-Defined-Type - type ipmcsnoop_ExpTracking; + leaf ifIdString { + config "false"; + + type mplsldp_InterfaceString; + description "Interface id name used for LDP Basic Discovery"; } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf igmpSnoop { - description "Enable/Disable igmp snooping global mode"; + // Per address family operational state + container peer_address_families-items { - // Type is an MO-Defined-Type - type ipmcsnoop_IgmpSnoop; + uses mplsldp_PeerAddressFamilies-group; + description "Per address family operational state"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf minVer { - description "Minimum IGMP version"; + grouping mplsldp_PeerAddressFamilies-group { + description "Per address family operational state"; - // Type is an MO-Defined-Type - type ipmcsnoop_MinVer; + // Containing data related to the IPv4 address family + container peer_ipv4-items { + + uses mplsldp_PeerIpv4-group; + description "Containing data related to the IPv4 address family"; } + } - // Inherited From ipmcsnoop:AIgmpsnBase - // Type is an MO-Defined-Type - leaf maxGrp { - description "Maximum Groups per interface"; + grouping mplsldp_PeerIpv4-group { + description "Containing data related to the IPv4 address family"; - // Type is an MO-Defined-Type - type ipmcsnoop_MaxGrp; + // Containing a list of hello adjacencies + container peer_hello_adjacencies-items { + + uses mplsldp_PeerHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } } - grouping igmpsnoop_GTimers-group { + grouping mplsldp_PeerHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf fastLeave { - description "Fast leave"; + // List of hello adjacencies + container peer_hello_adjacency-items { - // Type is an MO-Defined-Type - type ipmcsnoop_FastLeave; + uses mplsldp_PeerHelloAdjacency-group; + description "List of hello adjacencies"; } + } - // Group timeout - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf grpTimeout { - description "Group Timeout"; + grouping mplsldp_PeerHelloAdjacency-group { + description "List of hello adjacencies"; + leaf localaddress { + config "false"; + type address_Ip; + description "Local address of the hello adjacency"; + } + leaf adjacentaddress { + config "false"; + type address_Ip; + description "Neighbor address of the hello adjacency"; + } - // Type is an MO-Defined-Type - type mcast_GrpTimeout; + // Containing hello holdtime state information + container peer_hello_holdtime-items { + + uses mplsldp_PeerHelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Inherited From ipmcsnoop:AGTimers - // Type is an MO-Defined-Type - leaf maxGqMiss { - description "Max GQ Miss time"; + // A container containing an absolute reference to an LDP peer + container ldp_peer-items { - // Type is an MO-Defined-Type - type ipmcsnoop_MaxGqMiss; + uses mplsldp_DiscoveryLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } } - grouping igmpsnoop_MacTable-group { - leaf macAddress { - type address_Mac; + grouping mplsldp_PeerHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { + config "false"; + type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; } - - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; - - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + leaf negotiated { + config "false"; + type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; } - container mif-items { - list MIf-list { - key "intf"; - - // Added containment: Prefix=mif - // Acquired From Package igmpsnoop - uses igmpsnoop_MIf-group; - } + leaf holdtime { + config "false"; + type uint32; + description "The current holdtime for this LSR (s)"; + } + leaf remaining { + config "false"; + type uint32; + description "The time remaining until the holdtime timer expires (s)"; } } - grouping igmpsnoop_MIf-group { - leaf intf { - type string; + grouping mplsldp_DiscoveryLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } - leaf vsi { - type boolean; + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; } } - grouping igmpsnoop_MRouter-group { + grouping mplsldp_TargetedDiscoverySourcesInterfaces-group { + description "List of interfaces for LDP Basic Descovery"; - // Global property - // Inherited From ipmcsnoop:Amrouter - // Type is an MO-Defined-Type - leaf vpcPeerLink { - description "Specify vpc-peer-link as static mrouter for all VLAN/BD"; + leaf name { + config "false"; - // Type is an MO-Defined-Type - type ipmcsnoop_Vpc; + type mplsldp_TargetedHelloIdentifier; + description "The targeted hello entry identifier"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // Per address family operational state + container targeted_peer_address_families-items { - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; - } + uses mplsldp_TargetedPeerAddressFamilies-group; + description "Per address family operational state"; } - container mif-items { - list MIf-list { - key "intf"; + } - // Added containment: Prefix=mif - // Acquired From Package igmpsnoop - uses igmpsnoop_MIf-group; - } + grouping mplsldp_TargetedPeerAddressFamilies-group { + description "Per address family operational state"; + + // Containing data related to the IPv4 address family + container targeted_peer_ipv4-items { + + uses mplsldp_TargetedPeerIpv4-group; + description "Containing data related to the IPv4 address family"; } } - grouping igmpsnoop_Proxy-group { + grouping mplsldp_TargetedPeerIpv4-group { + description "Containing data related to the IPv4 address family"; - // Inherited From ipmcsnoop:AProxy - // Type is an MO-Defined-Type - leaf maxRespTime { - description "configures mrt for switch's proxy general-queries"; + // Containing a list of hello adjacencies + container targeted_peer_hello_adjacencies-items { - // Type is an MO-Defined-Type - type ipmcsnoop_Mrt; + uses mplsldp_TargetedPeerHelloAdjacencies-group; + description "Containing a list of hello adjacencies"; } } - grouping igmpsnoop_QuerierP-group { + grouping mplsldp_TargetedPeerHelloAdjacencies-group { + description "Containing a list of hello adjacencies"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // List of hello adjacencies + container targeted_peer_hello_adjacency-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses mplsldp_TargetedPeerHelloAdjacency-group; + description "List of hello adjacencies"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + grouping mplsldp_TargetedPeerHelloAdjacency-group { + description "List of hello adjacencies"; + leaf localaddress { + config "false"; + type address_Ip; + description "Local address of the hello adjacency"; + } + leaf adjacentaddress { + config "false"; + type address_Ip; + description "Neighbor address of the hello adjacency"; + } + leaf nexthello { + config "false"; + type uint32; + description "The time when the next Hello message will be sent (s)"; + } - // Type is an MO-Defined-Type - type naming_Descr; + leaf interfaceState { + config "false"; + + type mplsldp_TargetedInterfaceState; + description "Targeted Hello State"; } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: igmpsnoop:QuerierP->ver - // Type is an MO-Defined-Type - leaf ver { - description "Version"; + // Containing hello holdtime state information + container targeted_peer_hello_holdtime-items { - // Type is an MO-Defined-Type - type mcast_Ver; + uses mplsldp_TargetedPeerHelloHoldtime-group; + description "Containing hello holdtime state information"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - description "Address"; + // A container containing an absolute reference to an LDP peer + container targeted_ldp_peer-items { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + uses mplsldp_TargetedDiscoveryLdpPeer-group; + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; } + } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - description "Query Interval"; + grouping mplsldp_TargetedPeerHelloHoldtime-group { + description "Containing hello holdtime state information"; + leaf adjacent { + config "false"; + type uint32; + description "The holdtime value learned from the adjacent LSR (s)"; + } + leaf negotiated { + config "false"; + type uint32; + description "The holdtime negotiated between this LSR and the adjacent LSR (s)"; + } + leaf holdtime { + config "false"; + type uint32; + description "The current holdtime for this LSR (s)"; + } + leaf remaining { + config "false"; + type uint32; + description "The time remaining until the holdtime timer expires (s)"; + } + } - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + grouping mplsldp_TargetedDiscoveryLdpPeer-group { + description "Reference to an LDP peer, by the LDP ID, which consists of the LSR ID and the Label Space ID"; + leaf lsrId { + config "false"; + type address_Ip; + description "The LSR ID of the peer, as a portion of the peer LDP ID"; } + leaf labelSpaceId { + config "false"; + type uint32; + description "The Label Space ID of the peer, as a portion of the peer LDP ID"; + } + } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - description "Response Interval"; + grouping mplsldp_PeerSessionProtection-group { + description "Neighbor session protection details"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + leaf peerProtectionState { + config "false"; + + type mplsldp_NeighborPeerProtectionState; + description "LDP Neighbor Information - Peer Protection State"; + } + leaf peerProtectionDuration { + config "false"; + type uint32; + description "LDP Neighbor Information - Peer Protection Duration (s)"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - description "Robustness Factor"; + leaf peerProtectionAcl { + config "false"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_AclType; + description "LDP Neighbor Information - Peer Protection ACL Name"; } + } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - description "Startup Query Interval"; + grouping mplsldp_ReceivedPeerState-group { + description "Operational state information learned from the peer"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + // Per peer graceful restart attributes + container graceful_restart-items { + + uses mplsldp_GracefulRestart-group; + description "Operational state information learned from the peer"; } + } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - description "Startup Query Count"; + grouping mplsldp_GracefulRestart-group { + description "Operational state information learned from the peer"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + leaf state { + config "false"; + + type mplsldp_GrStateType; + description "Graceful Restart State"; + } + leaf neighborLivenessTimer { + config "false"; + type uint32; + description "Neighbor Liveness Timer (s)"; + } + leaf maxRecoveryTime { + config "false"; + type uint32; + description "Max Recovery Time (s)"; + } + leaf forwardingStateHoldingTime { + config "false"; + type uint32; + description "Forwarding State Holding Time (s)"; } + } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - description "Last Member Query Interval"; + grouping mplsldp_PeerCapabilities-group { + description "Per peer capabilities"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + // Per peer capabilities received + container capabilities_received-items { + list CapabilitiesReceived-list { + config "false"; + key "capability"; + + uses mplsldp_CapabilitiesReceived-group; + description "Per peer capabilities received list"; + } + description "Per peer capabilities received"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Per peer capabilities sent + container capabilities_sent-items { + list CapabilitiesSent-list { + config "false"; + key "capability"; - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + uses mplsldp_CapabilitiesSent-group; + description "Per peer capabilities received list"; + } + description "Per peer capabilities received"; } } - grouping igmpsnoop_QuerierSt-group { + grouping mplsldp_CapabilitiesReceived-group { + description "Per peer capabilities received"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + leaf capability { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + grouping mplsldp_CapabilitiesSent-group { + description "Per peer capabilities received"; + + leaf capability { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type mplsldp_CapabilityDescription; + description "Capability supported by LDP"; } + } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: igmpsnoop:QuerierSt->ver - // Type is an MO-Defined-Type - leaf ver { + grouping mplsldp_TcpConnection-group { + description "TCP connection state"; + leaf remoteTcpAddress { config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; + type address_Ip; + description "TCP connection state remote TCP Address"; } - - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { + leaf remoteTcpPort { config "false"; - description "Address"; - - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type uint32; + description "TCP connection state remote TCP port"; + } + leaf localTcpAddress { + config "false"; + type address_Ip; + description "TCP connection state local TCP Address"; } + leaf localTcpPort { + config "false"; + type uint32; + description "TCP connection state local TCP port"; + } + } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { + grouping mplsldp_Connection-group { + description "Peer connection information"; + + leaf protocolState { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type mplsldp_ProtocolStateType; + description "LDP peer protocol state"; } - - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { + leaf messagesSent { config "false"; - description "Response Interval"; + type uint32; + description "Total messages sent to peer"; + } + leaf messagesReceived { + config "false"; + type uint32; + description "Total messages received by peer"; + } + } - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + grouping mplsldp_If-group { + description "Object holds LDP information that is operated at interface level"; + leaf mplsIp { + type boolean; + default "false"; + description "The mplsIp property enables MPLS LDP on the specified interface"; + } + leaf igpAuto { + type boolean; + default "true"; + description "Enables MPLS LDP interior gateway protocol autoconfig"; + } + leaf igpSync { + type boolean; + default "true"; + description "Enables MPLS LDP interior gateway protocol sync"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; + leaf delayTime { - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type mplsldp_DelayTime; + description "Configures a delay time for MPLS LDP IGP synchronization on the specified interface."; + } + leaf discTrnspIntf { + type boolean; + default "false"; + description "Use interface address for LDP transport address"; + } + leaf discTrnspIp { + type address_Ip; + description "IP address to use for LDP transport address"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - config "false"; - description "Startup Query Interval"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - config "false"; - description "Startup Query Count"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type mcast_QueryCnt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + grouping mpls_Entity-group { + description "Root MPLS Manager entity anchoring general MPLS MOs"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - config "false"; - description "Timeout"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type nw_AdminSt; + description "Admin State"; } - // Interface on which the querier is present - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf if { + // Operational state + leaf operSt { config "false"; - description "Interface"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Querier flags - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // This object holds mpls information that is operated at a + // interface level + container If-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type ipmcsnoop_QuerierFlags; + uses mpls_If-group; + description "MPLS Protocol Interface list"; + } + description "MPLS Protocol Interface"; } } - grouping igmpsnoop_ACtrl-group { + grouping mpls_If-group { + description "MPLS Protocol Interface"; + + leaf operSt { + config "false"; + + type mpls_OperSt; + description "Administrative State of Interface"; + } + leaf deleted { + config "false"; + type boolean; + default "true"; + description "Is this MO pending deletion"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "This object holds name information"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { + + type naming_Descr1024; description "Description"; + } - // Type is an MO-Defined-Type - type naming_Descr; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type rtctrl_RtCtrlDir; + type nw_IfAdminSt; + description "Admin State"; } - leaf rtMap { - type string; + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + grouping mplsstatic_Entity-group { + description "Root MPLS Static entity anchoring MPLS Static MOs"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping igmpsnoop_RPolicy-group { + // - Admin state + leaf adminSt { - // Route map name to control the distribution - // Type is an MO-Defined-Type - leaf rtMap { - description "Route Map Name to control the distribution"; + type nw_AdminSt; + description "Admin State"; + } - // Type is an MO-Defined-Type - type igmpsnoop_RtMapType; + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - // Target Interface (outgoing interface list) - container if-items { - list TgtIf-list { - key "id"; + // MPLS Static address family domain + container af-items { + list Af-list { + key "type"; - // Added containment: Prefix=if - // Acquired From Package igmpsnoop - uses igmpsnoop_TgtIf-group; + uses mplsstatic_Af-group; + description "MPLS Static Address Family list"; } + description "MPLS Static Address Family"; } } - grouping igmpsnoop_BD-group { + grouping mplsstatic_Af-group { + description "MPLS Static Address Family"; - // Type is an MO-Defined-Type - leaf bdid { - description "Bridge Domain Id"; + // Type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type mplsstatic_AfT; + description "Type of Address Family (IPv4, IPv6, etc.)"; } - } - grouping igmpsnoop_Gl-group { - container eventHist-items { - list EventHistory-list { - key "type"; + leaf name { - // Added containment: Prefix=eventHist - // Acquired From Package igmpsnoop - uses igmpsnoop_EventHistory-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - container igmpsnbase-items { + // Prefix local label + container pfxlabel-items { + list PfxLclLbl-list { + key "label"; - // Added containment as a singleton: Prefix=igmpsnbase - // Acquired From Package igmpsnoop - uses igmpsnoop_IgmpsnBase-group; + uses mplsstatic_PfxLclLbl-group; + description "Local Label for an IP Prefix (IPv4 or IPv6) list"; + } + description "Local Label for an IP Prefix (IPv4 or IPv6)"; } - // This objects holds traffic related snooping params - container mctraf-items { + // Named LSP + container lsp-items { + list NamedLSP-list { + key "name"; - // Added containment as a singleton: Prefix=mctraf - // Acquired From Package igmpsnoop - uses igmpsnoop_McTraf-group; + uses mplsstatic_NamedLSP-group; + description "Parent of LSPs with Names list"; + } + description "Parent of LSPs with Names"; } + } - // This objects holds IGMP snooping timers for vlan - container gTimers-items { - - // Added containment as a singleton: Prefix=gTimers - // Acquired From Package igmpsnoop - uses igmpsnoop_GTimers-group; + grouping mplsstatic_PfxLclLbl-group { + description "Local Label for an IP Prefix (IPv4 or IPv6)"; + leaf pfx { + type address_Ip; + description "Local Label Prefix/Subnet"; } - // This objects holds vlan specific IGMP snooping params - container gvlan-items { + leaf label { - // Added containment as a singleton: Prefix=gvlan - // Acquired From Package igmpsnoop - uses igmpsnoop_GVlan-group; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // This Object holds global debug - container gdebug-items { + // This object holds primary nexthop information + // for prefix local label + container nh-items { - // Added containment as a singleton: Prefix=gdebug - // Acquired From Package igmpsnoop - uses igmpsnoop_GDebug-group; + uses mplsstatic_Nh-group; + description "Next Hop Information For Prefix Local Label"; } - // This objects holds multicast router snoop params - container mrouter-items { + // This object holds auto resolve nexthop information + // for prefix local label + container autoresolvenh-items { - // Added containment as a singleton: Prefix=mrouter - // Acquired From Package igmpsnoop - uses igmpsnoop_MRouter-group; + uses mplsstatic_AutoResolveNh-group; + description "Auto-Resolved Next Hop"; } - // This objects holds multicast proxy snoop params - container proxy-items { + // This object holds backup nexthop information + // for prefix local label + container backupnh-items { - // Added containment as a singleton: Prefix=proxy - // Acquired From Package igmpsnoop - uses igmpsnoop_Proxy-group; + uses mplsstatic_BackupNh-group; + description "Backup Next Hop Information For Prefix Local Label"; } } - grouping igmpsnoop_EventHistory-group { + grouping mplsstatic_Nh-group { + description "Next Hop Information For Prefix Local Label"; - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history{rib/vpc/vlan/vlanev/mfdm/mfdm-ev}"; + leaf outLbl { - // Type is an MO-Defined-Type - type igmpsnoop_EhType; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } - - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; - - // Type is an MO-Defined-Type - type igmpsnoop_Size; + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; } } - grouping igmpsnoop_McTraf-group { + grouping mplsstatic_AutoResolveNh-group { + description "Auto-Resolved Next Hop"; - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf holddownTimer { - description "Holddown Timer"; + leaf outLbl { - // Type is an MO-Defined-Type - type mcast_HolddownTimer; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } + } - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf optMcFlood { - description "Opt multicast flood"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; - } + grouping mplsstatic_BackupNh-group { + description "Backup Next Hop Information For Prefix Local Label"; - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf manyToOneEnh { - description "Many to one enhance"; + leaf outLbl { - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + type mplsstatic_OutLabelVal; + description "Outgoing Label Value"; } - - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf vpcPeerLinkExc { - description "vpc-peer-link-exc"; - - // Type is an MO-Defined-Type - type ipmcsnoop_VpcPlExclude; + leaf nhAddr { + type address_Ip; + description "Backup Next Hop IP Address"; } - // Inherited From ipmcsnoop:AMcTraf - // Type is an MO-Defined-Type - leaf ccMode { - description "cc-mode"; + leaf if { - // Type is an MO-Defined-Type - type ipmcsnoop_CcMode; + type nw_IfId; + description "Backup Next Hop Interface"; } } - grouping igmpsnoop_GVlan-group { - - // Inherited From ipmcsnoop:AGVlan - // Type is an MO-Defined-Type - leaf disableNveStRtrPort { - description "Disable NVE Static Router port"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DisableNveStRtrPort; - } + grouping mplsstatic_NamedLSP-group { + description "Parent of LSPs with Names"; - // Inherited From ipmcsnoop:AGVlan - // Type is an MO-Defined-Type - leaf vxlan { - description "Enable IGMP snooping on all vxlan ports "; + leaf name { - // Type is an MO-Defined-Type - type ipmcsnoop_Vxlan; + type mplsstatic_LspName; + description "Name of the Parent LSP"; } - } - - grouping igmpsnoop_GDebug-group { - // Inherited From ipmcsnoop:AGDebug - // Type is an MO-Defined-Type - leaf syslogThreshold { - description " syslog threshold percentage"; + // Cross-connect local label + container xclabel-items { + list XcLclLbl-list { + key "label"; - // Type is an MO-Defined-Type - type ipmcsnoop_SyslogThrshold; + uses mplsstatic_XcLclLbl-group; + description "Local Label for Cross-Connect list"; + } + description "Local Label for Cross-Connect"; } - // Inherited From ipmcsnoop:AGDebug - // Type is an MO-Defined-Type - leaf selfMacCheck { - description "Enable IGMP snooping self-mac-check loopback"; + // Policy local label + container pollabel-items { + list PolicyLclLbl-list { + key "label"; - // Type is an MO-Defined-Type - type ipmcsnoop_SelfMacCheck; + uses mplsstatic_PolicyLclLbl-group; + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6) list"; + } + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6)"; } } - grouping igmpsnoop_InstStats-group { + grouping mplsstatic_XcLclLbl-group { + description "Local Label for Cross-Connect"; - // Total Number of multicast groups - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf totNumMcGrp { - config "false"; - description "Total Number of Multicast Groups"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_LspName; + description "Cross-Connect Label LSP Name"; } - // Invalid packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf invPktsRcvd { - config "false"; - description "Invalid Packets Received"; + leaf label { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // Loopback packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf lpbkPktsRcvd { - config "false"; - description "Loopback Packets Received"; + // This object holds primary nexthop information + // for cross-connect local label + container nh-items { + list XcNh-list { + key "pathId"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsstatic_XcNh-group; + description "Next Hop Information For Cross-Connect FECs list"; + } + description "Next Hop Information For Cross-Connect FECs"; } + } - // packets Flooded - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf pktsFlooded { - config "false"; - description "Packets Flooded"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } + grouping mplsstatic_XcNh-group { + description "Next Hop Information For Cross-Connect FECs"; - // MRD Loopback packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf mrdLpbkPktsRcvd { - config "false"; - description "MRD Loopback Packets Received"; + leaf outLblStack { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_OutLblStack; + description "Outgoing label stack"; } + leaf pathId { + type uint16; + description "Cross-Connect FEC Next Hop Path identifier"; + } + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; + } + } - // No Vlan DB packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf noVlanDbPktsRcvd { - config "false"; - description "No Vlan Db Packets Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + grouping mplsstatic_PolicyLclLbl-group { + description "Local Label for a Policy-Based Prefix (IPv4 or IPv6)"; + leaf pfx { + type address_Ip; + description "Policy-Based Local Label Prefix/Subnet"; } - // Vpc Peer packets sent - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsSent { - config "false"; - description "VPC Peer Packets Sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_LspName; + description "Policy-Based Local Label LSP Name"; } - // Vpc Peer packets received - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsRcvd { - config "false"; - description "VPC Peer Packets Received"; + leaf label { - // Type is an MO-Defined-Type - type nw_Counter32; + type mplsstatic_InLabelVal; + description "Local In Label Value"; } - // Vpc Peer packets send Fail - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsSentFail { - config "false"; - description "VPC Peer Packets Send Fail"; + // This object holds primary nexthop information + // for policy local label + container nh-items { + list PolNh-list { + key "pathId"; - // Type is an MO-Defined-Type - type nw_Counter32; + uses mplsstatic_PolNh-group; + description "Next Hop for Policy FECs list"; + } + description "Next Hop for Policy FECs"; } + } - // Vpc Peer packets receive Fail - // Inherited From ipmcsnoop:InstStats - // Type is an MO-Defined-Type - leaf vpcPeerPktsRcvdFail { - config "false"; - description "VPC Peer Packets Receive Fail"; + grouping mplsstatic_PolNh-group { + description "Next Hop for Policy FECs"; - // Type is an MO-Defined-Type - type nw_Counter32; + leaf outLblStack { + + type mplsstatic_OutLblStack; + description "Outgoing Label Stack"; + } + leaf pathId { + type uint16; + description "Policy FEC Next Hop Path Identifier"; + } + leaf nhAddr { + type address_Ip; + description "Next Hop - IP Address"; } } - grouping m6rib_Entity-group { + grouping ulib_LabelTable-group { + description "Label Table. Contains aggregate properties for allocated labels and anchors children that describe the allocated labels"; - // This objects hold per m6rib instance information - container inst-items { + leaf operLabels { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package m6rib - uses m6rib_Inst-group; + type ulib_LabelCnt; + description "Total Number of Labels"; } - } - grouping m6rib_Inst-group { + leaf operIPv4Prefixes { + config "false"; - // This object holds m6rib route db information - container db-items { - list Db-list { - config "false"; - key "type"; + type ulib_LabelCnt; + description "Total Number of IPv4 Prefixes"; + } - // Added containment: Prefix=db - // Acquired From Package m6rib - uses m6rib_Db-group; - } + leaf operIPv6Prefixes { + config "false"; + + type ulib_LabelCnt; + description "Total Number of IPv6 Prefixes"; } - // This objects hold per MRIB information - container dom-items { - list Dom-list { - config "false"; - key "name"; + leaf name { - // Added containment: Prefix=dom - // Acquired From Package m6rib - uses m6rib_Dom-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // This object holds m6rib route db information - container routedb-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=routedb - // Acquired From Package m6rib - uses m6rib_RouteDb-group; + type nw_AdminSt; + description "Admin State"; } - } - - grouping m6rib_Db-group { - // db type - // Type is an MO-Defined-Type - leaf type { + // Operational state + leaf operSt { config "false"; - description "Database type identifier"; - // Type is an MO-Defined-Type - type m6rib_DbT; + type nw_EntOperSt; + description "Operational State"; } - // This object holds m6rib client information + // Label Table Clients container client-items { - list ClntEntity-list { + list Clients-list { config "false"; key "name"; - // Added containment: Prefix=client - // Acquired From Package m6rib - uses m6rib_ClntEntity-group; + uses ulib_Clients-group; + description "Label Table Clients: other components on the same device acting as clients to the ULIB service list"; } + description "Label Table Clients: other components on the same device acting as clients to the ULIB service"; } - // This object holds m6rib memory information - container memest-items { + // Label Range + container lblrange-items { - // Added containment as a singleton: Prefix=memest - // Acquired From Package m6rib - uses m6rib_MemEstimate-group; + uses ulib_LblRange-group; + description "Allowed MPLS label ranges for dynamically allocated and statically configured labels"; } - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { + // Labels + // Ephemeral data + container lbl-items { + + // Ephemeral data + list Labels-list { config "false"; - key "name"; + key "label"; - // Added containment: Prefix=vrf - // Acquired From Package m6rib - uses m6rib_Vrf-group; + uses ulib_Labels-group; + description "A single MPLS label list"; } + description "A single MPLS label"; } } - grouping m6rib_ClntEntity-group { + grouping ulib_Clients-group { + description "Label Table Clients: other components on the same device acting as clients to the ULIB service"; + leaf name { config "false"; - type string; + + type ulib_ClientName; + description "Name of the ulib client"; } - leaf id { + leaf index { config "false"; type uint32; + description "Index of the ulib client"; } - leaf pid { + leaf uuid { config "false"; type uint32; + description "UUID of the ulib client"; } - leaf mtsSapId { + leaf mtsSap { config "false"; type uint32; + description "MTS-SAP of the client"; } - leaf shMemName { + leaf staleTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Time to wait for clients to reclaim resources before cleaning"; } - leaf notify { + + leaf flag { config "false"; - type boolean; + + type ulib_ClientFlag; + description "Internal flags for the client"; } - leaf staleTimerRunning { + leaf regMsg { config "false"; - type boolean; + type uint32; + description "Number of register messages received from the client"; } - leaf ssmOwner { + leaf convMsg { config "false"; - type boolean; + type uint32; + description "Number of convergence messages received from the client"; } - leaf bidirOwner { + leaf fecMsg { config "false"; - type boolean; + type uint32; + description "Number of FEC messages received from the client"; } - leaf staticOwner { + leaf fecAdd { config "false"; - type boolean; + type uint32; + description "Number of FECs added by the client"; } - leaf sharedOnlyOwner { + leaf ileAdd { config "false"; - type boolean; + type uint32; + description "Number of ILEs created by the client"; } - leaf localJoinOwner { + leaf fecDel { config "false"; - type boolean; + type uint32; + description "Number of FECs deleted by the client"; } - leaf externalOwner { + leaf ileDel { config "false"; - type boolean; + type uint32; + description "Number of ILEs deleted by the client"; } - leaf attachedOwner { + leaf lastXid { config "false"; - type boolean; + type uint32; + description "Last transaction id sent in a FEC transaction by the client"; } - leaf fabricOwner { + leaf fecAck { config "false"; - type boolean; + type uint32; + description "Number of FEC Acknowledgement messages sent to the client"; } + } - // MO for Client notifications - container cnotify-items { - list ClientNotify-list { - config "false"; - key "notifyName"; + grouping ulib_LblRange-group { + description "Allowed MPLS label ranges for dynamically allocated and statically configured labels"; - // Added containment: Prefix=cnotify - // Acquired From Package m6rib - uses m6rib_ClientNotify-group; - } + // Config : Dynamic Label Range + leaf dynLblMin { + + type ulib_DynLblMin; + description "Minimum dynamic label, configured value"; } - } - grouping m6rib_ClientNotify-group { - leaf notifyName { + leaf dynLblMax { + + type ulib_DynLblMax; + description "Maximum dynamic label, configured value"; + } + + // Config : Static Label Range + leaf staticLblMin { + + type ulib_LabelVal; + description "Minimum Static Label, configured value"; + } + + leaf staticLblMax { + + type ulib_LabelVal; + description "Maximum Static Label, configured value"; + } + + // Oper : Dynamic Label Range + leaf operDynLblMin { config "false"; - type string; + + type ulib_LabelVal; + description "Minimum dynamic label, operational value"; } - leaf sent { + + leaf operDynLblMax { config "false"; - type uint64; + + type ulib_LabelVal; + description "Maximum dynamic label, operational value"; } - leaf fail { + + // Oper : Static Label Range + leaf operStaticLblMin { config "false"; - type uint64; + + type ulib_LabelVal; + description "Minimum static label, operational value"; } - leaf rcvd { + + leaf operStaticLblMax { config "false"; - type uint64; + + type ulib_LabelVal; + description "Maximum static label, operational value"; } - leaf ackRcvd { + + // Fault : Static Labels Out Of Range + leaf operStaticLblsOutOfRange { config "false"; - type uint64; + + type ulib_LabelCnt; + description "Number of static labels that are no longer inside the static range due to a change in the configured ranges."; } - leaf ackSent { + } + + grouping ulib_Labels-group { + description "A single MPLS label"; + + // Ephemeral data + leaf label { + config "false"; + type uint32; + description "Label value"; + } + + // Ephemeral data + leaf fecType { + config "false"; + + type ulib_FecType; + description "Corresponding FEC type"; + } + + // Ephemeral data + leaf labelByteStats { config "false"; type uint64; + description "Sum of packet lengths in bytes for incoming packets with this label"; } - leaf ackFail { + + // Ephemeral data + leaf labelPacketStats { config "false"; type uint64; + description "Count of incoming packets with this label"; } - } - grouping m6rib_MemEstimate-group { + // IPv4 FEC + // Ephemeral data + container FecIPv4-items { - // Current maximum memory available - container currmaxgrp-items { - list CurrMaxMB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + uses ulib_FecIPv4-group; + description "Represents an MPLS IPv4 FEC"; + } - // Added containment: Prefix=currmaxgrp - // Acquired From Package m6rib - uses m6rib_CurrMaxMB-group; - } + // IPv6 FEC + // Ephemeral data + container FecIPv6-items { + + uses ulib_FecIPv6-group; + description "Represents an MPLS IPv6 FEC"; + } + + // Policy IPv4 FEC + // Ephemeral data + container FecPolicyIPv4-items { + + uses ulib_FecPolicyIPv4-group; + description "Represents a Policy MPLS IPv4 FEC"; + } + + // Policy IPv6 FEC + // Ephemeral data + container FecPolicyIPv6-items { + + uses ulib_FecPolicyIPv6-group; + description "Represents a Policy MPLS IPv6 FEC"; + } + + // None FEC + // Ephemeral data + container FecNone-items { + + uses ulib_FecNone-group; + description "Represents a 'None' FEC; a FEC that is only defined by an incoming label"; + } + + // SR-TE FEC + // Ephemeral data + container FecSRTE-items { + + uses ulib_FecSRTE-group; + description "Represents an SR-TE FEC"; + } + + // Per-CE FEC + // Ephemeral data + container FecPerCE-items { + + uses ulib_FecPerCE-group; + description "Represents a Per-CE FEC"; + } + + // Reserved FEC + // Ephemeral data + container FecReserved-items { + + uses ulib_FecReserved-group; + description "Placeholder for a reserved FEC number. This is not a real instantiated FEC."; } - // In-Use maximum memory - container inusegrp-items { - list InUseKB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + // Deagg FEC + // Ephemeral data + container FecDeagg-items { - // Added containment: Prefix=inusegrp - // Acquired From Package m6rib - uses m6rib_InUseKB-group; - } + uses ulib_FecDeagg-group; + description "Represents a Deaggregate (Per-VRF) FEC"; } - // Configured maximum memory - container configmaxgrp-items { - list ConfiguredMaxMB-list { - config "false"; - key "grpCount srcPerGrp oifPerEntry"; + // ADJ_SID FEC + // Ephemeral data + container FecAdjSID-items { - // Added containment: Prefix=configmaxgrp - // Acquired From Package m6rib - uses m6rib_ConfiguredMaxMB-group; - } + uses ulib_FecAdjSID-group; + description "Represents an Adjacency SID FEC. Used in Segment-Routing for associating a SID with an adjacency"; } - // Estimate maximum memory required - container estgrp-items { - list EstMaxMB-list { + // NHLFE + // Ephemeral data + container Nhlfe-items { + + // Ephemeral data + list Nhlfe-list { config "false"; - key "grpCount srcPerGrp oifPerEntry"; + key "idx"; - // Added containment: Prefix=estgrp - // Acquired From Package m6rib - uses m6rib_EstMaxMB-group; + uses ulib_Nhlfe-group; + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding list"; } + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding"; } } - grouping m6rib_CurrMaxMB-group { - leaf max { - config "false"; - type uint64; - } - leaf grpCount { + grouping ulib_FecIPv4-group { + description "Represents an MPLS IPv4 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf srcPerGrp { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf oifPerEntry { + + // Ephemeral data + leaf tableId { config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - } - grouping m6rib_InUseKB-group { - leaf max { + // Ephemeral data + leaf prefix { config "false"; - type uint64; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf grpCount { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf srcPerGrp { + } + + grouping ulib_FecIPv6-group { + description "Represents an MPLS IPv6 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf oifPerEntry { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - } - grouping m6rib_ConfiguredMaxMB-group { - leaf max { + // Ephemeral data + leaf tableId { config "false"; - type uint64; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf grpCount { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf srcPerGrp { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf oifPerEntry { + } + + grouping ulib_FecPolicyIPv4-group { + description "Represents a Policy MPLS IPv4 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - } - grouping m6rib_EstMaxMB-group { - leaf max { + // Ephemeral data + leaf state { config "false"; - type uint64; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf grpCount { + + // Ephemeral data + leaf tableId { config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf srcPerGrp { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf oifPerEntry { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } } - grouping m6rib_Vrf-group { - leaf name { + grouping ulib_FecPolicyIPv6-group { + description "Represents a Policy MPLS IPv6 FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type string; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf cid { + + // Ephemeral data + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } + + // Ephemeral data leaf tableId { config "false"; - type string; - } - leaf totalNumRoutes { - config "false"; - type uint32; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf totalNumGroups { + + // Ephemeral data + leaf prefix { config "false"; - type uint32; + type address_Ip; + description "Forwarding Equivalence Class (FEC) IP Prefix"; } - leaf starGRoute { + + // Ephemeral data + leaf maskLength { config "false"; - type uint32; + type uint8; + description "Forwarding Equivalence Class (FEC) IP Mask Length"; } - leaf sgRoute { + } + + grouping ulib_FecNone-group { + description "Represents a 'None' FEC; a FEC that is only defined by an incoming label"; + + // Ephemeral data + leaf label { config "false"; type uint32; + description "None - Forwarding Equivalence Class (FEC) MPLS Label"; } - leaf starGPrfx { + + // Ephemeral data + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "None - Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib route group information - container group-items { - list Group-list { - config "false"; - key "grpAddr"; + // Ephemeral data + leaf state { + config "false"; - // Added containment: Prefix=group - // Acquired From Package m6rib - uses m6rib_Group-group; - } + type ulib_FecState; + description "None - Forwarding Equivalence Class (FEC) State"; } } - grouping m6rib_Group-group { - leaf grpAddr { - config "false"; - type address_Ip; - } - leaf grpMasklen { + grouping ulib_FecSRTE-group { + description "Represents an SR-TE FEC"; + + // Ephemeral data + leaf id { config "false"; type uint32; + description "SRTE - Forwarding Equivalence Class (FEC) Identifier"; } - leaf bidir { + + // Ephemeral data + leaf fecType { config "false"; - type boolean; + + type ulib_FecType; + description "SRTE - Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib route source information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + // Ephemeral data + leaf state { + config "false"; - // Added containment: Prefix=source - // Acquired From Package m6rib - uses m6rib_Source-group; - } + type ulib_FecState; + description "SRTE - Forwarding Equivalence Class (FEC) State"; } } - grouping m6rib_Source-group { - leaf srcAddr { - config "false"; - type address_Ip; - } - leaf pending { - config "false"; - type boolean; - } - leaf uptime { + grouping ulib_FecPerCE-group { + description "Represents a Per-CE FEC"; + + // Ephemeral data + leaf nextHopSet { config "false"; - type string; + type uint32; + description "Per-CE Forwarding Equivalence Class (FEC) Next-Hop Set Id"; } - leaf oifcount { + + // Ephemeral data + leaf addressFamily { config "false"; - type uint32; + + type ulib_EphemeralAddressFamily; + description "Per-CE Forwarding Equivalence Class (FEC) Address Family"; } - leaf statsPkts { + + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf statsBytes { + + leaf state { config "false"; - type uint32; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf statsRateBuf { + + leaf tableId { config "false"; - type string; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf lispSrcRloc { + } + + grouping ulib_FecReserved-group { + description "Placeholder for a reserved FEC number. This is not a real instantiated FEC."; + + // Ephemeral data + leaf fecType { config "false"; - type string; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf routeIif { + + // Ephemeral data + leaf state { config "false"; - type string; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf rpfNbr { + + // Ephemeral data + leaf tableId { config "false"; - type address_Ip; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf internal { + } + + grouping ulib_FecDeagg-group { + description "Represents a Deaggregate (Per-VRF) FEC"; + + // Ephemeral data + leaf fecType { config "false"; - type boolean; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - leaf rpfNbrUptime { + + // Ephemeral data + leaf state { config "false"; - type string; + + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - leaf fabricOif { + + // Ephemeral data + leaf tableId { config "false"; - type boolean; + + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } - leaf fabricLoser { + } + + grouping ulib_FecAdjSID-group { + description "Represents an Adjacency SID FEC. Used in Segment-Routing for associating a SID with an adjacency"; + + // Ephemeral data + leaf ifIndex { config "false"; - type boolean; + type uint32; + description "Adjacency SID Forwarding Equivalence Class (FEC) Interface Index"; } - leaf numVpcSviOifs { + + // Ephemeral data + leaf appId { config "false"; type uint32; + description "Adjacency SID Forwarding Equivalence Class (FEC) Application Id"; } - leaf routeMdtIod { + + // Ephemeral data + leaf nextHop { config "false"; - type boolean; + type address_Ip; + description "Adjacency SID Forwarding Equivalence Class (FEC) Next-hop IP Address"; } - leaf mdtEncapIndex { + + leaf fecType { config "false"; - type uint32; + + type ulib_FecType; + description "Forwarding Equivalence Class (FEC) Type"; } - // This object holds m6rib mpib information - container mpib-items { - list Mpib-list { - config "false"; - key "mpibName"; + leaf state { + config "false"; - // Added containment: Prefix=mpib - // Acquired From Package m6rib - uses m6rib_Mpib-group; - } + type ulib_FecState; + description "Forwarding Equivalence Class (FEC) State"; } - // This object holds m6rib OIF information - container oif-items { - list Oif-list { - config "false"; - key "oifName"; + leaf tableId { + config "false"; - // Added containment: Prefix=oif - // Acquired From Package m6rib - uses m6rib_Oif-group; - } + type ulib_TableId; + description "Forwarding Equivalence Class (FEC) Table ID"; } } - grouping m6rib_Mpib-group { - leaf mpibName { + grouping ulib_Nhlfe-group { + description "Represents an NHLFE entry on a FEC, describing the outgoing information needed for forwarding"; + + // Ephemeral data + leaf idx { config "false"; - type string; + type uint32; + description "Next Hop Label Forwarding Entry (NHLFE) Index"; } - leaf oifCount { + + // Ephemeral data + leaf ip { config "false"; - type uint32; + type address_Ip; + description "Next Hop Label Forwarding Entry (NHLFE) IP address"; } - leaf staleRoute { + + // Ephemeral data + leaf outLabel { config "false"; - type boolean; + + type ulib_OutLblStack; + description "Next Hop Label Forwarding Entry (NHLFE) Outgoing MPLS label"; } - } - grouping m6rib_Oif-group { - leaf oifName { + // Ephemeral data + leaf interface { config "false"; - type string; + + type ulib_InterfaceStr; + description "Next Hop Label Forwarding Entry (NHLFE) Outgoing Interface"; } - leaf oifUptime { + + // Ephemeral data + leaf outLabelByteStats { config "false"; - type string; + type uint64; + description "Sum of packet lengths in bytes for packets traversing this NHLFE"; } - leaf oifRPF { + + // Ephemeral data + leaf outLabelPacketStats { config "false"; - type boolean; + type uint64; + description "Count of outgoing packets traversing this NHLFE"; } - leaf oifLispEncapEntries { + leaf weight { config "false"; type uint32; + description "Weight of Nexthop Element"; } + } - // This object holds lisp encap information - container lispencap-items { - list LispEncap-list { - config "false"; - key "index"; + grouping mrib_Entity-group { + description "Holds MRIB entity information"; - // Added containment: Prefix=lispencap - // Acquired From Package m6rib - uses m6rib_LispEncap-group; - } + // This objects hold per mrib instance information + container inst-items { + + uses mrib_Inst-group; + description "Holds per MRIB instance information"; } + } - // This object holds m6rib OIF MPIB information - container oifmpib-items { - list OifMpib-list { - config "false"; - key "oifMpibName"; + grouping mrib_Inst-group { + description "Holds per MRIB instance information"; - // Added containment: Prefix=oifmpib - // Acquired From Package m6rib - uses m6rib_OifMpib-group; + // This objects hold per MRIB information + container dom-items { + list Dom-list { + key "name"; + + uses mrib_Dom-group; + description "This objects holds MRIB vrf domain level information list"; } + description "This objects holds MRIB vrf domain level information"; } - } - grouping m6rib_LispEncap-group { - leaf index { - config "false"; - type uint32; - } - leaf srcRloc { - config "false"; - type address_Ip; - } - leaf dstRloc { - config "false"; - type address_Ip; - } - } + container loglevel-items { - grouping m6rib_OifMpib-group { - leaf oifMpibName { - config "false"; - type string; - } - leaf staleOif { - config "false"; - type boolean; + uses mrib_LogLevel-group; + description "Configure logging level"; } - leaf vpcSvi { - config "false"; - type boolean; + + // This object holds mrib route db information + // Ephemeral data + container routeDb-items { + + uses mrib_RouteDb-group; + description "This object holds MRIB route database information"; } } - grouping m6rib_Dom-group { + grouping mrib_Dom-group { + description "This objects holds MRIB vrf domain level information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - config "false"; - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; + description "Domain Controls"; } // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf mtu { - config "false"; - description "Maximum Transmission Unit"; - // Type is an MO-Defined-Type type rtdmc_Mtu; + description "Maximum Transmission Unit"; } // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf autoEnable { - config "false"; - description "Auto Enable"; - // Type is an MO-Defined-Type type rtdmc_AutoEnable; + description "Auto Enable"; } leaf logNbhChng { - config "false"; type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { - config "false"; type boolean; + description "Flush Routes"; } leaf bfd { - config "false"; type boolean; + description "BFD"; } - // This object holds m6rib config information - container config-items { + leaf jpDelay { - // Added containment as a singleton: Prefix=config - // Acquired From Package m6rib - uses m6rib_Config-group; + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; } - // This object holds m6rib rpf-meter config information - container rpfmeter-items { + leaf regRateLmt { - // Added containment as a singleton: Prefix=rpfmeter - // Acquired From Package m6rib - uses m6rib_RpfMeter-group; + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } - // This object holds m6rib last-hop-meter config information - container lasthopmeter-items { + // This object holds mrib config information + container config-items { - // Added containment as a singleton: Prefix=lasthopmeter - // Acquired From Package m6rib - uses m6rib_LastHopMeter-group; + uses mrib_Config-group; + description "Holds MRIB config information"; } - container eventhist-items { + container eventHist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package m6rib - uses m6rib_EventHistory-group; + uses mrib_EventHistory-group; + description "Configure event-history buffers list"; } + description "Configure event-history buffers"; } + container rpfselect-items { + list RpfSelect-list { + key "vrfName srcPfx"; - // This object holds m6rib Notify information - container loglevel-items { - - // Added containment as a singleton: Prefix=loglevel - // Acquired From Package m6rib - uses m6rib_LogLevel-group; + uses mrib_RpfSelect-group; + description "Configure IP multicast RPF select configuration list"; + } + description "Configure IP multicast RPF select configuration"; } - // This object holds m6rib Notify information - container notify-items { + // This object holds global config for mrib + container trace-items { - // Added containment as a singleton: Prefix=notify - // Acquired From Package m6rib - uses m6rib_Notify-group; + uses mrib_Trace-group; + description "This object holds global configuration for Bintrace"; } } - grouping m6rib_Config-group { + grouping mrib_Config-group { + description "Holds MRIB config information"; // Holddown Enable - // Type is an MO-Defined-Type leaf holdEnable { - description "Holddown Enable"; - // Type is an MO-Defined-Type - type m6rib_HoldAdminSt; + type mrib_HoldAdminSt; + description "Holddown Enable"; } // Holddown second - // Type is an MO-Defined-Type leaf holddown { - description "holddown second"; - // Type is an MO-Defined-Type - type m6rib_HoldDownType; - } - leaf compressBit { - type boolean; + type mrib_HoldDownType; + description "holddown second"; } - } - grouping m6rib_RpfMeter-group { - leaf hwDropAll { - type boolean; + // Mode Enable + leaf ModeEnable { + + type mrib_ModeAdminSt; + description "Mode Enable"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf kbps { - description "rpf-meter in killobytes/seconds"; + // Multipath Mode + leaf Mode { - // Type is an MO-Defined-Type - type m6rib_Kbps; + type mrib_MultipathMode; + description "MRIB Multipath Mode"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf burstSize { - description "rpf-meter in killobytes"; + // Multipath Resilient + leaf modeResilient { - // Type is an MO-Defined-Type - type m6rib_BurstSize; + type mrib_ResilientType; + description "MRIB Multipath Resilient"; } - } - grouping m6rib_LastHopMeter-group { - - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf kbps { - description "rpf-meter in killobytes/seconds"; + // Mfdm-buffer-route type + leaf mfdmType { - // Type is an MO-Defined-Type - type m6rib_Kbps; + type mrib_MfdmType; + description "Mfdm buffer route type"; } - // Inherited From m6rib:AMeterConfig - // Type is an MO-Defined-Type - leaf burstSize { - description "rpf-meter in killobytes"; + // Mfdm-buffer-route-count size + leaf mfdmSize { - // Type is an MO-Defined-Type - type m6rib_BurstSize; + type mrib_MfdmSize; + description "Mfdm buffer route size"; } } - grouping m6rib_EventHistory-group { + grouping mrib_EventHistory-group { + description "Configure event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type - type m6rib_EhType; + type mrib_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { + + type mrib_Size; description "configures buffer size in text/kb"; + } + } - // Type is an MO-Defined-Type - type m6rib_Size; + grouping mrib_RpfSelect-group { + description "Configure IP multicast RPF select configuration"; + leaf srcPfx { + type address_Ip; + description "Source IP prefix address"; + } + + // Vrf name + leaf vrfName { + + type l3_VrfName; + description "Vrf Name for RPF check"; } } - grouping m6rib_LogLevel-group { + grouping mrib_Trace-group { + description "This object holds global configuration for Bintrace"; + leaf traceEnable { + type boolean; + description "Configure multicast and enable bintrace"; + } - // logging leve - // Type is an MO-Defined-Type - leaf level { - description "Logging Level"; + // trace entries + leaf traceEntryCnt { - // Type is an MO-Defined-Type - type m6rib_LogLevel; + type mrib_TraceCountType; + description "Update number of bintrace entries"; } - leaf type { - type string; + + // trace records + leaf traceRecCnt { + + type mrib_TraceCountType; + description "Update number of bintrace record per entry"; } } - grouping m6rib_Notify-group { + grouping mrib_LogLevel-group { + description "Configure logging level"; - // Notify interval - // Type is an MO-Defined-Type - leaf interval { - description "Notify Interval"; + leaf type { - // Type is an MO-Defined-Type - type m6rib_Interval; + type mrib_LogType; + description "Configures logging type"; + } + + leaf level { + + type mrib_LvlType; + description "Configures level values from 0-7"; } } - grouping m6rib_RouteDb-group { + grouping mrib_RouteDb-group { + description "This object holds MRIB route database information"; // This objects hold per pim domain (vrf) information + // Ephemeral data container vrf-items { + + // Ephemeral data list Vrf-list { config "false"; key "name"; - // Added containment: Prefix=vrf - // Acquired From Package m6rib - uses m6rib_Vrf-group; + uses mrib_Vrf-group; + description "This object holds per MRIB domain (vrf) information list"; } + description "This object holds per MRIB domain (vrf) information"; } } - grouping macsec_Entity-group { + grouping mrib_Vrf-group { + description "This object holds per MRIB domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + config "false"; + type string; + description "Vrf Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf totalNumRoutes { + config "false"; + type uint32; + description "Total Number of Routes"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf starGRoute { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type uint32; + description "Star G Count"; } - // This objects hold per macsec instance information. There is - // only one instance of macsec running in the system today - container inst-items { + // Ephemeral data + leaf sgRoute { + config "false"; + type uint32; + description "SG Count"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package macsec - uses macsec_Inst-group; + // Ephemeral data + leaf starGPrfx { + config "false"; + type uint32; + description "Star G Prefix"; } - } - grouping macsec_Inst-group { + // This object holds mrib route group information + // Ephemeral data + container group-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mrib_Group-group; + description "Holds MRIB route group information list"; } + description "Holds MRIB route group information"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping mrib_Group-group { + description "Holds MRIB route group information"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group Address"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf grpMasklen { + config "false"; + type uint32; + description "Group Mask Length"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf bidir { + config "false"; + type boolean; + description "Bidirectional flag"; } - } - grouping mcastfwd_Entity-group { + // This object holds mrib route source information + // Ephemeral data + container source-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses mrib_Source-group; + description "This object holds MRIB route source information list"; } + description "This object holds MRIB route source information"; } + } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping mrib_Source-group { + description "This object holds MRIB route source information"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf srcAddr { + config "false"; + type address_Ip; + description "Source Address"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf pending { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; + type boolean; + description "Pending flag"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { + // Ephemeral data + leaf uptime { config "false"; - description "Operational Errors Qualifier"; + type union { + type string; + type uint64; + } + description "Uptime"; + } - // Type is an MO-Defined-Type - type nw_OperErrQual; + // Ephemeral data + leaf oifcount { + config "false"; + type uint32; + description "OIF Count"; } - // This objects hold per mcastfwd instance information. There is only - // one instance of mcastfwd running in the system today - container inst-items { + // Ephemeral data + leaf statsPkts { + config "false"; + type uint32; + description "Statistics packets"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package mcastfwd - uses mcastfwd_Inst-group; + // Ephemeral data + leaf statsBytes { + config "false"; + type uint32; + description "Statistics Bytes"; } - } - grouping mcastfwd_Inst-group { + // Ephemeral data + leaf statsRateBuf { + config "false"; + type string; + description "Statistics Rate Buffer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf lispSrcRloc { + config "false"; + type string; + description "lisp source rloc"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf routeIif { + config "false"; + type string; + description "Route Incoming Interface"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf rpfNbr { + config "false"; + type string; + description "RPF Neighbor"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf internal { + config "false"; + type boolean; + description "Internal"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf rpfNbrUptime { + config "false"; + type union { + type string; + type uint64; + } + description "uptime of RPF neighbor"; + } - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf fabricOif { + config "false"; + type boolean; + description "Fabric OIF"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { + // Ephemeral data + leaf fabricLoser { config "false"; - description "Operational Errors Qualifier"; + type boolean; + description "Fabric Loser"; + } - // Type is an MO-Defined-Type - type nw_OperErrQual; + // Ephemeral data + leaf numVpcSviOifs { + config "false"; + type uint32; + description "Number of vpc svi OIFs"; } - // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf jpDelay { - description "Inter Packet Delay"; + // Ephemeral data + leaf routeMdtIod { + config "false"; + type boolean; + description "Route MDT IOD"; + } - // Type is an MO-Defined-Type - type rtdmc_JPDelay; + // Ephemeral data + leaf mdtEncapIndex { + config "false"; + type uint32; + description "MDT Encap Index"; } - // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf nrDelay { - description "Null Register Inter Batch Delay"; + // This object holds mrib mpib information + // Ephemeral data + container mpib-items { - // Type is an MO-Defined-Type - type rtdmc_NRDelay; + // Ephemeral data + list Mpib-list { + config "false"; + key "mpibName"; + + uses mrib_Mpib-group; + description "This object holds MPIB information list"; + } + description "This object holds MPIB information"; } - // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf nrNumRt { - description "Null Register Number of Routes"; + // This object holds mrib OIF information + // Ephemeral data + container oif-items { - // Type is an MO-Defined-Type - type rtdmc_NRNumRt; - } - leaf regStop { - type boolean; + // Ephemeral data + list Oif-list { + config "false"; + key "oifName"; + + uses mrib_Oif-group; + description "This object holds MRIB OIF information list"; + } + description "This object holds MRIB OIF information"; } + } - // This objects hold per igmp domain information - container dom-items { + grouping mrib_Mpib-group { + description "This object holds MPIB information"; - // Added containment as a singleton: Prefix=dom - // Acquired From Package mcastfwd - uses mcastfwd_Dom-group; + // Ephemeral data + leaf mpibName { + config "false"; + type string; + description "MPIB name"; } - container eventhist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package mcastfwd - uses mcastfwd_EventHistory-group; - } + // Ephemeral data + leaf oifCount { + config "false"; + type uint32; + description "OIF count"; + } + + // Ephemeral data + leaf staleRoute { + config "false"; + type boolean; + description "Stale Route"; } } - grouping mcastfwd_Dom-group { + grouping mrib_Oif-group { + description "This object holds MRIB OIF information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + leaf oifName { + config "false"; + type string; + description "OIF name"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Ephemeral data + leaf oifUptime { + config "false"; + type union { + type string; + type uint64; } + description "OIF Uptime"; } - // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + leaf oifRPF { + config "false"; + type boolean; + description "OIF RPF"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf oifLispEncapEntries { + config "false"; + type uint32; + description "Lisp Encap Entries Count"; } - // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf ctrl { - description "Domain Controls"; + // This object holds lisp encap information + // Ephemeral data + container lispEncap-items { - // Type is an MO-Defined-Type - type rtdmc_DomCtrl; + // Ephemeral data + list LispEncap-list { + config "false"; + key "index"; + + uses mrib_LispEncap-group; + description "This object holds Lisp Encapsulation information list"; + } + description "This object holds Lisp Encapsulation information"; } - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - description "Maximum Transmission Unit"; + // This object holds mrib OIF MPIB information + // Ephemeral data + container oifMpib-items { - // Type is an MO-Defined-Type - type rtdmc_Mtu; + // Ephemeral data + list OifMpib-list { + config "false"; + key "oifMpibName"; + + uses mrib_OifMpib-group; + description "This object holds MRIB OIF MPIB information list"; + } + description "This object holds MRIB OIF MPIB information"; } + } - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - description "Auto Enable"; + grouping mrib_LispEncap-group { + description "This object holds Lisp Encapsulation information"; - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; - } - leaf logNbhChng { - type boolean; + // Ephemeral data + leaf index { + config "false"; + type uint32; + description "Lisp Encap Index"; } - leaf flushRoutes { - type boolean; + + // Ephemeral data + leaf srcRloc { + config "false"; + type address_Ip; + description "Source remote location"; } - leaf bfd { - type boolean; + + // Ephemeral data + leaf dstRloc { + config "false"; + type address_Ip; + description "Destination remote location"; } } - grouping mcastfwd_EventHistory-group { - - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + grouping mrib_OifMpib-group { + description "This object holds MRIB OIF MPIB information"; - // Type is an MO-Defined-Type - type mcastfwd_EhType; + // Ephemeral data + leaf oifMpibName { + config "false"; + type string; + description "OIF MPIB name"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text/kb"; + // Ephemeral data + leaf staleOif { + config "false"; + type boolean; + description "Flag indicating if OIF is Stale"; + } - // Type is an MO-Defined-Type - type mcastfwd_Size; + // Ephemeral data + leaf VpcSvi { + config "false"; + type boolean; + description "Flag indicating VPC SVI"; } } - grouping mldsnoop_Entity-group { + grouping msdp_Entity-group { + description "Holds MSDP control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per mld instance information. There is only - // one instance of mld running in the system today + // This objects hold per MSDP instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package mldsnoop - uses mldsnoop_Inst-group; + uses msdp_Inst-group; + description "Holds per MSDP instance information"; } } - grouping mldsnoop_Inst-group { + grouping msdp_Inst-group { + description "Holds per MSDP instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - config "false"; - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } - // All router multicast group address (GIPo), outer multicast - // encapsulation ip address - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf allRtrMcastEncap { - config "false"; - description "All Router Multicast Encapsulation"; + // This objects hold per domain (vrf) MSDP information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type mcast_GrpIp; + uses msdp_Dom-group; + description "Holds per domain (vrf) MSDP information list"; + } + description "Holds per domain (vrf) MSDP information"; } - // Flags - // Inherited From ipmcsnoop:Inst - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + container loglevel-items { - // Type is an MO-Defined-Type - type ipmcsnoop_InstFlags; + uses msdp_LogLevel-group; + description "Configure logging level"; } + } - // This objects hold per mld snooping domain information - container dom-items { - list Dom-list { - config "false"; - key "encap"; + grouping msdp_Dom-group { + description "Holds per domain (vrf) MSDP information"; - // Added containment: Prefix=dom - // Acquired From Package mldsnoop - uses mldsnoop_Dom-group; - } + leaf origIf { + + type nw_IfId; + description "Originator Interface identifying IP address in RP field of Source-Active message. Supported interfaces include Ethernet-like, port/channel, loopback and vlan interfaces"; } - // This objects hold per Instance statistics operational - // information. This is a singleton within Instance - container inststats-items { + leaf srcActiveMsgIntvl { - // Added containment as a singleton: Prefix=inststats - // Acquired From Package mldsnoop - uses mldsnoop_InstStats-group; + type msdp_SrcActiveMsgIntvl; + description "Source Active message Interval"; } - } - grouping mldsnoop_Dom-group { + leaf reConnIntvl { + + type msdp_ReConnIntvl; + description "Reconnect Interval"; + } + + leaf ctrl { + + type msdp_DomCtrl; + description "Flush routes"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Modified by Override: ipmcsnoop:Dom->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Id for this domain @@@ This comes from the domain id assigned by the - // PE for the bridge domain - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // msdp databases + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type l2_DomId; + // Ephemeral data + list Db-list { + config "false"; + key "type"; + + uses msdp_Db-group; + description "Holds information about MSDP Database list"; + } + description "Holds information about MSDP Database"; } - leaf encap { - config "false"; - type string; + + // This object holds group limt and source range info + container maxgrp-items { + list MaxGrpP-list { + key "srcPfx"; + + uses msdp_MaxGrpP-group; + description "Holds group limit and source range information list"; + } + description "Holds group limit and source range information"; } + container eventHist-items { + list EventHistory-list { + key "type"; - // Admin State - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + uses msdp_EventHistory-group; + description "Configure event-history buffers list"; + } + description "Configure event-history buffers"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // This object holds MSDP information pertaining to a peer + container peer-items { + list Peer-list { + key "addr"; + + uses msdp_Peer-group; + description "Holds MSDP information pertaining to a peer list"; + } + description "Holds MSDP information pertaining to a peer"; } - // Controls - // Inherited From ipmcsnoop:Dom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + container interleakp-items { - // Type is an MO-Defined-Type - type ipmcsnoop_DomControl; + uses msdp_InterLeakP-group; + description "Holds information of Redistribution policy"; } + } - // Flags - // Inherited From ipmcsnoop:Dom - // Modified by Override: mldsnoop:Dom->flags - // Type is an MO-Defined-Type - leaf flags { + grouping msdp_Db-group { + description "Holds information about MSDP Database"; + + // Type of the repository + // Ephemeral data + leaf type { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmcsnoop_DomFlags; + type msdp_DbT; + description "Indicates different database type for different show command"; } - // IGMP database - container db-items { - list Db-list { - config "false"; - key "type"; + // Ephemeral data + leaf name { + config "false"; - // Added containment: Prefix=db - // Acquired From Package mldsnoop - uses mldsnoop_Db-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // This objects hold per mld domain statistics operational - // information. This is a singleton within a Dom - container domstats-items { - - // Added containment as a singleton: Prefix=domstats - // Acquired From Package mldsnoop - uses mldsnoop_DomStats-group; - } + // This object holds the MSDP SA-Cache related information + // Ephemeral data + container src-items { - // Multicast router if that is configured statically - container strtrif-items { - list StRtrIf-list { + // Ephemeral data + list Route-list { config "false"; - key "id"; + key "src grp rp"; - // Added containment: Prefix=strtrif - // Acquired From Package mldsnoop - uses mldsnoop_StRtrIf-group; + uses msdp_Route-group; + description "Holds the MSDP SA-Cache related information list"; } + description "Holds the MSDP SA-Cache related information"; } - // Multicast router if @@@ Mulitcast router if in the BD. These can be either - // configured by the admin or discovered through protocols - // like PIM, IGMP, MLD - container rtrif-items { - list RtrIf-list { + // This class holds information of learnt sources + // Ephemeral data + container source-items { + + // Ephemeral data + list Source-list { config "false"; - key "id"; + key "addr"; - // Added containment: Prefix=rtrif - // Acquired From Package mldsnoop - uses mldsnoop_RtrIf-group; + uses msdp_Source-group; + description "Holds information of MSDP sources list"; } + description "Holds information of MSDP sources"; } + } - // Querier policy - container querierp-items { + grouping msdp_Route-group { + description "Holds the MSDP SA-Cache related information"; - // Added containment as a singleton: Prefix=querierp - // Acquired From Package mldsnoop - uses mldsnoop_QuerierP-group; + // Ephemeral data + leaf src { + config "false"; + type address_Ip; + description "Source Address"; } - // Querier state - container querierst-items { + // Ephemeral data + leaf grp { + config "false"; + type address_Ip; + description "Group Address"; + } - // Added containment as a singleton: Prefix=querierst - // Acquired From Package mldsnoop - uses mldsnoop_QuerierSt-group; + // Ephemeral data + leaf rp { + config "false"; + type address_Ip; + description "RP Address"; } - } - grouping mldsnoop_Db-group { + // Ephemeral data + leaf peer { + config "false"; + type address_Ip; + description "IP address of MSDP Peer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf asn { config "false"; - description "Name"; + type string; + description "AS Number"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // Ephemeral data + leaf createTs { + config "false"; + type union { + type string; + type uint64; } + description "Creation timestamp of the entry"; } - // Type of the repository - // Inherited From ipmcsnoop:Db - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf expireTs { config "false"; - description "Database Type"; - - // Type is an MO-Defined-Type - type ipmcsnoop_DbT; + type union { + type string; + type uint64; + } + description "Expiry timestamp of the entry"; } - leaf totalMacCount { + + // Ephemeral data + leaf saCnt { config "false"; type uint32; + description "Source-Active Message Request Count"; } - // Multicast Group records - container mcgrp-items { - list McGrpRec-list { - config "false"; - key "addr"; - - // Added containment: Prefix=mcgrp - // Acquired From Package mldsnoop - uses mldsnoop_McGrpRec-group; - } + // Ephemeral data + leaf dataPkt { + config "false"; + type uint32; + description "Count of data packets forwarded"; } } - grouping mldsnoop_McGrpRec-group { + grouping msdp_Source-group { + description "Holds information of MSDP sources"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf addr { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type address_Ip; + description "Source Address"; } - // Group address - // Inherited From ipmcsnoop:McGrpRec - // Type is an MO-Defined-Type - leaf addr { + // Ephemeral data + leaf grpCnt { config "false"; - description "Multicast Group Address"; - - // Type is an MO-Defined-Type - type mcast_GrpIp; + type uint32; + description "Number of groups learnt"; } - // Version - // Inherited From ipmcsnoop:McGrpRec - // Modified by Override: mldsnoop:McGrpRec->ver - // Type is an MO-Defined-Type - leaf ver { + // Ephemeral data + leaf grpLimit { config "false"; - description "Version"; + type uint32; + description "Configured group limit"; + } - // Type is an MO-Defined-Type - type mcast_Ver; + // Ephemeral data + leaf srcPfx { + config "false"; + type address_Ip; + description "Source prefix of the corresponding group limit"; } - // EPG entries in mcast group record - container epg-items { - list EpgRec-list { - config "false"; - key "fabEncap"; + // Ephemeral data + leaf violations { + config "false"; + type uint32; + description "Source group exceeds the maximum group limit configured."; + } + } - // Added containment: Prefix=epg - // Acquired From Package mldsnoop - uses mldsnoop_EpgRec-group; - } + grouping msdp_MaxGrpP-group { + description "Holds group limit and source range information"; + leaf srcPfx { + type address_Ip; + description "Source prefix"; } - // MLD report record snooped by mld-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf maxGrp { - // Added containment: Prefix=rep - // Acquired From Package mldsnoop - uses mldsnoop_ReportRec-group; - } + type msdp_MaxGrpLimit; + description "Max Group count"; } - } - - grouping mldsnoop_EpgRec-group { - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - leaf fabEncap { - config "false"; - type string; + + leaf descr { + + type naming_Descr; + description "Description of the specified attribute"; } + } - // Epg id, identified using the circuit endpoint - // id in the system - // Inherited From ipmcsnoop:EpgRec - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Endpoint Group ID"; + grouping msdp_EventHistory-group { + description "Configure event-history buffers"; - // Type is an MO-Defined-Type - type l2_DomId; + leaf type { + + type msdp_EhType; + description "configures type of event history"; } - // MLD report record snooped by mld-snoop application - container rep-items { - list ReportRec-list { - config "false"; - key "mcastSrc ver"; + leaf size { - // Added containment: Prefix=rep - // Acquired From Package mldsnoop - uses mldsnoop_ReportRec-group; - } + type msdp_Size; + description "configures buffer size in text/kb"; } } - grouping mldsnoop_ReportRec-group { + grouping msdp_Peer-group { + description "Holds MSDP information pertaining to a peer"; + leaf addr { + type address_Ip; + description "IP address of MSDP Peer"; + } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Administrative state up/down + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Administrative state enabled/disabled"; } - // Multicast traffic source - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf mcastSrc { - config "false"; - description "Multicast Source Address"; + // source interface + leaf srcIf { - // Type is an MO-Defined-Type - type ipmcsnoop_McastSrc; + type nw_IfId; + description "Source Interface. Supported interfaces include Ethernet-like, port/channel, loopback and vlan interfaces"; } - // Version - // Inherited From ipmcsnoop:ReportRec - // Modified by Override: mldsnoop:ReportRec->ver - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; + // Remote ASN + leaf asn { - // Type is an MO-Defined-Type - type mcast_Ver; + type msdp_Asn; + description "Autonomous System Number"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf filtMode { - config "false"; - description "Filter Mode"; + // sa-limit + leaf srcActiveMsgLimit { - // Type is an MO-Defined-Type - type mcast_FiltMode; + type msdp_SrcActiveMsgLimit; + description "Source Active msg Limit"; } - // Filter mode - // Inherited From ipmcsnoop:ReportRec - // Type is an MO-Defined-Type - leaf flags { - config "false"; - description "Flags"; + // Keepalive interval, how often you send keepalives + leaf kaIntvl { - // Type is an MO-Defined-Type - type ipmcsnoop_RepFlags; + type msdp_KaIntvl; + description "Keepalive interval, how often you send keepalives"; } - // OIF list (outgoing interface list) - container oif-items { - list OIFRec-list { - config "false"; - key "id"; + // Keepalive timeout + leaf kaTimeout { - // Added containment: Prefix=oif - // Acquired From Package mldsnoop - uses mldsnoop_OIFRec-group; - } + type msdp_KaTimeout; + description "Keepalive Timeout"; } - } - grouping mldsnoop_OIFRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Operationsl state + leaf operSt { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type msdp_OperSt; + description "Operational Status"; } - // Multicast traffic source - // Inherited From ipmcsnoop:OIFRec - // Type is an MO-Defined-Type - leaf id { + // Remote port of TCP connection to this peer + leaf remPort { config "false"; - description "ID"; - // Type is an MO-Defined-Type - type nw_IfId; + type l4_Port; + description "Remote TCP connection port to this peer"; } - // Host Record List (Used for Explicit Host Tracking) - container host-items { - list HostRec-list { - config "false"; - key "addr"; + // Local port of TCP connection to this peer + leaf localPort { + config "false"; - // Added containment: Prefix=host - // Acquired From Package mldsnoop - uses mldsnoop_HostRec-group; - } + type l4_Port; + description "Local TCP connection port to this peer"; } - } - grouping mldsnoop_HostRec-group { - - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type - leaf name { + // Reason for last reset + leaf lastResetOperQual { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type msdp_LastResetT; + description "Reason for last reset"; + } + leaf discontinuityTs { + config "false"; + type union { + type string; + type uint64; } + description "Discontinuity Time"; } - leaf addr { + leaf upTs { config "false"; - type address_Ip; + type union { + type string; + type uint64; + } + description "Uptime"; } - } - - grouping mldsnoop_DomStats-group; - - grouping mldsnoop_StRtrIf-group { - - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + leaf connTmrTs { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type union { + type string; + type uint64; } + description "Connect Timer Timestamp"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { + // Count of established transitions + leaf establishTransitions { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_Counter32; + description "Count of established transitions"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "Interface ID"; + leaf descr { - // Type is an MO-Defined-Type - type nw_IfId; + type naming_Descr; + description "Description of the specified attribute"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + leaf name { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf encap { - config "false"; - type string; + + // This object holds authentication policy information + container auth-items { + + uses msdp_AuthP-group; + description "Holds Authentication Policy information"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - container rtvrfMbr-items { + // This object holds mesh group information + container meshgrp-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + uses msdp_MeshGrp-group; + description "Holds mesh group policy information"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // SA policy MO + container rtctrl-items { + list RtCtrlP-list { + key "direction"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses msdp_RtCtrlP-group; + description "Source Active Route Control policy list"; } + description "Source Active Route Control policy"; + } + + // This object holds the MSDP peer related statistics + // Ephemeral data + container peerstats-items { + + uses msdp_PeerStats-group; + description "Holds the MSDP peer related statistics"; } } - grouping mldsnoop_RtrIf-group { + grouping msdp_AuthP-group { + description "Holds Authentication Policy information"; - // Identifier for the if - // Inherited From ipmcsnoop:RtrIf - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + // Authentication type + leaf type { - // Type is an MO-Defined-Type - type nw_IfId; + type msdp_AuthT; + description "Authentication type"; } - } - grouping mldsnoop_QuerierP-group { + // Authentication key + leaf key { + + type msdp_AuthKey; + description "Authentication key"; + } - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } + } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: mldsnoop:QuerierP->ver - // Type is an MO-Defined-Type - leaf ver { - config "false"; - description "Version"; - - // Type is an MO-Defined-Type - type mcast_Ver; - } + grouping msdp_MeshGrp-group { + description "Holds mesh group policy information"; - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { - config "false"; - description "Address"; + // Mesh Group name + leaf grpName { - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type msdp_GrpNameT; + description "Mesh Group Name"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { - config "false"; - description "Query Interval"; + leaf name { - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { - config "false"; - description "Response Interval"; + leaf descr { - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type naming_Descr; + description "Description of the specified attribute"; } + } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { - config "false"; - description "Robustness Factor"; - - // Type is an MO-Defined-Type - type mcast_RobustFactor; - } + grouping msdp_RtCtrlP-group { + description "Source Active Route Control policy"; - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { - config "false"; - description "Startup Query Interval"; + // Prefix list to control the distribution + leaf pfxList { - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type msdp_PrefixT; + description "Prefix list to control the distribution"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { - config "false"; - description "Startup Query Count"; + leaf name { - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name of the given attribute"; } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { - config "false"; - description "Last Member Query Interval"; + leaf descr { - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type naming_Descr; + description "Description of the specified attribute"; } - // Querier timeout - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf timeout { - config "false"; - description "Timeout"; + // Direction [in/out] + leaf direction { - // Type is an MO-Defined-Type - type mcast_QuerierTimeout; + type rtctrl_RtCtrlDir; + description "Direction"; + } + leaf rtMap { + type string; + description "Route Map"; } } - grouping mldsnoop_QuerierSt-group { + grouping msdp_PeerStats-group { + description "Holds the MSDP peer related statistics"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf lastMessageRcvd { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; + type union { + type string; + type uint64; } + description "Last Message Received Timestamp"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // Count of SA requests received + // Ephemeral data + leaf saReqRcvd { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter32; + description "Count of SA Request Received"; } - // Querier version - // Inherited From mcast:AQuerier - // Modified by Override: mldsnoop:QuerierSt->ver - // Type is an MO-Defined-Type - leaf ver { + // Count of SA requests sent + // Ephemeral data + leaf saReqSent { config "false"; - description "Version"; - // Type is an MO-Defined-Type - type mcast_Ver; + type nw_Counter32; + description " Count of SA Request Sent"; } - // Querier IP address - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf addr { + // Count of SA responses received + // Ephemeral data + leaf saRspRcvd { config "false"; - description "Address"; - // Type is an MO-Defined-Type - type mcast_QuerierIp; + type nw_Counter32; + description "Count of SA Response Received"; } - // Query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf queryIntvl { + // Count of SA responses sent + // Ephemeral data + leaf saRspSent { config "false"; - description "Query Interval"; - // Type is an MO-Defined-Type - type mcast_QueryIntvl; + type nw_Counter32; + description "Count of SA Response Sent"; } - // Query response interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf rspIntvl { + // Count of control messages received + // Ephemeral data + leaf ctrlMessagesRcvd { config "false"; - description "Response Interval"; - // Type is an MO-Defined-Type - type mcast_QueryRspIntvl; + type nw_Counter32; + description "Count of Control Messages Received"; } - // Robustness factor - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf robustFac { + // Count of control messages sent + // Ephemeral data + leaf ctrlMessagesSent { config "false"; - description "Robustness Factor"; - // Type is an MO-Defined-Type - type mcast_RobustFactor; + type nw_Counter32; + description "Count of Control Messages Sent"; } - // Startup query interval - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryIntvl { + // Count of data packets received + // Ephemeral data + leaf dataMessagesRcvd { config "false"; - description "Startup Query Interval"; - // Type is an MO-Defined-Type - type mcast_StartQueryIntvl; + type nw_Counter32; + description "Count of Data Messages Received"; } - // Startup query count - // Inherited From mcast:AQuerier - // Type is an MO-Defined-Type - leaf startQueryCnt { + // Count of data packets sent + // Ephemeral data + leaf dataMessagesSent { config "false"; - description "Startup Query Count"; - // Type is an MO-Defined-Type - type mcast_QueryCnt; + type nw_Counter32; + description "Count of Data Messages Sent"; } - // Last member query interval - // Inherited From ipmcsnoop:QuerierP - // Type is an MO-Defined-Type - leaf lastMbrIntvl { + // Count of notifications received + // Ephemeral data + leaf notifRcvd { config "false"; - description "Last Member Query Interval"; - // Type is an MO-Defined-Type - type mcast_LastMbrQueryIntvl; + type nw_Counter32; + description "Count of SA Notifications Received"; } - // Querier flags - // Inherited From ipmcsnoop:QuerierSt - // Type is an MO-Defined-Type - leaf flags { + // Count of SA notifications sent + // Ephemeral data + leaf notifSent { config "false"; - description "Flags"; - // Type is an MO-Defined-Type - type ipmcsnoop_QuerierFlags; + type nw_Counter32; + description "Count of SA Notifications Sent"; } - } - grouping mldsnoop_InstStats-group; + // Count of keepalive messages received + // Ephemeral data + leaf kaRcvd { + config "false"; - grouping mpls_Entity-group { + type nw_Counter32; + description "Count of Keepalives Received"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Count of keepalive messages sent + // Ephemeral data + leaf kaSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter32; + description "Count of Keepalives Sent"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Count of RPF check failures + // Ephemeral data + leaf rpfChkFail { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter32; + description "Count of RPF Check Failures"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { + // Count of connection attempts + // Ephemeral data + leaf connAttempts { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_Counter32; + description "Count of Connection Attempts"; } - // This object holds mpls information that is operated at a - // interface level - container If-items { - list If-list { - key "id"; + // Count of SA-cache entries learnt from this peer + // Ephemeral data + leaf rtCnt { + config "false"; - // Added containment: Prefix=If - // Acquired From Package mpls - uses mpls_If-group; - } + type nw_Counter32; + description "Count of SG cache entries learnt"; } } - grouping mpls_If-group { + grouping msdp_InterLeakP-group { + description "Holds information of Redistribution policy"; - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Administrative state of interface"; + leaf pfxList { - // Type is an MO-Defined-Type - type mpls_OperSt; + type msdp_PrefixT; + description "pfxlist name"; } - leaf deleted { - config "false"; - type boolean; + + leaf srcLeak { + + type msdp_Source; + description "Source of route leak distribution"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type naming_Descr; + description "Description of the specified attribute"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type nw_IfId; + type rtleak_Scope; + description "Scope"; } - - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_IfAdminSt; + leaf rtMap { + type string; + description "Route Map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - container rtvrfMbr-items { + grouping msdp_LogLevel-group { + description "Configure logging level"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf type { + + type msdp_LogType; + description "Configures logging type"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf level { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type msdp_LvlType; + description "Configures log level"; } } - grouping mplsstatic_Entity-group { + grouping mvpn_Entity-group { + description "Holds MVPN control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // MPLS Static address family domain - container af-items { - list Af-list { - key "type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=af - // Acquired From Package mplsstatic - uses mplsstatic_Af-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - grouping mplsstatic_Af-group { - - // Type - // Type is an MO-Defined-Type - leaf type { - description "Type of address family (IPv4, IPv6, etc.)"; + // This object holds per mvpn instance information + container inst-items { - // Type is an MO-Defined-Type - type mplsstatic_AfT; + uses mvpn_Inst-group; + description "Holds per MVPN instance information"; } + } + + grouping mvpn_Inst-group { + description "Holds per MVPN instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Prefix local label - container pfxlabel-items { - list PfxLclLbl-list { - key "label"; + // Administrative state + leaf adminSt { - // Added containment: Prefix=pfxlabel - // Acquired From Package mplsstatic - uses mplsstatic_PfxLclLbl-group; - } + type nw_AdminSt; + description "Admin State"; } - // Named LSP - container lsp-items { - list NamedLSP-list { - key "name"; + // Instance controls + leaf ctrl { - // Added containment: Prefix=lsp - // Acquired From Package mplsstatic - uses mplsstatic_NamedLSP-group; - } + type nw_InstCtrl; + description "Controls"; } - } - grouping mplsstatic_PfxLclLbl-group { - leaf pfx { - type address_Ip; + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + // Inter Packet Delay + leaf jpDelay { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type rtdmc_JPDelay; + description "Inter Packet Delay"; } - // This object holds primary nexthop information - // for prefix local label - container nh-items { + // Null Register Inter Batch Delay + leaf nrDelay { - // Added containment as a singleton: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_Nh-group; + type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } - // This object holds auto resolve nexthop information - // for prefix local label - container autoresolvenh-items { + // Number of routes in a null register + leaf nrNumRt { - // Added containment as a singleton: Prefix=autoresolvenh - // Acquired From Package mplsstatic - uses mplsstatic_AutoResolveNh-group; + type rtdmc_NRNumRt; + description "Null Register Number of Routes"; + } + leaf regStop { + type boolean; + description "Register until stops"; } - // This object holds backup nexthop information - // for prefix local label - container backupnh-items { + // This object holds per mvpn domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Added containment as a singleton: Prefix=backupnh - // Acquired From Package mplsstatic - uses mplsstatic_BackupNh-group; + uses mvpn_Dom-group; + description "Holds per mvpn domain (vrf) information list"; + } + description "Holds per mvpn domain (vrf) information"; } } - grouping mplsstatic_Nh-group { - - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; - - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + grouping mvpn_Dom-group { + description "Holds per mvpn domain (vrf) information"; + leaf asmUseSharedTree { + type boolean; + description "ASM use shared tree configured"; } - leaf nhAddr { - type address_Ip; + leaf enforceBGPmdtSafi { + type boolean; + default "true"; + description "Depend on BGP MDT SAFI for auto-discovery"; } - } - grouping mplsstatic_AutoResolveNh-group { - - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; + leaf pimHelloIntvl { - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + type mvpn_PimHelloIntvl; + description "PIM hello interval used between peers"; } - } - - grouping mplsstatic_BackupNh-group { - // Type is an MO-Defined-Type - leaf outLbl { - description "Outgoing label"; + leaf pimJoinPruneIntvl { - // Type is an MO-Defined-Type - type mplsstatic_OutLabelVal; + type mvpn_PimJPIntvl; + description "Join-Prune interval used between peers"; } - leaf nhAddr { + leaf mdtDefaultGroup { type address_Ip; + description "IP multicast group address"; + } + leaf mdtDefaultEnabled { + type boolean; + description "This property helps us manage mdtDefaultGroup property"; } - // Type is an MO-Defined-Type - leaf if { - description "Next Hop Interface"; + leaf mdtSourceIntf { - // Type is an MO-Defined-Type type nw_IfId; + description "Source interface to be used in the backbone network"; } - } - - grouping mplsstatic_NamedLSP-group { - leaf name { - type string; + leaf mdtSrcEnabled { + type boolean; + description "This property helps us manage mdtSourceIntf property"; } - // Cross-connect local label - container xclabel-items { - list XcLclLbl-list { - key "label"; + leaf name { - // Added containment: Prefix=xclabel - // Acquired From Package mplsstatic - uses mplsstatic_XcLclLbl-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Policy local label - container pollabel-items { - list PolicyLclLbl-list { - key "label"; + // This object holds Data MDT settings per group + // address in a dom + container group-items { + list DataGrp-list { + key "grpAddr"; - // Added containment: Prefix=pollabel - // Acquired From Package mplsstatic - uses mplsstatic_PolicyLclLbl-group; + uses mvpn_DataGrp-group; + description "This Object holds MDT data per Group Information list"; } + description "This Object holds MDT data per Group Information"; } } - grouping mplsstatic_XcLclLbl-group { - leaf name { - type string; + grouping mvpn_DataGrp-group { + description "This Object holds MDT data per Group Information"; + leaf grpAddr { + type address_Ip; + description + "List of group range prefixes, only + multicast allowed"; } - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + leaf rtMap { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type mvpn_RtMapType; + description "Route Map Name to control the distribution"; } + } - // This object holds primary nexthop information - // for cross-connect local label - container nh-items { - list XcNh-list { - key "pathId"; + grouping nd_Entity-group { + description "Neighbor Discover Entity"; - // Added containment: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_XcNh-group; + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - } - grouping mplsstatic_XcNh-group { - leaf outLblStack { - type string; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - leaf pathId { - type uint16; + + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - leaf nhAddr { - type address_Ip; + + // This objects hold per nd instance information. There is + // only one instance of nd running in the system today + container inst-items { + + uses nd_Inst-group; + description "Neighbor Discovery Instance"; } } - grouping mplsstatic_PolicyLclLbl-group { - leaf pfx { - type address_Ip; - } - leaf name { - type string; - } + grouping nd_Inst-group { + description "Neighbor Discovery Instance"; - // Inherited From mplsstatic:BaseLclLbl - // Type is an MO-Defined-Type - leaf label { - description "Label"; + // Solicitated neighbor advertisement + leaf solicitNghbrAdvertisement { - // Type is an MO-Defined-Type - type mplsstatic_InLabelVal; + type nw_AdminSt; + default "disabled"; + description "Solicit neighbor advertisement"; } - // This object holds primary nexthop information - // for policy local label - container nh-items { - list PolNh-list { - key "pathId"; + // Solicitated neighbor advertisement with complete entry + leaf acceptSolicitNghbrEntry { - // Added containment: Prefix=nh - // Acquired From Package mplsstatic - uses mplsstatic_PolNh-group; - } + type nd_SolicitAcceptValue; + description "Accept or no-accept entry in Solicit neighbor advertisement"; } - } - grouping mplsstatic_PolNh-group { - leaf outLblStack { - type string; + // Solicitated neighbor advertisement Probe value Probe Value as 0 means no-probe + leaf probeIntervalForSolicitNghbr { + + type nd_SolicitProbeValue; + description "Probe interval"; } - leaf pathId { - type uint16; + + // Aging timer for nd cached entires + leaf agingInterval { + + type nd_AgingInterval; + description "Aging Interval"; } - leaf nhAddr { - type address_Ip; + + // Off-list timer for neighbor discovery + leaf offListTimeout { + + type nd_OffListTimeout; + description "Off-list timeout"; } - } - grouping ulib_LabelTable-group { + // IPv6 Route Distance + leaf ipv6AdjRouteDistance { - // Type is an MO-Defined-Type - leaf operLabels { - config "false"; - description "Total Number of Labels"; + type nd_adjRouteDist; + description "Ipv6 Adjacency Route Distance"; + } - // Type is an MO-Defined-Type - type ulib_LabelCnt; + // ND Cache Limit + leaf cacheLimit { + + type nd_NdCacheLimit; + description "Cache Limit"; } - // Type is an MO-Defined-Type - leaf operIPv4Prefixes { - config "false"; - description "Total Number of IPv4 Prefixes"; + // ND Cache SysLog Rate + leaf cacheSyslogRate { - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nd_NdCacheSyslogRate; + description "Cache Syslog Rate"; } - // Type is an MO-Defined-Type - leaf operIPv6Prefixes { + // Config error in this MO + leaf configErr { config "false"; - description "Total Number of IPv6 Prefixes"; - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nd_ConfigErrInst; + description "Config error Inst"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nw_InstCtrl; + description "Controls"; } - // Label Table Clients - container client-items { - list Clients-list { - config "false"; + // This objects hold per ND domain (vrf) information + container dom-items { + list Dom-list { key "name"; - // Added containment: Prefix=client - // Acquired From Package ulib - uses ulib_Clients-group; + uses nd_Dom-group; + description "Neighbor Discovery Domain list"; } + description "Neighbor Discovery Domain"; } - // Label Range - container lblrange-items { + // Glean throttling helps to discard packets at line card when + // adjacency of the next hop is getting resolved. + // Ref: + // Guide: Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide + // Chapter: Configuring IPv4 + container ipv6gleanthrottle-items { - // Added containment as a singleton: Prefix=lblrange - // Acquired From Package ulib - uses ulib_LblRange-group; + uses nd_IpV6Throttle-group; + description "IPV6 throttling"; } - // Labels - container lbl-items { - list Labels-list { - config "false"; - key "label"; + // This object holds IPv6 ND Sync for VPC + container vpc-items { - // Added containment: Prefix=lbl - // Acquired From Package ulib - uses ulib_Labels-group; - } + uses nd_Vpc-group; + description "Ipv6 Nd Synchronize"; } - } - grouping ulib_Clients-group { - leaf name { - config "false"; - type string; - } - leaf index { - config "false"; - type uint32; - } - leaf uuid { - config "false"; - type uint32; - } - leaf mtsSap { - config "false"; - type uint32; - } - leaf staleTime { - config "false"; - type string; + // Ephemeral data + container l2stat-items { + + uses nd_L2Stat-group; + description "L2 Interface Statistics"; } - // Type is an MO-Defined-Type - leaf flag { - config "false"; - description "Internal flags for the client"; + // Ephemeral data + container offliststat-items { - // Type is an MO-Defined-Type - type ulib_ClientFlag; - } - leaf regMsg { - config "false"; - type uint32; - } - leaf convMsg { - config "false"; - type uint32; - } - leaf fecMsg { - config "false"; - type uint32; - } - leaf fecAdd { - config "false"; - type uint32; - } - leaf ileAdd { - config "false"; - type uint32; + // Ephemeral data + list OffListVlan-list { + config "false"; + key "vlanId addr"; + + uses nd_OffListVlan-group; + description "ND offlist vlan statistics list"; + } + description "ND offlist vlan statistics"; } - leaf fecDel { - config "false"; - type uint32; + + // Ephemeral data + container proxystat-items { + + uses nd_ProxyStat-group; + description "ND Proxy Statistics"; } - leaf ileDel { - config "false"; - type uint32; + + // icmpv6 packet counters (global) + // Ephemeral data + container glblpktstats-items { + + uses nd_GlobalTrafficStats-group; + description "ICMPv6/ND global traffic counters"; } - leaf lastXid { - config "false"; - type uint32; + + // Link Local Global VADDR statistics + // Ephemeral data + container vaddrllstat-items { + + // Ephemeral data + list VaddrLinkLocalStat-list { + config "false"; + key "vAddr"; + + uses nd_VaddrLinkLocalStat-group; + description "ICMPv6/ND link local vaddr statistics list"; + } + description "ICMPv6/ND link local vaddr statistics"; } - leaf fecAck { - config "false"; - type uint32; + + // Ephemeral data + container vpcstat-items { + + uses nd_VPCStat-group; + description "ND/ICMPv6 VPC statistics"; } } - grouping ulib_LblRange-group { + grouping nd_Dom-group { + description "Neighbor Discovery Domain"; - // Config : Dynamic Label Range - // Type is an MO-Defined-Type - leaf dynLblMin { - description "Minimum dynamic label, configured value"; + leaf name { - // Type is an MO-Defined-Type - type ulib_DynLblMin; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf dynLblMax { - description "Maximum dynamic label, configured value"; + // ND databases + container db-items { + list Db-list { + config "false"; + key "type"; - // Type is an MO-Defined-Type - type ulib_DynLblMax; + uses nd_Db-group; + description "Database list"; + } + description "Database"; } - // Config : Static Label Range - // Type is an MO-Defined-Type - leaf staticLblMin { - description "Minimum Static Label, configured value"; + // This object holds nd information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_If-group; + description "Neighbor Discovery Interface list"; + } + description "Neighbor Discovery Interface"; } - // Type is an MO-Defined-Type - leaf staticLblMax { - description "Maximum Static Label, configured value"; - - // Type is an MO-Defined-Type - type ulib_LabelVal; - } + // Only Global level VADDR statistics + // Ephemeral data + container vaddrstatglobal-items { - // Oper : Dynamic Label Range - // Type is an MO-Defined-Type - leaf operDynLblMin { - config "false"; - description "Minimum dynamic label, operational value"; + // Ephemeral data + list VaddrGlobalStat-list { + config "false"; + key "vAddr"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_VaddrGlobalStat-group; + description "ND offlist vlan statistics list"; + } + description "ND offlist vlan statistics"; } + } - // Type is an MO-Defined-Type - leaf operDynLblMax { + grouping nd_Db-group { + description "Database"; + + // Type of the repository + leaf type { config "false"; - description "Maximum dynamic label, operational value"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type nd_DbT; + description "Type"; } - // Oper : Static Label Range - // Type is an MO-Defined-Type - leaf operStaticLblMin { + leaf name { config "false"; - description "Minimum static label, operational value"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Type is an MO-Defined-Type - leaf operStaticLblMax { - config "false"; - description "Maximum static label, operational value"; + // ND adjacency definitions + container adj-items { + list AdjEp-list { + config "false"; + key "ifId addr"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses nd_AdjEp-group; + description "Adjacency list"; + } + description "Adjacency"; } + } - // Fault : Static Labels Out Of Range - // Type is an MO-Defined-Type - leaf operStaticLblsOutOfRange { + grouping nd_AdjEp-group { + description "Adjacency"; + + // Logical interface that this ep is associated with + leaf ifId { config "false"; - description "Number of static labels that are no longer inside the static range due to a change in the configured ranges."; - // Type is an MO-Defined-Type - type ulib_LabelCnt; + type nw_IfId; + description "Logical Interface ID"; } - } - grouping ulib_Labels-group { - leaf label { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nd_AdjOperSt; + description "Operational State"; } - leaf fecType { + + leaf name { config "false"; - type string; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - leaf labelByteStats { + leaf addr { config "false"; - type uint64; + type address_Ip; + description "IPv6 address"; } - leaf labelPacketStats { + + // Mac address + leaf mac { config "false"; - type uint64; + + type nd_AdjMac; + description "MAC"; } + } - // IPv4 FEC - container FecIPv4-items { + grouping nd_If-group { + description "Neighbor Discovery Interface"; - // Added containment as a singleton: Prefix=FecIPv4 - // Acquired From Package ulib - uses ulib_FecIPv4-group; + // Extract next hop MAC address embedded in IPV6 address + leaf macExtract { + + type nd_MacExtract; + description "Extract next hop MAC address"; } - // IPv6 FEC - container FecIPv6-items { + // Disable sending RDNSS in + // Router-Advertisement messages + leaf dnsSuppress { - // Added containment as a singleton: Prefix=FecIPv6 - // Acquired From Package ulib - uses ulib_FecIPv6-group; + type nw_AdminSt; + default "disabled"; + description "Do not send RDNSS in router advertisement"; } - // Policy IPv4 FEC - container FecPolicyIPv4-items { + // Disable sending DNSSL (DNS search-list) in + // Router-Advertisement messages + leaf dnsSearchListSuppress { - // Added containment as a singleton: Prefix=FecPolicyIPv4 - // Acquired From Package ulib - uses ulib_FecPolicyIPv4-group; + type nw_AdminSt; + default "disabled"; + description "Do not send DNSSL in router advertisement"; } - // Policy IPv6 FEC - container FecPolicyIPv6-items { + // Disable sending Route Information Options in RA messages + leaf routeSuppress { - // Added containment as a singleton: Prefix=FecPolicyIPv6 - // Acquired From Package ulib - uses ulib_FecPolicyIPv6-group; + type nw_AdminSt; + default "disabled"; + description "Do Not send Route Information in RA"; } - // None FEC - container FecNone-items { + // Set Default Router Preference Value (RFC 4191) + leaf routerPreference { - // Added containment as a singleton: Prefix=FecNone - // Acquired From Package ulib - uses ulib_FecNone-group; + type nd_RtPrefForCmd; + default "unspecified"; + description "Set Router Preference (RFC 4191)"; } - // SR-TE FEC - container FecSRTE-items { + // Interface controls for: + // redirects, managed-config-flag, other-config-flag, + // supress-ra, supress-ra-mtu + leaf ctrl { - // Added containment as a singleton: Prefix=FecSRTE - // Acquired From Package ulib - uses ulib_FecSRTE-group; + type nd_IfControl; + description "Controls"; } - // Per-CE FEC - container FecPerCE-items { + // Neighbor Solicitation: Sent by a node to determine the + // link-layer address of a neighbor, or to verify that a + // neighbor is still reachable via a cached link-layer + // address. Neighbor Solicitations are also used for + // Duplicate Address Detection. Retransmission interval between IPv6 neighbor + // solication messages + leaf nsIntvl { - // Added containment as a singleton: Prefix=FecPerCE - // Acquired From Package ulib - uses ulib_FecPerCE-group; + type nd_NsIntvl; + description "Neighbor Solicit Interval"; } - // Reserved FEC - container FecReserved-items { + // Retransmission retry count sending neighbor + // soliciation messages + // + // Routers send out Router Advertisement messages + // periodically, or in response to Router Solicitations Interval between sending ICMPv6 router advertisement + // messages + leaf raIntvl { - // Added containment as a singleton: Prefix=FecReserved - // Acquired From Package ulib - uses ulib_FecReserved-group; + type nd_RaIntvl; + description "Router Advertisement Interval"; } - // Deagg FEC - container FecDeagg-items { + // Interval between RA transmissions minimum + leaf raIntvlMin { - // Added containment as a singleton: Prefix=FecDeagg - // Acquired From Package ulib - uses ulib_FecDeagg-group; + type nd_RaIntvlMin; + description "Router Advertisement Interval Minimum"; } - // ADJ_SID FEC - container FecAdjSID-items { + // Router Advertisement (RA) messages also contain Internet + // parameters such as the hop limit that hosts should + // use in outgoing packets and, optionally, link parameters + // such as the link MTU. This facilitates centralized + // administration of critical parameters that can be set on + // routers and automatically propagated to all attached + // hosts Hop limit + leaf hopLimit { - // Added containment as a singleton: Prefix=FecAdjSID - // Acquired From Package ulib - uses ulib_FecAdjSID-group; + type nd_HopLimit; + description "Hop limit"; } - // NHLFE - container Nhlfe-items { - list Nhlfe-list { - config "false"; - key "idx"; + // Link MTU (sent in RA message) + leaf mtu { - // Added containment: Prefix=Nhlfe - // Acquired From Package ulib - uses ulib_Nhlfe-group; - } + type nd_Mtu; + description "MTU"; } - } - grouping ulib_FecIPv4-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; - } - } + // Router Lifetime. The lifetime associated with the + // default router in units of seconds. + leaf raLifetime { - grouping ulib_FecIPv6-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; + type nd_RaLifetime; + description "Router Advertisement lifetime"; } - } - grouping ulib_FecPolicyIPv4-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - leaf prefix { - config "false"; - type string; - } - leaf maskLength { - config "false"; - type uint8; - } - } + // Reachable time. The time, in milliseconds, that a + // node assumes a neighbor is reachable after having + // received a reachability confirmation. Used by the + // Neighbor Unreachability Detection algorithm + leaf reachableTime { - grouping ulib_FecPolicyIPv6-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; + type nd_ReachableTime; + description "Reachable time"; } - leaf tableId { - config "false"; - type string; + + // Retransmit timer. The time, in milliseconds, between + // retransmitted Neighbor Solicitation messages. Used + // by address resolution and the Neighbor Unreachability + // Detection algorithm. A value of zero means unspecified + // (by this router) + leaf retransTimer { + + type nd_RetransTimer; + description "Retransmit timer"; } - leaf prefix { - config "false"; - type string; + + // Duplicate address detection attempts limit + leaf dadAttempts { + + type nd_DadAttempts; + description "Dad attempts"; } - leaf maskLength { - config "false"; - type uint8; + + // Discover host from DADNS + leaf dadnsInterval { + + type nd_DadnsInverval; + description "Dadns interval"; } - } - grouping ulib_FecNone-group { - leaf label { + // To Handle the config fault for this MO + leaf configError { config "false"; - type uint32; + + type nd_ConfigErr; + default "noerror"; + description "Config error"; } - leaf fecType { - config "false"; - type string; + + // Delete adj on mac delete notif without probe + leaf delAdjOnMacDel { + + type nw_AdminSt; + default "disabled"; + description "Delete adj on mac delete notif without probe"; } - leaf state { - config "false"; - type string; + leaf bootFileUrl { + type string { + length "0..128"; + } + description "The URL for a boot file in string"; } - } - grouping ulib_FecSRTE-group { + // Interface ID of this endpoint leaf id { - config "false"; - type uint32; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - } - grouping ulib_FecPerCE-group { - leaf nextHopSet { - config "false"; - type uint32; - } - leaf addressFamily { - config "false"; - type string; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - } - grouping ulib_FecReserved-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - } + // Static ND adjacency definitions + container sadj-items { + list StAdjEp-list { + config "false"; + key "addr"; - grouping ulib_FecDeagg-group { - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; + uses nd_StAdjEp-group; + description "ND Static Adjacency list"; + } + description "ND Static Adjacency"; } - } - grouping ulib_FecAdjSID-group { - leaf ifIndex { - config "false"; - type uint32; - } - leaf appId { - config "false"; - type uint32; - } - leaf nextHop { - config "false"; - type address_Ip; - } - leaf fecType { - config "false"; - type string; - } - leaf state { - config "false"; - type string; - } - leaf tableId { - config "false"; - type string; - } - } + // DNS Search-list statistics + // Ephemeral data + container dnsslif-items { - grouping ulib_Nhlfe-group { - leaf idx { - config "false"; - type uint32; - } - leaf ip { - config "false"; - type string; - } - leaf outLabel { - config "false"; - type string; - } - leaf interface { - config "false"; - type string; - } - leaf outLabelByteStats { - config "false"; - type uint64; - } - leaf outLabelPacketStats { - config "false"; - type uint64; + uses nd_DNSIfSearchListStats-group; + description "ND interface DNS statistics"; } - } - grouping mrib_Entity-group { + // DNS Server statistics + // Ephemeral data + container dnsstat-items { - // This objects hold per mrib instance information - container inst-items { + uses nd_DNSIfStats-group; + description "ND interface DNS statistics"; + } - // Added containment as a singleton: Prefix=inst - // Acquired From Package mrib - uses mrib_Inst-group; + // This object holds all IPv6 ND Routes as children + container routes-items { + + uses nd_IfRoutes-group; + description "Ipv6 Nd Route All"; } - } - grouping mrib_Inst-group { + // This object holds IPv6 ICMP Neighbor oper related properties + // Ephemeral data + container ngbrdata-items { - // This objects hold per MRIB information - container dom-items { - list Dom-list { + // Ephemeral data + list NeighborData-list { config "false"; - key "name"; + key "ngbrAddr"; - // Added containment: Prefix=dom - // Acquired From Package mrib - uses mrib_Dom-group; + uses nd_NeighborData-group; + description "IPv6 ICMP Neighbor Data list"; } + description "IPv6 ICMP Neighbor Data"; } + container ndlocalproxy-items { + list NdLocalProxy-list { + key "prefix"; - // This object holds mrib route db information - container routeDb-items { - - // Added containment as a singleton: Prefix=routeDb - // Acquired From Package mrib - uses mrib_RouteDb-group; + uses nd_NdLocalProxy-group; + description "IPv6 ND Local Proxy With No Hardware Flooding list"; + } + description "IPv6 ND Local Proxy With No Hardware Flooding"; } - } - - grouping mrib_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // A list of prefixes to be placed in Prefix Information + // options in Router Advertisement messages sent from the + // interface. + container pfx-items { + list Pfx-list { + key "addr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nd_Pfx-group; + description "Prefix to be advertised list"; } + description "Prefix to be advertised"; } - // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + container defpfx-items { - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_DefaultPrefix-group; + description "Default Prefix to be advertised"; } - // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Domain Controls"; + // ND DNS Server + container dns-items { + list RouteAdvDNSServer-list { + key "dnsServerAddr dnsSequenceNum"; + + uses nd_RouteAdvDNSServer-group; + description "Route advertisement DNS server list"; + } + description "Route advertisement DNS server"; + } + + // ND DNS Search List + container dnssl-items { + list RouteAdvDNSSearchList-list { + key "dnsSearchListName dnsSequenceNum"; - // Type is an MO-Defined-Type - type rtdmc_DomCtrl; + uses nd_RouteAdvDNSSearchList-group; + description "Route advertisement DNS search list list"; + } + description "Route advertisement DNS search list"; } - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "Maximum Transmission Unit"; + // Ephemeral data + container rtrstat-items { - // Type is an MO-Defined-Type - type rtdmc_Mtu; + // Ephemeral data + list RouterStat-list { + config "false"; + key "routerAddr"; + + uses nd_RouterStat-group; + description "Router statistics list"; + } + description "Router statistics"; } - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - config "false"; - description "Auto Enable"; + // Interface statistics ND packet counters (per-i/f) + // Ephemeral data + container ifstats-items { - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; - } - leaf logNbhChng { - config "false"; - type boolean; - } - leaf flushRoutes { - config "false"; - type boolean; - } - leaf bfd { - config "false"; - type boolean; + uses nd_IfStats-group; + description "interface statistics"; } - // This object holds mrib config information - container config-items { + // VADDR Statistics per i/f for specific client + // Ephemeral data + container vaddrstat-items { - // Added containment as a singleton: Prefix=config - // Acquired From Package mrib - uses mrib_Config-group; - } - container eventHist-items { - list EventHistory-list { - key "type"; + // Ephemeral data + list VaddrStat-list { + config "false"; + key "vaddrProto"; - // Added containment: Prefix=eventHist - // Acquired From Package mrib - uses mrib_EventHistory-group; + uses nd_VaddrStat-group; + description "ND VADDR statistics list"; } + description "ND VADDR statistics"; + } + + container rtvrfMbr-items { + + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping mrib_Config-group { + grouping nd_StAdjEp-group { + description "ND Static Adjacency"; - // Holddown Enable - // Type is an MO-Defined-Type - leaf holdEnable { + // Operational state + leaf operSt { config "false"; - description "Holddown Enable"; - // Type is an MO-Defined-Type - type mrib_HoldAdminSt; + type nd_StAdjOperSt; + description "Operational State"; } - // Holddown second - // Type is an MO-Defined-Type - leaf holddown { + // Operational state qualifier + leaf operStQual { config "false"; - description "holddown second"; - // Type is an MO-Defined-Type - type mrib_HoldDownType; + type nd_StAdjOperStQual; + description "Operational State Qualifier"; } - // Mode Enable - // Type is an MO-Defined-Type - leaf ModeEnable { + leaf name { config "false"; - description "Mode Enable"; - // Type is an MO-Defined-Type - type mrib_ModeAdminSt; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - - // Multipath Mode - // Type is an MO-Defined-Type - leaf Mode { + leaf addr { config "false"; - description "MRIB Multipath Mode"; - - // Type is an MO-Defined-Type - type mrib_MultipathMode; + type address_Ip; + description "IPv6 address"; } - // Multipath Resilient - // Type is an MO-Defined-Type - leaf ModeResilient { + // Mac address + leaf mac { config "false"; - description "MRIB Multipath Resilient"; - // Type is an MO-Defined-Type - type mrib_ResilientType; + type nd_AdjMac; + description "MAC"; } - } - grouping mrib_EventHistory-group { + container rtfvEpDefRefToStAdjEpV6-items { - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history"; + list RtFvEpDefRefToStAdjEpV6-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type mrib_EhType; + uses fv_RtFvEpDefRefToStAdjEpV6_target-group; + } } + } - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; + grouping nd_DNSIfSearchListStats-group { + description "ND interface DNS statistics"; - // Type is an MO-Defined-Type - type mrib_Size; + // Ephemeral data + leaf dnsSearchListSuppress { + config "false"; + type boolean; + description "ND DNS search-list suppress"; } - } - grouping mrib_RouteDb-group { + // Ephemeral data + container server-items { - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { + // Ephemeral data + list DNSSearchListStats-list { config "false"; - key "name"; + key "dnsSearchList"; - // Added containment: Prefix=vrf - // Acquired From Package mrib - uses mrib_Vrf-group; + uses nd_DNSSearchListStats-group; + description "ND DNS search-list statistics list"; } + description "ND DNS search-list statistics"; } } - grouping mrib_Vrf-group { - leaf name { + grouping nd_DNSSearchListStats-group { + description "ND DNS search-list statistics"; + + // Ephemeral data + leaf dnsSearchList { config "false"; type string; + description "ND DNS search-list name"; } - leaf totalNumRoutes { - config "false"; - type uint32; - } - leaf starGRoute { + + // Ephemeral data + leaf dnsSearchListLife { config "false"; type uint32; + description "ND DNS search-list lifetime"; } - leaf sgRoute { + + // Ephemeral data + leaf dnsSearchListSeq { config "false"; type uint32; + description "ND DNS search-list sequence no"; } - leaf starGPrfx { + } + + grouping nd_DNSIfStats-group { + description "ND interface DNS statistics"; + + // Ephemeral data + leaf dnsServerSuppress { config "false"; - type uint32; + type boolean; + description "ND DNS server suppress"; } - // This object holds mrib route group information - container group-items { - list Group-list { + // Ephemeral data + container server-items { + + // Ephemeral data + list DNSServerStats-list { config "false"; - key "grpAddr"; + key "addr"; - // Added containment: Prefix=group - // Acquired From Package mrib - uses mrib_Group-group; + uses nd_DNSServerStats-group; + description "ND DNS server statistics list"; } + description "ND DNS server statistics"; } } - grouping mrib_Group-group { - leaf grpAddr { + grouping nd_DNSServerStats-group { + description "ND DNS server statistics"; + + // Ephemeral data + leaf addr { config "false"; type address_Ip; + description "ND DNS server name"; } - leaf grpMasklen { + + // Ephemeral data + leaf dnsServerLife { config "false"; type uint32; + description "ND DNS server lifetime"; } - leaf bidir { + + // Ephemeral data + leaf dnsServerSeq { config "false"; - type boolean; + type uint32; + description "ND DNS server sequence no"; } + } - // This object holds mrib route source information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + grouping nd_IfRoutes-group { + description "Ipv6 Nd Route All"; - // Added containment: Prefix=source - // Acquired From Package mrib - uses mrib_Source-group; + // This object holds IPv6 ND Route command related properties + container rt-items { + list Route-list { + key "ndRouteAddr"; + + uses nd_Route-group; + description "Ipv6 Nd Route (specific) list"; } + description "Ipv6 Nd Route (specific)"; } } - grouping mrib_Source-group { - leaf srcAddr { - config "false"; + grouping nd_Route-group { + description "Ipv6 Nd Route (specific)"; + leaf ndRouteAddr { type address_Ip; + description "Nd Route IPv6 address"; } - leaf pending { - config "false"; - type boolean; - } - leaf uptime { - config "false"; - type string; - } - leaf oifcount { - config "false"; - type uint32; - } - leaf statsPkts { - config "false"; - type uint32; + + // Nd Route Life Time + leaf ndRouteLifeTime { + + type nd_NdRtLifeTime; + description "Nd Route life time"; } - leaf statsBytes { - config "false"; - type uint32; + + // Nd Route Infinite Life Time + leaf ndRouteLifeTimeInfinite { + + type nw_AdminSt; + default "disabled"; + description "Nd Route life time infinite"; } - leaf statsRateBuf { - config "false"; - type string; + + // Set Default Route Preference Value for ND Route (RFC 4191) + leaf routePreference { + + type nd_RtPrefForNdRt; + description "Set Route Preference for ND Route (RFC 4191)"; } - leaf lispSrcRloc { - config "false"; - type string; + + // Verify if route is present in Route table + leaf verifyReachability { + + type nw_AdminSt; + default "disabled"; + description "Verify if route is present in Route table"; } - leaf routeIif { + } + + grouping nd_NeighborData-group { + description "IPv6 ICMP Neighbor Data"; + + // Ephemeral data + leaf ngbrAddr { config "false"; - type string; + type address_Ip; + description "IPv6 ICMP Neighbor Address"; } - leaf rpfNbr { + + // Ephemeral data + leaf ngbrAge { config "false"; type string; + description "IPv6 ICMP Neighbor Age"; } - leaf internal { + + // Ephemeral data + leaf ngbrMac { config "false"; - type boolean; + type address_Mac; + description "IPv6 ICMP Neighbor MAC"; } - leaf rpfNbrUptime { + + // Ephemeral data + leaf ngbrState { config "false"; type string; - } - leaf fabricOif { - config "false"; - type boolean; - } - leaf fabricLoser { - config "false"; - type boolean; - } - leaf numVpcSviOifs { - config "false"; - type uint32; - } - leaf routeMdtIod { - config "false"; - type boolean; - } - leaf mdtEncapIndex { - config "false"; - type uint32; + description "IPv6 ICMP Neighbor State"; } - // This object holds mrib mpib information - container mpib-items { - list Mpib-list { - config "false"; - key "mpibName"; + // IPv6 ICMP Neighbor Interface + // Ephemeral data + leaf ngbrInterface { + config "false"; - // Added containment: Prefix=mpib - // Acquired From Package mrib - uses mrib_Mpib-group; - } + type nw_IfId; + description "IPv6 ICMP Neighbor Interface"; } - // This object holds mrib OIF information - container oif-items { - list Oif-list { - config "false"; - key "oifName"; + // IPv6 ICMP Neighbor Physical Interface + // Ephemeral data + leaf ngbrPhyInterface { + config "false"; - // Added containment: Prefix=oif - // Acquired From Package mrib - uses mrib_Oif-group; - } + type nw_IfId; + description "IPv6 ICMP Neighbor Physical Interface"; } - } - grouping mrib_Mpib-group { - leaf mpibName { - config "false"; - type string; - } - leaf oifCount { + // Ephemeral data + leaf ngbrSyncedViaCFSoE { config "false"; - type uint32; + type boolean; + description "IPv6 ICMP Adjacency Synced Via CFSoE"; } - leaf staleRoute { + + // Ephemeral data + leaf ngbrThrottledViaGlean { config "false"; type boolean; + description "IPv6 ICMP Adjacency Throttled For Glean"; } } - grouping mrib_Oif-group { - leaf oifName { - config "false"; - type string; - } - leaf oifUptime { - config "false"; - type string; - } - leaf oifRPF { - config "false"; - type boolean; + grouping nd_NdLocalProxy-group { + description "IPv6 ND Local Proxy With No Hardware Flooding"; + leaf prefix { + type address_Ip; + description "Prefix"; } - leaf oifLispEncapEntries { - config "false"; - type uint32; + } + + grouping nd_Pfx-group { + description "Prefix to be advertised"; + leaf addr { + type address_Ip; + description "Prefix address"; } - // This object holds lisp encap information - container lispEncap-items { - list LispEncap-list { - config "false"; - key "index"; + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + leaf lifetime { - // Added containment: Prefix=lispEncap - // Acquired From Package mrib - uses mrib_LispEncap-group; - } + type nd_Lifetime; + description "Valid Lifetime"; } - // This object holds mrib OIF MPIB information - container oifMpib-items { - list OifMpib-list { - config "false"; - key "oifMpibName"; + // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) + leaf prefLifetime { - // Added containment: Prefix=oifMpib - // Acquired From Package mrib - uses mrib_OifMpib-group; - } + type nd_PrefLifetime; + description "Preferred Lifetime"; } - } - grouping mrib_LispEncap-group { - leaf index { - config "false"; - type uint32; - } - leaf srcRloc { - config "false"; - type address_Ip; - } - leaf dstRloc { - config "false"; - type address_Ip; - } - } + // RA prefix Controls + leaf ctrl { - grouping mrib_OifMpib-group { - leaf oifMpibName { - config "false"; - type string; - } - leaf staleOif { - config "false"; - type boolean; - } - leaf VpcSvi { - config "false"; - type boolean; + type nd_PfxControl; + description "Prefix Controls"; } } - grouping msdp_Entity-group { + grouping nd_DefaultPrefix-group { + description "Default Prefix to be advertised"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Default prefix + leaf defPrefix { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + description "Default prefix"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Valid lifetime of the prefix default + leaf defLifetime { - // Type is an MO-Defined-Type - type nw_AdminSt; + type nd_Lifetime; + description "Valid lifetime for default prefix"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Preferred lifetime of the prefix default + leaf defPrefLifetime { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type nd_PrefLifetime; + description "Preferred lifetime for default prefix"; } - // This objects hold per MSDP instance information - container inst-items { + // Default RA prefix Controls + leaf ctrl { - // Added containment as a singleton: Prefix=inst - // Acquired From Package msdp - uses msdp_Inst-group; + type nd_PfxControl; + description "Prefix Controls"; } } - grouping msdp_Inst-group { + grouping nd_RouteAdvDNSServer-group { + description "Route advertisement DNS server"; + leaf dnsServerAddr { + type address_Ip; + description "DNS server IPv6 address"; + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // DNS Server Life Time + // Default value handled in local MO type + leaf dnsServerLifeTime { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Type is a Local-MO-Defined-Type + type nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime; + description "DNS server life time"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // DNS Server Infinite Life Time + leaf dnsServerLifeTimeInfinite { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "DNS server life time infinite"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // DNS Server Sequence Number + leaf dnsSequenceNum { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type nd_DNSSeqNum; + description "DNS server sequence number"; } - // This objects hold per domain (vrf) MSDP information - container dom-items { - list Dom-list { - key "name"; + // Flag to indicate if dns server is configured or not + leaf dnsServer { - // Added containment: Prefix=dom - // Acquired From Package msdp - uses msdp_Dom-group; - } + type nw_AdminSt; + default "disabled"; + description "IPv6 nd ra DNS server"; } } - grouping msdp_Dom-group { - - // Type is an MO-Defined-Type - leaf origIf { - description "Originator Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + grouping nd_RouteAdvDNSSearchList-group { + description "Route advertisement DNS search list"; + leaf dnsSearchListName { + type string; + description "DNS search list name"; } - // Type is an MO-Defined-Type - leaf srcActiveMsgIntvl { - description "Source Active message Interval"; + // DNS Search List Life Time + // Default value handled in local MO type + leaf dnsSearchListLifeTime { - // Type is an MO-Defined-Type - type msdp_SrcActiveMsgIntvl; + // Type is a Local-MO-Defined-Type + type nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime; + description "DNS search list life time"; } - // Type is an MO-Defined-Type - leaf reConnIntvl { - description "Reconnect Interval"; + // DNS Search List Infinite Life Time + leaf dnsSearchListLifeTimeInfinite { - // Type is an MO-Defined-Type - type msdp_ReConnIntvl; + type nw_AdminSt; + default "disabled"; + description "DNS search list life time infinite"; } - // Type is an MO-Defined-Type - leaf ctrl { - description "Flush routes"; + // DNS Search List Sequence Number + leaf dnsSequenceNum { - // Type is an MO-Defined-Type - type msdp_DomCtrl; + type nd_DNSSeqNum; + description "DNS search list sequence number"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Flag to indicate if dns search list is configured or not + leaf dnssl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_AdminSt; + default "disabled"; + description "IPv6 nd ra DNS search list"; } + } - // msdp databases - container db-items { - list Db-list { - config "false"; - key "type"; + grouping nd_RouterStat-group { + description "Router statistics"; - // Added containment: Prefix=db - // Acquired From Package msdp - uses msdp_Db-group; - } + // Ephemeral data + leaf routerAddr { + config "false"; + type address_Ip; } - // This object holds group limt and source range info - container maxgrp-items { - list MaxGrpP-list { - key "srcPfx"; - - // Added containment: Prefix=maxgrp - // Acquired From Package msdp - uses msdp_MaxGrpP-group; - } + // Ephemeral data + leaf ifName { + config "false"; + type string; + description "Router address associated with nterface"; } - container eventHist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventHist - // Acquired From Package msdp - uses msdp_EventHistory-group; + // Ephemeral data + leaf lastUpdateTime { + config "false"; + type decimal64 { + fraction-digits 6; } + description "Last update time"; } - // This object holds MSDP information pertaining to a peer - container peer-items { - list Peer-list { - key "addr"; - - // Added containment: Prefix=peer - // Acquired From Package msdp - uses msdp_Peer-group; - } + // Ephemeral data + leaf hopLimit { + config "false"; + type uint32; + description "Current hop limit"; } - container interleakp-items { + // Ephemeral data + leaf lifetime { + config "false"; + type uint32; + description "Current lifetime"; + } - // Added containment as a singleton: Prefix=interleakp - // Acquired From Package msdp - uses msdp_InterLeakP-group; + // Ephemeral data + leaf addrFlag { + config "false"; + type uint16; + description "Addr flag"; } - } - grouping msdp_Db-group { + // Ephemeral data + leaf otherFlag { + config "false"; + type uint16; + description "Other flag"; + } - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf mtu { config "false"; - description "Indicates different database type for different show command"; + type uint16; + description "Mtu"; + } - // Type is an MO-Defined-Type - type msdp_DbT; + // Ephemeral data + leaf homeagentFlag { + config "false"; + type uint16; + description "Homeagent flag"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf preference { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_RouterPreference; + description "Preference flag"; } - // This object holds the MSDP SA-Cache related information - container src-items { - list Route-list { - config "false"; - key "src grp rp"; + // Ephemeral data + leaf reachableTime { + config "false"; + type uint64; + description "Reachable time"; + } - // Added containment: Prefix=src - // Acquired From Package msdp - uses msdp_Route-group; - } + // Ephemeral data + leaf retransmissionTime { + config "false"; + type uint64; + description "Retransmission time"; } - // This class holds information of learnt sources - container source-items { - list Source-list { + // Ephemeral data + container pfxstat-items { + + // Ephemeral data + list RaPrefixStat-list { config "false"; - key "addr"; + key "prefixAddr"; - // Added containment: Prefix=source - // Acquired From Package msdp - uses msdp_Source-group; + uses nd_RaPrefixStat-group; + description "RA prefix statistics list"; } + description "RA prefix statistics"; } } - grouping msdp_Route-group { - leaf src { + grouping nd_RaPrefixStat-group { + description "RA prefix statistics"; + + // Ephemeral data + leaf prefixAddr { config "false"; type address_Ip; + description "Prefix address"; } - leaf grp { + + // Ephemeral data + leaf onlinkFlag { config "false"; - type address_Ip; + type boolean; + description "Onlink flag"; } - leaf rp { + + // Ephemeral data + leaf autonomousFlag { config "false"; - type address_Ip; + type boolean; + description "Autonomous flag"; } - leaf peer { + + // Ephemeral data + leaf validLifetime { config "false"; - type address_Ip; + type uint64; + description "Valid lifetime"; } - leaf asn { + + // Ephemeral data + leaf prefLifetime { config "false"; - type string; + type uint32; + description "preferred lifetime"; } - leaf createTs { + } + + grouping nd_IfStats-group { + description "interface statistics"; + + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { config "false"; - type string; + + type nw_Counter64; + description "Total messages sent"; } - leaf expireTs { + + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { config "false"; - type string; + + type nw_Counter64; + description "Total messages received"; } - leaf saCnt { + + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { config "false"; - type uint32; + + type nw_Counter64; + description "Error messages sent"; } - leaf dataPkt { + + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Error messages received"; } - } - grouping msdp_Source-group { - leaf addr { + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { config "false"; - type address_Ip; + + type nw_Counter64; + description "Interface Down Drop Count sent"; } - leaf grpCnt { + + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Interface Down Drop Count received"; } - leaf grpLimit { + + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { config "false"; - type uint32; + + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - leaf srcPfx { + + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { config "false"; - type address_Ip; + + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - leaf violations { + + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { config "false"; - type uint32; - } - } - grouping msdp_MaxGrpP-group { - leaf srcPfx { - type address_Ip; + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Type is an MO-Defined-Type - leaf maxGrp { - description "Max Group count"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_MaxGrpLimit; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Destination Unreachables sent"; } - } - - grouping msdp_EventHistory-group { - // Type is an MO-Defined-Type - leaf type { - description "configures type of event history"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_EhType; + type nw_Counter64; + description "Destination Unreachables received"; } - // Type is an MO-Defined-Type - leaf size { - description "configures buffer size in text/kb"; + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_Size; + type nw_Counter64; + description "Administratively Prohibited sent"; } - } - grouping msdp_Peer-group { - leaf addr { - type address_Ip; + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; + + type nw_Counter64; + description "Administratively Prohibited received"; } - // Administrative state up/down - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative state enabled/disabled"; + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_Counter64; + description "Time Exceeded sent "; } - // source interface - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf asn { - type string; + type nw_Counter64; + description "Time Exceeded received"; } - // sa-limit - // Type is an MO-Defined-Type - leaf srcActiveMsgLimit { - description "Source Active msg Limit"; + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_SrcActiveMsgLimit; + type nw_Counter64; + description "Parameter Problems sent"; } - // Keepalive interval, how often you send keepalives - // Type is an MO-Defined-Type - leaf kaIntvl { - description "Keepalive interval, how often you send keepalives"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_KaIntvl; + type nw_Counter64; + description "Parameter Problems received"; } - // Keepalive timeout - // Type is an MO-Defined-Type - leaf kaTimeout { - description "Keepalive Timeout"; + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { + config "false"; - // Type is an MO-Defined-Type - type msdp_KaTimeout; + type nw_Counter64; + description "Echo Request sent"; } - // Operationsl state - // Type is an MO-Defined-Type - leaf operSt { + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { config "false"; - description "Operational Status"; - // Type is an MO-Defined-Type - type msdp_OperSt; + type nw_Counter64; + description "Echo Request received"; } - // Remote port of TCP connection to this peer - // Type is an MO-Defined-Type - leaf remPort { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { config "false"; - description "Remote TCP connection port to this peer"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_Counter64; + description "Echo Replies sent"; } - // Local port of TCP connection to this peer - // Type is an MO-Defined-Type - leaf localPort { + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { config "false"; - description "Local TCP connection port to this peer"; - // Type is an MO-Defined-Type - type l4_Port; + type nw_Counter64; + description "Echo Replies received"; } - leaf lastResetOperQual { + + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { config "false"; - type string; + + type nw_Counter64; + description "Redirects sent"; } - leaf discontinuityTs { + + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { config "false"; - type string; + + type nw_Counter64; + description "Redirects received"; } - leaf upTs { + + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - type string; + + type nw_Counter64; + description "Packet Too Big sent"; } - leaf connTmrTs { + + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - type string; + + type nw_Counter64; + description "Packet Too Big received"; } - // Count of established transitions - // Type is an MO-Defined-Type - leaf establishTransitions { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Count of established transitions"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Router Advertisements sent"; } - // From Interface naming:Described - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Router Advertisements received"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Router Solicitations sent"; } - // This object holds authentication policy information - container auth-items { + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { + config "false"; - // Added containment as a singleton: Prefix=auth - // Acquired From Package msdp - uses msdp_AuthP-group; + type nw_Counter64; + description "Router Solicitations received"; } - // This object holds mesh group information - container meshgrp-items { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { + config "false"; - // Added containment as a singleton: Prefix=meshgrp - // Acquired From Package msdp - uses msdp_MeshGrp-group; + type nw_Counter64; + description "Neighbor Advertisements sent"; } - // SA policy MO - container rtctrl-items { - list RtCtrlP-list { - key "direction"; + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { + config "false"; - // Added containment: Prefix=rtctrl - // Acquired From Package msdp - uses msdp_RtCtrlP-group; - } + type nw_Counter64; + description "Neighbor Advertisements received"; } - // This object holds the MSDP peer related statistics - container peerstats-items { + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { + config "false"; - // Added containment as a singleton: Prefix=peerstats - // Acquired From Package msdp - uses msdp_PeerStats-group; + type nw_Counter64; + description "Neighbor Solicitations sent"; } - } - grouping msdp_AuthP-group { + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { + config "false"; - // Authentication type - // Type is an MO-Defined-Type - leaf type { - description "Authentication type"; + type nw_Counter64; + description "Neighbor Solicitations received"; + } - // Type is an MO-Defined-Type - type msdp_AuthT; + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { + config "false"; + + type nw_Counter64; + description "Duplicate router RA received"; } - // Authentication key - // Type is an MO-Defined-Type - leaf key { - description "Authentication key"; + // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT + // Ephemeral data + leaf fastpthRcvd { + config "false"; - // Type is an MO-Defined-Type - type msdp_AuthKey; + type nw_Counter64; + description "Fastpath Packets"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT + // Ephemeral data + leaf fastpathDsbleIgnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT + // Ephemeral data + leaf fastpathOtherIgnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_Counter64; + description "Ignored fastpath packets - others"; } - } - grouping msdp_MeshGrp-group { - leaf grpName { + // Ephemeral data + leaf lastNghbrSolicitSent { + config "false"; type string; + description "Last neighbor solicitation sent"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf lastNghbrAdvertisementSent { + config "false"; + type string; + description "Last neighbor advertisement sent"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf lastRouterAdvertisementSent { + config "false"; + type string; + description "Last router advertisement sent"; } - } - grouping msdp_RtCtrlP-group { - leaf pfxList { + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; type string; + description "Next neighbor advertisement sent"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + // Ephemeral data + leaf nsRetransmitInterval { + config "false"; + type uint64; + description "NS retransmit interval"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; + // Ephemeral data + leaf ndNudRetryBase { + config "false"; + type uint64; + description "ND NUD retry base"; } - // Direction [in/out] - // Inherited From rtctrl:RtCtrlP - // Type is an MO-Defined-Type - leaf direction { - description "Direction"; - - // Type is an MO-Defined-Type - type rtctrl_RtCtrlDir; - } - leaf rtMap { - type string; + // Ephemeral data + leaf ndNudRetryInterval { + config "false"; + type uint64; + description "ND NUD retry interval"; } - } - grouping msdp_PeerStats-group { - leaf lastMessageRcvd { + // Ephemeral data + leaf ndNudRetryAttemps { config "false"; - type string; + type uint64; + description "ND NUD retry attempts"; } - // Count of SA requests received - // Type is an MO-Defined-Type - leaf saReqRcvd { + // Ephemeral data + leaf sendRedirect { config "false"; - description "Count of SA Request Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "Error send redirects"; } - // Count of SA requests sent - // Type is an MO-Defined-Type - leaf saReqSent { + // Ephemeral data + leaf redirectCause { config "false"; - description " Count of SA Request Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint64; + description "Error redirect cause"; } - // Count of SA responses received - // Type is an MO-Defined-Type - leaf saRspRcvd { + // Ephemeral data + leaf sendUnreachables { config "false"; - description "Count of SA Response Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "ND NUD retry interval"; } - // Count of SA responses sent - // Type is an MO-Defined-Type - leaf saRspSent { + // Ephemeral data + leaf maxDadAttempts { config "false"; - description "Count of SA Response Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Maximum DAD attempts"; } - // Count of control messages received - // Type is an MO-Defined-Type - leaf ctrlMessagesRcvd { + // Ephemeral data + leaf currentDadAttempt { config "false"; - description "Count of Control Messages Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Current DAD attempt"; } - // Count of control messages sent - // Type is an MO-Defined-Type - leaf ctrlMessagesSent { + // Ephemeral data + leaf ifState { config "false"; - description "Count of Control Messages Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface state"; } - // Count of data packets received - // Type is an MO-Defined-Type - leaf dataMessagesRcvd { + // Ephemeral data + leaf ifAddr { config "false"; - description "Count of Data Messages Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface IPv6 address/s"; } - // Count of data packets sent - // Type is an MO-Defined-Type - leaf dataMessagesSent { + // Ephemeral data + leaf linkLocalAddr { config "false"; - description "Count of Data Messages Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "IPv6 link local address"; } - // Count of notifications received - // Type is an MO-Defined-Type - leaf notifRcvd { + // Ephemeral data + leaf linkLocalAddrState { config "false"; - description "Count of SA Notifications Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "IPv6 address state"; } - // Count of SA notifications sent - // Type is an MO-Defined-Type - leaf notifSent { + // Ephemeral data + leaf ndMacExtractState { config "false"; - description "Count of SA Notifications Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "ND mac-extract state"; } - // Count of keepalive messages received - // Type is an MO-Defined-Type - leaf kaRcvd { + // Ephemeral data + leaf statsLastReset { config "false"; - description "Count of Keepalives Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Interface statistics last reset"; } - // Count of keepalive messages sent - // Type is an MO-Defined-Type - leaf kaSent { + // Vinci specific: Proxy NA count @@@ ICMPV6_PKT_PROXY_NA_CNT + // Ephemeral data + leaf proxyNaCount { config "false"; - description "Count of Keepalives Sent"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NA count"; } - // Count of RPF check failures - // Type is an MO-Defined-Type - leaf rpfChkFail { + // Vinci specific: Proxy NA to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NA + // Ephemeral data + leaf proxyNaToBdCount { config "false"; - description "Count of RPF Check Failures"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NA to BD count"; } - // Count of connection attempts - // Type is an MO-Defined-Type - leaf connAttempts { + // Vinci specific: Proxy NS to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NS + // Ephemeral data + leaf proxyNsToBdCount { config "false"; - description "Count of Connection Attempts"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_Counter64; + description "Proxy NS to BD count"; } - // Count of SA-cache entries learnt from this peer - // Type is an MO-Defined-Type - leaf rtCnt { + // Vinci specific: RARP NS Count @@@ ICMPV6_PKT_NS_SENT_FOR_RARP_CASE + // Ephemeral data + leaf rarpNsCount { config "false"; - description "Count of SG cache entries learnt"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } - } - grouping msdp_InterLeakP-group { - leaf pfxList { - type string; + type nw_Counter64; + description "RARP NS count"; } - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + container ra-items { - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + uses nd_RouterAdv-group; + description "Router advertisement"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Ephemeral data + container vip-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses nd_IfVipClientStats-group; + description "Interface virtual client"; } - // Scope of the policy (intra protocol, inter protcol, - // default route) - // Inherited From rtleak:LeakP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; + // Ephemeral data + container addr-items { - // Type is an MO-Defined-Type - type rtleak_Scope; - } - leaf rtMap { - type string; + // Ephemeral data + list IfIPv6AddrStats-list { + config "false"; + key "addr"; + + uses nd_IfIPv6AddrStats-group; + description "Interface address list"; + } + description "Interface address"; } - } - grouping nd_Entity-group { + // Ephemeral data + container pfx-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Ephemeral data + list PrefixStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + uses nd_PrefixStats-group; + description "prefix statistics list"; } + description "prefix statistics"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + // Ephemeral data + container rt-items { - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Ephemeral data + list RouteStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + uses nd_RouteStats-group; + description "interface nd route statistics list"; + } + description "interface nd route statistics"; } - // This objects hold per nd instance information. There is - // only one instance of nd running in the system today - container inst-items { + // Ephemeral data + container addrtree-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package nd - uses nd_Inst-group; + // Ephemeral data + list AddrTreeStats-list { + config "false"; + key "addr"; + + uses nd_AddrTreeStats-group; + description "Address tree statistics list"; + } + description "Address tree statistics"; } } - grouping nd_Inst-group { - - // Solicitated neighbor advertisement - // Type is an MO-Defined-Type - leaf solicitNghbrAdvertisement { - description "Solicit neighbor advertisement"; + grouping nd_RouterAdv-group { + description "Router advertisement"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf raInterval { + config "false"; + type uint64; + description "Router advertisement interval"; } - // Solicitated neighbor advertisement with complete entry - // Type is an MO-Defined-Type - leaf acceptSolicitNghbrEntry { - description "Accept or no-accept entry in Solicit neighbor advertisement"; - - // Type is an MO-Defined-Type - type nd_SolicitAcceptValue; + // Ephemeral data + leaf raIntervalMin { + config "false"; + type uint64; + description "Router advertisement minimum interval"; } - // Solicitated neighbor advertisement Probe value Probe Value as 0 means no-probe - // Type is an MO-Defined-Type - leaf probeIntervalForSolicitNghbr { - description "Probe interval"; - - // Type is an MO-Defined-Type - type nd_SolicitProbeValue; + // Ephemeral data + leaf mFlag { + config "false"; + type boolean; + description "Managed address configuration flag"; } - // Aging timer for nd cached entires - // Type is an MO-Defined-Type - leaf agingInterval { - description "Aging Interval"; - - // Type is an MO-Defined-Type - type nd_AgingInterval; + // Ephemeral data + leaf oFlag { + config "false"; + type boolean; + description "Other stateful configuration flag"; } - // Off-list timer for neighbor discovery - // Type is an MO-Defined-Type - leaf offListTimeout { - description "Off-list timeout"; - - // Type is an MO-Defined-Type - type nd_OffListTimeout; + // Ephemeral data + leaf hopLimit { + config "false"; + type uint64; + description "Current hop limit"; } - // IPv6 Route Distance - // Type is an MO-Defined-Type - leaf ipv6AdjRouteDistance { - description "Ipv6 Adjacency Route Distance"; - - // Type is an MO-Defined-Type - type nd_adjRouteDist; + // Ephemeral data + leaf mtu { + config "false"; + type uint64; + description "MTU"; } - // ND Cache Limit - // Type is an MO-Defined-Type - leaf cacheLimit { - description "Cache Limit"; - - // Type is an MO-Defined-Type - type nd_NdCacheLimit; + // Ephemeral data + leaf routerLifetime { + config "false"; + type uint64; + description "Router lifetime"; } - // ND Cache SysLog Rate - // Type is an MO-Defined-Type - leaf cacheSyslogRate { - description "Cache Syslog Rate"; + // Ephemeral data + leaf reachableTime { + config "false"; + type uint64; + description "Reachable time"; + } - // Type is an MO-Defined-Type - type nd_NdCacheSyslogRate; + // Ephemeral data + leaf retransmitTime { + config "false"; + type uint64; + description "Retransmit time"; } - // Config error in this MO - // Type is an MO-Defined-Type - leaf configErr { + // Ephemeral data + leaf suppressRa { config "false"; - description "Config error Inst"; + type boolean; + description "Suppress RA"; + } - // Type is an MO-Defined-Type - type nd_ConfigErrInst; + // Ephemeral data + leaf suppressRaMtu { + config "false"; + type boolean; + description "Suppress RA MTU"; } + } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + grouping nd_IfVipClientStats-group { + description "Interface virtual client"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } + // Ephemeral data + container vipaddr-items { - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Ephemeral data + list IfVipAddrStats-list { + config "false"; + key "addr"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_IfVipAddrStats-group; + description "Interface virtual address list"; + } + description "Interface virtual address"; } + } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + grouping nd_IfVipAddrStats-group { + description "Interface virtual address"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // This objects hold per ND domain (vrf) information - container dom-items { - list Dom-list { - key "name"; + // Ephemeral data + leaf lastNghbrSolicitSent { + config "false"; + type string; + description "Last neighbor solicitation sent"; + } - // Added containment: Prefix=dom - // Acquired From Package nd - uses nd_Dom-group; - } + // Ephemeral data + leaf lastNghbrAdvertisementSent { + config "false"; + type string; + description "Last neighbor advertisement sent"; } - // Glean throttling helps to discard packets at line card when - // adjacency of the next hop is getting resolved. - // Ref: - // Guide: Cisco Nexus 9000 Series NX-OS Unicast Routing Configuration Guide - // Chapter: Configuring IPv4 - container ipv6gleanthrottle-items { + // Ephemeral data + leaf lastRouterAdvertisementSent { + config "false"; + type string; + description "Last router advertisement sent"; + } - // Added containment as a singleton: Prefix=ipv6gleanthrottle - // Acquired From Package nd - uses nd_IpV6Throttle-group; + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; + type string; + description "Next neighbor advertisement sent"; } + } - // This object holds IPv6 ND Sync for VPC - container vpc-items { + grouping nd_IfIPv6AddrStats-group { + description "Interface address"; - // Added containment as a singleton: Prefix=vpc - // Acquired From Package nd - uses nd_Vpc-group; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "IPv6 address"; } - container offliststat-items { - list OffListVlan-list { - config "false"; - key "vlanId addr"; - // Added containment: Prefix=offliststat - // Acquired From Package nd - uses nd_OffListVlan-group; - } + // Ephemeral data + leaf addrState { + config "false"; + type string; + description "IPv6 address state"; } + } - // icmpv6 packet counters (global) - container glblpktstats-items { + grouping nd_PrefixStats-group { + description "prefix statistics"; - // Added containment as a singleton: Prefix=glblpktstats - // Acquired From Package nd - uses nd_GlobalTrafficStats-group; + // Ephemeral data + leaf addr { + config "false"; + type address_Ip; + description "Prefix address"; } - // Link Local Global VADDR statistics - container vaddrllstat-items { - list VaddrLinkLocalStat-list { - config "false"; - key "vAddr"; + // Ephemeral data + leaf maskLen { + config "false"; + type uint16; + description "Mask Length"; + } - // Added containment: Prefix=vaddrllstat - // Acquired From Package nd - uses nd_VaddrLinkLocalStat-group; - } + // Ephemeral data + leaf enabled { + config "false"; + type boolean; + description "Address enabled or not"; } - container vpcstat-items { + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf lifetime { + config "false"; - // Added containment as a singleton: Prefix=vpcstat - // Acquired From Package nd - uses nd_VPCStat-group; + type nd_Lifetime; + description "Valid Lifetime"; } - } - - grouping nd_Dom-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf prefLifetime { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_Lifetime; + description "Preferred Lifetime"; } - // ND databases - container db-items { - list Db-list { - config "false"; - key "type"; + // Ephemeral data + leaf onLink { + config "false"; + type boolean; + description "ND prefix on-link"; + } - // Added containment: Prefix=db - // Acquired From Package nd - uses nd_Db-group; - } + // Ephemeral data + leaf offLink { + config "false"; + type boolean; + description "ND prefix off-link"; } - // This object holds nd information that is operated at a - // interface level - container if-items { - list If-list { - key "id"; + // Ephemeral data + leaf autonomous { + config "false"; + type boolean; + description "ND prefix autonomous"; + } - // Added containment: Prefix=if - // Acquired From Package nd - uses nd_If-group; - } + // Ephemeral data + leaf rtrAddr { + config "false"; + type boolean; + description "ND prefix rtr-address"; } - // Only Global level VADDR statistics - container vaddrstatglobal-items { - list VaddrGlobalStat-list { - config "false"; - key "vAddr"; + // Ephemeral data + leaf ifAssignedAddr { + config "false"; + type boolean; + description "nd prefix interface assigned address"; + } - // Added containment: Prefix=vaddrstatglobal - // Acquired From Package nd - uses nd_VaddrGlobalStat-group; - } + // Ephemeral data + leaf refCount { + config "false"; + type uint32; + description "nd prefix reference count"; } } - grouping nd_Db-group { + grouping nd_RouteStats-group { + description "interface nd route statistics"; - // Type of the repository - // Type is an MO-Defined-Type - leaf type { + // Ephemeral data + leaf addr { config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type nd_DbT; + type address_Ip; + description "Route address"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf routePreference { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nd_RouterPreference; + description "Route Preference"; } - // ND adjacency definitions - container adj-items { - list AdjEp-list { - config "false"; - key "ifId addr"; + // Valid lifetime of the prefix @@@ (0xffffffff == infinite) + // Ephemeral data + leaf routeLifetime { + config "false"; - // Added containment: Prefix=adj - // Acquired From Package nd - uses nd_AdjEp-group; - } + type nd_OperNdRtLifeTime; + description "Route Lifetime"; } - } - - grouping nd_AdjEp-group { - // Logical interface that this ep is associated with - // Type is an MO-Defined-Type - leaf ifId { + // Ephemeral data + leaf octetUnits { config "false"; - description "Logical Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; + type uint32; + description "Route Info Option TLV len(units of octects)"; } - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Ephemeral data + leaf verifyReachability { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nd_AdjOperSt; + type boolean; + description "Reachability-verify"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf advRouteInRoute { config "false"; - description "Name"; + type boolean; + description "Adv route in Route Info Option"; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + // Ephemeral data + leaf advRouteWithZeroLifetime { + config "false"; + type boolean; + description "Adv route with zero lifetime"; } + } + + grouping nd_AddrTreeStats-group { + description "Address tree statistics"; + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "IPv6 address"; } - // Mac address - // Inherited From nd:AAdjEp - // Type is an MO-Defined-Type - leaf mac { + // Ephemeral data + leaf maskLen { config "false"; - description "MAC"; - - // Type is an MO-Defined-Type - type nd_AdjMac; + type uint8; + description "Address mask length"; } - } - - grouping nd_If-group { - // Extract next hop MAC address embedded in IPV6 address - // Type is an MO-Defined-Type - leaf macExtract { - description "Extract next hop MAC address"; + // Ephemeral data + leaf addrType { + config "false"; - // Type is an MO-Defined-Type - type nd_MacExtract; + type nd_AddrType; + description "IPv6 address"; } - // Disable sending RDNSS in - // Router-Advertisement messages - // Type is an MO-Defined-Type - leaf dnsSuppress { - description "Do not send RDNSS in router advertisement"; + // Ephemeral data + leaf dadState { + config "false"; + type string; + description "Dad state"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf dadAttempt { + config "false"; + type uint16; + description "Dad attempt"; } + } - // Disable sending DNSSL (DNS search-list) in - // Router-Advertisement messages - // Type is an MO-Defined-Type - leaf dnsSearchListSuppress { - description "Do not send DNSSL in router advertisement"; + grouping nd_VaddrStat-group { + description "ND VADDR statistics"; - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf vaddrProto { + config "false"; + type string; + description "VADDR protocol"; } - // Disable sending Route Information Options in RA messages - // Type is an MO-Defined-Type - leaf routeSuppress { - description "Do Not send Route Information in RA"; + // Ephemeral data + leaf groupId { + config "false"; + type uint16; + description "Group id"; + } - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf clientUUID { + config "false"; + type uint32; + description "client UUID"; } - // Set Default Router Preference Value (RFC 4191) - // Type is an MO-Defined-Type - leaf routerPreference { - description "Set Router Preference (RFC 4191)"; + // Ephemeral data + leaf clientState { + config "false"; - // Type is an MO-Defined-Type - type nd_RtPrefForCmd; + type nd_VaddrClientState; + description "Client state"; } - // Interface controls for: - // redirects, managed-config-flag, other-config-flag, - // supress-ra, supress-ra-mtu - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Ephemeral data + leaf clientInUse { + config "false"; + type uint16; + description "Client in use"; + } - // Type is an MO-Defined-Type - type nd_IfControl; + // Ephemeral data + leaf clientActiveState { + config "false"; + type string; + description "Client active or not"; + } + leaf interface { + config "false"; + type string; + description "Interface"; + } + leaf context { + config "false"; + type string; + description "Context Name (context-id)"; } - // Neighbor Solicitation: Sent by a node to determine the - // link-layer address of a neighbor, or to verify that a - // neighbor is still reachable via a cached link-layer - // address. Neighbor Solicitations are also used for - // Duplicate Address Detection. Retransmission interval between IPv6 neighbor - // solication messages - // Type is an MO-Defined-Type - leaf nsIntvl { - description "Neighbor Solicit Interval"; + // VADDR Statistics per i/f for + // specific client(protocol) -> VIP addr + // Ephemeral data + container vip-items { - // Type is an MO-Defined-Type - type nd_NsIntvl; + // Ephemeral data + list VaddrStatVip-list { + config "false"; + key "vAddr"; + + uses nd_VaddrStatVip-group; + description "VIP statistics list"; + } + description "VIP statistics"; } + } - // Retransmission retry count sending neighbor - // soliciation messages - // - // Routers send out Router Advertisement messages - // periodically, or in response to Router Solicitations Interval between sending ICMPv6 router advertisement - // messages - // Type is an MO-Defined-Type - leaf raIntvl { - description "Router Advertisement Interval"; + grouping nd_VaddrStatVip-group { + description "VIP statistics"; - // Type is an MO-Defined-Type - type nd_RaIntvl; + // Ephemeral data + leaf vAddr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // Interval between RA transmissions minimum - // Type is an MO-Defined-Type - leaf raIntvlMin { - description "Router Advertisement Interval Minimum"; - - // Type is an MO-Defined-Type - type nd_RaIntvlMin; + // Ephemeral data + leaf virtualMac { + config "false"; + type string; + description "Virtual MAC"; } - // Router Advertisement (RA) messages also contain Internet - // parameters such as the hop limit that hosts should - // use in outgoing packets and, optionally, link parameters - // such as the link MTU. This facilitates centralized - // administration of critical parameters that can be set on - // routers and automatically propagated to all attached - // hosts Hop limit - // Type is an MO-Defined-Type - leaf hopLimit { - description "Hop limit"; + // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT + // Ephemeral data + leaf totSent { + config "false"; - // Type is an MO-Defined-Type - type nd_HopLimit; + type nw_Counter64; + description "Total messages sent"; } - // Link MTU (sent in RA message) - // Type is an MO-Defined-Type - leaf mtu { - description "MTU"; + // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT + // Ephemeral data + leaf totRvcd { + config "false"; - // Type is an MO-Defined-Type - type nd_Mtu; + type nw_Counter64; + description "Total messages received"; } - // Router Lifetime. The lifetime associated with the - // default router in units of seconds. - // Type is an MO-Defined-Type - leaf raLifetime { - description "Router Advertisement lifetime"; + // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT + // Ephemeral data + leaf errSent { + config "false"; - // Type is an MO-Defined-Type - type nd_RaLifetime; + type nw_Counter64; + description "Error messages sent"; } - // Reachable time. The time, in milliseconds, that a - // node assumes a neighbor is reachable after having - // received a reachability confirmation. Used by the - // Neighbor Unreachability Detection algorithm - // Type is an MO-Defined-Type - leaf reachableTime { - description "Reachable time"; + // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT + // Ephemeral data + leaf errRcvd { + config "false"; - // Type is an MO-Defined-Type - type nd_ReachableTime; + type nw_Counter64; + description "Error messages received"; } - // Retransmit timer. The time, in milliseconds, between - // retransmitted Neighbor Solicitation messages. Used - // by address resolution and the Neighbor Unreachability - // Detection algorithm. A value of zero means unspecified - // (by this router) - // Type is an MO-Defined-Type - leaf retransTimer { - description "Retransmit timer"; + // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropSent { + config "false"; - // Type is an MO-Defined-Type - type nd_RetransTimer; + type nw_Counter64; + description "Interface Down Drop Count sent"; } - // Duplicate address detection attempts limit - // Type is an MO-Defined-Type - leaf dadAttempts { - description "Dad attempts"; + // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT + // Ephemeral data + leaf ifDownDropRcvd { + config "false"; - // Type is an MO-Defined-Type - type nd_DadAttempts; + type nw_Counter64; + description "Interface Down Drop Count received"; } - // Discover host from DADNS - // Type is an MO-Defined-Type - leaf dadnsInterval { - description "Dadns interval"; + // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY + // Ephemeral data + leaf dropHaNotRdy { + config "false"; - // Type is an MO-Defined-Type - type nd_DadnsInverval; + type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } - // To Handle the config fault for this MO - // Type is an MO-Defined-Type - leaf configError { + // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT + // Ephemeral data + leaf dropInvldTtlMct { config "false"; - description "Config error"; - // Type is an MO-Defined-Type - type nd_ConfigErr; + type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT + // Ephemeral data + leaf dropSrcMacOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT + // Ephemeral data + leaf dropTgtIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT + // Ephemeral data + leaf dropSrcIpNotOwnRcvd { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT + // Ephemeral data + leaf destUnreachSent { + config "false"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_Counter64; + description "Destination Unreachables sent"; } - // Static ND adjacency definitions - container sadj-items { - list StAdjEp-list { - config "false"; - key "addr"; + // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT + // Ephemeral data + leaf destUnreachRcvd { + config "false"; - // Added containment: Prefix=sadj - // Acquired From Package nd - uses nd_StAdjEp-group; - } + type nw_Counter64; + description "Destination Unreachables received"; } - // DNS Search-list statistics - container dnsslif-items { + // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT + // Ephemeral data + leaf adminProhibSent { + config "false"; - // Added containment as a singleton: Prefix=dnsslif - // Acquired From Package nd - uses nd_DNSIfSearchListStats-group; + type nw_Counter64; + description "Administratively Prohibited sent"; } - // DNS Server statistics - container dnsstat-items { + // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT + // Ephemeral data + leaf adminProhibRcvd { + config "false"; - // Added containment as a singleton: Prefix=dnsstat - // Acquired From Package nd - uses nd_DNSIfStats-group; + type nw_Counter64; + description "Administratively Prohibited received"; } - // This object holds all IPv6 ND Routes as children - container routes-items { + // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT + // Ephemeral data + leaf timeExcdSent { + config "false"; - // Added containment as a singleton: Prefix=routes - // Acquired From Package nd - uses nd_IfRoutes-group; + type nw_Counter64; + description "Time Exceeded sent "; } - // A list of prefixes to be placed in Prefix Information - // options in Router Advertisement messages sent from the - // interface. - container pfx-items { - list Pfx-list { - key "addr"; + // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT + // Ephemeral data + leaf timeExcdRcvd { + config "false"; - // Added containment: Prefix=pfx - // Acquired From Package nd - uses nd_Pfx-group; - } + type nw_Counter64; + description "Time Exceeded received"; } - container defpfx-items { + // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT + // Ephemeral data + leaf parmPrblmSent { + config "false"; - // Added containment as a singleton: Prefix=defpfx - // Acquired From Package nd - uses nd_DefaultPrefix-group; + type nw_Counter64; + description "Parameter Problems sent"; } - // ND DNS Server - container dns-items { - list RouteAdvDNSServer-list { - key "dnsServerAddr dnsSequenceNum"; + // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT + // Ephemeral data + leaf parmPrblmRcvd { + config "false"; - // Added containment: Prefix=dns - // Acquired From Package nd - uses nd_RouteAdvDNSServer-group; - } + type nw_Counter64; + description "Parameter Problems received"; } - // ND DNS Search List - container dnssl-items { - list RouteAdvDNSSearchList-list { - key "dnsSearchListName dnsSequenceNum"; + // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT + // Ephemeral data + leaf echoReqSent { + config "false"; - // Added containment: Prefix=dnssl - // Acquired From Package nd - uses nd_RouteAdvDNSSearchList-group; - } + type nw_Counter64; + description "Echo Request sent"; } - container rtrstat-items { - list RouterStat-list { - config "false"; - key "routerAddr"; - // Added containment: Prefix=rtrstat - // Acquired From Package nd - uses nd_RouterStat-group; - } + // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT + // Ephemeral data + leaf echoReqRcvd { + config "false"; + + type nw_Counter64; + description "Echo Request received"; } - // Interface statistics ND packet counters (per-i/f) - container ifstats-items { + // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT + // Ephemeral data + leaf echoRepSent { + config "false"; - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package nd - uses nd_IfStats-group; + type nw_Counter64; + description "Echo Replies sent"; } - // VADDR Statistics per i/f for specific client - container vaddrstat-items { - list VaddrStat-list { - config "false"; - key "vaddrProto"; + // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT + // Ephemeral data + leaf echoRepRcvd { + config "false"; - // Added containment: Prefix=vaddrstat - // Acquired From Package nd - uses nd_VaddrStat-group; - } + type nw_Counter64; + description "Echo Replies received"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - container rtvrfMbr-items { + // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT + // Ephemeral data + leaf redirSent { + config "false"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_Counter64; + description "Redirects sent"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT + // Ephemeral data + leaf redirRcvd { + config "false"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type nw_Counter64; + description "Redirects received"; } - } - - grouping nd_StAdjEp-group { - // Operational state - // Type is an MO-Defined-Type - leaf operSt { + // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT + // Ephemeral data + leaf tooBigSent { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nd_StAdjOperSt; + type nw_Counter64; + description "Packet Too Big sent"; } - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT + // Ephemeral data + leaf tooBigRcvd { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type - type nd_StAdjOperStQual; + type nw_Counter64; + description "Packet Too Big received"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type - leaf name { + // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT + // Ephemeral data + leaf raSent { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type nw_Counter64; + description "Router Advertisements sent"; } - leaf addr { + + // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT + // Ephemeral data + leaf raRcvd { config "false"; - type address_Ip; + + type nw_Counter64; + description "Router Advertisements received"; } - // Mac address - // Inherited From nd:AAdjEp - // Type is an MO-Defined-Type - leaf mac { + // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT + // Ephemeral data + leaf rsSent { config "false"; - description "MAC"; - // Type is an MO-Defined-Type - type nd_AdjMac; + type nw_Counter64; + description "Router Solicitations sent"; } - // Rel-def target from EpDefRefToStAdjEpV6 - // Inherited From nd:StAdjEp - container rtfvEpDefRefToStAdjEpV6-items { - - // Abstract containment of rtfvEpDefRefToStAdjEpV6 derived from nd:StAdjEp - list RtFvEpDefRefToStAdjEpV6-list { - config "false"; - key "tDn"; + // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT + // Ephemeral data + leaf rsRcvd { + config "false"; - // Added containment: Prefix=rtfvEpDefRefToStAdjEpV6 - // Acquired From Package fv - uses fv_RtFvEpDefRefToStAdjEpV6_target-group; - } + type nw_Counter64; + description "Router Solicitations received"; } - } - grouping nd_DNSIfSearchListStats-group { - leaf dnsSearchListSuppress { + // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT + // Ephemeral data + leaf naSent { config "false"; - type boolean; - } - container server-items { - list DNSSearchListStats-list { - config "false"; - key "dnsSearchList"; - // Added containment: Prefix=server - // Acquired From Package nd - uses nd_DNSSearchListStats-group; - } + type nw_Counter64; + description "Neighbor Advertisements sent"; } - } - grouping nd_DNSSearchListStats-group { - leaf dnsSearchList { + // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT + // Ephemeral data + leaf naRcvd { config "false"; - type string; + + type nw_Counter64; + description "Neighbor Advertisements received"; } - leaf dnsSearchListLife { + + // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT + // Ephemeral data + leaf nsSent { config "false"; - type uint32; + + type nw_Counter64; + description "Neighbor Solicitations sent"; } - leaf dnsSearchListSeq { + + // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT + // Ephemeral data + leaf nsRcvd { config "false"; - type uint32; + + type nw_Counter64; + description "Neighbor Solicitations received"; } - } - grouping nd_DNSIfStats-group { - leaf dnsServerSuppress { + // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER + // Ephemeral data + leaf dupRAReceived { config "false"; - type boolean; - } - container server-items { - list DNSServerStats-list { - config "false"; - key "addr"; - // Added containment: Prefix=server - // Acquired From Package nd - uses nd_DNSServerStats-group; - } + type nw_Counter64; + description "Duplicate router RA received"; } - } - grouping nd_DNSServerStats-group { - leaf addr { + // Ephemeral data + leaf lastNghbrSolicitSent { config "false"; - type address_Ip; + type string; + description "Last neighbor solicitation sent"; } - leaf dnsServerLife { + + // Ephemeral data + leaf lastNghbrAdvertisementSent { config "false"; - type uint32; + type string; + description "Last neighbor advertisement sent"; } - leaf dnsServerSeq { + + // Ephemeral data + leaf lastRouterAdvertisementSent { config "false"; - type uint32; + type string; + description "Last router advertisement sent"; } - } - - grouping nd_IfRoutes-group { - // This object holds IPv6 ND Route command related properties - container rt-items { - list Route-list { - key "ndRouteAddr"; - - // Added containment: Prefix=rt - // Acquired From Package nd - uses nd_Route-group; - } + // Ephemeral data + leaf nextRouterAdvertisementSent { + config "false"; + type string; + description "Next neighbor advertisement sent"; } } - grouping nd_Route-group { - leaf ndRouteAddr { - type address_Ip; - } - - // Nd Route Life Time - // Type is an MO-Defined-Type - leaf ndRouteLifeTime { - description "Nd Route life time"; + grouping nd_VaddrGlobalStat-group { + description "ND offlist vlan statistics"; - // Type is an MO-Defined-Type - type nd_NdRtLifeTime; + // Ephemeral data + leaf vAddr { + config "false"; + type address_Ip; + description "Virtual IPv6 address"; } - // Nd Route Infinite Life Time - // Type is an MO-Defined-Type - leaf ndRouteLifeTimeInfinite { - description "Nd Route life time infinite"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf protocol { + config "false"; + type string; + description "Protocol"; } - // Set Default Route Preference Value for ND Route (RFC 4191) - // Type is an MO-Defined-Type - leaf routePreference { - description "Set Route Preference for ND Route (RFC 4191)"; - - // Type is an MO-Defined-Type - type nd_RtPrefForNdRt; + // Ephemeral data + leaf virtualMac { + config "false"; + type string; + description "Virtual MAC"; } - // Verify if route is present in Route table - // Type is an MO-Defined-Type - leaf verifyReachability { - description "Verify if route is present in Route table"; - - // Type is an MO-Defined-Type - type nw_AdminSt; + // Ephemeral data + leaf groupId { + config "false"; + type uint16; + description "Group id"; } - } - grouping nd_Pfx-group { - leaf addr { - type address_Ip; + // Ephemeral data + leaf clientUUID { + config "false"; + type uint32; + description "client UUID"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf lifetime { - description "Valid Lifetime"; + // Ephemeral data + leaf clientState { + config "false"; - // Type is an MO-Defined-Type - type nd_Lifetime; + type nd_VaddrClientState; + description "Client state"; } - // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf prefLifetime { - description "Preferred Lifetime"; + // Ephemeral data + leaf clientInUse { + config "false"; + type uint16; + description "Client in use"; + } - // Type is an MO-Defined-Type - type nd_PrefLifetime; + // Ephemeral data + leaf clientActiveState { + config "false"; + type string; + description "Client active or not"; } - // RA prefix Controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Prefix Controls"; + // Ephemeral data + leaf interface { + config "false"; + type string; + description "Interface"; + } - // Type is an MO-Defined-Type - type nd_PfxControl; + // Ephemeral data + leaf context { + config "false"; + type string; + description "Context Name (context-id)"; } } - grouping nd_DefaultPrefix-group { + grouping nd_IpV6Throttle-group { + description "IPV6 throttling"; - // Default prefix - // Type is an MO-Defined-Type - leaf defPrefix { - description "Default prefix"; + // Enable / Disable glean throttling + leaf adminSt { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Glean throttle state"; } - // Valid lifetime of the prefix default - // Type is an MO-Defined-Type - leaf defLifetime { - description "Valid lifetime for default prefix"; + // Threshold for syslog for number of packets hitting the entry + leaf syslog { - // Type is an MO-Defined-Type - type nd_Lifetime; + type nd_SyslogCnt; + description "Glean throttle syslog for number of packets"; } - // Preferred lifetime of the prefix default - // Type is an MO-Defined-Type - leaf defPrefLifetime { - description "Preferred lifetime for default prefix"; + // Max throttle packets count. Crossing this threshold, + // packet will not be throttled for a particular adjacency + leaf maxPacket { - // Type is an MO-Defined-Type - type nd_PrefLifetime; + type nd_MaxPacket; + description "Glean throttle pack count"; } - // Default RA prefix Controls - // Type is an MO-Defined-Type - leaf ctrl { - description "Prefix Controls"; + // Timeout for throttle setting for a particular adjacency + leaf timeout { - // Type is an MO-Defined-Type - type nd_PfxControl; + type nd_ThrTimeout; + description "Ipv4 glean throttle timeout"; } } - grouping nd_RouteAdvDNSServer-group { - leaf dnsServerAddr { - type address_Ip; - } + grouping nd_Vpc-group { + description "Ipv6 Nd Synchronize"; - // DNS Server Life Time - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf dnsServerLifeTime { - description "DNS server life time"; + // This objects hold per vpc domain information. There is only + // one vpc domain that is configurable in the system + container dom-items { + list VpcDom-list { + key "domainId"; - // Type is a Local-MO-Defined-Type - type nd_DNSServerLifeTime_RouteAdvDNSServer_dnsServerLifeTime; + uses nd_VpcDom-group; + description "VPC Domain list"; + } + description "VPC Domain"; } + } - // DNS Server Infinite Life Time - // Type is an MO-Defined-Type - leaf dnsServerLifeTimeInfinite { - description "DNS server life time infinite"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } + grouping nd_VpcDom-group { + description "VPC Domain"; - // DNS Server Sequence Number - // Type is an MO-Defined-Type - leaf dnsSequenceNum { - description "DNS server sequence number"; + leaf domainId { - // Type is an MO-Defined-Type - type nd_DNSSeqNum; + type vpc_DomId; + description "Respective VPC Domain"; } - // Flag to indicate if dns server is configured or not - // Type is an MO-Defined-Type - leaf dnsServer { - description "IPv6 nd ra DNS server"; + // Enable/Disable IPV6 ND SYNC + leaf ndSync { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "IPV6 ND Sync"; } } - grouping nd_RouteAdvDNSSearchList-group { - leaf dnsSearchListName { - type string; - } - - // DNS Search List Life Time - // Type is an MO-Defined-Type - // Default value handled in local MO type - leaf dnsSearchListLifeTime { - description "DNS search list life time"; + grouping nd_L2Stat-group { + description "L2 Interface Statistics"; - // Type is a Local-MO-Defined-Type - type nd_DNSServerLifeTime_RouteAdvDNSSearchList_dnsSearchListLifeTime; - } + // Ephemeral data + container if-items { - // DNS Search List Infinite Life Time - // Type is an MO-Defined-Type - leaf dnsSearchListLifeTimeInfinite { - description "DNS search list life time infinite"; + // Ephemeral data + list L2If-list { + config "false"; + key "id"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses nd_L2If-group; + description "L2 Interface list"; + } + description "L2 Interface"; } + } - // DNS Search List Sequence Number - // Type is an MO-Defined-Type - leaf dnsSequenceNum { - description "DNS search list sequence number"; - - // Type is an MO-Defined-Type - type nd_DNSSeqNum; - } + grouping nd_L2If-group { + description "L2 Interface"; - // Flag to indicate if dns search list is configured or not - // Type is an MO-Defined-Type - leaf dnssl { - description "IPv6 nd ra DNS search list"; + leaf id { + config "false"; - // Type is an MO-Defined-Type - type nw_AdminSt; + type nw_IfId; + description "Interface"; } - } - grouping nd_RouterStat-group { - leaf routerAddr { - config "false"; - type address_Ip; - } - leaf ifName { - config "false"; - type string; - } - leaf lastUpdateTime { - config "false"; - type decimal64 { - fraction-digits 2; - } - } - leaf hopLimit { - config "false"; - type uint32; - } - leaf lifetime { - config "false"; - type uint32; - } - leaf addrFlag { + // Ephemeral data + leaf ndPackets { config "false"; - type uint16; + type uint64; + description "Total ND Packets On L2 Interface"; } - leaf otherFlag { + } + + grouping nd_OffListVlan-group { + description "ND offlist vlan statistics"; + + // Ephemeral data + leaf vlanId { config "false"; type uint16; + description "Offlist vlan id"; } - leaf mtu { + + // Ephemeral data + leaf totalOfflistEntries { config "false"; type uint16; + description "Total offlist entries for vlan"; } - leaf homeagentFlag { + + // Ephemeral data + leaf addr { config "false"; - type uint16; + type address_Ip; + description "Address"; } - // Type is an MO-Defined-Type - leaf preference { + // Ephemeral data + leaf age { config "false"; - description "Preference flag"; - - // Type is an MO-Defined-Type - type nd_RouterPreference; + type string; + description "Age"; } - leaf reachableTime { + + // Ephemeral data + leaf macAddr { config "false"; - type uint64; + type string; + description "Mac address"; } - leaf retransmissionTime { + + // Ephemeral data + leaf flags { config "false"; - type uint64; + type uint16; + description "Address"; } - container pfxstat-items { - list RaPrefixStat-list { + } + + grouping nd_ProxyStat-group { + description "ND Proxy Statistics"; + + // Ephemeral data + container vlan-items { + + // Ephemeral data + list VlanIntf-list { config "false"; - key "prefixAddr"; + key "id"; - // Added containment: Prefix=pfxstat - // Acquired From Package nd - uses nd_RaPrefixStat-group; + uses nd_VlanIntf-group; + description "Vlan Interface list"; } + description "Vlan Interface"; } } - grouping nd_RaPrefixStat-group { - leaf prefixAddr { - config "false"; - type address_Ip; - } - leaf onlinkFlag { + grouping nd_VlanIntf-group { + description "Vlan Interface"; + + // Ephemeral data + leaf id { config "false"; - type boolean; + + type nw_IfId; + description "Interface"; } - leaf autonomousFlag { - config "false"; - type boolean; + + // Ephemeral data + container if-items { + + // Ephemeral data + list PhysicalIntf-list { + config "false"; + key "id"; + + uses nd_PhysicalIntf-group; + description "Physical Interface list"; + } + description "Physical Interface"; } - leaf validLifetime { + } + + grouping nd_PhysicalIntf-group { + description "Physical Interface"; + + leaf id { config "false"; - type uint64; + + type nw_IfId; + description "Interface"; } - leaf prefLifetime { + + // Ephemeral data + leaf numProxies { config "false"; - type uint32; + type string; + description "Number of Proxies in Last 24 Hours"; } } - grouping nd_IfStats-group { + grouping nd_GlobalTrafficStats-group { + description "ICMPv6/ND global traffic counters"; // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf totSent { config "false"; - description "Total messages sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Total messages sent"; } // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf totRvcd { config "false"; - description "Total messages received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Total messages received"; } // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf errSent { config "false"; - description "Error messages sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Error messages sent"; } // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf errRcvd { config "false"; - description "Error messages received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Error messages received"; } // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf ifDownDropSent { config "false"; - description "Interface Down Drop Count sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Interface Down Drop Count sent"; } // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf ifDownDropRcvd { config "false"; - description "Interface Down Drop Count received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Interface Down Drop Count received"; } // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropHaNotRdy { config "false"; - description "Adjacency not recovered from AM after HA"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Adjacency not recovered from AM after HA"; } // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropInvldTtlMct { config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts allowed due to inv ttl on vPC-MCT"; } // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropSrcMacOwnRcvd { config "false"; - description "Pkts dropped as source mac addr is own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as source mac addr is own"; } // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropTgtIpNotOwnRcvd { config "false"; - description "Pkts dropped as tgt ip addr is not own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as tgt ip addr is not own"; } // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dropSrcIpNotOwnRcvd { config "false"; - description "Pkts dropped as src ip addr is not own"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Pkts dropped as src ip addr is not own"; } // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf destUnreachSent { config "false"; - description "Destination Unreachables sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Destination Unreachables sent"; } // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf destUnreachRcvd { config "false"; - description "Destination Unreachables received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Destination Unreachables received"; } // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf adminProhibSent { config "false"; - description "Administratively Prohibited sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Administratively Prohibited sent"; } // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf adminProhibRcvd { config "false"; - description "Administratively Prohibited received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Administratively Prohibited received"; } // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf timeExcdSent { config "false"; - description "Time Exceeded sent "; - // Type is an MO-Defined-Type type nw_Counter64; + description "Time Exceeded sent "; } // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf timeExcdRcvd { config "false"; - description "Time Exceeded received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Time Exceeded received"; } // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf parmPrblmSent { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Parameter Problems sent"; } // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf parmPrblmRcvd { config "false"; - description "Parameter Problems received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Parameter Problems received"; } // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoReqSent { config "false"; - description "Echo Request sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Request sent"; } // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoReqRcvd { config "false"; - description "Echo Request received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Request received"; } // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoRepSent { config "false"; - description "Echo Replies sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Replies sent"; } // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf echoRepRcvd { config "false"; - description "Echo Replies received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Echo Replies received"; } // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf redirSent { config "false"; - description "Redirects sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Redirects sent"; } // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf redirRcvd { config "false"; - description "Redirects received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Redirects received"; } // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf tooBigSent { config "false"; - description "Packet Too Big sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Packet Too Big sent"; } // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf tooBigRcvd { config "false"; - description "Packet Too Big received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Packet Too Big received"; } // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf raSent { config "false"; - description "Router Advertisements sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Advertisements sent"; } // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf raRcvd { config "false"; - description "Router Advertisements received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Advertisements received"; } // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf rsSent { config "false"; - description "Router Solicitations sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Solicitations sent"; } // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf rsRcvd { config "false"; - description "Router Solicitations received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Router Solicitations received"; } // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf naSent { config "false"; - description "Neighbor Advertisements sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Advertisements sent"; } // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf naRcvd { config "false"; - description "Neighbor Advertisements received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Advertisements received"; } // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf nsSent { config "false"; - description "Neighbor Solicitations sent"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Solicitations sent"; } // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf nsRcvd { config "false"; - description "Neighbor Solicitations received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Neighbor Solicitations received"; } // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type + // Ephemeral data leaf dupRAReceived { config "false"; - description "Duplicate router RA received"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Duplicate router RA received"; } // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpthRcvd { config "false"; - description "Fastpath Packets"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Fastpath Packets"; } // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpathDsbleIgnRcvd { config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; - // Type is an MO-Defined-Type type nw_Counter64; + description "Ignored Fastpath Packets - Fastpath disabled"; } // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type + // Ephemeral data leaf fastpathOtherIgnRcvd { config "false"; - description "Ignored fastpath packets - others"; - // Type is an MO-Defined-Type type nw_Counter64; - } - leaf lastNghbrSolicitSent { - config "false"; - type string; - } - leaf lastNghbrAdvertisementSent { - config "false"; - type string; - } - leaf lastRouterAdvertisementSent { - config "false"; - type string; - } - leaf nextRouterAdvertisementSent { - config "false"; - type string; - } - leaf nsRetransmitInterval { - config "false"; - type uint64; - } - leaf ndNudRetryBase { - config "false"; - type uint64; - } - leaf ndNudRetryInterval { - config "false"; - type uint64; - } - leaf ndNudRetryAttemps { - config "false"; - type uint64; - } - leaf sendRedirect { - config "false"; - type boolean; - } - leaf redirectCause { - config "false"; - type uint64; - } - leaf sendUnreachables { - config "false"; - type boolean; - } - leaf maxDadAttempts { - config "false"; - type uint16; - } - leaf currentDadAttempt { - config "false"; - type uint16; - } - leaf ifState { - config "false"; - type string; - } - leaf ifAddr { - config "false"; - type string; - } - leaf linkLocalAddr { - config "false"; - type string; - } - leaf linkLocalAddrState { - config "false"; - type string; - } - leaf ndMacExtractState { - config "false"; - type string; - } - leaf statsLastReset { - config "false"; - type string; + description "Ignored fastpath packets - others"; } - // Vinci specific: Proxy NA count @@@ ICMPV6_PKT_PROXY_NA_CNT - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNaCount { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT + // Ephemeral data + leaf mldV1QueriesSent { config "false"; - description "Proxy NA count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V1 queries sent"; } - // Vinci specific: Proxy NA to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NA - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNaToBdCount { + // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT + // Ephemeral data + leaf mldV1QueriesRecv { config "false"; - description "Proxy NA to BD count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V1 queries received"; } - // Vinci specific: Proxy NS to BD count @@@ ICMPV6_PKT_FLOOD_BACK_TO_BD_NS - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf proxyNsToBdCount { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT + // Ephemeral data + leaf mldV2QueriesSent { config "false"; - description "Proxy NS to BD count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V2 queries sent"; } - // Vinci specific: RARP NS Count @@@ ICMPV6_PKT_NS_SENT_FOR_RARP_CASE - // From Interface nd:VinciStats - // Type is an MO-Defined-Type - leaf rarpNsCount { + // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT + // Ephemeral data + leaf mldV2QueriesRecv { config "false"; - description "RARP NS count"; - // Type is an MO-Defined-Type type nw_Counter64; + description "V2 queries received"; } - container ra-items { - - // Added containment as a singleton: Prefix=ra - // Acquired From Package nd - uses nd_RouterAdv-group; - } - - container vip-items { - - // Added containment as a singleton: Prefix=vip - // Acquired From Package nd - uses nd_IfVipClientStats-group; - } - container addr-items { - list IfIPv6AddrStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=addr - // Acquired From Package nd - uses nd_IfIPv6AddrStats-group; - } - } - container pfx-items { - list PrefixStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=pfx - // Acquired From Package nd - uses nd_PrefixStats-group; - } - } - container rt-items { - list RouteStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=rt - // Acquired From Package nd - uses nd_RouteStats-group; - } - } - container addrtree-items { - list AddrTreeStats-list { - config "false"; - key "addr"; - - // Added containment: Prefix=addrtree - // Acquired From Package nd - uses nd_AddrTreeStats-group; - } - } - } - - grouping nd_RouterAdv-group { - leaf raInterval { - config "false"; - type uint64; - } - leaf raIntervalMin { - config "false"; - type uint64; - } - leaf mFlag { - config "false"; - type boolean; - } - leaf oFlag { - config "false"; - type boolean; - } - leaf hopLimit { - config "false"; - type uint64; - } - leaf mtu { - config "false"; - type uint64; - } - leaf routerLifetime { + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV1ReportsSent { config "false"; - type uint64; + + type nw_Counter64; + description "V1 reports sent"; } - leaf reachableTime { + + // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV1ReportsRecv { config "false"; - type uint64; + + type nw_Counter64; + description "V1 reports received"; } - leaf retransmitTime { + + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT + // Ephemeral data + leaf mldV2ReportsSent { config "false"; - type uint64; + + type nw_Counter64; + description "V2 reports sent"; } - leaf suppressRa { + + // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT + // Ephemeral data + leaf mldV2ReportsRecv { config "false"; - type boolean; + + type nw_Counter64; + description "V2 reports received"; } - leaf suppressRaMtu { + + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT + // Ephemeral data + leaf mldV1LeavesSent { config "false"; - type boolean; + + type nw_Counter64; + description "V1 leaves sent"; } - } - grouping nd_IfVipClientStats-group { - container vipaddr-items { - list IfVipAddrStats-list { - config "false"; - key "addr"; + // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT + // Ephemeral data + leaf mldV1LeavesRecv { + config "false"; - // Added containment: Prefix=vipaddr - // Acquired From Package nd - uses nd_IfVipAddrStats-group; - } + type nw_Counter64; + description "V1 leaves received"; } } - grouping nd_IfVipAddrStats-group { - leaf addr { + grouping nd_VaddrLinkLocalStat-group { + description "ICMPv6/ND link local vaddr statistics"; + + // Ephemeral data + leaf vAddr { config "false"; type address_Ip; + description "Virtual IPv6 address"; } - leaf lastNghbrSolicitSent { - config "false"; - type string; - } - leaf lastNghbrAdvertisementSent { + + // Ephemeral data + leaf virtualMac { config "false"; type string; + description "Virtual MAC"; } - leaf lastRouterAdvertisementSent { + + // Ephemeral data + leaf interface { config "false"; type string; + description "Interface name"; } - leaf nextRouterAdvertisementSent { + + // Ephemeral data + leaf active { config "false"; type string; + description "Active state"; } } - grouping nd_IfIPv6AddrStats-group { - leaf addr { - config "false"; - type address_Ip; - } - leaf addrState { + grouping nd_VPCStat-group { + description "ND/ICMPv6 VPC statistics"; + + // Ephemeral data + leaf cfsStatus { config "false"; type string; + description "IPv6 ND sync status"; } - } - grouping nd_PrefixStats-group { - leaf addr { + // Ephemeral data + leaf layer3Routing { config "false"; - type address_Ip; + type string; + description "IPv6 ND L3 routing"; } - leaf maskLen { + + // Ephemeral data + leaf syncProcDropRecvPullReq { config "false"; type uint16; - } - leaf enabled { - config "false"; - type boolean; + description "Drop the received CFS pull request"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf lifetime { + // Ephemeral data + leaf syncProcDropRecvPushMsg { config "false"; - description "Valid Lifetime"; - - // Type is an MO-Defined-Type - type nd_Lifetime; + type uint16; + description "Drop the received CFS push message"; } - // Preferred lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf prefLifetime { + // Ephemeral data + leaf syncIgnoreSendPullReq { config "false"; - description "Preferred Lifetime"; - - // Type is an MO-Defined-Type - type nd_Lifetime; + type uint16; + description "Ignore to send pull request using CFSoE"; } - leaf onLink { + + // Ephemeral data + leaf syncIgnoreSendPushMsg { config "false"; - type boolean; + type uint16; + description "Ignore to send push message using CFSoE"; } - leaf offLink { + + // Ephemeral data + leaf syncDropIMApiFailed { config "false"; - type boolean; + type uint16; + description "IM api failed while processing CFS payload"; } - leaf autonomous { + + // Ephemeral data + leaf syncDropMcemApiFailed { config "false"; - type boolean; + type uint16; + description "MCECM api failed while processing CFS payload"; } - leaf rtrAddr { + + // Ephemeral data + leaf syncDropInvalidPcIod { config "false"; - type boolean; + type uint16; + description "Invalid MCT port-channel iod for CFS payload"; } - leaf ifAssignedAddr { + + // Ephemeral data + leaf syncProcDropPtLookupFailed { config "false"; - type boolean; + type uint16; + description "PT lookup failed while processing CFS payload"; } - leaf refCount { + + // Ephemeral data + leaf syncProcDropRespFailedNomct { config "false"; - type uint32; + type uint16; + description "Invalid MCT iod while processing CFS payload"; } - } - grouping nd_RouteStats-group { - leaf addr { + // Ephemeral data + leaf syncProcDropRespFailed { config "false"; - type address_Ip; + type uint16; + description "Sending CFS response failed for CFS payload"; } - // Type is an MO-Defined-Type - leaf routePreference { + // Ephemeral data + leaf syncProcDropMCEMIfindexVpcConvFailed { config "false"; - description "Route Preference"; - - // Type is an MO-Defined-Type - type nd_RouterPreference; + type uint16; + description "Unabled to retrieve VPC id from ifindex for push"; } - // Valid lifetime of the prefix @@@ (0xffffffff == infinite) - // Type is an MO-Defined-Type - leaf routeLifetime { + // Ephemeral data + leaf syncProcDropMCEMVpcIfindexConvFailed { config "false"; - description "Route Lifetime"; - - // Type is an MO-Defined-Type - type nd_OperNdRtLifeTime; + type uint16; + description "Unabled to retrieve ifindex from vpc id"; } - leaf octetUnits { + + // Ephemeral data + leaf PeriodicSyncProcDropMCEMIfindexVpcConvFailed { config "false"; - type uint32; + type uint16; + description "Unabled to retrieve VPC id from ifindex during periodic sync"; } - leaf verifyReachability { + + // Ephemeral data + leaf periodicSyncProcDropMCEMVpcIfindexConvFailed { config "false"; - type boolean; + type uint16; + description "Unabled to retrieve ifindex from vpc id during periodic sync"; } - leaf advRouteInRoute { + + // Ephemeral data + leaf syncProcRespSent { config "false"; - type boolean; + type uint16; + description "Response sent via CFSoE"; } - leaf advRouteWithZeroLifetime { + + // Ephemeral data + leaf syncProcRespRcvd { config "false"; - type boolean; + type uint16; + description "Response received via CFSoE"; } - } - grouping nd_AddrTreeStats-group { - leaf addr { + // Ephemeral data + leaf syncProcRespRcvdErr { config "false"; - type address_Ip; + type uint16; + description "Response received via CFSoE with errors"; } - leaf maskLen { + + // Ephemeral data + leaf syncProcRcvdMsg { config "false"; - type uint8; + type uint16; + description "Received message via CFSoE"; } - // Type is an MO-Defined-Type - leaf addrType { + // Ephemeral data + leaf syncProcSendFailed { config "false"; - description "IPv6 address"; - - // Type is an MO-Defined-Type - type nd_AddrType; + type uint16; + description "Send message failed via CFSoE"; } - leaf dadState { + + // Ephemeral data + leaf syncProcCfsRelDlvryFailed { config "false"; - type string; + type uint16; + description "MCECM send api failed via CFSoE"; } - leaf dadAttempt { + + // Ephemeral data + leaf syncProcCfsRelDlvrySuccess { config "false"; type uint16; + description "Send message succeeded via CFSoE"; } - } - grouping nd_VaddrStat-group { - leaf vaddrProto { + // Ephemeral data + leaf offlistProcDropPtAddFailed { config "false"; - type string; + type uint16; + description "PT add failed while processing offlist DB"; } - leaf groupId { + + // Ephemeral data + leaf offlistProcDropNoMem { config "false"; type uint16; + description "Memory alloc failed while processing offlist DB"; } - leaf clientUUID { + + // Ephemeral data + leaf offlistProcDropTmrCreateFailed { config "false"; - type uint32; + type uint16; + description "Timer create failed while processing offlist DB"; } - // From Interface nd:VADDRCommonField - // Type is an MO-Defined-Type - leaf clientState { + // Ephemeral data + leaf offlistProcDropAddAdjFailed { config "false"; - description "Client state"; - - // Type is an MO-Defined-Type - type nd_VaddrClientState; + type uint16; + description "Adjacency addition failed while processing offlist DB"; } - leaf clientInUse { + + // Ephemeral data + leaf offlistProcDropPtLookupFailed { config "false"; type uint16; + description "PT lookup failed while processing offlist DB"; } - leaf clientActiveState { + + // Ephemeral data + leaf offlistProcNoDropVlanMismatch { config "false"; - type string; + type uint16; + description "VLAN mismatch while processing offlist DB"; } - leaf interface { + + // Ephemeral data + leaf offlistProcDropSVIInvalid { config "false"; - type string; + type uint16; + description "SVI is invalid while processing offlist DB"; } - leaf context { + + // Ephemeral data + leaf offlistProcNoDropSVIDown { config "false"; - type string; + type uint16; + description "SVI is down while processing offlist DB"; } - // VADDR Statistics per i/f for - // specific client(protocol) -> VIP addr - container vip-items { - list VaddrStatVip-list { - config "false"; - key "vAddr"; - - // Added containment: Prefix=vip - // Acquired From Package nd - uses nd_VaddrStatVip-group; - } + // Ephemeral data + leaf offlistProcDropMCTDown { + config "false"; + type uint16; + description "MCT is down while processing offlist DB"; } - } - grouping nd_VaddrStatVip-group { - leaf vAddr { + // Ephemeral data + leaf offlistProcDropCtxtInvalid { config "false"; - type address_Ip; + type uint16; + description "Ctxt_type is invalid while processing offlist DB"; } - leaf virtualMac { + + // Ephemeral data + leaf offlistProcDropVRFInvalid { config "false"; - type string; + type uint16; + description "VRF invalid while processing offlist DB"; } - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { + // Ephemeral data + leaf offlistProcDropL3addrInvalid { config "false"; - description "Total messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IP address invalid while processing offlist DB"; } - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { + // Ephemeral data + leaf offlistProcDropL3addrSanityFailed { config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IP address sanity failed while processing offlist DB"; } - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { + // Ephemeral data + leaf offlistProcDropMacSanityFailed { config "false"; - description "Error messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "MAC sanity failed while processing offlist DB"; } - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { + // Ephemeral data + leaf offlistProcDropOwnMac { config "false"; - description "Error messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own MAC while processing offlist DB"; } - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { + // Ephemeral data + leaf offlistProcDropOwnIpv6Addr { config "false"; - description "Interface Down Drop Count sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own IPv6 address while processing offlist DB"; } - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { + // Ephemeral data + leaf offlistProcDropOwnVIPv6Addr { config "false"; - description "Interface Down Drop Count received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Own VIPv6 address while processing offlist DB"; } - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { + // Ephemeral data + leaf offlistProcDropCreateAdjFailed { config "false"; - description "Adjacency not recovered from AM after HA"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Create adjacency failed while processing offlist DB"; } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { + // Ephemeral data + leaf offlistProcDropSubnetMismatch { config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Subnet mismatch while processing offlist DB"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { + // Ephemeral data + leaf offlistProcDropAdjAlreadyExist { config "false"; - description "Pkts dropped as source mac addr is own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Adj already exist while processing offlist DB"; } - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { + // Ephemeral data + leaf offlistProcNoDropIpv6Disabled { config "false"; - description "Pkts dropped as tgt ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "IPv6 disabled on interface while processing offlist DB"; } - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { + // Ephemeral data + leaf offlistProcDropCount { config "false"; - description "Pkts dropped as src ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total drop count while processing offlist DB"; } - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { + // Ephemeral data + leaf offlistProcNoDropCount { config "false"; - description "Destination Unreachables sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total do not count while processing offlist DB"; } - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { + // Ephemeral data + leaf offlistProcAddAdj { config "false"; - description "Destination Unreachables received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total adjacency additions in offlist DB"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { + // Ephemeral data + leaf offlistProcDelAdj { config "false"; - description "Administratively Prohibited sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total adjacency deletion in offlist DB"; } - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { + // Ephemeral data + leaf offlistProcAdjAlreadyExist { config "false"; - description "Administratively Prohibited received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + type uint16; + description "Total duplicate adjacencies ignored in offlist DB"; } + } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + grouping ngmvpn_Entity-group { + description "Fabric Group Manager Entity, which hold NGMVPN entity information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { + // Operational state + leaf operSt { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_EntOperSt; + description "Operational State"; } - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { + // Operational errors qualifier + leaf operErr { config "false"; - description "Parameter Problems received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // This objects hold per ngmvpn instance information. There is only + // one instance of ngmvpn running in the system today + container inst-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses ngmvpn_Inst-group; + description "NGMVPN Instance MO"; } + } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping ngmvpn_Inst-group { + description "NGMVPN Instance MO"; + leaf overlayDistributedDr { + type boolean; + description "Overlay Distributed DR flag"; + } + leaf overlaySptOnly { + type boolean; + default "true"; + description "Overlay SPT only flag"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + leaf name { - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { - config "false"; - description "Redirects sent"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_InstCtrl; + description "Controls"; } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { + // Operational errors qualifier + leaf operErr { config "false"; - description "Redirects received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Address family type + // Ephemeral data + container af-items { - // Type is an MO-Defined-Type - type nw_Counter64; - } + // Ephemeral data + list Af-list { + config "false"; + key "type"; - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + uses ngmvpn_Af-group; + description "Specifies IPv4 or IPv6 type Address-Family list"; + } + description "Specifies IPv4 or IPv6 type Address-Family"; + } + container eventhist-items { + list EventHistory-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ngmvpn_EventHistory-group; + description "This object holds configuration details of event-history buffers list"; + } + description "This object holds configuration details of event-history buffers"; } + } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { + grouping ngmvpn_Af-group { + description "Specifies IPv4 or IPv6 type Address-Family"; + + // Type + // Ephemeral data + leaf type { config "false"; - description "Router Advertisements sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ngmvpn_AfT; + description "Type of Address-Family, where 0 represents IPv4 and 1 represents IPv6"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // This object holds mrib route db information + // Ephemeral data + container db-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Db-list { + config "false"; + key "dbtype"; + + uses ngmvpn_Db-group; + description "NGMVPN DB to query either ipv4 or ipv6 routes list"; + } + description "NGMVPN DB to query either ipv4 or ipv6 routes"; } + } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { + grouping ngmvpn_Db-group { + description "NGMVPN DB to query either ipv4 or ipv6 routes"; + + // Type of the repository + // Ephemeral data + leaf dbtype { config "false"; - description "Router Solicitations sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ngmvpn_DbT; + description "DB Type, where 0 represents IPv4 routes and 1 represents IPv6 routes"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { + leaf name { config "false"; - description "Router Solicitations received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vni-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Vni-list { + config "false"; + key "id"; + + uses ngmvpn_Vni-group; + description "Holds NGMVPN VNI information list"; + } + description "Holds NGMVPN VNI information"; } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + // This objects hold per pim domain (vrf) information + // Ephemeral data + container vrf-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses ngmvpn_Vrf-group; + description "Holds per NGMVPN domain (vrf) information list"; + } + description "Holds per NGMVPN domain (vrf) information"; } + } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + grouping ngmvpn_Vni-group { + description "Holds NGMVPN VNI information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + leaf id { + config "false"; + type uint32; + description "VNI ID"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + // Ephemeral data + container l2route-items { - // Type is an MO-Defined-Type - type nw_Counter64; + // Ephemeral data + list L2route-list { + config "false"; + key "src grp"; + + uses ngmvpn_L2route-group; + description "NGMVPN L2 route information list"; + } + description "NGMVPN L2 route information"; } + } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + grouping ngmvpn_L2route-group { + description "NGMVPN L2 route information"; - // Type is an MO-Defined-Type - type nw_Counter64; - } - leaf lastNghbrSolicitSent { + // Ephemeral data + leaf maskLen { config "false"; - type string; + type uint32; + description "Mask Length"; } - leaf lastNghbrAdvertisementSent { + + // Ephemeral data + leaf src { config "false"; - type string; + type address_Ip; + description "Source Address"; } - leaf lastRouterAdvertisementSent { + + // Ephemeral data + leaf grp { config "false"; - type string; + type address_Ip; + description "Group Address"; } - leaf nextRouterAdvertisementSent { - config "false"; - type string; + + // Fabric node + // Ephemeral data + container fabNode-items { + + // Ephemeral data + list FabNode-list { + config "false"; + key "ipAddr"; + + uses ngmvpn_FabNode-group; + description "Interested Fabric nodes list"; + } + description "Interested Fabric nodes"; } } - grouping nd_VaddrGlobalStat-group { - leaf vAddr { + grouping ngmvpn_FabNode-group { + description "Interested Fabric nodes"; + + // Ephemeral data + leaf ipAddr { config "false"; type address_Ip; + description "Fabric node IP Address"; } - leaf protocol { + } + + grouping ngmvpn_Vrf-group { + description "Holds per NGMVPN domain (vrf) information"; + + // Ephemeral data + leaf name { config "false"; type string; + description "Vrf Name"; } - leaf virtualMac { - config "false"; - type string; + + // This object holds mrib route group information + // Ephemeral data + container group-items { + + // Ephemeral data + list Group-list { + config "false"; + key "grpAddr"; + + uses ngmvpn_Group-group; + description "NGMVPN Route Group list"; + } + description "NGMVPN Route Group"; } - leaf groupId { + } + + grouping ngmvpn_Group-group { + description "NGMVPN Route Group"; + + // Ephemeral data + leaf grpAddr { config "false"; - type uint16; + type address_Ip; + description "Group Address"; } - leaf clientUUID { + leaf maskLen { config "false"; type uint32; + description "Mask Length of the group address"; } - // From Interface nd:VADDRCommonField - // Type is an MO-Defined-Type - leaf clientState { - config "false"; - description "Client state"; + // This object holds mrib route group information + // Ephemeral data + container source-items { - // Type is an MO-Defined-Type - type nd_VaddrClientState; + // Ephemeral data + list Source-list { + config "false"; + key "srcAddr"; + + uses ngmvpn_Source-group; + description "NGMVPN Route Source address list"; + } + description "NGMVPN Route Source address"; } - leaf clientInUse { + } + + grouping ngmvpn_Source-group { + description "NGMVPN Route Source address"; + + // Ephemeral data + leaf srcAddr { config "false"; - type uint16; + type address_Ip; + description "Source Address"; } - leaf clientActiveState { + leaf maskLen { config "false"; - type string; + type uint32; + description "Mask Length of the source address"; } - leaf interface { + leaf uptime { config "false"; type string; + description "Uptime of the route"; } - leaf context { - config "false"; - type string; + + // Fabric node + // Ephemeral data + container fabNode-items { + + // Ephemeral data + list FabNode-list { + config "false"; + key "ipAddr"; + + uses ngmvpn_FabNode-group; + description "Interested Fabric nodes list"; + } + description "Interested Fabric nodes"; } } - grouping nd_IpV6Throttle-group { + grouping ngmvpn_EventHistory-group { + description "This object holds configuration details of event-history buffers"; - // Enable / Disable glean throttling - // Type is an MO-Defined-Type - leaf adminSt { - description "Glean throttle state"; + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ngmvpn_EhType; + description "Configures type of event history"; } - // Threshold for syslog for number of packets hitting the entry - // Type is an MO-Defined-Type - leaf syslog { - description "Glean throttle syslog for number of packets"; + leaf size { - // Type is an MO-Defined-Type - type nd_SyslogCnt; + type ngmvpn_Size; + description "Configures buffer size in text per kb"; } + } - // Max throttle packets count. Crossing this threshold, - // packet will not be throttled for a particular adjacency - // Type is an MO-Defined-Type - leaf maxPacket { - description "Glean throttle pack count"; + grouping openflow_Entity-group { + description "Openflow Entity Object"; - // Type is an MO-Defined-Type - type nd_MaxPacket; + // Admin State of OpenFlow + leaf ofAdminSt { + + type nw_AdminSt; + default "disabled"; + description "OpenFlow Admin State"; } - // Timeout for throttle setting for a particular adjacency - // Type is an MO-Defined-Type - leaf timeout { - description "Ipv4 glean throttle timeout"; + // This object holds per openflow instance information. There is + // only one instance of openflow switch instance configuration + // allowed today + container pipeline-items { + list Inst-list { + key "pipelineId"; - // Type is an MO-Defined-Type - type nd_ThrTimeout; + uses openflow_Inst-group; + description "Openflow Switch Instance list"; + } + description "Openflow Switch Instance"; } } - grouping nd_Vpc-group { + grouping openflow_Inst-group { + description "Openflow Switch Instance"; + leaf switchId { + type uint8 { + range "1"; + } + default "1"; + description "Openflow Logical switch-id"; + } + leaf pipelineId { + type uint16 { + range "1..65535"; + } + description "Openflow Forwarding pipeline-id"; + } - // This objects hold per vpc domain information. There is only - // one vpc domain that is configurable in the system - container dom-items { - list VpcDom-list { - key "domainId"; + // This object holds openflow information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Added containment: Prefix=dom - // Acquired From Package nd - uses nd_VpcDom-group; + uses openflow_If-group; + description "OpenFlow Network Interface Port list"; + } + description "OpenFlow Network Interface Port"; + } + + container agent-items { + + uses openflow_Agent-group; + description "Openflow Agent Configuration Object"; + } + container ip-items { + list Controller-list { + key "ipaddr port vrf"; + + uses openflow_Controller-group; + description "OpenFlow Controller Config list"; } + description "OpenFlow Controller Config"; } } - grouping nd_VpcDom-group { + grouping openflow_If-group { + description "OpenFlow Network Interface Port"; - // Type is an MO-Defined-Type - leaf domainId { - description "Respective VPC Domain"; + leaf id { - // Type is an MO-Defined-Type - type vpc_DomId; + type nw_IfId; + description "To hold openflow port interface id"; } - // Enable/Disable IPV6 ND SYNC - // Type is an MO-Defined-Type - leaf ndSync { - description "IPV6 ND Sync"; + // openflow admin state of the network interface + leaf ofPort { - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Track whether Openflow is enabled on the Interface"; } } - grouping nd_OffListVlan-group { - leaf vlanId { - config "false"; - type uint16; - } - leaf totalOfflistEntries { - config "false"; - type uint16; + grouping openflow_Agent-group { + description "Openflow Agent Configuration Object"; + leaf defaultMiss { + type enumeration { + enum continue-controller { + value 1; + description "continue-controller"; + } + enum continue-drop { + value 2; + description "continue-drop"; + } + enum continue-normal { + value 3; + description "continue-normal"; + } + enum controller { + value 4; + description "controller"; + } + enum drop { + value 5; + description "drop"; + } + enum normal { + value 6; + description "normal"; + } + } + default "drop"; + description "Openflow Default Miss flow action"; } - leaf addr { - config "false"; + leaf sourceIpAddr { type address_Ip; + description "Source IP Addr for Connection to OpenFlow Controller"; } - leaf age { - config "false"; - type string; + leaf statsCollectInterval { + type uint16 { + range "0..600"; + } + default "7"; + description "OpenFlow Statistics Collection Interval"; } - leaf macAddr { - config "false"; - type string; + leaf packetInPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets In Rate in PPS"; } - leaf flags { - config "false"; - type uint16; + leaf controllerBurstPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets to Controller In PPS"; } - } - - grouping nd_GlobalTrafficStats-group { - - // Total Messages sent @@@ ICMPV6_PKT_MSGS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totSent { - config "false"; - description "Total messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf datapathId { + type string { + length "0..20"; + } + description "OpenFlow Protocol Datapath Id"; } - - // Total Messages received @@@ ICMPV6_PKT_MSGS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf totRvcd { - config "false"; - description "Total messages received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf protoVersion { + type enumeration { + enum 1.0 { + value 1; + description "OpenFlow 1.0 Protocol"; + } + enum 1.3 { + value 2; + description "OpenFlow 1.3 Protocol"; + } + enum Negotiate { + value 3; + description "Protocol Version Negotiated"; + } + } + default "Negotiate"; + description "Openflow Protocol Version"; } - - // Error Messages sent @@@ ICMPV6_PKT_ERR_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errSent { - config "false"; - description "Error messages sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf logFlowMod { + type boolean; + default "false"; + description "OpenFlow Mod Requests Logging Enable"; } - // Error Messages received @@@ ICMPV6_PKT_ERR_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf errRcvd { - config "false"; - description "Error messages received"; + // Shutdown OpenFlow Switch + leaf shutdown { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + default "disabled"; + description "Shutdown OpenFlow Switch Instance"; } - - // Interface Down Drop Count sent @@@ ICMPV6_PKT_SNT_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropSent { - config "false"; - description "Interface Down Drop Count sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf maxBackOff { + type uint16 { + range "1..65535"; + } + default "8"; + description "Openflow Protocol Max Backoff Timer"; } - - // Interface Down Drop Count received @@@ ICMPV6_PKT_RECV_DROP_IF_DOWN_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf ifDownDropRcvd { - config "false"; - description "Interface Down Drop Count received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf probeInterval { + type uint16 { + range "5..65535"; + } + default "180"; + description "Openflow Protocol Probe Interval"; } + container subswitch-items { + list SubSwitch-list { + key "subSwitchId"; - // Adjacency not recovered from AM after HA @@@ ICMPV6_PKT_DROPPED_HA_NOT_READY - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropHaNotRdy { - config "false"; - description "Adjacency not recovered from AM after HA"; - - // Type is an MO-Defined-Type - type nw_Counter64; + uses openflow_SubSwitch-group; + description "Openflow Logical Sub-Switch Instance list"; + } + description "Openflow Logical Sub-Switch Instance"; } + } - // Pkts allowed due to inv ttl on vPC-MCT @@@ ICMPV6_PKT_ALLOW_MCT_TTL_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropInvldTtlMct { - config "false"; - description "Pkts allowed due to inv ttl on vPC-MCT"; - - // Type is an MO-Defined-Type - type nw_Counter64; + grouping openflow_SubSwitch-group { + description "Openflow Logical Sub-Switch Instance"; + leaf subSwitchId { + type uint16 { + range "2..10"; + } + description "Openflow Logical Sub-switch id"; } - // Pkts dropped as source mac addr is own @@@ ICMPV6_PKT_RECV_DROP_OWN_SRC_MAC_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcMacOwnRcvd { - config "false"; - description "Pkts dropped as source mac addr is own"; + // Vlan BitMap + leaf vlan { - // Type is an MO-Defined-Type - type nw_Counter64; + type l2_VlanBitmap; + description "Openflow Logical Sub-switch Vlan Bitmap"; } - - // Pkts dropped as tgt ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_TARGET_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropTgtIpNotOwnRcvd { - config "false"; - description "Pkts dropped as tgt ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf packetInPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets In Rate in PPS"; } - - // Pkts dropped as src ip addr is not own @@@ ICMPV6_PKT_RECV_DROP_SRC_NOT_US_COUNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dropSrcIpNotOwnRcvd { - config "false"; - description "Pkts dropped as src ip addr is not own"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf controllerBurstPPS { + type uint16 { + range "0..65535"; + } + default "0"; + description "Openflow Channel Packets to Controller In PPS"; } - - // Destination Unreachables sent @@@ ICMPV6_PKT_DEST_UNREACHS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachSent { - config "false"; - description "Destination Unreachables sent"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf datapathId { + type string { + length "0..20"; + } + description "OpenFlow Protocol Datapath Id"; } - - // Destination Unreachables received @@@ ICMPV6_PKT_DEST_UNREACHS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf destUnreachRcvd { - config "false"; - description "Destination Unreachables received"; - - // Type is an MO-Defined-Type - type nw_Counter64; + leaf protoVersion { + type enumeration { + enum 1.0 { + value 1; + description "OpenFlow 1.0 Protocol"; + } + enum 1.3 { + value 2; + description "OpenFlow 1.3 Protocol"; + } + enum Negotiate { + value 3; + description "Protocol Version Negotiated"; + } + } + default "Negotiate"; + description "Openflow Protocol Version"; + } + leaf logFlowMod { + type boolean; + default "false"; + description "OpenFlow Mod Requests Logging Enable"; } - // Administratively Prohibited sent @@@ ICMPV6_PKT_ADMIN_PROHIBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibSent { - config "false"; - description "Administratively Prohibited sent"; + // Shutdown OpenFlow Switch + leaf shutdown { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + default "disabled"; + description "Shutdown OpenFlow Switch Instance"; } + leaf maxBackOff { + type uint16 { + range "1..65535"; + } + default "8"; + description "Openflow Protocol Max Backoff Timer"; + } + leaf probeInterval { + type uint16 { + range "5..65535"; + } + default "180"; + description "Openflow Protocol Probe Interval"; + } + container ip-items { + list Controller-list { + key "ipaddr port vrf"; - // Administratively Prohibited received @@@ ICMPV6_PKT_ADMIN_PROHIBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf adminProhibRcvd { - config "false"; - description "Administratively Prohibited received"; + uses openflow_Controller-group; + description "OpenFlow Controller Config list"; + } + description "OpenFlow Controller Config"; + } + } - // Type is an MO-Defined-Type - type nw_Counter64; + grouping openflow_Controller-group { + description "OpenFlow Controller Config"; + leaf ipaddr { + type address_Ip; + description "OpenFlow Controller Host IP Addr"; + } + leaf port { + type uint16 { + range "1..65535"; + } + description "OpenFlow Controller Host Port Number"; + } + leaf transport { + type enumeration { + enum tcp { + value 1; + description "Transmission Control Protocol (TCP)."; + } + enum tls { + value 2; + description "Transport Layer Security (TLS)."; + } + } + default "tcp"; + description "OpenFlow Controller Security TLS or TCP"; } - // Time Exceeded sent @@@ ICMPV6_PKT_TIME_EXCDS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdSent { - config "false"; - description "Time Exceeded sent "; + // vrf type + leaf vrf { - // Type is an MO-Defined-Type - type nw_Counter64; + type l3_VrfName; + description "OpenFlow Channel Interface VRF type default or management or vrf name"; } + } - // Time Exceeded received @@@ ICMPV6_PKT_TIME_EXCDS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf timeExcdRcvd { - config "false"; - description "Time Exceeded received"; + grouping ospfv3_Entity-group { + description "OSPFv3 control plane entity information"; - // Type is an MO-Defined-Type - type nw_Counter64; + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; } - // Parameter Problems sent @@@ ICMPV6_PKT_PARM_PROBS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmSent { + // Operational state + leaf operSt { config "false"; - description "Parameter Problems sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_EntOperSt; + description "Operational State"; } - // Parameter Problems received @@@ ICMPV6_PKT_PARM_PROBS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf parmPrblmRcvd { - config "false"; - description "Parameter Problems received"; + // This object holds OSPFv3 information that is operated at a + // interface level + container if-items { + list If-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_If-group; + description "OSPFv3 information operated at interface level list"; + } + description "OSPFv3 information operated at interface level "; } - // Echo Request sent @@@ ICMPV6_PKT_ECHOS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqSent { - config "false"; - description "Echo Request sent"; + // This object holds per OSPFv3 instance information. + container inst-items { + list Inst-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Inst-group; + description "OSPFv3 router instance information list"; + } + description "OSPFv3 router instance information"; } + } - // Echo Request received @@@ ICMPV6_PKT_ECHOS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoReqRcvd { - config "false"; - description "Echo Request received"; + grouping ospfv3_If-group { + description "OSPFv3 information operated at interface level "; - // Type is an MO-Defined-Type - type nw_Counter64; + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Echo Replies sent @@@ ICMPV6_PKT_ECHO_REPLIES_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepSent { - config "false"; - description "Echo Replies sent"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_IfAdminSt; + description "Admin State"; } - // Echo Replies received @@@ ICMPV6_PKT_ECHO_REPLIES_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf echoRepRcvd { - config "false"; - description "Echo Replies received"; + // OSPFv3 Instance name + leaf instance { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_InstanceName; + description "OSPFv3 instance name used with area command"; } - // Redirects sent @@@ ICMPV6_PKT_REDIRECTS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirSent { + // Dom name + leaf dom { config "false"; - description "Redirects sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DomName; + description "Dom to which the interface belongs to"; + } + leaf mtuIgnore { + type boolean; + description "Disable OSPF MTU mismatch detection"; } - // Redirects received @@@ ICMPV6_PKT_REDIRECTS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf redirRcvd { - config "false"; - description "Redirects received"; + // Instance identifier under interface + leaf instanceId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_InstanceID; + description "OSPFv3 instance identifier under interface"; } - // Packet Too Big sent @@@ ICMPV6_PKT_TOO_BIG_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigSent { - config "false"; - description "Packet Too Big sent"; + // Passive interface control + leaf passive { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_PassiveControl; + description "Suppress routing updates on the interface"; } - // Packet Too Big received @@@ ICMPV6_PKT_TOO_BIG_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf tooBigRcvd { - config "false"; - description "Packet Too Big received"; + // Network type + leaf nwT { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_NwT; + description "Network Type, can be Point-to-point or Broadcast"; } - // Router Advertisements sent @@@ ICMPV6_PKT_ROUTER_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raSent { - config "false"; - description "Router Advertisements sent"; + // Priority, used in determining the designated router on + // this network + leaf prio { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DesigPrio; + description "Router priority, used in determining the designated router on this network"; } - // Router Advertisements received @@@ ICMPV6_PKT_ROUTER_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf raRcvd { - config "false"; - description "Router Advertisements received"; + // Cost of the interface + leaf cost { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_IfCost; + description "Cost associated with interface"; } - // Router Solicitations sent @@@ ICMPV6_PKT_ROUTER_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsSent { - config "false"; - description "Router Solicitations sent"; + // Area to which this interface belongs to + leaf area { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_AreaId; + description "Area associated with interface"; + } + leaf advSecondary { + type boolean; + default "true"; + description "Advertise secondary IPv6 addresses"; } - // Router Solicitations received @@@ ICMPV6_PKT_ROUTER_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf rsRcvd { - config "false"; - description "Router Solicitations received"; + // Hello interval, interval between hello packets that + // OSPFv3 sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_HelloIntvl; + description "Interval between hello packets that OSPFv3 sends on the interface"; } - // Neighbor Advertisements sent @@@ ICMPV6_PKT_NEIGHBOR_ADV_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naSent { - config "false"; - description "Neighbor Advertisements sent"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_DeadIntvl; + description + "Dead interval, interval during which at least one + hello packet must be received from a neighbor before + the router declares that neighbor as down"; } - // Neighbor Advertisements received @@@ ICMPV6_PKT_NEIGHBOR_ADV_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf naRcvd { - config "false"; - description "Neighbor Advertisements received"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf reTxIntvl { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_ReTxIntvl; + description "Retransmit interval, the time between LSA retransmissions"; } - // Neighbor Solicitations sent @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_SNT_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsSent { - config "false"; - description "Neighbor Solicitations sent"; + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf txDelay { - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_TxDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } - // Neighbor Solicitations received @@@ ICMPV6_PKT_NEIGHBOR_SOLICITS_RECV_CNT - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf nsRcvd { - config "false"; - description "Neighbor Solicitations received"; + container rtospfIfDefToOspfv3If-items { - // Type is an MO-Defined-Type - type nw_Counter64; + list RtOspfIfDefToOspfv3If-list { + config "false"; + key "tDn"; + + uses ospf_RtOspfIfDefToOspfv3If_target-group; + } } - // Duplicate router RA received @@@ ICMPV6_PKT_DUP_ROUTER - // From Interface icmpv6:globalTraffic - // Type is an MO-Defined-Type - leaf dupRAReceived { - config "false"; - description "Duplicate router RA received"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type nw_Counter64; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Fastpath Packets @@@ ICMPV6_PKT_FASTPATH_RECV_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpthRcvd { - config "false"; - description "Fastpath Packets"; + grouping ospfv3_Inst-group { + description "OSPFv3 router instance information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9_][A-Za-z0-9_-]{0,19}"; + } + description "Name"; } - // Ignored Fastpath Packets - Fastpath disabled @@@ ICMPV6_PKT_RECV_DROP_FASTPATH_DISABLED_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathDsbleIgnRcvd { - config "false"; - description "Ignored Fastpath Packets - Fastpath disabled"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "Admin State"; } - // Ignored Fastpath Packets - others @@@ ICMPV6_PKT_RECV_DROP_REQUEST_IGNORE_CNT - // From Interface icmpv6:globalTrafficFastPath - // Type is an MO-Defined-Type - leaf fastpathOtherIgnRcvd { - config "false"; - description "Ignored fastpath packets - others"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_InstCtrl; + description "Controls"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesSent { + // Operational errors qualifier + leaf operErr { config "false"; - description "V1 queries sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + leaf flushRoutes { + type boolean; + default "false"; + description "Flush routes on non-graceful controlled restart"; + } + leaf isolate { + type boolean; + default "false"; + description "Isolate this router from OSPFv3 perspective"; } - // @@@ ICMPV6_PKT_MLD_V1_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1QueriesRecv { + // Memory alert level + leaf memAlert { config "false"; - description "V1 queries received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_MemAlertLevel; + description "OSPFv3 operational memory alert level"; } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesSent { - config "false"; - description "V2 queries sent"; + // This object holds per OSPFv3 VRF information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Dom-group; + description "OSPFv3 VRF information list"; + } + description "OSPFv3 VRF information"; } + } - // @@@ ICMPV6_PKT_MLD_V2_QUERY_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2QueriesRecv { - config "false"; - description "V2 queries received"; + grouping ospfv3_Dom-group { + description "OSPFv3 VRF information"; - // Type is an MO-Defined-Type - type nw_Counter64; + leaf name { + + type naming_Name256 { + length "1..64"; + pattern "[A-Za-z0-9!@#$\\^\\*=\\+\\{\\}\\.;:_-]{1,32}"; + } + description "This object holds name information"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsSent { - config "false"; - description "V1 reports sent"; + // Router id for this VRF, if this is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that VRF + leaf rtrId { - // Type is an MO-Defined-Type - type nw_Counter64; + type ip_RtrId; + description "Router identifier for this VRF"; } - // @@@ ICMPV6_PKT_MLD_V1_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1ReportsRecv { - config "false"; - description "V1 reports received"; + // Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_Counter64; + type nw_AdminSt; + description "OSPFv3 VRF administrative state"; } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsSent { + // VRF Operational state + leaf operSt { config "false"; - description "V2 reports sent"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ospfv3_OperSt; + description "Operational state of VRF"; } - // @@@ ICMPV6_PKT_MLD_V2_REPORTS_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV2ReportsRecv { + // Operational Router id for this VRF, if it is not specified + // the router-id is automatically picked up based on the + // first interface that comes up in that VRF + leaf operRtrId { config "false"; - description "V2 reports received"; - // Type is an MO-Defined-Type - type nw_Counter64; + type ip_RtrId; + description "Operational Router identifier for this VRF"; + } + leaf nameLookup { + type boolean; + default "false"; + description "Enable Name Lookup for OSPFv3 Neighbors"; + } + leaf passiveIntfDefault { + type boolean; + default "false"; + description "Suppress routing updates on the interface"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_SNT_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesSent { - config "false"; - description "V1 leaves sent"; + // This object holds OSPFv3 area information + container area-items { + list Area-list { + key "id"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_Area-group; + description "Configures OSPFv3 area properties list"; + } + description "Configures OSPFv3 area properties"; } - // @@@ ICMPV6_PKT_MLD_V1_LEAVES_RECV_CNT - // From Interface icmpv6:GlobalMLDStats - // Type is an MO-Defined-Type - leaf mldV1LeavesRecv { - config "false"; - description "V1 leaves received"; + // This object holds per address family OSPFv3 VRF information + container af-items { + list DomAf-list { + key "type"; - // Type is an MO-Defined-Type - type nw_Counter64; + uses ospfv3_DomAf-group; + description "OSPFv3 VRF information of IPv6 unicast address-family list"; + } + description "OSPFv3 VRF information of IPv6 unicast address-family"; } - } - grouping nd_VaddrLinkLocalStat-group { - leaf vAddr { - config "false"; - type address_Ip; - } - leaf virtualMac { - config "false"; - type string; - } - leaf interface { - config "false"; - type string; - } - leaf active { - config "false"; - type string; + // This object holds per VRF graceful restart information + container gr-items { + + uses ospfv3_Gr-group; + description "Object holding per OSPFv3 VRF graceful restart information"; } } - grouping nd_VPCStat-group { - leaf cfsStatus { - config "false"; - type string; - } - leaf layer3Routing { - config "false"; - type string; - } - leaf syncProcDropRecvPullReq { - config "false"; - type uint16; - } - leaf syncProcDropRecvPushMsg { - config "false"; - type uint16; - } - leaf syncIgnoreSendPullReq { - config "false"; - type uint16; - } - leaf syncIgnoreSendPushMsg { - config "false"; - type uint16; - } - leaf syncDropIMApiFailed { - config "false"; - type uint16; - } - leaf syncDropMcemApiFailed { - config "false"; - type uint16; - } - leaf syncDropInvalidPcIod { - config "false"; - type uint16; - } - leaf syncProcDropPtLookupFailed { - config "false"; - type uint16; - } - leaf syncProcDropRespFailedNomct { - config "false"; - type uint16; - } - leaf syncProcDropRespFailed { - config "false"; - type uint16; - } - leaf syncProcDropMCEMIfindexVpcConvFailed { - config "false"; - type uint16; - } - leaf syncProcDropMCEMVpcIfindexConvFailed { - config "false"; - type uint16; - } - leaf PeriodicSyncProcDropMCEMIfindexVpcConvFailed { - config "false"; - type uint16; - } - leaf periodicSyncProcDropMCEMVpcIfindexConvFailed { - config "false"; - type uint16; - } - leaf syncProcRespSent { - config "false"; - type uint16; - } - leaf syncProcRespRcvd { - config "false"; - type uint16; - } - leaf syncProcRespRcvdErr { - config "false"; - type uint16; - } - leaf syncProcRcvdMsg { - config "false"; - type uint16; - } - leaf syncProcSendFailed { - config "false"; - type uint16; - } - leaf syncProcCfsRelDlvryFailed { - config "false"; - type uint16; - } - leaf syncProcCfsRelDlvrySuccess { - config "false"; - type uint16; - } - leaf offlistProcDropPtAddFailed { - config "false"; - type uint16; - } - leaf offlistProcDropNoMem { - config "false"; - type uint16; - } - leaf offlistProcDropTmrCreateFailed { - config "false"; - type uint16; - } - leaf offlistProcDropAddAdjFailed { - config "false"; - type uint16; - } - leaf offlistProcDropPtLookupFailed { - config "false"; - type uint16; - } - leaf offlistProcNoDropVlanMismatch { - config "false"; - type uint16; - } - leaf offlistProcDropSVIInvalid { - config "false"; - type uint16; - } - leaf offlistProcNoDropSVIDown { - config "false"; - type uint16; - } - leaf offlistProcDropMCTDown { - config "false"; - type uint16; - } - leaf offlistProcDropCtxtInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropVRFInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropL3addrInvalid { - config "false"; - type uint16; - } - leaf offlistProcDropL3addrSanityFailed { - config "false"; - type uint16; - } - leaf offlistProcDropMacSanityFailed { - config "false"; - type uint16; - } - leaf offlistProcDropOwnMac { - config "false"; - type uint16; - } - leaf offlistProcDropOwnIpv6Addr { - config "false"; - type uint16; - } - leaf offlistProcDropOwnVIPv6Addr { - config "false"; - type uint16; - } - leaf offlistProcDropCreateAdjFailed { - config "false"; - type uint16; - } - leaf offlistProcDropSubnetMismatch { - config "false"; - type uint16; - } - leaf offlistProcDropAdjAlreadyExist { - config "false"; - type uint16; - } - leaf offlistProcNoDropIpv6Disabled { - config "false"; - type uint16; - } - leaf offlistProcDropCount { - config "false"; - type uint16; - } - leaf offlistProcNoDropCount { - config "false"; - type uint16; - } - leaf offlistProcAddAdj { - config "false"; - type uint16; + grouping ospfv3_Area-group { + description "Configures OSPFv3 area properties"; + + // Area id + leaf id { + + type ospfv3_AreaId; + description "Area Id as an integer or ip address"; } - leaf offlistProcDelAdj { - config "false"; - type uint16; + + // Area type (stub | nssa ) + leaf type { + + type ospfv3_AreaT; + description "Configure area type as NSSA or stub"; } - leaf offlistProcAdjAlreadyExist { - config "false"; - type uint16; + + // This object holds information about OSPFv3 virtual + // links + container vlink-items { + list Vlink-list { + key "nbrRtrId"; + + uses ospfv3_Vlink-group; + description "This object holds information about OSPFv3 virtual link list"; + } + description "This object holds information about OSPFv3 virtual link"; } } - grouping ngmvpn_Entity-group { + grouping ospfv3_Vlink-group { + description "This object holds information about OSPFv3 virtual link"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Router id associated with virtual link neighbor + leaf nbrRtrId { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type ip_RtrId; + description "Router id associated with virtual link neighbor"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Hello interval, interval between hello packets that + // OSPFv3 sends on the interface + leaf helloIntvl { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ospfv3_HelloIntvl; + description "Interval between hello packets that OSPFv3 sends on the interface"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; + // Dead interval, interval during which at least one + // hello packet must be received from a neighbor before + // the router declares that neighbor as down + leaf deadIntvl { - // Type is an MO-Defined-Type - type nw_EntOperSt; + type ospfv3_DeadIntvl; + description + "Dead interval, interval during which at least one + hello packet must be received from a neighbor before + the router declares that neighbor as down"; } - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Retransmit interval, time between LSA retransmissions. + // When a router sends an LSA to its neighbor, it keeps + // the LSA until it receives an acknowledgement from the + // neighbor. If the router receives no acknowldegement + // within the retransmit interval, the local router + // resends the LSA + leaf reTxIntvl { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type ospfv3_ReTxIntvl; + description "Retransmit interval, the time between LSA retransmissions"; } - // This objects hold per ngmvpn instance information. There is only - // one instance of ngmvpn running in the system today - container inst-items { + // Transmit delay, estimated time needed to send an LSA + // update packet + leaf txDelay { - // Added containment as a singleton: Prefix=inst - // Acquired From Package ngmvpn - uses ngmvpn_Inst-group; + type ospfv3_TxDelay; + description "Transmit delay, estimated time needed to send an LSA update packet"; } } - grouping ngmvpn_Inst-group { - leaf overlayDistributedDr { - type boolean; - } - leaf overlaySptOnly { - type boolean; - default "true"; - } + grouping ospfv3_DomAf-group { + description "OSPFv3 VRF information of IPv6 unicast address-family"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Address family type + leaf type { - // Type is an MO-Defined-Type - type nw_AdminSt; + type ospfv3_AfT; + description "IPv6 unicast address family type"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // Default metric + leaf defaultMetric { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type ospfv3_DefMetric; + description "Specify default metric for redistributed routes"; } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; + // Distance + leaf adminDistance { - // Type is an MO-Defined-Type - type nw_OperErrQual; + type ospfv3_AdminDist; + description "Adminitrative distance value"; } - // Address family type - container af-items { - list Af-list { - config "false"; - key "type"; + // This objects holds control distribution of default route leak policy + container defrtleak-items { - // Added containment: Prefix=af - // Acquired From Package ngmvpn - uses ngmvpn_Af-group; - } + uses ospfv3_DefRtLeakP-group; + description "Default route leak or the distribution policy"; } - container eventhist-items { - list EventHistory-list { - key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package ngmvpn - uses ngmvpn_EventHistory-group; + // Inter protocol route leak policy. This defines distribution + // of routes from other protocols to OSPF + container interleak-items { + list InterLeakP-list { + key "proto inst asn"; + + uses ospfv3_InterLeakP-group; + description "Redistribute information from another routing protocol list"; } + description "Redistribute information from another routing protocol"; } - } - - grouping ngmvpn_Af-group { - // Type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type of Address-Family, where 0 represents IPv4 and 1 represents IPv6"; + // Leak controls related to the number of routes leaked + container leakctrl-items { - // Type is an MO-Defined-Type - type ngmvpn_AfT; + uses ospfv3_LeakCtrlP-group; + description "Maximum number of prefixes redistributed to protocol"; } + } - // This object holds mrib route db information - container db-items { - list Db-list { - config "false"; - key "dbtype"; + grouping ospfv3_DefRtLeakP-group { + description "Default route leak or the distribution policy"; - // Added containment: Prefix=db - // Acquired From Package ngmvpn - uses ngmvpn_Db-group; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { + + type rtleak_Scope; + default "defrt"; + description "Scope"; + } + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Policy to control distribution of default route"; + } + leaf always { + type boolean; + description "Always advertise default leak"; } } - grouping ngmvpn_Db-group { + grouping ospfv3_InterLeakP-group { + description "Redistribute information from another routing protocol"; - // Type of the repository - // Type is an MO-Defined-Type - leaf dbtype { - config "false"; - description "DB Type, where 0 represents IPv4 routes and 1 represents IPv6 routes"; + // Scope of the policy (intra protocol, inter protcol, + // default route) + leaf scope { - // Type is an MO-Defined-Type - type ngmvpn_DbT; + type rtleak_Scope; + default "inter"; + description "Scope"; } - - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + leaf rtMap { + type string { + pattern ".*[!-~]{1,63}.*"; } + description "Policy to control distribution of default route"; } - // This objects hold per pim domain (vrf) information - container vni-items { - list Vni-list { - config "false"; - key "id"; + // Protocol from where the routes are leaked + leaf proto { - // Added containment: Prefix=vni - // Acquired From Package ngmvpn - uses ngmvpn_Vni-group; - } + type rtleak_Proto; + description "Protocol"; } - // This objects hold per pim domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Routing protocol instance, the routing instance of the + // protocol from where the routes are being leaked + leaf inst { - // Added containment: Prefix=vrf - // Acquired From Package ngmvpn - uses ngmvpn_Vrf-group; - } + type rtleak_Inst; + description "Instance"; } - } - grouping ngmvpn_Vni-group { - leaf id { - config "false"; - type uint32; - } - container l2route-items { - list L2route-list { - config "false"; - key "src grp"; + // Leak BGP routes from this Autonomous System (AS) <1-4294967295>|<1-65535>[.<0-65535>] Autonomous system number + leaf asn { - // Added containment: Prefix=l2route - // Acquired From Package ngmvpn - uses ngmvpn_L2route-group; + type rtleak_Asn { + pattern "((none)|([1-9]{1}[0-9]{0,8}|[1-3]{1}[0-9]{1,9}|4{1}[0-1]{1}[0-9]{8}|4{1}2{1}[0-8]{1}[0-9]{7}|4{1}2{1}9{1}[0-3]{1}[0-9]{6}|4{1}2{1}9{1}4{1}[0-8]{1}[0-9]{5}|4{1}2{1}9{1}4{1}9{1}[0-5]{1}[0-9]{4}|4{1}2{1}9{1}4{1}9{1}6{1}[0-6]{1}[0-9]{3}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}[0-1]{1}[0-9]{2}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}[0-8]{1}[0-9]{1}|4{1}2{1}9{1}4{1}9{1}6{1}7{1}2{1}9{1}[0-5]{1})|(([1-9][0-9]{0,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])\\.([0-9]{1,4}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])))"; } - } - } - - grouping ngmvpn_L2route-group { - leaf maskLen { - config "false"; - type uint32; - } - leaf src { - config "false"; - type address_Ip; - } - leaf grp { - config "false"; - type address_Ip; + description "Autonomous System Number"; } - // Fabric node - container fabNode-items { - list FabNode-list { - config "false"; - key "ipAddr"; + // SRv6 Prefix Type which is being leaked + leaf srv6PrefixType { - // Added containment: Prefix=fabNode - // Acquired From Package ngmvpn - uses ngmvpn_FabNode-group; - } + type rtleak_Srv6PrefixType; + description "SRv6 Prefix Type; Valid only when proto is srv6"; } - } - - grouping ngmvpn_FabNode-group { - leaf ipAddr { - config "false"; - type address_Ip; + leaf always { + type boolean; + description "Always advertise default leak"; } } - grouping ngmvpn_Vrf-group { - leaf name { - config "false"; - type string; - } + grouping ospfv3_LeakCtrlP-group { + description "Maximum number of prefixes redistributed to protocol"; - // This object holds mrib route group information - container group-items { - list Group-list { - config "false"; - key "grpAddr"; + // Controls on what to do when the number of routes cross + // the maximum route/prefix limit + leaf ctrl { - // Added containment: Prefix=group - // Acquired From Package ngmvpn - uses ngmvpn_Group-group; - } + type rtleak_Ctrl; + description "Controls"; } - } - grouping ngmvpn_Group-group { - leaf grpAddr { - config "false"; - type address_Ip; - } - leaf maskLen { - config "false"; - type uint32; + // Maximum limit on routes leaked + leaf max { + + type rtleak_MaxPfx; + description "Maximum Limit"; } - // This object holds mrib route group information - container source-items { - list Source-list { - config "false"; - key "srcAddr"; + // Threshold at which warning is issued when number of + // routes crosses the threshold + leaf thresh { - // Added containment: Prefix=source - // Acquired From Package ngmvpn - uses ngmvpn_Source-group; - } + type rtleak_Thresh; + description "Threshold"; } - } - grouping ngmvpn_Source-group { - leaf srcAddr { - config "false"; - type address_Ip; - } - leaf maskLen { - config "false"; - type uint32; - } - leaf uptime { - config "false"; - type string; + // Maximum number of retries to retrieve the leaked routes, + // this is applicable only when the routes are withdrawn + leaf retries { + + type rtleak_Retries; + description "Retries"; } - // Fabric node - container fabNode-items { - list FabNode-list { - config "false"; - key "ipAddr"; + // Duration between the retries + leaf duration { - // Added containment: Prefix=fabNode - // Acquired From Package ngmvpn - uses ngmvpn_FabNode-group; - } + type rtleak_Duration; + description "Duration"; } } - grouping ngmvpn_EventHistory-group { + grouping ospfv3_Gr-group { + description "Object holding per OSPFv3 VRF graceful restart information"; - // Type is an MO-Defined-Type - leaf type { - description "Configures type of event history"; + // Graceful restart controls + leaf ctrl { - // Type is an MO-Defined-Type - type ngmvpn_EhType; + type ospfv3_GrCtrl; + description "Graceful restart controls like planned, complete and disabled state"; + } + leaf helper { + type boolean; + default "true"; + description "Graceful restart helper mode"; } - // Type is an MO-Defined-Type - leaf size { - description "Configures buffer size in text per kb"; + // Graceful restart period + leaf gracePeriod { - // Type is an MO-Defined-Type - type ngmvpn_Size; + type ospfv3_GrPeriod; + description "Graceful restart period in seconds starting from 5 to 1800"; + } + leaf restartAge { + config "false"; + type uint32; + description "Graceful restart age"; } } grouping pim_Entity-group { + description "Holds PIM control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per pim instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package pim uses pim_Inst-group; + description "Holds per PIM instance information"; } } grouping pim_Inst-group { + description "Holds per PIM instance information"; + leaf evpnBorderLeaf { + type boolean; + description "EVPN Border Leaf flag"; + } leaf extraNet { type boolean; + description "Extranet RPF Lookup"; } - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf jpDelay { - description "Inter Packet Delay"; - // Type is an MO-Defined-Type type rtdmc_JPDelay; + description "Inter Packet Delay"; } // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrDelay { - description "Null Register Inter Batch Delay"; - // Type is an MO-Defined-Type type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrNumRt { - description "Null Register Number of Routes"; - // Type is an MO-Defined-Type type rtdmc_NRNumRt; + description "Null Register Number of Routes"; } leaf regStop { type boolean; + description "Register until stops"; } // This objects hold per pim domain (vrf) information @@ -137006,94 +152601,101 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package pim uses pim_Dom-group; + description "Holds per PIM domain (vrf) information list"; } + description "Holds per PIM domain (vrf) information"; } // This object holds global config for pim container gl-items { - // Added containment as a singleton: Prefix=gl - // Acquired From Package pim uses pim_Gl-group; + description "This object holds global configuration for PIM"; } // PIM databases + // Ephemeral data container routedb-items { + + // Ephemeral data list RouteDb-list { config "false"; key "type"; - // Added containment: Prefix=routedb - // Acquired From Package pim uses pim_RouteDb-group; + description "This object holds multicast route database information list"; } + description "This object holds multicast route database information"; } } grouping pim_Dom-group { + description "Holds per PIM domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; + description "Domain Controls"; } // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf mtu { - description "Maximum Transmission Unit"; - // Type is an MO-Defined-Type type rtdmc_Mtu; + description "Maximum Transmission Unit"; } // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf autoEnable { - description "Auto Enable"; - // Type is an MO-Defined-Type type rtdmc_AutoEnable; + description "Auto Enable"; } leaf logNbhChng { type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { type boolean; + description "Flush Routes"; } leaf bfd { type boolean; + description "BFD"; + } + + leaf jpDelay { + + type rtdmc_JpDelayRange; + description "Join-Prune message inter-packet delay"; + } + + leaf regRateLmt { + + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors"; } // This object holds policy for Anycast RP Function @@ -137101,27 +152703,30 @@ module Cisco-NX-OS-device { // and all the peer's local info Anycast RP is not supported for BSR and Auto-RP container acastrpfunc-items { - // Added containment as a singleton: Prefix=acastrpfunc - // Acquired From Package pim uses pim_AcastRPFuncP-group; + description "This object holds policy for Anycast RP Function"; + } + + container assert-items { + + uses pim_Assert-group; + description "This model is used to configure assert events for PIM"; } // This object holds policy for // Auto-RP method of RP discovery container autorp-items { - // Added containment as a singleton: Prefix=autorp - // Acquired From Package pim uses pim_AutoRPP-group; + description "This object holds policy for Auto-RP method of RP discovery"; } // This object holds policy for // Bootstrap Router method of RP discovery container bsr-items { - // Added containment as a singleton: Prefix=bsr - // Acquired From Package pim uses pim_BSRP-group; + description "Holds policy for Bootstrap Router method of RP discovery"; } // PIM databases @@ -137130,27 +152735,27 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim uses pim_Db-group; + description "This object acts as a database for multicast route information list"; } + description "This object acts as a database for multicast route information"; } // This object holds the pim dom related statistics + // Ephemeral data container domstats-items { - // Added containment as a singleton: Prefix=domstats - // Acquired From Package pim uses pim_DomStats-group; + description "This object holds the PIM domain related statistics"; } container eventHist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventHist - // Acquired From Package pim uses pim_EventHistory-group; + description "This object is used to configure event-history buffers list"; } + description "This object is used to configure event-history buffers"; } // This object holds pim information that is operated at a @@ -137159,106 +152764,89 @@ module Cisco-NX-OS-device { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package pim uses pim_If-group; + description "Holds PIM information that is operated at a interface level list"; } + description "Holds PIM information that is operated at a interface level"; } // This object holds resource (router state) limit policy // to limit amount of multicast routing state on the router container limit-items { - // Added containment as a singleton: Prefix=limit - // Acquired From Package pim uses pim_ResP-group; + description "Holds resource (router state) limit policy to limit amount of multicast routing state on the router"; } // This object holds policy for // Any Source Multicast (ASM) pattern container asm-items { - // Added containment as a singleton: Prefix=asm - // Acquired From Package pim uses pim_ASMPatP-group; + description "Holds policy for Any Source Multicast (ASM) pattern"; } // This object holds policy for // Source Specific Multicast (SSM) pattern container ssm-items { - // Added containment as a singleton: Prefix=ssm - // Acquired From Package pim uses pim_SSMPatP-group; + description "Holds policy for Source Specific Multicast (SSM) pattern"; } // This object holds policy for // Bidirectional Multicast (BiDir) pattern container bidir-items { - // Added containment as a singleton: Prefix=bidir - // Acquired From Package pim uses pim_BidirPatP-group; + description "Holds policy for Bidirectional Multicast (BiDir) pattern"; } // This object holds policy for Static RP container staticrp-items { - // Added containment as a singleton: Prefix=staticrp - // Acquired From Package pim uses pim_StaticRPP-group; + description "Holds policy for Static RP"; } // This object holds the pim control traffic stats container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim uses pim_TrafficStats-group; + description "Holds the PIM control traffic statistics"; } } grouping pim_AcastRPFuncP-group { + description "This object holds policy for Anycast RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Anycast RP Unique Local Interface - // Inherited From rtdmc:AAcastRPFuncP - // Type is an MO-Defined-Type leaf localIf { - description "Local Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Local Interface"; } // This object holds Anycast RP Peer Info @@ -137266,214 +152854,195 @@ module Cisco-NX-OS-device { list AcastRPPeer-list { key "addr rpSetAddr"; - // Added containment: Prefix=peer - // Acquired From Package pim uses pim_AcastRPPeer-group; + description "This object holds Anycast RP Peer Information list"; } + description "This object holds Anycast RP Peer Information"; } } grouping pim_AcastRPPeer-group { + description "This object holds Anycast RP Peer Information"; leaf rpSetAddr { type address_Ip; + description "IP Address of node performing the function"; } leaf addr { type address_Ip; + description "Address"; + } + } + + grouping pim_Assert-group { + description "This model is used to configure assert events for PIM"; + + // AssertRate + leaf assertRtLmt { + + type rtdmc_AssertRateLmt; + description "Configure Rate limit for pim asserts"; } } grouping pim_AutoRPP-group { + description "This object holds policy for Auto-RP method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Auto-RP Control - // Inherited From rtdmc:AAutoRPP - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type rtdmc_AutoRPCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim uses pim_RPFilterP-group; + description "Holds policy for choosing RPs from among RP candidates"; } // This object holds policy for // choosing Mapping Agent from among the candidates container mafilter-items { - // Added containment as a singleton: Prefix=mafilter - // Acquired From Package pim uses pim_MAFilterP-group; + description "This object holds policy for choosing Mapping Agent among the candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim uses pim_RPFuncP-group; + description "Holds policy for RP Function"; } // This object holds policy for // Auto-RP Mapping Agent Function container mafunc-items { - // Added containment as a singleton: Prefix=mafunc - // Acquired From Package pim uses pim_MAFuncP-group; + description "This object holds policy for Auto-RP Mapping Agent Function"; } } grouping pim_RPFilterP-group { + description "Holds policy for choosing RPs from among RP candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_MAFilterP-group { + description "This object holds policy for choosing Mapping Agent among the candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_RPFuncP-group { + description "Holds policy for RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Priority - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Interval - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } // Scope - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf addr { type address_Ip; + description "AutoRP Cand RP Address"; } leaf useSendRPAnnCommand { type boolean; + description "Flag to use send-rp-announce"; } // This object holds multicast group ranges for RP @@ -137481,1094 +153050,1044 @@ module Cisco-NX-OS-device { list RPGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim uses pim_RPGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } } grouping pim_RPGrpRange-group { + description "This object holds multicast group ranges for RP"; leaf override { type boolean; + description "Flag to override RP preference to use Static over Dynamic RP"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf bidir { type boolean; + description "BiDir Groups"; } } grouping pim_MAFuncP-group { + description "This object holds policy for Auto-RP Mapping Agent Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Scope - // Inherited From rtdmc:AMAFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf useSendRPDisCommand { type boolean; + description "Flag to use send-rp-discovery"; } } grouping pim_BSRP-group { + description "Holds policy for Bootstrap Router method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // BSR Control - // Inherited From rtdmc:ABSRP - // Type is an MO-Defined-Type leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type type rtdmc_BSRCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim uses pim_RPFilterP-group; + description "Holds policy for choosing RPs from among RP candidates"; } // This object holds policy for // choosing BSRs from among BSR candidates container bsrfilter-items { - // Added containment as a singleton: Prefix=bsrfilter - // Acquired From Package pim uses pim_BSRFilterP-group; + description "Holds BSR policy to filter from other BSR candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim uses pim_RPFuncP-group; + description "Holds policy for RP Function"; } // This object holds policy for // Bootstrap Router Function container bsrfunc-items { - // Added containment as a singleton: Prefix=bsrfunc - // Acquired From Package pim uses pim_BSRFuncP-group; + description "Holds policy for Bootstrap Router Function"; } } grouping pim_BSRFilterP-group { + description "Holds BSR policy to filter from other BSR candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim_BSRFuncP-group { + description "Holds policy for Bootstrap Router Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Hash Mask Len - // Inherited From rtdmc:ABSRFuncP - // Modified by Override: pim:BSRFuncP->hashLen - // Type is an MO-Defined-Type leaf hashLen { - description "Hash Mask Len"; - // Type is an MO-Defined-Type type rtdmc_BSRHashLen { range "1..32"; } + description "Hash Mask Len"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } } grouping pim_Db-group { + description "This object acts as a database for multicast route information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type rtdmc_DbT; + description "Type"; } container autorp-items { list AutoRPPInfo-list { config "false"; key "addr"; - // Added containment: Prefix=autorp - // Acquired From Package pim uses pim_AutoRPPInfo-group; + description "Holds PIM Auto-RP information list"; } + description "Holds PIM Auto-RP information"; } container bsr-items { list BSRInfo-list { config "false"; key "addr"; - // Added containment: Prefix=bsr - // Acquired From Package pim uses pim_BSRInfo-group; + description "This object holds information related to PIM Selected Bootstrap Router list"; } + description "This object holds information related to PIM Selected Bootstrap Router"; } container grange-items { list RPGrange-list { config "false"; key "addr"; - // Added containment: Prefix=grange - // Acquired From Package pim uses pim_RPGrange-group; + description "Holds information about RP group range list"; } + description "Holds information about RP group range"; } // PIM Group/Src MOs + // Ephemeral data container src-items { + + // Ephemeral data list Route-list { config "false"; key "src grp"; - // Added containment: Prefix=src - // Acquired From Package pim uses pim_Route-group; + description "Holds PIM Route, having Group and Source information list"; } + description "Holds PIM Route, having Group and Source information"; } container rp-items { list RPInfo-list { config "false"; key "addr"; - // Added containment: Prefix=rp - // Acquired From Package pim uses pim_RPInfo-group; + description "PIM Rendezvous Point information list"; } + description "PIM Rendezvous Point information"; } } grouping pim_AutoRPPInfo-group { + description "Holds PIM Auto-RP information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "Source address"; } leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } leaf priority { config "false"; type uint32; + description "Priority"; } leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim_BSRInfo-group { + description "This object holds information related to PIM Selected Bootstrap Router"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "Source address"; } leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } leaf priority { config "false"; type uint32; + description "Priority"; } leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim_RPGrange-group { + description "Holds information about RP group range"; leaf addr { config "false"; type address_Ip; + description "IP Address for Group Range"; } - // Inherited From rtdmc:RPGrange - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Group Range flags"; - // Type is an MO-Defined-Type type rtdmc_GRangeFlags; + description "Group Range flags"; } leaf rpAddr { config "false"; type address_Ip; + description "RP address for this group range"; } } grouping pim_Route-group { + description "Holds PIM Route, having Group and Source information"; - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf ver { config "false"; type uint32; + description "Version"; } + + // Ephemeral data leaf src { config "false"; type address_Ip; + description "Source"; } + + // Ephemeral data leaf grp { config "false"; type address_Ip; + description "Group"; } + + // Ephemeral data leaf rpAddrRoute { config "false"; type address_Ip; + description "Route RP addr"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf iif { config "false"; - description "Incoming interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Incoming interface"; } + + // Ephemeral data leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Expiry Timestamp"; } + + // Ephemeral data leaf rpfNbr { config "false"; type address_Ip; + description "RPF Nbr Address"; } + + // Ephemeral data leaf rpfSrc { config "false"; type address_Ip; + description "RPF Source Address"; } + + // Ephemeral data leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Uptime"; } + + // Ephemeral data leaf assertTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Assert Timeout"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf rtType { config "false"; - description "Route Uptime"; - // Type is an MO-Defined-Type type rtdmc_RtFlags; + description "Route Uptime"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf swPktCnt { config "false"; - description "Software Packet Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf swByteCnt { config "false"; - description "Software Byte Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Byte Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf hwPktCnt { config "false"; - description "Hardware Packet Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf hwByteCnt { config "false"; - description "Hardware Byte Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Byte Count"; } + + // Ephemeral data leaf assertMetric { config "false"; type uint32; + description "Assert metric"; } + + // Ephemeral data leaf assertMetricPref { config "false"; type uint32; + description "Assert metric preference"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type + // Ephemeral data leaf routeBits { config "false"; - description "RP WC Bit"; - // Type is an MO-Defined-Type type rtdmc_RouteBits; + description "RP WC Bit"; } + + // Ephemeral data leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } + + // Ephemeral data leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } } grouping pim_RPInfo-group { + description "PIM Rendezvous Point information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { config "false"; type address_Ip; + description "RP address"; } leaf local { config "false"; type boolean; + description "Is RP local"; } leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "RP uptime"; } leaf arpExp { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Auto RP Expiry timer"; } leaf bsrExp { config "false"; - type string; + type union { + type string; + type uint64; + } + description "BSR RP Expiry timer"; } leaf bsrAddr { config "false"; type address_Ip; + description "Selected BSR Address"; } leaf priority { config "false"; type uint32; + description "RP Priority"; } - // Inherited From rtdmc:RPInfo - // Type is an MO-Defined-Type leaf discType { config "false"; - description "RP source type"; - // Type is an MO-Defined-Type type rtdmc_RPSourceType; + description "RP source type"; } leaf dfOrdinal { config "false"; type uint32; + description "Bidir DF Ordinal"; } - // Rel-def from RP2Grange container rsrP2Grange-items { - // Abstract containment of rsrP2Grange derived from pim:RPInfo list RsRP2Grange-list { config "false"; key "tDn"; - // Added containment: Prefix=rsrP2Grange - // Acquired From Package pim uses pim_RsRP2Grange_source-group; + description "RP to Group range mapping list"; } + description "RP to Group range mapping"; } } grouping pim_DomStats-group { + description "This object holds the PIM domain related statistics"; - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regSent { config "false"; - description "Registers Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvd { config "false"; - description "Registers Received "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received "; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nullRegSent { config "false"; - description "Null Registers Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Null Registers Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nullRegRcvd { config "false"; - description "Null Registers Received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Null Registers Received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regStopSent { config "false"; - description "Register Stop Sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Register Stop Sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regStopRcvd { config "false"; - description "Register Stop Received "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Register Stop Received "; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdSSM { config "false"; - description "Registers Received for SSM"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received for SSM"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdBiDir { config "false"; - description "Registers Received for BiDir"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received for BiDir"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdAndNotRP { config "false"; - description "Registers Received but not RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Registers Received but not RP"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsSent { config "false"; - description "Bootstrap message sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRcvd { config "false"; - description "Bootstrap message received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPSent { config "false"; - description "Candidate RP message sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Candidate RP message sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPRcvd { config "false"; - description "Candidate RP message received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Candidate RP message received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsFromNonNbr { config "false"; - description "Bootstrap message from non-neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message from non-neighbor"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsFromBorderIF { config "false"; - description "Bootstrap message from border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap message from border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsLenErr { config "false"; - description "Bootstrap length error"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap length error"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRPFFail { config "false"; - description "Bootstrap messages for which RPF Failed"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap messages for which RPF Failed"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrBsRcvdLisNotConf { config "false"; - description "Bootstrap received listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap received listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPFromBorderIF { config "false"; - description "Bootstrap Candidate RP From border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap Candidate RP From border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsrCRPRcvdLisNotConf { config "false"; - description "Bootstrap candidate RP received but listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Bootstrap candidate RP received but listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPAnnouncesSent { config "false"; - description "RP announcements sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP announcements sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPAnnouncesRcvd { config "false"; - description "RP announcements received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP announcements received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPDiscoveriesSent { config "false"; - description "RP discoveries sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP discoveries sent"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPDiscoveriesRcvd { config "false"; - description "RP discoveries received"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "RP discoveries received"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPRPFFailed { config "false"; - description "Auto RP RPF Failed"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP RPF Failed"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPFromBorderIF { config "false"; - description "Auto RP from border interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP from border interface"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPInvalidType { config "false"; - description "Auto RP invalid type"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP invalid type"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPTTLExp { config "false"; - description "Auto RP TTL expired"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP TTL expired"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf autoRPRcvdLisNotConf { config "false"; - description "Auto RP received but listen not configured"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Auto RP received but listen not configured"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf cpRPFFailNoRoute { config "false"; - description "Control plane RPF fail due to no route"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Control plane RPF fail due to no route"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpRPFFailNoRoute { config "false"; - description "Data Plane RPF fail due to no route"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane RPF fail due to no route"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpNoMcastState { config "false"; - description "Data Plane no multicast state found"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane no multicast state found"; } - // Inherited From rtdmc:DomStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dpCrtRouteStateCnt { config "false"; - description "Data Plane create route state count"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Data Plane create route state count"; } } grouping pim_EventHistory-group { + description "This object is used to configure event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type type pim_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { - description "configures buffer size in text/kb"; - // Type is an MO-Defined-Type type pim_Size; + description "configures buffer size in text/kb"; } } grouping pim_If-group { + description "Holds PIM information that is operated at a interface level"; // Interface Control - // Type is an MO-Defined-Type leaf ctrl { - description "Interface Controls"; - // Type is an MO-Defined-Type type pim_IfCtrl; + description "Interface Controls"; } // Designated Router Priority - // Type is an MO-Defined-Type leaf drPrio { - description "Designated Router Priority"; - // Type is an MO-Defined-Type type pim_DRPrio; + description "Designated Router Priority level"; } // Designated Router Delay - // Type is an MO-Defined-Type leaf drDelay { - description "Designated Router Delay"; - // Type is an MO-Defined-Type type pim_DRDelay; + description "Designated Router Delay value"; } leaf jpRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Join Prune Policy name"; } leaf neighRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor route-map Policy"; } leaf neighpfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor prefix-list Policy"; } leaf border { type boolean; + description "Border policy - Treat interface as boundary of PIM domain"; } leaf passive { type boolean; + description "Passive interface - No send or receive"; } leaf rtEpPDn { type string; + description "L3 Router EpP DN"; } leaf ipAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } - // Type is an MO-Defined-Type leaf bfdInst { - description "BFD Instance"; - // Type is an MO-Defined-Type type pim_BfdInstSt; + description "BFD Instance State"; } leaf pimSparseMode { type boolean; + description "Sparse Mode configured"; + } + leaf rfcStrict { + type boolean; + description "Do not process joins from unknown neighbors on this interface"; } - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // PIM databases @@ -138577,22 +154096,25 @@ module Cisco-NX-OS-device { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim uses pim_Db-group; + description "This object acts as a database for multicast route information list"; } + description "This object acts as a database for multicast route information"; } // This object holds mrib route db information + // Ephemeral data container ifdb-items { + + // Ephemeral data list Ifdb-list { config "false"; key "ifdbtype"; - // Added containment: Prefix=ifdb - // Acquired From Package pim uses pim_Ifdb-group; + description "Holds PIM route db information list"; } + description "Holds PIM route db information"; } // This object holds the join-prune traffic policy @@ -138600,671 +154122,553 @@ module Cisco-NX-OS-device { list JPTrP-list { key "policyDir"; - // Added containment: Prefix=jp - // Acquired From Package pim uses pim_JPTrP-group; + description "This object holds the join-prune traffic policy list"; } + description "This object holds the join-prune traffic policy"; } // This object holds the hello traffic policy container hello-items { - // Added containment as a singleton: Prefix=hello - // Acquired From Package pim uses pim_HelloTrP-group; + description "This object holds the hello traffic policy"; } // This object holds the pim control traffic stats container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim uses pim_TrafficStats-group; + description "Holds the PIM control traffic statistics"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping pim_Ifdb-group { + description "Holds PIM route db information"; // Type of the repository - // Type is an MO-Defined-Type + // Ephemeral data leaf ifdbtype { config "false"; - description "represents repository type"; - // Type is an MO-Defined-Type type pim_ifdbT; + description "represents repository type"; } - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // This object holds pim neighbor information + // Ephemeral data container adj-items { + + // Ephemeral data list AdjEp-list { config "false"; key "addr"; - // Added containment: Prefix=adj - // Acquired From Package pim uses pim_AdjEp-group; + description "This object holds PIM neighbor information list"; } + description "This object holds PIM neighbor information"; } // This object holds the pim interface related statistics + // Ephemeral data container ifprop-items { - // Added containment as a singleton: Prefix=ifprop - // Acquired From Package pim uses pim_IfProp-group; + description "This object holds the PIM interface related statistics"; } // This object holds the pim interface related statistics + // Ephemeral data container ifstats-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package pim uses pim_IfStats-group; + description "Holds the PIM interface related statistics"; } } grouping pim_AdjEp-group { + description "This object holds PIM neighbor information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Address"; } + + // Ephemeral data leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } + + // Ephemeral data leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } + + // Ephemeral data leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } // This object holds the pim neighbor related statistics + // Ephemeral data container adjstats-items { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package pim uses pim_AdjStats-group; + description "This object holds the PIM neighbor related statistics"; } } grouping pim_AdjStats-group { + description "This object holds the PIM neighbor related statistics"; + + // Ephemeral data leaf lastHelloRcvd { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Hello Received"; } // Longest Hello Interval - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf longHelloItvl { config "false"; - description "Longest Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Longest Hello Interval"; } // Last Hold Time advertised by Peer - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf lastHoldTime { config "false"; - description "Last Hold Time"; - // Type is an MO-Defined-Type type rtdmc_HoldTime; + description "Last Hold Time"; } // non-hello expiry timer resets - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nonHelloExpResets { config "false"; - description "Non-Hello Expiry Timer Resets"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Non-Hello Expiry Timer Resets"; } } grouping pim_IfProp-group { + description "This object holds the PIM interface related statistics"; + + // Ephemeral data leaf nextHello { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Time when next hello is sent"; } + + // Ephemeral data leaf nbrHoldTime { config "false"; type uint32; + description "PIM Neighbor HoldTime"; } + + // Ephemeral data leaf dr { config "false"; type address_Ip; + description "PIM Designated Router information"; } // Generation id - // Type is an MO-Defined-Type + // Ephemeral data leaf genID { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type pim_PropGenId; + description "Generation Identifier"; } } grouping pim_IfStats-group { + description "Holds the PIM interface related statistics"; - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloSent { config "false"; - description "number of hello sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloRcvd { config "false"; - description "number of hello rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSent { config "false"; - description "number of JP sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvd { config "false"; - description "number of JP rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertRcvd { config "false"; - description "number of assert rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsSent { config "false"; - description "number of grafts sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsRcvd { config "false"; - description "number of grafts rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckSent { config "false"; - description "number of graft ack sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckRcvd { config "false"; - description "number of graft ack rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferSent { config "false"; - description "number of DF-offer sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferRcvd { config "false"; - description "number of DF-offer rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerSent { config "false"; - description "number of DF winner sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerRcvd { config "false"; - description "number of DF winner rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffSent { config "false"; - description "number of DF backoff sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffRcvd { config "false"; - description "number of DF backoff rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesSent { config "false"; - description "number of DF Passes sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesRcvd { config "false"; - description "number of DF Passes rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf chksumErr { config "false"; - description "Checksum errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Checksum errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktRcvd { config "false"; - description "number of invalid pkt rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf authFail { config "false"; - description "number of authentication failures"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of authentication failures"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktLenErr { config "false"; - description "number of packet length errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packet length errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf badVerPkt { config "false"; - description "number of bad version pkts"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of bad version pkts"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmSelf { config "false"; - description "number of pkts from Self"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of pkts from Self"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmNonNbr { config "false"; - description "packets from Non-Neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "packets from Non-Neighbor"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktOnPassiveIf { config "false"; - description "number of packets on passive interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets on passive interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvdOnRPF { config "false"; - description "number of packets rcvd on RPF interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on RPF interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinNoRP { config "false"; - description "*,G Join rcvd with no RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "*,G Join rcvd with no RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinWrongRp { config "false"; - description "number of packets rcvd on Wrong RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on Wrong RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSSMRcvd { config "false"; - description "number of packets rcvd for SSM groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for SSM groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpBidirRcvd { config "false"; - description "number of packets rcvd for Bidir groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for Bidir groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterIn { config "false"; - description "number of JP filtered by inbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by inbound policy "; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterOut { config "false"; - description "number of JP filtered by outbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by outbound policy "; } } grouping pim_JPTrP-group { + description "This object holds the join-prune traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf RtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Out Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "In Prefix List"; } // in route-map for out-bound policy application @@ -139274,769 +154678,656 @@ module Cisco-NX-OS-device { // mod="implicit" // label="Out Prefix List" // /> Interval used between peers - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf itvl { - description "Periodic Interval"; - // Type is an MO-Defined-Type type rtdmc_JPItvl; + description "Periodic Interval"; } - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf policyDir { - description "Policy Direction "; - // Type is an MO-Defined-Type type rtdmc_PolicyDirType; + description "Policy Direction "; } } grouping pim_HelloTrP-group { + description "This object holds the hello traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Hello Interval - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf helloItvl { - description "Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Hello Interval"; } // Authentication Type - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authT { - description "Authentication Type"; - // Type is an MO-Defined-Type type rtdmc_AuthT; + description "Authentication Type"; } // Authentication Key - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authKey { - description "Authentication Key"; - // Type is an MO-Defined-Type type rtdmc_AuthKey; + description "Authentication Key"; } } grouping pim_TrafficStats-group { - leaf lastClearTs { - config "false"; - type string; - } + description "Holds the PIM control traffic statistics"; - // Register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regRcvd { + // AutoRP Announce Received + leaf autorpAnnRcvd { config "false"; - description "Register Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Announce Received"; } - // Null register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegRcvd { + // AutoRP Discovery received + leaf autorpDiscRcvd { config "false"; - description "Null Register Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Discovery Received"; } - // Reg Stop Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopRcvd { + // AutoRP Announce Sent + leaf autorpAnnSent { config "false"; - description "Reg Stop Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Announce Sent"; } - // Bootstrap received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsRcvd { + // Auto RP Discovery sent + leaf autorpDiscSent { config "false"; - description "Bootstrap received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Discovery Sent"; } - // Candidate Rp Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRpRcvd { + // AutoRP RPF Sent + leaf autorpRpfSent { config "false"; - description "Candidate RP Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP RPF Sent"; } - // AutoRP Announce Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnRcvd { + // AutoRP Border Deny + leaf autorpBrdDeny { config "false"; - description "AutoRP Announce Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Border Deny"; } - // AutoRP Discovery received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscRcvd { + // AutoRP No Listen + leaf autorrpNoListn { config "false"; - description "AutoRP Discovery Received"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP No Listen"; } - // Null Register Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegSent { + // AutoRP TTL Expired + leaf autorpTtlExp { config "false"; - description "NULL Register sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP TTL Expired"; } - // Register stop sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopSent { + // AutoRP Invalid type + leaf autorpInvType { config "false"; - description "Register Stop Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "AutoRP Invalid Type"; + } + leaf lastClearTs { + config "false"; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - // Bootstrap sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsSent { + // Register received + leaf regRcvd { config "false"; - description "Bootstrap Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received"; } - // Candidate RP Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRPSent { + // Null register received + leaf nullRegRcvd { config "false"; - description "Candidate RP Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Null Register Received"; } - // AutoRP Announce Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnSent { + // Reg Stop Received + leaf regStopRcvd { config "false"; - description "AutoRP Announce Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Reg Stop Received"; } - // Auto RP Discovery sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscSent { + // Bootstrap received + leaf bsRcvd { config "false"; - description "AutoRP Discovery Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap received"; } - // AutoRP RPF Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpRpfSent { + // Candidate Rp Received + leaf candRpRcvd { config "false"; - description "AutoRP RPF Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Received"; } - // AutoRP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpBrdDeny { + // Null Register Sent + leaf nullRegSent { config "false"; - description "AutoRP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "NULL Register sent"; } - // AutoRP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorrpNoListn { + // Register stop sent + leaf regStopSent { config "false"; - description "AutoRP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Stop Sent"; } - // AutoRP TTL Expired - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpTtlExp { + // Bootstrap sent + leaf bsSent { config "false"; - description "AutoRP TTL Expired"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap Sent"; } - // AutoRP Invalid type - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpInvType { + // Candidate RP Sent + leaf candRPSent { config "false"; - description "AutoRP Invalid Type"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Sent"; } // BS no NBR - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsNoNbr { config "false"; - description "BS No NBR"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No NBR"; } // BS Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsBordDeny { config "false"; - description "BS Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Border Deny"; } // BS LEngth errors - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsLenErr { config "false"; - description "BS Len Errors"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Len Errors"; } // BS RPF Failed - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsRpfFail { config "false"; - description "BS RPF Failed"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS RPF Failed"; } // BS NO Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf bsNoLis { config "false"; - description "BS No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No Listen"; } // Candidate RP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf candrpNoLis { config "false"; - description "Candidate RP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP No Listen"; } // Candidate RP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf candrpBordDeny { config "false"; - description "Candidate RP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Border Deny"; } // REgister received not RP - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdNoRP { config "false"; - description "Register Received not RP"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received not RP"; } // Register Received for SSM - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdForSSM { config "false"; - description "Register Received Not SSM"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received Not SSM"; } // Register received for bidir - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf regRcvdForBd { config "false"; - description "Register received for Bidir"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register received for Bidir"; } // no route - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type leaf noRoute { config "false"; - description "No Route"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Route"; } } grouping pim_ResP-group { + description "Holds resource (router state) limit policy to limit amount of multicast routing state on the router"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf max { - description "Maximum Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Maximum Multicast Entries"; } // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf rsvd { - description "Reserved Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Reserved Multicast Entries"; } leaf rtMap { type string; + description "Reserved Entries Route Map"; } } grouping pim_ASMPatP-group { + description "Holds policy for Any Source Multicast (ASM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Controls - // Inherited From rtdmc:AASMPatP - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type rtdmc_ASMCtrl; + description "Controls"; } leaf preBuildSpt { type boolean; + description "Pre-Build-SPT"; } leaf force { type boolean; + description "force pre-build-spt"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } // This object holds (S,G) expiry timer // policy for specified range container sgexp-items { - // Added containment as a singleton: Prefix=sgexp - // Acquired From Package pim uses pim_SGRangeExpP-group; + description "Holds (S,G) expiry timer policy for specified range"; } // This object holds group range // to use only shared tree container shared-items { - // Added containment as a singleton: Prefix=shared - // Acquired From Package pim uses pim_SharedRangeP-group; + description "Holds group range policy to use only shared tree"; } // This object holds the register traffic policy container reg-items { - // Added containment as a singleton: Prefix=reg - // Acquired From Package pim uses pim_RegTrP-group; + description "This object holds the register traffic policy"; } } grouping pim_SGRangeExpP-group { + description "Holds (S,G) expiry timer policy for specified range"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } // (S,G) entry inactivity expiry timer - // Inherited From rtdmc:ASGRangeExpP - // Type is an MO-Defined-Type leaf sgExpItvl { - description "(S,G) Entry Expiry Timer"; - // Type is an MO-Defined-Type type rtdmc_SGExpItvl; + description "(S,G) Entry Expiry Timer"; + } + leaf sparse { + type boolean; + description "(S,G) Entry Expiry Timer configured with sparse mode"; } } grouping pim_SharedRangeP-group { + description "Holds group range policy to use only shared tree"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf useSPTCommand { type boolean; + description "Flag to use spt-threashold command"; } } grouping pim_RegTrP-group { + description "This object holds the register traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; + description "Source Address"; } // Source Interface - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Max Rate - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf maxRate { - description "Maximum Rate"; - // Type is an MO-Defined-Type type rtdmc_RegRate; + description "Maximum Rate"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Prefix List"; } } grouping pim_SSMPatP-group { + description "Holds policy for Source Specific Multicast (SSM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // This object holds SSM group range container range-items { - // Added containment as a singleton: Prefix=range - // Acquired From Package pim uses pim_SSMRangeP-group; + description "SSM Group Range Policy"; } } grouping pim_SSMRangeP-group { + description "SSM Group Range Policy"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } } grouping pim_BidirPatP-group { + description "Holds policy for Bidirectional Multicast (BiDir) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum number of RPs - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type leaf maxRP { - description "Maximum RPs"; - // Type is an MO-Defined-Type type rtdmc_BidirRPLimit; + description "Maximum RPs"; } // Designated Forwarder Offer Burst Interval - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type leaf dfobItvl { - description "Designated Forwarder Offer Burst Interval"; - // Type is an MO-Defined-Type type rtdmc_DFOBItvl; + description "Designated Forwarder Offer Burst Interval"; } } grouping pim_StaticRPP-group { + description "Holds policy for Static RP"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // This object holds Static RP Info @@ -140046,16 +155337,18 @@ module Cisco-NX-OS-device { list StaticRP-list { key "addr"; - // Added containment: Prefix=rp - // Acquired From Package pim uses pim_StaticRP-group; + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality list"; } + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality"; } } grouping pim_StaticRP-group { + description "Holds Static RP Information.If rp address is configured locally,router assumes RP functionality"; leaf addr { type address_Ip; + description "Address"; } // This object holds multicast group ranges for RP @@ -140063,468 +155356,452 @@ module Cisco-NX-OS-device { list RPGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim uses pim_RPGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } container rpgrplist-items { list RPGrpList-list { key "grpListName"; - // Added containment: Prefix=rpgrplist - // Acquired From Package pim uses pim_RPGrpList-group; + description "RP Multicast Group List list"; } + description "RP Multicast Group List"; } } grouping pim_RPGrpList-group { + description "RP Multicast Group List"; leaf grpListName { type address_Ip; + description "Group List address information"; } leaf bidir { type boolean; + description "Flag to treat Group Ranges as BiDir"; } leaf override { type boolean; + description "Flag to override RP preference to use Static over Dynamic RP"; } } grouping pim_Gl-group { + description "This object holds global configuration for PIM"; + + // LoggingLevel + leaf logLevel { + + type pim_LoggingLvl; + description "Sets syslog filter level for PIM"; + } // logLevel - // Inherited From mcast:AGl - // Type is an MO-Defined-Type leaf logLvl { - description "Syslog filter level"; - // Type is an MO-Defined-Type type mcast_LogLevelRange; + description "Syslog filter level"; } leaf isolate { type boolean; + description "Isolate this router flag"; } } grouping pim_RouteDb-group { + description "This object holds multicast route database information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type + // Ephemeral data leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type rtdmc_DbT; + description "Type"; } // This objects hold per pim domain (vrf) information + // Ephemeral data container vrf-items { + + // Ephemeral data list Vrf-list { config "false"; key "name"; - // Added containment: Prefix=vrf - // Acquired From Package pim uses pim_Vrf-group; + description "Holds per PIM domain (vrf) information list"; } + description "Holds per PIM domain (vrf) information"; } } grouping pim_Vrf-group { + description "Holds per PIM domain (vrf) information"; + + // Vrf name + // Ephemeral data leaf name { config "false"; - type string; + + type l3_VrfName; + description "Vrf Name"; } // This object holds PIM route group information + // Ephemeral data container group-items { + + // Ephemeral data list Group-list { config "false"; key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package pim uses pim_Group-group; + description "Holds PIM route group information list"; } + description "Holds PIM route group information"; } } grouping pim_Group-group { + description "Holds PIM route group information"; + + // Ephemeral data leaf grpAddr { config "false"; type address_Ip; + description "Group IP Address"; } // This object holds pim route group information + // Ephemeral data container source-items { + + // Ephemeral data list Source-list { config "false"; key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package pim uses pim_Source-group; + description "Holds PIM Route Source information list"; } + description "Holds PIM Route Source information"; } } grouping pim_Source-group { + description "Holds PIM Route Source information"; + + // Ephemeral data leaf srcAddr { config "false"; type address_Ip; + description "Source IP Address"; } leaf rpAddressRoute { config "false"; type address_Ip; + description "Route RP address"; } leaf assertMetrics { config "false"; type uint32; + description "Assert metrics value"; } leaf assertMetricPrefs { config "false"; type uint32; + description "Configured assert metric preference"; } - // Inherited From nw:Conn - // Modified by Override: nw:DbRec->name - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf ver { config "false"; type uint32; + description "Version"; } leaf src { config "false"; type address_Ip; + description "Source"; } leaf grp { config "false"; type address_Ip; + description "Group"; } leaf rpAddrRoute { config "false"; type address_Ip; + description "Route RP addr"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf iif { config "false"; - description "Incoming interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Incoming interface"; } leaf expiryTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Expiry Timestamp"; } leaf rpfNbr { config "false"; type address_Ip; + description "RPF Nbr Address"; } leaf rpfSrc { config "false"; type address_Ip; + description "RPF Source Address"; } leaf createTs { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Route Uptime"; } leaf assertTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Assert Timeout"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf rtType { config "false"; - description "Route Uptime"; - // Type is an MO-Defined-Type type rtdmc_RtFlags; + description "Route Uptime"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf swPktCnt { config "false"; - description "Software Packet Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf swByteCnt { config "false"; - description "Software Byte Count"; - // Type is an MO-Defined-Type type rtdmc_PktCntType; + description "Software Byte Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf hwPktCnt { config "false"; - description "Hardware Packet Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Packet Count"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf hwByteCnt { config "false"; - description "Hardware Byte Count"; - // Type is an MO-Defined-Type type rtdmc_ByteCntType; + description "Hardware Byte Count"; } leaf assertMetric { config "false"; type uint32; + description "Assert metric"; } leaf assertMetricPref { config "false"; type uint32; + description "Assert metric preference"; } - // Inherited From rtdmc:SGRoute - // Type is an MO-Defined-Type leaf routeBits { config "false"; - description "RP WC Bit"; - // Type is an MO-Defined-Type type rtdmc_RouteBits; + description "RP WC Bit"; } leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } // PIM OIF list MOs + // Ephemeral data container oif-items { + + // Ephemeral data list Oif-list { config "false"; key "oIf"; - // Added containment: Prefix=oif - // Acquired From Package pim uses pim_Oif-group; + description "PIM OIF entry details list"; } + description "PIM OIF entry details"; } } grouping pim_Oif-group { + description "PIM OIF entry details"; - // Type is an MO-Defined-Type leaf oifFlags { config "false"; - description "pim route oif lists"; - // Type is an MO-Defined-Type type pim_OifFlagsNew; + description "pim route oif lists"; } - // Inherited From rtdmc:Oif - // Type is an MO-Defined-Type + // Ephemeral data leaf oIf { config "false"; - description "Outgoing interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Outgoing interface"; } - // Inherited From rtdmc:Oif - // Type is an MO-Defined-Type leaf flags { config "false"; - description "pim route oif lists"; - // Type is an MO-Defined-Type type rtdmc_OifFlags; + description "pim route oif lists"; } } grouping pim6_Entity-group { + description "Holds PIM6 control plane entity information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } // This objects hold per pim6 instance information container inst-items { - // Added containment as a singleton: Prefix=inst - // Acquired From Package pim6 uses pim6_Inst-group; + description "This objects hold per PIM6 instance information"; } } grouping pim6_Inst-group { + description "This objects hold per PIM6 instance information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type nw_InstCtrl; + description "Controls"; } // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; - } - - // Inter Packet Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type - leaf jpDelay { - description "Inter Packet Delay"; - - // Type is an MO-Defined-Type - type rtdmc_JPDelay; + description "Operational Errors Qualifier"; } // Null Register Inter Batch Delay - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrDelay { - description "Null Register Inter Batch Delay"; - // Type is an MO-Defined-Type type rtdmc_NRDelay; + description "Null Register Inter Batch Delay"; } // Number of routes in a null register - // Inherited From rtdmc:AInst - // Type is an MO-Defined-Type leaf nrNumRt { - description "Null Register Number of Routes"; - // Type is an MO-Defined-Type type rtdmc_NRNumRt; - } - leaf regStop { - type boolean; + description "Null Register Number of Routes"; } // PIM6 databases + // Ephemeral data container db-items { + + // Ephemeral data list Db-list { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim6 uses pim6_Db-group; + description "This object holds PIM6 Database information list"; } + description "This object holds PIM6 Database information"; } // This objects hold per pim6 domain (vrf) information @@ -140532,1331 +155809,1702 @@ module Cisco-NX-OS-device { list Dom-list { key "name"; - // Added containment: Prefix=dom - // Acquired From Package pim6 - uses pim6_Dom-group; - } + uses pim6_Dom-group; + description "This objects hold per PIM6 domain (vrf) information list"; + } + description "This objects hold per PIM6 domain (vrf) information"; + } + + // This object holds global config for pim6 + container gl-items { + + uses pim6_Gl-group; + description "This object holds global configuration for PIM6"; + } + + // This object holds pim6 route db information + // Ephemeral data + container routedb-items { + + uses pim6_RouteDb-group; + description "This object holds PIM6 route database information"; + } + } + + grouping pim6_Db-group { + description "This object holds PIM6 Database information"; + + // Ephemeral data + leaf name { + config "false"; + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; + } + + // Type of the repository + // Ephemeral data + leaf type { + config "false"; + + type rtdmc_DbT; + description "Type"; + } + + // PIM6 bitfield + // Ephemeral data + container bf-items { + + uses pim6_Bitfield-group; + description "PIM6 Bitfield Database"; + } + + // This object holds pim6 information for embed-rp + // Ephemeral data + container embedrp-items { + + // Ephemeral data + list EmbedRp-list { + config "false"; + key "grpAddr"; + + uses pim6_EmbedRp-group; + description "Holds PIM6 Embed-RP operational information list"; + } + description "Holds PIM6 Embed-RP operational information"; + } + + // This object holds global config for pim6 + // Ephemeral data + container syslog-items { + + // Ephemeral data + list Syslog-list { + config "false"; + key "facName"; + + uses pim6_Syslog-group; + description "This object holds syslog data for pim6 protocols list"; + } + description "This object holds syslog data for pim6 protocols"; + } + + // This objects hold per pim6 domain (vrf) information + // Ephemeral data + container vrf-items { + + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; + + uses pim6_Vrf-group; + description "This objects hold per pim6 domain (vrf) information list"; + } + description "This objects hold per pim6 domain (vrf) information"; + } + } + + grouping pim6_Bitfield-group { + description "PIM6 Bitfield Database"; + + // PIM6 bitfield entry + // Ephemeral data + container bfentry-items { + + // Ephemeral data + list BfEntry-list { + config "false"; + key "bfType"; + + uses pim6_BfEntry-group; + description "PIM6 bitfield entry list"; + } + description "PIM6 bitfield entry"; + } + } + + grouping pim6_BfEntry-group { + description "PIM6 bitfield entry"; + + // Ephemeral data + leaf bfType { + config "false"; + type string; + description "Bitfield Type"; + } + + // Ephemeral data + leaf bfAttr { + config "false"; + type uint32; + description "Bitfield attribute"; + } + + // Ephemeral data + leaf bfSgmnt { + config "false"; + type uint32; + description "Bitfield segment"; + } + + // Ephemeral data + leaf bfFlags { + config "false"; + type uint32; + description "Bitfield flags"; + } + + // Ephemeral data + leaf bfCompressArraySize { + config "false"; + type uint32; + description "Bitfield Compression array-size"; + } + + // Ephemeral data + leaf bfPosAllocated { + config "false"; + type uint32; + description "Bitfield positions allocated"; + } + + // routed multicast Bitfield compress index-bitpos + // Ephemeral data + container bfcomp-items { + + // Ephemeral data + list BfComp-list { + config "false"; + key "bfIdx"; + + uses pim6_BfComp-group; + description "Holds Bitfield Compression index-bit position details list"; + } + description "Holds Bitfield Compression index-bit position details"; + } + } + + grouping pim6_BfComp-group { + description "Holds Bitfield Compression index-bit position details"; + + // Ephemeral data + leaf bfCompType { + config "false"; + type string; + description "Bitfield Compression type"; + } + + // Ephemeral data + leaf bfIdx { + config "false"; + type uint32; + description "Bitfield index"; + } + + // Ephemeral data + leaf bfBitPos { + config "false"; + type uint32; + description "Bitfield bit-position"; + } + } + + grouping pim6_EmbedRp-group { + description "Holds PIM6 Embed-RP operational information"; + + // Ephemeral data + leaf grpAddr { + config "false"; + type address_Ip; + description "Group IP Address for Embed-RP"; + } + + // Ephemeral data + leaf rpAddr { + config "false"; + type address_Ip; + description "Embed-RP IP Address"; + } + + // Ephemeral data + leaf illegalFlag { + config "false"; + type boolean; + description "Illegal Flag"; + } + + // Ephemeral data + leaf prefix { + config "false"; + type string; + description "Ip Address in network prefix format"; + } + + // Ephemeral data + leaf prefixLen { + config "false"; + type uint32; + description "Networ Prefix length"; + } + + // Ephemeral data + leaf grpId { + config "false"; + type uint32; + description "Group identifier"; + } + + // Ephemeral data + leaf scope { + config "false"; + type uint32; + description "Scope"; + } + + // Ephemeral data + leaf scopeStr { + config "false"; + type string; + description "Scope String"; } - // This object holds pim6 route db information - container routedb-items { + // Ephemeral data + leaf rpIfId { + config "false"; - // Added containment as a singleton: Prefix=routedb - // Acquired From Package pim6 - uses pim6_RouteDb-group; + type nw_IfId; + description "Embed RP's intername id"; } } - grouping pim6_Db-group { + grouping pim6_Syslog-group { + description "This object holds syslog data for pim6 protocols"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { + // Ephemeral data + leaf facName { config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type string; + description "Facility Name"; } - // Type of the repository - // Inherited From rtdmc:ADb - // Type is an MO-Defined-Type - leaf type { + // Default logLevel + // Ephemeral data + leaf deflogLvl { config "false"; - description "Type"; - // Type is an MO-Defined-Type - type rtdmc_DbT; + type mcast_LogLevelRange; + description "Default Syslog filter level"; } - // This objects hold per pim6 domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; + // Current logLevel + // Ephemeral data + leaf currlogLvl { + config "false"; - // Added containment: Prefix=vrf - // Acquired From Package pim6 - uses pim6_Vrf-group; - } + type mcast_LogLevelRange; + description "Current Syslog filter level"; } } grouping pim6_Vrf-group { + description "This objects hold per pim6 domain (vrf) information"; + + // Vrf name + // Ephemeral data leaf name { config "false"; + + type l3_VrfName; + description "Vrf Name"; + } + + // Ephemeral data + leaf cid { + config "false"; + type uint32; + description "Vrf Identifier"; + } + + // Ephemeral data + leaf tableId { + config "false"; type string; + description "Table Identifier"; + } + + // Ephemeral data + leaf pim6EnbldIntfCount { + config "false"; + type uint32; + description "Total Number PIM6 enabled interfaces"; + } + + // Ephemeral data + leaf bfdEnabled { + config "false"; + type boolean; + description "Flag to enable BFD support"; } + + // Ephemeral data leaf totalNumRoutes { config "false"; type uint32; + description "Total Number of Routes"; } + + // Ephemeral data container autorp-items { + + // Ephemeral data list AutoRppInfo-list { config "false"; key "addr"; - // Added containment: Prefix=autorp - // Acquired From Package pim6 uses pim6_AutoRppInfo-group; + description "PIM6 Auto-RP information list"; } + description "PIM6 Auto-RP information"; } + + // Ephemeral data container bsr-items { + + // Ephemeral data list BsrInfo-list { config "false"; - key "addr"; + key "grpAddr"; - // Added containment: Prefix=bsr - // Acquired From Package pim6 uses pim6_BsrInfo-group; + description "PIM6 Selected Bootstrap Router list"; } + description "PIM6 Selected Bootstrap Router"; } + + // Ephemeral data container grange-items { + + // Ephemeral data list RpGrange-list { config "false"; key "addr"; - // Added containment: Prefix=grange - // Acquired From Package pim6 uses pim6_RpGrange-group; + description "Rendezvous Point Group Range Record list"; } + description "Rendezvous Point Group Range Record"; } // This object holds pim6 route group information + // Ephemeral data container group-items { + + // Ephemeral data list Group-list { config "false"; key "grpAddr"; - // Added containment: Prefix=group - // Acquired From Package pim6 uses pim6_Group-group; + description "This object holds PIM6 route group information list"; } + description "This object holds PIM6 route group information"; } + + // Ephemeral data container ifrec-items { + + // Ephemeral data list IfRec-list { config "false"; key "pim6IfName"; - // Added containment: Prefix=ifrec - // Acquired From Package pim6 uses pim6_IfRec-group; + description "PIM6 Interface Record list"; } + description "PIM6 Interface Record"; } + + // Ephemeral data container rp-items { + + // Ephemeral data list RpInfoRec-list { config "false"; key "rpAddr"; - // Added containment: Prefix=rp - // Acquired From Package pim6 uses pim6_RpInfoRec-group; + description "PIM6 Rendezvous Point Record list"; } + description "PIM6 Rendezvous Point Record"; } // This object holds the pim6 control traffic stats + // Ephemeral data container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim6 uses pim6_TrafficStats-group; + description "This object holds the PIM6 control traffic stats"; + } + + // Ephemeral data + container vrfdetail-items { + + uses pim6_VrfDetails-group; + description "This objects holds PIM6 context details"; } } grouping pim6_AutoRppInfo-group { + description "PIM6 Auto-RP information"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Source address"; } + + // Ephemeral data leaf expiry { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry timer"; } + + // Ephemeral data leaf uptime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Uptime"; } + + // Ephemeral data leaf priority { config "false"; type uint32; + description "Priority"; } + + // Ephemeral data leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; } } grouping pim6_BsrInfo-group { + description "PIM6 Selected Bootstrap Router"; - // Inherited From nw:Conn - // Modified by Override: nw:Db->name - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - leaf addr { + // Ephemeral data + leaf grpAddr { config "false"; type address_Ip; + description "Group IP address"; } - leaf expiry { + + // Ephemeral data + leaf bsrAddr { config "false"; - type string; + type address_Ip; + description "BSR IP address"; } - leaf uptime { + + // Ephemeral data + leaf rpAddr { config "false"; - type string; + type address_Ip; + description "RP IP address with best hash"; } - leaf priority { + + // Ephemeral data + leaf hash { config "false"; type uint32; + description "Hash value"; } + + // Ephemeral data leaf hashMaskLen { config "false"; type uint32; + description "Hash Mask Length"; + } + + // Ephemeral data + leaf bestHash { + config "false"; + type boolean; + description "Best hash selected flag"; } } grouping pim6_RpGrange-group { + description "Rendezvous Point Group Range Record"; + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "IP Address for Group Range"; } + + // Ephemeral data leaf rpAddr { config "false"; type address_Ip; + description "RP IP address for this group range"; } + + // Ephemeral data leaf mode { config "false"; type string; + description "RP Group range mode"; } + + // Ephemeral data leaf userShared { config "false"; type uint32; + description "User-shared Range Address"; } } grouping pim6_Group-group { + description "This object holds PIM6 route group information"; + + // Ephemeral data leaf grpAddr { config "false"; type address_Ip; + description "IPv6 Group Address"; } + + // Ephemeral data leaf grpMasklen { config "false"; type uint32; + description "Group Mask Length"; } + + // Ephemeral data leaf bidir { config "false"; type boolean; + description "Bidirectional group"; } // This object holds pim6 route source information + // Ephemeral data container source-items { + + // Ephemeral data list Source-list { config "false"; key "srcAddr"; - // Added containment: Prefix=source - // Acquired From Package pim6 uses pim6_Source-group; + description "This object holds pim6 route source information list"; } + description "This object holds pim6 route source information"; } } grouping pim6_Source-group { + description "This object holds pim6 route source information"; + + // Ephemeral data leaf srcAddr { config "false"; type address_Ip; + description "Source IP Address"; } + + // Ephemeral data leaf expiryTs { config "false"; type string; + description "Route Expiry Timestamp in HH:MM:SS PST Format"; } + + // Ephemeral data leaf assertMetrics { config "false"; type uint32; + description "Assert metric value"; } + + // Ephemeral data leaf assertMetricPrefs { config "false"; type uint32; + description "Assert metric preference"; } + + // Ephemeral data leaf oifcount { config "false"; type uint32; + description "Outgoing Interface Count"; } // RPF Information route incoming interface - // Type is an MO-Defined-Type + // Ephemeral data leaf routeIif { config "false"; - description "Route Incoming Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Route Incoming Interface"; } + + // Ephemeral data leaf rpfNbr { config "false"; type address_Ip; + description "RPF Neighbor IP Address"; } - // Type is an MO-Defined-Type - leaf routeBits { - config "false"; - description "RP WC Bit"; - - // Type is an MO-Defined-Type - type rtdmc_RouteBits; - } + // Ephemeral data leaf rtTimeOutInvtl { config "false"; type uint32; + description "Route Timeout Interval"; } + + // Ephemeral data leaf jpHoldTime { config "false"; type uint32; + description "JP Hold time"; } // This object holds pim6 OIF information + // Ephemeral data container oif-items { + + // Ephemeral data list Oif-list { config "false"; key "oifName"; - // Added containment: Prefix=oif - // Acquired From Package pim6 uses pim6_Oif-group; + description "This object holds pim6 OIF information list"; } + description "This object holds pim6 OIF information"; } } grouping pim6_Oif-group { + description "This object holds pim6 OIF information"; + + // Ephemeral data leaf oifName { config "false"; type string; + description "Outgoing Interface name"; } + + // Ephemeral data leaf oifUptime { config "false"; type string; + description "OIF Uptime in HH:MM:SS PST format"; } + + // Ephemeral data leaf oifRPF { config "false"; type boolean; + description "Outgoing Interface RPF"; } + + // Ephemeral data leaf oifLispEncapEntries { config "false"; type uint32; + description "Lisp Encap Entries Count"; } } grouping pim6_IfRec-group { + description "PIM6 Interface Record"; + + // Ephemeral data leaf pim6Dr { config "false"; type address_Ip; + description "IPv6 Address of PIM6 DR on the interface"; } // Designated Router Priority - // Type is an MO-Defined-Type + // Ephemeral data leaf pim6DrPrio { config "false"; - description "Designated Router Priority on the interface"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "Designated Router Priority on the interface"; } + + // Ephemeral data leaf pim6NbrHoldTime { config "false"; type uint32; + description "PIM6 Neighbor HoldTime"; } // Generation id - // Type is an MO-Defined-Type + // Ephemeral data leaf pim6GenID { config "false"; - description "Generation ID to be sent in Hello Msgs"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID to be sent in Hello Msgs"; } + + // Ephemeral data leaf pim6NextHello { config "false"; type string; + description "Next hello time in HH:MM:SS PST format"; } + + // Ephemeral data leaf pim6IpAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } - // Type is an MO-Defined-Type leaf pim6IfName { config "false"; - description "Interface Name"; - // Type is an MO-Defined-Type type nw_IfId; + description "PIM6 Interface Name"; } + + // Ephemeral data leaf pim6Border { config "false"; type boolean; + description "Is interface Pim6 domain border"; } + + // Ephemeral data leaf pim6SparseMode { config "false"; type boolean; + description "Pim6 is enabled on the interface"; } // This object holds pim6 neighbor information + // Ephemeral data container adjrec-items { + + // Ephemeral data list AdjEpRec-list { config "false"; key "addr"; - // Added containment: Prefix=adjrec - // Acquired From Package pim6 uses pim6_AdjEpRec-group; + description "This object holds PIM6 neighbor record list"; } + description "This object holds PIM6 neighbor record"; } // This object holds the pim6 interface related statistics + // Ephemeral data container ifstats-items { - // Added containment as a singleton: Prefix=ifstats - // Acquired From Package pim6 uses pim6_IfStats-group; + description "This object holds the pim6 interface related statistics"; } } grouping pim6_AdjEpRec-group { + description "This object holds PIM6 neighbor record"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type + // Ephemeral data leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } + + // Ephemeral data leaf addr { config "false"; type address_Ip; + description "Address"; } + + // Ephemeral data leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } + + // Ephemeral data leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } + + // Ephemeral data leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type + // Ephemeral data leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } // This object holds the pim6 neighbor related statistics + // Ephemeral data container adjstats-items { - // Added containment as a singleton: Prefix=adjstats - // Acquired From Package pim6 uses pim6_AdjStats-group; + description "This object holds the PIM6 neighbor related statistics"; } } grouping pim6_AdjStats-group { + description "This object holds the PIM6 neighbor related statistics"; + + // Ephemeral data leaf lastHelloRcvd { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Last Hello Received"; } // Longest Hello Interval - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf longHelloItvl { config "false"; - description "Longest Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Longest Hello Interval"; } // Last Hold Time advertised by Peer - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf lastHoldTime { config "false"; - description "Last Hold Time"; - // Type is an MO-Defined-Type type rtdmc_HoldTime; + description "Last Hold Time"; } // non-hello expiry timer resets - // Inherited From rtdmc:AAdjStats - // Type is an MO-Defined-Type + // Ephemeral data leaf nonHelloExpResets { config "false"; - description "Non-Hello Expiry Timer Resets"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Non-Hello Expiry Timer Resets"; } } grouping pim6_IfStats-group { + description "This object holds the pim6 interface related statistics"; - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloSent { config "false"; - description "number of hello sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf helloRcvd { config "false"; - description "number of hello rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of hello rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSent { config "false"; - description "number of JP sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvd { config "false"; - description "number of JP rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertSent { config "false"; - description "number of assert sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf assertRcvd { config "false"; - description "number of assert rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of assert rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsSent { config "false"; - description "number of grafts sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf graftsRcvd { config "false"; - description "number of grafts rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of grafts rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckSent { config "false"; - description "number of graft ack sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf grftAckRcvd { config "false"; - description "number of graft ack rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of graft ack rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferSent { config "false"; - description "number of DF-offer sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfOfferRcvd { config "false"; - description "number of DF-offer rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF-offer rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerSent { config "false"; - description "number of DF winner sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfWinnerRcvd { config "false"; - description "number of DF winner rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF winner rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffSent { config "false"; - description "number of DF backoff sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfBackoffRcvd { config "false"; - description "number of DF backoff rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF backoff rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesSent { config "false"; - description "number of DF Passes sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf dfPassesRcvd { config "false"; - description "number of DF Passes rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of DF Passes rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf chksumErr { config "false"; - description "Checksum errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "Checksum errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktSent { config "false"; - description "number of invalid pkt sent"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt sent"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf invalidPktRcvd { config "false"; - description "number of invalid pkt rcvd"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of invalid pkt rcvd"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf authFail { config "false"; - description "number of authentication failures"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of authentication failures"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktLenErr { config "false"; - description "number of packet length errors"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packet length errors"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf badVerPkt { config "false"; - description "number of bad version pkts"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of bad version pkts"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmSelf { config "false"; - description "number of pkts from Self"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of pkts from Self"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktFrmNonNbr { config "false"; - description "packets from Non-Neighbor"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "packets from Non-Neighbor"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf pktOnPassiveIf { config "false"; - description "number of packets on passive interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets on passive interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpRcvdOnRPF { config "false"; - description "number of packets rcvd on RPF interface"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on RPF interface"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinNoRP { config "false"; - description "*,G Join rcvd with no RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "*,G Join rcvd with no RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf joinWrongRp { config "false"; - description "number of packets rcvd on Wrong RP"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd on Wrong RP"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpSSMRcvd { config "false"; - description "number of packets rcvd for SSM groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for SSM groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpBidirRcvd { config "false"; - description "number of packets rcvd for Bidir groups"; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of packets rcvd for Bidir groups"; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterIn { config "false"; - description "number of JP filtered by inbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by inbound policy "; } - // Inherited From rtdmc:IfStats - // Type is an MO-Defined-Type + // Ephemeral data leaf jpFilterOut { config "false"; - description "number of JP filtered by outbound policy "; - // Type is an MO-Defined-Type type rtdmc_Counter32; + description "number of JP filtered by outbound policy "; } } grouping pim6_RpInfoRec-group { + description "PIM6 Rendezvous Point Record"; + + // Ephemeral data leaf rpAddr { config "false"; type address_Ip; + description "IPv6 address for RP"; } + + // Ephemeral data leaf rpLocal { config "false"; type boolean; + description "Flag to indicte if RP is local"; } + + // Ephemeral data leaf rpUptime { config "false"; type string; + description "RP uptime in HH:MM:SS PST Format"; } + + // Ephemeral data leaf rpPriority { config "false"; type uint32; + description "Priority for cand-RP message"; } - // Type is an MO-Defined-Type + // Ephemeral data leaf rpDiscType { config "false"; - description "RP source type"; - // Type is an MO-Defined-Type type rtdmc_RPSourceType; + description "RP source type"; } + + // Ephemeral data leaf rpDfOrdinal { config "false"; type uint32; + description "Per RP Bidirectional DF Ordinal"; } - // Rel-def from RP2Grange - container rsrP2Grange-items { + // Ephemeral data + leaf rpMetricPref { + config "false"; + type uint32; + description "Router preference to this RP"; + } - // Abstract containment of rsrP2Grange derived from pim6:RpInfoRec - list RsRP2Grange-list { + // Ephemeral data + leaf rpMetric { + config "false"; + type uint32; + description "Unicast metric to this RP"; + } + + // This object holds pim6 information that is operated at a + // interface level for DF RP + // Ephemeral data + container rpif-items { + + // Ephemeral data + list RpIf-list { config "false"; - key "tDn"; + key "ifName"; - // Added containment: Prefix=rsrP2Grange - // Acquired From Package pim6 - uses pim6_RsRP2Grange_source-group; + uses pim6_RpIf-group; + description "Holds PIM6 DF RP Interface operational information list"; } + description "Holds PIM6 DF RP Interface operational information"; } } - grouping pim6_TrafficStats-group { - leaf lastClearTs { - config "false"; - type string; - } + grouping pim6_RpIf-group { + description "Holds PIM6 DF RP Interface operational information"; - // Register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regRcvd { + // Ephemeral data + leaf ifName { config "false"; - description "Register Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type nw_IfId; + description "DF Interface Name"; } - // Null register received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegRcvd { + // Ephemeral data + leaf dfWinner { config "false"; - description "Null Register Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type address_Ip; + description "DF Winner IP Address"; } - // Reg Stop Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopRcvd { + // Df state + // Ephemeral data + leaf dfState { config "false"; - description "Reg Stop Received"; - // Type is an MO-Defined-Type - type nw_Counter32; + type rtdmc_DfStates; + description "Current state of DF"; } - // Bootstrap received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsRcvd { + // Ephemeral data + leaf dfUptime { config "false"; - description "Bootstrap received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type string; + description "Time since using this DF"; } - // Candidate Rp Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRpRcvd { + // Ephemeral data + leaf isRpf { config "false"; - description "Candidate RP Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type boolean; + description "RPF flag"; } - // AutoRP Announce Received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnRcvd { + // Ephemeral data + leaf winnerMetricPref { config "false"; - description "AutoRP Announce Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Preference of DF winner"; } - // AutoRP Discovery received - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscRcvd { + // Ephemeral data + leaf winnerMetric { config "false"; - description "AutoRP Discovery Received"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint32; + description "Metric of DF winner"; } + } - // Null Register Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf nullRegSent { - config "false"; - description "NULL Register sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; - } + grouping pim6_TrafficStats-group { + description "This object holds the PIM6 control traffic stats"; - // Register stop sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf regStopSent { + // Ephemeral data + leaf lastClearTs { config "false"; - description "Register Stop Sent"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type union { + type string; + type uint64; + } + description "Last Clear Timestamp"; } - // Bootstrap sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf bsSent { + // Register received + // Ephemeral data + leaf regRcvd { config "false"; - description "Bootstrap Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received"; } - // Candidate RP Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf candRPSent { + // Null register received + // Ephemeral data + leaf nullRegRcvd { config "false"; - description "Candidate RP Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Null Register Received"; } - // AutoRP Announce Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpAnnSent { + // Reg Stop Received + // Ephemeral data + leaf regStopRcvd { config "false"; - description "AutoRP Announce Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Reg Stop Received"; } - // Auto RP Discovery sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpDiscSent { + // Bootstrap received + // Ephemeral data + leaf bsRcvd { config "false"; - description "AutoRP Discovery Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap received"; } - // AutoRP RPF Sent - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpRpfSent { + // Candidate Rp Received + // Ephemeral data + leaf candRpRcvd { config "false"; - description "AutoRP RPF Sent"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Received"; } - // AutoRP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpBrdDeny { + // Null Register Sent + // Ephemeral data + leaf nullRegSent { config "false"; - description "AutoRP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "NULL Register sent"; } - // AutoRP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorrpNoListn { + // Register stop sent + // Ephemeral data + leaf regStopSent { config "false"; - description "AutoRP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Stop Sent"; } - // AutoRP TTL Expired - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpTtlExp { + // Bootstrap sent + // Ephemeral data + leaf bsSent { config "false"; - description "AutoRP TTL Expired"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Bootstrap Sent"; } - // AutoRP Invalid type - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type - leaf autorpInvType { + // Candidate RP Sent + // Ephemeral data + leaf candRPSent { config "false"; - description "AutoRP Invalid Type"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Sent"; } // BS no NBR - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsNoNbr { config "false"; - description "BS No NBR"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No NBR"; } // BS Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsBordDeny { config "false"; - description "BS Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Border Deny"; } // BS LEngth errors - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsLenErr { config "false"; - description "BS Len Errors"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS Len Errors"; } // BS RPF Failed - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsRpfFail { config "false"; - description "BS RPF Failed"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS RPF Failed"; } // BS NO Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf bsNoLis { config "false"; - description "BS No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "BS No Listen"; } // Candidate RP No Listen - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf candrpNoLis { config "false"; - description "Candidate RP No Listen"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP No Listen"; } // Candidate RP Border Deny - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf candrpBordDeny { config "false"; - description "Candidate RP Border Deny"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Candidate RP Border Deny"; } // REgister received not RP - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdNoRP { config "false"; - description "Register Received not RP"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received not RP"; } // Register Received for SSM - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdForSSM { config "false"; - description "Register Received Not SSM"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register Received Not SSM"; } // Register received for bidir - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf regRcvdForBd { config "false"; - description "Register received for Bidir"; - // Type is an MO-Defined-Type type nw_Counter32; + description "Register received for Bidir"; } // no route - // Inherited From rtdmc:ATrafficStats - // Type is an MO-Defined-Type + // Ephemeral data leaf noRoute { config "false"; - description "No Route"; - // Type is an MO-Defined-Type type nw_Counter32; + description "No Route"; + } + } + + grouping pim6_VrfDetails-group { + description "This objects holds PIM6 context details"; + + // Ephemeral data + leaf stLmt { + config "false"; + type uint64; + description "Configured maximum state limit"; + } + + // Ephemeral data + leaf availStLmt { + config "false"; + type uint64; + description "Available state limit"; + } + + // Ephemeral data + leaf rsvLmt { + config "false"; + type uint64; + description "Configured maximum reserved limit"; + } + + // Ephemeral data + leaf availRsvLmt { + config "false"; + type uint64; + description "Available reserved limit"; + } + + // Ephemeral data + leaf rsvPolName { + config "false"; + type string; + description "Configured Reserve Policy name"; + } + + // Ephemeral data + leaf regRateLmt { + config "false"; + type uint64; + description "Register rate limit in pps"; + } + + // Ephemeral data + leaf sharedTrPolName { + config "false"; + type string; + description "Configured Use-Shared tree route-map policy name"; + } + + // Ephemeral data + container grange-items { + + // Ephemeral data + list SharedRouteRange-list { + config "false"; + key "grangeIp"; + + uses pim6_SharedRouteRange-group; + description "This objects holds PIM6 USe-shared tree route range list"; + } + description "This objects holds PIM6 USe-shared tree route range"; + } + } + + grouping pim6_SharedRouteRange-group { + description "This objects holds PIM6 USe-shared tree route range"; + + // Ephemeral data + leaf grangeIp { + config "false"; + type address_Ip; + description "Group-range IPv6 address"; } } grouping pim6_Dom-group { + description "This objects hold per PIM6 domain (vrf) information"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } // Admin State - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + default "disabled"; + description "Admin State"; } // Per-Dom Controls - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type leaf ctrl { - description "Domain Controls"; - // Type is an MO-Defined-Type type rtdmc_DomCtrl; - } - - // Protocol packet MTU - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf mtu { - description "Maximum Transmission Unit"; - - // Type is an MO-Defined-Type - type rtdmc_Mtu; - } - - // Auto Enable - // Inherited From rtdmc:ADom - // Type is an MO-Defined-Type - leaf autoEnable { - description "Auto Enable"; - - // Type is an MO-Defined-Type - type rtdmc_AutoEnable; + description "Domain Controls"; } leaf logNbhChng { type boolean; + description "Log Neighbhor changes"; } leaf flushRoutes { type boolean; + description "Flush Routes"; } leaf bfd { type boolean; + description "BFD"; + } + + leaf regRateLmt { + + type rtdmc_RegRateRange; + description "Register rate limit for data packets per second"; } // This object holds policy for Anycast RP Function @@ -141864,36 +157512,31 @@ module Cisco-NX-OS-device { // and all the peer's local info Anycast RP is not supported for BSR and Auto-RP container acastrpfunc-items { - // Added containment as a singleton: Prefix=acastrpfunc - // Acquired From Package pim6 uses pim6_AcastRpFuncP-group; + description "Anycast RP Function Policy"; } - // This object holds policy for - // Auto-RP method of RP discovery - container autorp-items { + container assert-items { - // Added containment as a singleton: Prefix=autorp - // Acquired From Package pim6 - uses pim6_AutoRPP-group; + uses pim6_Assert-group; + description "This model is used to configure assert events for PIM6"; } // This object holds policy for // Bootstrap Router method of RP discovery container bsr-items { - // Added containment as a singleton: Prefix=bsr - // Acquired From Package pim6 uses pim6_BsrP-group; + description "This object holds policy for Bootstrap Router method of RP discovery"; } container eventhist-items { list EventHistory-list { key "type"; - // Added containment: Prefix=eventhist - // Acquired From Package pim6 uses pim6_EventHistory-group; + description "This object holds configuration detais for event-history buffers list"; } + description "This object holds configuration detais for event-history buffers"; } // This object holds pim6 information that is operated at a @@ -141902,98 +157545,82 @@ module Cisco-NX-OS-device { list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package pim6 uses pim6_If-group; + description "This object holds PIM6 information that is operated at a interface level list"; } + description "This object holds PIM6 information that is operated at a interface level"; } // This object holds resource (router state) limit policy // to limit amount of multicast routing state on the router container limit-items { - // Added containment as a singleton: Prefix=limit - // Acquired From Package pim6 uses pim6_ResP-group; + description "This object holds resource (router state) limit policy"; } // This object holds policy for // Any Source Multicast (ASM) pattern container asm-items { - // Added containment as a singleton: Prefix=asm - // Acquired From Package pim6 uses pim6_AsmPatP-group; + description "This object holds policy for Any Source Multicast (ASM) pattern"; } // This object holds policy for // Source Specific Multicast (SSM) pattern container ssm-items { - // Added containment as a singleton: Prefix=ssm - // Acquired From Package pim6 uses pim6_SsmPatP-group; + description "This object holds policy for SSM Pattern"; } // This object holds policy for // Bidirectional Multicast (BiDir) pattern container bidir-items { - // Added containment as a singleton: Prefix=bidir - // Acquired From Package pim6 uses pim6_BidirPatP-group; + description "This object holds policy for BiDir Pattern"; } // This object holds policy for Static RP container staticrp-items { - // Added containment as a singleton: Prefix=staticrp - // Acquired From Package pim6 uses pim6_StaticRPP-group; + description "This object holds policy for Static RP"; } } grouping pim6_AcastRpFuncP-group { + description "Anycast RP Function Policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Anycast RP Unique Local Interface - // Inherited From rtdmc:AAcastRPFuncP - // Type is an MO-Defined-Type leaf localIf { - description "Local Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Local Interface"; } // This object holds Anycast RP Peer Info @@ -142001,214 +157628,195 @@ module Cisco-NX-OS-device { list AcastRpPeer-list { key "addr rpSetAddr"; - // Added containment: Prefix=peer - // Acquired From Package pim6 uses pim6_AcastRpPeer-group; + description "Anycast RP Peer information list"; } + description "Anycast RP Peer information"; } } grouping pim6_AcastRpPeer-group { + description "Anycast RP Peer information"; leaf rpSetAddr { type address_Ip; + description "IP Address of node performing the function"; } leaf addr { type address_Ip; + description "Address"; } } - grouping pim6_AutoRPP-group { + grouping pim6_Assert-group { + description "This model is used to configure assert events for PIM6"; + + // AssertRate + leaf assertRtLmt { + + type rtdmc_AssertRateLmt; + description "Configure Rate limit for pim asserts"; + } + } + + grouping pim6_BsrP-group { + description "This object holds policy for Bootstrap Router method of RP discovery"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Auto-RP Control - // Inherited From rtdmc:AAutoRPP - // Type is an MO-Defined-Type + // BSR Control leaf ctrl { - description "Control"; - // Type is an MO-Defined-Type - type rtdmc_AutoRPCtrl; + type rtdmc_BSRCtrl; + description "Control"; } // End Child MOs This object holds policy for // choosing RPs from among RP candidates container rpfilter-items { - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim6 uses pim6_RpFilterP-group; + description "This object holds policy for RP Filter"; } // This object holds policy for - // choosing Mapping Agent from among the candidates - container mafilter-items { + // choosing BSRs from among BSR candidates + container bsrfilter-items { - // Added containment as a singleton: Prefix=mafilter - // Acquired From Package pim6 - uses pim6_MaFilterP-group; + uses pim6_BsrFilterP-group; + description "This object holds policy for choosing BSRs among BSR candidates"; } // This object holds policy for RP Function container rpfunc-items { - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim6 uses pim6_RpFuncP-group; + description "This object holds policy for RP Function"; } // This object holds policy for - // Auto-RP Mapping Agent Function - container mafunc-items { + // Bootstrap Router Function + container bsrfunc-items { - // Added containment as a singleton: Prefix=mafunc - // Acquired From Package pim6 - uses pim6_MaFuncP-group; + uses pim6_BsrFuncP-group; + description "This object holds policy for Bootstrap Router Function"; } } grouping pim6_RpFilterP-group { + description "This object holds policy for RP Filter"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } - grouping pim6_MaFilterP-group { + grouping pim6_BsrFilterP-group { + description "This object holds policy for choosing BSRs among BSR candidates"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } } grouping pim6_RpFuncP-group { + description "This object holds policy for RP Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Priority - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Interval - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } // Scope - // Inherited From rtdmc:ARPFuncP - // Type is an MO-Defined-Type leaf scope { - description "Scope"; - // Type is an MO-Defined-Type type rtdmc_AutoRPScope; + description "Scope"; } leaf addr { type address_Ip; + description "AutoRP Cand RP Address"; } leaf useSendRPAnnCommand { type boolean; + description "Flag to use send-rp-announce"; } // This object holds multicast group ranges for RP @@ -142216,407 +157824,241 @@ module Cisco-NX-OS-device { list RpGrpRange-list { key "bidir"; - // Added containment: Prefix=range - // Acquired From Package pim6 uses pim6_RpGrpRange-group; + description "This object holds multicast group ranges for RP list"; } + description "This object holds multicast group ranges for RP"; } } grouping pim6_RpGrpRange-group { + description "This object holds multicast group ranges for RP"; leaf override { type boolean; + description "Flag to override RP preference to choose static RP"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf bidir { type boolean; - } - } - - grouping pim6_MaFuncP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; - } - - // Scope - // Inherited From rtdmc:AMAFuncP - // Type is an MO-Defined-Type - leaf scope { - description "Scope"; - - // Type is an MO-Defined-Type - type rtdmc_AutoRPScope; - } - leaf useSendRPDisCommand { - type boolean; - } - } - - grouping pim6_BsrP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // BSR Control - // Inherited From rtdmc:ABSRP - // Type is an MO-Defined-Type - leaf ctrl { - description "Control"; - - // Type is an MO-Defined-Type - type rtdmc_BSRCtrl; - } - - // End Child MOs This object holds policy for - // choosing RPs from among RP candidates - container rpfilter-items { - - // Added containment as a singleton: Prefix=rpfilter - // Acquired From Package pim6 - uses pim6_RpFilterP-group; - } - - // This object holds policy for - // choosing BSRs from among BSR candidates - container bsrfilter-items { - - // Added containment as a singleton: Prefix=bsrfilter - // Acquired From Package pim6 - uses pim6_BsrFilterP-group; - } - - // This object holds policy for RP Function - container rpfunc-items { - - // Added containment as a singleton: Prefix=rpfunc - // Acquired From Package pim6 - uses pim6_RpFuncP-group; - } - - // This object holds policy for - // Bootstrap Router Function - container bsrfunc-items { - - // Added containment as a singleton: Prefix=bsrfunc - // Acquired From Package pim6 - uses pim6_BsrFuncP-group; - } - } - - grouping pim6_BsrFilterP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf rtMap { - type string { - } + description "BiDir Groups"; } } grouping pim6_BsrFuncP-group { + description "This object holds policy for Bootstrap Router Function"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Source Interface - // Inherited From rtdmc:AFuncP - // Type is an MO-Defined-Type leaf srcIf { - description "Source Interface"; - // Type is an MO-Defined-Type type nw_IfId; + description "Source Interface"; } // Hash Mask Len - // Inherited From rtdmc:ABSRFuncP - // Modified by Override: pim6:BsrFuncP->hashLen - // Type is an MO-Defined-Type leaf hashLen { - description "Hash Mask Len"; - // Type is an MO-Defined-Type type rtdmc_BSRHashLen { range "1..32"; } + description "Hash Mask Len"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf prio { - description "Priority"; - // Type is an MO-Defined-Type type rtdmc_BSRPrio; + description "Priority"; } // Priority - // Inherited From rtdmc:ABSRFuncP - // Type is an MO-Defined-Type leaf interval { - description "Interval"; - // Type is an MO-Defined-Type type rtdmc_BSRInterval; + description "Interval"; } } grouping pim6_EventHistory-group { + description "This object holds configuration detais for event-history buffers"; - // Type is an MO-Defined-Type leaf type { - description "configures type of event history"; - // Type is an MO-Defined-Type type pim6_EhType; + description "configures type of event history"; } - // Type is an MO-Defined-Type leaf size { - description "configures buffer size in text/kb"; - // Type is an MO-Defined-Type type pim6_Size; + description "configures buffer size in text/kb"; } } grouping pim6_If-group { + description "This object holds PIM6 information that is operated at a interface level"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr1024; + description "Description"; } // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type leaf id { - description "Interface ID"; - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_IfAdminSt; + description "Admin State"; } // Interface Control - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf ctrl { - description "Controls"; - // Type is an MO-Defined-Type type rtdmc_IfCtrl; + description "Controls"; } leaf dr { config "false"; type address_Ip; + description "PIM DR"; } leaf nbrHoldTime { config "false"; type uint32; + description "PIM Nbr HoldTime"; } // Generation id - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf genID { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } leaf nextHello { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Next hello time"; } leaf ipAddr { config "false"; type address_Ip; + description "IP Address of the interface"; } leaf ifName { config "false"; type string; + description "Interface Name"; } // Designated Router Priority - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf drPrio { - description "Designated Router Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; - } - - // Designated Router Delay - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type - leaf drDelay { - description "Designated Router Delay"; - - // Type is an MO-Defined-Type - type rtdmc_DRDelay; + description "Designated Router Priority"; } leaf jpRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Join Prune Policy"; } leaf neighRtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor route-map Policy"; } leaf neighpfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Neighbor prefix-list Policy"; } leaf border { type boolean; + description "Border policy"; + } + leaf passive { + type boolean; + description "Interface in Passive mode. No send/receive."; } leaf rtEpPDn { type string; + description "RtEpP DN"; } - // Inherited From rtdmc:AIf - // Type is an MO-Defined-Type leaf bfdInst { - description "BFD Instance"; - // Type is an MO-Defined-Type type rtdmc_BfdInstSt; + description "BFD Instance"; } leaf pimSparseMode { type boolean; + description "Sparse Mode "; } // This object holds pim6 neighbor information @@ -142624,22 +158066,25 @@ module Cisco-NX-OS-device { list AdjEp-list { key "addr"; - // Added containment: Prefix=adj - // Acquired From Package pim6 uses pim6_AdjEp-group; + description "This object holds PIM6 neighbor information list"; } + description "This object holds PIM6 neighbor information"; } // PIM6 databases + // Ephemeral data container db-items { + + // Ephemeral data list Db-list { config "false"; key "type"; - // Added containment: Prefix=db - // Acquired From Package pim6 uses pim6_Db-group; + description "This object holds PIM6 Database information list"; } + description "This object holds PIM6 Database information"; } // This object holds the join-prune traffic policy @@ -142647,221 +158092,139 @@ module Cisco-NX-OS-device { list JpTrP-list { key "policyDir"; - // Added containment: Prefix=jp - // Acquired From Package pim6 uses pim6_JpTrP-group; + description "This object holds the join-prune traffic policy list"; } + description "This object holds the join-prune traffic policy"; } // This object holds the hello traffic policy container hello-items { - // Added containment as a singleton: Prefix=hello - // Acquired From Package pim6 uses pim6_HelloTrP-group; + description "This object holds the hello traffic policy"; } // This object holds the pim6 control traffic stats + // Ephemeral data container trstats-items { - // Added containment as a singleton: Prefix=trstats - // Acquired From Package pim6 uses pim6_TrafficStats-group; + description "This object holds the PIM6 control traffic stats"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 uses l3_RtVrfMbr_target-group; - } - - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + description "VRF Membership Association"; } } grouping pim6_AdjEp-group { + description "This object holds PIM6 neighbor information"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } leaf addr { type address_Ip; + description "Address"; } leaf nbrName { config "false"; type string; + description "Neighbor Name"; } // DR Priority - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf drPrio { config "false"; - description "DR Priority"; - // Type is an MO-Defined-Type type rtdmc_DRPrio; + description "DR Priority"; } leaf learnTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "First Learn Time"; } leaf expiryTime { config "false"; - type string; + type union { + type string; + type uint64; + } + description "Expiry Time"; } // Generation id - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf genId { config "false"; - description "Generation ID"; - // Type is an MO-Defined-Type type rtdmc_GenId; + description "Generation ID"; } // BFD state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf bfdSt { config "false"; - description "BFD State"; - // Type is an MO-Defined-Type type rtdmc_BfdOperSt; + description "BFD State"; } // Adjacency state - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type rtdmc_AdjOperSt; + description "Operational State"; } // Flags - // Inherited From rtdmc:AAdjEp - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type rtdmc_AdjFlags; + description "Flags"; } } grouping pim6_JpTrP-group { + description "This object holds the join-prune traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf RtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Out Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "In Prefix List"; } // in route-map for out-bound policy application @@ -142871,6479 +158234,4884 @@ module Cisco-NX-OS-device { // mod="implicit" // label="Out Prefix List" // /> Interval used between peers - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf itvl { - description "Periodic Interval"; - // Type is an MO-Defined-Type type rtdmc_JPItvl; + description "Periodic Interval"; } - // Inherited From rtdmc:AJPTrP - // Type is an MO-Defined-Type leaf policyDir { - description "Policy Direction "; - // Type is an MO-Defined-Type type rtdmc_PolicyDirType; + description "Policy Direction "; } } grouping pim6_HelloTrP-group { + description "This object holds the hello traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Hello Interval - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf helloItvl { - description "Hello Interval"; - // Type is an MO-Defined-Type type rtdmc_HelloItvl; + description "Hello Interval"; } // Authentication Type - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authT { - description "Authentication Type"; - // Type is an MO-Defined-Type type rtdmc_AuthT; + description "Authentication Type"; } // Authentication Key - // Inherited From rtdmc:AHelloTrP - // Type is an MO-Defined-Type leaf authKey { - description "Authentication Key"; - // Type is an MO-Defined-Type type rtdmc_AuthKey; + description "Authentication Key"; } } grouping pim6_ResP-group { + description "This object holds resource (router state) limit policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } // Maximum Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf max { - description "Maximum Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Maximum Multicast Entries"; } // Reserved Multicast Entries - // Inherited From mcast:AResP - // Type is an MO-Defined-Type leaf rsvd { - description "Reserved Multicast Entries"; - // Type is an MO-Defined-Type type mcast_NumEntries; + description "Reserved Multicast Entries"; } leaf rtMap { type string; + description "Reserved Entries Route Map"; } } grouping pim6_AsmPatP-group { + description "This object holds policy for Any Source Multicast (ASM) pattern"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; - } - - // Controls - // Inherited From rtdmc:AASMPatP - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; - - // Type is an MO-Defined-Type - type rtdmc_ASMCtrl; - } - leaf preBuildSpt { - type boolean; - } - leaf force { - type boolean; - } - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - - // This object holds (S,G) expiry timer - // policy for specified range - container sgexp-items { - - // Added containment as a singleton: Prefix=sgexp - // Acquired From Package pim6 - uses pim6_SgRangeExpP-group; + description "Description of the specified attribute"; } // This object holds group range // to use only shared tree container shared-items { - // Added containment as a singleton: Prefix=shared - // Acquired From Package pim6 uses pim6_SharedRangeP-group; + description "Shared Tree Group Range Policy"; } // This object holds the register traffic policy container reg-items { - // Added containment as a singleton: Prefix=reg - // Acquired From Package pim6 uses pim6_RegTrP-group; - } - } - - grouping pim6_SgRangeExpP-group { - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - leaf grpList { - type address_Ip; - } - leaf grpList1 { - type address_Ip; - } - leaf grpList2 { - type address_Ip; - } - leaf grpList3 { - type address_Ip; - } - leaf ssmNone { - type boolean; - } - - // (S,G) entry inactivity expiry timer - // Inherited From rtdmc:ASGRangeExpP - // Type is an MO-Defined-Type - leaf sgExpItvl { - description "(S,G) Entry Expiry Timer"; - - // Type is an MO-Defined-Type - type rtdmc_SGExpItvl; + description "This object holds the register traffic policy"; } } grouping pim6_SharedRangeP-group { + description "Shared Tree Group Range Policy"; leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Route Map"; } leaf pfxList { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } leaf grpList { type address_Ip; + description "Group List"; } leaf grpList1 { type address_Ip; + description "Group List"; } leaf grpList2 { type address_Ip; + description "Group List"; } leaf grpList3 { type address_Ip; + description "Group List"; } leaf ssmNone { type boolean; + description "SSM None "; } leaf useSPTCommand { type boolean; + description "Flag to use spt-threashold command"; } } grouping pim6_RegTrP-group { + description "This object holds the register traffic policy"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type leaf descr { - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } leaf addr { type address_Ip; - } - - // Source Interface - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type - leaf srcIf { - description "Source Interface"; - - // Type is an MO-Defined-Type - type nw_IfId; + description "Source Address"; } // Max Rate - // Inherited From rtdmc:ARegTrP - // Type is an MO-Defined-Type leaf maxRate { - description "Maximum Rate"; - // Type is an MO-Defined-Type type rtdmc_RegRate; + description "Maximum Rate"; } leaf rtMap { type string { + pattern ".*[!-~]{0,63}.*"; } + description "Register Message Route Map"; } leaf pfxList { type string { - } - } - } - - grouping pim6_SsmPatP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // This object holds SSM group range - container range-items { - - // Added containment as a singleton: Prefix=range - // Acquired From Package pim6 - uses pim6_SsmRangeP-group; - } - } - - grouping pim6_SsmRangeP-group { - leaf rtMap { - type string { - } - } - leaf pfxList { - type string { - } - } - leaf grpList { - type address_Ip; - } - leaf grpList1 { - type address_Ip; - } - leaf grpList2 { - type address_Ip; - } - leaf grpList3 { - type address_Ip; - } - leaf ssmNone { - type boolean; - } - } - - grouping pim6_BidirPatP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // Maximum number of RPs - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type - leaf maxRP { - description "Maximum RPs"; - - // Type is an MO-Defined-Type - type rtdmc_BidirRPLimit; - } - - // Designated Forwarder Offer Burst Interval - // Inherited From rtdmc:ABidirPatP - // Type is an MO-Defined-Type - leaf dfobItvl { - description "Designated Forwarder Offer Burst Interval"; - - // Type is an MO-Defined-Type - type rtdmc_DFOBItvl; - } - } - - grouping pim6_StaticRPP-group { - - // Inherited From pol:Obj - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } - } - - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type naming_Descr; - } - - // This object holds Static RP Info - // If rp addr is configured locally, - // router assumes RP functionality - container rp-items { - list StaticRP-list { - key "addr"; - - // Added containment: Prefix=rp - // Acquired From Package pim6 - uses pim6_StaticRP-group; - } - } - } - - grouping pim6_StaticRP-group { - leaf addr { - type address_Ip; - } - - // This object holds multicast group ranges for RP - container range-items { - list RpGrpRange-list { - key "bidir"; - - // Added containment: Prefix=range - // Acquired From Package pim6 - uses pim6_RpGrpRange-group; - } - } - container rpgrplist-items { - list RpGrpList-list { - key "grpListName"; - - // Added containment: Prefix=rpgrplist - // Acquired From Package pim6 - uses pim6_RpGrpList-group; - } - } - } - - grouping pim6_RpGrpList-group { - leaf grpListName { - type address_Ip; - } - leaf bidir { - type boolean; - } - leaf override { - type boolean; - } - } - - grouping pim6_RouteDb-group { - - // This objects hold per pim6 domain (vrf) information - container vrf-items { - list Vrf-list { - config "false"; - key "name"; - - // Added containment: Prefix=vrf - // Acquired From Package pim6 - uses pim6_Vrf-group; - } - } - } - - grouping segrt_Entity-group { - - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } - } - - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type nw_AdminSt; - } - - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type nw_EntOperSt; - } - - // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; - } - - // This objects hold per Segment-routing instance information. - container inst-items { - - // Added containment as a singleton: Prefix=inst - // Acquired From Package segrt - uses segrt_Inst-group; - } - - // Holds segment-routing TE entity information - container te-items { - - // Added containment as a singleton: Prefix=te - // Acquired From Package srte - uses srte_TE-group; - } - } - - grouping segrt_Inst-group { - - // Sets the interval for which Segment-Routing process will wait for the clients - // to cleanup the old SRGB labels - // Type is an MO-Defined-Type - leaf srgbCleanupIntvl { - description "SRGB cleanup interval"; - - // Type is an MO-Defined-Type - type segrt_SrgbCleanupIntvl; - } - - // Sets the interval for which Segment-Routing will retry SRGB allocation with ULIB - // Type is an MO-Defined-Type - leaf srgbAllocRetryIntvl { - description "SRGB allocation retry interval"; - - // Type is an MO-Defined-Type - type segrt_SrgbAllocRetryIntvl; - } - - // Segment-routing operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Segment-routing Operational State"; - - // Type is an MO-Defined-Type - type segrt_OperSt; - } - - // Segment-routing operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { - config "false"; - description "Segment-routing Operational State Qualifier"; - - // Type is an MO-Defined-Type - type segrt_OperStQual; + pattern ".*[!-~]{0,63}.*"; + } + description "Register Message Prefix List"; } + } + + grouping pim6_SsmPatP-group { + description "This object holds policy for SSM Pattern"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + leaf descr { - // Type is an MO-Defined-Type - type nw_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // This object holds SSM group range + container range-items { - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses pim6_SsmRangeP-group; + description "SSM Group Range Policy"; } + } - // Operational errors qualifier - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf operErr { - config "false"; - description "Operational Errors Qualifier"; - - // Type is an MO-Defined-Type - type nw_OperErrQual; + grouping pim6_SsmRangeP-group { + description "SSM Group Range Policy"; + leaf rtMap { + type string { + pattern ".*[!-~]{0,63}.*"; + } + description "Route Map"; } - - // This object holds per domain (vrf) information - container dom-items { - list Dom-list { - key "name"; - - // Added containment: Prefix=dom - // Acquired From Package segrt - uses segrt_Dom-group; + leaf pfxList { + type string { + pattern ".*[!-~]{0,63}.*"; } + description "Prefix List"; } - - // Segment Routing Global Block - container srgb-items { - - // Added containment as a singleton: Prefix=srgb - // Acquired From Package segrt - uses segrt_Srgb-group; + leaf grpList { + type address_Ip; + description "Group List"; + } + leaf grpList1 { + type address_Ip; + description "Group List"; + } + leaf grpList2 { + type address_Ip; + description "Group List"; + } + leaf grpList3 { + type address_Ip; + description "Group List"; + } + leaf ssmNone { + type boolean; + description "SSM None "; } } - grouping segrt_Dom-group { + grouping pim6_BidirPatP-group { + description "This object holds policy for BiDir Pattern"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // This object holds per address family Segment-routing information - container af-items { - list DomAf-list { - key "afType"; + leaf descr { - // Added containment: Prefix=af - // Acquired From Package segrt - uses segrt_DomAf-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + + // Maximum number of RPs + leaf maxRP { + + type rtdmc_BidirRPLimit; + description "Maximum RPs"; + } + + // Designated Forwarder Offer Burst Interval + leaf dfobItvl { + + type rtdmc_DFOBItvl; + description "Designated Forwarder Offer Burst Interval"; } } - grouping segrt_DomAf-group { + grouping pim6_StaticRPP-group { + description "This object holds policy for Static RP"; - // Inherited From nw:Conn - // Modified by Override: nw:CpDom->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name of the given attribute"; } - // Address Family Type - // Inherited From segrt:Af - // Type is an MO-Defined-Type - leaf afType { - description "Address family type"; + leaf descr { - // Type is an MO-Defined-Type - type segrt_AfType; + type naming_Descr; + description "Description of the specified attribute"; } - // Prefix SID - container pfxsid-items { - list PrefixSid-list { - key "type"; + // This object holds Static RP Info + // If rp addr is configured locally, + // router assumes RP functionality + container rp-items { + list StaticRP-list { + key "addr"; - // Added containment: Prefix=pfxsid - // Acquired From Package segrt - uses segrt_PrefixSid-group; + uses pim6_StaticRP-group; + description "This object holds Static RP Information list"; } + description "This object holds Static RP Information"; } } - grouping segrt_PrefixSid-group { + grouping pim6_StaticRP-group { + description "This object holds Static RP Information"; + leaf addr { + type address_Ip; + description "Address"; + } - // Type of segment identifier - // Type is an MO-Defined-Type - leaf type { - description "Type of Segment Identifier"; + // This object holds multicast group ranges for RP + container range-items { + list RpGrpRange-list { + key "bidir"; - // Type is an MO-Defined-Type - type segrt_SrDpType; + uses pim6_RpGrpRange-group; + description "This object holds multicast group ranges for RP list"; + } + description "This object holds multicast group ranges for RP"; } + container rpgrplist-items { + list RpGrpList-list { + key "grpListName"; - // MPLS Prefix SID - container mplspfxsid-items { - list MplsPrefixSid-list { - key "pfx"; - - // Added containment: Prefix=mplspfxsid - // Acquired From Package segrt - uses segrt_MplsPrefixSid-group; + uses pim6_RpGrpList-group; + description "RP Multicast Group List list"; } + description "RP Multicast Group List"; } } - grouping segrt_MplsPrefixSid-group { - leaf pfx { + grouping pim6_RpGrpList-group { + description "RP Multicast Group List"; + leaf grpListName { type address_Ip; + description "Group List address"; } - - // Type of segment identifier - // Type is an MO-Defined-Type - leaf sidValueType { - description "Type of Segment Identifier Value"; - - // Type is an MO-Defined-Type - type segrt_SidValueType; + leaf bidir { + type boolean; + description "Treat Group Ranges as BiDir"; } - leaf sidValue { - type uint32 { - range "0..471804"; - } + leaf override { + type boolean; + description " Prefer Static RP over Dynamic RP"; } } - grouping segrt_Srgb-group { + grouping pim6_Gl-group { + description "This object holds global configuration for PIM6"; - // Config Segment Routing Global Block - container cfgsrgb-items { - list ConfigSrgb-list { - key "type"; + // logLevel + leaf logLvl { - // Added containment: Prefix=cfgsrgb - // Acquired From Package segrt - uses segrt_ConfigSrgb-group; - } + type mcast_LogLevelRange; + description "Syslog filter level"; } - - // Operational Segment Routing Global Block - container opersrgb-items { - - // Added containment as a singleton: Prefix=opersrgb - // Acquired From Package segrt - uses segrt_OperSrgb-group; + leaf isolate { + type boolean; + description "Isolate this router flag"; } } - grouping segrt_ConfigSrgb-group { - - // SRGB type - // Type is an MO-Defined-Type - leaf type { - description "SRGB type"; + grouping pim6_RouteDb-group { + description "This object holds PIM6 route database information"; - // Type is an MO-Defined-Type - type segrt_SrDpType; - } + // This objects hold per pim6 domain (vrf) information + // Ephemeral data + container vrf-items { - // Segment Routing Global Range Label Block - container lblblock-items { - list LblBlock-list { - key "localId"; + // Ephemeral data + list Vrf-list { + config "false"; + key "name"; - // Added containment: Prefix=lblblock - // Acquired From Package segrt - uses segrt_LblBlock-group; + uses pim6_Vrf-group; + description "This objects hold per pim6 domain (vrf) information list"; } + description "This objects hold per pim6 domain (vrf) information"; } } - grouping segrt_LblBlock-group { - leaf localId { - type string { - length "1..64"; - } - } + grouping ptp_PtpEntity-group { + description "PTP Entity MO for all the PTP global configuration properties"; - // SRGB minimum label - // Type is an MO-Defined-Type - leaf srLblMin { - description "SRGB minimum label"; + // Holds multiple PTP Correction oper information + container correction-items { - // Type is an MO-Defined-Type - type ulib_LabelVal { - range "16000..471804"; - } + uses ptp_PtpCorrection-group; + description "PTP Correction Object"; } + } - // SRGB maximum label - // Type is an MO-Defined-Type - leaf srLblMax { - description "SRGB minimum label"; - - // Type is an MO-Defined-Type - type ulib_LabelVal { - range "16000..471804"; - } + grouping ptp_PtpCorrection-group { + description "PTP Correction Object"; + leaf lastHighCorrectionTime { + config "false"; + type string; + description "last SUP time when the correction occured"; } - - // SRGB operational state - // Type is an MO-Defined-Type - leaf operSt { + leaf lastHighCorrectionValue { config "false"; - description "SRGB Operational State"; - - // Type is an MO-Defined-Type - type segrt_SRGBOperSt; + type int64; + description "PTP last Correction value"; } - - // Number of SRGB allocation retries - // Type is an MO-Defined-Type - leaf numAllocRetries { + leaf highCorrectionCount { config "false"; - description "Number of SRGB allocation retries"; - - // Type is an MO-Defined-Type - type nw_Counter32; + type uint16; + description "Total PTP Corrections since last timestamp"; } } - grouping segrt_OperSrgb-group { + grouping segrt_Entity-group { + description "Segment-routing Entity"; - // SRGB type - // Type is an MO-Defined-Type - leaf type { - description "SRGB type"; + leaf name { - // Type is an MO-Defined-Type - type segrt_SrDpType; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Segment Routing Attributes - container operlblblock-items { - list OperLblBlock-list { - config "false"; - key "localId"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=operlblblock - // Acquired From Package segrt - uses segrt_OperLblBlock-group; - } + type nw_AdminSt; + description "Admin State"; } - } - grouping segrt_OperLblBlock-group { - leaf localId { + // Operational state + leaf operSt { config "false"; - type string; + + type nw_EntOperSt; + description "Operational State"; } - // SRGB minimum label - // Type is an MO-Defined-Type - leaf srLblMin { + // Operational errors qualifier + leaf operErr { config "false"; - description "SRGB minimum label"; - // Type is an MO-Defined-Type - type ulib_LabelVal; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // SRGB maximum label - // Type is an MO-Defined-Type - leaf srLblMax { - config "false"; - description "SRGB minimum label"; + container srv6-items { - // Type is an MO-Defined-Type - type ulib_LabelVal; + uses srv6_Entity-group; + description "SRv6 root MO"; } - // SRGB operational state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "SRGB Operational State"; + // This objects hold per Segment-routing instance information. + container inst-items { - // Type is an MO-Defined-Type - type segrt_SRGBOperSt; + uses segrt_Inst-group; + description "Segment-routing Instance"; } - // Number of SRGB allocation retries - // Type is an MO-Defined-Type - leaf numAllocRetries { - config "false"; - description "Number of SRGB allocation retries"; + // Holds segment-routing TE entity information + container te-items { - // Type is an MO-Defined-Type - type nw_Counter32; + uses srte_TE-group; + description "Traffic Engineering Entity, anchoring all SRTE specific MOs"; } } - grouping srte_TE-group { + grouping srv6_Entity-group { + description "SRv6 root MO"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // SRTE Color definition - container color-items { - list Color-list { - key "color"; + // Ephemeral data + container sidcounters-items { - // Added containment: Prefix=color - // Acquired From Package srte - uses srte_Color-group; + // Ephemeral data + list SidCounters-list { + config "false"; + key "sidAddress"; + + uses srv6_SidCounters-group; + description "SID counters list"; } + description "SID counters"; } - // SRTE Encapsulation definition - container encap-items { - list Encapsulation-list { - key "encapType"; + container encapsulation-items { - // Added containment: Prefix=encap - // Acquired From Package srte - uses srte_Encapsulation-group; - } + uses srv6_Encapsulation-group; + description "Encapsulation address. Either address or interface is used, not both."; } - // SRTE Exp Path definition - container exppath-items { - list ExpPath-list { - key "name"; + container locators-items { - // Added containment: Prefix=exppath - // Acquired From Package srte - uses srte_ExpPath-group; - } + uses srv6_Locators-group; + description "Root of all locators"; } + } - // SRTE Policy definition - container pcc-items { + grouping srv6_SidCounters-group { + description "SID counters"; - // Added containment as a singleton: Prefix=pcc - // Acquired From Package srte - uses srte_Pcc-group; + // Ephemeral data + leaf sidAddress { + config "false"; + type address_Ip; + description "SID IPv6 address, no mask length needed"; } - // SRTE Policy definition - container policy-items { - list Policy-list { - key "name"; + // Ephemeral data + leaf sidIsLocal { + config "false"; + type boolean; + description "True if the SID is local, false if it is remote."; + } - // Added containment: Prefix=policy - // Acquired From Package srte - uses srte_Policy-group; - } + // Ephemeral data + leaf sidCounterInputPkts { + config "false"; + type uint64; + description "Number of packets coming from this SID."; } - } - grouping srte_Color-group { - leaf color { + // Ephemeral data + leaf sidCounterInputBytes { + config "false"; type uint64; + description "Number of bytes coming from this SID."; } - // Type is an MO-Defined-Type - leaf metric { - description "Metric"; + // Ephemeral data + leaf sidCounterOutputPkts { + config "false"; + type uint64; + description "Number of packets sent to this SID."; + } - // Type is an MO-Defined-Type - type srte_Metric; + // Ephemeral data + leaf sidCounterOutputBytes { + config "false"; + type uint64; + description "Number of bytes sent to this SID."; } } - grouping srte_Encapsulation-group { + grouping srv6_Encapsulation-group { + description "Encapsulation address. Either address or interface is used, not both."; leaf srcAddress { type address_Ip; + description "IPv6 address"; } - - // Type is an MO-Defined-Type - leaf encapType { - description "Encapsulation type"; - - // Type is an MO-Defined-Type - type srte_EncapsulationType; + leaf srcInterface { + type string; + description "Interface, most likely a loopback"; } - } - grouping srte_ExpPath-group { - - // Type is an MO-Defined-Type leaf name { - description "Explicit path name"; - // Type is an MO-Defined-Type - type srte_Name; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // SRTE Exp Path Next-Label definition - container nxtlbl-items { - list NxtLbl-list { - key "idx"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=nxtlbl - // Acquired From Package srte - uses srte_NxtLbl-group; - } + type nw_AdminSt; + description "Admin State"; } - } - - grouping srte_NxtLbl-group { - // Type is an MO-Defined-Type - leaf idx { - description "Index"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type srte_OptNum; + type nw_EntOperSt; + description "Operational State"; } - // Type is an MO-Defined-Type - leaf lbl { - description "Next Label Value"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type srte_LabelVal; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping srte_Pcc-group { - leaf srcAddress { - type address_Ip; - } + grouping srv6_Locators-group { + description "Root of all locators"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } // Operational errors qualifier - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operErr { config "false"; - description "Operational Errors Qualifier"; - // Type is an MO-Defined-Type type nw_OperErrQual; + description "Operational Errors Qualifier"; } + container locator-items { + list Locator-list { + key "name"; - // SRTE Pce definition - container pce-items { - list Pce-list { - key "pceAddress"; - - // Added containment: Prefix=pce - // Acquired From Package srte - uses srte_Pce-group; + uses srv6_Locator-group; + description "Define one locator list"; } + description "Define one locator"; } } - grouping srte_Pce-group { - - // Type is an MO-Defined-Type - leaf precedence { - description "Precedence value (0 is most preferred, 255 is least)"; - - // Type is an MO-Defined-Type - type srte_PcePrecedence; - } - leaf pceAddress { - type address_Ip; - } - } - - grouping srte_Policy-group { + grouping srv6_Locator-group { + description "Define one locator"; - // Type is an MO-Defined-Type leaf name { - description "Policy name"; - // Type is an MO-Defined-Type - type srte_Name; + type srv6_LocName; + description "Locator name"; } - leaf endpoint { + leaf prefix { type address_Ip; - } - leaf color { - type uint64; - } - - // SRTE Policy Preference definition - container pref-items { - list PolPref-list { - key "pref"; - - // Added containment: Prefix=pref - // Acquired From Package srte - uses srte_PolPref-group; - } - } - } - - grouping srte_PolPref-group { - - // Type is an MO-Defined-Type - leaf pref { - description "The preference value for the group of explicit paths"; - - // Type is an MO-Defined-Type - type srte_OptNum; + description "Locator address"; } - // SRTE Policy Explicit-path holder definition - container exp-items { - list PolExp-list { - key "name"; + leaf state { + config "false"; - // Added containment: Prefix=exp - // Acquired From Package srte - uses srte_PolExp-group; - } + type srv6_LocState; + description "Locator State"; } - } - - grouping srte_PolExp-group { - - // Type is an MO-Defined-Type - leaf name { - description "Explicit path name. Must be the name of an existing ExpPath MO"; - - // Type is an MO-Defined-Type - type srte_Name; + leaf id { + config "false"; + type uint32; + description "Locator Id"; } } - grouping vrrp_Entity-group { + grouping segrt_Inst-group { + description "Segment-routing Instance"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Sets the interval for which Segment-Routing process will wait for the clients + // to cleanup the old SRGB labels + leaf srgbCleanupIntvl { - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; - } + type segrt_SrgbCleanupIntvl; + description "SRGB cleanup interval"; } - // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Sets the interval for which Segment-Routing will retry SRGB allocation with ULIB + leaf srgbAllocRetryIntvl { - // Type is an MO-Defined-Type - type nw_AdminSt; + type segrt_SrgbAllocRetryIntvl; + description "SRGB allocation retry interval"; } - // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type + // Segment-routing operational state leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type nw_EntOperSt; + type segrt_OperSt; + description "Segment-routing Operational State"; } - // This object holds per vrrp instance information. There is only - // one instance supported in vrrp currently - container inst-items { + // Segment-routing operational state qualifier + leaf operStQual { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vrrp - uses vrrp_Inst-group; + type segrt_OperStQual; + description "Segment-routing Operational State Qualifier"; } - } - - grouping vrrp_Inst-group { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type leaf ctrl { + + type nw_InstCtrl; description "Controls"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // This object holds per domain (vrf) information + container dom-items { + list Dom-list { + key "name"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses segrt_Dom-group; + description "Domain list"; + } + description "Domain"; } - // This object holds the interfaces that will have VRRP interface. - // Interface must already be created and should have an IP address - container if-items { - list Interface-list { - key "id"; + // Segment Routing Global Block + container srgb-items { - // Added containment: Prefix=if - // Acquired From Package vrrp - uses vrrp_Interface-group; - } + uses segrt_Srgb-group; + description "Segment Routing Global Block"; } } - grouping vrrp_Interface-group { - leaf isCreate { - config "false"; - type uint8; - default "0"; - } + grouping segrt_Dom-group { + description "Domain"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "This object holds name information"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // This object holds per address family Segment-routing information + container af-items { + list DomAf-list { + key "afType"; - // Type is an MO-Defined-Type - type naming_Descr1024; + uses segrt_DomAf-group; + description "Address Family Domain list"; + } + description "Address Family Domain"; } + } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + grouping segrt_DomAf-group { + description "Address Family Domain"; - // Type is an MO-Defined-Type - type nw_IfId; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Address Family Type + leaf afType { - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type segrt_AfType; + description "Address family type"; } - // This object holds vrrp id information - container id-items { - list Id-list { - key "id"; + // Prefix SID + container pfxsid-items { + list PrefixSid-list { + key "type"; - // Added containment: Prefix=id - // Acquired From Package vrrp - uses vrrp_Id-group; + uses segrt_PrefixSid-group; + description "Prefix Segment Identifier list"; } + description "Prefix Segment Identifier"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - container rtvrfMbr-items { + grouping segrt_PrefixSid-group { + description "Prefix Segment Identifier"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + // Type of segment identifier + leaf type { + + type segrt_SrDpType; + description "Type of Segment Identifier"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // MPLS Prefix SID + container mplspfxsid-items { + list MplsPrefixSid-list { + key "pfx"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses segrt_MplsPrefixSid-group; + description "MPLS Prefix Segment Identifier list"; } + description "MPLS Prefix Segment Identifier"; } } - grouping vrrp_Id-group { - - // vrrp id - // Type is an MO-Defined-Type - leaf id { - description "VRRP Id"; - - // Type is an MO-Defined-Type - type vrrp_Id; - } - leaf primary { + grouping segrt_MplsPrefixSid-group { + description "MPLS Prefix Segment Identifier"; + leaf pfx { type address_Ip; + description "Prefix"; } - // advertise interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Advertisement Interval"; + // Type of segment identifier + leaf sidValueType { - // Type is an MO-Defined-Type - type vrrp_AdvIntvl; + type segrt_SidValueType; + description "Type of Segment Identifier Value"; } + leaf sidValue { + type uint32 { + range "0..471804"; + } + description "Value of SID"; + } + } - // authentication text - // Type is an MO-Defined-Type - leaf authText { - description "Authentication Text"; + grouping segrt_Srgb-group { + description "Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_AuthTextType; + // Config Segment Routing Global Block + container cfgsrgb-items { + list ConfigSrgb-list { + key "type"; + + uses segrt_ConfigSrgb-group; + description "Config Segment Routing Global Block list"; + } + description "Config Segment Routing Global Block"; } - // authentication type - // Type is an MO-Defined-Type - leaf authType { - description "Authentication Type"; + // Operational Segment Routing Global Block + container opersrgb-items { - // Type is an MO-Defined-Type - type vrrp_AuthType; + uses segrt_OperSrgb-group; + description "Operational Segment Routing Global Block"; } + } - // Preempt - // Type is an MO-Defined-Type - leaf preempt { - description "Preempt"; + grouping segrt_ConfigSrgb-group { + description "Config Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_Preempt; + // SRGB type + leaf type { + + type segrt_SrDpType; + description "SRGB type"; } - // priority configuration - // Type is an MO-Defined-Type - leaf priCfg { - description "Configured Priority"; + // Segment Routing Global Range Label Block + container lblblock-items { + list LblBlock-list { + key "localId"; - // Type is an MO-Defined-Type - type vrrp_PriVal; - } - leaf bfdPeerAddr { - type address_Ip; + uses segrt_LblBlock-group; + description "Segment Routing Global Range Label Block list"; + } + description "Segment Routing Global Range Label Block"; } + } - // forwarding lower threshold - // Type is an MO-Defined-Type - leaf fwdLwrThrld { - description "Fowarding Lower Threshold"; - - // Type is an MO-Defined-Type - type vrrp_PriVal; + grouping segrt_LblBlock-group { + description "Segment Routing Global Range Label Block"; + leaf localId { + type string { + length "1..64"; + } + description "SRGB identifier"; } - // forwarding upper threshold - // Type is an MO-Defined-Type - leaf fwdUprThrld { - description "Forwarding Upper Threshold"; + // SRGB minimum label + leaf srLblMin { - // Type is an MO-Defined-Type - type vrrp_UprThrshld; + type ulib_LabelVal { + range "16000..471804"; + } + description "SRGB minimum label"; } - // admin state - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin state"; + // SRGB maximum label + leaf srLblMax { - // Type is an MO-Defined-Type - type vrrp_AdminSt; + type ulib_LabelVal { + range "16000..471804"; + } + description "SRGB minimum label"; } - // group state - // Type is an MO-Defined-Type - leaf groupSt { + // SRGB operational state + leaf operSt { config "false"; - description "vrrp group state"; - // Type is an MO-Defined-Type - type vrrp_GroupSt; + type segrt_SRGBOperSt; + description "SRGB Operational State"; } - // group state qualifier - // Type is an MO-Defined-Type - leaf groupStQual { + // Number of SRGB allocation retries + leaf numAllocRetries { config "false"; - description "vrrp group state qualifier"; - // Type is an MO-Defined-Type - type vrrp_GroupStQual; - } - leaf mac { - config "false"; - type address_Mac; - } - leaf masterAddr { - config "false"; - type address_Ip; + type nw_Counter32; + description "Number of SRGB allocation retries"; } + } - // bfd session status - // Type is an MO-Defined-Type - leaf bfdSessionSt { - config "false"; - description "vrrp bfd session status"; + grouping segrt_OperSrgb-group { + description "Operational Segment Routing Global Block"; - // Type is an MO-Defined-Type - type vrrp_bfdSessionSt; - } - container secondary-items { - list Secondary-list { - key "secondary"; + // SRGB type + leaf type { - // Added containment: Prefix=secondary - // Acquired From Package vrrp - uses vrrp_Secondary-group; - } + type segrt_SrDpType; + description "SRGB type"; } - // Object to hold vrrp tarck information - container track-items { + // Segment Routing Attributes + container operlblblock-items { + list OperLblBlock-list { + config "false"; + key "localId"; - // Added containment as a singleton: Prefix=track - // Acquired From Package vrrp - uses vrrp_Track-group; + uses segrt_OperLblBlock-group; + description "Operational Segment Routing Global Range Lable Block list"; + } + description "Operational Segment Routing Global Range Lable Block"; } } - grouping vrrp_Secondary-group { - leaf secondary { - type address_Ip; + grouping segrt_OperLblBlock-group { + description "Operational Segment Routing Global Range Lable Block"; + leaf localId { + config "false"; + type string; + description "SRGB identifier"; } - } - - grouping vrrp_Track-group { - // Object to hold native track information - container nativeTrack-items { + // SRGB minimum label + leaf srLblMin { + config "false"; - // Added containment as a singleton: Prefix=nativeTrack - // Acquired From Package vrrp - uses vrrp_NativeTrack-group; + type ulib_LabelVal; + description "SRGB minimum label"; } - // Contains track information of otm track object - container track-items { - list ObjectTrack-list { - key "id"; + // SRGB maximum label + leaf srLblMax { + config "false"; - // Added containment: Prefix=track - // Acquired From Package vrrp - uses vrrp_ObjectTrack-group; - } + type ulib_LabelVal; + description "SRGB minimum label"; } - } - - grouping vrrp_NativeTrack-group { - // Interface name to be tracked, format to be specified - // eth1/1, eth1/1.1, po1 - // Type is an MO-Defined-Type - leaf id { - description "Interface to be tracked by this VRRP instance"; + // SRGB operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf priority { - type uint16 { - range "1..254"; - } + type segrt_SRGBOperSt; + description "SRGB Operational State"; } - } - - grouping vrrp_ObjectTrack-group { - // Track id to be tracked - // Type is an MO-Defined-Type - leaf id { - description "Track Id to be tracked"; + // Number of SRGB allocation retries + leaf numAllocRetries { + config "false"; - // Type is an MO-Defined-Type - type track_TrackId; - } - leaf decrementPriority { - type uint16 { - range "1..254"; - } - default "10"; + type nw_Counter32; + description "Number of SRGB allocation retries"; } } - grouping vrrpv3_Entity-group { + grouping srte_TE-group { + description "Traffic Engineering Entity, anchoring all SRTE specific MOs"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This object holds per vrrpv3 instance information. There is only - // one instance supported in vrrpv3 currently - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vrrpv3 - uses vrrpv3_Inst-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - } - grouping vrrpv3_Inst-group { + // SRTE Exp Path definition + container affmap-items { - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type - leaf name { - description "Name"; + uses srte_AffMap-group; + description "Configures affinity mappings. Mappings of user-defined names to a bit position in the affinity bitmap "; + } - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + // SRTE Color definition + container color-items { + list Color-list { + key "color"; + + uses srte_Color-group; + description "Segment Routing TE Color Class list"; } + description "Segment Routing TE Color Class"; } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // SRTE Encapsulation definition + container encap-items { + list Encapsulation-list { + key "encapType"; - // Type is an MO-Defined-Type - type nw_AdminSt; + uses srte_Encapsulation-group; + description "SRTE Encapsulation Class list"; + } + description "SRTE Encapsulation Class"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - description "Controls"; + // SRTE Segment list definition + container seglist-items { + list SegList-list { + key "name"; - // Type is an MO-Defined-Type - type nw_InstCtrl; + uses srte_SegList-group; + description "SRTE Explicit Segment List Class list"; + } + description "SRTE Explicit Segment List Class"; } - // This object holds the interfaces that will have VRRPv3 interface. + // This object holds srte information that is operated at a + // interface level container if-items { - list Interface-list { + list If-list { key "id"; - // Added containment: Prefix=if - // Acquired From Package vrrpv3 - uses vrrpv3_Interface-group; + uses srte_If-group; + description "Configures this interface for segment-routing Traffic-Engineering purposes list"; } + description "Configures this interface for segment-routing Traffic-Engineering purposes"; } - } - grouping vrrpv3_Interface-group { - leaf isCreate { - config "false"; - type uint8; - default "0"; + // SRTE Policy definition + container pcc-items { + + uses srte_Pcc-group; + description "SRTE PCC (Path Computation Client) Class"; + } + + // SRTE Policy definition + container policy-items { + list Policy-list { + key "name"; + + uses srte_Policy-group; + description "Segment Routing TE Policy Class list"; + } + description "Segment Routing TE Policy Class"; } + } + + grouping srte_AffMap-group { + description "Configures affinity mappings. Mappings of user-defined names to a bit position in the affinity bitmap "; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024; + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative state - // Inherited From nw:ProtIf - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type nw_IfAdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // This object holds Virtual Router ID information - container id-items { - list Vr-list { - key "id af"; + // SRTE Affinity color definition + container affcol-items { + list AffColor-list { + key "name"; - // Added containment: Prefix=id - // Acquired From Package vrrpv3 - uses vrrpv3_Vr-group; + uses srte_AffColor-group; + description "User defined name and its bit position in the affinity bit map list"; } + description "User defined name and its bit position in the affinity bit map"; } + } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - container rtvrfMbr-items { + grouping srte_AffColor-group { + description "User defined name and its bit position in the affinity bit map"; - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + leaf name { + + type srte_Name; + description "User defined named of the affinity Color Affinity Name"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + leaf bitpos { - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } + type srte_BitPos; + description "Bit position in the affinity map"; } } - grouping vrrpv3_Vr-group { + grouping srte_Color-group { + description "Segment Routing TE Color Class"; - // Virtual Router ID - // Type is an MO-Defined-Type - leaf id { - description "VRRPv3 Virtual Router Id"; + leaf color { - // Type is an MO-Defined-Type - type vrrpv3_Id; - } - leaf ip { - type address_Ip; + type srte_ColorVal; + description "Segment Routing TE Color Value"; } - // Advertisement Interval - // Type is an MO-Defined-Type - leaf advIntvl { - description "Advertisement Interval"; + leaf metric { - // Type is an MO-Defined-Type - type vrrpv3_AdvIntvl; + type srte_Metric; + description "Segment Routing TE Metric"; } - // Priority Configuration - // Type is an MO-Defined-Type - leaf priCfg { - description "Configured Priority"; + // SRTE Candidate Path definition + container cndpaths-items { - // Type is an MO-Defined-Type - type vrrpv3_PriVal; + uses srte_CndPaths-group; + description "Denotes the Candidate paths for the On-Demand Color and is identified by a preference value"; } + } - // Preempt - // Type is an MO-Defined-Type - leaf preempt { - description "Preempt"; - - // Type is an MO-Defined-Type - type vrrpv3_Preempt; - } + grouping srte_CndPaths-group { + description "Denotes the Candidate paths for the On-Demand Color and is identified by a preference value"; - // Virtual Router Description string - // Type is an MO-Defined-Type leaf name { - description "Virtual Router Description"; - // Type is an MO-Defined-Type - type vrrpv3_Desc; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Minimum Preemption delay before this group can preempt a high priority Masster - // Type is an MO-Defined-Type - leaf preemptDelayMin { - description "Miminum delay before preempt"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type vrrpv3_PreemptDelay; + type nw_AdminSt; + description "Admin State"; } - // Admin State - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin state"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type vrrpv3_AdminSt; + type nw_EntOperSt; + description "Operational State"; } - // Virtual Router Address family - // Type is an MO-Defined-Type - leaf af { - description "Virtual Router Address Family"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type vrrpv3_VrAf; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container addr-items { - list Addr-list { - key "addr"; - // Added containment: Prefix=addr - // Acquired From Package vrrpv3 - uses vrrpv3_Addr-group; + // SRTE Candidate Path Preference definition + container pref-items { + list Pref-list { + key "prefVal"; + + uses srte_Pref-group; + description "Class that defines the preference value of this candidate path list"; } + description "Class that defines the preference value of this candidate path"; } } - grouping vrrpv3_Addr-group { - leaf addr { - type address_Ip; + grouping srte_Pref-group { + description "Class that defines the preference value of this candidate path"; + leaf prefVal { + type uint32; + description "Preference Value of the Candidate path. Higher preference value is preferred"; } - } - - grouping scrtchpd_Root-group { - // Holds rpm control plane entity information - container rpmcli-items { + // SRTE Candidate Path Dynamic definition + container dyn-items { - // Added containment as a singleton: Prefix=rpmcli - // Acquired From Package rpmcli - uses rpmcli_EntityCli-group; + uses srte_Dynamic-group; + description "Enables the dynamic path configuration sub-section for this candidate path"; } - // Holds Vlan-mgr control plane entity information - container vlanmgrcli-items { + // SRTE Candidate Path Constraint definition + container constraints-items { - // Added containment as a singleton: Prefix=vlanmgrcli - // Acquired From Package vlanmgrcli - uses vlanmgrcli_EntityCli-group; + uses srte_Constraint-group; + description "Specifies the required constraints for this Candidate Paths"; } } - grouping rpmcli_EntityCli-group { + grouping srte_Dynamic-group { + description "Enables the dynamic path configuration sub-section for this candidate path"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // Route control rule for access lists - container accesslistcli-items { - list RuleCli-list { - config "false"; - key "name"; - - // Added containment: Prefix=accesslistcli - // Acquired From Package rtlistcli - uses rtlistcli_RuleCli-group; - } - } - - // Route control rule for V4 prefix lists - container pfxlistv4cli-items { - list RuleV4Cli-list { - config "false"; - key "name"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=pfxlistv4cli - // Acquired From Package rtpfxcli - uses rtpfxcli_RuleV4Cli-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Route control rule for V6 prefix lists - container pfxlistv6cli-items { - list RuleV6Cli-list { - config "false"; - key "name"; + // SRTE Candidate Path Dynamic PCEP definition + container pce-items { - // Added containment: Prefix=pfxlistv6cli - // Acquired From Package rtpfxcli - uses rtpfxcli_RuleV6Cli-group; - } + uses srte_DynPce-group; + description "Defines the candidate paths need to be computed by Path Computation engine"; } - // Route control rule for regular community lists - container rtregcomcli-items { - list RuleCli-list { - config "false"; - key "name"; + // SRTE Candidate Path Metric definition + container metric-items { - // Added containment: Prefix=rtregcomcli - // Acquired From Package rtregcomcli - uses rtregcomcli_RuleCli-group; - } + uses srte_Metric-group; + description "Specifies the type of metric that the computation will optimize"; } } - grouping rtlistcli_RuleCli-group { + grouping srte_DynPce-group { + description "Defines the candidate paths need to be computed by Path Computation engine"; - // Inherited From pol:Obj - // Modified by Override: rtlistcli:RuleCli->name - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - // Prefix list entry definition - container entcli-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtlistcli - uses rtlistcli_EntryCli-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtlistcli_EntryCli-group { + grouping srte_Metric-group { + description "Specifies the type of metric that the computation will optimize"; - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { - config "false"; - description "Action"; + leaf metricType { - // Type is an MO-Defined-Type - type scrtchpd_Action; + type srte_Metric; + description "Candidate Path Metric Type"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; - } - leaf regex { - config "false"; - type string { - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtpfxcli_RuleV4Cli-group { + grouping srte_Constraint-group { + description "Specifies the required constraints for this Candidate Paths"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Prefix list entry definition - container entcli-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtpfxcli - uses rtpfxcli_EntryCli-group; + type nw_EntOperSt; + description "Operational State"; } - } - - grouping rtpfxcli_EntryCli-group { - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type scrtchpd_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf pfx { - config "false"; - type address_Ip; + + // SRTE Candidate Path Segment definition + container segment-items { + + uses srte_Segments-group; + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; } - leaf mask { - config "false"; - type address_Ip; + + // SRTE Candidate Path Association definition + container assoc-items { + + uses srte_Assoc-group; + description "Specifies the association types this candidate path belongs to"; } - // criteria, exact match or inexact match - // Type is an MO-Defined-Type - leaf criteria { - config "false"; - description "Criteria"; + // SRTE Candidate Path Affinity definition + container affinity-items { - // Type is an MO-Defined-Type - type rtpfx_Criteria; + uses srte_Affinity-group; + description "Specifies the affinity constraints for the path"; } + } - // If the criteria is not an exact match, use a range to - // describe the prefix list range - // Type is an MO-Defined-Type - leaf fromPfxLen { - config "false"; - description "Start of Prefix Length"; + grouping srte_Segments-group { + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; - // Type is an MO-Defined-Type - type l3_IpPfxLen; + leaf protType { + + type srte_ProtectionType; + description "Specifies if the candidate path must use protected or unprotected SIDs"; } - // Type is an MO-Defined-Type - leaf toPfxLen { - config "false"; - description "End of Prefix Length"; + leaf datapln { - // Type is an MO-Defined-Type - type l3_IpPfxLen; + type srte_DataPlane; + description "Specifies if this candidate paths is encoded with MPLS SIDs or SRv6 SIDs"; } - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } } - grouping rtpfxcli_RuleV6Cli-group { + grouping srte_Assoc-group { + description "Specifies the association types this candidate path belongs to"; - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Prefix list entry definition - container entcli-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtpfxcli - uses rtpfxcli_EntryCli-group; + type nw_EntOperSt; + description "Operational State"; } - } - grouping rtregcomcli_RuleCli-group { - - // Inherited From pol:Obj - // Modified by Override: nw:FltRule->name - // Type is an MO-Defined-Type - leaf name { + // Operational errors qualifier + leaf operErr { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "0..64"; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // SRTE Candidate Path Disjointness + container disj-items { - // Type is an MO-Defined-Type - type naming_Descr; + uses srte_Disjointness-group; + description "Specifies that the path belongs to the disjointness association group"; } + } - // Type of the community list [regular | extended] - // Inherited From rtcom:Rule - // Modified by Override: rtregcomcli:RuleCli->type - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "Type"; - - // Type is an MO-Defined-Type - type rtcom_ComT; + grouping srte_Disjointness-group { + description "Specifies that the path belongs to the disjointness association group"; + leaf id { + type uint32; + description "Association group Identifier"; } - // Mode - // Inherited From rtcom:Rule - // Type is an MO-Defined-Type - leaf mode { - config "false"; - description "Mode"; + leaf disjType { - // Type is an MO-Defined-Type - type rtcom_Mode; + type srte_DisjointType; + description "Specifies the type of disjointness this path needs to be."; } - // Regular community list entry - container entregcli-items { + leaf name { - // Added containment as a singleton: Prefix=entregcli - // Acquired From Package rtregcomcli - uses rtregcomcli_EntryRegexCli-group; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Regular community list entry - container entcli-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=entcli - // Acquired From Package rtregcomcli - uses rtregcomcli_EntryCli-group; + type nw_AdminSt; + description "Admin State"; } - } - grouping rtregcomcli_EntryRegexCli-group { - leaf numOfChildren { + // Operational state + leaf operSt { config "false"; - type uint32; + + type nw_EntOperSt; + description "Operational State"; } - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type scrtchpd_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } + + grouping srte_Affinity-group { + description "Specifies the affinity constraints for the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf regex { - config "false"; - type string { - } + + // SRTE Candidate Path Affinity exclude-any definition + container exclany-items { + + uses srte_Excludeany-group; + description "Specifies that links that have any of the specified affinity colors must not be traversed by the path"; } - } - grouping rtregcomcli_EntryCli-group { - leaf numOfChildren { - config "false"; - type uint32; + // SRTE Candidate Path Affinity include-all definition + container inclall-items { + + uses srte_Includeall-group; + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; } - // CLI Action - // Type is an MO-Defined-Type - leaf cliAction { - config "false"; - description "Action"; + // SRTE Candidate Path Affinity include-any definition + container inclany-items { - // Type is an MO-Defined-Type - type scrtchpd_Action; + uses srte_Includeany-group; + description "Specifies that only links that have any of the specified affinity colors can be traversed by the path"; } + } + + grouping srte_Excludeany-group { + description "Specifies that links that have any of the specified affinity colors must not be traversed by the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr; + type nw_AdminSt; + description "Admin State"; } - // Order - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf order { + // Operational state + leaf operSt { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type rtflt_Order { - range "1..4294967294"; - } + type nw_EntOperSt; + description "Operational State"; } - // Action - // Inherited From rtflt:Entry - // Type is an MO-Defined-Type - leaf action { + // Operational errors qualifier + leaf operErr { config "false"; - description "Action"; - // Type is an MO-Defined-Type - type rtflt_Action; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - leaf regex { - config "false"; - type string { + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Item in the community list - container itemcli-items { - list ItemCli-list { - config "false"; - key "community"; + grouping srte_ConstAffColor-group { + description "Specify the affinity color for the Affinity constraint type"; - // Added containment: Prefix=itemcli - // Acquired From Package rtregcomcli - uses rtregcomcli_ItemCli-group; - } + leaf name { + + type srte_Name; + description "Name of the affinity Color definition"; } } - grouping rtregcomcli_ItemCli-group { + grouping srte_Includeall-group { + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; - // Inherited From pol:Obj - // Modified by Override: nw:FltEntry->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { - length "0..64"; + length "1..64"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Instr - // Type is an MO-Defined-Type - leaf descr { + // - Admin state + leaf adminSt { + + type nw_AdminSt; + description "Admin State"; + } + + // Operational state + leaf operSt { config "false"; - description "Description"; - // Type is an MO-Defined-Type - type naming_Descr; + type nw_EntOperSt; + description "Operational State"; } - leaf community { + + // Operational errors qualifier + leaf operErr { config "false"; - type mtx_array_community; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping vlanmgrcli_EntityCli-group { + grouping srte_Includeany-group { + description "Specifies that only links that have any of the specified affinity colors can be traversed by the path"; - // Inherited From nw:Conn - // Modified by Override: nw:CpEntity->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } // - Admin state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf adminSt { - config "false"; - description "Admin State"; - // Type is an MO-Defined-Type type nw_AdminSt; + description "Admin State"; } // Operational state - // Inherited From nw:CpEntity - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_EntOperSt; + description "Operational State"; } - // This objects hold per vlan-mgr instance information. There is only - // one instance of vlan-mgr running in the system today - container inst-items { + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment as a singleton: Prefix=inst - // Acquired From Package vlanmgrcli - uses vlanmgrcli_InstCli-group; + type nw_OperErrQual; + description "Operational Errors Qualifier"; + } + + // SRTE Affinity color for constraint + container affcol-items { + list ConstAffColor-list { + key "name"; + + uses srte_ConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping vlanmgrcli_InstCli-group { - leaf vxlanNativeVlans { - config "false"; - type boolean; + grouping srte_Encapsulation-group { + description "SRTE Encapsulation Class"; + leaf srcAddress { + type address_Ip; + description "SRTE Encapsulation Source IP Address"; + } + + leaf encapType { + + type srte_EncapsulationType; + description "SRTE Encapsulation Type"; } + } + + grouping srte_SegList-group { + description "SRTE Explicit Segment List Class"; - // Inherited From nw:Conn - // Modified by Override: nw:CpInst->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { - length "1..64"; + type srte_Name; + description "SRTE Explicit Segment List Name"; + } + + // SRTE Segment list Next-Label definition + container nxtlbl-items { + list NxtLbl-list { + key "idx"; + + uses srte_NxtLbl-group; + description "SRTE Segment List Next Label Class list"; } + description "SRTE Segment List Next Label Class"; } + } - // Administrative state - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf adminSt { - config "false"; - description "Admin State"; + grouping srte_NxtLbl-group { + description "SRTE Segment List Next Label Class"; - // Type is an MO-Defined-Type - type nw_AdminSt; + leaf idx { + + type srte_OptNum; + description "SRTE Segment List Next Label Index"; } - // Instance controls - // Inherited From nw:CpInst - // Type is an MO-Defined-Type - leaf ctrl { - config "false"; - description "Controls"; + leaf lbl { - // Type is an MO-Defined-Type - type nw_InstCtrl; + type srte_LabelVal; + description "SRTE Segment List Next Label Value"; } } - // Has Polymorphic containment of abstract object synthetic:CTestObj - grouping synthetic_SwTLTestObj-group { + grouping srte_If-group { + description "Configures this interface for segment-routing Traffic-Engineering purposes"; - // From Interface naming:Named - // Inherited From naming:NamedObject - // Type is an MO-Defined-Type - leaf name { - description "Name"; + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type naming_Name; + type srte_IfOperSt; + description "Operation State for the interface for Segment-routing Traffic Engineering"; + } + leaf deleted { + config "false"; + type boolean; + description "Is this MO pending deletion"; } - // From Interface naming:Identified - // Inherited From naming:NamedIdentifiedObject - // Type is an MO-Defined-Type - leaf id { - description "Id"; + leaf name { - // Type is an MO-Defined-Type - type naming_Id; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From synthetic:ATestObj - // Type is an MO-Defined-Type leaf descr { - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr; - } - leaf objDn { - type string; + type naming_Descr1024; + description "Description"; } - leaf priKey { - type string; + + // Interface ID of this endpoint + leaf id { + + type nw_IfId; + description "Interface Identifier of this endpoint"; } - container secc-items { - list SwCTestObj-list { - key "name"; - // Added containment: Prefix=secc - // Acquired From Package synthetic - uses synthetic_SwCTestObj-group; - } + // Administrative state + leaf adminSt { + + type nw_IfAdminSt; + description "Admin State"; } - // Polymorphic containment of derivative object synthetic:IfcCTestObj (from synthetic:CTestObj) - container iecc-items { + // SRTE Affinity color for interface + container metric-items { - // Abstract containment of synthetic:IfcCTestObj derived from synthetic:CTestObj - list IfcCTestObj-list { - key "name"; + uses srte_IntfMetric-group; + description "Segment-Routing Protocols advertise Metricval and the te metric over this interace's adjacency"; + } - // Added containment: Prefix=iecc - // Acquired From Package synthetic - uses synthetic_IfcCTestObj-group; - } + // SRTE Interface Affinity + container intfaff-items { + + uses srte_IntfAff-group; + description "Lists the affinity color names for this interfaces"; } - // Rel-def target from toObj - // Inherited From synthetic:IfcTLTestObj - // Inherited From synthetic:SwTLTestObj - container rttoObj-items { + container rtvrfMbr-items { - // Added containment as a singleton: Prefix=rttoObj - // Acquired From Package synthetic - uses synthetic_RtToObj_target-group; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } } - grouping cnw_AggrIf-group { + grouping srte_IntfMetric-group { + description "Segment-Routing Protocols advertise Metricval and the te metric over this interace's adjacency"; - // Operational port state - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Operational Status"; + leaf val { - // Type is an MO-Defined-Type - type l1_OperSt; + type srte_MetricVal; + description "Traffic Engineering Metric value"; } + } + + grouping srte_IntfAff-group { + description "Lists the affinity color names for this interfaces"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - config "false"; - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "descr"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - // Property has READ-CREATE access - leaf id { - description "Interface ID Property has READ-Create access."; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf adminSt { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative Port State"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - config "false"; - description "Administrative Port Speed"; + // SRTE Affinity color for interface + container intfaffcol-items { + list IntfAffColor-list { + key "name"; - // Type is an MO-Defined-Type - type l1_Speed; + uses srte_IntfAffColor-group; + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map list"; + } + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map "; } + } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - config "false"; - description "Duplex"; + grouping srte_IntfAffColor-group { + description "Affinity Color for this interface. Sets the bit that corresponds to this name, see affinity-map "; - // Type is an MO-Defined-Type - type l1_Duplex; - } + leaf name { - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - config "false"; - description "Administrative Port Auto-Negotiation"; + type srte_Name; + description "Name of the Affinity Color. Sets the bit that corresponds to this name in the affinity-map"; + } + } - // Type is an MO-Defined-Type - type l1_AutoNeg; + grouping srte_Pcc-group { + description "SRTE PCC (Path Computation Client) Class"; + leaf srcAddress { + type address_Ip; + description "Local IP address to use as the source address for PCEP connections"; } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - config "false"; - description "Administrative port MTU"; + leaf name { - // Type is an MO-Defined-Type - type l1_Mtu; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - config "false"; - description "Administrative Port Snmp Trap State"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type nw_AdminSt; + description "Admin State"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { + // Operational state + leaf operSt { config "false"; - description "Administrative port mode"; - // Type is an MO-Defined-Type - type l1_Mode; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative port layer"; - // Type is an MO-Defined-Type - type l1_Layer; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - config "false"; - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // SRTE Pce definition + container pce-items { + list Pce-list { + key "pceAddress"; - // Type is an MO-Defined-Type - type l1_Mdix; + uses srte_Pce-group; + description "Defines a PCE to which a PCEP connection may be created list"; + } + description "Defines a PCE to which a PCEP connection may be created"; } + } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - config "false"; - description "Administrative port delay time"; + grouping srte_Pce-group { + description "Defines a PCE to which a PCEP connection may be created"; - // Type is an MO-Defined-Type - type l1_Delay; + leaf precedence { + + type srte_PcePrecedence; + description "SRTE PCE Precedence Value (0 is most preferred, 255 is least)"; + } + leaf pceAddress { + type address_Ip; + description "SRTE PCE IP Address Value"; } + } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - config "false"; - description "Administrative port link debounce interval"; + grouping srte_Policy-group { + description "Segment Routing TE Policy Class"; - // Type is an MO-Defined-Type - type l1_LinkDebounce; + leaf name { + + type srte_Name; + description "Segment Routing TE Policy Name"; + } + leaf endpoint { + type address_Ip; + description "Segment Routing TE Endpoint IP address"; } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - config "false"; - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; + leaf color { - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; + type srte_ColorVal; + description "Segment Routing TE Policy Color"; } - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - config "false"; - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + // SRTE Candidate Path definition + container expcndpaths-items { - // Type is an MO-Defined-Type - type l1_Bw; + uses srte_ExpCndPaths-group; + description "Segment Routing TE Exp Candidate path"; } + } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - config "false"; - description "Administrative port medium type"; + grouping srte_ExpCndPaths-group { + description "Segment Routing TE Exp Candidate path"; - // Type is an MO-Defined-Type - type l1_Medium; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - config "false"; - description "Administrative port inherit bandwidth"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_InheritBw; + type nw_AdminSt; + description "Admin State"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { + // Operational state + leaf operSt { config "false"; - description "Administrative port span mode"; - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_EntOperSt; + description "Operational State"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { + // Operational errors qualifier + leaf operErr { config "false"; - description "Administrative link logging enable"; - // Type is an MO-Defined-Type - type l1_LinkLog; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - config "false"; - description "Administrative trunk logging enable"; + // SRTE Policy Preference definition + container pref-items { + list PolPref-list { + key "pref"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + uses srte_PolPref-group; + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group. list"; + } + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group."; } - leaf routerMac { - config "false"; - type address_Mac; - default "0"; + } + + grouping srte_PolPref-group { + description "Each preference acts as a grouping of explicit paths on a policy. The preference having the lowest value and each of who's members is up is chosen as the active group."; + + leaf pref { + + type srte_OptNum; + description "The preference value for the group of explicit paths"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - config "false"; - description "Type of the port: Fabric vs Leaf"; + // SRTE Policy Explicit-path holder definition + container exp-items { + list PolExp-list { + key "name"; - // Type is an MO-Defined-Type - type eqpt_PortT; + uses srte_PolExp-group; + description "Represents an explicit path assigned to a preference under a policy. list"; + } + description "Represents an explicit path assigned to a preference under a policy."; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - config "false"; - description "Port Usage Type"; + // SRTE Candidate Path Dynamic definition + container dyn-items { - // Type is an MO-Defined-Type - type l1_PortUsage; + uses srte_PolDynamic-group; + description "Enables the dynamic path configuration sub-section for this candidate path"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // SRTE Candidate Path Constraint definition + container constraints-items { - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + uses srte_PolConstraint-group; + description "Specifies the required constraints for this Candidate Paths"; } + } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + grouping srte_PolExp-group { + description "Represents an explicit path assigned to a preference under a policy."; - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + leaf name { + + type srte_Name; + description "Explicit path name. Must be the name of an existing ExpPath MO"; } + leaf weight { + type uint32; + description "SRTE Policy Explicit-Path Segment List Weight"; + } + } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - config "false"; - description "Controller ID"; + grouping srte_PolDynamic-group { + description "Enables the dynamic path configuration sub-section for this candidate path"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + type nw_AdminSt; + description "Admin State"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { + // Operational state + leaf operSt { config "false"; - description "Port User Config Flags"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_EntOperSt; + description "Operational State"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtextConf-items { + // SRTE Candidate Path Dynamic PCEP definition + container pce-items { - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses srte_PolDynPce-group; + description "Defines the candidate paths need to be computed by Path Computation engine"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtbrConf-items { + // SRTE Candidate Path Metric definition + container metric-items { - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses srte_PolMetric-group; + description "Specifies the type of metric that the computation will optimize"; } + } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtfvNodePortAtt-items { + grouping srte_PolDynPce-group { + description "Defines the candidate paths need to be computed by Path Computation engine"; - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtvrfMbr-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtphysRtdConf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; - } - } + grouping srte_PolMetric-group { + description "Specifies the type of metric that the computation will optimize"; - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - container rtLsNodeToIf-items { + leaf metricType { - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; + type srte_Metric; + description "SRTE Candidate Path Metric Type"; } - // Rel-def from mbrIfs - container rsmbrIfs-items { - - // Abstract containment of rsmbrIfs derived from cnw:AggrIf - list RsMbrIfs-list { - config "false"; - key "tDn"; + leaf name { - // Added containment: Prefix=rsmbrIfs - // Acquired From Package cnw - uses cnw_RsMbrIfs_source-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def from activeIf - container rsactiveIf-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rsactiveIf - // Acquired From Package cnw - uses cnw_RsActiveIf_source-group; + type nw_AdminSt; + description "Admin State"; } - } - - grouping cnw_PhysIf-group { - // Operational port state - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Operational Status"; - // Type is an MO-Defined-Type - type l1_OperSt; + type nw_EntOperSt; + description "Operational State"; + } + + // Operational errors qualifier + leaf operErr { + config "false"; + + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } + + grouping srte_PolConstraint-group { + description "Specifies the required constraints for this Candidate Paths"; - // Inherited From nw:Conn - // Modified by Override: nw:Ep->name - // Type is an MO-Defined-Type leaf name { - description "Name"; - // Type is an MO-Defined-Type type naming_Name256 { length "1..64"; } + description "Name"; } - // Inherited From nw:If - // Modified by Override: l1:If->descr - // Type is an MO-Defined-Type - leaf descr { - description "descr"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type naming_Descr1024 { - length "0..254"; - } + type nw_AdminSt; + description "Admin State"; } - // Interface ID of this endpoint - // Inherited From nw:If - // Type is an MO-Defined-Type - leaf id { - description "Interface ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port state @@@ Comes from port out-of-service policy - // Inherited From l1:If - // Modified by Override: cnw:PhysIf->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Administrative Port State"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_AdminSt; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative port speed @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf speed { - description "Administrative Port Speed"; + // SRTE Candidate Path Segment definition + container segment-items { - // Type is an MO-Defined-Type - type l1_Speed; + uses srte_PolSegments-group; + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; } - // Administrative port duplex @@@ This comes from the host interface - // @@@ configuration policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf duplex { - description "Duplex"; + // SRTE Candidate Path Association definition + container assoc-items { - // Type is an MO-Defined-Type - type l1_Duplex; + uses srte_PolAssoc-group; + description "Specifies the association types this candidate path belongs to"; } - // Administrative port auto-negotiation @@@ It comes from the host interface configuration - // @@@ policy. It is used for automatically negotiating - // @@@ the speed - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf autoNeg { - description "Administrative Port Auto-Negotiation"; + // SRTE Candidate Path Affinity definition + container affinity-items { - // Type is an MO-Defined-Type - type l1_AutoNeg; + uses srte_PolAffinity-group; + description "Specifies the affinity constraints for the path"; } + } - // Administrative port mtu @@@ This comes from QOS Policy - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf mtu { - description "Administrative port MTU"; - - // Type is an MO-Defined-Type - type l1_Mtu; - } + grouping srte_PolSegments-group { + description "Specifies Segments constraints for this Candidate Path. ProtectionType, Dataplane"; - // Administrative port snmp trap state @@@ This is a port level config. but it could go in - // @@@ SNMP policy in IFC - // Inherited From l1:If - // Type is an MO-Defined-Type - leaf snmpTrapSt { - description "Administrative Port Snmp Trap State"; + leaf protType { - // Type is an MO-Defined-Type - type l1_SnmpTrapSt; + type srte_ProtectionType; + description "Specifies if the candidate path must use protected or unprotected SIDs"; } - // Administrative port mode @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mode { - description "Administrative port mode"; + leaf datapln { - // Type is an MO-Defined-Type - type l1_Mode; + type srte_DataPlane; + description "Specifies if this candidate paths is encoded with MPLS SIDs or SRv6 SIDs"; } - // Administrative port layer @@@ Internally set by PE - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf layer { - description "Administrative port layer"; + leaf name { - // Type is an MO-Defined-Type - type l1_Layer; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative mdix mode @@@ Theres no benefit in exposing this property - // @@@ in IFC. Ask Marketing. - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf mdix { - description "Administrative Medium-dependant interface crossover(Mdix) mode"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_Mdix; + type nw_AdminSt; + description "Admin State"; } - // Administrative port delay @@@ is this exposed in IFC? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf delay { - description "Administrative port delay time"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_Delay; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port link debounce interval @@@ This comes from the interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkDebounce { - description "Administrative port link debounce interval"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_LinkDebounce; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf dot1qEtherType { - description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; - - // Type is an MO-Defined-Type - type l1_Dot1qEtherType; - } + grouping srte_PolAssoc-group { + description "Specifies the association types this candidate path belongs to"; - // Administrative port bandwidth @@@ Comes from QOS Policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf bw { - description "Bandwidth parameter for a routed interface, port channel or subinterface"; + leaf name { - // Type is an MO-Defined-Type - type l1_Bw; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf medium { - description "Administrative port medium type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_Medium; + type nw_AdminSt; + description "Admin State"; } - // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited - // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces - // @@@ inherit full parent interface's bandwidth - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf inhBw { - description "Administrative port inherit bandwidth"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_InheritBw; + type nw_EntOperSt; + description "Operational State"; } - // Administrative port span mode @@@ This comes from the span policy in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf spanMode { - description "Administrative port span mode"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_SpanMode; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Administrative link logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf linkLog { - description "Administrative link logging enable"; + // SRTE Candidate Path Disjointness + container disj-items { - // Type is an MO-Defined-Type - type l1_LinkLog; + uses srte_PolDisjointness-group; + description "Specifies that the path belongs to the disjointness association group"; } + } - // Administrative trunk logging enable @@@ This come from interface configuration policy - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkLog { - description "Administrative trunk logging enable"; + grouping srte_PolDisjointness-group { + description "Specifies that the path belongs to the disjointness association group"; - // Type is an MO-Defined-Type - type l1_TrunkLog; + leaf disjType { + + type srte_DisjointType; + description "Specifies the type of disjointness this path needs to be."; } - leaf routerMac { - type address_Mac; - default "0"; + leaf id { + type uint32; + description "Association group Identifier"; } - // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf portT { - description "Type of the port: Fabric vs Leaf"; + leaf name { - // Type is an MO-Defined-Type - type eqpt_PortT; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf usage { - description "Port Usage Type"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_PortUsage; + type nw_AdminSt; + description "Admin State"; } - // config trunk vlans - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf trunkVlans { - description "Configed Trunk Vlans"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfTrunkVlans; + type nw_EntOperSt; + description "Operational State"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf accessVlan { - description "Configured Access Vlan"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Type is an MO-Defined-Type - type l1_l1IfAccessVlan; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } + } - // Controller Id - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf controllerId { - description "Controller ID"; + grouping srte_PolAffinity-group { + description "Specifies the affinity constraints for the path"; - // Type is an MO-Defined-Type - type aggregate_ControllerIdBitmap; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // config access vlan - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf nativeVlan { - description "Configured Native Vlan"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type l1_l1IfNativeVlan; + type nw_AdminSt; + description "Admin State"; } - // port user config flags - // Inherited From l1:EthIf - // Type is an MO-Defined-Type - leaf userCfgdFlags { - description "Port User Config Flags"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type l1_userCfgdFlags; + type nw_EntOperSt; + description "Operational State"; } - // Dom info - container dom-items { - list DomDef-list { - config "false"; - key "domPKey"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=dom - // Acquired From Package fv - uses fv_DomDef-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from extConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtextConf-items { + // SRTE Candidate Path Affinity exclude-any definition + container exclany-items { - // Added containment as a singleton: Prefix=rtextConf - // Acquired From Package l2 - uses l2_RtExtConf_target-group; + uses srte_PolExcludeany-group; + description "Specifies that links that have any of the specified affinity colors must be traversed by the path"; } - // Rel-def target from brConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtbrConf-items { + // SRTE Candidate Path Affinity include-all definition + container inclall-items { - // Added containment as a singleton: Prefix=rtbrConf - // Acquired From Package l2 - uses l2_RtBrConf_target-group; + uses srte_PolIncludeall-group; + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; } - // Rel-def target from NodePortAtt - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtfvNodePortAtt-items { + // SRTE Candidate Path Affinity include-any definition + container inclany-items { - // Abstract containment of rtfvNodePortAtt derived from l1:EthIf - list RtFvNodePortAtt-list { - config "false"; - key "tDn"; + uses srte_PolIncludeany-group; + description "Specifies that only links that have any of the specified affinity colors must not be used"; + } + } - // Added containment: Prefix=rtfvNodePortAtt - // Acquired From Package fv - uses fv_RtFvNodePortAtt_target-group; + grouping srte_PolExcludeany-group { + description "Specifies that links that have any of the specified affinity colors must be traversed by the path"; + + leaf name { + + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Rel-def target from vrfMbr - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtvrfMbr-items { + // - Admin state + leaf adminSt { - // Added containment as a singleton: Prefix=rtvrfMbr - // Acquired From Package l3 - uses l3_RtVrfMbr_target-group; + type nw_AdminSt; + description "Admin State"; } - // Rel-def target from physRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtphysRtdConf-items { + // Operational state + leaf operSt { + config "false"; - // Added containment as a singleton: Prefix=rtphysRtdConf - // Acquired From Package l3 - uses l3_RtPhysRtdConf_target-group; + type nw_EntOperSt; + description "Operational State"; } - // Rel-def target from encPhysRtdConf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtl3EncPhysRtdConf-items { - - // Abstract containment of rtl3EncPhysRtdConf derived from l1:EthIf - list RtL3EncPhysRtdConf-list { - config "false"; - key "tDn"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=rtl3EncPhysRtdConf - // Acquired From Package l3 - uses l3_RtL3EncPhysRtdConf_target-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Rel-def target from pathToIf - // Inherited From dhcp:DAIIf - // Inherited From dhcp:ClientIf - // Inherited From dhcp:RelayIf - // Inherited From dhcp:PseudoIf - // Inherited From dhcp:ServerIf - // Inherited From dhcp:IpsgIf - // Inherited From dhcp:SnoopIf - // Inherited From igmp:ExtIf - // Inherited From igmp:If - // Inherited From ipv4:If - // Inherited From ipv6:If - // Inherited From isis:If - // Inherited From isis:InternalIf - // Inherited From ospf:If - // Inherited From ospf:InternalIf - // Inherited From ospfv3:InternalIf - // Inherited From ospfv3:If - // Inherited From hmm:FwdIf - // Inherited From arp:If - // Inherited From bfd:If - // Inherited From eigrp:If - // Inherited From hsrp:If - // Inherited From icmpv4:If - // Inherited From icmpv6:If - // Inherited From mpls:If - // Inherited From nd:If - // Inherited From pim:If - // Inherited From pim6:If - // Inherited From vrrp:Interface - // Inherited From vrrpv3:Interface - // Inherited From cdp:If - // Inherited From lldp:If - // Inherited From mcp:If - // Inherited From vpc:OrphanPort - // Inherited From vpc:PeerLink - // Inherited From lacp:If - // Inherited From stp:If - // Inherited From sisf:FhsIf - // Inherited From igmpsnoop:StRtrIf - // Inherited From mldsnoop:StRtrIf - // Inherited From l2:VfcIf - // Inherited From l2:InbandIf - // Inherited From l2:ExtIf - // Inherited From l2:BrIf - // Inherited From mgmt:RtdMgmtIf - // Inherited From l3:RtdIf - // Inherited From l3:LbRtdIf - // Inherited From l3:EncRtdIf - // Inherited From svi:If - // Inherited From tunnelif:If - // Inherited From regress:If - // Inherited From tunnel:If - // Inherited From mgmt:MgmtIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtnwPathToIf-items { - - // Abstract containment of rtnwPathToIf derived from nw:If - list RtNwPathToIf-list { - config "false"; - key "tDn"; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; - // Added containment: Prefix=rtnwPathToIf - // Acquired From Package nw - uses nw_RtNwPathToIf_target-group; + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Rel-def target from LsNodeToIf - // Inherited From l1:PhysIf - // Inherited From pc:AggrIf - // Inherited From pc:ShadowAggrIf - // Inherited From cnw:AggrIf - // Inherited From cnw:PhysIf - container rtLsNodeToIf-items { - - // Added containment as a singleton: Prefix=rtLsNodeToIf - // Acquired From Package leqpt - uses leqpt_RtLsNodeToIf_target-group; - } + grouping srte_PolConstAffColor-group { + description "Specify the affinity color for the Affinity constraint type"; - // Rel-def target from mbrIfs - // Inherited From cnw:PhysIf - container rtmbrIfs-items { + leaf name { - // Added containment as a singleton: Prefix=rtmbrIfs - // Acquired From Package cnw - uses cnw_RtMbrIfs_target-group; + type srte_Name; + description "Name of the affinity Color definition"; } + } - // Rel-def target from activeIf - // Inherited From cnw:PhysIf - container rtactiveIf-items { + grouping srte_PolIncludeall-group { + description "Specifies that only links that have all of the specified affinity colors must be traversed by the path"; - // Added containment as a singleton: Prefix=rtactiveIf - // Acquired From Package cnw - uses cnw_RtActiveIf_target-group; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - } - grouping action_LCont-group { - container tracertnve-items { - list TraceRtNve-list { - key "session"; + // - Admin state + leaf adminSt { - // Added containment: Prefix=tracertnve - // Acquired From Package ngoam - uses ngoam_TraceRtNve-group; - } + type nw_AdminSt; + description "Admin State"; } - container pathtracenve-items { - list PathTraceNve-list { - key "session"; - // Added containment: Prefix=pathtracenve - // Acquired From Package ngoam - uses ngoam_PathTraceNve-group; - } + // Operational state + leaf operSt { + config "false"; + + type nw_EntOperSt; + description "Operational State"; } - // Diag rule for on demand tests - container eqptdiagrule-items { - list OnDRule-list { - config "false"; - key "type"; + // Operational errors qualifier + leaf operErr { + config "false"; - // Added containment: Prefix=eqptdiagrule - // Acquired From Package eqptdiag - uses eqptdiag_OnDRule-group; - } + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - container lsubj-items { - list LSubj-list { - key "oDn"; - // Added containment: Prefix=lsubj - // Acquired From Package action - uses action_LSubj-group; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; + + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; } + description "Specify the affinity color for the Affinity constraint type"; } } - grouping ngoam_TraceRtNve-group { + grouping srte_PolIncludeany-group { + description "Specifies that only links that have any of the specified affinity colors must not be used"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type action_Descr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Type; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // Operational errors qualifier + leaf operErr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionSize; + type nw_OperErrQual; + description "Operational Errors Qualifier"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // SRTE Affinity color for constraints + container affcol-items { + list PolConstAffColor-list { + key "name"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + uses srte_PolConstAffColor-group; + description "Specify the affinity color for the Affinity constraint type list"; + } + description "Specify the affinity color for the Affinity constraint type"; } + } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:ATraceRtNve->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + grouping vrrp_Entity-group { + description "VRRP Entity"; - // Type is an MO-Defined-Type - type action_AdminSt; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type action_Freq; - } - leaf session { - type string; + type nw_AdminSt; + description "Admin State"; } - // Prof. id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; - } - leaf srcIp { - type address_Ipv4; - } - leaf srcIpv6 { - type address_Ipv6; + type nw_EntOperSt; + description "Operational State"; } - // dot1q - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // This object holds per vrrp instance information. There is only + // one instance supported in vrrp currently + container inst-items { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + uses vrrp_Inst-group; + description "VRRP Instance"; } + } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + grouping vrrp_Inst-group { + description "VRRP Instance"; - // Type is an MO-Defined-Type - type ngoam_SrcPort; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dstPort { - description "Destination Port"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ngoam_DestPort; + type nw_AdminSt; + description "Admin State"; } - // Hop Count or TTL - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf maxTtl { - description "Time to live value"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type ngoam_TTL; + type nw_InstCtrl; + description "Controls"; } - // The vrf in which it is running - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // This object holds the interfaces that will have VRRP interface. + // Interface must already be created and should have an IP address + container if-items { + list Interface-list { + key "id"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + uses vrrp_Interface-group; + description "VRRP Interface list"; + } + description "VRRP Interface"; } + } - // The VxLAN vni - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + grouping vrrp_Interface-group { + description "VRRP Interface"; + + leaf name { - // Type is an MO-Defined-Type - type ngoam_Vnid; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // timeout - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_Timeout; + type naming_Descr1024; + description "Description"; } - // Egress Interface id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type type nw_IfId; + description "Interface Identifier of this endpoint"; } - // MAC Interface - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; - } - leaf sessionId { - type uint32; + type nw_IfAdminSt; + description "Admin State"; } - // Runtime status of the task - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // This object holds vrrp id information + container id-items { + list Id-list { + key "id"; - // Type is an MO-Defined-Type - type action_OperSt; + uses vrrp_Id-group; + description "VRRPv2 Router Id list"; + } + description "VRRPv2 Router Id"; } - // dot1q - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; - } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; - } - leaf payload_srcport { - type uint16; - } - leaf payload_dstport { - type uint16; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // protocol - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + grouping vrrp_Id-group { + description "VRRPv2 Router Id"; - // Type is an MO-Defined-Type - type ngoam_Protocol; + // vrrp id + leaf id { + + type vrrp_Id; + description "VRRP Id"; + } + leaf primary { + type address_Ip; + description "primary IP address"; } - // Source Interface - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // advertise interval + leaf advIntvl { - // Type is an MO-Defined-Type - type nw_IfId; + type vrrp_AdvIntvl; + description "Advertisement Interval"; } - // Result for fabric traceroute - container trnverslt-items { - list TraceRtNveRslt-list { - config "false"; - key "sessionId"; + // authentication text + leaf authText { - // Added containment: Prefix=trnverslt - // Acquired From Package ngoam - uses ngoam_TraceRtNveRslt-group; - } + type vrrp_AuthTextType; + description "Authentication Text"; } - } - grouping ngoam_TraceRtNveRslt-group { - leaf dstIp { - config "false"; - type address_Ipv4; + // authentication type + leaf authType { + + type vrrp_AuthType; + description "Authentication Type"; } - // Maximum number of hops that the traceroute took to - // reach the destination - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; + // Preempt + leaf preempt { - // Type is an MO-Defined-Type - type ngoam_Hops; + type vrrp_Preempt; + description "Preempt"; } - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + // priority configuration + leaf priCfg { - // Type is an MO-Defined-Type - type ngoam_SessionId; + type vrrp_PriVal; + description "Configured Priority"; } - leaf errorCode { - config "false"; - type string; + leaf bfdPeerAddr { + type address_Ip; + description "BFD Peer address"; } - leaf failReason { - config "false"; - type string; + + // forwarding lower threshold + leaf fwdLwrThrld { + + type vrrp_PriVal; + description "Fowarding Lower Threshold"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + // forwarding upper threshold + leaf fwdUprThrld { - // Type is an MO-Defined-Type - type action_Descr; + type vrrp_UprThrshld; + description "Forwarding Upper Threshold"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type vrrp_AdminSt; + description "Admin state"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { + // group state + leaf groupSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_Type; + type vrrp_GroupSt; + description "vrrp group state"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // group state qualifier + leaf groupStQual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionSize; + type vrrp_GroupStQual; + description "vrrp group state qualifier"; + } + leaf mac { + config "false"; + type address_Mac; + description "vrrp vmac"; + } + leaf masterAddr { + config "false"; + type address_Ip; + description "vrrp master address"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { + // bfd session status + leaf bfdSessionSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type action_RetentionTime; + type vrrp_bfdSessionSt; + description "vrrp bfd session status"; } - leaf peerClassId { - config "false"; - type string; + container secondary-items { + list Secondary-list { + key "secondary"; + + uses vrrp_Secondary-group; + description "Secondary address for the VRRP Router list"; + } + description "Secondary address for the VRRP Router"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Object to hold vrrp tarck information + container track-items { - // Type is an MO-Defined-Type - type action_Qual; - } - leaf ack { - config "false"; - type boolean; + uses vrrp_Track-group; + description "VRRP Track objects"; } + } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; + grouping vrrp_Secondary-group { + description "Secondary address for the VRRP Router"; + leaf secondary { + type address_Ip; + description "Secondary IP address for the VRRP Router"; } + } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + grouping vrrp_Track-group { + description "VRRP Track objects"; - // Type is an MO-Defined-Type - type action_OperSt; + // Object to hold native track information + container nativeTrack-items { + + uses vrrp_NativeTrack-group; + description "VRRPv2 native tracking object"; } - // Each path represents a sequence of nodes towards the - // destination - container pathtr-items { - list PathTr-list { - config "false"; + // Contains track information of otm track object + container track-items { + list ObjectTrack-list { key "id"; - // Added containment: Prefix=pathtr - // Acquired From Package ngoam - uses ngoam_PathTr-group; + uses vrrp_ObjectTrack-group; + description "VRRPV2 object tracking list"; } + description "VRRPV2 object tracking"; } } - grouping ngoam_PathTr-group { + grouping vrrp_NativeTrack-group { + description "VRRPv2 native tracking object"; - // Identifier of the path - // Type is an MO-Defined-Type + // Interface name to be tracked, format to be specified + // eth1/1, eth1/1.1, po1 leaf id { - config "false"; - description "ID"; - // Type is an MO-Defined-Type - type ngoam_PathId; + type nw_IfId; + description "Interface to be tracked by this VRRP instance"; } - - // Node represents a given node in the traceroute path. Each - // node is identified by the ip address and the order represents - // its placement in the path - container nodetr-items { - list NodeTr-list { - config "false"; - key "order"; - - // Added containment: Prefix=nodetr - // Acquired From Package ngoam - uses ngoam_NodeTr-group; + leaf priority { + type uint16 { + range "1..254"; } + description "VRRP Priority when track is down"; } } - grouping ngoam_NodeTr-group { + grouping vrrp_ObjectTrack-group { + description "VRRPV2 object tracking"; - // Node id - // Type is an MO-Defined-Type - leaf order { - config "false"; - description "Order"; + // Track id to be tracked + leaf id { - // Type is an MO-Defined-Type - type ngoam_Order; - } - leaf addr { - config "false"; - type address_Ipv4; - } - leaf v6addr { - config "false"; - type address_Ipv6; + type track_TrackId; + description "Track Id to be tracked"; } - leaf elapsedTime { - config "false"; - type string; + leaf decrementPriority { + type uint16 { + range "1..254"; + } + default "10"; + description "Value to be decremented from priority when tracked object is down"; } } - grouping ngoam_PathTraceNve-group { - leaf reqStats { - type boolean; - } + grouping vrrpv3_Entity-group { + description "VRRPv3 Entity"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + leaf name { - // Type is an MO-Defined-Type - type action_Descr; + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // - Admin state + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Operational state + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Type; + type nw_EntOperSt; + description "Operational State"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + // This object holds per vrrpv3 instance information. There is only + // one instance supported in vrrpv3 currently + container inst-items { - // Type is an MO-Defined-Type - type action_RetentionSize; + uses vrrpv3_Inst-group; + description "VRRPv3 Instance"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping vrrpv3_Inst-group { + description "VRRPv3 Instance"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + leaf name { + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:ATraceRtNve->adminSt - // Type is an MO-Defined-Type + // Administrative state leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type nw_AdminSt; + description "Admin State"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Instance controls + leaf ctrl { - // Type is an MO-Defined-Type - type action_Freq; - } - leaf session { - type string; + type nw_InstCtrl; + description "Controls"; } - // Prof. id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // This object holds the interfaces that will have VRRPv3 interface. + container if-items { + list Interface-list { + key "id"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; + uses vrrpv3_Interface-group; + description "VRRPv3 Interface list"; + } + description "VRRPv3 Interface"; } - leaf srcIp { - type address_Ipv4; + } + + grouping vrrpv3_Interface-group { + description "VRRPv3 Interface"; + leaf delayIntfMin { + type uint16 { + range "0..3600"; + } + default "0"; + description "Delay in seconds, to start VRRPv3 state machine after receiving interface moving to Up state"; } - leaf srcIpv6 { - type address_Ipv6; + leaf delayReload { + type uint16 { + range "0..3600"; + } + default "0"; + description "Delay in seconds, to start VRRPv3 state machine after the system-reload"; } - // dot1q - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + leaf name { - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + leaf descr { - // Type is an MO-Defined-Type - type ngoam_SrcPort; + type naming_Descr1024; + description "Description"; } - // source port - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf dstPort { - description "Destination Port"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type ngoam_DestPort; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Hop Count or TTL - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf maxTtl { - description "Time to live value"; + // Administrative state + leaf adminSt { - // Type is an MO-Defined-Type - type ngoam_TTL; + type nw_IfAdminSt; + description "Admin State"; } - // The vrf in which it is running - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // This object holds Virtual Router ID information + container id-items { + list Vr-list { + key "id af"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + uses vrrpv3_Vr-group; + description "VRRPv3 Object holds Virtual Router ID information list"; + } + description "VRRPv3 Object holds Virtual Router ID information"; } - // The VxLAN vni - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + // Object to hold vrrpv3 VRRS information + container vrrs-items { + list VrrsPathway-list { + key "tag"; - // Type is an MO-Defined-Type - type ngoam_Vnid; + uses vrrpv3_VrrsPathway-group; + description "Object holds VRRS Pathway information list"; + } + description "Object holds VRRS Pathway information"; } - // timeout - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type ngoam_Timeout; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } + } - // Egress Interface id - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; - - // Type is an MO-Defined-Type - type nw_IfId; - } + grouping vrrpv3_Vr-group { + description "VRRPv3 Object holds Virtual Router ID information"; - // MAC Interface - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Virtual Router ID + leaf id { - // Type is an MO-Defined-Type - type nw_IfId; - } - leaf verifyHost { - type boolean; + type vrrpv3_Id; + description "VRRPv3 Virtual Router Id"; } - leaf sessionId { - type uint32; + leaf ip { + type address_Ip; + description "primary IP address"; } - // Runtime status of the task - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Advertisement Interval + leaf advIntvl { - // Type is an MO-Defined-Type - type action_OperSt; + type vrrpv3_AdvIntvl; + description "Advertisement Interval"; } - // dot1q - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + // Priority Configuration + leaf priCfg { - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; - } - leaf payload_srcmac { - type address_Mac; + type vrrpv3_PriVal; + description "Configured Priority"; } - leaf payload_dstip { - type address_Ipv4; + + // Preempt + leaf preempt { + + type vrrpv3_Preempt; + description "Preempt"; } - leaf payload_dstipv6 { - type address_Ipv6; + + // Virtual Router Description string + leaf name { + + type vrrpv3_Desc; + description "Virtual Router Description"; } - leaf payload_dstmac { - type address_Mac; + + // Minimum Preemption delay before this group can preempt a high priority Masster + leaf preemptDelayMin { + + type vrrpv3_PreemptDelay; + description "Miminum delay before preempt"; } - leaf payload_srcport { - type uint16; + + // Admin State + leaf adminSt { + + type vrrpv3_AdminSt; + description "Admin state"; } - leaf payload_dstport { - type uint16; + + // Virtual Router Address family + leaf af { + + type vrrpv3_VrAf; + description "Virtual Router Address Family"; } - // protocol - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + // match-address + leaf matchAddr { - // Type is an MO-Defined-Type - type ngoam_Protocol; + type vrrpv3_State; + default "enabled"; + description "Enables matching of secondary addresses in the vrrpv3 advertisement packet against the configured vrrpv3 secondary addresses"; } - // Source Interface - // From Interface ngoam:Payload - // Inherited From ngoam:ATraceRtNve - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // vrrpv2 compatibility mode + leaf vrrpv2CompatMode { - // Type is an MO-Defined-Type - type nw_IfId; + type vrrpv3_State; + default "disabled"; + description "vrrpv2 compatibility mode"; } - // Result for Pathtrace - container ptrnverslt-items { - list PathTraceNveRslt-list { - config "false"; - key "sessionId"; + // Object to hold vrrpv3 object track information + container track-items { + list ObjectTrack-list { + key "id"; - // Added containment: Prefix=ptrnverslt - // Acquired From Package ngoam - uses ngoam_PathTraceNveRslt-group; + uses vrrpv3_ObjectTrack-group; + description "Holds information of objects tracked by VRRPv3 list"; } + description "Holds information of objects tracked by VRRPv3"; } - } + container addr-items { + list Addr-list { + key "addr"; - grouping ngoam_PathTraceNveRslt-group { - leaf dstIp { - config "false"; - type address_Ipv4; + uses vrrpv3_Addr-group; + description "IP address list"; + } + description "IP address"; } + container leader-items { + list VrrsLeader-list { + key "tag"; - // Maximum number of hops that the traceroute took to - // reach the destination - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; - - // Type is an MO-Defined-Type - type ngoam_Hops; + uses vrrpv3_VrrsLeader-group; + description "VRRS Tag list"; + } + description "VRRS Tag"; } + } - // Prof. Name - // Type is an MO-Defined-Type - leaf sessionId { - config "false"; - description "Name"; + grouping vrrpv3_ObjectTrack-group { + description "Holds information of objects tracked by VRRPv3"; - // Type is an MO-Defined-Type - type ngoam_SessionId; + // Object id to be tracked + leaf id { + + type track_TrackId; + description "Object Id to be tracked"; } - leaf errorCode { - config "false"; - type string; + leaf decrPrio { + type uint16 { + range "1..254"; + } + default "10"; + description "Priority to be decremented when tracked object is down. Default value is 10"; } - leaf failReason { - config "false"; - type string; + } + + grouping vrrpv3_Addr-group { + description "IP address"; + leaf addr { + type address_Ip; + description "IP address"; } + } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + grouping vrrpv3_VrrsLeader-group { + description "VRRS Tag"; + leaf tag { + type string { + length "0..48"; + } + description "VRRS tag for which group is leader"; + } + } - // Type is an MO-Defined-Type - type action_Descr; + grouping vrrpv3_VrrsPathway-group { + description "Object holds VRRS Pathway information"; + leaf tag { + type string { + length "0..48"; + } + description "Name of vrrs tag which pathway will follow"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // Admin State + leaf adminSt { - // Type is an MO-Defined-Type - type mo_TStamp; + type vrrpv3_State; + default "enabled"; + description "Administrative state for vrrs pathway"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + // Vrrs Pathway Description string + leaf description { - // Type is an MO-Defined-Type - type action_Type; + type vrrpv3_Desc; + description "Description string for vrrs pathway"; + } + leaf mac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Configured virtual MAC address for the Pathway"; } + leaf macAdvIntvl { + type uint16 { + range "1..300"; + } + default "10"; + description "Interval in seconds, between virtual MAC unsolicited advertisements"; + } + container addr-items { + list PwAddr-list { + key "addr"; - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + uses vrrpv3_PwAddr-group; + description "IP address list"; + } + description "IP address"; + } + } - // Type is an MO-Defined-Type - type action_RetentionSize; + grouping vrrpv3_PwAddr-group { + description "IP address"; + leaf addr { + type address_Ip; + description "IPvX address for vrrs pathway"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping scrtchpd_Root-group { + description "Root"; - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + // Holds rpm control plane entity information + container rpmcli-items { + + uses rpmcli_EntityCli-group; + description "Route Policy Map Entity CLI"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Holds Vlan-mgr control plane entity information + container vlanmgrcli-items { - // Type is an MO-Defined-Type - type action_Qual; + uses vlanmgrcli_EntityCli-group; + description "Vlan Manager Entity CLI"; } - leaf ack { + } + + grouping rpmcli_EntityCli-group { + description "Route Policy Map Entity CLI"; + + leaf name { config "false"; - type boolean; + + type naming_Name256 { + length "1..64"; + } + description "Name"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { + // - Admin state + leaf adminSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type nw_AdminSt; + description "Admin State"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type + // Operational state leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type - type action_OperSt; + type nw_EntOperSt; + description "Operational State"; } - // Each path represents a sequence of nodes towards the - // destination - container pathptr-items { - list PathPtr-list { + // Route control rule for access lists + container accesslistcli-items { + list RuleCli-list { config "false"; - key "id"; + key "name"; - // Added containment: Prefix=pathptr - // Acquired From Package ngoam - uses ngoam_PathPtr-group; + uses rtlistcli_RuleCli-group; + description "Rule CLI list"; } + description "Rule CLI"; } - } - grouping ngoam_PathPtr-group { + // Route control rule for V4 prefix lists + container pfxlistv4cli-items { + list RuleV4Cli-list { + config "false"; + key "name"; - // Identifier of the path - // Type is an MO-Defined-Type - leaf id { - config "false"; - description "ID"; + uses rtpfxcli_RuleV4Cli-group; + description "IPv4 Rule CLI list"; + } + description "IPv4 Rule CLI"; + } - // Type is an MO-Defined-Type - type ngoam_PathId; + // Route control rule for V6 prefix lists + container pfxlistv6cli-items { + list RuleV6Cli-list { + config "false"; + key "name"; + + uses rtpfxcli_RuleV6Cli-group; + description "IPv6 Rule list"; + } + description "IPv6 Rule"; } - // Node represents a given node in the traceroute path. Each - // node is identified by the ip address and the order represents - // its placement in the path - container nodeptr-items { - list NodePtr-list { + // Route control rule for regular community lists + container rtregcomcli-items { + list RuleCli-list { config "false"; - key "order"; + key "name"; - // Added containment: Prefix=nodeptr - // Acquired From Package ngoam - uses ngoam_NodePtr-group; + uses rtregcomcli_RuleCli-group; + description "Rule CLI list"; } + description "Rule CLI"; } } - grouping ngoam_NodePtr-group { + grouping rtlistcli_RuleCli-group { + description "Rule CLI"; - // Node id - // Type is an MO-Defined-Type - leaf order { + leaf name { config "false"; - description "Order"; - // Type is an MO-Defined-Type - type ngoam_Order; - } - leaf addr { - config "false"; - type address_Ipv4; - } - leaf v6addr { - config "false"; - type address_Ipv6; - } - leaf nodeName { - config "false"; - type string; - } - leaf elapsedTime { - config "false"; - type string; - } - leaf ingressIf { - config "false"; - type string; - } - leaf ingressIfState { - config "false"; - type string; - } - leaf rxLen { - config "false"; - type uint64; - } - leaf rxBytes { - config "false"; - type uint64; - } - leaf rxPktRate { - config "false"; - type uint64; - } - leaf rxByteRate { - config "false"; - type uint64; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rxLoad { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rxUcast { - config "false"; - type uint64; + + // Prefix list entry definition + container entcli-items { + + uses rtlistcli_EntryCli-group; + description "Entry CLI"; } - leaf rxMcast { + } + + grouping rtlistcli_EntryCli-group { + description "Entry CLI"; + + // CLI Action + leaf cliAction { config "false"; - type uint64; + + type scrtchpd_Action; + description "Action"; } - leaf rxBcast { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf rxDiscards { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf rxErrors { + + // Order + leaf order { config "false"; - type uint64; + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf rxUnknown { + + // Action + leaf action { config "false"; - type uint64; + + type rtflt_Action; + description "Action"; } - leaf rxBandwidth { + leaf regex { config "false"; - type uint32; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } - leaf egressIf { + } + + grouping rtpfxcli_RuleV4Cli-group { + description "IPv4 Rule CLI"; + + leaf name { config "false"; - type string; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf egressIfState { + + leaf descr { config "false"; - type string; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf txLen { - config "false"; - type uint64; + + // Prefix list entry definition + container entcli-items { + + uses rtpfxcli_EntryCli-group; + description "Entry CLI"; } - leaf txBytes { + } + + grouping rtpfxcli_EntryCli-group { + description "Entry CLI"; + + // CLI Action + leaf cliAction { config "false"; - type uint64; + + type scrtchpd_Action; + description "Action"; } - leaf txPktRate { + leaf pfx { config "false"; - type uint64; + type address_Ip; + description "Prefix"; } - leaf txByteRate { + leaf mask { config "false"; - type uint64; + type address_Ip; + description "mask"; } - leaf txLoad { + + // criteria, exact match or inexact match + leaf criteria { config "false"; - type uint64; + + type rtpfx_Criteria; + description "Criteria"; } - leaf txUcast { + + // If the criteria is not an exact match, use a range to + // describe the prefix list range + leaf fromPfxLen { config "false"; - type uint64; + + type l3_IpPfxLen; + description "Start of Prefix Length"; } - leaf txMcast { + + leaf toPfxLen { config "false"; - type uint64; + + type l3_IpPfxLen; + description "End of Prefix Length"; } - leaf txBcast { + + leaf name { config "false"; - type uint64; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } + description "Name"; } - leaf txDiscards { + + leaf descr { config "false"; - type uint64; + + type naming_Descr; + description "Description of the specified attribute"; } - leaf txErrors { + + // Order + leaf order { config "false"; - type uint64; + + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - leaf txBandwidth { + + // Action + leaf action { config "false"; - type uint32; + + type rtflt_Action; + description "Action"; } } - grouping eqptdiag_OnDRule-group { + grouping rtpfxcli_RuleV6Cli-group { + description "IPv6 Rule"; - // Inherited From pol:Obj - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type - type naming_Name256 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Clients can add their own data for entity correlation - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerKey { + leaf descr { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Clients can add their own data, for example, to indicate who created this object - // Inherited From pol:Def - // Type is an MO-Defined-Type - leaf ownerTag { + // Prefix list entry definition + container entcli-items { + + uses rtpfxcli_EntryCli-group; + description "Entry CLI"; + } + } + + grouping rtregcomcli_RuleCli-group { + description "Rule CLI"; + + leaf name { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type naming_Descr1024 { + type pol_ObjName { length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // From Interface naming:Described - // Inherited From pol:Def - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type naming_Descr; + description "Description of the specified attribute"; } - // Trigger of this test - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf trig { + // Type of the community list [regular | extended] + leaf type { config "false"; - description "Trigger"; - // Type is an MO-Defined-Type - type test_Trig; + type rtcom_ComT; + description "Type"; } - // Test frequency - // Inherited From test:Rule - // Type is an MO-Defined-Type - leaf freq { + // Mode + leaf mode { config "false"; - description "Frequency"; - // Type is an MO-Defined-Type - type test_Freq; + type rtcom_Mode; + description "Mode"; + } + + // Regular community list entry + container entregcli-items { + + uses rtregcomcli_EntryRegexCli-group; + description "Entry CLI"; } - // Test type - // Inherited From eqptdiag:ARule - // Type is an MO-Defined-Type - leaf type { + // Regular community list entry + container entcli-items { + + uses rtregcomcli_EntryCli-group; + description "Entry CLI"; + } + } + + grouping rtregcomcli_EntryRegexCli-group { + description "Entry CLI"; + leaf numOfChildren { + config "false"; + type uint32; + description "Total Number of Children"; + } + + // CLI Action + leaf cliAction { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type eqptdiag_Type; + type scrtchpd_Action; + description "Action"; } - // On demand diag subject - container subj-items { - list OnDSubj-list { - config "false"; - key "oDn"; + leaf name { + config "false"; - // Added containment: Prefix=subj - // Acquired From Package eqptdiag - uses eqptdiag_OnDSubj-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - } - - grouping eqptdiag_OnDSubj-group { - // Admin state, used only with on demand tests - // Type is an MO-Defined-Type - leaf adminSt { + leaf descr { config "false"; - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type naming_Descr; + description "Description of the specified attribute"; } - // Object primary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oPk { + // Order + leaf order { config "false"; - description "Object Primary Key"; - // Type is an MO-Defined-Type - type test_PInstId; + type rtflt_Order { + range "1..4294967294"; + } + description "Order"; } - // Object secondary key - // Inherited From test:Subj - // Type is an MO-Defined-Type - leaf oSk { + // Action + leaf action { config "false"; - description "Object Secondary Key"; - // Type is an MO-Defined-Type - type test_PInstId; + type rtflt_Action; + description "Action"; } - leaf oDn { + leaf regex { config "false"; - type string; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } + } - // Consolidated operational state of the test - // on this subject - // Inherited From test:Subj - // Modified by Override: eqptdiag:OnDSubj->operSt - // Type is an MO-Defined-Type - leaf operSt { + grouping rtregcomcli_EntryCli-group { + description "Entry CLI"; + leaf numOfChildren { + config "false"; + type uint32; + description "Total Number of Children"; + } + + // CLI Action + leaf cliAction { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type - type test_OperSt; + type scrtchpd_Action; + description "Action"; } - // Prof. Name - // Inherited From test:Subj - // Type is an MO-Defined-Type leaf name { config "false"; + + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; + } description "Name"; + } - // Type is an MO-Defined-Type - type naming_Name; + leaf descr { + config "false"; + + type naming_Descr; + description "Description of the specified attribute"; } - // Diag result - container rslt-items { - list Rslt-list { - config "false"; - key "ts"; + // Order + leaf order { + config "false"; - // Added containment: Prefix=rslt - // Acquired From Package eqptdiag - uses eqptdiag_Rslt-group; + type rtflt_Order { + range "1..4294967294"; } + description "Order"; } - } - // Has Polymorphic containment of abstract object action:LInst - grouping action_LSubj-group { + // Action + leaf action { + config "false"; - // Property has READ-CREATE access - leaf oDn { - type string; + type rtflt_Action; + description "Action"; } - leaf oCl { + leaf regex { config "false"; - type string; + type string { + pattern ".*[^a-zA-Z~!#%@`;]{0,63}.*"; + } + description "Regular Expression"; } - // Implicit DomainRef objects cannot be user created - they are implicitly created - // and added to domainable objects created by the backend - container idomain-items { - list IDomainRef-list { + // Item in the community list + container itemcli-items { + list ItemCli-list { config "false"; - key "name"; + key "community"; - // Added containment: Prefix=idomain - // Acquired From Package aaa - uses aaa_IDomainRef-group; + uses rtregcomcli_ItemCli-group; + description "Item CLI list"; } + description "Item CLI"; } + } + + grouping rtregcomcli_ItemCli-group { + description "Item CLI"; - // Nve ping - container pingnve-items { - list PingNve-list { - key "session"; + leaf name { + config "false"; - // Added containment: Prefix=pingnve - // Acquired From Package ngoam - uses ngoam_PingNve-group; + type pol_ObjName { + length "0..64"; + pattern ".*[a-zA-Z0-9_\\.:-]*.*"; } + description "Name"; } - // Exec for fabric ping - container pingexecfab-items { - list ExecFab-list { - key "name srcNodeId dstNodeId"; + leaf descr { + config "false"; - // Added containment: Prefix=pingexecfab - // Acquired From Package ping - uses ping_ExecFab-group; - } + type naming_Descr; + description "Description of the specified attribute"; + } + leaf community { + config "false"; + type mtx_array_community; + description "Community"; } + } + + grouping vlanmgrcli_EntityCli-group { + description "Vlan Manager Entity CLI"; - // Exec for EP to EP (Tenant) ping - container pingexectn-items { - list ExecTn-list { - key "tenant name srcIp dstIp"; + leaf name { + config "false"; - // Added containment: Prefix=pingexectn - // Acquired From Package ping - uses ping_ExecTn-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Result for fabric ping - container pingrsltfab-items { - list RsltFab-list { - config "false"; - key "name srcNodeId dstNodeId startTs"; + // - Admin state + leaf adminSt { + config "false"; - // Added containment: Prefix=pingrsltfab - // Acquired From Package ping - uses ping_RsltFab-group; - } + type nw_AdminSt; + description "Admin State"; } - // Result for EP to EP (Tenant) ping - container pingrslttn-items { - list RsltTn-list { - config "false"; - key "tenant name srcIp dstIp startTs"; + // Operational state + leaf operSt { + config "false"; - // Added containment: Prefix=pingrslttn - // Acquired From Package ping - uses ping_RsltTn-group; - } + type nw_EntOperSt; + description "Operational State"; } - // Exec for fabric traceroute - container trexecfab-items { - list ExecFab-list { - key "name srcNodeId dstNodeId"; + // This objects hold per vlan-mgr instance information. There is only + // one instance of vlan-mgr running in the system today + container inst-items { - // Added containment: Prefix=trexecfab - // Acquired From Package traceroute - uses traceroute_ExecFab-group; - } + uses vlanmgrcli_InstCli-group; + description "Vlan Manager Instance Cli"; } + } - // Exec for EP to EP (Tenant) traceroute - container trexectn-items { - list ExecTn-list { - key "tenant name srcIp dstIp"; - - // Added containment: Prefix=trexectn - // Acquired From Package traceroute - uses traceroute_ExecTn-group; - } + grouping vlanmgrcli_InstCli-group { + description "Vlan Manager Instance Cli"; + leaf vxlanNativeVlans { + config "false"; + type boolean; + description "Vxlan Native Vlans"; } - // Result for fabric traceroute - container trrsltfab-items { - list RsltFab-list { - config "false"; - key "name srcNodeId dstNodeId startTs"; + leaf name { + config "false"; - // Added containment: Prefix=trrsltfab - // Acquired From Package traceroute - uses traceroute_RsltFab-group; + type naming_Name256 { + length "1..64"; } + description "Name"; } - // Result for EP to EP (Tenant) traceroute - container trrslttn-items { - list RsltTn-list { - config "false"; - key "tenant name srcIp dstIp startTs"; + // Administrative state + leaf adminSt { + config "false"; - // Added containment: Prefix=trrslttn - // Acquired From Package traceroute - uses traceroute_RsltTn-group; - } + type nw_AdminSt; + description "Admin State"; } - // Exec results - container imginsttaskrslt-items { - list Rslt-list { - config "false"; - key "type startTs"; + // Instance controls + leaf ctrl { + config "false"; - // Added containment: Prefix=imginsttaskrslt - // Acquired From Package imginstall - uses imginstall_Rslt-group; - } + type nw_InstCtrl; + description "Controls"; } + } - // Polymorphic containment of derivative object eptrk:IpEpExec (from action:LInst) - container trkip-items { + grouping synthetic_SwTLTestObj-group { + description "Synthetic Sw TL Test Object"; - // Abstract containment of eptrk:IpEpExec derived from action:LInst - list IpEpExec-list { - key "addr vrf"; + leaf name { - // Added containment: Prefix=trkip - // Acquired From Package eptrk - uses eptrk_IpEpExec-group; - } + type naming_Name; + description "Name"; } - // Polymorphic containment of derivative object eptrk:MacEpExec (from action:LInst) - container trkmac-items { - - // Abstract containment of eptrk:MacEpExec derived from action:LInst - list MacEpExec-list { - key "addr encap"; + leaf id { - // Added containment: Prefix=trkmac - // Acquired From Package eptrk - uses eptrk_MacEpExec-group; - } + type naming_Id; + description "Id"; } - // IP EP Tracking Results - // Polymorphic containment of derivative object eptrk:IpEpRslt (from action:LInst) - container iprslt-items { + leaf descr { - // Abstract containment of eptrk:IpEpRslt derived from action:LInst - list IpEpRslt-list { - config "false"; - key "addr vrf"; + type naming_Descr; + description "TBD"; + } + leaf objDn { + type string; + } + leaf priKey { + type string; + } + container secc-items { + list SwCTestObj-list { + key "name"; - // Added containment: Prefix=iprslt - // Acquired From Package eptrk - uses eptrk_IpEpRslt-group; + uses synthetic_SwCTestObj-group; + description "Synthetic Sw C Test Object list"; } + description "Synthetic Sw C Test Object"; } - // Exec results - // Polymorphic containment of derivative object eptrk:MacEpRslt (from action:LInst) - container macrslt-items { + container iecc-items { - // Abstract containment of eptrk:MacEpRslt derived from action:LInst - list MacEpRslt-list { - config "false"; - key "addr encap"; + list IfcCTestObj-list { + key "name"; - // Added containment: Prefix=macrslt - // Acquired From Package eptrk - uses eptrk_MacEpRslt-group; + uses synthetic_IfcCTestObj-group; + description "Synthetic Ifc C Test Object list"; } + description "Synthetic Ifc C Test Object"; } - // Result for fabric ping - // Polymorphic containment of derivative object ngoam:PingNveRslt (from action:LInst) - container pingnverslt-items { - - // Abstract containment of ngoam:PingNveRslt derived from action:LInst - list PingNveRslt-list { - config "false"; - key "sessionId"; + container rttoObj-items { - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; - } + uses synthetic_RtToObj_target-group; } + } - // Polymorphic containment of derivative object ngoam:TraceRtNve (from action:LInst) - container tracertnve-items { + grouping cnw_AggrIf-group { + description "Controller Aggregated Interface"; - // Abstract containment of ngoam:TraceRtNve derived from action:LInst - list TraceRtNve-list { - key "session"; + // Operational port state + leaf operSt { + config "false"; - // Added containment: Prefix=tracertnve - // Acquired From Package ngoam - uses ngoam_TraceRtNve-group; - } + type l1_OperSt; + description "Operational Status"; } - // Polymorphic containment of derivative object ngoam:PathTraceNve (from action:LInst) - container pathtracenve-items { - - // Abstract containment of ngoam:PathTraceNve derived from action:LInst - list PathTraceNve-list { - key "session"; + leaf name { + config "false"; - // Added containment: Prefix=pathtracenve - // Acquired From Package ngoam - uses ngoam_PathTraceNve-group; + type naming_Name256 { + length "1..64"; } + description "This object holds name information"; } - // Result for fabric traceroute - // Polymorphic containment of derivative object ngoam:TraceRtNveRslt (from action:LInst) - container trnverslt-items { - - // Abstract containment of ngoam:TraceRtNveRslt derived from action:LInst - list TraceRtNveRslt-list { - config "false"; - key "sessionId"; + leaf descr { + config "false"; - // Added containment: Prefix=trnverslt - // Acquired From Package ngoam - uses ngoam_TraceRtNveRslt-group; + type naming_Descr1024 { + length "0..254"; } + description "descr"; } - // Result for Pathtrace - // Polymorphic containment of derivative object ngoam:PathTraceNveRslt (from action:LInst) - container ptrnverslt-items { - - // Abstract containment of ngoam:PathTraceNveRslt derived from action:LInst - list PathTraceNveRslt-list { - config "false"; - key "sessionId"; + // Interface ID of this endpoint + leaf id { - // Added containment: Prefix=ptrnverslt - // Acquired From Package ngoam - uses ngoam_PathTraceNveRslt-group; - } + type nw_IfId; + description "Interface Identifier of this endpoint Property has READ-Create access."; } - // Rel-def from LSubjToDomainRef - container rslSubjToDomainRef-items { + // Administrative port state @@@ Comes from port out-of-service policy + leaf adminSt { + config "false"; - // Added containment as a singleton: Prefix=rslSubjToDomainRef - // Acquired From Package action - uses action_RsLSubjToDomainRef_source-group; + type l1_AdminSt; + description "Administrative Port State"; } - } - grouping ngoam_PingNve-group { - leaf session { - type string; + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { + config "false"; + + type l1_Speed; + description "Administrative Port Speed"; } - // Prof. id - // Type is an MO-Defined-Type - leaf profileId { - description "Ngoam profile ID"; + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { + config "false"; - // Type is an MO-Defined-Type - type ngoam_ProfId; - } - leaf dstIp { - type address_Ipv4; - } - leaf dstIpv6 { - type address_Ipv6; - } - leaf dstMAC { - type address_Mac; - } - leaf srcIp { - type address_Ipv4; - } - leaf srcIpv6 { - type address_Ipv6; + type l1_Duplex; + description "Duplex"; } - // dot1q - // Type is an MO-Defined-Type - leaf dot1q { - description "dot1q"; + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - // source port - // Type is an MO-Defined-Type - leaf srcPort { - description "Source Port"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Sport; + type l1_Mtu; + description "Administrative port MTU"; } - // count - // Type is an MO-Defined-Type - leaf count { - description "Number of packets"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { + config "false"; - // Type is an MO-Defined-Type - type ngoam_NumPkt; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - // timeout - // Type is an MO-Defined-Type - leaf timeout { - description "Timeout"; + // Administrative port mode @@@ Internally set by PE + leaf mode { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Timeout; + type l1_Mode; + description "Administrative port mode"; } - // interval - // Type is an MO-Defined-Type - leaf interval { - description "Interval"; + // Administrative port layer @@@ Internally set by PE + leaf layer { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SendIntvl; + type l1_Layer; + description "Administrative port layer"; } - // Type is an MO-Defined-Type - leaf dataPattern { - description "data pattern"; + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { + config "false"; - // Type is an MO-Defined-Type - type ngoam_PayloadPad; + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; } - // sweep min - // Type is an MO-Defined-Type - leaf sweepmin { - description "Sweep Start of Range"; + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SweepSz; + type l1_Delay; + description "Administrative port delay time"; } - // sweep max - // Type is an MO-Defined-Type - leaf sweepmax { - description "Sweep End of Range"; + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { + config "false"; - // Type is an MO-Defined-Type - type ngoam_SweepSz; + type l1_LinkDebounce; + description "Administrative port link debounce interval"; } - // packet size - // Type is an MO-Defined-Type - leaf packetSz { - description "Payload Size"; + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { + config "false"; - // Type is an MO-Defined-Type - type ngoam_PktSz; + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; } - // The vrf in which it is running - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Vrf; + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; } - // The VxLAN vni - // Type is an MO-Defined-Type - leaf vni { - description "VNI"; + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Vnid; + type l1_Medium; + description "Administrative port medium type"; } - // Egress Interface id - // Type is an MO-Defined-Type - leaf egressIf { - description "Interface ID"; + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type l1_InheritBw; + description "Administrative port inherit bandwidth"; } - // MAC Interface - // Type is an MO-Defined-Type - leaf macsrcif { - description "payload source interface"; + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type l1_SpanMode; + description "Administrative port span mode"; } - // Runtime status of the task - // Type is an MO-Defined-Type - leaf operSt { + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { config "false"; - description "Completion"; - // Type is an MO-Defined-Type - type action_OperSt; - } - leaf sessionId { - type uint32; - } - leaf verifyHost { - type boolean; + type l1_LinkLog; + description "Administrative link logging enable"; } - // dot1q - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_dot1q { - description "dot1q"; + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { + config "false"; - // Type is an MO-Defined-Type - type ngoam_Dot1q; - } - leaf payload_srcip { - type address_Ipv4; - } - leaf payload_srcipv6 { - type address_Ipv6; + type l1_TrunkLog; + description "Administrative trunk logging enable"; } - leaf payload_srcmac { + leaf routerMac { + config "false"; type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; } - leaf payload_dstip { - type address_Ipv4; - } - leaf payload_dstipv6 { - type address_Ipv6; - } - leaf payload_dstmac { - type address_Mac; + + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { + config "false"; + + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; } - leaf payload_srcport { - type uint16; + + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { + config "false"; + + type l1_PortUsage; + description "Port Usage Type"; } - leaf payload_dstport { - type uint16; + + // config trunk vlans + leaf trunkVlans { + + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; } - // protocol - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_protocol { - description "payload protocol"; + // config access vlan + leaf accessVlan { - // Type is an MO-Defined-Type - type ngoam_Protocol; + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; } - // Source Interface - // From Interface ngoam:Payload - // Type is an MO-Defined-Type - leaf payload_srcif { - description "payload source interface"; + // Controller Id + leaf controllerId { + config "false"; - // Type is an MO-Defined-Type - type nw_IfId; + type aggregate_ControllerIdBitmap; + description "Controller ID"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // config access vlan + leaf nativeVlan { - // Type is an MO-Defined-Type - type action_Descr; + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { + // port user config flags + leaf userCfgdFlags { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_userCfgdFlags; + description "Port User Config Flags"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; - // Type is an MO-Defined-Type - type action_Type; + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + container rtextConf-items { - // Type is an MO-Defined-Type - type action_RetentionSize; + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + container rtbrConf-items { - // Type is an MO-Defined-Type - type action_RetentionTime; + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; } - leaf peerClassId { - config "false"; - type string; + + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; + + uses fv_RtFvNodePortAtt_target-group; + } } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: ngoam:PingNve->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type action_AdminSt; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + container rtphysRtdConf-items { - // Type is an MO-Defined-Type - type action_Freq; + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; } - // Result for fabric ping - container pingnverslt-items { - list PingNveRslt-list { + container rtl3EncPhysRtdConf-items { + + list RtL3EncPhysRtdConf-list { config "false"; - key "sessionId"; + key "tDn"; - // Added containment: Prefix=pingnverslt - // Acquired From Package ngoam - uses ngoam_PingNveRslt-group; + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; } + description "Parent If"; } - } - grouping ping_ExecFab-group { + container rsmbrIfs-items { - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - description "Destination Node ID"; + list RsMbrIfs-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type fabric_NodeId; + uses cnw_RsMbrIfs_source-group; + description "Member Iinterfaces list"; + } + description "Member Iinterfaces"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + container rsactiveIf-items { - // Type is an MO-Defined-Type - type action_Descr; + uses cnw_RsActiveIf_source-group; + description "Active Interface"; } + } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { + grouping cnw_PhysIf-group { + description "Controller Physical Interface"; + + // Operational port state + leaf operSt { config "false"; - description "TBD"; - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_OperSt; + description "Operational Status"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + leaf name { - // Type is an MO-Defined-Type - type action_Type; + type naming_Name256 { + length "1..64"; + } + description "This object holds name information"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + leaf descr { - // Type is an MO-Defined-Type - type action_RetentionSize; + type naming_Descr1024 { + length "0..254"; + } + description "descr"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Interface ID of this endpoint + leaf id { - // Type is an MO-Defined-Type - type action_RetentionTime; - } - leaf peerClassId { - config "false"; - type string; + type nw_IfId; + description "Interface Identifier of this endpoint"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type + // Administrative port state @@@ Comes from port out-of-service policy leaf adminSt { - description "Admin State"; - // Type is an MO-Defined-Type - type action_AdminSt; + type l1_AdminSt; + description "Administrative Port State"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Administrative port speed @@@ This comes from the host interface + // @@@ configuration policy + leaf speed { - // Type is an MO-Defined-Type - type action_Freq; + type l1_Speed; + description "Administrative Port Speed"; } - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // Administrative port duplex @@@ This comes from the host interface + // @@@ configuration policy + leaf duplex { - // Type is an MO-Defined-Type - type oam_ProfName; + type l1_Duplex; + description "Duplex"; } - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; + // Administrative port auto-negotiation @@@ It comes from the host interface configuration + // @@@ policy. It is used for automatically negotiating + // @@@ the speed + leaf autoNeg { - // Type is an MO-Defined-Type - type oam_EpT; + type l1_AutoNeg; + description "Administrative Port Auto-Negotiation"; } - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; + // Administrative port mtu @@@ This comes from QOS Policy + leaf mtu { - // Type is an MO-Defined-Type - type fabric_NodeId; + type l1_Mtu; + description "Administrative port MTU"; } - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // Administrative port snmp trap state @@@ This is a port level config. but it could go in + // @@@ SNMP policy in IFC + leaf snmpTrapSt { - // Type is an MO-Defined-Type - type oam_Vrf; + type l1_SnmpTrapSt; + description "Administrative Port Snmp Trap State"; } - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; + // Administrative port mode @@@ Internally set by PE + leaf mode { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_Mode; + description "Administrative port mode"; } - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; + // Administrative port layer @@@ Internally set by PE + leaf layer { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_Layer; + description "Administrative port layer"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; + // Administrative mdix mode @@@ Theres no benefit in exposing this property + // @@@ in IFC. Ask Marketing. + leaf mdix { - // Type is an MO-Defined-Type - type oam_PayloadSz; + type l1_Mdix; + description "Administrative Medium-dependant interface crossover(Mdix) mode"; } - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; + // Administrative port delay @@@ is this exposed in IFC? + leaf delay { - // Type is an MO-Defined-Type - type oam_TenantName; + type l1_Delay; + description "Administrative port delay time"; } - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; + // Administrative port link debounce interval @@@ This comes from the interface configuration policy + leaf linkDebounce { - // Type is an MO-Defined-Type - type oam_MacId; + type l1_LinkDebounce; + description "Administrative port link debounce interval"; } - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; + // Administrative port dot1q ether-type @@@ This property is not supported in switch ?? + leaf dot1qEtherType { - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; + type l1_DDot1qEtherType; + description "Administrative port Dot1q ether-type: configures TPID value in VLAN tag field for packets received and sent by interface"; } - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Administrative port bandwidth @@@ Comes from QOS Policy + leaf bw { - // Type is an MO-Defined-Type - type action_OperSt; + type l1_Bw; + description "Bandwidth parameter for a routed interface, port channel or subinterface"; } - } - grouping ping_ExecTn-group { - - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; + // Administrative port medium type @@@ The fabric & Host connections are P2p. @@@ No need to expose this property in IFC + leaf medium { - // Type is an MO-Defined-Type - type action_Descr; + type l1_Medium; + description "Administrative port medium type"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + // Administrative port inherit bandwidth @@@ It is used for specifying the bandwidth inherited + // @@@ by the subinterfaces from the parent interface @@@ It is not exposed in IFC. All the subinterfaces + // @@@ inherit full parent interface's bandwidth + leaf inhBw { - // Type is an MO-Defined-Type - type mo_TStamp; + type l1_InheritBw; + description "Administrative port inherit bandwidth"; } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; + // Administrative port span mode @@@ This comes from the span policy in IFC + leaf spanMode { - // Type is an MO-Defined-Type - type action_Type; + type l1_SpanMode; + description "Administrative port span mode"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + // Administrative link logging enable @@@ This come from interface configuration policy + leaf linkLog { - // Type is an MO-Defined-Type - type action_RetentionSize; + type l1_LinkLog; + description "Administrative link logging enable"; } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + // Administrative trunk logging enable @@@ This come from interface configuration policy + leaf trunkLog { - // Type is an MO-Defined-Type - type action_RetentionTime; + type l1_TrunkLog; + description "Administrative trunk logging enable"; } - leaf peerClassId { - config "false"; - type string; + leaf routerMac { + type address_Mac; + default "00:00:00:00:00:00"; + description "Administrative Router MAC address"; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Type of the port: Fabric vs Leaf @@@ This property is not exposed in IFC + leaf portT { - // Type is an MO-Defined-Type - type action_AdminSt; + type eqpt_PortT; + description "Type of the port: Fabric vs Leaf"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Usage of the port: Fabric, Infra, Epg, Controller, Discovery @@@ This property is not exposed in IFC + leaf usage { - // Type is an MO-Defined-Type - type action_Freq; + type l1_PortUsage; + description "Port Usage Type"; } - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; + // config trunk vlans + leaf trunkVlans { - // Type is an MO-Defined-Type - type oam_ProfName; + type l1_l1IfTrunkVlans; + description "Configed Trunk Vlans"; } - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; + // config access vlan + leaf accessVlan { - // Type is an MO-Defined-Type - type oam_EpT; + type l1_l1IfAccessVlan; + description "Configured Access Vlan"; } - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; + // Controller Id + leaf controllerId { - // Type is an MO-Defined-Type - type fabric_NodeId; + type aggregate_ControllerIdBitmap; + description "Controller ID"; } - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; + // config access vlan + leaf nativeVlan { - // Type is an MO-Defined-Type - type oam_Vrf; + type l1_l1IfNativeVlan; + description "Configured Native Vlan"; } - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; + // port user config flags + leaf userCfgdFlags { - // Type is an MO-Defined-Type - type oam_IpId; + type l1_userCfgdFlags; + description "Port User Config Flags"; } - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; + // Dom info + container dom-items { + list DomDef-list { + config "false"; + key "domPKey"; - // Type is an MO-Defined-Type - type oam_IpId; + uses fv_DomDef-group; + description "Domain list"; + } + description "Domain"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; + container rtextConf-items { - // Type is an MO-Defined-Type - type oam_PayloadSz; + uses l2_RtExtConf_target-group; + description "Eth Interface Attachment"; } - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; + container rtbrConf-items { - // Type is an MO-Defined-Type - type oam_TenantName; + uses l2_RtBrConf_target-group; + description "Eth Interface Attachment"; } - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; + container rtfvNodePortAtt-items { + + list RtFvNodePortAtt-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type oam_MacId; + uses fv_RtFvNodePortAtt_target-group; + } } - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; + container rtvrfMbr-items { - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; + uses l3_RtVrfMbr_target-group; + description "VRF Membership Association"; } - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + container rtphysRtdConf-items { - // Type is an MO-Defined-Type - type action_OperSt; + uses l3_RtPhysRtdConf_target-group; + description "Physical Routed Attachment"; } - } - grouping ping_RsltFab-group { + container rtl3EncPhysRtdConf-items { - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - config "false"; - description "Destination Node ID"; + list RtL3EncPhysRtdConf-list { + config "false"; + key "tDn"; - // Type is an MO-Defined-Type - type fabric_NodeId; + uses l3_RtL3EncPhysRtdConf_target-group; + description "Parent If list"; + } + description "Parent If"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - config "false"; - description "Description"; + container rtmbrIfs-items { - // Type is an MO-Defined-Type - type action_Descr; + uses cnw_RtMbrIfs_target-group; + description "Member Iinterfaces"; } - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; + container rtactiveIf-items { - // Type is an MO-Defined-Type - type mo_TStamp; + uses cnw_RtActiveIf_target-group; + description "Active Interface"; } + } - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "TBD"; + grouping vshd_CliAlias-group { + description "Cli alias configuration"; + leaf aliasName { + type string { + pattern ".*[A-Za-z][0-9A-Za-z]{0,29}.*"; + } + description "Name of the alias"; + } + leaf aliasCmd { + type string { + length "0..1023"; + } + description "Alias command definition"; + } + } - // Type is an MO-Defined-Type - type action_Type; + grouping vshd_CliAliasCheck-group { + description "Cli alias check configuration"; + + // Name of the alias definition + leaf mode { + + type vshd_ModeType; + description "strict check for cli alias"; } + } - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { - config "false"; - description "TBD"; + grouping vshd_CliVar-group { + description "Configure CLI commands"; + leaf varName { + type string { + pattern "[A-Za-z][0-9A-Za-z]{0,30}.*"; + } + description "Specify a variable name"; + } + leaf varValue { + type string { + length "0..254"; + } + description "Specify a variable value"; + } + } - // Type is an MO-Defined-Type - type action_RetentionSize; + grouping action_LCont-group { + description "Action Container of mo LCont"; + container lsubj-items { + list LSubj-list { + key "oDn"; + + uses action_LSubj-group; + description "Action Subject of mo LSubj list"; + } + description "Action Subject of mo LSubj"; } + } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; - description "TBD"; + grouping action_LSubj-group { + description "Action Subject of mo LSubj"; - // Type is an MO-Defined-Type - type action_RetentionTime; + leaf oDn { + type string; + description "Target Object's Subject DN"; } - leaf peerClassId { + leaf oCl { config "false"; type string; + description "Target Object's subject Class id"; } - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { - config "false"; - description "TBD"; + // Result for fabric ping + container pingrsltfab-items { + list RsltFab-list { + config "false"; + key "name srcNodeId dstNodeId startTs"; - // Type is an MO-Defined-Type - type action_Qual; + uses ping_RsltFab-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - leaf ack { - config "false"; - type boolean; + + // Result for EP to EP (Tenant) ping + container pingrslttn-items { + list RsltTn-list { + config "false"; + key "tenant name srcIp dstIp startTs"; + + uses ping_RsltTn-group; + description "Tenant Result list"; + } + description "Tenant Result"; } - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { - config "false"; - description "TBD"; + // Result for fabric traceroute + container trrsltfab-items { + list RsltFab-list { + config "false"; + key "name srcNodeId dstNodeId startTs"; - // Type is an MO-Defined-Type - type mo_TStamp; + uses traceroute_RsltFab-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; + // Result for EP to EP (Tenant) traceroute + container trrslttn-items { + list RsltTn-list { + config "false"; + key "tenant name srcIp dstIp startTs"; - // Type is an MO-Defined-Type - type action_OperSt; + uses traceroute_RsltTn-group; + description "Tenant Result list"; + } + description "Tenant Result"; } - // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf name { - config "false"; - description "Name"; + // Exec results + container imginsttaskrslt-items { + list Rslt-list { + config "false"; + key "type startTs"; - // Type is an MO-Defined-Type - type oam_ProfName; + uses imginstall_Rslt-group; + description "Result list"; + } + description "Result"; } - // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf srcNodeId { - config "false"; - description "Source Node ID"; + // IP EP Tracking Results + container iprslt-items { - // Type is an MO-Defined-Type - type fabric_NodeId; + list IpEpRslt-list { + config "false"; + key "addr vrf"; + + uses eptrk_IpEpRslt-group; + description "IP EP Tracking Result list"; + } + description "IP EP Tracking Result"; } - // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf vrf { - config "false"; - description "VRF"; + // Exec results + container macrslt-items { - // Type is an MO-Defined-Type - type oam_Vrf; + list MacEpRslt-list { + config "false"; + key "addr encap"; + + uses eptrk_MacEpRslt-group; + description "MAC EP Tracking Result list"; + } + description "MAC EP Tracking Result"; } - // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf srcIp { - config "false"; - description "Source IP"; + // Result for fabric ping + container pingnverslt-items { - // Type is an MO-Defined-Type - type oam_IpId; + list PingNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PingNveRslt-group; + description "Ping Nve Result list"; + } + description "Ping Nve Result"; } - // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf dstIp { - config "false"; - description "Destination IP"; + // Result for fabric traceroute + container trnverslt-items { - // Type is an MO-Defined-Type - type oam_IpId; + list TraceRtNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_TraceRtNveRslt-group; + description "Fabric Result list"; + } + description "Fabric Result"; } - // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf tenant { - config "false"; - description "Tenant Name"; + // Result for Pathtrace + container ptrnverslt-items { - // Type is an MO-Defined-Type - type oam_TenantName; + list PathTraceNveRslt-list { + config "false"; + key "sessionId"; + + uses ngoam_PathTraceNveRslt-group; + description "PathTrace Nve Result list"; + } + description "PathTrace Nve Result"; } - // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type - leaf payloadSz { - config "false"; - description "Payload Size"; + container rslSubjToDomainRef-items { - // Type is an MO-Defined-Type - type oam_PayloadSz; + uses action_RsLSubjToDomainRef_source-group; + description "Relation from LSubj To AAA Domain Ref"; } } - grouping ping_RsltTn-group { + grouping ping_RsltFab-group { + description "Fabric Result"; + + // Destination Node ID + leaf dstNodeId { + config "false"; + + type fabric_NodeId; + description "Destination Node ID"; + } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -149351,14 +163119,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -149366,635 +163131,255 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } } - grouping traceroute_ExecFab-group { - - // Destination Node ID - // Type is an MO-Defined-Type - leaf dstNodeId { - description "Destination Node ID"; - - // Type is an MO-Defined-Type - type fabric_NodeId; - } + grouping ping_RsltTn-group { + description "Tenant Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; - - // Type is an MO-Defined-Type - type action_AdminSt; - } - - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; - - // Type is an MO-Defined-Type - type action_Freq; - } - - // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type oam_ProfName; - } - - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { - config "false"; - description "Endpoint Type"; - - // Type is an MO-Defined-Type - type oam_EpT; - } - - // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcNodeId { - description "Source Node ID"; - - // Type is an MO-Defined-Type - type fabric_NodeId; - } - - // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf vrf { - description "VRF"; - - // Type is an MO-Defined-Type - type oam_Vrf; - } - - // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcIp { - description "Source IP"; - - // Type is an MO-Defined-Type - type oam_IpId; - } - - // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstIp { - description "Destination IP"; - - // Type is an MO-Defined-Type - type oam_IpId; - } - - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; - - // Type is an MO-Defined-Type - type oam_PayloadSz; - } - - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf tenant { - description "Tenant Name"; - - // Type is an MO-Defined-Type - type oam_TenantName; - } - - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; - } - - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; - } - - // Max paths that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxPaths { - config "false"; - description "Max Paths"; - - // Type is an MO-Defined-Type - type traceroute_Paths; - } - - // Max hops that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxHops { - config "false"; - description "Max Hops"; - - // Type is an MO-Defined-Type - type traceroute_Hops; - } - } - - grouping traceroute_ExecTn-group { - - // Gateway MAC - // Type is an MO-Defined-Type - leaf gwMac { - description "Gateway MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf useGwMac { - type boolean; - default "true"; - } - - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type - leaf descr { - description "Description"; - - // Type is an MO-Defined-Type - type action_Descr; - } - - // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type - leaf startTs { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; - } - - // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf type { - description "TBD"; - - // Type is an MO-Defined-Type - type action_Type; - } - - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + // Qualifier for the above status + leaf qual { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionSize; - } - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { - config "false"; + type action_Qual; description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionTime; } - leaf peerClassId { + leaf ack { config "false"; - type string; + type boolean; } - // Admin State of the action - // Inherited From task:Exec - // Modified by Override: oam:Exec->adminSt - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf name { - description "Name"; - - // Type is an MO-Defined-Type - type oam_ProfName; - } - - // Endpoint type, this oam test is run for this - // type of the endpoint - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf epT { config "false"; - description "Endpoint Type"; - // Type is an MO-Defined-Type - type oam_EpT; + type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf srcNodeId { - description "Source Node ID"; + config "false"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf vrf { - description "VRF"; + config "false"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf srcIp { - description "Source IP"; + config "false"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Exec - // Type is an MO-Defined-Type leaf dstIp { - description "Destination IP"; + config "false"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } - // Payload size - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf payloadSz { - description "Payload Size"; - - // Type is an MO-Defined-Type - type oam_PayloadSz; - } - - // The following are used when the ping/traceroute - // are done on behalf of the tenant endpoints - // Inherited From oam:Exec - // Type is an MO-Defined-Type + // The tenant to which this Ep belongs leaf tenant { - description "Tenant Name"; - - // Type is an MO-Defined-Type - type oam_TenantName; - } - - // Source MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf srcMac { - description "Source MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - - // Destination MAC - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf dstMac { - description "Destination MAC"; - - // Type is an MO-Defined-Type - type oam_MacId; - } - leaf vtep { - type address_Ip; - } - leaf vtepEncap { - type string; - } - - // Runtime status of the task - // Inherited From oam:Exec - // Type is an MO-Defined-Type - leaf operSt { - config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; - } - - // Max paths that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxPaths { config "false"; - description "Max Paths"; - // Type is an MO-Defined-Type - type traceroute_Paths; + type oam_TenantName; + description "Tenant Name"; } - // Max hops that the traceroute should be limited to - // Inherited From traceroute:AExec - // Type is an MO-Defined-Type - leaf maxHops { + // Payload size + leaf payloadSz { config "false"; - description "Max Hops"; - // Type is an MO-Defined-Type - type traceroute_Hops; + type oam_PayloadSz; + description "Payload Size"; } } grouping traceroute_RsltFab-group { + description "Fabric Result"; // Destination Node ID - // Type is an MO-Defined-Type leaf dstNodeId { config "false"; - description "Destination Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Destination Node ID"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150002,14 +163387,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150017,102 +163399,75 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } // Path Group, captures all the paths that were taken by @@ -150122,23 +163477,22 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=pgrp - // Acquired From Package traceroute uses traceroute_PathGrp-group; + description "Path Group list"; } + description "Path Group"; } } grouping traceroute_PathGrp-group { + description "Path Group"; // Identifier of the path group - // Type is an MO-Defined-Type leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type traceroute_PathGrpId; + description "ID"; } // Each path represents a sequence of nodes towards the @@ -150148,43 +163502,38 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=path - // Acquired From Package traceroute uses traceroute_Path-group; + description "Path list"; } + description "Path"; } } grouping traceroute_Path-group { + description "Path"; // Identifier of the path - // Type is an MO-Defined-Type leaf id { config "false"; - description "ID"; - // Type is an MO-Defined-Type type traceroute_PathId; + description "ID"; } // Type of the path - // Type is an MO-Defined-Type leaf type { config "false"; - description "Type"; - // Type is an MO-Defined-Type type traceroute_PathT; + description "Type"; } // Flags - // Type is an MO-Defined-Type leaf flags { config "false"; - description "Flags"; - // Type is an MO-Defined-Type type traceroute_PathFlags; + description "Flags"; } // Node represents a given node in the traceroute path. Each @@ -150195,84 +163544,69 @@ module Cisco-NX-OS-device { config "false"; key "order"; - // Added containment: Prefix=node - // Acquired From Package traceroute uses traceroute_Node-group; + description "Node list"; } + description "Node"; } } grouping traceroute_Node-group { + description "Node"; // Node id - // Type is an MO-Defined-Type leaf order { config "false"; - description "Order"; - // Type is an MO-Defined-Type type traceroute_Order; + description "Order"; } leaf addr { config "false"; type address_Ip; + description "Address"; } } grouping traceroute_RsltTn-group { + description "Tenant Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150280,14 +163614,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150295,102 +163626,75 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } // Prof. Name - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf name { config "false"; - description "Name"; - // Type is an MO-Defined-Type type oam_ProfName; + description "Name"; } // Source Node ID - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcNodeId { config "false"; - description "Source Node ID"; - // Type is an MO-Defined-Type type fabric_NodeId; + description "Source Node ID"; } // The vrf in which it is running - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf vrf { config "false"; - description "VRF"; - // Type is an MO-Defined-Type type oam_Vrf; + description "VRF"; } // Source IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf srcIp { config "false"; - description "Source IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Source IP"; } // Destination IP - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf dstIp { config "false"; - description "Destination IP"; - // Type is an MO-Defined-Type type oam_IpId; + description "Destination IP"; } // The tenant to which this Ep belongs - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf tenant { config "false"; - description "Tenant Name"; - // Type is an MO-Defined-Type type oam_TenantName; + description "Tenant Name"; } // Payload size - // Inherited From oam:Rslt - // Type is an MO-Defined-Type leaf payloadSz { config "false"; - description "Payload Size"; - // Type is an MO-Defined-Type type oam_PayloadSz; + description "Payload Size"; } // Path Group, captures all the paths that were taken by @@ -150400,67 +163704,52 @@ module Cisco-NX-OS-device { config "false"; key "id"; - // Added containment: Prefix=pgrp - // Acquired From Package traceroute uses traceroute_PathGrp-group; + description "Path Group list"; } + description "Path Group"; } } grouping imginstall_Rslt-group { + description "Result"; - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150468,14 +163757,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150483,198 +163769,163 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } } - grouping eptrk_IpEpExec-group { + grouping eptrk_IpEpRslt-group { + description "IP EP Tracking Result"; leaf addr { + config "false"; type address_Ip; + description "IP Address"; } - // Type is an MO-Defined-Type + // The vrf the EP belongs to leaf vrf { - description "VRF"; + config "false"; - // Type is an MO-Defined-Type type l3_VrfName; + description "VRF"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } - // IP EP Tracking Results - container iprslt-items { - list IpEpRslt-list { - config "false"; - key "addr vrf"; + container rsipEpRslttoIpEpAtt-items { - // Added containment: Prefix=iprslt - // Acquired From Package eptrk - uses eptrk_IpEpRslt-group; - } + uses eptrk_RsIpEpRslttoIpEpAtt_source-group; } } - grouping eptrk_IpEpRslt-group { + grouping eptrk_MacEpRslt-group { + description "MAC EP Tracking Result"; leaf addr { config "false"; - type address_Ip; + type address_Mac; + description "MAC Address"; } - - // The vrf the EP belongs to - // Type is an MO-Defined-Type - leaf vrf { + leaf encap { config "false"; - description "VRF"; - - // Type is an MO-Defined-Type - type l3_VrfName; + type string; + description "TrkEndpoint encap"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; @@ -150682,14 +163933,11 @@ module Cisco-NX-OS-device { } // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf qual { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Qual; + description "TBD"; } leaf ack { config "false"; @@ -150697,6364 +163945,4200 @@ module Cisco-NX-OS-device { } // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf endTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Completion"; - // Type is an MO-Defined-Type type action_OperSt; + description "Runtime status of the task"; } - // Rel-def from IpEpRslttoIpEpAtt - container rsipEpRslttoIpEpAtt-items { + container rsmacEpRslttoIpEpAtt-items { - // Added containment as a singleton: Prefix=rsipEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RsIpEpRslttoIpEpAtt_source-group; + list RsMacEpRslttoIpEpAtt-list { + config "false"; + key "tDn"; + + uses eptrk_RsMacEpRslttoIpEpAtt_source-group; + } } } - grouping eptrk_MacEpExec-group { - leaf addr { - type address_Mac; + grouping ngoam_TraceRtNveRslt-group { + description "Fabric Result"; + leaf dstIp { + config "false"; + type address_Ipv4; + description "Destination Node ID"; } - leaf encap { + + // Maximum number of hops that the traceroute took to + // reach the destination + leaf maxHops { + config "false"; + + type ngoam_Hops; + description "Max Hops"; + } + + // Prof. Name + leaf sessionId { + config "false"; + + type ngoam_SessionId; + description "Name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; type string; + description "Failure Reason"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { - description "Description"; + config "false"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { - description "TBD"; + config "false"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; } - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rSz { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionSize; + description "TBD"; } // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf rTm { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_RetentionTime; + description "TBD"; } leaf peerClassId { config "false"; type string; } - // Admin State of the action - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf adminSt { - description "Admin State"; + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; - // Type is an MO-Defined-Type - type action_AdminSt; + type mo_TStamp; + description "TBD"; } - // Frequency at which tasks are executed - // Inherited From task:Exec - // Type is an MO-Defined-Type - leaf freq { - description "Task Frequency"; + // Runtime status of the task + leaf operSt { + config "false"; - // Type is an MO-Defined-Type - type action_Freq; + type action_OperSt; + description "Runtime status of the task"; } - // Exec results - container macrslt-items { - list MacEpRslt-list { + // Each path represents a sequence of nodes towards the + // destination + container pathtr-items { + list PathTr-list { config "false"; - key "addr encap"; + key "id"; - // Added containment: Prefix=macrslt - // Acquired From Package eptrk - uses eptrk_MacEpRslt-group; + uses ngoam_PathTr-group; + description "PathTr list"; } + description "PathTr"; } } - grouping eptrk_MacEpRslt-group { + grouping ngoam_PathTr-group { + description "PathTr"; + + // Identifier of the path + leaf id { + config "false"; + + type ngoam_PathId; + description "ID"; + } + + // Node represents a given node in the traceroute path. Each + // node is identified by the ip address and the order represents + // its placement in the path + container nodetr-items { + list NodeTr-list { + config "false"; + key "order"; + + uses ngoam_NodeTr-group; + description "NodeTr list"; + } + description "NodeTr"; + } + } + + grouping ngoam_NodeTr-group { + description "NodeTr"; + + // Node id + leaf order { + config "false"; + + type ngoam_Order; + description "Order"; + } leaf addr { config "false"; - type address_Mac; + type address_Ipv4; + description "IPv4 Address"; } - leaf encap { + leaf v6addr { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf elapsedTime { + config "false"; + type union { + type string; + type uint64; + } + description "Elapsed Time"; + } + } + + grouping ngoam_PathTraceNveRslt-group { + description "PathTrace Nve Result"; + leaf dstIp { + config "false"; + type address_Ipv4; + description "Destination Node ID"; + } + + // Maximum number of hops that the traceroute took to + // reach the destination + leaf maxHops { + config "false"; + + type ngoam_Hops; + description "Max Hops"; + } + + // Prof. Name + leaf sessionId { + config "false"; + + type ngoam_SessionId; + description "Name"; + } + leaf errorCode { + config "false"; + type string; + description "Error Code String"; + } + leaf failReason { + config "false"; + type string; + description "Failure Reason"; + } + leaf verbose { config "false"; type string; + description "Verbose info, fabric specific verbose info from the replies"; } - // Inherited From action:Inst - // Modified by Override: action:LInst->descr - // Type is an MO-Defined-Type leaf descr { config "false"; - description "Description"; - // Type is an MO-Defined-Type type action_Descr; + description "Description"; } // Time that the task started - // Inherited From action:Inst - // Type is an MO-Defined-Type leaf startTs { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type mo_TStamp; + description "TBD"; } // Task rule type - // Inherited From action:LInst - // Type is an MO-Defined-Type leaf type { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type action_Type; + description "TBD"; + } + + leaf rSz { + config "false"; + + type action_RetentionSize; + description "TBD"; + } + + // Retention time of task results + leaf rTm { + config "false"; + + type action_RetentionTime; + description "TBD"; + } + leaf peerClassId { + config "false"; + type string; + } + + // Qualifier for the above status + leaf qual { + config "false"; + + type action_Qual; + description "TBD"; + } + leaf ack { + config "false"; + type boolean; + } + + // Time that the task ended + leaf endTs { + config "false"; + + type mo_TStamp; + description "TBD"; + } + + // Runtime status of the task + leaf operSt { + config "false"; + + type action_OperSt; + description "Runtime status of the task"; + } + + // Each path represents a sequence of nodes towards the + // destination + container pathptr-items { + list PathPtr-list { + config "false"; + key "id"; + + uses ngoam_PathPtr-group; + description "PathPtr list"; + } + description "PathPtr"; + } + } + + grouping ngoam_PathPtr-group { + description "PathPtr"; + + // Identifier of the path + leaf id { + config "false"; + + type ngoam_PathId; + description "ID"; + } + + // Node represents a given node in the traceroute path. Each + // node is identified by the ip address and the order represents + // its placement in the path + container nodeptr-items { + list NodePtr-list { + config "false"; + key "order"; + + uses ngoam_NodePtr-group; + description "NodePtr list"; + } + description "NodePtr"; + } + } + + grouping ngoam_NodePtr-group { + description "NodePtr"; + + // Node id + leaf order { + config "false"; + + type ngoam_Order; + description "Order"; + } + leaf addr { + config "false"; + type address_Ipv4; + description "IPv4 Address"; + } + leaf v6addr { + config "false"; + type address_Ipv6; + description "IPv6 Address"; + } + leaf nodeName { + config "false"; + type string; + description "Node name"; } - - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rSz { + leaf elapsedTime { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionSize; + type union { + type string; + type uint64; + } + description "Elapsed Time"; } - - // Retention time of task results - // Inherited From action:LInst - // Type is an MO-Defined-Type - leaf rTm { + leaf ingressIf { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_RetentionTime; + type string; + description "Interface ID"; } - leaf peerClassId { + leaf ingressIfState { config "false"; type string; + description "Interface If state"; } - - // Qualifier for the above status - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf qual { + leaf rxLen { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type action_Qual; + type uint64; + description "Rx Len"; } - leaf ack { + leaf rxBytes { config "false"; - type boolean; + type uint64; + description "Rx Bytes"; } - - // Time that the task ended - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf endTs { + leaf rxPktRate { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type mo_TStamp; + type uint64; + description "Rx Packet Rate"; } - - // Runtime status of the task - // Inherited From task:Rslt - // Type is an MO-Defined-Type - leaf operSt { + leaf rxByteRate { config "false"; - description "Completion"; - - // Type is an MO-Defined-Type - type action_OperSt; + type uint64; + description "Rx Byte Rate"; } - - // Rel-def from MacEpRslttoIpEpAtt - container rsmacEpRslttoIpEpAtt-items { - - // Abstract containment of rsmacEpRslttoIpEpAtt derived from eptrk:MacEpRslt - list RsMacEpRslttoIpEpAtt-list { - config "false"; - key "tDn"; - - // Added containment: Prefix=rsmacEpRslttoIpEpAtt - // Acquired From Package eptrk - uses eptrk_RsMacEpRslttoIpEpAtt_source-group; - } + leaf rxLoad { + config "false"; + type uint64; + description "Rx Load"; } - } - - grouping infra_RtFexBndlGrpToAggrIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxUcast { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Ucast"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxMcast { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Mcast"; } - } - - grouping infra_RtAccBndlGrpToAggrIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxBcast { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Bcast"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxDiscards { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Discards"; } - } - - grouping datetime_RsNtpProviderToNtpAuth_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxErrors { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Rx Errors"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf rxUnknown { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Rx Unknown"; } - } - - grouping dbgexp_RtDbgexpTsSrc_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf rxBandwidth { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint32; + description "Rx Bandwidth"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf egressIf { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type string; + description "Egress Interface Name"; } - } - - grouping span_RsSessionToDomainRef_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + leaf egressIfState { + config "false"; + type string; + description "Egress Interface State"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf txLen { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Tx Len"; } - } - - grouping span_RsSpanSrcToL2CktEpAtt_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + leaf txBytes { config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; + type uint64; + description "Tx Bytes"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf txPktRate { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type uint64; + description "Tx Packet Rate"; } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { + leaf txByteRate { config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; + type uint64; + description "Tx Byte Rate"; } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { + leaf txLoad { config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; + type uint64; + description "Tx Load"; } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { + leaf txUcast { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; + type uint64; + description "Tx Ucast"; } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { + leaf txMcast { config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; + type uint64; + description "Tx Mcast"; } - leaf forceResolve { + leaf txBcast { config "false"; - type boolean; - default "true"; + type uint64; + description "Tx Bcast"; } - - // Source id - // Type is an MO-Defined-Type - leaf id { + leaf txDiscards { config "false"; - description "ID"; - - // Type is an MO-Defined-Type - type span_SrcId; + type uint64; + description "Tx Discards"; } - - // Operational state of the session - // Type is an MO-Defined-Type - leaf operSt { + leaf txErrors { config "false"; - description "Operational State"; - - // Type is an MO-Defined-Type - type span_OperSt; + type uint64; + description "Tx Errors"; } - - // Operational state qualifier - // Type is an MO-Defined-Type - leaf operStQual { + leaf txBandwidth { config "false"; - description "Operational State Qualifier"; - - // Type is an MO-Defined-Type - type span_OperStQual; + type uint32; + description "Tx Bandwidth"; } } - grouping span_RtSpanSpanSrcToL2CktEpAtt_target-group { + grouping infra_RtFexBndlGrpToAggrIf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping infra_RtAccBndlGrpToAggrIf_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping traceroutep_RtTraceroutepTrSrc_target-group { + grouping datetime_RsNtpProviderToNtpAuth_source-group { + description "Ntp Authentication Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping dbgexp_RtDbgexpTsSrc_target-group { + description "Relation to Traceroute Source Node"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping traceroutep_RtTraceroutepTrDst_target-group { + grouping traceroutep_RtTraceroutepTrSrc_target-group { + description "Relation to Source Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping traceroutep_RtTraceroutepTrDst_target-group { + description "Relation to Traceroute Destination"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping dhcp_RsPseudoIf_source-group { + description "Pseudo Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping dhcp_RtPseudoIf_target-group { + description "Pseudo Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtOosSlot_target-group { + description "Out of Service Slot"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResRadiusEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResLdapEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResTacacsPlusEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResAuthRealm_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResUserEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fabric_RtFabricResPkiEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsExtBD_source-group { + description "External BD Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l2_RsBdVsanMap_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } // oper state - // Type is an MO-Defined-Type leaf assocOperSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type l2_AssocOperSt; - } - } - - grouping l2_RtBdVsanMap_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping l2_RsSrvExtIfMap_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; - } - - // NPV Traffic Map Config Status - // Type is an MO-Defined-Type - leaf configStatus { - config "false"; - description "NPV Traffic Map Configuration Status"; - - // Type is an MO-Defined-Type - type l2_TrafficMapCfgSt; + description "Operational State"; } } grouping l2_RsInbandConf_source-group { + description "Inband Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RtInbandConf_target-group { + description "Inband Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsExtConf_source-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l2_RtExtConf_target-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_RsBrConf_source-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; - } - - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; - } - } - - grouping l2_RtBrConf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RsCtrlrAdjEpToStAdjEp_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RtCtrlrAdjEpToStAdjEp_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping lldp_RsLldpInstPolCons_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping vpc_RsVpcConf_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; - type boolean; - default "true"; - } - } - - grouping vpc_RtVpcConf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - config "false"; - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping vpc_RsVpcInstPolCons_source-group { + grouping l2_RtBrConf_target-group { + description "Eth Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - leaf protGEp { - config "false"; - type string; + description "Target object's DN and is implicit"; } } - grouping fv_RsDomDefNs_source-group { + grouping lldp_RsLldpInstPolCons_source-group { + description "Lldp Instance Policy Consumption"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping fv_RsDomDefNsLocal_source-group { + grouping vpc_RsVpcConf_source-group { + description "Port Channel Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping fv_RtFvToRemoteRFltP_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping fv_RtFvToRemoteRFltAtt_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping fv_RtFvEpDefToPathEp_target-group { + grouping vpc_RtVpcConf_target-group { + description "Port Channel Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefToLooseNode_target-group { + grouping vpc_RsVpcInstPolCons_source-group { + description "Vpc Instance Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf protGEp { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type string; + description "Protocol Group"; } } - grouping fv_RtFvEpDefRefToStAdjEp_target-group { + grouping fv_RsDomDefNs_source-group { + description "VXLAN Pool"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefRefToL2MacEp_target-group { + grouping fv_RsDomDefNsLocal_source-group { + description "VXLAN Pool"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvEpDefRefToStAdjEpV6_target-group { + grouping fv_RtFvEpDefRefToStAdjEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RsVNode_source-group { + grouping fv_RtFvEpDefRefToL2MacEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvVNode_target-group { + grouping fv_RtFvEpDefRefToStAdjEpV6_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RsLNode_source-group { + grouping fv_RsVNode_source-group { + description "Relation to Virtual Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvToDomDef_target-group { + grouping fv_RtFvVNode_target-group { + description "Relation to Virtual Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvDomIfConn_target-group { + grouping fv_RsLNode_source-group { + description "Distributed Virtual Switch"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvDyPathAtt_target-group { + grouping fv_RtFvToDomDef_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping fv_RtFvLsNodeAtt_target-group { + grouping fv_RtFvDomIfConn_target-group { + description "Domain Interface Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping fv_RtFvNodePortAtt_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping maint_RtMaintFwinstlsrc_target-group { + description "Relation to Source Node"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping isis_RsNhAtt_source-group { + description "IS-IS Nexthop Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping mgmt_RsRtdMgmtConf_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping mgmt_RtRtdMgmtConf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping snmp_RsCommSecPClientGrpAtt_source-group { + description "Community Security Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping snmp_RsCommToCtxAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Operational state - // Type is an MO-Defined-Type leaf operSt { config "false"; - description "Operational State"; - // Type is an MO-Defined-Type type nw_OSSum; + description "Operational State"; } // Operational state qualifier - // Type is an MO-Defined-Type leaf operStQual { config "false"; - description "Operational State Qualifier"; - // Type is an MO-Defined-Type type nw_OSSumQual; + description "Operational State Qualifier"; } } grouping ospf_RtOspfIfDefToOspfIf_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + grouping ospf_RtOspfIfDefToOspfv3If_target-group { + + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping comm_RtCommKeyRing_target-group { + description "Key Ring"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaUserEp_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaLoginDomain_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtPreLoginBanner_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aaa_RtAaaKeyringRef_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVtepAtt_source-group { + description "Link To Tunnel Intf Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtAggregateVtepAtt_target-group { + description "Link To Tunnel Intf Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVlanMemberAtt_source-group { + description "Vlan Membership Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtAggregateVlanMemberAtt_target-group { + description "Vlan Membership Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsMac_source-group { + description "Tunnel Mac Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtMac_target-group { + description "Tunnel Mac Entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RsVpcIntfEntryAtt_source-group { + description "Vpc Interface Entry Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping aggregate_RtVpcIntfEntryAtt_target-group { + description "Vpc Interface Entry Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping analytics_RsRecordPAtt_source-group { + description "Record Policy Attachment"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RsRfltpConn_source-group { + grouping analytics_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping analytics_RsProfAtt_source-group { + description "Reference to profile."; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RsTenConn_source-group { + grouping analytics_RsPolicyAtt_source-group { + description "Reference to policy."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping epm_RsMacEpToIpEpAtt_source-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping actrl_RtTenConn_target-group { + grouping eptrk_RsIpEpRslttoIpEpAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping eptrk_RtIpEpRslttoIpEpAtt_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsRecordPAtt_source-group { + grouping eptrk_RsMacEpRslttoIpEpAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; + config "false"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping eptrk_RtMacEpRslttoIpEpAtt_target-group { - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsCollectorAtt_source-group { + grouping fte_RsRecordAtt_source-group { + description "Attach FTE Record to FTE Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping analytics_RsProfAtt_source-group { + grouping fte_RsCollectorAtt_source-group { + description "Attach FTE Collector to FTE Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping fte_RsEventsAtt_source-group { + description "Attach FTE Events to FTE Monitor"; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping analytics_RsPolicyAtt_source-group { + grouping fte_RsMonitorAtt_source-group { + description "Attach FTE Monitor to System FTE"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bd_RsCollectorAtt_source-group { + description "Attach Buffer Drop Collector to Buffer Drop Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping epm_RsMacEpToIpEpAtt_source-group { + grouping bd_RsMonitorAttch_source-group { + description "Monitor Attachment to System Buffer Drop"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bl_RsRecordAtt_source-group { + description "Attach Buffer Latency Record to Buffer Latency Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RsIpEpRslttoIpEpAtt_source-group { + grouping bl_RsCollectorAtt_source-group { + description "Attach Buffer Latency Collector to Buffer Latency Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping bl_RsThresholdAtt_source-group { + description "Queue Config Attachment to Threshold Values"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RtIpEpRslttoIpEpAtt_target-group { + grouping bl_RsMonitorAttch_source-group { + description "Monitor Attachment to System Buffer Latency"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSourcerecordAtt_source-group { + description "Attach INT Clone MD Source Record to INT Clone MD Source Monitor"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RsMacEpRslttoIpEpAtt_source-group { + grouping ipt_RsSinkcollectorAtt_source-group { + description "Collector Attachment to System Sink Monitor INT Clone MD"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSinkrecordAtt_source-group { + description "Sink Record Attachment to System Sink Monitor INT Clone MD"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping eptrk_RtMacEpRslttoIpEpAtt_target-group { + grouping ipt_RsSourcemonitorAtt_source-group { + description "Source Monitor Attachment to System"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping ipt_RsSinkmonitorAtt_source-group { + description "Sink Monitor Attachment to System"; + + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsRecordPAtt_source-group { + description "Record Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsWatchlistAtt_source-group { + description "Reference to Watchlist"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsDroplistAtt_source-group { + description "Reference to Droplist"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping inbandTelemetry_RsMonitorAtt_source-group { + description "Reference to Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RsPolicyInstToPMap_source-group { + description "Link from policy instance to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RtIpqosPolicyInstToPMap_target-group { + description "Link from policy instance to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RsClassMapToPolicyMap_source-group { + description "policy-maps using this class-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ipqos_RtClassMapToPolicyMap_target-group { + description "policy-maps using this class-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsRecord_source-group { + description "Reference to flow record"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsExporter1_source-group { + description "Reference to flow exporter1"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsExporter2_source-group { + description "Reference to flow exporter2"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsMonitor_source-group { + description "Reference to flow monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsHwProfile_source-group { + description "Reference to hardware profile"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping flow_RsPmap_source-group { + description "Reference to policy-map"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping telemetry_RsSensorGroupRel_source-group { + grouping netflow_RsRecordPAtt_source-group { + description "Reference to the record that is to be used under this monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - leaf sampleIntvl { - type uint64; + description "Target object's DN and is implicit"; } } - grouping telemetry_RsDestGroupRel_source-group { + grouping netflow_RsCollectorAtt_source-group { + description "Reference to the collector that is to be used under this monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vsan_RsVsanIfMap_source-group { + grouping netflow_RsProfAtt_source-group { + description "Reference to profile attachement"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } - - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { - config "false"; - description "State Qualifier"; - - // Type is an MO-Defined-Type - type reln_StateQual; - } - - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } + grouping ssx_RsRecordPAtt_source-group { + description "Record Policy Attachment"; - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping vsan_RtVsanIfMap_target-group { + grouping ssx_RsCollectorAtt_source-group { + description "Reference to Collector"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vsan_RsVsanPathAtt_source-group { + grouping ssx_RsSysMonitorAtt_source-group { + description "Reference to Monitor"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - - // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf state { - config "false"; - description "State"; - - // Type is an MO-Defined-Type - type reln_State; - } + grouping ssx_RsMonitorAtt_source-group { + description "Reference to Monitor"; - // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf stateQual { + // Target Object's DN + leaf tDn { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type - type reln_StateQual; + type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Represents the type of the target - // - Name based resolution - // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf tType { - config "false"; - description "TBD"; - - // Type is an MO-Defined-Type - type reln_TargetType; - } + grouping telemetry_RsSensorGroupRel_source-group { + description "Link to sensorGroup entry"; - // Represents the type of the Resolver - // - Mo - // - Service - // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type - leaf rType { - config "false"; - description "TBD"; + // Target Object's DN + leaf tDn { - // Type is an MO-Defined-Type - type reln_ResolverType; - } - leaf forceResolve { - config "false"; - type boolean; - default "true"; + type reln_Dn; + description "Target object's DN and is implicit"; } - // native to represent port vsan - // Type is an MO-Defined-Type - leaf type { - config "false"; - description "native type to repsent port vsan"; + leaf sampleIntvl { - // Type is an MO-Defined-Type - type l2_NativeT; + type telemetry_sampleIntvlType; + description "Sensor sample inteval"; } } - grouping vsan_RtVsanVsanPathAtt_target-group { + grouping telemetry_RsDestGroupRel_source-group { + description "Link to destGroup entry"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping ethpm_RsErrDisRecoverPolCons_source-group { + description "ErrDisableRecovery Policy Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping pc_RsMbrIfs_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + leaf tDn { - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } // channel-group force - // Type is an MO-Defined-Type leaf isMbrForce { - description "Channel group force"; - // Type is an MO-Defined-Type type pc_ChnlGrpForce; + description "Channel group force"; } } grouping pc_RtMbrIfs_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping pc_RsLacpPolCons_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping vlan_RsVlanEppAtt_source-group { + description "Epp Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping vxlan_RsVxlanEppAtt_source-group { + description "Epp Attachement"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping nvo_RsOperSourceInterface_source-group { + description "Operational Up/Down status of the Source Interface."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping nvo_RtOperSourceInterface_target-group { + description "Operational Up/Down status of the Source Interface."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsCtxToEpP_source-group { + description "Epp Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RsVrfMbr_source-group { + description "VRF Membership Association"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; + grouping l3_RtVrfMbr_target-group { + description "VRF Membership Association"; - // Type is an MO-Defined-Type - type reln_ClassId; + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping l3_RtVrfMbr_target-group { + grouping l3_RsVrfPolicyAtt_source-group { + description "Vrf Reference to Analytics policy."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - description "Target-class"; + grouping l3_RtL3VrfPolicyAtt_target-group { + description "Vrf Reference to Analytics policy."; + + // Target Object's DN + leaf tDn { + config "false"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping l3_RsPhysRtdConf_source-group { + grouping l3_RsVrfMonitorAtt_source-group { + description "Vrf Reference to Analytics monitor."; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping l3_RtL3VrfMonitorAtt_target-group { + description "Vrf Reference to Analytics monitor."; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; + } + } + + grouping l3_RsPhysRtdConf_source-group { + description "Physical Routed Attachment"; + + // Target Object's DN + leaf tDn { + + type reln_Dn; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RtPhysRtdConf_target-group { + description "Physical Routed Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsProtLbIf_source-group { + description "Protection Group"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Interface Mode - // Type is an MO-Defined-Type leaf mode { - description "TBD"; - // Type is an MO-Defined-Type type ip_IfMode; + description "TBD"; } } grouping l3_RsLbIfToLocale_source-group { + description "Router Id"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsLbIfToOutRef_source-group { + description "Router Id"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l3_RsEncPhysRtdConf_source-group { + description "Parent If"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping l3_RtL3EncPhysRtdConf_target-group { + description "Parent If"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping uribv4_RsRouteOwnerToNexthopAtt_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping nw_RsPathToIf_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; - } - } - - grouping nw_RtNwPathToIf_target-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsRegCommAtt_source-group { + description "Regular Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtRegCommAtt_target-group { + description "Regular Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsExtCommAtt_source-group { + description "Extended Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtExtCommAtt_target-group { + description "Extended Community Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping rtmap_RsRtDstAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } grouping rtmap_RtRtmapRtDstAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtDstV6Att_source-group { + grouping rtmap_RsRtDstAccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtDstV6Att_target-group { + grouping rtmap_RtRtmapRtDstAccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtNhAtt_source-group { + grouping rtmap_RsRtDstV6Att_source-group { + description "IPv6 Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtNhAtt_target-group { + grouping rtmap_RtRtmapRtDstV6Att_target-group { + description "IPv6 Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtNhV6Att_source-group { + grouping rtmap_RsRtDstV6AccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtNhV6Att_target-group { + grouping rtmap_RtRtmapRtDstV6AccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtSrcAtt_source-group { + grouping rtmap_RsRtNhAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtSrcAtt_target-group { + grouping rtmap_RtRtmapRtNhAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtSrcV6Att_source-group { + grouping rtmap_RsRtNhV6Att_source-group { + description "Prefix List Attachment Ipv6"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtSrcV6Att_target-group { + grouping rtmap_RtRtmapRtNhV6Att_target-group { + description "Prefix List Attachment Ipv6"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping rtmap_RsRtAsPathAccAtt_source-group { + grouping rtmap_RsRtSrcAtt_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } // Represents state of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf state { config "false"; - description "State"; - // Type is an MO-Defined-Type type reln_State; + description "Represents state of the relationship"; } // Represents state qualifier of the relationship - // Inherited From reln:To - // Type is an MO-Defined-Type leaf stateQual { config "false"; - description "State Qualifier"; - // Type is an MO-Defined-Type type reln_StateQual; + description "Represents state qualifier of the relationship"; } // Represents the type of the target // - Name based resolution // - Explicit resolution - // Inherited From reln:To - // Type is an MO-Defined-Type leaf tType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_TargetType; + description "TBD"; } // Represents the type of the Resolver // - Mo // - Service // - Local Shard - // Inherited From reln:To - // Type is an MO-Defined-Type leaf rType { config "false"; - description "TBD"; - // Type is an MO-Defined-Type type reln_ResolverType; + description "TBD"; } leaf forceResolve { config "false"; type boolean; - default "true"; + default "false"; } } - grouping rtmap_RtRtmapRtAsPathAccAtt_target-group { + grouping rtmap_RtRtmapRtSrcAtt_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping tunnel_RsTunnelMbrIfs_source-group { + grouping rtmap_RsRtSrcV6Att_source-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping tunnel_RtTunnelTunnelMbrIfs_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - grouping tunnel_RsTunnelToLooseNode_source-group { - - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping tunnel_RtTunnelTunnelToLooseNode_target-group { + grouping rtmap_RtRtmapRtSrcV6Att_target-group { + description "Prefix List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping eqpt_RsPsuInstPolCons_source-group { + grouping rtmap_RsRtAsPathAccAtt_source-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping leqpt_RsLsNodeToIf_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping leqpt_RtLsNodeToIf_target-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping leqpt_RsLsAttLink_source-group { + grouping rtmap_RtRtmapRtAsPathAccAtt_target-group { + description "Access List Attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping bfd_RsMbrSess_source-group { + grouping rtmap_RsRtMacListAtt_source-group { + description "Mac List"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents state of the relationship + leaf state { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_State; + description "Represents state of the relationship"; } - } - - grouping pim_RsRP2Grange_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents state qualifier of the relationship + leaf stateQual { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_StateQual; + description "Represents state qualifier of the relationship"; } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Represents the type of the target + // - Name based resolution + // - Explicit resolution + leaf tType { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_TargetType; + description "TBD"; } - } - - grouping pim6_RsRP2Grange_source-group { - // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tDn { + // Represents the type of the Resolver + // - Mo + // - Service + // - Local Shard + leaf rType { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type - type reln_Dn; + type reln_ResolverType; + description "TBD"; } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + leaf forceResolve { config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + type boolean; + default "false"; } } - grouping synthetic_RsToObj_source-group { + grouping rtmap_RtRtmapRtMacListAtt_target-group { + description "Mac List"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - - // Type is an MO-Defined-Type - type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping synthetic_RtToObj_target-group { + grouping tunnel_RsTunnelMbrIfs_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RsMbrIfs_source-group { + grouping tunnel_RtTunnelTunnelMbrIfs_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RtMbrIfs_target-group { + grouping tunnel_RsTunnelToLooseNode_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RsActiveIf_source-group { + grouping eqpt_RsPsuInstPolCons_source-group { + description "The power supply group policy attachment"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping cnw_RtActiveIf_target-group { + grouping bfd_RsMbrSess_source-group { + description "Port-Channel Member Sessions"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vns_RtVnsConnToFltInst_target-group { + grouping pim_RsRP2Grange_source-group { + description "RP to Group range mapping"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzFwdRFltPAtt_target-group { + grouping synthetic_RsToObj_source-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzRevRFltPAtt_target-group { + grouping synthetic_RtToObj_target-group { // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzTabooRFltAtt_target-group { + grouping cnw_RsMbrIfs_source-group { + description "Member Iinterfaces"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + grouping cnw_RtMbrIfs_target-group { + description "Member Iinterfaces"; + + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } - grouping vz_RtVzRFltAtt_target-group { + grouping cnw_RsActiveIf_source-group { + description "Active Interface"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { config "false"; - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; + description "Target object's DN and is implicit"; } + } + + grouping cnw_RtActiveIf_target-group { + description "Active Interface"; - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { + // Target Object's DN + leaf tDn { config "false"; - description "Target-class"; - // Type is an MO-Defined-Type - type reln_ClassId; + type reln_Dn; + description "Target object's DN and is implicit"; } } grouping action_RsLSubjToDomainRef_source-group { + description "Relation from LSubj To AAA Domain Ref"; // Target Object's DN - // Inherited From reln:Inst - // Type is an MO-Defined-Type leaf tDn { - description "Target-dn"; - // Type is an MO-Defined-Type type reln_Dn; - } - - // Target Object's ClassId - // Inherited From reln:Inst - // Type is an MO-Defined-Type - leaf tCl { - config "false"; - description "Target-class"; - - // Type is an MO-Defined-Type - type reln_ClassId; + description "Target object's DN and is implicit"; } } grouping l2_VlanStats-group { + description "Vlan counters"; leaf inUcastOctets { config "false"; type uint64; + description "ucastOctets"; } leaf inUcastPkts { config "false"; type uint64; + description "Unicast packets"; } leaf inMcastOctets { config "false"; type uint64; + description "Multicast Octets"; } leaf inMcastPkts { config "false"; type uint64; + description "Multicast packets"; } leaf inBcastOctets { config "false"; type uint64; + description "Broadcast Octets"; } leaf inBcastPkts { config "false"; type uint64; + description "Broadcast packets"; } leaf inL3UcastOctets { config "false"; type uint64; + description "ingress L3 SVI Unicast Octets"; } leaf inL3UcastPkts { config "false"; type uint64; + description "ingress L3 SVI Unicast Packets"; } leaf outUcastOctets { config "false"; type uint64; + description "ucastOctets"; } leaf outUcastPkts { config "false"; type uint64; + description "Unicast packets"; } } grouping analytics_Statistics-group { + description "Analytics Statistics"; leaf flowCreateCe { config "false"; type uint64; + description "Number of L2 flows created on the slice"; } leaf flowCreateIPv4 { config "false"; type uint64; + description "Number of IPv4 flows created on the slice"; } leaf flowCreateIPv6 { config "false"; type uint64; + description "Number of IPv6 flows created on the slice"; } leaf flowHitCe { config "false"; type uint64; + description "Number of L2 flows hitting the flow table"; } leaf flowHitIPv4 { config "false"; type uint64; + description "Number of IPv4 flows hitting the flow table"; } leaf flowHitIPv6 { config "false"; type uint64; + description "Number of IPv6 flows hitting the flow table"; } leaf packetsSeen { config "false"; type uint64; + description "Total number of packets seen on the slice"; } leaf export { config "false"; type uint64; + description "Total number of export packets sent from the slice"; } leaf skipCollect { config "false"; type uint64; + description "Total number of packets not accounted for flow creation on the slice"; } leaf lastCollectTs { config "false"; type uint64; + description "Last timestamp when packets were sent to the collector"; } } grouping rmon_IfIn-group { + description "Interface Input Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf nUcastPkts { config "false"; type uint64; + description "Non Unicast Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } leaf errors { config "false"; type uint64; + description "Error Packets"; } leaf unknownProtos { config "false"; type uint64; + description "Unknown Protocol Packets"; } leaf unknownEtype { config "false"; type uint64; + description "Unknown Ether Type Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf noBuffer { config "false"; type uint64; + description "No Buffer"; } leaf rateInterval { config "false"; type uint32; + description "Rate Interval"; } leaf octetRate { config "false"; type uint64; + description "Octet Rate"; } leaf packetRate { config "false"; type uint64; + description "Packet Rate"; } } grouping rmon_IfOut-group { + description "Interface Output Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf nUcastPkts { config "false"; type uint64; + description "Non Unicast Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } leaf errors { config "false"; type uint64; + description "Error Packets"; } leaf qLen { config "false"; type uint64; + description "Queue Length Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf rateInterval { config "false"; type uint32; + description "Rate Interval"; } leaf octetRate { config "false"; type uint64; + description "Octet Rate"; } leaf packetRate { config "false"; type uint64; + description "Packet Rate"; } } grouping rmon_IpIn-group { + description "IPV4 Input Counters"; leaf receives { config "false"; type uint64; + description "Receives"; } leaf hdrErrors { config "false"; type uint64; + description "Header Error Packets"; } leaf forwDatagrams { config "false"; type uint64; + description "Forward Datagram Packets"; } leaf discards { config "false"; type uint64; + description "Discard Packets"; } } grouping rmon_Dot1d-group { + description "Dot1d Counters"; leaf basePortDelayExceededDiscards { config "false"; type uint64; + description "Base Port Delay Exceeded Discard Packets"; } leaf basePortMtuExceededDiscards { config "false"; type uint64; + description "Base Port MTU Exceeded Discard Packets"; } leaf tpPortInFrames { config "false"; type uint64; + description "TP Port Input Frames"; } leaf tpPortOutFrames { config "false"; type uint64; + description "TP Port Output Frames"; } leaf portInDiscards { config "false"; type uint64; + description "Port Input Discraded Packets"; } } grouping rmon_EtherStats-group { + description "Ethernet Statistic Counters"; leaf dropEvents { config "false"; type uint64; + description "Drop Event Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } leaf undersizePkts { config "false"; type uint64; + description "Undersize Packets"; } leaf giantPkts { config "false"; type uint64; + description "Giant Packets"; } leaf stormSupressedPkts { config "false"; type uint64; + description "Storm Supressed Packets"; } leaf fragments { config "false"; type uint64; + description "Fragmented Packets"; } leaf pkts64Octets { config "false"; type uint64; + description "Packets with 64 Octets"; } leaf pkts65to127Octets { config "false"; type uint64; + description "Packets with 65 to 127 Octets"; } leaf pkts128to255Octets { config "false"; type uint64; + description "Packets with 128 to 255 Octets"; } leaf pkts256to511Octets { config "false"; type uint64; + description "Packets with 256 to 511 Octets"; } leaf pkts512to1023Octets { config "false"; type uint64; + description "Packets with 512 to 1023 Octets"; } leaf pkts1024to1518Octets { config "false"; type uint64; + description "Packets with 1024 to 1518 Octets"; } leaf pkts1519to1548Octets { config "false"; type uint64; + description "Packets with 1519 to 1548 Octets"; } leaf rxPkts64Octets { config "false"; type uint64; + description "RX Packets with 64 Octets"; } leaf txPkts64Octets { config "false"; type uint64; + description "TX Packets with 64 Octets"; } leaf rxPkts65to127Octets { config "false"; type uint64; + description "RX Packets with 65 to 127 Octets"; } leaf txPkts65to127Octets { config "false"; type uint64; + description "TX Packets with 65 to 127 Octets"; } leaf rxPkts128to255Octets { config "false"; type uint64; + description "RX Packets with 128 to 255 Octets"; } leaf txPkts128to255Octets { config "false"; type uint64; + description "TX Packets with 128 to 255 Octets"; } leaf rxPkts256to511Octets { config "false"; type uint64; + description "RX Packets with 256 to 511 Octets"; } leaf txPkts256to511Octets { config "false"; type uint64; + description "TX Packets with 256 to 511 Octets"; } leaf rxPkts512to1023Octets { config "false"; type uint64; + description "RX Packets with 512 to 1023 Octets"; } leaf txPkts512to1023Octets { config "false"; type uint64; + description "TX Packets with 512 to 1023 Octets"; } leaf rxPkts1024to1518Octets { config "false"; type uint64; + description "RX Packets with 1024 to 1518 Octets"; } leaf txPkts1024to1518Octets { config "false"; type uint64; + description "TX Packets with 1024 to 1518 Octets"; } leaf rxPkts1519to1548Octets { config "false"; type uint64; + description "RX Packets with 1519 to 1548 Octets"; } leaf txPkts1519to1548Octets { config "false"; type uint64; + description "TX Packets with 1519 to 1548 Octets"; } leaf oversizePkts { config "false"; type uint64; + description "Over Size Packets"; } leaf jabbers { config "false"; type uint64; + description "Jabber Frames"; } leaf octets { config "false"; type uint64; + description "Octets"; } leaf pkts { config "false"; type uint64; + description "Packets"; } leaf collisions { config "false"; type uint64; + description "Collisions"; } leaf cRCAlignErrors { config "false"; type uint64; + description "CRC Align Errors"; } leaf tXNoErrors { config "false"; type uint64; + description "TX no Errors"; } leaf rXNoErrors { config "false"; type uint64; + description "RX no Errors"; } leaf rxOversizePkts { config "false"; type uint64; + description "RX Over Size Packets"; } leaf txOversizePkts { config "false"; type uint64; + description "TX Over Size Packets"; } leaf overrun { config "false"; type uint64; + description "Overrun Packets"; } leaf underrun { config "false"; type uint64; + description "Underrun Packets"; } leaf ignored { config "false"; type uint64; + description "Ignored Packets"; } leaf watchdog { config "false"; type uint64; + description "Watchdog"; } leaf ifdowndrop { config "false"; type uint64; + description "If Down Drop"; } } grouping rmon_Dot3Stats-group { + description "Dot3 Statistics Counters"; leaf alignmentErrors { config "false"; type uint64; + description "Alignment Errors"; } leaf fCSErrors { config "false"; type uint64; + description "FCS Errors"; } leaf singleCollisionFrames { config "false"; type uint64; + description "Single Collision Frames"; } leaf multipleCollisionFrames { config "false"; type uint64; + description "Multiple Collision Frames"; } leaf sQETTestErrors { config "false"; type uint64; + description "SQET Test Errors"; } leaf deferredTransmissions { config "false"; type uint64; + description "Deferred Transmissions"; } leaf lateCollisions { config "false"; type uint64; + description "Late Collisions"; } leaf excessiveCollisions { config "false"; type uint64; + description "Excessive Collisions"; } leaf internalMacTransmitErrors { config "false"; type uint64; + description "Internal Mac Transmit Errors"; } leaf carrierSenseErrors { config "false"; type uint64; + description "Carrier Sense Errors"; } leaf frameTooLongs { config "false"; type uint64; + description "Frame too Longs"; } leaf internalMacReceiveErrors { config "false"; type uint64; + description "Internal Mac Receive Errors"; } leaf symbolErrors { config "false"; type uint64; + description "Symbol Errors"; } leaf controlInUnknownOpcodes { config "false"; type uint64; + description "Control Input Unknown Opcodes"; } leaf inPauseFrames { config "false"; type uint64; + description "Input Pause Frames"; } leaf outPauseFrames { config "false"; type uint64; + description "Output Pause Frames"; } leaf lostCarrierErrors { config "false"; type uint64; + description "Lost Carrier Errors"; } leaf noCarrierErrors { config "false"; type uint64; + description "No Carrier Errors"; } leaf inputdribble { config "false"; type uint64; + description "Input Dribble"; } leaf babble { config "false"; type uint64; + description "babble count"; } leaf runts { config "false"; type uint64; + description "runts count"; } } grouping rmon_IfHCIn-group { + description "Interface HC Input Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } } grouping rmon_IfHCOut-group { + description "Interface HC Output Counters"; leaf octets { config "false"; type uint64; + description "Octets"; } leaf ucastPkts { config "false"; type uint64; + description "Unicast Packets"; } leaf multicastPkts { config "false"; type uint64; + description "Multicast Packets"; } leaf broadcastPckts { config "false"; type uint64; + description "Broadcast Packets"; } leaf broadcastPkts { config "false"; type uint64; + description "Broadcast Packets"; } } grouping rmon_Ipv6IfStats-group { + description "Ipv6 Interface Statistics Counters"; leaf inReceives { config "false"; type uint64; + description "Input Receives"; } leaf inHdrErrors { config "false"; type uint64; + description "Input Header Errors"; } leaf inAddrErrors { config "false"; type uint64; + description "Input Address Errors"; } leaf inDiscards { config "false"; type uint64; + description "Input Discards"; } leaf outForwDatagrams { config "false"; type uint64; + description "Output Forward Datagrams"; } leaf outDiscards { config "false"; type uint64; + description "Output Discards"; } leaf inMcastPkts { config "false"; type uint64; + description "Input Multicast Packets"; } leaf outMcastPkts { config "false"; type uint64; + description "Output Multicast Packets"; } } grouping rmon_IfStorm-group { + description "Interface Storm Drop Counters"; leaf dropBytes { config "false"; type uint64; + description "Storm Ctrl Drop Bytes"; } } grouping tunnel_IngrTep-group { + description "Ingress TEP Counters"; leaf fwdPkts { config "false"; type uint64; + description "Forwarded Packets"; } leaf fwdBytes { config "false"; type uint64; + description "Forwarded Bytes"; } leaf dropPkts { config "false"; type uint64; + description "Drop Packets"; } leaf dropBytes { config "false"; type uint64; + description "Drop Bytes"; } } grouping tunnel_EgrTep-group { + description "Egress TEP Counters"; leaf fwdPkts { config "false"; type uint64; + description "Forwarded Packets"; } leaf fwdBytes { config "false"; type uint64; + description "Forwarded Bytes"; } leaf dropPkts { config "false"; type uint64; + description "Drop Packets"; } leaf dropBytes { config "false"; type uint64; + description "Drop Bytes"; } } container System { - description "System"; + description "General information about this system"; uses System-group; } @@ -157062,7 +168146,10 @@ module Cisco-NX-OS-device { //----------------------------------------- // RPC Defintions for Cisco-NX-OS //----------------------------------------- - identity inactive; + identity inactive + { + description "Inactive"; + } typedef uri_t { @@ -157078,22 +168165,22 @@ module Cisco-NX-OS-device { typedef addtgt_t { - description "The add target { | }"; type union { type pkgname_t; type uri_t; } + description "The add target { | }"; } typedef remtgt_t { - description "The remove target { | inactive }"; type union { type pkgname_t; type identityref { base "inactive"; } } + description "The remove target { | inactive }"; } typedef filesystem_t @@ -157115,7 +168202,6 @@ module Cisco-NX-OS-device { typedef climode_t { - description "A CLI mode"; type enumeration { enum EXEC @@ -157127,6 +168213,7 @@ module Cisco-NX-OS-device { description "CONFIG CLI Commands"; } } + description "A CLI mode"; } typedef commandline_t @@ -157194,6 +168281,7 @@ module Cisco-NX-OS-device { choice A { + description "Choice A"; leaf no-reload { type empty; @@ -157208,6 +168296,7 @@ module Cisco-NX-OS-device { choice B { + description "Choice B"; leaf bios { type empty; @@ -157252,6 +168341,7 @@ module Cisco-NX-OS-device { choice B { + description "Choice B"; leaf no-reload { type empty; @@ -157266,6 +168356,7 @@ module Cisco-NX-OS-device { choice C { + description "Choice C"; leaf bios { type empty; @@ -157315,6 +168406,7 @@ module Cisco-NX-OS-device { choice A { + description "Choice A"; leaf upgrade { type empty; @@ -157418,6 +168510,7 @@ module Cisco-NX-OS-device { { choice remtgt { + description "Remove target"; leaf remove { type remtgt_t; @@ -157486,6 +168579,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest_remote { leaf dest_remote @@ -157495,6 +168589,7 @@ module Cisco-NX-OS-device { } choice A { + description "Choice A"; leaf source-interface { type intf_t; @@ -157512,6 +168607,7 @@ module Cisco-NX-OS-device { { choice B { + description "Choice B"; case dest_local { leaf dest_local @@ -157587,6 +168683,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest-local-a { leaf dest_local @@ -157644,6 +168741,7 @@ module Cisco-NX-OS-device { } choice dest { + description "Destination"; case dest_remote { leaf dest_remote @@ -157654,6 +168752,7 @@ module Cisco-NX-OS-device { choice dest-a { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157669,14 +168768,14 @@ module Cisco-NX-OS-device { } // end case dest_remote - case dest-local-core + case dest_local_core { leaf dest_local_core { type filesystem_t; description "Select destination filesystem"; } - } // end case dest-local-core + } // end case dest_local_core } // end choice dest } // end input } @@ -157698,7 +168797,8 @@ module Cisco-NX-OS-device { } choice dest { - case dest-remote + description "Destination"; + case dest_remote { leaf dest_remote { @@ -157707,6 +168807,7 @@ module Cisco-NX-OS-device { } choice dest-r { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157718,7 +168819,7 @@ module Cisco-NX-OS-device { type vrfname_t; description "Display per-VRF information of known VRF name"; } - } // end choice dest-remote + } // end choice dest_remote } // end case dest-r case startup-config @@ -157736,7 +168837,7 @@ module Cisco-NX-OS-device { } } // end case startup-config - case dest-local-config + case dest_local_config { leaf dest_local_config { @@ -157760,7 +168861,8 @@ module Cisco-NX-OS-device { { choice dest { - case dest-remote + description "Destination"; + case dest_remote { leaf dest_remote { @@ -157769,6 +168871,7 @@ module Cisco-NX-OS-device { } choice dest-r { + description "Destination remote"; leaf source-interface { type intf_t; @@ -157781,7 +168884,7 @@ module Cisco-NX-OS-device { description "Display per-VRF information of known VRF name"; } } // end choice dest-r - } // end case dest-remote + } // end case dest_remote case running-config { @@ -157802,14 +168905,14 @@ module Cisco-NX-OS-device { } } // end case running-config - case dest-local-config + case dest_local_config { leaf dest_local_config { type empty; description "Select destination filesystem"; } - } // end case dest-local-config + } // end case dest_local_config } // end dest choice } // end input } diff --git a/yang/02-yang/bgp-baseline.xml b/yang/02-yang/bgp-baseline.xml index 5ea5727..323b678 100644 --- a/yang/02-yang/bgp-baseline.xml +++ b/yang/02-yang/bgp-baseline.xml @@ -28,7 +28,6 @@ 1 1 1 - bgp-DomAf 10000